From ff5cad0ba476f74ee4743fb91bf4e256dfccde04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89loi=20Rivard?= Date: Sat, 27 Apr 2013 10:41:49 +0200 Subject: [PATCH 001/217] * Added symlink support. --- emcc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/emcc b/emcc index b96c634113c99..ec6e84575fb64 100755 --- a/emcc +++ b/emcc @@ -913,8 +913,12 @@ try: prev = newargs[i-1] if prev in ['-MT', '-install_name', '-I', '-L']: continue # ignore this gcc-style argument - if not arg.startswith('-') and (arg.endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES) or shared.Building.is_ar(arg)): # we already removed -o , so all these should be inputs + if not arg.startswith('-') and (arg.endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES) or shared.Building.is_ar(arg) or (os.path.islink(arg) and os.path.realpath(arg).endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES))): # we already removed -o , so all these should be inputs newargs[i] = '' + + if (os.path.islink(arg) and os.path.realpath(arg).endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES)): + arg = os.path.realpath(arg) + if os.path.exists(arg): if arg.endswith(SOURCE_SUFFIXES): input_files.append(arg) From 8f4e931b7edb0755252ee23ff2c8f2edeec3aebd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89loi=20Rivard?= Date: Tue, 30 Apr 2013 00:15:16 +0200 Subject: [PATCH 002/217] Added a symlink testcase. --- emcc | 9 ++++----- tests/runner.py | 17 +++++++++++++++++ 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/emcc b/emcc index ec6e84575fb64..7fe2f5a04e38c 100755 --- a/emcc +++ b/emcc @@ -913,12 +913,11 @@ try: prev = newargs[i-1] if prev in ['-MT', '-install_name', '-I', '-L']: continue # ignore this gcc-style argument - if not arg.startswith('-') and (arg.endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES) or shared.Building.is_ar(arg) or (os.path.islink(arg) and os.path.realpath(arg).endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES))): # we already removed -o , so all these should be inputs - newargs[i] = '' - - if (os.path.islink(arg) and os.path.realpath(arg).endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES)): - arg = os.path.realpath(arg) + if (os.path.islink(arg) and os.path.realpath(arg).endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES)): + arg = os.path.realpath(arg) + if not arg.startswith('-') and (arg.endswith(SOURCE_SUFFIXES + BITCODE_SUFFIXES + DYNAMICLIB_SUFFIXES + ASSEMBLY_SUFFIXES) or shared.Building.is_ar(arg)): # we already removed -o , so all these should be inputs + newargs[i] = '' if os.path.exists(arg): if arg.endswith(SOURCE_SUFFIXES): input_files.append(arg) diff --git a/tests/runner.py b/tests/runner.py index b7a7478fbf115..77bcc288990c6 100755 --- a/tests/runner.py +++ b/tests/runner.py @@ -9682,6 +9682,23 @@ def test_l_link(self): self.assertContained('hello from lib', run_js(os.path.join(self.get_dir(), 'a.out.js'))) assert not os.path.exists('a.out') and not os.path.exists('a.exe'), 'Must not leave unneeded linker stubs' + def test_symlink(self): + open(os.path.join(self.get_dir(), 'foobar.xxx'), 'w').write('int main(){ return 0; }') + os.symlink(os.path.join(self.get_dir(), 'foobar.xxx'), os.path.join(self.get_dir(), 'foobar.c')) + Popen([PYTHON, EMCC, os.path.join(self.get_dir(), 'foobar.c'), '-o', os.path.join(self.get_dir(), 'foobar')], stdout=PIPE, stderr=PIPE).communicate() + assert os.path.exists(os.path.join(self.get_dir(), 'foobar')) + try_delete(os.path.join(self.get_dir(), 'foobar')) + try_delete(os.path.join(self.get_dir(), 'foobar.xxx')) + try_delete(os.path.join(self.get_dir(), 'foobar.c')) + + open(os.path.join(self.get_dir(), 'foobar.c'), 'w').write('int main(){ return 0; }') + os.symlink(os.path.join(self.get_dir(), 'foobar.c'), os.path.join(self.get_dir(), 'foobar.xxx')) + Popen([PYTHON, EMCC, os.path.join(self.get_dir(), 'foobar.xxx'), '-o', os.path.join(self.get_dir(), 'foobar')], stdout=PIPE, stderr=PIPE).communicate() + assert os.path.exists(os.path.join(self.get_dir(), 'foobar')) + try_delete(os.path.join(self.get_dir(), 'foobar')) + try_delete(os.path.join(self.get_dir(), 'foobar.xxx')) + try_delete(os.path.join(self.get_dir(), 'foobar.c')) + def test_multiply_defined_libsymbols(self): lib = "int mult() { return 1; }" lib_name = os.path.join(self.get_dir(), 'libA.c') From 3aeac5cb31f0cdfab95ad52ec152f88754dab340 Mon Sep 17 00:00:00 2001 From: Martin Gerhardy Date: Mon, 6 May 2013 19:51:07 +0200 Subject: [PATCH 003/217] * some SDL2 stuff --- src/library_sdl.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/library_sdl.js b/src/library_sdl.js index a1fb871f9c0ff..11051dd4a8167 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -1705,6 +1705,18 @@ var LibrarySDL = { SDL_GL_SwapBuffers: function() {}, + // SDL 2 + + SDL_GL_ExtensionSupported: function(extension) { + return Module.ctx.getExtension(extension); + }, + + SDL_ClearError: function() {}, + + SDL_getenv: function(variable) { + return ""; + }, + // TODO SDL_SetGamma: function(r, g, b) { From 8485632cff9d1b1ffd18315aed5690e995f1ec59 Mon Sep 17 00:00:00 2001 From: Martin Gerhardy Date: Mon, 6 May 2013 20:19:00 +0200 Subject: [PATCH 004/217] * more SDL2 stuff --- src/library_sdl.js | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/library_sdl.js b/src/library_sdl.js index 11051dd4a8167..f5112abed7ab1 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -1711,6 +1711,50 @@ var LibrarySDL = { return Module.ctx.getExtension(extension); }, + SDL_DestroyWindow: function(window) {}, + + SDL_DestroyRenderer: function(renderer) {}, + + SDL_GetWindowFlags: function(x, y) { + if (Browser.isFullScreen) { + return 1; + } + + return 0; + }, + + SDL_GL_SwapWindow: function(window) {}, + + SDL_GL_MakeCurrent: function(window, context) {}, + + SDL_GL_DeleteContext: function(context) {}, + + SDL_GL_SetSwapInterval: function(state) {}, + + SDL_SetWindowTitle: function(window, title) { + title = title && Pointer_stringify(title); + }, + + SDL_GetWindowSize: function(window, width, height){ + var w = Module['canvas'].width; + var h = Module['canvas'].height; + if (width) {{{ makeSetValue('width', '0', 'w', 'i32') }}}; + if (height) {{{ makeSetValue('height', '0', 'h', 'i32') }}}; + }, + + SDL_LogSetOutputFunction: function(callback, userdata) {}, + + SDL_SetWindowFullscreen: function(window, fullscreen) { + if (Browser.isFullScreen) { + Module['canvas'].cancelFullScreen(); + return 1; + } else { + return 0; + } + }, + + SDL_GetWindowFlags: function() {}, + SDL_ClearError: function() {}, SDL_getenv: function(variable) { From 5123418c4a37b67309e4be386ee12ccd5ea36c8c Mon Sep 17 00:00:00 2001 From: Martin Gerhardy Date: Tue, 7 May 2013 06:50:49 +0200 Subject: [PATCH 005/217] * SDL_GL_ExtensionSupported: fixed integer value * added myself to the AUTHORS file --- AUTHORS | 1 + src/library_sdl.js | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/AUTHORS b/AUTHORS index eae3d6e65f730..9feaa8f7f210a 100644 --- a/AUTHORS +++ b/AUTHORS @@ -72,5 +72,6 @@ a license to everyone to use it as detailed in LICENSE.) * Robert Bragg (copyright owned by Intel Corporation) * Sylvestre Ledru * Tom Fairfield +* Martin Gerhardy diff --git a/src/library_sdl.js b/src/library_sdl.js index f5112abed7ab1..8a7519b95065f 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -1708,7 +1708,7 @@ var LibrarySDL = { // SDL 2 SDL_GL_ExtensionSupported: function(extension) { - return Module.ctx.getExtension(extension); + return Module.ctx.getExtension(extension) | 0; }, SDL_DestroyWindow: function(window) {}, From 0cd8926f0f8b7076e2badcb0c6d03f680b677179 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Tue, 7 May 2013 16:39:32 -0700 Subject: [PATCH 006/217] add whets testcase --- tests/runner.py | 4 + tests/whets.cpp | 622 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 626 insertions(+) create mode 100644 tests/whets.cpp diff --git a/tests/runner.py b/tests/runner.py index 29c8ca7db3850..773cb1570a988 100755 --- a/tests/runner.py +++ b/tests/runner.py @@ -7390,6 +7390,10 @@ def test_fasta(self): src = open(path_from_root('tests', 'fasta.cpp'), 'r').read() self.do_run(src, j, [str(i)], lambda x, err: x.replace('\n', '*'), no_build=i>1) + def test_whets(self): + if not Settings.ASM_JS: return self.skip('mainly a test for asm validation here') + self.do_run(open(path_from_root('tests', 'whets.cpp')).read(), 'Single Precision C Whetstone Benchmark') + def test_dlmalloc(self): if self.emcc_args is None: self.emcc_args = [] # dlmalloc auto-inclusion is only done if we use emcc diff --git a/tests/whets.cpp b/tests/whets.cpp new file mode 100644 index 0000000000000..437b292bb1669 --- /dev/null +++ b/tests/whets.cpp @@ -0,0 +1,622 @@ +/* gcc whets.c cpuidc64.o cpuida64.o -m64 -lrt -lc -lm -o whet +* +* XXX modified by emscripten to be slower, to not slow down test runner +* +* Document: Whets.c +* File Group: Classic Benchmarks +* Creation Date: 6 November 1996 +* Revision Date: 6 November 2010 Ubuntu Version for PCs +* +* Title: Whetstone Benchmark in C/C++ +* Keywords: WHETSTONE BENCHMARK PERFORMANCE MIPS +* MWIPS MFLOPS +* +* Abstract: C or C++ version of Whetstone one of the +* Classic Numeric Benchmarks with example +* results on P3 to P6 based PCs. +* +* Contributor: roy@roylongbottom.org.uk +* +************************************************************ +* +* C/C++ Whetstone Benchmark Single or Double Precision +* +* Original concept Brian Wichmann NPL 1960's +* Original author Harold Curnow CCTA 1972 +* Self timing versions Roy Longbottom CCTA 1978/87 +* Optimisation control Bangor University 1987/90 +* C/C++ Version Roy Longbottom 1996 +* Compatibility & timers Al Aburto 1996 +* +************************************************************ +* +* Official version approved by: +* +* Harold Curnow 100421.1615@compuserve.com +* +* Happy 25th birthday Whetstone, 21 November 1997 +* +************************************************************ +* +* The program normally runs for about 100 seconds +* (adjustable in main - variable duration). This time +* is necessary because of poor PC clock resolution. +* The original concept included such things as a given +* number of subroutine calls and divides which may be +* changed by optimisation. For comparison purposes the +* compiler and level of optimisation should be identified. +* +* This version is set to run for 10 seconds using high +* resolution timer. +* +************************************************************ +* +* The original benchmark had a single variable I which +* controlled the running time. Constants with values up +* to 899 were multiplied by I to control the number +* passes for each loop. It was found that large values +* of I could overflow index registers so an extra outer +* loop with a second variable J was added. +* +* Self timing versions were produced during the early +* days. The 1978 changes supplied timings of individual +* loops and these were used later to produce MFLOPS and +* MOPS ratings. +* +* 1987 changes converted the benchmark to Fortran 77 +* standards and removed redundant IF statements and +* loops to leave the 8 active loops N1 to N8. Procedure +* P3 was changed to use global variables to avoid over- +* optimisation with the first two statements changed from +* X1=X and Y1=Y to X=Y and Y=Z. A self time calibrating +* version for PCs was also produced, the facility being +* incorporated in this version. +* +* This version has changes to avoid worse than expected +* speed ratings, due to underflow, and facilities to show +* that consistent numeric output is produced with varying +* optimisation levels or versions in different languages. +* +* Some of the procedures produce ever decreasing numbers. +* To avoid problems, variables T and T1 have been changed +* from 0.499975 and 0.50025 to 0.49999975 and 0.50000025. +* +* Each section now has its own double loop. Inner loops +* are run 100 times the loop constants. Calibration +* determines the number of outer loop passes. The +* numeric results produced in the main output are for +* one pass on the outer loop. As underflow problems were +* still likely on a processor 100 times faster than a 100 +* MHz Pentium, three sections have T=1.0-T inserted in the +* outer loop to avoid the problem. The two loops avoid +* index register overflows. +* +* The first section is run ten times longer than required +* for accuracy in calculating MFLOPS. This time is divided +* by ten for inclusion in the MWIPS calculations. +* +* Early version has facilities for typing in details of +* the particular run, appended to file whets.txt along +* with the results. This version attemps to obtain these +* automatically. +* +* 2010 Section 4 modified slightly to avoid over optimisation +* by GCC compiler +* +* Roy Longbottom roy@roylongbottom.org.uk +* +************************************************************ +* +* Whetstone benchmark results, further details of the +* benchmarks and history are available from: +* +* http://www.roylongbottom.org.uk/whetstone%20results.htm +* http://www.roylongbottom.org.uk/whetstone.htm +* +************************************************************ +* +* Source code is available in C/C++, Fortran, Basic and +* Visual Basic in the same format as this version. Pre- +* compiled versions for PCs are also available via C++. +* These comprise optimised and non-optimised versions +* for DOS, Windows and NT. See: +* +* http://www.roylongbottom.org.uk/whetstone%20results.htm +* +************************************************************ +* +* Example of initial calibration display (Pentium 100 MHz) +* +* Single Precision C/C++ Whetstone Benchmark +* +* Calibrate +* 0.17 Seconds 1 Passes (x 100) +* 0.77 Seconds 5 Passes (x 100) +* 3.70 Seconds 25 Passes (x 100) +* +* Use 676 passes (x 100) +* +* 676 passes are used for an approximate duration of 100 +* seconds, providing an initial estimate of a speed rating +* of 67.6 MWIPS. +* +* This is followed by the table of results as below. + +* Whetstone Single Precision Benchmark in C/C++ +* +* Loop content Result MFLOPS MOPS Seconds +* +* N1 floating point -1.12475025653839100 19.971 0.274 +* N2 floating point -1.12274754047393800 11.822 3.240 +* N3 if then else 1.00000000000000000 11.659 2.530 +* N4 fixed point 12.00000000000000000 13.962 6.430 +* N5 sin,cos etc. 0.49904659390449520 2.097 11.310 +* N6 floating point 0.99999988079071040 3.360 45.750 +* N7 assignments 3.00000000000000000 2.415 21.810 +* N8 exp,sqrt etc. 0.75110864639282230 1.206 8.790 +* +* MWIPS 28.462 100.134 +* +* Note different numeric results to single precision. Slight variations +* are normal with different compilers and sometimes optimisation levels. +* +**************************************************************************/ + +#define _CRT_SECURE_NO_WARNINGS 1 +#ifdef WIN32 +#include +#else +#include +#endif + +#include /* for sin, exp etc. */ +#include /* standard I/O */ +#include /* for strcpy - 3 occurrences */ +#include /* for exit - 1 occurrence */ +#include + +/* #include "cpuidh.h" */ + +/*PRECISION PRECISION PRECISION PRECISION PRECISION PRECISION PRECISION*/ + +/* #define DP */ + +#ifdef DP +#define SPDP double +#define Precision "Double" +#else +#define SPDP float +#define Precision "Single" +#endif + +#define opt "Opt 3 64 Bit" + +void whetstones(long xtra, long x100, int calibrate); +void pa(SPDP e[4], SPDP t, SPDP t2); +void po(SPDP e1[4], long j, long k, long l); +void p3(SPDP *x, SPDP *y, SPDP *z, SPDP t, SPDP t1, SPDP t2); +void pout(char title[22], float ops, int type, SPDP checknum, + SPDP time, int calibrate, int section); + + +static SPDP loop_time[9]; +static SPDP loop_mops[9]; +static SPDP loop_mflops[9]; +static SPDP TimeUsed; +static SPDP mwips; +static char headings[9][18]; +static SPDP Check; +static SPDP results[9]; + +/* this is truly rank, but it's minimally invasive, and lifted in part from the STREAM scores */ + +static double secs; + +#ifndef WIN32 + +double mysecond() +{ + struct timeval tp; + struct timezone tzp; + int i; + + i = gettimeofday(&tp,&tzp); + return ( (double) tp.tv_sec + (double) tp.tv_usec * 1.e-6 ); +} +#else + +double mysecond() +{ + static LARGE_INTEGER freq = {0}; + LARGE_INTEGER count = {0}; + if(freq.QuadPart == 0LL) { + QueryPerformanceFrequency(&freq); + } + QueryPerformanceCounter(&count); + return (double)count.QuadPart / (double)freq.QuadPart; +} + +#endif + +void start_time() +{ + secs = mysecond(); +} + +void end_time() +{ + secs = mysecond() - secs; +} + +int main(int argc, char *argv[]) +{ + int count = 1, calibrate = 1; + long xtra = 1; + int section; + long x100 = 1; + int duration = 1; + char compiler[80], options[256], general[10][80] = {" "}; + char endit[80]; + int i; + + printf("\n"); + printf("##########################################\n"); + { + time_t t; + char timeday[30]; + t = time(NULL); + sprintf(timeday, "%s", asctime(localtime(&t))); + + printf("%s Precision C Whetstone Benchmark %s, %s\n", Precision, opt, timeday); + } + + printf("Calibrate\n"); + do + { + TimeUsed=0; + + whetstones(xtra,x100,calibrate); + + printf("%11.2f Seconds %10.0lf Passes (x 100)\n", + TimeUsed,(SPDP)(xtra)); + calibrate++; + count--; + + if (TimeUsed > 2.0) + { + count = 0; + } + else + { + xtra = xtra * 5; + } + } + + while (count > 0); + + if (TimeUsed > 0) xtra = (long)((SPDP)(duration * xtra) / TimeUsed); + if (xtra < 1) xtra = 1; + + calibrate = 0; + + printf("\nUse %d passes (x 100)\n", (int)xtra); + + printf("\n %s Precision C/C++ Whetstone Benchmark",Precision); + +#ifdef PRECOMP + printf("\n Compiler %s", precompiler); + printf("\n Options %s\n", preoptions); +#else + printf("\n"); +#endif + + printf("\nLoop content Result MFLOPS " + " MOPS Seconds\n\n"); + + TimeUsed=0; + whetstones(xtra,x100,calibrate); + + printf("\nMWIPS "); + if (TimeUsed>0) + { + mwips=(float)(xtra) * (float)(x100) / (10 * TimeUsed); + } + else + { + mwips = 0; + } + + printf("%39.3f%19.3f\n\n",mwips,TimeUsed); + + if (Check == 0) printf("Wrong answer "); + + printf ("\n"); + printf ("A new results file, whets.txt, will have been created in the same\n"); + printf ("directory as the .EXE files, if one did not already exist.\n\n"); + + return 0; +} + +void whetstones(long xtra, long x100, int calibrate) +{ + + long n1,n2,n3,n4,n5,n6,n7,n8,i,ix,n1mult; + SPDP x,y,z; + long j,k,l; + SPDP e1[4]; + + SPDP t = 0.49999975; + SPDP t0 = t; + SPDP t1 = 0.50000025; + SPDP t2 = 2.0; + + Check=0.0; + + n1 = 1*x100; + n2 = 1*x100; + n3 = 3*x100; + n4 = 2*x100; + n5 = 3*x100; + n6 = 8*x100; + n7 = 6*x100; + n8 = 9*x100; + n1mult = 1; + + /* Section 1, Array elements */ + + e1[0] = 1.0; + e1[1] = -1.0; + e1[2] = -1.0; + e1[3] = -1.0; + start_time(); + { + for (ix=0; ix2) j = 0; + else j = 1; + if(j<1) j = 1; + else j = 0; + } + } + } + end_time(); + pout("N3 if then else \0",(float)(n3*3)*(float)(xtra), + 2,(SPDP)(j),secs,calibrate,3); + + /* Section 4, Integer arithmetic */ + j = 1; + k = 2; + l = 3; + e1[0] = 0.0; + e1[1] = 0.0; + start_time(); + { + for (ix=0; ix0) + { + mflops = ops/(1000000L*time); + } + else + { + mflops = 0; + } + loop_mops[section] = 99999; + loop_mflops[section] = mflops; + printf(" %9.3f %9.3f\n", + loop_mflops[section], loop_time[section]); + } + else + { + if (time>0) + { + mops = ops/(1000000L*time); + } + else + { + mops = 0; + } + loop_mops[section] = mops; + loop_mflops[section] = 0; + printf(" %9.3f%9.3f\n", + loop_mops[section], loop_time[section]); + } + } + + return; +} + From e5b7fab17eccd032160a50f859b9430819e13929 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Tue, 7 May 2013 16:52:27 -0700 Subject: [PATCH 007/217] infer untyped variables in js-optimizer.js by origin variable's type if they are just a copy --- tools/eliminator/asm-eliminator-test-output.js | 6 ++++++ tools/eliminator/asm-eliminator-test.js | 8 +++++++- tools/js-optimizer.js | 8 +++++++- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/tools/eliminator/asm-eliminator-test-output.js b/tools/eliminator/asm-eliminator-test-output.js index e477c32031b53..4cd9cbaa9e96f 100644 --- a/tools/eliminator/asm-eliminator-test-output.js +++ b/tools/eliminator/asm-eliminator-test-output.js @@ -123,4 +123,10 @@ function switchy() { continue; } } +function confuusion() { + var i = +0, j = +0; + func1(+i); + j = i; + func2(+j); +} diff --git a/tools/eliminator/asm-eliminator-test.js b/tools/eliminator/asm-eliminator-test.js index acc07edb77b62..9dc71835a4e90 100644 --- a/tools/eliminator/asm-eliminator-test.js +++ b/tools/eliminator/asm-eliminator-test.js @@ -156,5 +156,11 @@ function switchy() { continue; } } -// EMSCRIPTEN_GENERATED_FUNCTIONS: ["asm", "__Z11printResultPiS_j", "_segment_holding", "__ZN5identC2EiPKcPci", "_vec2Length", "exc", "label"] +function confuusion() { + var i = +0; + func1(+i); + var j = i; // add this var in the middle. should show up with right type later, auto-inferred from i's type + func2(+j); +} +// EMSCRIPTEN_GENERATED_FUNCTIONS: ["asm", "__Z11printResultPiS_j", "_segment_holding", "__ZN5identC2EiPKcPci", "_vec2Length", "exc", "label", "confuusion"] diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js index b82d23d30076c..3e57c096805fd 100644 --- a/tools/js-optimizer.js +++ b/tools/js-optimizer.js @@ -1392,7 +1392,13 @@ function normalizeAsm(func) { var name = v[0]; var value = v[1]; if (!(name in data.vars)) { - data.vars[name] = detectAsmCoercion(value); + if (value[0] != 'name') { + data.vars[name] = detectAsmCoercion(value); // detect by coercion + } else { + var origin = value[1]; + assert(origin in data.vars); + data.vars[name] = data.vars[origin]; // detect by origin variable + } } } unVarify(node[1], node); From 1ed2d7fdb3dde1b91a295291cd043a678e12e47a Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Tue, 7 May 2013 17:11:02 -0700 Subject: [PATCH 008/217] fix mishandling of inference of global var types --- tools/js-optimizer.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js index 3e57c096805fd..815baed81fd38 100644 --- a/tools/js-optimizer.js +++ b/tools/js-optimizer.js @@ -1396,8 +1396,7 @@ function normalizeAsm(func) { data.vars[name] = detectAsmCoercion(value); // detect by coercion } else { var origin = value[1]; - assert(origin in data.vars); - data.vars[name] = data.vars[origin]; // detect by origin variable + data.vars[name] = data.vars[origin] || ASM_INT; // detect by origin variable, or assume int for non-locals } } } From 63a76fbbfdf536fa7b69be351611b9f9772d86c3 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Tue, 7 May 2013 18:21:54 -0700 Subject: [PATCH 009/217] fix test runner is_le32 --- tests/runner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/runner.py b/tests/runner.py index 773cb1570a988..ead85948b71f0 100755 --- a/tests/runner.py +++ b/tests/runner.py @@ -509,7 +509,7 @@ def do_ll_run(self, ll_file, expected_output=None, args=[], js_engines=None, out post_build=None) # post_build was already done in ll_to_js, this do_run call is just to test the output def is_le32(self): - return 'le32-unknown-nacl' in COMPILER_OPTS or self.env.get('EMCC_LLVM_TARGET') == 'le32-unknown-nacl' + return not ('i386-pc-linux-gnu' in COMPILER_OPTS or self.env.get('EMCC_LLVM_TARGET') == 'i386-pc-linux-gnu') def test_hello_world(self): src = ''' From 536ab4dd3bb1f889cc434f730dd500321d9313fb Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Tue, 7 May 2013 18:24:14 -0700 Subject: [PATCH 010/217] avoid unnecessary bitcasts from double to i64, if the double was loaded and only used as an i64 --- src/analyzer.js | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/src/analyzer.js b/src/analyzer.js index 03d44cb7ad9b5..3f9025dacebcf 100644 --- a/src/analyzer.js +++ b/src/analyzer.js @@ -99,7 +99,66 @@ function analyzer(data, sidePass) { } } delete item.items; + this.forwardItem(item, 'CastAway'); + } + }); + + // CastAway - try to remove bitcasts of double to i64, which LLVM sometimes generates unnecessarily + // (load a double, convert to i64, use as i64). + // We optimize this by checking if the value is later converted to an i64. If so we create a shadow + // variable that is a load of an i64, and use that in those places. (As SSA, this is valid, and + // variable elimination later will remove the double load if it is no longer needed.) + // + substrate.addActor('CastAway', { + processItem: function(item) { this.forwardItem(item, 'Legalizer'); + if (USE_TYPED_ARRAYS != 2) return; + + item.functions.forEach(function(func) { + var changed = false; + func.labels.forEach(function(label) { + var doubleVars = {}; + var lines = label.lines; + var i = 0; + while (i < lines.length) { + var line = lines[i]; + if (line.intertype == 'load' && line.type == 'double') { + doubleVars[line.assignTo] = i; + } else if (line.intertype == 'bitcast' && line.type == 'i64' && line.ident in doubleVars) { + // this is a bitcast of a loaded double into an i64. create shadow var + var shadow = line.ident + '$$i64doubleSHADOW'; + var loadI = doubleVars[line.ident]; + var load = lines[loadI]; + if (load.pointer.intertype != 'value') { i++; continue } // TODO + // create shadow + lines.splice(loadI + 1, 0, { // this element will be legalized in the next phase + tokens: null, + indent: 2, + lineNum: load.lineNum + 0.5, + assignTo: shadow, + intertype: 'load', + pointerType: 'i64*', + type: 'i64', + valueType: 'i64', + pointer: { + intertype: 'value', + ident: load.pointer.ident, + type: 'i64*' + }, + align: load.align, + ident: load.ident + }); + // use shadow + line.params[0].ident = shadow; + line.params[0].type = 'i64'; + line.type2 = 'i64'; + // note: no need to update func.lines, it is generated in a later pass + i++; + } + i++; + } + }); + }); } }); From 4ead9dad30c559f0d342c592633d3ad73d8b1bd3 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Tue, 7 May 2013 18:54:03 -0700 Subject: [PATCH 011/217] recognize the double-to-i64 bitcast pattern as having no side effects in eliminator --- .../eliminator/asm-eliminator-test-output.js | 4 ++++ tools/eliminator/asm-eliminator-test.js | 10 +++++++- tools/js-optimizer.js | 23 +++++++++++++------ 3 files changed, 29 insertions(+), 8 deletions(-) diff --git a/tools/eliminator/asm-eliminator-test-output.js b/tools/eliminator/asm-eliminator-test-output.js index 4cd9cbaa9e96f..b519cdf9a3c4c 100644 --- a/tools/eliminator/asm-eliminator-test-output.js +++ b/tools/eliminator/asm-eliminator-test-output.js @@ -129,4 +129,8 @@ function confuusion() { j = i; func2(+j); } +function tempDouble(a) { + a = +a; + f(a * a); +} diff --git a/tools/eliminator/asm-eliminator-test.js b/tools/eliminator/asm-eliminator-test.js index 9dc71835a4e90..ff67af471eaaf 100644 --- a/tools/eliminator/asm-eliminator-test.js +++ b/tools/eliminator/asm-eliminator-test.js @@ -162,5 +162,13 @@ function confuusion() { var j = i; // add this var in the middle. should show up with right type later, auto-inferred from i's type func2(+j); } -// EMSCRIPTEN_GENERATED_FUNCTIONS: ["asm", "__Z11printResultPiS_j", "_segment_holding", "__ZN5identC2EiPKcPci", "_vec2Length", "exc", "label", "confuusion"] +function tempDouble(a) { + a = +a; + var x = +0, y = +0; + // CastAway can leave things like this as variables no longer needed. We need to identify that x's value has no side effects so it can be completely cleaned up + x = (HEAP32[((tempDoublePtr)>>2)]=((HEAP32[(($_sroa_0_0__idx1)>>2)])|0),HEAP32[(((tempDoublePtr)+(4))>>2)]=((HEAP32[((($_sroa_0_0__idx1)+(4))>>2)])|0),(+(HEAPF64[(tempDoublePtr)>>3]))); + y = a*a; + f(y); +} +// EMSCRIPTEN_GENERATED_FUNCTIONS: ["asm", "__Z11printResultPiS_j", "_segment_holding", "__ZN5identC2EiPKcPci", "_vec2Length", "exc", "label", "confuusion", "tempDouble"] diff --git a/tools/js-optimizer.js b/tools/js-optimizer.js index 815baed81fd38..56ff971cbca2b 100644 --- a/tools/js-optimizer.js +++ b/tools/js-optimizer.js @@ -1842,13 +1842,22 @@ function eliminate(ast, memSafe) { potentials[name] = 1; } else if (uses[name] == 0 && (!definitions[name] || definitions[name] <= 1)) { // no uses, no def or 1 def (cannot operate on phis, and the llvm optimizer will remove unneeded phis anyhow) var hasSideEffects = false; - if (values[name]) { - traverse(values[name], function(node, type) { - if (!(type in NODES_WITHOUT_ELIMINATION_SIDE_EFFECTS)) { - hasSideEffects = true; // cannot remove this unused variable, constructing it has side effects - return true; - } - }); + var value = values[name]; + if (value) { + // TODO: merge with other side effect code + // First, pattern-match + // (HEAP32[((tempDoublePtr)>>2)]=((HEAP32[(($_sroa_0_0__idx1)>>2)])|0),HEAP32[(((tempDoublePtr)+(4))>>2)]=((HEAP32[((($_sroa_0_0__idx1)+(4))>>2)])|0),(+(HEAPF64[(tempDoublePtr)>>3]))) + // which has no side effects and is the special form of converting double to i64. + if (!(value[0] == 'seq' && value[1][0] == 'assign' && value[1][2][0] == 'sub' && value[1][2][2][0] == 'binary' && value[1][2][2][1] == '>>' && + value[1][2][2][2][0] == 'name' && value[1][2][2][2][1] == 'tempDoublePtr')) { + // If not that, then traverse and scan normally. + traverse(value, function(node, type) { + if (!(type in NODES_WITHOUT_ELIMINATION_SIDE_EFFECTS)) { + hasSideEffects = true; // cannot remove this unused variable, constructing it has side effects + return true; + } + }); + } } if (!hasSideEffects) { varsToRemove[name] = !definitions[name] ? 2 : 1; // remove it normally From 4e72ab4bd5cbf987e08d0ca72bef4292e5870d8e Mon Sep 17 00:00:00 2001 From: manuels Date: Wed, 8 May 2013 15:24:25 +0200 Subject: [PATCH 012/217] Fix bug in rename() that occures if new filename starts with the old filename --- src/library.js | 4 +++- tests/runner.py | 25 +++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/library.js b/src/library.js index cfe83c6e1b896..aaef2f74e6e78 100644 --- a/src/library.js +++ b/src/library.js @@ -3453,7 +3453,9 @@ LibraryManager.library = { } else if (oldObj.isRoot || oldObj.path == FS.currentPath) { ___setErrNo(ERRNO_CODES.EBUSY); return -1; - } else if (newObj.path && newObj.path.indexOf(oldObj.path) == 0) { + } else if (newObj.parentPath && + newObj.parentPath.indexOf(oldObj.parentPath) == 0 && + newObj.parentPath != oldObj.parentPath) { ___setErrNo(ERRNO_CODES.EINVAL); return -1; } else if (newObj.exists && newObj.object.isFolder) { diff --git a/tests/runner.py b/tests/runner.py index ead85948b71f0..838c150d95601 100755 --- a/tests/runner.py +++ b/tests/runner.py @@ -3402,6 +3402,31 @@ def test_alloca(self): ''' self.do_run(src, 'z:1*', force_c=True) + def test_rename(self): + src = ''' + #include + #include + #include + #include + + int main() { + int err; + FILE* fid; + + err = mkdir("/foo", 0777); + fid = fopen("/foo/bar", "w+"); + fclose(fid); + + err = rename("/foo/bar", "/foo/bar2"); + printf("%d\\n", err); + + err = rename("/foo", "/foo/foo"); + printf("%d\\n", err); + return 0; + } + ''' + self.do_run(src, '0\n-1\n', force_c=True) + def test_alloca_stack(self): if self.emcc_args is None: return # too slow in other modes From 0c716b3e53394a3269129974caa92cab676ee3a0 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Wed, 8 May 2013 14:53:30 -0700 Subject: [PATCH 013/217] fix function table wrapping of Math.* --- src/modules.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/modules.js b/src/modules.js index 9cbe88aadddc2..a182e8fc66e97 100644 --- a/src/modules.js +++ b/src/modules.js @@ -318,6 +318,7 @@ var Functions = { if (ASM_JS) { var curr = table[i]; if (curr && curr != '0' && !Functions.implementedFunctions[curr]) { + curr = curr.replace('.', '_'); // fix Math.* to Math_* // This is a library function, we can't just put it in the function table, need a wrapper if (!wrapped[curr]) { var args = '', arg_coercions = '', call = curr + '(', retPre = '', retPost = ''; From 45a3601db61e796019ef0e6da6cf8d1378eb99af Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Wed, 8 May 2013 14:54:30 -0700 Subject: [PATCH 014/217] improve mathfuncptr test --- tests/runner.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/runner.py b/tests/runner.py index ead85948b71f0..c414c619f53c3 100755 --- a/tests/runner.py +++ b/tests/runner.py @@ -3309,10 +3309,10 @@ def test_mathfuncptr(self): #include int - main(void) { - float (*fn)(float) = &sqrtf; - float (*fn2)(float) = &fabsf; - float (*fn3)(float) = &erff; + main(int argc, char **argv) { + float (*fn)(float) = argc != 12 ? &sqrtf : &fabsf; + float (*fn2)(float) = argc != 13 ? &fabsf : &sqrtf; + float (*fn3)(float) = argc != 14 ? &erff : &fabsf; printf("fn2(-5) = %d, fn(10) = %.2f, erf(10) = %.2f\\n", (int)fn2(-5), fn(10), fn3(10)); return 0; } From b41b535aeac53740dec416f617378ec4e4e382ce Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Wed, 8 May 2013 14:59:48 -0700 Subject: [PATCH 015/217] fix FI_* of Math.* --- src/modules.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules.js b/src/modules.js index a182e8fc66e97..6b3c5ffb777bd 100644 --- a/src/modules.js +++ b/src/modules.js @@ -259,7 +259,7 @@ var Functions = { } if (phase != 'post' && singlePhase) { if (!doNotCreate) this.indexedFunctions[ident] = 0; // tell python we need this indexized - return "'{{ FI_" + ident + " }}'"; // something python will replace later + return "'{{ FI_" + toNiceIdent(ident) + " }}'"; // something python will replace later } else { var ret = this.indexedFunctions[ident]; if (!ret) { @@ -318,7 +318,7 @@ var Functions = { if (ASM_JS) { var curr = table[i]; if (curr && curr != '0' && !Functions.implementedFunctions[curr]) { - curr = curr.replace('.', '_'); // fix Math.* to Math_* + curr = toNiceIdent(curr); // fix Math.* to Math_* // This is a library function, we can't just put it in the function table, need a wrapper if (!wrapped[curr]) { var args = '', arg_coercions = '', call = curr + '(', retPre = '', retPost = ''; From 693682fc225e60c9c335ee910fb3c8bb5cf85470 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Wed, 8 May 2013 16:06:26 -0700 Subject: [PATCH 016/217] add nbody-java code --- tests/nbody-java/constant_pool.c | 3357 +++++++ tests/nbody-java/hycomp.h | 522 + tests/nbody-java/hyporterror.h | 223 + tests/nbody-java/hysock.h | 288 + tests/nbody-java/hysocket.h | 103 + tests/nbody-java/java_io_Closeable.c | 76 + tests/nbody-java/java_io_Closeable.h | 28 + tests/nbody-java/java_io_File.c | 4503 +++++++++ tests/nbody-java/java_io_File.h | 238 + tests/nbody-java/java_io_FileDescriptor.c | 309 + tests/nbody-java/java_io_FileDescriptor.h | 65 + tests/nbody-java/java_io_FilterOutputStream.c | 386 + tests/nbody-java/java_io_FilterOutputStream.h | 83 + tests/nbody-java/java_io_Flushable.c | 76 + tests/nbody-java/java_io_Flushable.h | 28 + tests/nbody-java/java_io_IOException.c | 243 + tests/nbody-java/java_io_IOException.h | 64 + .../java_io_InterruptedIOException.c | 198 + .../java_io_InterruptedIOException.h | 59 + .../java_io_InvalidClassException.c | 245 + .../java_io_InvalidClassException.h | 70 + .../java_io_InvalidObjectException.c | 180 + .../java_io_InvalidObjectException.h | 57 + .../java_io_ObjectStreamException.c | 197 + .../java_io_ObjectStreamException.h | 58 + tests/nbody-java/java_io_ObjectStreamField.c | 1128 +++ tests/nbody-java/java_io_ObjectStreamField.h | 151 + tests/nbody-java/java_io_OutputStream.c | 293 + tests/nbody-java/java_io_OutputStream.h | 83 + tests/nbody-java/java_io_PrintStream.c | 1610 +++ tests/nbody-java/java_io_PrintStream.h | 158 + tests/nbody-java/java_io_Serializable.c | 76 + tests/nbody-java/java_io_Serializable.h | 27 + .../java_lang_AbstractStringBuilder.c | 2794 ++++++ .../java_lang_AbstractStringBuilder.h | 136 + tests/nbody-java/java_lang_Appendable.c | 77 + tests/nbody-java/java_lang_Appendable.h | 34 + tests/nbody-java/java_lang_Boolean.c | 540 + tests/nbody-java/java_lang_Boolean.h | 99 + tests/nbody-java/java_lang_Byte.c | 761 ++ tests/nbody-java/java_lang_Byte.h | 121 + tests/nbody-java/java_lang_CharSequence.c | 77 + tests/nbody-java/java_lang_CharSequence.h | 35 + tests/nbody-java/java_lang_Character.c | 8874 +++++++++++++++++ tests/nbody-java/java_lang_Character.h | 341 + tests/nbody-java/java_lang_Class.c | 1273 +++ tests/nbody-java/java_lang_Class.h | 191 + tests/nbody-java/java_lang_ClassLoader.c | 894 ++ tests/nbody-java/java_lang_ClassLoader.h | 119 + .../java_lang_ClassNotFoundException.c | 257 + .../java_lang_ClassNotFoundException.h | 72 + tests/nbody-java/java_lang_Cloneable.c | 76 + tests/nbody-java/java_lang_Cloneable.h | 27 + tests/nbody-java/java_lang_Comparable.c | 76 + tests/nbody-java/java_lang_Comparable.h | 28 + tests/nbody-java/java_lang_Double.c | 1106 ++ tests/nbody-java/java_lang_Double.h | 149 + tests/nbody-java/java_lang_Enum.c | 546 + tests/nbody-java/java_lang_Enum.h | 109 + tests/nbody-java/java_lang_Exception.c | 233 + tests/nbody-java/java_lang_Exception.h | 60 + tests/nbody-java/java_lang_Float.c | 1057 ++ tests/nbody-java/java_lang_Float.h | 150 + .../java_lang_IndexOutOfBoundsException.c | 197 + .../java_lang_IndexOutOfBoundsException.h | 58 + tests/nbody-java/java_lang_Integer.c | 1982 ++++ tests/nbody-java/java_lang_Integer.h | 143 + tests/nbody-java/java_lang_Iterable.c | 77 + tests/nbody-java/java_lang_Iterable.h | 32 + tests/nbody-java/java_lang_Long.c | 1903 ++++ tests/nbody-java/java_lang_Long.h | 145 + .../nbody-java/java_lang_Long_valueOfCache.c | 212 + .../nbody-java/java_lang_Long_valueOfCache.h | 58 + tests/nbody-java/java_lang_Math.c | 1937 ++++ tests/nbody-java/java_lang_Math.h | 155 + .../java_lang_NoSuchFieldException.c | 197 + .../java_lang_NoSuchFieldException.h | 58 + .../java_lang_NullPointerException.c | 197 + .../java_lang_NullPointerException.h | 58 + tests/nbody-java/java_lang_Number.c | 215 + tests/nbody-java/java_lang_Number.h | 72 + tests/nbody-java/java_lang_Object.c | 1079 ++ tests/nbody-java/java_lang_Object.h | 135 + .../java_lang_Object_AddedMembers.c | 259 + .../java_lang_Object_AddedMembers.h | 76 + tests/nbody-java/java_lang_Readable.c | 77 + tests/nbody-java/java_lang_Readable.h | 32 + tests/nbody-java/java_lang_Runnable.c | 76 + tests/nbody-java/java_lang_Runnable.h | 28 + tests/nbody-java/java_lang_Runtime.c | 542 + tests/nbody-java/java_lang_Runtime.h | 99 + tests/nbody-java/java_lang_RuntimeException.c | 234 + tests/nbody-java/java_lang_RuntimeException.h | 64 + .../nbody-java/java_lang_RuntimePermission.c | 547 + .../nbody-java/java_lang_RuntimePermission.h | 89 + tests/nbody-java/java_lang_SecurityManager.c | 1722 ++++ tests/nbody-java/java_lang_SecurityManager.h | 173 + tests/nbody-java/java_lang_Short.c | 703 ++ tests/nbody-java/java_lang_Short.h | 120 + .../nbody-java/java_lang_StackTraceElement.c | 558 ++ .../nbody-java/java_lang_StackTraceElement.h | 85 + tests/nbody-java/java_lang_String.c | 5026 ++++++++++ tests/nbody-java/java_lang_String.h | 268 + tests/nbody-java/java_lang_StringBuilder.c | 999 ++ tests/nbody-java/java_lang_StringBuilder.h | 128 + ...va_lang_String_CaseInsensitiveComparator.c | 240 + ...va_lang_String_CaseInsensitiveComparator.h | 64 + tests/nbody-java/java_lang_System.c | 2057 ++++ tests/nbody-java/java_lang_System.h | 190 + tests/nbody-java/java_lang_Thread.c | 2378 +++++ tests/nbody-java/java_lang_Thread.h | 223 + tests/nbody-java/java_lang_ThreadGroup.c | 2821 ++++++ tests/nbody-java/java_lang_ThreadGroup.h | 148 + ...java_lang_ThreadGroup_ChildrenGroupsLock.c | 179 + ...java_lang_ThreadGroup_ChildrenGroupsLock.h | 57 + ...ava_lang_ThreadGroup_ChildrenThreadsLock.c | 179 + ...ava_lang_ThreadGroup_ChildrenThreadsLock.h | 57 + tests/nbody-java/java_lang_Thread_State.c | 403 + tests/nbody-java/java_lang_Thread_State.h | 80 + ...ava_lang_Thread_UncaughtExceptionHandler.c | 78 + ...ava_lang_Thread_UncaughtExceptionHandler.h | 36 + tests/nbody-java/java_lang_Throwable.c | 933 ++ tests/nbody-java/java_lang_Throwable.h | 110 + tests/nbody-java/java_lang_ref_Reference.c | 277 + tests/nbody-java/java_lang_ref_Reference.h | 64 + .../nbody-java/java_lang_ref_ReferenceQueue.c | 673 ++ .../nbody-java/java_lang_ref_ReferenceQueue.h | 74 + .../nbody-java/java_lang_ref_WeakReference.c | 185 + .../nbody-java/java_lang_ref_WeakReference.h | 60 + .../java_lang_reflect_AccessibleObject.c | 459 + .../java_lang_reflect_AccessibleObject.h | 97 + .../java_lang_reflect_AnnotatedElement.c | 77 + .../java_lang_reflect_AnnotatedElement.h | 35 + tests/nbody-java/java_lang_reflect_Array.c | 203 + tests/nbody-java/java_lang_reflect_Array.h | 78 + .../java_lang_reflect_Constructor.c | 294 + .../java_lang_reflect_Constructor.h | 112 + tests/nbody-java/java_lang_reflect_Field.c | 324 + tests/nbody-java/java_lang_reflect_Field.h | 124 + .../java_lang_reflect_GenericDeclaration.c | 76 + .../java_lang_reflect_GenericDeclaration.h | 28 + .../java_lang_reflect_InvocationHandler.c | 77 + .../java_lang_reflect_InvocationHandler.h | 32 + tests/nbody-java/java_lang_reflect_Member.c | 104 + tests/nbody-java/java_lang_reflect_Member.h | 43 + tests/nbody-java/java_lang_reflect_Method.c | 376 + tests/nbody-java/java_lang_reflect_Method.h | 119 + tests/nbody-java/java_lang_reflect_Modifier.c | 798 ++ tests/nbody-java/java_lang_reflect_Modifier.h | 106 + tests/nbody-java/java_lang_reflect_Type.c | 76 + tests/nbody-java/java_lang_reflect_Type.h | 27 + tests/nbody-java/java_net_BindException.c | 197 + tests/nbody-java/java_net_BindException.h | 58 + tests/nbody-java/java_net_ConnectException.c | 197 + tests/nbody-java/java_net_ConnectException.h | 58 + tests/nbody-java/java_net_Inet6Address.c | 1455 +++ tests/nbody-java/java_net_Inet6Address.h | 162 + tests/nbody-java/java_net_InetAddress.c | 3509 +++++++ tests/nbody-java/java_net_InetAddress.h | 245 + tests/nbody-java/java_net_SocketException.c | 197 + tests/nbody-java/java_net_SocketException.h | 58 + .../java_net_UnknownHostException.c | 197 + .../java_net_UnknownHostException.h | 58 + tests/nbody-java/java_nio_Buffer.c | 524 + tests/nbody-java/java_nio_Buffer.h | 84 + tests/nbody-java/java_nio_BufferFactory.c | 494 + tests/nbody-java/java_nio_BufferFactory.h | 87 + tests/nbody-java/java_nio_ByteBuffer.c | 941 ++ tests/nbody-java/java_nio_ByteBuffer.h | 249 + tests/nbody-java/java_nio_CharArrayBuffer.c | 509 + tests/nbody-java/java_nio_CharArrayBuffer.h | 96 + tests/nbody-java/java_nio_CharBuffer.c | 1198 +++ tests/nbody-java/java_nio_CharBuffer.h | 181 + tests/nbody-java/java_nio_HeapByteBuffer.c | 1346 +++ tests/nbody-java/java_nio_HeapByteBuffer.h | 161 + .../java_nio_ReadWriteCharArrayBuffer.c | 614 ++ .../java_nio_ReadWriteCharArrayBuffer.h | 103 + .../java_nio_ReadWriteHeapByteBuffer.c | 967 ++ .../java_nio_ReadWriteHeapByteBuffer.h | 145 + tests/nbody-java/java_nio_charset_Charset.c | 2310 +++++ tests/nbody-java/java_nio_charset_Charset.h | 226 + .../java_nio_charset_CharsetDecoder.c | 1057 ++ .../java_nio_charset_CharsetDecoder.h | 120 + .../java_nio_charset_CharsetEncoder.c | 1375 +++ .../java_nio_charset_CharsetEncoder.h | 134 + tests/nbody-java/java_nio_charset_Charset_1.c | 185 + tests/nbody-java/java_nio_charset_Charset_1.h | 63 + tests/nbody-java/java_nio_charset_Charset_2.c | 190 + tests/nbody-java/java_nio_charset_Charset_2.h | 68 + .../nbody-java/java_nio_charset_CoderResult.c | 904 ++ .../nbody-java/java_nio_charset_CoderResult.h | 106 + .../java_nio_charset_CodingErrorAction.c | 270 + .../java_nio_charset_CodingErrorAction.h | 70 + .../java_nio_charset_spi_CharsetProvider.c | 210 + .../java_nio_charset_spi_CharsetProvider.h | 84 + .../java_security_AccessController.c | 351 + .../java_security_AccessController.h | 75 + .../java_security_BasicPermission.c | 562 ++ .../java_security_BasicPermission.h | 93 + tests/nbody-java/java_security_Guard.c | 76 + tests/nbody-java/java_security_Guard.h | 28 + tests/nbody-java/java_security_Permission.c | 325 + tests/nbody-java/java_security_Permission.h | 98 + .../java_security_PrivilegedAction.c | 76 + .../java_security_PrivilegedAction.h | 28 + .../nbody-java/java_util_AbstractCollection.c | 747 ++ .../nbody-java/java_util_AbstractCollection.h | 114 + tests/nbody-java/java_util_AbstractList.c | 825 ++ tests/nbody-java/java_util_AbstractList.h | 121 + tests/nbody-java/java_util_AbstractMap.c | 978 ++ tests/nbody-java/java_util_AbstractMap.h | 130 + .../java_util_AbstractSequentialList.c | 448 + .../java_util_AbstractSequentialList.h | 88 + tests/nbody-java/java_util_AbstractSet.c | 405 + tests/nbody-java/java_util_AbstractSet.h | 77 + tests/nbody-java/java_util_ArrayList.c | 2364 +++++ tests/nbody-java/java_util_ArrayList.h | 171 + tests/nbody-java/java_util_Collection.c | 78 + tests/nbody-java/java_util_Collection.h | 47 + tests/nbody-java/java_util_Collections.c | 2676 +++++ tests/nbody-java/java_util_Collections.h | 195 + .../java_util_Collections_EmptyList.c | 317 + .../java_util_Collections_EmptyList.h | 82 + .../java_util_Collections_EmptyMap.c | 326 + .../java_util_Collections_EmptyMap.h | 98 + .../java_util_Collections_EmptySet.c | 307 + .../java_util_Collections_EmptySet.h | 81 + .../java_util_Collections_SynchronizedMap.c | 1027 ++ .../java_util_Collections_SynchronizedMap.h | 120 + tests/nbody-java/java_util_Comparator.c | 76 + tests/nbody-java/java_util_Comparator.h | 29 + tests/nbody-java/java_util_Deque.c | 78 + tests/nbody-java/java_util_Deque.h | 69 + tests/nbody-java/java_util_Dictionary.c | 159 + tests/nbody-java/java_util_Dictionary.h | 76 + tests/nbody-java/java_util_Enumeration.c | 76 + tests/nbody-java/java_util_Enumeration.h | 29 + tests/nbody-java/java_util_HashMap.c | 1700 ++++ tests/nbody-java/java_util_HashMap.h | 148 + tests/nbody-java/java_util_HashMap_Entry.c | 247 + tests/nbody-java/java_util_HashMap_Entry.h | 65 + tests/nbody-java/java_util_HashSet.c | 707 ++ tests/nbody-java/java_util_HashSet.h | 108 + tests/nbody-java/java_util_Hashtable.c | 2476 +++++ tests/nbody-java/java_util_Hashtable.h | 190 + tests/nbody-java/java_util_Hashtable_1.c | 204 + tests/nbody-java/java_util_Hashtable_1.h | 62 + tests/nbody-java/java_util_Hashtable_2.c | 226 + tests/nbody-java/java_util_Hashtable_2.h | 65 + tests/nbody-java/java_util_Hashtable_Entry.c | 338 + tests/nbody-java/java_util_Hashtable_Entry.h | 80 + tests/nbody-java/java_util_Iterator.c | 76 + tests/nbody-java/java_util_Iterator.h | 30 + tests/nbody-java/java_util_LinkedList.c | 2404 +++++ tests/nbody-java/java_util_LinkedList.h | 219 + tests/nbody-java/java_util_LinkedList_Link.c | 174 + tests/nbody-java/java_util_LinkedList_Link.h | 54 + tests/nbody-java/java_util_List.c | 78 + tests/nbody-java/java_util_List.h | 57 + tests/nbody-java/java_util_Locale.c | 1706 ++++ tests/nbody-java/java_util_Locale.h | 175 + tests/nbody-java/java_util_Map.c | 78 + tests/nbody-java/java_util_Map.h | 49 + tests/nbody-java/java_util_MapEntry.c | 444 + tests/nbody-java/java_util_MapEntry.h | 85 + tests/nbody-java/java_util_Map_Entry.c | 76 + tests/nbody-java/java_util_Map_Entry.h | 32 + tests/nbody-java/java_util_Properties.c | 2783 ++++++ tests/nbody-java/java_util_Properties.h | 176 + .../nbody-java/java_util_PropertyPermission.c | 565 ++ .../nbody-java/java_util_PropertyPermission.h | 104 + tests/nbody-java/java_util_Queue.c | 77 + tests/nbody-java/java_util_Queue.h | 48 + tests/nbody-java/java_util_RandomAccess.c | 76 + tests/nbody-java/java_util_RandomAccess.h | 27 + tests/nbody-java/java_util_Set.c | 78 + tests/nbody-java/java_util_Set.h | 47 + tests/nbody-java/java_util_StringTokenizer.c | 636 ++ tests/nbody-java/java_util_StringTokenizer.h | 76 + tests/nbody-java/java_util_WeakHashMap.c | 1428 +++ tests/nbody-java/java_util_WeakHashMap.h | 130 + .../nbody-java/java_util_WeakHashMap_Entry.c | 398 + .../nbody-java/java_util_WeakHashMap_Entry.h | 90 + tests/nbody-java/native_java_io_File.c | 309 + .../native_java_io_FileDescriptor.c | 21 + tests/nbody-java/native_java_lang_Class.c | 899 ++ tests/nbody-java/native_java_lang_Double.c | 47 + tests/nbody-java/native_java_lang_Float.c | 52 + tests/nbody-java/native_java_lang_Math.c | 186 + tests/nbody-java/native_java_lang_Object.c | 96 + tests/nbody-java/native_java_lang_Runtime.c | 57 + tests/nbody-java/native_java_lang_String.c | 45 + tests/nbody-java/native_java_lang_System.c | 116 + tests/nbody-java/native_java_lang_Thread.c | 310 + tests/nbody-java/native_java_lang_Throwable.c | 82 + ...ative_java_lang_reflect_AccessibleObject.c | 83 + .../native_java_lang_reflect_Array.c | 196 + .../native_java_lang_reflect_Constructor.c | 193 + .../native_java_lang_reflect_Field.c | 405 + .../native_java_lang_reflect_Method.c | 207 + .../nbody-java/native_java_net_InetAddress.c | 92 + tests/nbody-java/native_java_util_Locale.c | 36 + ...pache_harmony_luni_platform_OSFileSystem.c | 272 + ...rg_apache_harmony_luni_platform_OSMemory.c | 288 + ...he_harmony_luni_platform_OSNetworkSystem.c | 1041 ++ ...he_harmony_luni_util_FloatingPointParser.c | 33 + ...apache_harmony_luni_util_NumberConverter.c | 186 + .../native_org_xmlvm_runtime_Condition.c | 116 + ...tive_org_xmlvm_runtime_FinalizerNotifier.c | 63 + .../native_org_xmlvm_runtime_Mutex.c | 70 + .../native_org_xmlvm_runtime_XMLVMArray.c | 181 + ...tive_org_xmlvm_runtime_XMLVMOutputStream.c | 15 + .../native_org_xmlvm_runtime_XMLVMUtil.c | 37 + tests/nbody-java/nbody_Body.c | 453 + tests/nbody-java/nbody_Body.h | 70 + tests/nbody-java/nbody_NBodySystem.c | 670 ++ tests/nbody-java/nbody_NBodySystem.h | 62 + tests/nbody-java/nbody_nbody.c | 270 + tests/nbody-java/nbody_nbody.h | 76 + ...pache_harmony_luni_internal_nls_Messages.c | 565 ++ ...pache_harmony_luni_internal_nls_Messages.h | 74 + ..._apache_harmony_luni_platform_Endianness.c | 235 + ..._apache_harmony_luni_platform_Endianness.h | 64 + ...apache_harmony_luni_platform_IFileSystem.c | 272 + ...apache_harmony_luni_platform_IFileSystem.h | 80 + ...ache_harmony_luni_platform_IMemorySystem.c | 116 + ...ache_harmony_luni_platform_IMemorySystem.h | 74 + ...che_harmony_luni_platform_INetworkSystem.c | 106 + ...che_harmony_luni_platform_INetworkSystem.h | 94 + ...pache_harmony_luni_platform_OSFileSystem.c | 1050 ++ ...pache_harmony_luni_platform_OSFileSystem.h | 153 + ...rg_apache_harmony_luni_platform_OSMemory.c | 1000 ++ ...rg_apache_harmony_luni_platform_OSMemory.h | 195 + ...he_harmony_luni_platform_OSNetworkSystem.c | 769 ++ ...he_harmony_luni_platform_OSNetworkSystem.h | 237 + ...he_harmony_luni_util_FloatingPointParser.c | 903 ++ ...he_harmony_luni_util_FloatingPointParser.h | 74 + ...apache_harmony_luni_util_NumberConverter.c | 1357 +++ ...apache_harmony_luni_util_NumberConverter.h | 94 + ...org_apache_harmony_luni_util_PriviAction.c | 420 + ...org_apache_harmony_luni_util_PriviAction.h | 83 + .../org_apache_harmony_luni_util_Util.c | 1992 ++++ .../org_apache_harmony_luni_util_Util.h | 101 + ...ache_harmony_niochar_CharsetProviderImpl.c | 4462 +++++++++ ...ache_harmony_niochar_CharsetProviderImpl.h | 119 + ...he_harmony_niochar_CharsetProviderImpl_1.c | 267 + ...he_harmony_niochar_CharsetProviderImpl_1.h | 79 + ...org_apache_harmony_niochar_charset_UTF_8.c | 654 ++ ...org_apache_harmony_niochar_charset_UTF_8.h | 94 + ...he_harmony_niochar_charset_UTF_8_Decoder.c | 638 ++ ...he_harmony_niochar_charset_UTF_8_Decoder.h | 84 + ...he_harmony_niochar_charset_UTF_8_Encoder.c | 837 ++ ...he_harmony_niochar_charset_UTF_8_Encoder.h | 84 + .../nbody-java/org_xmlvm_runtime_Condition.c | 193 + .../nbody-java/org_xmlvm_runtime_Condition.h | 64 + .../org_xmlvm_runtime_FinalizerNotifier.c | 506 + .../org_xmlvm_runtime_FinalizerNotifier.h | 99 + .../org_xmlvm_runtime_FinalizerNotifier_1.c | 227 + .../org_xmlvm_runtime_FinalizerNotifier_1.h | 70 + tests/nbody-java/org_xmlvm_runtime_Mutex.c | 246 + tests/nbody-java/org_xmlvm_runtime_Mutex.h | 70 + .../org_xmlvm_runtime_RedTypeMarker.c | 156 + .../org_xmlvm_runtime_RedTypeMarker.h | 51 + .../nbody-java/org_xmlvm_runtime_XMLVMArray.c | 391 + .../nbody-java/org_xmlvm_runtime_XMLVMArray.h | 72 + .../org_xmlvm_runtime_XMLVMClassLoader.c | 198 + .../org_xmlvm_runtime_XMLVMClassLoader.h | 69 + .../org_xmlvm_runtime_XMLVMOutputStream.c | 189 + .../org_xmlvm_runtime_XMLVMOutputStream.h | 55 + .../nbody-java/org_xmlvm_runtime_XMLVMUtil.c | 209 + .../nbody-java/org_xmlvm_runtime_XMLVMUtil.h | 70 + tests/nbody-java/uthash.h | 904 ++ tests/nbody-java/xmlvm-file.c | 314 + tests/nbody-java/xmlvm-file.h | 74 + tests/nbody-java/xmlvm-hy.c | 255 + tests/nbody-java/xmlvm-hy.h | 121 + tests/nbody-java/xmlvm-number.c | 327 + tests/nbody-java/xmlvm-number.h | 105 + tests/nbody-java/xmlvm-reflection.h | 33 + tests/nbody-java/xmlvm-sock.c | 1255 +++ tests/nbody-java/xmlvm-sock.h | 72 + tests/nbody-java/xmlvm-tib-list.c | 345 + tests/nbody-java/xmlvm-util.c | 220 + tests/nbody-java/xmlvm-util.h | 46 + tests/nbody-java/xmlvm.c | 565 ++ tests/nbody-java/xmlvm.h | 574 ++ 386 files changed, 159126 insertions(+) create mode 100644 tests/nbody-java/constant_pool.c create mode 100644 tests/nbody-java/hycomp.h create mode 100644 tests/nbody-java/hyporterror.h create mode 100644 tests/nbody-java/hysock.h create mode 100644 tests/nbody-java/hysocket.h create mode 100644 tests/nbody-java/java_io_Closeable.c create mode 100644 tests/nbody-java/java_io_Closeable.h create mode 100644 tests/nbody-java/java_io_File.c create mode 100644 tests/nbody-java/java_io_File.h create mode 100644 tests/nbody-java/java_io_FileDescriptor.c create mode 100644 tests/nbody-java/java_io_FileDescriptor.h create mode 100644 tests/nbody-java/java_io_FilterOutputStream.c create mode 100644 tests/nbody-java/java_io_FilterOutputStream.h create mode 100644 tests/nbody-java/java_io_Flushable.c create mode 100644 tests/nbody-java/java_io_Flushable.h create mode 100644 tests/nbody-java/java_io_IOException.c create mode 100644 tests/nbody-java/java_io_IOException.h create mode 100644 tests/nbody-java/java_io_InterruptedIOException.c create mode 100644 tests/nbody-java/java_io_InterruptedIOException.h create mode 100644 tests/nbody-java/java_io_InvalidClassException.c create mode 100644 tests/nbody-java/java_io_InvalidClassException.h create mode 100644 tests/nbody-java/java_io_InvalidObjectException.c create mode 100644 tests/nbody-java/java_io_InvalidObjectException.h create mode 100644 tests/nbody-java/java_io_ObjectStreamException.c create mode 100644 tests/nbody-java/java_io_ObjectStreamException.h create mode 100644 tests/nbody-java/java_io_ObjectStreamField.c create mode 100644 tests/nbody-java/java_io_ObjectStreamField.h create mode 100644 tests/nbody-java/java_io_OutputStream.c create mode 100644 tests/nbody-java/java_io_OutputStream.h create mode 100644 tests/nbody-java/java_io_PrintStream.c create mode 100644 tests/nbody-java/java_io_PrintStream.h create mode 100644 tests/nbody-java/java_io_Serializable.c create mode 100644 tests/nbody-java/java_io_Serializable.h create mode 100644 tests/nbody-java/java_lang_AbstractStringBuilder.c create mode 100644 tests/nbody-java/java_lang_AbstractStringBuilder.h create mode 100644 tests/nbody-java/java_lang_Appendable.c create mode 100644 tests/nbody-java/java_lang_Appendable.h create mode 100644 tests/nbody-java/java_lang_Boolean.c create mode 100644 tests/nbody-java/java_lang_Boolean.h create mode 100644 tests/nbody-java/java_lang_Byte.c create mode 100644 tests/nbody-java/java_lang_Byte.h create mode 100644 tests/nbody-java/java_lang_CharSequence.c create mode 100644 tests/nbody-java/java_lang_CharSequence.h create mode 100644 tests/nbody-java/java_lang_Character.c create mode 100644 tests/nbody-java/java_lang_Character.h create mode 100644 tests/nbody-java/java_lang_Class.c create mode 100644 tests/nbody-java/java_lang_Class.h create mode 100644 tests/nbody-java/java_lang_ClassLoader.c create mode 100644 tests/nbody-java/java_lang_ClassLoader.h create mode 100644 tests/nbody-java/java_lang_ClassNotFoundException.c create mode 100644 tests/nbody-java/java_lang_ClassNotFoundException.h create mode 100644 tests/nbody-java/java_lang_Cloneable.c create mode 100644 tests/nbody-java/java_lang_Cloneable.h create mode 100644 tests/nbody-java/java_lang_Comparable.c create mode 100644 tests/nbody-java/java_lang_Comparable.h create mode 100644 tests/nbody-java/java_lang_Double.c create mode 100644 tests/nbody-java/java_lang_Double.h create mode 100644 tests/nbody-java/java_lang_Enum.c create mode 100644 tests/nbody-java/java_lang_Enum.h create mode 100644 tests/nbody-java/java_lang_Exception.c create mode 100644 tests/nbody-java/java_lang_Exception.h create mode 100644 tests/nbody-java/java_lang_Float.c create mode 100644 tests/nbody-java/java_lang_Float.h create mode 100644 tests/nbody-java/java_lang_IndexOutOfBoundsException.c create mode 100644 tests/nbody-java/java_lang_IndexOutOfBoundsException.h create mode 100644 tests/nbody-java/java_lang_Integer.c create mode 100644 tests/nbody-java/java_lang_Integer.h create mode 100644 tests/nbody-java/java_lang_Iterable.c create mode 100644 tests/nbody-java/java_lang_Iterable.h create mode 100644 tests/nbody-java/java_lang_Long.c create mode 100644 tests/nbody-java/java_lang_Long.h create mode 100644 tests/nbody-java/java_lang_Long_valueOfCache.c create mode 100644 tests/nbody-java/java_lang_Long_valueOfCache.h create mode 100644 tests/nbody-java/java_lang_Math.c create mode 100644 tests/nbody-java/java_lang_Math.h create mode 100644 tests/nbody-java/java_lang_NoSuchFieldException.c create mode 100644 tests/nbody-java/java_lang_NoSuchFieldException.h create mode 100644 tests/nbody-java/java_lang_NullPointerException.c create mode 100644 tests/nbody-java/java_lang_NullPointerException.h create mode 100644 tests/nbody-java/java_lang_Number.c create mode 100644 tests/nbody-java/java_lang_Number.h create mode 100644 tests/nbody-java/java_lang_Object.c create mode 100644 tests/nbody-java/java_lang_Object.h create mode 100644 tests/nbody-java/java_lang_Object_AddedMembers.c create mode 100644 tests/nbody-java/java_lang_Object_AddedMembers.h create mode 100644 tests/nbody-java/java_lang_Readable.c create mode 100644 tests/nbody-java/java_lang_Readable.h create mode 100644 tests/nbody-java/java_lang_Runnable.c create mode 100644 tests/nbody-java/java_lang_Runnable.h create mode 100644 tests/nbody-java/java_lang_Runtime.c create mode 100644 tests/nbody-java/java_lang_Runtime.h create mode 100644 tests/nbody-java/java_lang_RuntimeException.c create mode 100644 tests/nbody-java/java_lang_RuntimeException.h create mode 100644 tests/nbody-java/java_lang_RuntimePermission.c create mode 100644 tests/nbody-java/java_lang_RuntimePermission.h create mode 100644 tests/nbody-java/java_lang_SecurityManager.c create mode 100644 tests/nbody-java/java_lang_SecurityManager.h create mode 100644 tests/nbody-java/java_lang_Short.c create mode 100644 tests/nbody-java/java_lang_Short.h create mode 100644 tests/nbody-java/java_lang_StackTraceElement.c create mode 100644 tests/nbody-java/java_lang_StackTraceElement.h create mode 100644 tests/nbody-java/java_lang_String.c create mode 100644 tests/nbody-java/java_lang_String.h create mode 100644 tests/nbody-java/java_lang_StringBuilder.c create mode 100644 tests/nbody-java/java_lang_StringBuilder.h create mode 100644 tests/nbody-java/java_lang_String_CaseInsensitiveComparator.c create mode 100644 tests/nbody-java/java_lang_String_CaseInsensitiveComparator.h create mode 100644 tests/nbody-java/java_lang_System.c create mode 100644 tests/nbody-java/java_lang_System.h create mode 100644 tests/nbody-java/java_lang_Thread.c create mode 100644 tests/nbody-java/java_lang_Thread.h create mode 100644 tests/nbody-java/java_lang_ThreadGroup.c create mode 100644 tests/nbody-java/java_lang_ThreadGroup.h create mode 100644 tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.c create mode 100644 tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.h create mode 100644 tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.c create mode 100644 tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.h create mode 100644 tests/nbody-java/java_lang_Thread_State.c create mode 100644 tests/nbody-java/java_lang_Thread_State.h create mode 100644 tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.c create mode 100644 tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.h create mode 100644 tests/nbody-java/java_lang_Throwable.c create mode 100644 tests/nbody-java/java_lang_Throwable.h create mode 100644 tests/nbody-java/java_lang_ref_Reference.c create mode 100644 tests/nbody-java/java_lang_ref_Reference.h create mode 100644 tests/nbody-java/java_lang_ref_ReferenceQueue.c create mode 100644 tests/nbody-java/java_lang_ref_ReferenceQueue.h create mode 100644 tests/nbody-java/java_lang_ref_WeakReference.c create mode 100644 tests/nbody-java/java_lang_ref_WeakReference.h create mode 100644 tests/nbody-java/java_lang_reflect_AccessibleObject.c create mode 100644 tests/nbody-java/java_lang_reflect_AccessibleObject.h create mode 100644 tests/nbody-java/java_lang_reflect_AnnotatedElement.c create mode 100644 tests/nbody-java/java_lang_reflect_AnnotatedElement.h create mode 100644 tests/nbody-java/java_lang_reflect_Array.c create mode 100644 tests/nbody-java/java_lang_reflect_Array.h create mode 100644 tests/nbody-java/java_lang_reflect_Constructor.c create mode 100644 tests/nbody-java/java_lang_reflect_Constructor.h create mode 100644 tests/nbody-java/java_lang_reflect_Field.c create mode 100644 tests/nbody-java/java_lang_reflect_Field.h create mode 100644 tests/nbody-java/java_lang_reflect_GenericDeclaration.c create mode 100644 tests/nbody-java/java_lang_reflect_GenericDeclaration.h create mode 100644 tests/nbody-java/java_lang_reflect_InvocationHandler.c create mode 100644 tests/nbody-java/java_lang_reflect_InvocationHandler.h create mode 100644 tests/nbody-java/java_lang_reflect_Member.c create mode 100644 tests/nbody-java/java_lang_reflect_Member.h create mode 100644 tests/nbody-java/java_lang_reflect_Method.c create mode 100644 tests/nbody-java/java_lang_reflect_Method.h create mode 100644 tests/nbody-java/java_lang_reflect_Modifier.c create mode 100644 tests/nbody-java/java_lang_reflect_Modifier.h create mode 100644 tests/nbody-java/java_lang_reflect_Type.c create mode 100644 tests/nbody-java/java_lang_reflect_Type.h create mode 100644 tests/nbody-java/java_net_BindException.c create mode 100644 tests/nbody-java/java_net_BindException.h create mode 100644 tests/nbody-java/java_net_ConnectException.c create mode 100644 tests/nbody-java/java_net_ConnectException.h create mode 100644 tests/nbody-java/java_net_Inet6Address.c create mode 100644 tests/nbody-java/java_net_Inet6Address.h create mode 100644 tests/nbody-java/java_net_InetAddress.c create mode 100644 tests/nbody-java/java_net_InetAddress.h create mode 100644 tests/nbody-java/java_net_SocketException.c create mode 100644 tests/nbody-java/java_net_SocketException.h create mode 100644 tests/nbody-java/java_net_UnknownHostException.c create mode 100644 tests/nbody-java/java_net_UnknownHostException.h create mode 100644 tests/nbody-java/java_nio_Buffer.c create mode 100644 tests/nbody-java/java_nio_Buffer.h create mode 100644 tests/nbody-java/java_nio_BufferFactory.c create mode 100644 tests/nbody-java/java_nio_BufferFactory.h create mode 100644 tests/nbody-java/java_nio_ByteBuffer.c create mode 100644 tests/nbody-java/java_nio_ByteBuffer.h create mode 100644 tests/nbody-java/java_nio_CharArrayBuffer.c create mode 100644 tests/nbody-java/java_nio_CharArrayBuffer.h create mode 100644 tests/nbody-java/java_nio_CharBuffer.c create mode 100644 tests/nbody-java/java_nio_CharBuffer.h create mode 100644 tests/nbody-java/java_nio_HeapByteBuffer.c create mode 100644 tests/nbody-java/java_nio_HeapByteBuffer.h create mode 100644 tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.c create mode 100644 tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.h create mode 100644 tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.c create mode 100644 tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.h create mode 100644 tests/nbody-java/java_nio_charset_Charset.c create mode 100644 tests/nbody-java/java_nio_charset_Charset.h create mode 100644 tests/nbody-java/java_nio_charset_CharsetDecoder.c create mode 100644 tests/nbody-java/java_nio_charset_CharsetDecoder.h create mode 100644 tests/nbody-java/java_nio_charset_CharsetEncoder.c create mode 100644 tests/nbody-java/java_nio_charset_CharsetEncoder.h create mode 100644 tests/nbody-java/java_nio_charset_Charset_1.c create mode 100644 tests/nbody-java/java_nio_charset_Charset_1.h create mode 100644 tests/nbody-java/java_nio_charset_Charset_2.c create mode 100644 tests/nbody-java/java_nio_charset_Charset_2.h create mode 100644 tests/nbody-java/java_nio_charset_CoderResult.c create mode 100644 tests/nbody-java/java_nio_charset_CoderResult.h create mode 100644 tests/nbody-java/java_nio_charset_CodingErrorAction.c create mode 100644 tests/nbody-java/java_nio_charset_CodingErrorAction.h create mode 100644 tests/nbody-java/java_nio_charset_spi_CharsetProvider.c create mode 100644 tests/nbody-java/java_nio_charset_spi_CharsetProvider.h create mode 100644 tests/nbody-java/java_security_AccessController.c create mode 100644 tests/nbody-java/java_security_AccessController.h create mode 100644 tests/nbody-java/java_security_BasicPermission.c create mode 100644 tests/nbody-java/java_security_BasicPermission.h create mode 100644 tests/nbody-java/java_security_Guard.c create mode 100644 tests/nbody-java/java_security_Guard.h create mode 100644 tests/nbody-java/java_security_Permission.c create mode 100644 tests/nbody-java/java_security_Permission.h create mode 100644 tests/nbody-java/java_security_PrivilegedAction.c create mode 100644 tests/nbody-java/java_security_PrivilegedAction.h create mode 100644 tests/nbody-java/java_util_AbstractCollection.c create mode 100644 tests/nbody-java/java_util_AbstractCollection.h create mode 100644 tests/nbody-java/java_util_AbstractList.c create mode 100644 tests/nbody-java/java_util_AbstractList.h create mode 100644 tests/nbody-java/java_util_AbstractMap.c create mode 100644 tests/nbody-java/java_util_AbstractMap.h create mode 100644 tests/nbody-java/java_util_AbstractSequentialList.c create mode 100644 tests/nbody-java/java_util_AbstractSequentialList.h create mode 100644 tests/nbody-java/java_util_AbstractSet.c create mode 100644 tests/nbody-java/java_util_AbstractSet.h create mode 100644 tests/nbody-java/java_util_ArrayList.c create mode 100644 tests/nbody-java/java_util_ArrayList.h create mode 100644 tests/nbody-java/java_util_Collection.c create mode 100644 tests/nbody-java/java_util_Collection.h create mode 100644 tests/nbody-java/java_util_Collections.c create mode 100644 tests/nbody-java/java_util_Collections.h create mode 100644 tests/nbody-java/java_util_Collections_EmptyList.c create mode 100644 tests/nbody-java/java_util_Collections_EmptyList.h create mode 100644 tests/nbody-java/java_util_Collections_EmptyMap.c create mode 100644 tests/nbody-java/java_util_Collections_EmptyMap.h create mode 100644 tests/nbody-java/java_util_Collections_EmptySet.c create mode 100644 tests/nbody-java/java_util_Collections_EmptySet.h create mode 100644 tests/nbody-java/java_util_Collections_SynchronizedMap.c create mode 100644 tests/nbody-java/java_util_Collections_SynchronizedMap.h create mode 100644 tests/nbody-java/java_util_Comparator.c create mode 100644 tests/nbody-java/java_util_Comparator.h create mode 100644 tests/nbody-java/java_util_Deque.c create mode 100644 tests/nbody-java/java_util_Deque.h create mode 100644 tests/nbody-java/java_util_Dictionary.c create mode 100644 tests/nbody-java/java_util_Dictionary.h create mode 100644 tests/nbody-java/java_util_Enumeration.c create mode 100644 tests/nbody-java/java_util_Enumeration.h create mode 100644 tests/nbody-java/java_util_HashMap.c create mode 100644 tests/nbody-java/java_util_HashMap.h create mode 100644 tests/nbody-java/java_util_HashMap_Entry.c create mode 100644 tests/nbody-java/java_util_HashMap_Entry.h create mode 100644 tests/nbody-java/java_util_HashSet.c create mode 100644 tests/nbody-java/java_util_HashSet.h create mode 100644 tests/nbody-java/java_util_Hashtable.c create mode 100644 tests/nbody-java/java_util_Hashtable.h create mode 100644 tests/nbody-java/java_util_Hashtable_1.c create mode 100644 tests/nbody-java/java_util_Hashtable_1.h create mode 100644 tests/nbody-java/java_util_Hashtable_2.c create mode 100644 tests/nbody-java/java_util_Hashtable_2.h create mode 100644 tests/nbody-java/java_util_Hashtable_Entry.c create mode 100644 tests/nbody-java/java_util_Hashtable_Entry.h create mode 100644 tests/nbody-java/java_util_Iterator.c create mode 100644 tests/nbody-java/java_util_Iterator.h create mode 100644 tests/nbody-java/java_util_LinkedList.c create mode 100644 tests/nbody-java/java_util_LinkedList.h create mode 100644 tests/nbody-java/java_util_LinkedList_Link.c create mode 100644 tests/nbody-java/java_util_LinkedList_Link.h create mode 100644 tests/nbody-java/java_util_List.c create mode 100644 tests/nbody-java/java_util_List.h create mode 100644 tests/nbody-java/java_util_Locale.c create mode 100644 tests/nbody-java/java_util_Locale.h create mode 100644 tests/nbody-java/java_util_Map.c create mode 100644 tests/nbody-java/java_util_Map.h create mode 100644 tests/nbody-java/java_util_MapEntry.c create mode 100644 tests/nbody-java/java_util_MapEntry.h create mode 100644 tests/nbody-java/java_util_Map_Entry.c create mode 100644 tests/nbody-java/java_util_Map_Entry.h create mode 100644 tests/nbody-java/java_util_Properties.c create mode 100644 tests/nbody-java/java_util_Properties.h create mode 100644 tests/nbody-java/java_util_PropertyPermission.c create mode 100644 tests/nbody-java/java_util_PropertyPermission.h create mode 100644 tests/nbody-java/java_util_Queue.c create mode 100644 tests/nbody-java/java_util_Queue.h create mode 100644 tests/nbody-java/java_util_RandomAccess.c create mode 100644 tests/nbody-java/java_util_RandomAccess.h create mode 100644 tests/nbody-java/java_util_Set.c create mode 100644 tests/nbody-java/java_util_Set.h create mode 100644 tests/nbody-java/java_util_StringTokenizer.c create mode 100644 tests/nbody-java/java_util_StringTokenizer.h create mode 100644 tests/nbody-java/java_util_WeakHashMap.c create mode 100644 tests/nbody-java/java_util_WeakHashMap.h create mode 100644 tests/nbody-java/java_util_WeakHashMap_Entry.c create mode 100644 tests/nbody-java/java_util_WeakHashMap_Entry.h create mode 100644 tests/nbody-java/native_java_io_File.c create mode 100644 tests/nbody-java/native_java_io_FileDescriptor.c create mode 100644 tests/nbody-java/native_java_lang_Class.c create mode 100644 tests/nbody-java/native_java_lang_Double.c create mode 100644 tests/nbody-java/native_java_lang_Float.c create mode 100644 tests/nbody-java/native_java_lang_Math.c create mode 100644 tests/nbody-java/native_java_lang_Object.c create mode 100644 tests/nbody-java/native_java_lang_Runtime.c create mode 100644 tests/nbody-java/native_java_lang_String.c create mode 100644 tests/nbody-java/native_java_lang_System.c create mode 100644 tests/nbody-java/native_java_lang_Thread.c create mode 100644 tests/nbody-java/native_java_lang_Throwable.c create mode 100644 tests/nbody-java/native_java_lang_reflect_AccessibleObject.c create mode 100644 tests/nbody-java/native_java_lang_reflect_Array.c create mode 100644 tests/nbody-java/native_java_lang_reflect_Constructor.c create mode 100644 tests/nbody-java/native_java_lang_reflect_Field.c create mode 100644 tests/nbody-java/native_java_lang_reflect_Method.c create mode 100644 tests/nbody-java/native_java_net_InetAddress.c create mode 100644 tests/nbody-java/native_java_util_Locale.c create mode 100644 tests/nbody-java/native_org_apache_harmony_luni_platform_OSFileSystem.c create mode 100644 tests/nbody-java/native_org_apache_harmony_luni_platform_OSMemory.c create mode 100644 tests/nbody-java/native_org_apache_harmony_luni_platform_OSNetworkSystem.c create mode 100644 tests/nbody-java/native_org_apache_harmony_luni_util_FloatingPointParser.c create mode 100644 tests/nbody-java/native_org_apache_harmony_luni_util_NumberConverter.c create mode 100644 tests/nbody-java/native_org_xmlvm_runtime_Condition.c create mode 100644 tests/nbody-java/native_org_xmlvm_runtime_FinalizerNotifier.c create mode 100644 tests/nbody-java/native_org_xmlvm_runtime_Mutex.c create mode 100644 tests/nbody-java/native_org_xmlvm_runtime_XMLVMArray.c create mode 100644 tests/nbody-java/native_org_xmlvm_runtime_XMLVMOutputStream.c create mode 100644 tests/nbody-java/native_org_xmlvm_runtime_XMLVMUtil.c create mode 100644 tests/nbody-java/nbody_Body.c create mode 100644 tests/nbody-java/nbody_Body.h create mode 100644 tests/nbody-java/nbody_NBodySystem.c create mode 100644 tests/nbody-java/nbody_NBodySystem.h create mode 100644 tests/nbody-java/nbody_nbody.c create mode 100644 tests/nbody-java/nbody_nbody.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_Endianness.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_Endianness.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_PriviAction.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_PriviAction.h create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_Util.c create mode 100644 tests/nbody-java/org_apache_harmony_luni_util_Util.h create mode 100644 tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.c create mode 100644 tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.h create mode 100644 tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.c create mode 100644 tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.h create mode 100644 tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.c create mode 100644 tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.h create mode 100644 tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.c create mode 100644 tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.h create mode 100644 tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.c create mode 100644 tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_Condition.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_Condition.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_Mutex.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_Mutex.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMArray.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMArray.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.h create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.c create mode 100644 tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.h create mode 100644 tests/nbody-java/uthash.h create mode 100644 tests/nbody-java/xmlvm-file.c create mode 100644 tests/nbody-java/xmlvm-file.h create mode 100644 tests/nbody-java/xmlvm-hy.c create mode 100644 tests/nbody-java/xmlvm-hy.h create mode 100644 tests/nbody-java/xmlvm-number.c create mode 100644 tests/nbody-java/xmlvm-number.h create mode 100644 tests/nbody-java/xmlvm-reflection.h create mode 100644 tests/nbody-java/xmlvm-sock.c create mode 100644 tests/nbody-java/xmlvm-sock.h create mode 100644 tests/nbody-java/xmlvm-tib-list.c create mode 100644 tests/nbody-java/xmlvm-util.c create mode 100644 tests/nbody-java/xmlvm-util.h create mode 100644 tests/nbody-java/xmlvm.c create mode 100644 tests/nbody-java/xmlvm.h diff --git a/tests/nbody-java/constant_pool.c b/tests/nbody-java/constant_pool.c new file mode 100644 index 0000000000000..b3f3467d609b5 --- /dev/null +++ b/tests/nbody-java/constant_pool.c @@ -0,0 +1,3357 @@ + +// Generated by xmlvm2c.xsl. Do not edit! + +#include "xmlvm.h" + +const JAVA_ARRAY_CHAR* xmlvm_constant_pool_data[] = { +// ID=0: +(JAVA_ARRAY_CHAR[]) {60, 117, 110, 107, 110, 111, 119, 110, 32, 99, 108, 97, 115, 115, 62}, +// ID=1: +(JAVA_ARRAY_CHAR[]) {60, 117, 110, 107, 110, 111, 119, 110, 32, 109, 101, 116, 104, 111, 100, 62}, +// ID=2: (Native Method) +(JAVA_ARRAY_CHAR[]) {40, 78, 97, 116, 105, 118, 101, 32, 77, 101, 116, 104, 111, 100, 41}, +// ID=3: (Unknown Source) +(JAVA_ARRAY_CHAR[]) {40, 85, 110, 107, 110, 111, 119, 110, 32, 83, 111, 117, 114, 99, 101, 41}, +// ID=4: true +(JAVA_ARRAY_CHAR[]) {116, 114, 117, 101}, +// ID=5: (this Map) +(JAVA_ARRAY_CHAR[]) {40, 116, 104, 105, 115, 32, 77, 97, 112, 41}, +// ID=6: \173\175 +(JAVA_ARRAY_CHAR[]) {123, 125}, +// ID=7: , +(JAVA_ARRAY_CHAR[]) {44, 32}, +// ID=8: NaN +(JAVA_ARRAY_CHAR[]) {78, 97, 78}, +// ID=9: Infinity +(JAVA_ARRAY_CHAR[]) {73, 110, 102, 105, 110, 105, 116, 121}, +// ID=10: -Infinity +(JAVA_ARRAY_CHAR[]) {45, 73, 110, 102, 105, 110, 105, 116, 121}, +// ID=11: -0x0.0p0 +(JAVA_ARRAY_CHAR[]) {45, 48, 120, 48, 46, 48, 112, 48}, +// ID=12: 0x0.0p0 +(JAVA_ARRAY_CHAR[]) {48, 120, 48, 46, 48, 112, 48}, +// ID=13: -0x +(JAVA_ARRAY_CHAR[]) {45, 48, 120}, +// ID=14: 0. +(JAVA_ARRAY_CHAR[]) {48, 46}, +// ID=15: p-126 +(JAVA_ARRAY_CHAR[]) {112, 45, 49, 50, 54}, +// ID=16: 0x +(JAVA_ARRAY_CHAR[]) {48, 120}, +// ID=17: 1. +(JAVA_ARRAY_CHAR[]) {49, 46}, +// ID=18: L +(JAVA_ARRAY_CHAR[]) {76}, +// ID=19: en +(JAVA_ARRAY_CHAR[]) {101, 110}, +// ID=20: US +(JAVA_ARRAY_CHAR[]) {85, 83}, +// ID=21: +(JAVA_ARRAY_CHAR[]) {}, +// ID=22: ( +(JAVA_ARRAY_CHAR[]) {32, 40}, +// ID=23: ) +(JAVA_ARRAY_CHAR[]) {41}, +// ID=24: , +(JAVA_ARRAY_CHAR[]) {44}, +// ID=25: __ +(JAVA_ARRAY_CHAR[]) {95, 95}, +// ID=26: country +(JAVA_ARRAY_CHAR[]) {99, 111, 117, 110, 116, 114, 121}, +// ID=27: hashcode +(JAVA_ARRAY_CHAR[]) {104, 97, 115, 104, 99, 111, 100, 101}, +// ID=28: language +(JAVA_ARRAY_CHAR[]) {108, 97, 110, 103, 117, 97, 103, 101}, +// ID=29: variant +(JAVA_ARRAY_CHAR[]) {118, 97, 114, 105, 97, 110, 116}, +// ID=30: fr +(JAVA_ARRAY_CHAR[]) {102, 114}, +// ID=31: CN +(JAVA_ARRAY_CHAR[]) {67, 78}, +// ID=32: zh +(JAVA_ARRAY_CHAR[]) {122, 104}, +// ID=33: CA +(JAVA_ARRAY_CHAR[]) {67, 65}, +// ID=34: FR +(JAVA_ARRAY_CHAR[]) {70, 82}, +// ID=35: de +(JAVA_ARRAY_CHAR[]) {100, 101}, +// ID=36: DE +(JAVA_ARRAY_CHAR[]) {68, 69}, +// ID=37: it +(JAVA_ARRAY_CHAR[]) {105, 116}, +// ID=38: IT +(JAVA_ARRAY_CHAR[]) {73, 84}, +// ID=39: ja +(JAVA_ARRAY_CHAR[]) {106, 97}, +// ID=40: JP +(JAVA_ARRAY_CHAR[]) {74, 80}, +// ID=41: ko +(JAVA_ARRAY_CHAR[]) {107, 111}, +// ID=42: KR +(JAVA_ARRAY_CHAR[]) {75, 82}, +// ID=43: TW +(JAVA_ARRAY_CHAR[]) {84, 87}, +// ID=44: GB +(JAVA_ARRAY_CHAR[]) {71, 66}, +// ID=45: \011at +(JAVA_ARRAY_CHAR[]) {9, 97, 116, 32}, +// ID=46: Caused by: +(JAVA_ARRAY_CHAR[]) {67, 97, 117, 115, 101, 100, 32, 98, 121, 58, 32}, +// ID=47: \011... +(JAVA_ARRAY_CHAR[]) {9, 46, 46, 46, 32}, +// ID=48: more +(JAVA_ARRAY_CHAR[]) {32, 109, 111, 114, 101}, +// ID=49: : +(JAVA_ARRAY_CHAR[]) {58, 32}, +// ID=50: Cause cannot be the receiver +(JAVA_ARRAY_CHAR[]) {67, 97, 117, 115, 101, 32, 99, 97, 110, 110, 111, 116, 32, 98, 101, 32, 116, 104, 101, 32, 114, 101, 99, 101, 105, 118, 101, 114}, +// ID=51: Cause already initialized +(JAVA_ARRAY_CHAR[]) {67, 97, 117, 115, 101, 32, 97, 108, 114, 101, 97, 100, 121, 32, 105, 110, 105, 116, 105, 97, 108, 105, 122, 101, 100}, +// ID=52: . +(JAVA_ARRAY_CHAR[]) {46}, +// ID=53: . +(JAVA_ARRAY_CHAR[]) {46, 60, 105, 110, 105, 116, 62}, +// ID=54: / +(JAVA_ARRAY_CHAR[]) {47}, +// ID=55: file:// +(JAVA_ARRAY_CHAR[]) {102, 105, 108, 101, 58, 47, 47}, +// ID=56: interface +(JAVA_ARRAY_CHAR[]) {105, 110, 116, 101, 114, 102, 97, 99, 101}, +// ID=57: +(JAVA_ARRAY_CHAR[]) {32}, +// ID=58: class +(JAVA_ARRAY_CHAR[]) {99, 108, 97, 115, 115}, +// ID=59: charsetProvider +(JAVA_ARRAY_CHAR[]) {99, 104, 97, 114, 115, 101, 116, 80, 114, 111, 118, 105, 100, 101, 114}, +// ID=60: luni.4A +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 52, 65}, +// ID=61: luni.12 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 49, 50}, +// ID=62: luni.18 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 49, 56}, +// ID=63: null +(JAVA_ARRAY_CHAR[]) {110, 117, 108, 108}, +// ID=64: offset +(JAVA_ARRAY_CHAR[]) {111, 102, 102, 115, 101, 116, 32}, +// ID=65: , length +(JAVA_ARRAY_CHAR[]) {44, 32, 108, 101, 110, 103, 116, 104, 32}, +// ID=66: , char[].length +(JAVA_ARRAY_CHAR[]) {44, 32, 99, 104, 97, 114, 91, 93, 46, 108, 101, 110, 103, 116, 104, 32}, +// ID=67: the current thread is not the owner of the object's monitor +(JAVA_ARRAY_CHAR[]) {116, 104, 101, 32, 99, 117, 114, 114, 101, 110, 116, 32, 116, 104, 114, 101, 97, 100, 32, 105, 115, 32, 110, 111, 116, 32, 116, 104, 101, 32, 111, 119, 110, 101, 114, 32, 111, 102, 32, 116, 104, 101, 32, 111, 98, 106, 101, 99, 116, 39, 115, 32, 109, 111, 110, 105, 116, 111, 114}, +// ID=68: the value of timeout is negative +(JAVA_ARRAY_CHAR[]) {116, 104, 101, 32, 118, 97, 108, 117, 101, 32, 111, 102, 32, 116, 105, 109, 101, 111, 117, 116, 32, 105, 115, 32, 110, 101, 103, 97, 116, 105, 118, 101}, +// ID=69: Connection refused +(JAVA_ARRAY_CHAR[]) {67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 32, 114, 101, 102, 117, 115, 101, 100}, +// ID=70: 0 +(JAVA_ARRAY_CHAR[]) {48}, +// ID=71: localhost +(JAVA_ARRAY_CHAR[]) {108, 111, 99, 97, 108, 104, 111, 115, 116}, +// ID=72: networkaddress.cache.ttl +(JAVA_ARRAY_CHAR[]) {110, 101, 116, 119, 111, 114, 107, 97, 100, 100, 114, 101, 115, 115, 46, 99, 97, 99, 104, 101, 46, 116, 116, 108}, +// ID=73: 255.255.255.255 +(JAVA_ARRAY_CHAR[]) {50, 53, 53, 46, 50, 53, 53, 46, 50, 53, 53, 46, 50, 53, 53}, +// ID=74: luni.61 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 54, 49}, +// ID=75: luni.64 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 54, 52}, +// ID=76: luni.65 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 54, 53}, +// ID=77: \134. +(JAVA_ARRAY_CHAR[]) {92, 46}, +// ID=78: :.% +(JAVA_ARRAY_CHAR[]) {58, 46, 37}, +// ID=79: : +(JAVA_ARRAY_CHAR[]) {58}, +// ID=80: % +(JAVA_ARRAY_CHAR[]) {37}, +// ID=81: address +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 114, 101, 115, 115}, +// ID=82: family +(JAVA_ARRAY_CHAR[]) {102, 97, 109, 105, 108, 121}, +// ID=83: hostName +(JAVA_ARRAY_CHAR[]) {104, 111, 115, 116, 78, 97, 109, 101}, +// ID=84: Invalid file descriptor arrays +(JAVA_ARRAY_CHAR[]) {73, 110, 118, 97, 108, 105, 100, 32, 102, 105, 108, 101, 32, 100, 101, 115, 99, 114, 105, 112, 116, 111, 114, 32, 97, 114, 114, 97, 121, 115}, +// ID=85: ( +(JAVA_ARRAY_CHAR[]) {40}, +// ID=86: niochar.02 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 50}, +// ID=87: niochar.03 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 51}, +// ID=88: niochar.0B +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 66}, +// ID=89: niochar.0C +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 67}, +// ID=90: niochar.0D +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 68}, +// ID=91: niochar.0E +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 69}, +// ID=92: - +(JAVA_ARRAY_CHAR[]) {45}, +// ID=93: 0.0 +(JAVA_ARRAY_CHAR[]) {48, 46, 48}, +// ID=94: 4.9E-324 +(JAVA_ARRAY_CHAR[]) {52, 46, 57, 69, 45, 51, 50, 52}, +// ID=95: [] +(JAVA_ARRAY_CHAR[]) {91, 93}, +// ID=96: (this Collection) +(JAVA_ARRAY_CHAR[]) {40, 116, 104, 105, 115, 32, 67, 111, 108, 108, 101, 99, 116, 105, 111, 110, 41}, +// ID=97: Illegal lock type requested. +(JAVA_ARRAY_CHAR[]) {73, 108, 108, 101, 103, 97, 108, 32, 108, 111, 99, 107, 32, 116, 121, 112, 101, 32, 114, 101, 113, 117, 101, 115, 116, 101, 100, 46}, +// ID=98: Lock start position must be non-negative +(JAVA_ARRAY_CHAR[]) {76, 111, 99, 107, 32, 115, 116, 97, 114, 116, 32, 112, 111, 115, 105, 116, 105, 111, 110, 32, 109, 117, 115, 116, 32, 98, 101, 32, 110, 111, 110, 45, 110, 101, 103, 97, 116, 105, 118, 101}, +// ID=99: Lock length must be non-negative +(JAVA_ARRAY_CHAR[]) {76, 111, 99, 107, 32, 108, 101, 110, 103, 116, 104, 32, 109, 117, 115, 116, 32, 98, 101, 32, 110, 111, 110, 45, 110, 101, 103, 97, 116, 105, 118, 101}, +// ID=100: UTF-8 +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 45, 56}, +// ID=101: Finalizer-thread +(JAVA_ARRAY_CHAR[]) {70, 105, 110, 97, 108, 105, 122, 101, 114, 45, 116, 104, 114, 101, 97, 100}, +// ID=102: http://java.sun.com/dtd/properties.dtd +(JAVA_ARRAY_CHAR[]) {104, 116, 116, 112, 58, 47, 47, 106, 97, 118, 97, 46, 115, 117, 110, 46, 99, 111, 109, 47, 100, 116, 100, 47, 112, 114, 111, 112, 101, 114, 116, 105, 101, 115, 46, 100, 116, 100}, +// ID=103: +(JAVA_ARRAY_CHAR[]) {60, 63, 120, 109, 108, 32, 118, 101, 114, 115, 105, 111, 110, 61, 34, 49, 46, 48, 34, 32, 101, 110, 99, 111, 100, 105, 110, 103, 61, 34, 85, 84, 70, 45, 56, 34, 63, 62, 32, 32, 32, 32, 60, 33, 69, 76, 69, 77, 69, 78, 84, 32, 112, 114, 111, 112, 101, 114, 116, 105, 101, 115, 32, 40, 99, 111, 109, 109, 101, 110, 116, 63, 44, 32, 101, 110, 116, 114, 121, 42, 41, 32, 62, 32, 32, 32, 32, 60, 33, 65, 84, 84, 76, 73, 83, 84, 32, 112, 114, 111, 112, 101, 114, 116, 105, 101, 115, 32, 118, 101, 114, 115, 105, 111, 110, 32, 67, 68, 65, 84, 65, 32, 35, 70, 73, 88, 69, 68, 32, 34, 49, 46, 48, 34, 32, 62, 32, 32, 32, 32, 60, 33, 69, 76, 69, 77, 69, 78, 84, 32, 99, 111, 109, 109, 101, 110, 116, 32, 40, 35, 80, 67, 68, 65, 84, 65, 41, 32, 62, 32, 32, 32, 32, 60, 33, 69, 76, 69, 77, 69, 78, 84, 32, 101, 110, 116, 114, 121, 32, 40, 35, 80, 67, 68, 65, 84, 65, 41, 32, 62, 32, 32, 32, 32, 60, 33, 65, 84, 84, 76, 73, 83, 84, 32, 101, 110, 116, 114, 121, 32, 107, 101, 121, 32, 67, 68, 65, 84, 65, 32, 35, 82, 69, 81, 85, 73, 82, 69, 68, 32, 62}, +// ID=104: \134 +(JAVA_ARRAY_CHAR[]) {92, 32}, +// ID=105: \134#!=: +(JAVA_ARRAY_CHAR[]) {92, 35, 33, 61, 58}, +// ID=106: \134t +(JAVA_ARRAY_CHAR[]) {92, 116}, +// ID=107: \134n +(JAVA_ARRAY_CHAR[]) {92, 110}, +// ID=108: \134f +(JAVA_ARRAY_CHAR[]) {92, 102}, +// ID=109: \134r +(JAVA_ARRAY_CHAR[]) {92, 114}, +// ID=110: ... +(JAVA_ARRAY_CHAR[]) {46, 46, 46}, +// ID=111: ISO8859-1 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 56, 56, 53, 57, 45, 49}, +// ID=112: luni.08 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 48, 56}, +// ID=113: luni.09 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 48, 57}, +// ID=114: \000 +(JAVA_ARRAY_CHAR[]) {0}, +// ID=115: line.separator +(JAVA_ARRAY_CHAR[]) {108, 105, 110, 101, 46, 115, 101, 112, 97, 114, 97, 116, 111, 114}, +// ID=116: ISO8859_1 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 56, 56, 53, 57, 95, 49}, +// ID=117: entry +(JAVA_ARRAY_CHAR[]) {101, 110, 116, 114, 121}, +// ID=118: key +(JAVA_ARRAY_CHAR[]) {107, 101, 121}, +// ID=119: \042> +(JAVA_ARRAY_CHAR[]) {34, 62}, +// ID=120: +(JAVA_ARRAY_CHAR[]) {34, 63, 62}, +// ID=122: +(JAVA_ARRAY_CHAR[]) {60, 112, 114, 111, 112, 101, 114, 116, 105, 101, 115, 62}, +// ID=124: +(JAVA_ARRAY_CHAR[]) {60, 99, 111, 109, 109, 101, 110, 116, 62}, +// ID=125: +(JAVA_ARRAY_CHAR[]) {60, 47, 99, 111, 109, 109, 101, 110, 116, 62}, +// ID=126: +(JAVA_ARRAY_CHAR[]) {60, 47, 112, 114, 111, 112, 101, 114, 116, 105, 101, 115, 62}, +// ID=127: Warning: encoding name +(JAVA_ARRAY_CHAR[]) {87, 97, 114, 110, 105, 110, 103, 58, 32, 101, 110, 99, 111, 100, 105, 110, 103, 32, 110, 97, 109, 101, 32}, +// ID=128: is illegal, using UTF-8 as default encoding +(JAVA_ARRAY_CHAR[]) {32, 105, 115, 32, 105, 108, 108, 101, 103, 97, 108, 44, 32, 117, 115, 105, 110, 103, 32, 85, 84, 70, 45, 56, 32, 97, 115, 32, 100, 101, 102, 97, 117, 108, 116, 32, 101, 110, 99, 111, 100, 105, 110, 103}, +// ID=129: Warning: encoding +(JAVA_ARRAY_CHAR[]) {87, 97, 114, 110, 105, 110, 103, 58, 32, 101, 110, 99, 111, 100, 105, 110, 103, 32}, +// ID=130: is not supported, using UTF-8 as default encoding +(JAVA_ARRAY_CHAR[]) {32, 105, 115, 32, 110, 111, 116, 32, 115, 117, 112, 112, 111, 114, 116, 101, 100, 44, 32, 117, 115, 105, 110, 103, 32, 85, 84, 70, 45, 56, 32, 97, 115, 32, 100, 101, 102, 97, 117, 108, 116, 32, 101, 110, 99, 111, 100, 105, 110, 103}, +// ID=131: +(JAVA_ARRAY_CHAR[]) {60, 47, 101, 110, 116, 114, 121, 62}, +// ID=133: & +(JAVA_ARRAY_CHAR[]) {38}, +// ID=134: & +(JAVA_ARRAY_CHAR[]) {38, 97, 109, 112, 59}, +// ID=135: < +(JAVA_ARRAY_CHAR[]) {60}, +// ID=136: < +(JAVA_ARRAY_CHAR[]) {38, 108, 116, 59}, +// ID=137: > +(JAVA_ARRAY_CHAR[]) {62}, +// ID=138: > +(JAVA_ARRAY_CHAR[]) {38, 103, 116, 59}, +// ID=139: ' +(JAVA_ARRAY_CHAR[]) {39}, +// ID=140: ' +(JAVA_ARRAY_CHAR[]) {38, 97, 112, 111, 115, 59}, +// ID=141: \042 +(JAVA_ARRAY_CHAR[]) {34}, +// ID=142: " +(JAVA_ARRAY_CHAR[]) {38, 113, 117, 111, 116, 59}, +// ID=143: +(JAVA_ARRAY_CHAR[]) {60, 110, 117, 108, 108, 62}, +// ID=144: +(JAVA_ARRAY_CHAR[]) {60, 109, 105, 115, 115, 105, 110, 103, 32, 97, 114, 103, 117, 109, 101, 110, 116, 62}, +// ID=145: \000\011\014\016\034\037!#&+/1:\031@\030Z\001\134\12430^\13033`\13433z\002\174\12431\176\13031\237\017\241\14014\245\032\247\034\251\16033\253\16402\255\12031\260\15434\262\14413\264\5433\266\1034\270\14033\272\5402\274\17013\276\013\300\14001\326\001\330\14401\336\001\366\002\370\14402\377\002\467\1001\510\402\570\1001\576\402\600\002\602\001\606\1001\611\402\613\001\615\002\621\001\623\402\626\1001\630\001\633\002\635\001\637\402\646\1001\652\402\656\1001\661\402\663\001\667\402\671\1001\673\2402\675\1001\677\002\703\005\705\1401\707\402\711\1003\713\1401\734\402\757\1001\761\402\763\1003\766\1001\770\001\1037\1001\1063\1001\1255\002\1270\004\1272\033\1301\004\1317\033\1321\004\1337\033\1344\004\1355\033\1356\004\1516\006\1542\006\1565\033\1572\004\1576\030\1605\033\1610\14001\1612\001\1614\001\1617\001\1621\402\1641\001\1653\001\1716\002\1721\002\1724\001\1727\002\1757\1001\1763\002\2057\001\2137\002\2201\1001\2203\3034\2206\006\2211\007\2300\1001\2304\402\2310\402\2314\402\2365\1001\2371\1001\2526\001\2532\2030\2537\030\2607\002\2612\14024\2641\006\2671\006\2675\006\2701\3030\2704\14006\2752\005\2762\005\2764\030\3014\030\3033\14000\3037\14000\3072\005\3101\2404\3112\005\3125\006\3151\011\3155\030\3161\2406\3323\005\3325\2430\3334\006\3336\007\3344\006\3346\004\3350\006\3352\16006\3355\006\3371\011\3374\005\3376\034\3415\030\3420\10005\3422\3005\3454\005\3512\006\3645\005\3660\006\4402\006\4403\4000\4471\005\4475\2406\4500\010\4510\006\4514\010\4515\3000\4521\3005\4524\006\4541\005\4543\006\4545\030\4557\011\4560\030\4602\3010\4603\4000\4614\005\4620\005\4650\005\4660\005\4662\005\4671\005\4674\006\4700\010\4704\006\4710\010\4714\010\4715\3000\4727\4000\4735\005\4741\005\4743\006\4757\011\4761\005\4763\032\4771\013\4772\034\5002\006\5012\005\5020\005\5050\005\5060\005\5063\005\5066\005\5071\005\5074\006\5100\010\5102\006\5110\006\5115\006\5134\005\5136\005\5157\011\5161\006\5164\005\5202\006\5203\4000\5213\005\5215\2400\5221\005\5250\005\5260\005\5263\005\5271\005\5275\2406\5300\010\5305\006\5310\006\5311\4000\5314\010\5315\3000\5320\005\5340\005\5357\011\5402\3010\5403\4000\5414\005\5420\005\5450\005\5460\005\5463\005\5471\005\5475\2406\5501\3010\5503\006\5510\010\5514\010\5515\3000\5527\4006\5535\005\5541\005\5557\011\5560\034\5603\4006\5612\005\5620\005\5625\005\5632\005\5634\005\5637\005\5644\005\5652\005\5665\005\5671\005\5677\010\5701\4006\5702\010\5710\010\5714\010\5715\3000\5727\4000\5757\011\5762\013\6003\010\6014\005\6020\005\6050\005\6063\005\6071\005\6100\006\6104\010\6110\006\6115\006\6126\006\6141\005\6157\011\6203\010\6214\005\6220\005\6250\005\6263\005\6271\005\6300\3010\6304\010\6307\4006\6310\010\6313\010\6315\006\6326\010\6336\005\6341\005\6357\011\6403\010\6414\005\6420\005\6450\005\6471\005\6500\010\6503\006\6510\010\6514\010\6515\3000\6527\4000\6541\005\6557\011\6603\010\6626\005\6661\005\6673\005\6675\2400\6706\005\6712\006\6721\010\6724\006\6726\006\6737\010\6763\010\6764\030\7060\005\7062\3005\7064\2406\7072\006\7100\15005\7105\005\7107\3004\7116\006\7120\14011\7131\011\7133\030\7202\005\7204\005\7210\005\7212\005\7215\2400\7227\005\7237\005\7243\005\7245\2400\7247\2400\7253\005\7260\005\7262\3005\7264\2406\7271\006\7274\006\7275\2400\7304\005\7306\004\7315\006\7331\011\7335\005\7401\16005\7403\034\7422\030\7427\034\7431\006\7437\034\7451\011\7463\013\7471\3034\7475\13025\7477\010\7507\005\7552\005\7576\006\7600\4006\7604\006\7606\14006\7610\3005\7613\005\7627\006\7674\006\7705\034\7707\16006\7714\034\7717\16000\10041\005\10047\005\10052\005\10055\3010\10060\006\10062\4006\10067\006\10071\3010\10111\011\10117\030\10125\005\10127\010\10131\006\10305\001\10366\005\10373\14000\10531\005\10642\005\10771\005\11006\005\11106\005\11110\005\11115\005\11126\005\11130\005\11135\005\11206\005\11210\005\11215\005\11256\005\11260\005\11265\005\11276\005\11300\005\11305\005\11316\005\11326\005\11356\005\11416\005\11420\005\11425\005\11436\005\11506\005\11532\005\11550\030\11561\011\11574\013\11764\005\13154\005\13156\030\13166\005\13201\2414\13232\005\13234\12426\13352\005\13355\030\13360\013\13663\005\13666\010\13675\006\13705\010\13707\4006\13711\3010\13723\006\13732\030\13734\15030\13751\011\14005\030\14007\14024\14012\030\14016\020\14031\011\14102\005\14104\2005\14167\005\14250\005\14251\3000\17225\1001\17233\002\17371\1001\17407\002\17417\001\17425\002\17435\001\17447\002\17457\001\17467\002\17477\001\17505\002\17515\001\17527\002\17531\400\17533\400\17535\400\17540\402\17547\002\17557\001\17575\002\17607\002\17617\003\17627\002\17637\003\17647\002\17657\003\17664\002\17667\002\17673\001\17675\15403\17677\15402\17701\033\17704\002\17707\002\17713\001\17715\15403\17717\033\17723\002\17727\002\17733\001\17737\033\17747\002\17754\001\17757\033\17764\002\17767\002\17773\001\17775\15403\17776\033\20013\014\20017\020\20025\024\20027\030\20031\17035\20033\16425\20035\17035\20037\16425\20047\030\20051\7015\20056\020\20060\6030\20070\030\20072\16436\20076\030\20100\027\20103\030\20105\12431\20106\026\20115\030\20157\020\20160\013\20171\013\20174\031\20176\12426\20200\1013\20211\013\20214\031\20216\12426\20257\032\20334\006\20340\007\20342\3007\20343\3400\20401\034\20403\16001\20406\034\20410\434\20412\16002\20415\001\20417\002\20422\001\20424\1034\20426\434\20430\034\20435\001\20443\034\20452\16001\20455\001\20457\1034\20461\001\20463\434\20465\2402\20470\005\20472\1034\20537\013\20603\012\20624\031\20631\034\20633\031\20637\034\20641\16031\20644\14434\20647\16031\20655\034\20657\16031\20715\034\20717\031\20721\034\20725\16031\20763\034\21361\031\21407\034\21413\031\21437\034\21441\031\21450\034\21452\12426\21573\034\21632\034\22046\034\22112\034\22233\013\22351\034\22352\013\22625\034\22666\034\22670\14434\22700\034\22702\14434\22767\034\23023\034\23156\034\23160\14434\23161\16000\23404\034\23411\034\23447\034\23513\034\23515\16000\23522\034\23526\034\23536\034\23547\034\23623\013\23624\034\23657\034\23676\034\24377\034\27231\034\27363\034\27725\034\27773\034\30001\14014\30003\030\30005\2034\30007\5005\30021\13025\30023\034\30033\13025\30035\12424\30037\026\30041\5034\30051\012\30057\006\30061\2024\30065\004\30067\034\30072\012\30077\034\30224\005\30232\006\30234\033\30236\004\30372\005\30374\13404\30376\004\30454\005\30616\005\30621\034\30625\013\30637\034\30667\005\31034\034\31051\013\31103\034\31173\034\31200\16013\31211\013\31260\034\31313\034\31376\034\31566\034\31735\034\31776\034\46665\005\117645\005\122214\005\122241\034\122263\034\122300\034\122304\034\122306\034\153643\005\157777\023\174377\022\175055\005\175406\002\175427\002\175437\2406\175450\005\175452\14405\175466\005\175474\005\175476\005\175501\005\175504\005\175661\005\176475\005\176477\13025\176617\005\176707\005\176773\005\177043\006\177061\12030\177063\13424\177065\12427\177104\12426\177114\030\177117\027\177122\030\177127\030\177131\12424\177136\12426\177141\030\177144\12031\177146\031\177152\15030\177153\14000\177162\005\177164\005\177374\005\177377\10000\177403\030\177405\14032\177407\030\177411\13025\177414\14430\177416\12030\177420\14011\177431\011\177433\030\177436\031\177440\030\177472\001\177474\12430\177476\13033\177500\13433\177532\002\177534\12431\177536\13031\177542\14025\177544\13030\177546\13405\177557\005\177561\2404\177635\005\177637\004\177676\005\177707\005\177717\005\177727\005\177734\005\177741\032\177743\15431\177745\15034\177746\032\177751\14434\177754\031\177756\034\177773\020\177775\034 +(JAVA_ARRAY_CHAR[]) {31, 15, 33, 6156, 35, 24, 37, 6170, 39, 24, 41, 5653, 44, 6424, 46, 5144, 48, 6153, 57, 9, 59, 24, 62, 25, 64, 24, 90, 1, 92, 5400, 94, 5659, 96, 5915, 122, 2, 124, 5401, 126, 5657, 159, 15, 161, 6156, 165, 26, 167, 28, 169, 7195, 171, 7426, 173, 5145, 176, 6940, 178, 6411, 180, 2843, 182, 540, 184, 6171, 186, 2818, 188, 7691, 190, 11, 192, 6145, 214, 1, 216, 6401, 222, 1, 246, 2, 248, 6402, 255, 2, 311, 513, 328, 258, 376, 513, 382, 258, 384, 2, 386, 1, 390, 513, 393, 258, 395, 1, 397, 2, 401, 1, 403, 258, 406, 513, 408, 1, 411, 2, 413, 1, 415, 258, 422, 513, 426, 258, 430, 513, 433, 258, 435, 1, 439, 258, 441, 513, 443, 1282, 445, 513, 447, 2, 451, 5, 453, 769, 455, 258, 457, 515, 459, 769, 476, 258, 495, 513, 497, 258, 499, 515, 502, 513, 504, 1, 543, 513, 563, 513, 685, 2, 696, 4, 698, 27, 705, 4, 719, 27, 721, 4, 735, 27, 740, 4, 749, 27, 750, 4, 846, 6, 866, 6, 885, 27, 890, 4, 894, 24, 901, 27, 904, 6145, 906, 1, 908, 1, 911, 1, 913, 258, 929, 1, 939, 1, 974, 2, 977, 2, 980, 1, 983, 2, 1007, 513, 1011, 2, 1071, 1, 1119, 2, 1153, 513, 1155, 1564, 1158, 6, 1161, 7, 1216, 513, 1220, 258, 1224, 258, 1228, 258, 1269, 513, 1273, 513, 1366, 1, 1370, 1048, 1375, 24, 1415, 2, 1418, 6164, 1441, 6, 1465, 6, 1469, 6, 1473, 1560, 1476, 6150, 1514, 5, 1522, 5, 1524, 24, 1548, 24, 1563, 6144, 1567, 6144, 1594, 5, 1601, 1284, 1610, 5, 1621, 6, 1641, 9, 1645, 24, 1649, 1286, 1747, 5, 1749, 1304, 1756, 6, 1758, 7, 1764, 6, 1766, 4, 1768, 6, 1770, 7174, 1773, 6, 1785, 9, 1788, 5, 1790, 28, 1805, 24, 1808, 4101, 1810, 1541, 1836, 5, 1866, 6, 1957, 5, 1968, 6, 2306, 6, 2307, 2048, 2361, 5, 2365, 1286, 2368, 8, 2376, 6, 2380, 8, 2381, 1536, 2385, 1541, 2388, 6, 2401, 5, 2403, 6, 2405, 24, 2415, 9, 2416, 24, 2434, 1544, 2435, 2048, 2444, 5, 2448, 5, 2472, 5, 2480, 5, 2482, 5, 2489, 5, 2492, 6, 2496, 8, 2500, 6, 2504, 8, 2508, 8, 2509, 1536, 2519, 2048, 2525, 5, 2529, 5, 2531, 6, 2543, 9, 2545, 5, 2547, 26, 2553, 11, 2554, 28, 2562, 6, 2570, 5, 2576, 5, 2600, 5, 2608, 5, 2611, 5, 2614, 5, 2617, 5, 2620, 6, 2624, 8, 2626, 6, 2632, 6, 2637, 6, 2652, 5, 2654, 5, 2671, 9, 2673, 6, 2676, 5, 2690, 6, 2691, 2048, 2699, 5, 2701, 1280, 2705, 5, 2728, 5, 2736, 5, 2739, 5, 2745, 5, 2749, 1286, 2752, 8, 2757, 6, 2760, 6, 2761, 2048, 2764, 8, 2765, 1536, 2768, 5, 2784, 5, 2799, 9, 2818, 1544, 2819, 2048, 2828, 5, 2832, 5, 2856, 5, 2864, 5, 2867, 5, 2873, 5, 2877, 1286, 2881, 1544, 2883, 6, 2888, 8, 2892, 8, 2893, 1536, 2903, 2054, 2909, 5, 2913, 5, 2927, 9, 2928, 28, 2947, 2054, 2954, 5, 2960, 5, 2965, 5, 2970, 5, 2972, 5, 2975, 5, 2980, 5, 2986, 5, 2997, 5, 3001, 5, 3007, 8, 3009, 2054, 3010, 8, 3016, 8, 3020, 8, 3021, 1536, 3031, 2048, 3055, 9, 3058, 11, 3075, 8, 3084, 5, 3088, 5, 3112, 5, 3123, 5, 3129, 5, 3136, 6, 3140, 8, 3144, 6, 3149, 6, 3158, 6, 3169, 5, 3183, 9, 3203, 8, 3212, 5, 3216, 5, 3240, 5, 3251, 5, 3257, 5, 3264, 1544, 3268, 8, 3271, 2054, 3272, 8, 3275, 8, 3277, 6, 3286, 8, 3294, 5, 3297, 5, 3311, 9, 3331, 8, 3340, 5, 3344, 5, 3368, 5, 3385, 5, 3392, 8, 3395, 6, 3400, 8, 3404, 8, 3405, 1536, 3415, 2048, 3425, 5, 3439, 9, 3459, 8, 3478, 5, 3505, 5, 3515, 5, 3517, 1280, 3526, 5, 3530, 6, 3537, 8, 3540, 6, 3542, 6, 3551, 8, 3571, 8, 3572, 24, 3632, 5, 3634, 1541, 3636, 1286, 3642, 6, 3648, 6661, 3653, 5, 3655, 1540, 3662, 6, 3664, 6153, 3673, 9, 3675, 24, 3714, 5, 3716, 5, 3720, 5, 3722, 5, 3725, 1280, 3735, 5, 3743, 5, 3747, 5, 3749, 1280, 3751, 1280, 3755, 5, 3760, 5, 3762, 1541, 3764, 1286, 3769, 6, 3772, 6, 3773, 1280, 3780, 5, 3782, 4, 3789, 6, 3801, 9, 3805, 5, 3841, 7173, 3843, 28, 3858, 24, 3863, 28, 3865, 6, 3871, 28, 3881, 9, 3891, 11, 3897, 1564, 3901, 5653, 3903, 8, 3911, 5, 3946, 5, 3966, 6, 3968, 2054, 3972, 6, 3974, 6150, 3976, 1541, 3979, 5, 3991, 6, 4028, 6, 4037, 28, 4039, 7174, 4044, 28, 4047, 7168, 4129, 5, 4135, 5, 4138, 5, 4141, 1544, 4144, 6, 4146, 2054, 4151, 6, 4153, 1544, 4169, 9, 4175, 24, 4181, 5, 4183, 8, 4185, 6, 4293, 1, 4342, 5, 4347, 6144, 4441, 5, 4514, 5, 4601, 5, 4614, 5, 4678, 5, 4680, 5, 4685, 5, 4694, 5, 4696, 5, 4701, 5, 4742, 5, 4744, 5, 4749, 5, 4782, 5, 4784, 5, 4789, 5, 4798, 5, 4800, 5, 4805, 5, 4814, 5, 4822, 5, 4846, 5, 4878, 5, 4880, 5, 4885, 5, 4894, 5, 4934, 5, 4954, 5, 4968, 24, 4977, 9, 4988, 11, 5108, 5, 5740, 5, 5742, 24, 5750, 5, 5761, 1292, 5786, 5, 5788, 5398, 5866, 5, 5869, 24, 5872, 11, 6067, 5, 6070, 8, 6077, 6, 6085, 8, 6087, 2054, 6089, 1544, 6099, 6, 6106, 24, 6108, 6680, 6121, 9, 6149, 24, 6151, 6164, 6154, 24, 6158, 16, 6169, 9, 6210, 5, 6212, 1029, 6263, 5, 6312, 5, 6313, 1536, 7829, 513, 7835, 2, 7929, 513, 7943, 2, 7951, 1, 7957, 2, 7965, 1, 7975, 2, 7983, 1, 7991, 2, 7999, 1, 8005, 2, 8013, 1, 8023, 2, 8025, 256, 8027, 256, 8029, 256, 8032, 258, 8039, 2, 8047, 1, 8061, 2, 8071, 2, 8079, 3, 8087, 2, 8095, 3, 8103, 2, 8111, 3, 8116, 2, 8119, 2, 8123, 1, 8125, 6915, 8127, 6914, 8129, 27, 8132, 2, 8135, 2, 8139, 1, 8141, 6915, 8143, 27, 8147, 2, 8151, 2, 8155, 1, 8159, 27, 8167, 2, 8172, 1, 8175, 27, 8180, 2, 8183, 2, 8187, 1, 8189, 6915, 8190, 27, 8203, 12, 8207, 16, 8213, 20, 8215, 24, 8217, 7709, 8219, 7445, 8221, 7709, 8223, 7445, 8231, 24, 8233, 3597, 8238, 16, 8240, 3096, 8248, 24, 8250, 7454, 8254, 24, 8256, 23, 8259, 24, 8261, 5401, 8262, 22, 8269, 24, 8303, 16, 8304, 11, 8313, 11, 8316, 25, 8318, 5398, 8320, 523, 8329, 11, 8332, 25, 8334, 5398, 8367, 26, 8412, 6, 8416, 7, 8418, 1543, 8419, 1792, 8449, 28, 8451, 7169, 8454, 28, 8456, 284, 8458, 7170, 8461, 1, 8463, 2, 8466, 1, 8468, 540, 8470, 284, 8472, 28, 8477, 1, 8483, 28, 8490, 7169, 8493, 1, 8495, 540, 8497, 1, 8499, 284, 8501, 1282, 8504, 5, 8506, 540, 8543, 11, 8579, 10, 8596, 25, 8601, 28, 8603, 25, 8607, 28, 8609, 7193, 8612, 6428, 8615, 7193, 8621, 28, 8623, 7193, 8653, 28, 8655, 25, 8657, 28, 8661, 7193, 8691, 28, 8945, 25, 8967, 28, 8971, 25, 8991, 28, 8993, 25, 9000, 28, 9002, 5398, 9083, 28, 9114, 28, 9254, 28, 9290, 28, 9371, 11, 9449, 28, 9450, 11, 9621, 28, 9654, 28, 9656, 6428, 9664, 28, 9666, 6428, 9719, 28, 9747, 28, 9838, 28, 9840, 6428, 9841, 7168, 9988, 28, 9993, 28, 10023, 28, 10059, 28, 10061, 7168, 10066, 28, 10070, 28, 10078, 28, 10087, 28, 10131, 11, 10132, 28, 10159, 28, 10174, 28, 10495, 28, 11929, 28, 12019, 28, 12245, 28, 12283, 28, 12289, 6156, 12291, 24, 12293, 1052, 12295, 2565, 12305, 5653, 12307, 28, 12315, 5653, 12317, 5396, 12319, 22, 12321, 2588, 12329, 10, 12335, 6, 12337, 1044, 12341, 4, 12343, 28, 12346, 10, 12351, 28, 12436, 5, 12442, 6, 12444, 27, 12446, 4, 12538, 5, 12540, 5892, 12542, 4, 12588, 5, 12686, 5, 12689, 28, 12693, 11, 12703, 28, 12727, 5, 12828, 28, 12841, 11, 12867, 28, 12923, 28, 12928, 7179, 12937, 11, 12976, 28, 13003, 28, 13054, 28, 13174, 28, 13277, 28, 13310, 28, 19893, 5, -24667, 5, -23412, 5, -23391, 28, -23373, 28, -23360, 28, -23356, 28, -23354, 28, -10333, 5, -8193, 19, -1793, 18, -1491, 5, -1274, 2, -1257, 2, -1249, 1286, -1240, 5, -1238, 6405, -1226, 5, -1220, 5, -1218, 5, -1215, 5, -1212, 5, -1103, 5, -707, 5, -705, 5653, -625, 5, -569, 5, -517, 5, -477, 6, -463, 5144, -461, 5908, -459, 5399, -444, 5398, -436, 24, -433, 23, -430, 24, -425, 24, -423, 5396, -418, 5398, -415, 24, -412, 5145, -410, 25, -406, 6680, -405, 6144, -398, 5, -396, 5, -260, 5, -257, 4096, -253, 24, -251, 6170, -249, 24, -247, 5653, -244, 6424, -242, 5144, -240, 6153, -231, 9, -229, 24, -226, 25, -224, 24, -198, 1, -196, 5400, -194, 5659, -192, 5915, -166, 2, -164, 5401, -162, 5657, -158, 6165, -156, 5656, -154, 5893, -145, 5, -143, 1284, -99, 5, -97, 4, -66, 5, -57, 5, -49, 5, -41, 5, -36, 5, -31, 26, -29, 6937, -27, 6684, -26, 26, -23, 6428, -20, 25, -18, 28, -5, 16, -3, 28}, +// ID=155: z\177740\265\1347\366\177740\376\177740\377y\100457\177777\461\177430\100467\177777\100510\177777\100567\177777\100576\177777\577\177324\100605\177777\610\177777\614\177777\622\177777\625a\631\177777\100645\177777\650\177777\655\177777\660\177777\100666\177777\671\177777\675\177777\6778\705\177777\706\177776\710\177777\711\177776\713\177777\714\177776\100734\177777\735\177661\100757\177777\762\177777\763\177776\765\177777\101037\177777\101063\177777\1123\177456\1124\177462\1127\177463\1131\177466\1133\177465\1140\177463\1143\177461\1150\177457\1151\177455\1157\177455\1162\177453\1165\177452\1200\177446\1203\177446\1210\177446\1213\177447\1222\177445\1505T\1654\177732\1657\177733\1701\177740\1702\177741\1713\177740\1714\177700\1716\177701\1720\177702\1721\177707\1725\177721\1726\177712\101757\177777\1760\177652\1761\177660\1762\177661\2117\177740\2137\177660\102201\177777\102277\177777\102304\177777\2310\177777\2314\177777\102365\177777\2371\177777\2606\177720\117225\177777\17233\177705\117371\177777\17407\010\17425\010\17447\010\17467\010\17505\010\117527\010\17547\010\17561J\17565V\17567d\17571\200\17573p\17575\176\17607\010\17627\010\17647\010\17661\010\17663\011\17676\161733\17703\011\17721\010\17741\010\17745\007\17763\011\20577\177760\22351\177746\177532\177740 +(JAVA_ARRAY_CHAR[]) {122, -32, 181, 743, 246, -32, 254, -32, 255, 121, -32465, -1, 305, -232, -32457, -1, -32440, -1, -32393, -1, -32386, -1, 383, -300, -32379, -1, 392, -1, 396, -1, 402, -1, 405, 97, 409, -1, -32347, -1, 424, -1, 429, -1, 432, -1, -32330, -1, 441, -1, 445, -1, 447, 56, 453, -1, 454, -2, 456, -1, 457, -2, 459, -1, 460, -2, -32292, -1, 477, -79, -32273, -1, 498, -1, 499, -2, 501, -1, -32225, -1, -32205, -1, 595, -210, 596, -206, 599, -205, 601, -202, 603, -203, 608, -205, 611, -207, 616, -209, 617, -211, 623, -211, 626, -213, 629, -214, 640, -218, 643, -218, 648, -218, 651, -217, 658, -219, 837, 84, 940, -38, 943, -37, 961, -32, 962, -31, 971, -32, 972, -64, 974, -63, 976, -62, 977, -57, 981, -47, 982, -54, -31761, -1, 1008, -86, 1009, -80, 1010, -79, 1103, -32, 1119, -80, -31615, -1, -31553, -1, -31548, -1, 1224, -1, 1228, -1, -31499, -1, 1273, -1, 1414, -48, -24939, -1, 7835, -59, -24839, -1, 7943, 8, 7957, 8, 7975, 8, 7991, 8, 8005, 8, -24745, 8, 8039, 8, 8049, 74, 8053, 86, 8055, 100, 8057, 128, 8059, 112, 8061, 126, 8071, 8, 8087, 8, 8103, 8, 8113, 8, 8115, 9, 8126, -7205, 8131, 9, 8145, 8, 8161, 8, 8165, 7, 8179, 9, 8575, -16, 9449, -26, -166, -32}, +// ID=156: Z \326 \336 \100456\001\460\177471\100466\001\100507\001\100566\001\570\177607\100575\001\601\322\100604\001\606\316\607\001\612\315\613\001\616O\617\312\620\313\621\001\623\315\624\317\626\323\627\321\630\001\634\323\635\325\637\326\100644\001\646\332\647\001\651\332\654\001\656\332\657\001\662\331\100665\001\667\333\670\001\674\001\704\002\705\001\707\002\710\001\712\002\100733\001\100756\001\761\002\100764\001\766\177637\767\177710\101036\001\101062\001\1606&\1612%\1614@\1617?\1641 \1653 \101756\001\2017P\2057 \102200\001\102276\001\102303\001\2307\001\2313\001\102364\001\2370\001\25260\117224\001\117370\001\17417\177770\17435\177770\17457\177770\17477\177770\17515\177770\117537\177770\17557\177770\17617\177770\17637\177770\17657\177770\17671\177770\17673\177666\17674\177767\17713\177652\17714\177767\17731\177770\17733\177634\17751\177770\17753\177620\17754\177771\17771\177600\17773\177602\17774\177767\20446\161243\20452\157501\20453\157672\20557\020\22317\032\177472 +(JAVA_ARRAY_CHAR[]) {90, 32, 214, 32, 222, 32, -32466, 1, 304, -199, -32458, 1, -32441, 1, -32394, 1, 376, -121, -32387, 1, 385, 210, -32380, 1, 390, 206, 391, 1, 394, 205, 395, 1, 398, 79, 399, 202, 400, 203, 401, 1, 403, 205, 404, 207, 406, 211, 407, 209, 408, 1, 412, 211, 413, 213, 415, 214, -32348, 1, 422, 218, 423, 1, 425, 218, 428, 1, 430, 218, 431, 1, 434, 217, -32331, 1, 439, 219, 440, 1, 444, 1, 452, 2, 453, 1, 455, 2, 456, 1, 458, 2, -32293, 1, -32274, 1, 497, 2, -32268, 1, 502, -97, 503, -56, -32226, 1, -32206, 1, 902, 38, 906, 37, 908, 64, 911, 63, 929, 32, 939, 32, -31762, 1, 1039, 80, 1071, 32, -31616, 1, -31554, 1, -31549, 1, 1223, 1, 1227, 1, -31500, 1, 1272, 1, 1366, 48, -24940, 1, -24840, 1, 7951, -8, 7965, -8, 7983, -8, 7999, -8, 8013, -8, -24737, -8, 8047, -8, 8079, -8, 8095, -8, 8111, -8, 8121, -8, 8123, -74, 8124, -9, 8139, -86, 8140, -9, 8153, -8, 8155, -100, 8169, -8, 8171, -112, 8172, -7, 8185, -128, 8187, -126, 8188, -9, 8486, -7517, 8490, -8383, 8491, -8262, 8559, 16, 9423, 26, -198, 32}, +// ID=157: 90Z7zW\3151\3140\3371\3360\4557\4546\4757\4746\5157\5146\5357\5346\5557\5546\5757\5746\6157\6146\6357\6346\6557\6546\7131\7120\7331\7320\7451\7440\10111\10100\11561\11550\13751\13740\14031\14020\177431\177420\177472\177427\177532\177467 +(JAVA_ARRAY_CHAR[]) {57, 48, 90, 55, 122, 87, 1641, 1632, 1785, 1776, 2415, 2406, 2543, 2534, 2671, 2662, 2799, 2790, 2927, 2918, 3055, 3046, 3183, 3174, 3311, 3302, 3439, 3430, 3673, 3664, 3801, 3792, 3881, 3872, 4169, 4160, 4977, 4968, 6121, 6112, 6169, 6160, -231, -240, -198, -233, -166, -201}, +// ID=158: \002\002\002\002\002\002\002\002\002\000\000\000\000\000\002\002\002\002\002\002\002\002\002\002\002\002\002\002\000\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000\002\002\002\002\002\002\002\002\002\002\000\000\000\000\000\000\000\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\000\000\000\000\003\000\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\000\000\000\000\002 +(JAVA_ARRAY_CHAR[]) {2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 2}, +// ID=159: \705\705\710\710\713\713\762\762 +(JAVA_ARRAY_CHAR[]) {453, 453, 456, 456, 459, 459, 498, 498}, +// ID=160: 90Z7zW\263\260\271\270\276\000\3151\3140\3371\3360\4557\4546\4757\4746\4767\4763\4771\4751\5157\5146\5357\5346\5557\5546\5760\5746\5761\5615\5762\4012\6157\6146\6357\6346\6557\6546\7131\7120\7331\7320\7451\7440\10111\10100\11562\11550\11563\11537\11564\11526\11565\11515\11566\11504\11567\11473\11570\11462\11571\11451\11572\11440\11573\11427\11574\166154\13360\13335\13751\13740\14031\14020\20160\20160\20171\20160\20211\20200\20536\000\20537\20536\20553\20537\20554\20472\20555\20411\20556\17572\20557\16607\20573\20557\20574\20512\20575\20431\20576\17612\20577\16627\20600\16630\20601\6771\20602\175162\22163\22137\22207\22163\22233\22207\22352\22352\23577\23565\23611\23577\23623\23611\30007\30007\30051\30040\30070\30056\30071\30045\30072\30034\31211\31177\177431\177420\177472\177427\177532\177467 +(JAVA_ARRAY_CHAR[]) {57, 48, 90, 55, 122, 87, 179, 176, 185, 184, 190, 0, 1641, 1632, 1785, 1776, 2415, 2406, 2543, 2534, 2551, 2547, 2553, 2537, 2671, 2662, 2799, 2790, 2927, 2918, 3056, 3046, 3057, 2957, 3058, 2058, 3183, 3174, 3311, 3302, 3439, 3430, 3673, 3664, 3801, 3792, 3881, 3872, 4169, 4160, 4978, 4968, 4979, 4959, 4980, 4950, 4981, 4941, 4982, 4932, 4983, 4923, 4984, 4914, 4985, 4905, 4986, 4896, 4987, 4887, 4988, -5012, 5872, 5853, 6121, 6112, 6169, 6160, 8304, 8304, 8313, 8304, 8329, 8320, 8542, 0, 8543, 8542, 8555, 8543, 8556, 8506, 8557, 8457, 8558, 8058, 8559, 7559, 8571, 8559, 8572, 8522, 8573, 8473, 8574, 8074, 8575, 7575, 8576, 7576, 8577, 3577, 8578, -1422, 9331, 9311, 9351, 9331, 9371, 9351, 9450, 9450, 10111, 10101, 10121, 10111, 10131, 10121, 12295, 12295, 12329, 12320, 12344, 12334, 12345, 12325, 12346, 12316, 12937, 12927, -231, -240, -198, -233, -166, -201}, +// ID=161: size +(JAVA_ARRAY_CHAR[]) {115, 105, 122, 101}, +// ID=162: luni.0A +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 48, 65}, +// ID=163: luni.0B +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 48, 66}, +// ID=164: luni.35 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 51, 53}, +// ID=165: security.28 +(JAVA_ARRAY_CHAR[]) {115, 101, 99, 117, 114, 105, 116, 121, 46, 50, 56}, +// ID=166: security.29 +(JAVA_ARRAY_CHAR[]) {115, 101, 99, 117, 114, 105, 116, 121, 46, 50, 57}, +// ID=167: exitVM.* +(JAVA_ARRAY_CHAR[]) {101, 120, 105, 116, 86, 77, 46, 42}, +// ID=168: exitVM +(JAVA_ARRAY_CHAR[]) {101, 120, 105, 116, 86, 77}, +// ID=169: luni.04 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 48, 52}, +// ID=170: ? +(JAVA_ARRAY_CHAR[]) {63}, +// ID=171: offset: +(JAVA_ARRAY_CHAR[]) {111, 102, 102, 115, 101, 116, 58, 32}, +// ID=172: count: +(JAVA_ARRAY_CHAR[]) {99, 111, 117, 110, 116, 58, 32}, +// ID=173: offset + count: +(JAVA_ARRAY_CHAR[]) {111, 102, 102, 115, 101, 116, 32, 43, 32, 99, 111, 117, 110, 116, 58, 32}, +// ID=174: file.encoding +(JAVA_ARRAY_CHAR[]) {102, 105, 108, 101, 46, 101, 110, 99, 111, 100, 105, 110, 103}, +// ID=175: ISO-8859-1 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 49}, +// ID=176: target should not be null +(JAVA_ARRAY_CHAR[]) {116, 97, 114, 103, 101, 116, 32, 115, 104, 111, 117, 108, 100, 32, 110, 111, 116, 32, 98, 101, 32, 110, 117, 108, 108}, +// ID=177: replacement should not be null +(JAVA_ARRAY_CHAR[]) {114, 101, 112, 108, 97, 99, 101, 109, 101, 110, 116, 32, 115, 104, 111, 117, 108, 100, 32, 110, 111, 116, 32, 98, 101, 32, 110, 117, 108, 108}, +// ID=178: false +(JAVA_ARRAY_CHAR[]) {102, 97, 108, 115, 101}, +// ID=179: null format argument +(JAVA_ARRAY_CHAR[]) {110, 117, 108, 108, 32, 102, 111, 114, 109, 97, 116, 32, 97, 114, 103, 117, 109, 101, 110, 116}, +// ID=180: niochar.08 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 56}, +// ID=181: niochar.09 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 57}, +// ID=182: CoderResult[ +(JAVA_ARRAY_CHAR[]) {67, 111, 100, 101, 114, 82, 101, 115, 117, 108, 116, 91}, +// ID=183: ] +(JAVA_ARRAY_CHAR[]) {93}, +// ID=184: UNDERFLOW error +(JAVA_ARRAY_CHAR[]) {85, 78, 68, 69, 82, 70, 76, 79, 87, 32, 101, 114, 114, 111, 114}, +// ID=185: OVERFLOW error +(JAVA_ARRAY_CHAR[]) {79, 86, 69, 82, 70, 76, 79, 87, 32, 101, 114, 114, 111, 114}, +// ID=186: Unmappable-character error with erroneous input length +(JAVA_ARRAY_CHAR[]) {85, 110, 109, 97, 112, 112, 97, 98, 108, 101, 45, 99, 104, 97, 114, 97, 99, 116, 101, 114, 32, 101, 114, 114, 111, 114, 32, 119, 105, 116, 104, 32, 101, 114, 114, 111, 110, 101, 111, 117, 115, 32, 105, 110, 112, 117, 116, 32, 108, 101, 110, 103, 116, 104, 32}, +// ID=187: Malformed-input error with erroneous input length +(JAVA_ARRAY_CHAR[]) {77, 97, 108, 102, 111, 114, 109, 101, 100, 45, 105, 110, 112, 117, 116, 32, 101, 114, 114, 111, 114, 32, 119, 105, 116, 104, 32, 101, 114, 114, 111, 110, 101, 111, 117, 115, 32, 105, 110, 112, 117, 116, 32, 108, 101, 110, 103, 116, 104, 32}, +// ID=188: org.apache.harmony.niochar.charset +(JAVA_ARRAY_CHAR[]) {111, 114, 103, 46, 97, 112, 97, 99, 104, 101, 46, 104, 97, 114, 109, 111, 110, 121, 46, 110, 105, 111, 99, 104, 97, 114, 46, 99, 104, 97, 114, 115, 101, 116}, +// ID=189: US_ASCII +(JAVA_ARRAY_CHAR[]) {85, 83, 95, 65, 83, 67, 73, 73}, +// ID=190: US-ASCII +(JAVA_ARRAY_CHAR[]) {85, 83, 45, 65, 83, 67, 73, 73}, +// ID=191: ANSI_X3.4-1968 +(JAVA_ARRAY_CHAR[]) {65, 78, 83, 73, 95, 88, 51, 46, 52, 45, 49, 57, 54, 56}, +// ID=192: ANSI_X3.4-1986 +(JAVA_ARRAY_CHAR[]) {65, 78, 83, 73, 95, 88, 51, 46, 52, 45, 49, 57, 56, 54}, +// ID=193: iso-ir-6 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 54}, +// ID=194: iso_646.irv:1983 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 95, 54, 52, 54, 46, 105, 114, 118, 58, 49, 57, 56, 51}, +// ID=195: ISO_646.irv:1991 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 54, 52, 54, 46, 105, 114, 118, 58, 49, 57, 57, 49}, +// ID=196: ASCII +(JAVA_ARRAY_CHAR[]) {65, 83, 67, 73, 73}, +// ID=197: ISO646-US +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 54, 52, 54, 45, 85, 83}, +// ID=198: us +(JAVA_ARRAY_CHAR[]) {117, 115}, +// ID=199: cp367 +(JAVA_ARRAY_CHAR[]) {99, 112, 51, 54, 55}, +// ID=200: ascii7 +(JAVA_ARRAY_CHAR[]) {97, 115, 99, 105, 105, 55}, +// ID=201: 646 +(JAVA_ARRAY_CHAR[]) {54, 52, 54}, +// ID=202: csASCII +(JAVA_ARRAY_CHAR[]) {99, 115, 65, 83, 67, 73, 73}, +// ID=203: KOI8_R +(JAVA_ARRAY_CHAR[]) {75, 79, 73, 56, 95, 82}, +// ID=204: KOI8-R +(JAVA_ARRAY_CHAR[]) {75, 79, 73, 56, 45, 82}, +// ID=205: csKOI8R +(JAVA_ARRAY_CHAR[]) {99, 115, 75, 79, 73, 56, 82}, +// ID=206: CP_1250 +(JAVA_ARRAY_CHAR[]) {67, 80, 95, 49, 50, 53, 48}, +// ID=207: windows-1250 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 48}, +// ID=208: cp1250 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 48}, +// ID=209: CP_1251 +(JAVA_ARRAY_CHAR[]) {67, 80, 95, 49, 50, 53, 49}, +// ID=210: windows-1251 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 49}, +// ID=211: cp1251 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 49}, +// ID=212: CP_1252 +(JAVA_ARRAY_CHAR[]) {67, 80, 95, 49, 50, 53, 50}, +// ID=213: windows-1252 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 50}, +// ID=214: cp1252 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 50}, +// ID=215: CP_1253 +(JAVA_ARRAY_CHAR[]) {67, 80, 95, 49, 50, 53, 51}, +// ID=216: windows-1253 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 51}, +// ID=217: cp1253 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 51}, +// ID=218: CP_1254 +(JAVA_ARRAY_CHAR[]) {67, 80, 95, 49, 50, 53, 52}, +// ID=219: windows-1254 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 52}, +// ID=220: cp1254 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 52}, +// ID=221: CP_1257 +(JAVA_ARRAY_CHAR[]) {67, 80, 95, 49, 50, 53, 55}, +// ID=222: windows-1257 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 55}, +// ID=223: cp1257 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 55}, +// ID=224: ISO_8859_1 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 49}, +// ID=225: 8859_1 +(JAVA_ARRAY_CHAR[]) {56, 56, 53, 57, 95, 49}, +// ID=226: ISO_8859-1:1987 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 49, 58, 49, 57, 56, 55}, +// ID=227: iso-ir-100 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 48, 48}, +// ID=228: ISO_8859-1 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 49}, +// ID=229: latin1 +(JAVA_ARRAY_CHAR[]) {108, 97, 116, 105, 110, 49}, +// ID=230: l1 +(JAVA_ARRAY_CHAR[]) {108, 49}, +// ID=231: IBM819 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 49, 57}, +// ID=232: IBM-819 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 45, 56, 49, 57}, +// ID=233: CP819 +(JAVA_ARRAY_CHAR[]) {67, 80, 56, 49, 57}, +// ID=234: 819 +(JAVA_ARRAY_CHAR[]) {56, 49, 57}, +// ID=235: csISOLatin1 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 49}, +// ID=236: ISO_8859_2 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 50}, +// ID=237: ISO-8859-2 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 50}, +// ID=238: 8859_2 +(JAVA_ARRAY_CHAR[]) {56, 56, 53, 57, 95, 50}, +// ID=239: ISO_8859-2:1987 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 50, 58, 49, 57, 56, 55}, +// ID=240: iso-ir-101 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 48, 49}, +// ID=241: ISO_8859-2 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 50}, +// ID=242: latin2 +(JAVA_ARRAY_CHAR[]) {108, 97, 116, 105, 110, 50}, +// ID=243: l2 +(JAVA_ARRAY_CHAR[]) {108, 50}, +// ID=244: csISOLatin2 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 50}, +// ID=245: ISO_8859_4 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 52}, +// ID=246: ISO-8859-4 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 52}, +// ID=247: 8859_4 +(JAVA_ARRAY_CHAR[]) {56, 56, 53, 57, 95, 52}, +// ID=248: ISO_8859-4:1988 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 52, 58, 49, 57, 56, 56}, +// ID=249: iso-ir-110 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 49, 48}, +// ID=250: ISO_8859-4 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 52}, +// ID=251: latin4 +(JAVA_ARRAY_CHAR[]) {108, 97, 116, 105, 110, 52}, +// ID=252: l4 +(JAVA_ARRAY_CHAR[]) {108, 52}, +// ID=253: csISOLatin4 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 52}, +// ID=254: ISO_8859_5 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 53}, +// ID=255: ISO-8859-5 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 53}, +// ID=256: 8859_5 +(JAVA_ARRAY_CHAR[]) {56, 56, 53, 57, 95, 53}, +// ID=257: ISO_8859-5:1988 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 53, 58, 49, 57, 56, 56}, +// ID=258: iso-ir-144 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 52, 52}, +// ID=259: ISO_8859-5 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 53}, +// ID=260: cyrillic +(JAVA_ARRAY_CHAR[]) {99, 121, 114, 105, 108, 108, 105, 99}, +// ID=261: csISOLatinCyrillic +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 67, 121, 114, 105, 108, 108, 105, 99}, +// ID=262: ISO_8859_7 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 55}, +// ID=263: ISO-8859-7 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 55}, +// ID=264: ISO_8859-7:1987 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 55, 58, 49, 57, 56, 55}, +// ID=265: ISO_8859-7 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 55}, +// ID=266: iso-ir-126 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 50, 54}, +// ID=267: ELOT_928 +(JAVA_ARRAY_CHAR[]) {69, 76, 79, 84, 95, 57, 50, 56}, +// ID=268: ECMA-118 +(JAVA_ARRAY_CHAR[]) {69, 67, 77, 65, 45, 49, 49, 56}, +// ID=269: greek +(JAVA_ARRAY_CHAR[]) {103, 114, 101, 101, 107}, +// ID=270: greek8 +(JAVA_ARRAY_CHAR[]) {103, 114, 101, 101, 107, 56}, +// ID=271: csISOLatinGreek +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 71, 114, 101, 101, 107}, +// ID=272: ISO_8859_9 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 57}, +// ID=273: ISO-8859-9 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 57}, +// ID=274: ISO_8859-9:1989 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 57, 58, 49, 57, 56, 57}, +// ID=275: iso-ir-148 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 52, 56}, +// ID=276: ISO_8859-9 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 57}, +// ID=277: latin5 +(JAVA_ARRAY_CHAR[]) {108, 97, 116, 105, 110, 53}, +// ID=278: l5 +(JAVA_ARRAY_CHAR[]) {108, 53}, +// ID=279: csISOLatin5 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 53}, +// ID=280: ISO_8859_13 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 49, 51}, +// ID=281: ISO-8859-13 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 49, 51}, +// ID=282: ISO_8859_15 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 49, 53}, +// ID=283: ISO-8859-15 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 49, 53}, +// ID=284: ISO_8859-15 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 49, 53}, +// ID=285: Latin-9 +(JAVA_ARRAY_CHAR[]) {76, 97, 116, 105, 110, 45, 57}, +// ID=286: UTF_8 +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 95, 56}, +// ID=287: UTF8 +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 56}, +// ID=288: UTF_16 +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 95, 49, 54}, +// ID=289: UTF-16 +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 45, 49, 54}, +// ID=290: UTF16 +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 49, 54}, +// ID=291: UTF_16LE +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 95, 49, 54, 76, 69}, +// ID=292: UTF-16LE +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 45, 49, 54, 76, 69}, +// ID=293: X-UTF-16LE +(JAVA_ARRAY_CHAR[]) {88, 45, 85, 84, 70, 45, 49, 54, 76, 69}, +// ID=294: UTF_16BE +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 95, 49, 54, 66, 69}, +// ID=295: UTF-16BE +(JAVA_ARRAY_CHAR[]) {85, 84, 70, 45, 49, 54, 66, 69}, +// ID=296: X-UTF-16BE +(JAVA_ARRAY_CHAR[]) {88, 45, 85, 84, 70, 45, 49, 54, 66, 69}, +// ID=297: IBM866 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 54}, +// ID=298: cp866 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 54}, +// ID=299: 866 +(JAVA_ARRAY_CHAR[]) {56, 54, 54}, +// ID=300: csIBM866 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 54}, +// ID=301: additional.windows_1255 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 119, 105, 110, 100, 111, 119, 115, 95, 49, 50, 53, 53}, +// ID=302: windows-1255 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 53}, +// ID=303: cp1255 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 53}, +// ID=304: additional.windows_1256 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 119, 105, 110, 100, 111, 119, 115, 95, 49, 50, 53, 54}, +// ID=305: windows-1256 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 49, 50, 53, 54}, +// ID=306: cp1256 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 50, 53, 54}, +// ID=307: additional.IBM1026 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 49, 48, 50, 54}, +// ID=308: IBM1026 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 49, 48, 50, 54}, +// ID=309: CP1026 +(JAVA_ARRAY_CHAR[]) {67, 80, 49, 48, 50, 54}, +// ID=310: csIBM1026 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 49, 48, 50, 54}, +// ID=311: additional.IBM1047 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 49, 48, 52, 55}, +// ID=312: IBM1047 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 49, 48, 52, 55}, +// ID=313: 1047 +(JAVA_ARRAY_CHAR[]) {49, 48, 52, 55}, +// ID=314: cp1047 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 48, 52, 55}, +// ID=315: ibm-1047 +(JAVA_ARRAY_CHAR[]) {105, 98, 109, 45, 49, 48, 52, 55}, +// ID=316: additional.IBM037 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 51, 55}, +// ID=317: IBM037 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 51, 55}, +// ID=318: cp037 +(JAVA_ARRAY_CHAR[]) {99, 112, 48, 51, 55}, +// ID=319: ebcdic-cp-us +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 117, 115}, +// ID=320: ebcdic-cp-ca +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 99, 97}, +// ID=321: ebcdic-cp-wt +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 119, 116}, +// ID=322: ebcdic-cp-nl +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 110, 108}, +// ID=323: csIBM037 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 48, 51, 55}, +// ID=324: additional.IBM424 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 52, 50, 52}, +// ID=325: IBM424 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 52, 50, 52}, +// ID=326: cp424 +(JAVA_ARRAY_CHAR[]) {99, 112, 52, 50, 52}, +// ID=327: ebcdic-cp-he +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 104, 101}, +// ID=328: csIBM424 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 52, 50, 52}, +// ID=329: additional.IBM437 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 52, 51, 55}, +// ID=330: IBM437 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 52, 51, 55}, +// ID=331: cp437 +(JAVA_ARRAY_CHAR[]) {99, 112, 52, 51, 55}, +// ID=332: 437 +(JAVA_ARRAY_CHAR[]) {52, 51, 55}, +// ID=333: csPC8CodePage437 +(JAVA_ARRAY_CHAR[]) {99, 115, 80, 67, 56, 67, 111, 100, 101, 80, 97, 103, 101, 52, 51, 55}, +// ID=334: additional.IBM500 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 53, 48, 48}, +// ID=335: IBM500 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 53, 48, 48}, +// ID=336: CP500 +(JAVA_ARRAY_CHAR[]) {67, 80, 53, 48, 48}, +// ID=337: ebcdic-cp-be +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 98, 101}, +// ID=338: ebcdic-cp-ch +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 99, 104}, +// ID=339: csIBM500 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 53, 48, 48}, +// ID=340: additional.IBM775 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 55, 55, 53}, +// ID=341: IBM775 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 55, 55, 53}, +// ID=342: cp775 +(JAVA_ARRAY_CHAR[]) {99, 112, 55, 55, 53}, +// ID=343: csPC775Baltic +(JAVA_ARRAY_CHAR[]) {99, 115, 80, 67, 55, 55, 53, 66, 97, 108, 116, 105, 99}, +// ID=344: additional.IBM850 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 53, 48}, +// ID=345: IBM850 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 53, 48}, +// ID=346: cp850 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 53, 48}, +// ID=347: 850 +(JAVA_ARRAY_CHAR[]) {56, 53, 48}, +// ID=348: csPC850Multilingual +(JAVA_ARRAY_CHAR[]) {99, 115, 80, 67, 56, 53, 48, 77, 117, 108, 116, 105, 108, 105, 110, 103, 117, 97, 108}, +// ID=349: additional.IBM852 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 53, 50}, +// ID=350: IBM852 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 53, 50}, +// ID=351: cp852 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 53, 50}, +// ID=352: 852 +(JAVA_ARRAY_CHAR[]) {56, 53, 50}, +// ID=353: csPCp852 +(JAVA_ARRAY_CHAR[]) {99, 115, 80, 67, 112, 56, 53, 50}, +// ID=354: additional.IBM855 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 53, 53}, +// ID=355: IBM855 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 53, 53}, +// ID=356: cp855 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 53, 53}, +// ID=357: 855 +(JAVA_ARRAY_CHAR[]) {56, 53, 53}, +// ID=358: csIBM855 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 53, 53}, +// ID=359: additional.IBM857 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 53, 55}, +// ID=360: IBM857 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 53, 55}, +// ID=361: cp857 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 53, 55}, +// ID=362: 857 +(JAVA_ARRAY_CHAR[]) {56, 53, 55}, +// ID=363: csIBM857 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 53, 55}, +// ID=364: additional.IBM860 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 48}, +// ID=365: IBM860 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 48}, +// ID=366: cp860 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 48}, +// ID=367: 860 +(JAVA_ARRAY_CHAR[]) {56, 54, 48}, +// ID=368: csIBM860 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 48}, +// ID=369: additional.IBM861 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 49}, +// ID=370: IBM861 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 49}, +// ID=371: cp861 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 49}, +// ID=372: 861 +(JAVA_ARRAY_CHAR[]) {56, 54, 49}, +// ID=373: cp-is +(JAVA_ARRAY_CHAR[]) {99, 112, 45, 105, 115}, +// ID=374: csIBM861 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 49}, +// ID=375: additional.IBM862 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 50}, +// ID=376: IBM862 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 50}, +// ID=377: cp862 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 50}, +// ID=378: 862 +(JAVA_ARRAY_CHAR[]) {56, 54, 50}, +// ID=379: csPC862LatinHebrew +(JAVA_ARRAY_CHAR[]) {99, 115, 80, 67, 56, 54, 50, 76, 97, 116, 105, 110, 72, 101, 98, 114, 101, 119}, +// ID=380: additional.IBM863 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 51}, +// ID=381: IBM863 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 51}, +// ID=382: cp863 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 51}, +// ID=383: 863 +(JAVA_ARRAY_CHAR[]) {56, 54, 51}, +// ID=384: csIBM863 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 51}, +// ID=385: additional.IBM865 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 53}, +// ID=386: IBM865 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 53}, +// ID=387: cp865 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 53}, +// ID=388: 865 +(JAVA_ARRAY_CHAR[]) {56, 54, 53}, +// ID=389: csIBM865 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 53}, +// ID=390: additional.IBM869 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 57}, +// ID=391: IBM869 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 57}, +// ID=392: cp869 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 57}, +// ID=393: 869 +(JAVA_ARRAY_CHAR[]) {56, 54, 57}, +// ID=394: cp-gr +(JAVA_ARRAY_CHAR[]) {99, 112, 45, 103, 114}, +// ID=395: csIBM869 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 57}, +// ID=396: additional.IBM00858 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 48, 56, 53, 56}, +// ID=397: IBM00858 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 48, 56, 53, 56}, +// ID=398: cp858 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 53, 56}, +// ID=399: CCSID00858 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 48, 56, 53, 56}, +// ID=400: CP00858 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 48, 56, 53, 56}, +// ID=401: additional.IBM01140 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 48}, +// ID=402: IBM01140 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 48}, +// ID=403: cp1140 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 48}, +// ID=404: CCSID01140 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 48}, +// ID=405: CP01140 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 48}, +// ID=406: additional.IBM01141 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 49}, +// ID=407: IBM01141 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 49}, +// ID=408: cp1141 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 49}, +// ID=409: CCSID01141 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 49}, +// ID=410: CP01141 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 49}, +// ID=411: additional.IBM01142 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 50}, +// ID=412: IBM01142 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 50}, +// ID=413: cp1142 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 50}, +// ID=414: CCSID01142 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 50}, +// ID=415: CP01142 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 50}, +// ID=416: additional.IBM01143 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 51}, +// ID=417: IBM01143 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 51}, +// ID=418: cp1143 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 51}, +// ID=419: CCSID01143 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 51}, +// ID=420: CP01143 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 51}, +// ID=421: additional.IBM01144 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 52}, +// ID=422: IBM01144 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 52}, +// ID=423: cp1144 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 52}, +// ID=424: CCSID01144 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 52}, +// ID=425: CP01144 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 52}, +// ID=426: additional.IBM01145 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 53}, +// ID=427: IBM01145 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 53}, +// ID=428: cp1145 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 53}, +// ID=429: CCSID01145 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 53}, +// ID=430: CP01145 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 53}, +// ID=431: additional.IBM01146 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 54}, +// ID=432: IBM01146 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 54}, +// ID=433: cp1146 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 54}, +// ID=434: CCSID01146 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 54}, +// ID=435: CP01146 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 54}, +// ID=436: additional.IBM01147 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 55}, +// ID=437: IBM01147 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 55}, +// ID=438: cp1147 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 55}, +// ID=439: CCSID01147 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 55}, +// ID=440: CP01147 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 55}, +// ID=441: additional.IBM01148 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 56}, +// ID=442: IBM01148 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 56}, +// ID=443: cp1148 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 56}, +// ID=444: CCSID01148 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 56}, +// ID=445: CP01148 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 56}, +// ID=446: additional.IBM01149 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 48, 49, 49, 52, 57}, +// ID=447: IBM01149 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 48, 49, 49, 52, 57}, +// ID=448: cp1149 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 52, 57}, +// ID=449: CCSID01149 +(JAVA_ARRAY_CHAR[]) {67, 67, 83, 73, 68, 48, 49, 49, 52, 57}, +// ID=450: CP01149 +(JAVA_ARRAY_CHAR[]) {67, 80, 48, 49, 49, 52, 57}, +// ID=451: additional.IBM273 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 50, 55, 51}, +// ID=452: IBM273 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 50, 55, 51}, +// ID=453: cp273 +(JAVA_ARRAY_CHAR[]) {99, 112, 50, 55, 51}, +// ID=454: csIBM273 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 50, 55, 51}, +// ID=455: additional.IBM277 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 50, 55, 55}, +// ID=456: IBM277 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 50, 55, 55}, +// ID=457: cp277 +(JAVA_ARRAY_CHAR[]) {99, 112, 50, 55, 55}, +// ID=458: EBCDIC-CP-DK +(JAVA_ARRAY_CHAR[]) {69, 66, 67, 68, 73, 67, 45, 67, 80, 45, 68, 75}, +// ID=459: EBCDIC-CP-NO +(JAVA_ARRAY_CHAR[]) {69, 66, 67, 68, 73, 67, 45, 67, 80, 45, 78, 79}, +// ID=460: csIBM277 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 50, 55, 55}, +// ID=461: additional.IBM278 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 50, 55, 56}, +// ID=462: IBM278 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 50, 55, 56}, +// ID=463: cp278 +(JAVA_ARRAY_CHAR[]) {99, 112, 50, 55, 56}, +// ID=464: ebcdic-cp-fi +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 102, 105}, +// ID=465: ebcdic-cp-se +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 115, 101}, +// ID=466: csIBM278 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 50, 55, 56}, +// ID=467: additional.IBM280 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 50, 56, 48}, +// ID=468: IBM280 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 50, 56, 48}, +// ID=469: cp280 +(JAVA_ARRAY_CHAR[]) {99, 112, 50, 56, 48}, +// ID=470: ebcdic-cp-it +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 105, 116}, +// ID=471: csIBM280 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 50, 56, 48}, +// ID=472: additional.IBM284 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 50, 56, 52}, +// ID=473: IBM284 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 50, 56, 52}, +// ID=474: cp284 +(JAVA_ARRAY_CHAR[]) {99, 112, 50, 56, 52}, +// ID=475: ebcdic-cp-es +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 101, 115}, +// ID=476: csIBM284 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 50, 56, 52}, +// ID=477: additional.IBM285 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 50, 56, 53}, +// ID=478: IBM285 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 50, 56, 53}, +// ID=479: cp285 +(JAVA_ARRAY_CHAR[]) {99, 112, 50, 56, 53}, +// ID=480: ebcdic-cp-gb +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 103, 98}, +// ID=481: csIBM285 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 50, 56, 53}, +// ID=482: additional.IBM297 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 50, 57, 55}, +// ID=483: IBM297 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 50, 57, 55}, +// ID=484: cp297 +(JAVA_ARRAY_CHAR[]) {99, 112, 50, 57, 55}, +// ID=485: ebcdic-cp-fr +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 102, 114}, +// ID=486: csIBM297 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 50, 57, 55}, +// ID=487: additional.IBM870 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 55, 48}, +// ID=488: IBM870 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 55, 48}, +// ID=489: cp870 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 55, 48}, +// ID=490: ebcdic-cp-roece +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 114, 111, 101, 99, 101}, +// ID=491: ebcdic-cp-yu +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 121, 117}, +// ID=492: csIBM870 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 55, 48}, +// ID=493: additional.IBM871 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 55, 49}, +// ID=494: IBM871 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 55, 49}, +// ID=495: cp871 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 55, 49}, +// ID=496: ebcdic-cp-is +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 105, 115}, +// ID=497: csIBM871 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 55, 49}, +// ID=498: additional.IBM918 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 57, 49, 56}, +// ID=499: IBM918 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 57, 49, 56}, +// ID=500: cp918 +(JAVA_ARRAY_CHAR[]) {99, 112, 57, 49, 56}, +// ID=501: ebcdic-cp-ar2 +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 97, 114, 50}, +// ID=502: csIBM918 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 57, 49, 56}, +// ID=503: additional.IBM420 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 52, 50, 48}, +// ID=504: IBM420 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 52, 50, 48}, +// ID=505: cp420 +(JAVA_ARRAY_CHAR[]) {99, 112, 52, 50, 48}, +// ID=506: ebcdic-cp-ar1 +(JAVA_ARRAY_CHAR[]) {101, 98, 99, 100, 105, 99, 45, 99, 112, 45, 97, 114, 49}, +// ID=507: csIBM420 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 52, 50, 48}, +// ID=508: additional.IBM864 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 52}, +// ID=509: IBM864 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 52}, +// ID=510: cp864 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 52}, +// ID=511: csIBM864 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 52}, +// ID=512: additional.IBM868 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 56, 54, 56}, +// ID=513: IBM868 +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 56, 54, 56}, +// ID=514: cp868 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 54, 56}, +// ID=515: cp-ar +(JAVA_ARRAY_CHAR[]) {99, 112, 45, 97, 114}, +// ID=516: csIBM868 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 66, 77, 56, 54, 56}, +// ID=517: additional.ISO_8859_3 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 83, 79, 95, 56, 56, 53, 57, 95, 51}, +// ID=518: ISO-8859-3 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 51}, +// ID=519: 8859_3 +(JAVA_ARRAY_CHAR[]) {56, 56, 53, 57, 95, 51}, +// ID=520: ISO_8859_3 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 51}, +// ID=521: ISO_8859_2:1998 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 50, 58, 49, 57, 57, 56}, +// ID=522: iso-ir-109 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 48, 57}, +// ID=523: ISO_8859-3 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 51}, +// ID=524: latin3 +(JAVA_ARRAY_CHAR[]) {108, 97, 116, 105, 110, 51}, +// ID=525: l3 +(JAVA_ARRAY_CHAR[]) {108, 51}, +// ID=526: csISOLatin3 +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 51}, +// ID=527: additional.ISO_8859_6 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 83, 79, 95, 56, 56, 53, 57, 95, 54}, +// ID=528: ISO-8859-6 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 54}, +// ID=529: ISO_8859_6 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 54}, +// ID=530: ISO_8859-6:1987 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 54, 58, 49, 57, 56, 55}, +// ID=531: iso-ir-127 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 50, 55}, +// ID=532: ISO_8859-6 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 54}, +// ID=533: ECMA-114 +(JAVA_ARRAY_CHAR[]) {69, 67, 77, 65, 45, 49, 49, 52}, +// ID=534: ASMO-708 +(JAVA_ARRAY_CHAR[]) {65, 83, 77, 79, 45, 55, 48, 56}, +// ID=535: arabic +(JAVA_ARRAY_CHAR[]) {97, 114, 97, 98, 105, 99}, +// ID=536: csISOLatinArabic +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 65, 114, 97, 98, 105, 99}, +// ID=537: additional.ISO_8859_8 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 83, 79, 95, 56, 56, 53, 57, 95, 56}, +// ID=538: ISO-8859-8 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 56}, +// ID=539: ISO_8859_8 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 95, 56}, +// ID=540: ISO_8859-8:1988 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 56, 58, 49, 57, 56, 56}, +// ID=541: iso-ir-138 +(JAVA_ARRAY_CHAR[]) {105, 115, 111, 45, 105, 114, 45, 49, 51, 56}, +// ID=542: ISO_8859-8 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 95, 56, 56, 53, 57, 45, 56}, +// ID=543: hebrew +(JAVA_ARRAY_CHAR[]) {104, 101, 98, 114, 101, 119}, +// ID=544: csISOLatinHebrew +(JAVA_ARRAY_CHAR[]) {99, 115, 73, 83, 79, 76, 97, 116, 105, 110, 72, 101, 98, 114, 101, 119}, +// ID=545: additional.IBM_Thai +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 73, 66, 77, 95, 84, 104, 97, 105}, +// ID=546: IBM-Thai +(JAVA_ARRAY_CHAR[]) {73, 66, 77, 45, 84, 104, 97, 105}, +// ID=547: cp838 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 51, 56}, +// ID=548: additional.x_IBM737 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 55, 51, 55}, +// ID=549: x-IBM737 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 55, 51, 55}, +// ID=550: x-ibm-737_P100-1997 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 55, 51, 55, 95, 80, 49, 48, 48, 45, 49, 57, 57, 55}, +// ID=551: cp737 +(JAVA_ARRAY_CHAR[]) {99, 112, 55, 51, 55}, +// ID=552: additional.x_IBM856 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 56, 53, 54}, +// ID=553: x-IBM856 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 56, 53, 54}, +// ID=554: cp856 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 53, 54}, +// ID=555: additional.x_IBM874 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 56, 55, 52}, +// ID=556: TIS-620 +(JAVA_ARRAY_CHAR[]) {84, 73, 83, 45, 54, 50, 48}, +// ID=557: x-IBM874 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 56, 55, 52}, +// ID=558: cp874 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 55, 52}, +// ID=559: additional.x_IBM875 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 56, 55, 53}, +// ID=560: x-IBM875 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 56, 55, 53}, +// ID=561: x-ibm-875_P100-1995 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 56, 55, 53, 95, 80, 49, 48, 48, 45, 49, 57, 57, 53}, +// ID=562: cp875 +(JAVA_ARRAY_CHAR[]) {99, 112, 56, 55, 53}, +// ID=563: additional.x_IBM922 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 57, 50, 50}, +// ID=564: x-IBM922 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 57, 50, 50}, +// ID=565: cp922 +(JAVA_ARRAY_CHAR[]) {99, 112, 57, 50, 50}, +// ID=566: additional.x_IBM1006 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 48, 48, 54}, +// ID=567: x-IBM1006 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 48, 48, 54}, +// ID=568: x-ibm-1006_P100-1995 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 48, 48, 54, 95, 80, 49, 48, 48, 45, 49, 57, 57, 53}, +// ID=569: cp1006 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 48, 48, 54}, +// ID=570: additional.x_IBM1025 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 48, 50, 53}, +// ID=571: x-IBM1025 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 48, 50, 53}, +// ID=572: x-ibm-1025_P100-1995 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 48, 50, 53, 95, 80, 49, 48, 48, 45, 49, 57, 57, 53}, +// ID=573: cp1025 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 48, 50, 53}, +// ID=574: additional.x_IBM1112 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 49, 49, 50}, +// ID=575: x-IBM1112 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 49, 49, 50}, +// ID=576: x-ibm-1112_P100-1995 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 49, 49, 50, 95, 80, 49, 48, 48, 45, 49, 57, 57, 53}, +// ID=577: cp1112 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 49, 50}, +// ID=578: additional.x_IBM1122 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 49, 50, 50}, +// ID=579: x-IBM1122 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 49, 50, 50}, +// ID=580: x-ibm-1122_P100-1999 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 49, 50, 50, 95, 80, 49, 48, 48, 45, 49, 57, 57, 57}, +// ID=581: cp1122 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 50, 50}, +// ID=582: additional.x_IBM1123 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 49, 50, 51}, +// ID=583: x-IBM1123 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 49, 50, 51}, +// ID=584: x-ibm-1123_P100-1995 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 49, 50, 51, 95, 80, 49, 48, 48, 45, 49, 57, 57, 53}, +// ID=585: cp1123 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 50, 51}, +// ID=586: additional.x_IBM1124 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 49, 50, 52}, +// ID=587: x-IBM1124 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 49, 50, 52}, +// ID=588: x-ibm-1124_P100-1996 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 49, 50, 52, 95, 80, 49, 48, 48, 45, 49, 57, 57, 54}, +// ID=589: cp1124 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 49, 50, 52}, +// ID=590: additional.x_IBM1097 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 48, 57, 55}, +// ID=591: x-IBM1097 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 48, 57, 55}, +// ID=592: x-ibm-1097_P100-1995 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 48, 57, 55, 95, 80, 49, 48, 48, 45, 49, 57, 57, 53}, +// ID=593: cp1097 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 48, 57, 55}, +// ID=594: additional.x_IBM1098 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 73, 66, 77, 49, 48, 57, 56}, +// ID=595: x-IBM1098 +(JAVA_ARRAY_CHAR[]) {120, 45, 73, 66, 77, 49, 48, 57, 56}, +// ID=596: x-ibm-1098_P100-1995 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 48, 57, 56, 95, 80, 49, 48, 48, 45, 49, 57, 57, 53}, +// ID=597: cp1098 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 48, 57, 56}, +// ID=598: additional.x_MacCyrillic +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 77, 97, 99, 67, 121, 114, 105, 108, 108, 105, 99}, +// ID=599: x-MacCyrillic +(JAVA_ARRAY_CHAR[]) {120, 45, 77, 97, 99, 67, 121, 114, 105, 108, 108, 105, 99}, +// ID=600: x-mac-cyrillic +(JAVA_ARRAY_CHAR[]) {120, 45, 109, 97, 99, 45, 99, 121, 114, 105, 108, 108, 105, 99}, +// ID=601: MacCyrillic +(JAVA_ARRAY_CHAR[]) {77, 97, 99, 67, 121, 114, 105, 108, 108, 105, 99}, +// ID=602: additional.x_MacGreek +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 77, 97, 99, 71, 114, 101, 101, 107}, +// ID=603: x-MacGreek +(JAVA_ARRAY_CHAR[]) {120, 45, 77, 97, 99, 71, 114, 101, 101, 107}, +// ID=604: x-mac-greek +(JAVA_ARRAY_CHAR[]) {120, 45, 109, 97, 99, 45, 103, 114, 101, 101, 107}, +// ID=605: MacGreek +(JAVA_ARRAY_CHAR[]) {77, 97, 99, 71, 114, 101, 101, 107}, +// ID=606: additional.x_MacTurkish +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 77, 97, 99, 84, 117, 114, 107, 105, 115, 104}, +// ID=607: x-MacTurkish +(JAVA_ARRAY_CHAR[]) {120, 45, 77, 97, 99, 84, 117, 114, 107, 105, 115, 104}, +// ID=608: x-mac-turkish +(JAVA_ARRAY_CHAR[]) {120, 45, 109, 97, 99, 45, 116, 117, 114, 107, 105, 115, 104}, +// ID=609: MacTurkish +(JAVA_ARRAY_CHAR[]) {77, 97, 99, 84, 117, 114, 107, 105, 115, 104}, +// ID=610: additional.windows_31j +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 119, 105, 110, 100, 111, 119, 115, 95, 51, 49, 106}, +// ID=611: Shift_JIS +(JAVA_ARRAY_CHAR[]) {83, 104, 105, 102, 116, 95, 74, 73, 83}, +// ID=612: windows-31j +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 51, 49, 106}, +// ID=613: MS932 +(JAVA_ARRAY_CHAR[]) {77, 83, 57, 51, 50}, +// ID=614: windows-932 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 57, 51, 50}, +// ID=615: cp932 +(JAVA_ARRAY_CHAR[]) {99, 112, 57, 51, 50}, +// ID=616: csWindows31J +(JAVA_ARRAY_CHAR[]) {99, 115, 87, 105, 110, 100, 111, 119, 115, 51, 49, 74}, +// ID=617: cp943c +(JAVA_ARRAY_CHAR[]) {99, 112, 57, 52, 51, 99}, +// ID=618: x-ms-cp932 +(JAVA_ARRAY_CHAR[]) {120, 45, 109, 115, 45, 99, 112, 57, 51, 50}, +// ID=619: ibm-943 +(JAVA_ARRAY_CHAR[]) {105, 98, 109, 45, 57, 52, 51}, +// ID=620: additional.Big5 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 66, 105, 103, 53}, +// ID=621: Big5 +(JAVA_ARRAY_CHAR[]) {66, 105, 103, 53}, +// ID=622: csBig5 +(JAVA_ARRAY_CHAR[]) {99, 115, 66, 105, 103, 53}, +// ID=623: windows-950 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 57, 53, 48}, +// ID=624: additional.Big5_HKSCS +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 66, 105, 103, 53, 95, 72, 75, 83, 67, 83}, +// ID=625: Big5-HKSCS +(JAVA_ARRAY_CHAR[]) {66, 105, 103, 53, 45, 72, 75, 83, 67, 83}, +// ID=626: ibm-1375 +(JAVA_ARRAY_CHAR[]) {105, 98, 109, 45, 49, 51, 55, 53}, +// ID=627: additional.EUC_KR +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 69, 85, 67, 95, 75, 82}, +// ID=628: EUC-KR +(JAVA_ARRAY_CHAR[]) {69, 85, 67, 45, 75, 82}, +// ID=629: windows-51949 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 53, 49, 57, 52, 57}, +// ID=630: ibm-970 +(JAVA_ARRAY_CHAR[]) {105, 98, 109, 45, 57, 55, 48}, +// ID=631: additional.GBK +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 71, 66, 75}, +// ID=632: GBK +(JAVA_ARRAY_CHAR[]) {71, 66, 75}, +// ID=633: additional.x_MS950_HKSCS +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 77, 83, 57, 53, 48, 95, 72, 75, 83, 67, 83}, +// ID=634: x-ibm-1375_P100-2003 +(JAVA_ARRAY_CHAR[]) {120, 45, 105, 98, 109, 45, 49, 51, 55, 53, 95, 80, 49, 48, 48, 45, 50, 48, 48, 51}, +// ID=635: x-MS950-HKSCS +(JAVA_ARRAY_CHAR[]) {120, 45, 77, 83, 57, 53, 48, 45, 72, 75, 83, 67, 83}, +// ID=636: MS950_HKSCS +(JAVA_ARRAY_CHAR[]) {77, 83, 57, 53, 48, 95, 72, 75, 83, 67, 83}, +// ID=637: additional.x_windows_949 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 120, 95, 119, 105, 110, 100, 111, 119, 115, 95, 57, 52, 57}, +// ID=638: x-windows-949 +(JAVA_ARRAY_CHAR[]) {120, 45, 119, 105, 110, 100, 111, 119, 115, 45, 57, 52, 57}, +// ID=639: MS949 +(JAVA_ARRAY_CHAR[]) {77, 83, 57, 52, 57}, +// ID=640: additional.GB18030 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 71, 66, 49, 56, 48, 51, 48}, +// ID=641: GB18030 +(JAVA_ARRAY_CHAR[]) {71, 66, 49, 56, 48, 51, 48}, +// ID=642: windows-54936 +(JAVA_ARRAY_CHAR[]) {119, 105, 110, 100, 111, 119, 115, 45, 53, 52, 57, 51, 54}, +// ID=643: ibm-1392 +(JAVA_ARRAY_CHAR[]) {105, 98, 109, 45, 49, 51, 57, 50}, +// ID=644: additional.GB2312 +(JAVA_ARRAY_CHAR[]) {97, 100, 100, 105, 116, 105, 111, 110, 97, 108, 46, 71, 66, 50, 51, 49, 50}, +// ID=645: GB2312 +(JAVA_ARRAY_CHAR[]) {71, 66, 50, 51, 49, 50}, +// ID=646: cp1383 +(JAVA_ARRAY_CHAR[]) {99, 112, 49, 51, 56, 51}, +// ID=647: EUC_CN +(JAVA_ARRAY_CHAR[]) {69, 85, 67, 95, 67, 78}, +// ID=648: = +(JAVA_ARRAY_CHAR[]) {61}, +// ID=649: \011\012\015\014 +(JAVA_ARRAY_CHAR[]) {32, 9, 10, 13, 12}, +// ID=650: public +(JAVA_ARRAY_CHAR[]) {112, 117, 98, 108, 105, 99, 32}, +// ID=651: protected +(JAVA_ARRAY_CHAR[]) {112, 114, 111, 116, 101, 99, 116, 101, 100, 32}, +// ID=652: private +(JAVA_ARRAY_CHAR[]) {112, 114, 105, 118, 97, 116, 101, 32}, +// ID=653: abstract +(JAVA_ARRAY_CHAR[]) {97, 98, 115, 116, 114, 97, 99, 116, 32}, +// ID=654: static +(JAVA_ARRAY_CHAR[]) {115, 116, 97, 116, 105, 99, 32}, +// ID=655: final +(JAVA_ARRAY_CHAR[]) {102, 105, 110, 97, 108, 32}, +// ID=656: transient +(JAVA_ARRAY_CHAR[]) {116, 114, 97, 110, 115, 105, 101, 110, 116, 32}, +// ID=657: volatile +(JAVA_ARRAY_CHAR[]) {118, 111, 108, 97, 116, 105, 108, 101, 32}, +// ID=658: synchronized +(JAVA_ARRAY_CHAR[]) {115, 121, 110, 99, 104, 114, 111, 110, 105, 122, 101, 100, 32}, +// ID=659: native +(JAVA_ARRAY_CHAR[]) {110, 97, 116, 105, 118, 101, 32}, +// ID=660: strictfp +(JAVA_ARRAY_CHAR[]) {115, 116, 114, 105, 99, 116, 102, 112, 32}, +// ID=661: interface +(JAVA_ARRAY_CHAR[]) {105, 110, 116, 101, 114, 102, 97, 99, 101, 32}, +// ID=662: system +(JAVA_ARRAY_CHAR[]) {115, 121, 115, 116, 101, 109}, +// ID=663: main +(JAVA_ARRAY_CHAR[]) {109, 97, 105, 110}, +// ID=664: +(JAVA_ARRAY_CHAR[]) {32, 32, 32, 32}, +// ID=665: [name= +(JAVA_ARRAY_CHAR[]) {91, 110, 97, 109, 101, 61}, +// ID=666: ,maxpri= +(JAVA_ARRAY_CHAR[]) {44, 109, 97, 120, 112, 114, 105, 61}, +// ID=667: XMLVMUtil.notImplemented() +(JAVA_ARRAY_CHAR[]) {88, 77, 76, 86, 77, 85, 116, 105, 108, 46, 110, 111, 116, 73, 109, 112, 108, 101, 109, 101, 110, 116, 101, 100, 40, 41}, +// ID=668: actions +(JAVA_ARRAY_CHAR[]) {97, 99, 116, 105, 111, 110, 115}, +// ID=669: \011\012\015, +(JAVA_ARRAY_CHAR[]) {32, 9, 10, 13, 44}, +// ID=670: read +(JAVA_ARRAY_CHAR[]) {114, 101, 97, 100}, +// ID=671: write +(JAVA_ARRAY_CHAR[]) {119, 114, 105, 116, 101}, +// ID=672: read,write +(JAVA_ARRAY_CHAR[]) {114, 101, 97, 100, 44, 119, 114, 105, 116, 101}, +// ID=673: console.encoding +(JAVA_ARRAY_CHAR[]) {99, 111, 110, 115, 111, 108, 101, 46, 101, 110, 99, 111, 100, 105, 110, 103}, +// ID=674: os.encoding +(JAVA_ARRAY_CHAR[]) {111, 115, 46, 101, 110, 99, 111, 100, 105, 110, 103}, +// ID=675: java.version +(JAVA_ARRAY_CHAR[]) {106, 97, 118, 97, 46, 118, 101, 114, 115, 105, 111, 110}, +// ID=676: 1.5 subset +(JAVA_ARRAY_CHAR[]) {49, 46, 53, 32, 115, 117, 98, 115, 101, 116}, +// ID=677: java.specification.version +(JAVA_ARRAY_CHAR[]) {106, 97, 118, 97, 46, 115, 112, 101, 99, 105, 102, 105, 99, 97, 116, 105, 111, 110, 46, 118, 101, 114, 115, 105, 111, 110}, +// ID=678: 1.5 +(JAVA_ARRAY_CHAR[]) {49, 46, 53}, +// ID=679: java.specification.vendor +(JAVA_ARRAY_CHAR[]) {106, 97, 118, 97, 46, 115, 112, 101, 99, 105, 102, 105, 99, 97, 116, 105, 111, 110, 46, 118, 101, 110, 100, 111, 114}, +// ID=680: Sun Microsystems Inc. +(JAVA_ARRAY_CHAR[]) {83, 117, 110, 32, 77, 105, 99, 114, 111, 115, 121, 115, 116, 101, 109, 115, 32, 73, 110, 99, 46}, +// ID=681: java.specification.name +(JAVA_ARRAY_CHAR[]) {106, 97, 118, 97, 46, 115, 112, 101, 99, 105, 102, 105, 99, 97, 116, 105, 111, 110, 46, 110, 97, 109, 101}, +// ID=682: Java Platform API Specification +(JAVA_ARRAY_CHAR[]) {74, 97, 118, 97, 32, 80, 108, 97, 116, 102, 111, 114, 109, 32, 65, 80, 73, 32, 83, 112, 101, 99, 105, 102, 105, 99, 97, 116, 105, 111, 110}, +// ID=683: com.ibm.oti.configuration +(JAVA_ARRAY_CHAR[]) {99, 111, 109, 46, 105, 98, 109, 46, 111, 116, 105, 46, 99, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110}, +// ID=684: clear +(JAVA_ARRAY_CHAR[]) {99, 108, 101, 97, 114}, +// ID=685: com.ibm.oti.configuration.dir +(JAVA_ARRAY_CHAR[]) {99, 111, 109, 46, 105, 98, 109, 46, 111, 116, 105, 46, 99, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 46, 100, 105, 114}, +// ID=686: jclClear +(JAVA_ARRAY_CHAR[]) {106, 99, 108, 67, 108, 101, 97, 114}, +// ID=687: getenv. +(JAVA_ARRAY_CHAR[]) {103, 101, 116, 101, 110, 118, 46}, +// ID=688: getenv.* +(JAVA_ARRAY_CHAR[]) {103, 101, 116, 101, 110, 118, 46, 42}, +// ID=689: file.separator +(JAVA_ARRAY_CHAR[]) {102, 105, 108, 101, 46, 115, 101, 112, 97, 114, 97, 116, 111, 114}, +// ID=690: path.separator +(JAVA_ARRAY_CHAR[]) {112, 97, 116, 104, 46, 115, 101, 112, 97, 114, 97, 116, 111, 114}, +// ID=691: user.dir +(JAVA_ARRAY_CHAR[]) {117, 115, 101, 114, 46, 100, 105, 114}, +// ID=692: javax.xml.parsers.DocumentBuilderFactory +(JAVA_ARRAY_CHAR[]) {106, 97, 118, 97, 120, 46, 120, 109, 108, 46, 112, 97, 114, 115, 101, 114, 115, 46, 68, 111, 99, 117, 109, 101, 110, 116, 66, 117, 105, 108, 100, 101, 114, 70, 97, 99, 116, 111, 114, 121}, +// ID=693: couldn't be loaded. Library loading is not yet implemented +(JAVA_ARRAY_CHAR[]) {32, 99, 111, 117, 108, 100, 110, 39, 116, 32, 98, 101, 32, 108, 111, 97, 100, 101, 100, 46, 32, 76, 105, 98, 114, 97, 114, 121, 32, 108, 111, 97, 100, 105, 110, 103, 32, 105, 115, 32, 110, 111, 116, 32, 121, 101, 116, 32, 105, 109, 112, 108, 101, 109, 101, 110, 116, 101, 100}, +// ID=694: setSecurityManager +(JAVA_ARRAY_CHAR[]) {115, 101, 116, 83, 101, 99, 117, 114, 105, 116, 121, 77, 97, 110, 97, 103, 101, 114}, +// ID=695: createSecurityManager +(JAVA_ARRAY_CHAR[]) {99, 114, 101, 97, 116, 101, 83, 101, 99, 117, 114, 105, 116, 121, 77, 97, 110, 97, 103, 101, 114}, +// ID=696: getProtectionDomain +(JAVA_ARRAY_CHAR[]) {103, 101, 116, 80, 114, 111, 116, 101, 99, 116, 105, 111, 110, 68, 111, 109, 97, 105, 110}, +// ID=697: getClassLoader +(JAVA_ARRAY_CHAR[]) {103, 101, 116, 67, 108, 97, 115, 115, 76, 111, 97, 100, 101, 114}, +// ID=698: createClassLoader +(JAVA_ARRAY_CHAR[]) {99, 114, 101, 97, 116, 101, 67, 108, 97, 115, 115, 76, 111, 97, 100, 101, 114}, +// ID=699: modifyThread +(JAVA_ARRAY_CHAR[]) {109, 111, 100, 105, 102, 121, 84, 104, 114, 101, 97, 100}, +// ID=700: modifyThreadGroup +(JAVA_ARRAY_CHAR[]) {109, 111, 100, 105, 102, 121, 84, 104, 114, 101, 97, 100, 71, 114, 111, 117, 112}, +// ID=701: readFileDescriptor +(JAVA_ARRAY_CHAR[]) {114, 101, 97, 100, 70, 105, 108, 101, 68, 101, 115, 99, 114, 105, 112, 116, 111, 114}, +// ID=702: writeFileDescriptor +(JAVA_ARRAY_CHAR[]) {119, 114, 105, 116, 101, 70, 105, 108, 101, 68, 101, 115, 99, 114, 105, 112, 116, 111, 114}, +// ID=703: queuePrintJob +(JAVA_ARRAY_CHAR[]) {113, 117, 101, 117, 101, 80, 114, 105, 110, 116, 74, 111, 98}, +// ID=704: setFactory +(JAVA_ARRAY_CHAR[]) {115, 101, 116, 70, 97, 99, 116, 111, 114, 121}, +// ID=705: setIO +(JAVA_ARRAY_CHAR[]) {115, 101, 116, 73, 79}, +// ID=706: stopThread +(JAVA_ARRAY_CHAR[]) {115, 116, 111, 112, 84, 104, 114, 101, 97, 100}, +// ID=707: setContextClassLoader +(JAVA_ARRAY_CHAR[]) {115, 101, 116, 67, 111, 110, 116, 101, 120, 116, 67, 108, 97, 115, 115, 76, 111, 97, 100, 101, 114}, +// ID=708: p-1022 +(JAVA_ARRAY_CHAR[]) {112, 45, 49, 48, 50, 50}, +// ID=709: META-INF/services/java.nio.charset.spi.CharsetProvider +(JAVA_ARRAY_CHAR[]) {77, 69, 84, 65, 45, 73, 78, 70, 47, 115, 101, 114, 118, 105, 99, 101, 115, 47, 106, 97, 118, 97, 46, 110, 105, 111, 46, 99, 104, 97, 114, 115, 101, 116, 46, 115, 112, 105, 46, 67, 104, 97, 114, 115, 101, 116, 80, 114, 111, 118, 105, 100, 101, 114}, +// ID=710: # +(JAVA_ARRAY_CHAR[]) {35}, +// ID=711: x- +(JAVA_ARRAY_CHAR[]) {120, 45}, +// ID=712: X- +(JAVA_ARRAY_CHAR[]) {88, 45}, +// ID=713: Charset[ +(JAVA_ARRAY_CHAR[]) {67, 104, 97, 114, 115, 101, 116, 91}, +// ID=714: IGNORE +(JAVA_ARRAY_CHAR[]) {73, 71, 78, 79, 82, 69}, +// ID=715: REPLACE +(JAVA_ARRAY_CHAR[]) {82, 69, 80, 76, 65, 67, 69}, +// ID=716: REPORT +(JAVA_ARRAY_CHAR[]) {82, 69, 80, 79, 82, 84}, +// ID=717: Action: +(JAVA_ARRAY_CHAR[]) {65, 99, 116, 105, 111, 110, 58, 32}, +// ID=718: -2147483648 +(JAVA_ARRAY_CHAR[]) {45, 50, 49, 52, 55, 52, 56, 51, 54, 52, 56}, +// ID=719: , status: capacity= +(JAVA_ARRAY_CHAR[]) {44, 32, 115, 116, 97, 116, 117, 115, 58, 32, 99, 97, 112, 97, 99, 105, 116, 121, 61}, +// ID=720: position= +(JAVA_ARRAY_CHAR[]) {32, 112, 111, 115, 105, 116, 105, 111, 110, 61}, +// ID=721: limit= +(JAVA_ARRAY_CHAR[]) {32, 108, 105, 109, 105, 116, 61}, +// ID=722: niochar.00 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 48}, +// ID=723: niochar.01 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 49}, +// ID=724: \177775 +(JAVA_ARRAY_CHAR[]) {-3}, +// ID=725: niochar.06 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 54}, +// ID=726: niochar.07 +(JAVA_ARRAY_CHAR[]) {110, 105, 111, 99, 104, 97, 114, 46, 48, 55}, +// ID=727: BIG_ENDIAN +(JAVA_ARRAY_CHAR[]) {66, 73, 71, 95, 69, 78, 68, 73, 65, 78}, +// ID=728: LITTLE_ENDIAN +(JAVA_ARRAY_CHAR[]) {76, 73, 84, 84, 76, 69, 95, 69, 78, 68, 73, 65, 78}, +// ID=729: luni.B1 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 66, 49}, +// ID=730: luni.AD +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 65, 68}, +// ID=731: luni.AE +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 65, 69}, +// ID=732: file +(JAVA_ARRAY_CHAR[]) {102, 105, 108, 101}, +// ID=733: luni.AF +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 65, 70}, +// ID=734: luni.B0 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 66, 48}, +// ID=735: authority +(JAVA_ARRAY_CHAR[]) {97, 117, 116, 104, 111, 114, 105, 116, 121}, +// ID=736: query +(JAVA_ARRAY_CHAR[]) {113, 117, 101, 114, 121}, +// ID=737: fragment +(JAVA_ARRAY_CHAR[]) {102, 114, 97, 103, 109, 101, 110, 116}, +// ID=738: getFileSystemAttributes +(JAVA_ARRAY_CHAR[]) {103, 101, 116, 70, 105, 108, 101, 83, 121, 115, 116, 101, 109, 65, 116, 116, 114, 105, 98, 117, 116, 101, 115}, +// ID=739: luni.B2 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 66, 50}, +// ID=740: luni.B3 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 66, 51}, +// ID=741: luni.B4 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 66, 52}, +// ID=742: luni.B5 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 66, 53}, +// ID=743: .tmp +(JAVA_ARRAY_CHAR[]) {46, 116, 109, 112}, +// ID=744: java.io.tmpdir +(JAVA_ARRAY_CHAR[]) {106, 97, 118, 97, 46, 105, 111, 46, 116, 109, 112, 100, 105, 114}, +// ID=745: // +(JAVA_ARRAY_CHAR[]) {47, 47}, +// ID=746: file: +(JAVA_ARRAY_CHAR[]) {102, 105, 108, 101, 58}, +// ID=747: \134 +(JAVA_ARRAY_CHAR[]) {92}, +// ID=748: ; +(JAVA_ARRAY_CHAR[]) {59}, +// ID=749: ,-:\015\011 +(JAVA_ARRAY_CHAR[]) {32, 44, 45, 58, 13, 9}, +// ID=750: GMT +(JAVA_ARRAY_CHAR[]) {71, 77, 84}, +// ID=751: luni.D7 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 68, 55}, +// ID=752: luni.D8 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 68, 56}, +// ID=753: luni.D9 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 68, 57}, +// ID=754: luni.DA +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 68, 65}, +// ID=755: luni.80 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 56, 48}, +// ID=756: luni.81 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 56, 49}, +// ID=757: 0123456789ABCDEF +(JAVA_ARRAY_CHAR[]) {48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70}, +// ID=758: %25 +(JAVA_ARRAY_CHAR[]) {37, 50, 53}, +// ID=759: \042<>%\134^[]`+$,\173\175`\176\174 +(JAVA_ARRAY_CHAR[]) {34, 60, 62, 37, 92, 94, 91, 93, 96, 43, 36, 44, 123, 125, 96, 126, 124, 32}, +// ID=760: Sunday +(JAVA_ARRAY_CHAR[]) {83, 117, 110, 100, 97, 121}, +// ID=761: Monday +(JAVA_ARRAY_CHAR[]) {77, 111, 110, 100, 97, 121}, +// ID=762: Tuesday +(JAVA_ARRAY_CHAR[]) {84, 117, 101, 115, 100, 97, 121}, +// ID=763: Wednesday +(JAVA_ARRAY_CHAR[]) {87, 101, 100, 110, 101, 115, 100, 97, 121}, +// ID=764: Thursday +(JAVA_ARRAY_CHAR[]) {84, 104, 117, 114, 115, 100, 97, 121}, +// ID=765: Friday +(JAVA_ARRAY_CHAR[]) {70, 114, 105, 100, 97, 121}, +// ID=766: Saturday +(JAVA_ARRAY_CHAR[]) {83, 97, 116, 117, 114, 100, 97, 121}, +// ID=767: January +(JAVA_ARRAY_CHAR[]) {74, 97, 110, 117, 97, 114, 121}, +// ID=768: February +(JAVA_ARRAY_CHAR[]) {70, 101, 98, 114, 117, 97, 114, 121}, +// ID=769: March +(JAVA_ARRAY_CHAR[]) {77, 97, 114, 99, 104}, +// ID=770: April +(JAVA_ARRAY_CHAR[]) {65, 112, 114, 105, 108}, +// ID=771: May +(JAVA_ARRAY_CHAR[]) {77, 97, 121}, +// ID=772: June +(JAVA_ARRAY_CHAR[]) {74, 117, 110, 101}, +// ID=773: July +(JAVA_ARRAY_CHAR[]) {74, 117, 108, 121}, +// ID=774: August +(JAVA_ARRAY_CHAR[]) {65, 117, 103, 117, 115, 116}, +// ID=775: September +(JAVA_ARRAY_CHAR[]) {83, 101, 112, 116, 101, 109, 98, 101, 114}, +// ID=776: October +(JAVA_ARRAY_CHAR[]) {79, 99, 116, 111, 98, 101, 114}, +// ID=777: November +(JAVA_ARRAY_CHAR[]) {78, 111, 118, 101, 109, 98, 101, 114}, +// ID=778: December +(JAVA_ARRAY_CHAR[]) {68, 101, 99, 101, 109, 98, 101, 114}, +// ID=779: null is not allowed here +(JAVA_ARRAY_CHAR[]) {110, 117, 108, 108, 32, 105, 115, 32, 110, 111, 116, 32, 97, 108, 108, 111, 119, 101, 100, 32, 104, 101, 114, 101}, +// ID=780: package.access +(JAVA_ARRAY_CHAR[]) {112, 97, 99, 107, 97, 103, 101, 46, 97, 99, 99, 101, 115, 115}, +// ID=781: package.definition +(JAVA_ARRAY_CHAR[]) {112, 97, 99, 107, 97, 103, 101, 46, 100, 101, 102, 105, 110, 105, 116, 105, 111, 110}, +// ID=782: accept +(JAVA_ARRAY_CHAR[]) {97, 99, 99, 101, 112, 116}, +// ID=783: connect +(JAVA_ARRAY_CHAR[]) {99, 111, 110, 110, 101, 99, 116}, +// ID=784: resolve +(JAVA_ARRAY_CHAR[]) {114, 101, 115, 111, 108, 118, 101}, +// ID=785: delete +(JAVA_ARRAY_CHAR[]) {100, 101, 108, 101, 116, 101}, +// ID=786: execute +(JAVA_ARRAY_CHAR[]) {101, 120, 101, 99, 117, 116, 101}, +// ID=787: <> +(JAVA_ARRAY_CHAR[]) {60, 60, 65, 76, 76, 32, 70, 73, 76, 69, 83, 62, 62}, +// ID=788: loadLibrary. +(JAVA_ARRAY_CHAR[]) {108, 111, 97, 100, 76, 105, 98, 114, 97, 114, 121, 46}, +// ID=789: listen +(JAVA_ARRAY_CHAR[]) {108, 105, 115, 116, 101, 110}, +// ID=790: localhost:1024- +(JAVA_ARRAY_CHAR[]) {108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 49, 48, 50, 52, 45}, +// ID=791: localhost: +(JAVA_ARRAY_CHAR[]) {108, 111, 99, 97, 108, 104, 111, 115, 116, 58}, +// ID=792: accessDeclaredMembers +(JAVA_ARRAY_CHAR[]) {97, 99, 99, 101, 115, 115, 68, 101, 99, 108, 97, 114, 101, 100, 77, 101, 109, 98, 101, 114, 115}, +// ID=793: accept,connect +(JAVA_ARRAY_CHAR[]) {97, 99, 99, 101, 112, 116, 44, 99, 111, 110, 110, 101, 99, 116}, +// ID=794: accessClassInPackage. +(JAVA_ARRAY_CHAR[]) {97, 99, 99, 101, 115, 115, 67, 108, 97, 115, 115, 73, 110, 80, 97, 99, 107, 97, 103, 101, 46}, +// ID=795: defineClassInPackage. +(JAVA_ARRAY_CHAR[]) {100, 101, 102, 105, 110, 101, 67, 108, 97, 115, 115, 73, 110, 80, 97, 99, 107, 97, 103, 101, 46}, +// ID=796: , * +(JAVA_ARRAY_CHAR[]) {44, 32, 42}, +// ID=797: java.awt.AWTPermission +(JAVA_ARRAY_CHAR[]) {106, 97, 118, 97, 46, 97, 119, 116, 46, 65, 87, 84, 80, 101, 114, 109, 105, 115, 115, 105, 111, 110}, +// ID=798: showWindowWithoutWarningBanner +(JAVA_ARRAY_CHAR[]) {115, 104, 111, 119, 87, 105, 110, 100, 111, 119, 87, 105, 116, 104, 111, 117, 116, 87, 97, 114, 110, 105, 110, 103, 66, 97, 110, 110, 101, 114}, +// ID=799: accessClipboard +(JAVA_ARRAY_CHAR[]) {97, 99, 99, 101, 115, 115, 67, 108, 105, 112, 98, 111, 97, 114, 100}, +// ID=800: accessEventQueue +(JAVA_ARRAY_CHAR[]) {97, 99, 99, 101, 115, 115, 69, 118, 101, 110, 116, 81, 117, 101, 117, 101}, +// ID=801: * +(JAVA_ARRAY_CHAR[]) {42}, +// ID=802: Thread- +(JAVA_ARRAY_CHAR[]) {84, 104, 114, 101, 97, 100, 45}, +// ID=803: Thread.getState() is not fully implemented. Specifically, you will not currently find BLOCKED, WAITING and TIMED_WAITING. +(JAVA_ARRAY_CHAR[]) {84, 104, 114, 101, 97, 100, 46, 103, 101, 116, 83, 116, 97, 116, 101, 40, 41, 32, 105, 115, 32, 110, 111, 116, 32, 102, 117, 108, 108, 121, 32, 105, 109, 112, 108, 101, 109, 101, 110, 116, 101, 100, 46, 32, 83, 112, 101, 99, 105, 102, 105, 99, 97, 108, 108, 121, 44, 32, 121, 111, 117, 32, 119, 105, 108, 108, 32, 110, 111, 116, 32, 99, 117, 114, 114, 101, 110, 116, 108, 121, 32, 102, 105, 110, 100, 32, 66, 76, 79, 67, 75, 69, 68, 44, 32, 87, 65, 73, 84, 73, 78, 71, 32, 97, 110, 100, 32, 84, 73, 77, 69, 68, 95, 87, 65, 73, 84, 73, 78, 71, 46}, +// ID=804: timeout value is negative +(JAVA_ARRAY_CHAR[]) {116, 105, 109, 101, 111, 117, 116, 32, 118, 97, 108, 117, 101, 32, 105, 115, 32, 110, 101, 103, 97, 116, 105, 118, 101}, +// ID=805: Exception in thread \042 +(JAVA_ARRAY_CHAR[]) {69, 120, 99, 101, 112, 116, 105, 111, 110, 32, 105, 110, 32, 116, 104, 114, 101, 97, 100, 32, 34}, +// ID=806: \042 +(JAVA_ARRAY_CHAR[]) {34, 32}, +// ID=807: sleep milliseconds must be greater than or equal to zero +(JAVA_ARRAY_CHAR[]) {115, 108, 101, 101, 112, 32, 109, 105, 108, 108, 105, 115, 101, 99, 111, 110, 100, 115, 32, 109, 117, 115, 116, 32, 98, 101, 32, 103, 114, 101, 97, 116, 101, 114, 32, 116, 104, 97, 110, 32, 111, 114, 32, 101, 113, 117, 97, 108, 32, 116, 111, 32, 122, 101, 114, 111}, +// ID=808: sleep nanoseconds must be greater than or equal to zero and less than 1000000 +(JAVA_ARRAY_CHAR[]) {115, 108, 101, 101, 112, 32, 110, 97, 110, 111, 115, 101, 99, 111, 110, 100, 115, 32, 109, 117, 115, 116, 32, 98, 101, 32, 103, 114, 101, 97, 116, 101, 114, 32, 116, 104, 97, 110, 32, 111, 114, 32, 101, 113, 117, 97, 108, 32, 116, 111, 32, 122, 101, 114, 111, 32, 97, 110, 100, 32, 108, 101, 115, 115, 32, 116, 104, 97, 110, 32, 49, 48, 48, 48, 48, 48, 48}, +// ID=809: Thread[ +(JAVA_ARRAY_CHAR[]) {84, 104, 114, 101, 97, 100, 91}, +// ID=810: luni.38 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 51, 56}, +// ID=811: luni.05 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 48, 53}, +// ID=812: \012 +(JAVA_ARRAY_CHAR[]) {10}, +// ID=813: Time(s): +(JAVA_ARRAY_CHAR[]) {84, 105, 109, 101, 40, 115, 41, 58, 32}, +// ID=814: NEW +(JAVA_ARRAY_CHAR[]) {78, 69, 87}, +// ID=815: RUNNABLE +(JAVA_ARRAY_CHAR[]) {82, 85, 78, 78, 65, 66, 76, 69}, +// ID=816: BLOCKED +(JAVA_ARRAY_CHAR[]) {66, 76, 79, 67, 75, 69, 68}, +// ID=817: WAITING +(JAVA_ARRAY_CHAR[]) {87, 65, 73, 84, 73, 78, 71}, +// ID=818: TIMED_WAITING +(JAVA_ARRAY_CHAR[]) {84, 73, 77, 69, 68, 95, 87, 65, 73, 84, 73, 78, 71}, +// ID=819: TERMINATED +(JAVA_ARRAY_CHAR[]) {84, 69, 82, 77, 73, 78, 65, 84, 69, 68}, +// ID=820: ; +(JAVA_ARRAY_CHAR[]) {59, 32}, +// ID=821: luni.62 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 54, 50}, +// ID=822: luni.63 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 54, 51}, +// ID=823: ipaddress +(JAVA_ARRAY_CHAR[]) {105, 112, 97, 100, 100, 114, 101, 115, 115}, +// ID=824: scope_id +(JAVA_ARRAY_CHAR[]) {115, 99, 111, 112, 101, 95, 105, 100}, +// ID=825: scope_id_set +(JAVA_ARRAY_CHAR[]) {115, 99, 111, 112, 101, 95, 105, 100, 95, 115, 101, 116}, +// ID=826: scope_ifname_set +(JAVA_ARRAY_CHAR[]) {115, 99, 111, 112, 101, 95, 105, 102, 110, 97, 109, 101, 95, 115, 101, 116}, +// ID=827: ifname +(JAVA_ARRAY_CHAR[]) {105, 102, 110, 97, 109, 101}, +// ID=828: luni.13 +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 49, 51}, +// ID=829: ISO-8859-10 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 49, 48}, +// ID=830: ISO-8859-14 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 49, 52}, +// ID=831: ISO-8859-16 +(JAVA_ARRAY_CHAR[]) {73, 83, 79, 45, 56, 56, 53, 57, 45, 49, 54}, +// ID=832: luni.4C +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 52, 67}, +// ID=833: luni.4D +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 52, 68}, +// ID=834: luni.4E +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 52, 69}, +// ID=835: luni.4F +(JAVA_ARRAY_CHAR[]) {108, 117, 110, 105, 46, 52, 70}, +}; + +const JAVA_INT xmlvm_constant_pool_length[] = { +// ID=0 +15, +// ID=1 +16, +// ID=2 +15, +// ID=3 +16, +// ID=4 +4, +// ID=5 +10, +// ID=6 +2, +// ID=7 +2, +// ID=8 +3, +// ID=9 +8, +// ID=10 +9, +// ID=11 +8, +// ID=12 +7, +// ID=13 +3, +// ID=14 +2, +// ID=15 +5, +// ID=16 +2, +// ID=17 +2, +// ID=18 +1, +// ID=19 +2, +// ID=20 +2, +// ID=21 +0, +// ID=22 +2, +// ID=23 +1, +// ID=24 +1, +// ID=25 +2, +// ID=26 +7, +// ID=27 +8, +// ID=28 +8, +// ID=29 +7, +// ID=30 +2, +// ID=31 +2, +// ID=32 +2, +// ID=33 +2, +// ID=34 +2, +// ID=35 +2, +// ID=36 +2, +// ID=37 +2, +// ID=38 +2, +// ID=39 +2, +// ID=40 +2, +// ID=41 +2, +// ID=42 +2, +// ID=43 +2, +// ID=44 +2, +// ID=45 +4, +// ID=46 +11, +// ID=47 +5, +// ID=48 +5, +// ID=49 +2, +// ID=50 +28, +// ID=51 +25, +// ID=52 +1, +// ID=53 +7, +// ID=54 +1, +// ID=55 +7, +// ID=56 +9, +// ID=57 +1, +// ID=58 +5, +// ID=59 +15, +// ID=60 +7, +// ID=61 +7, +// ID=62 +7, +// ID=63 +4, +// ID=64 +7, +// ID=65 +9, +// ID=66 +16, +// ID=67 +59, +// ID=68 +32, +// ID=69 +18, +// ID=70 +1, +// ID=71 +9, +// ID=72 +24, +// ID=73 +15, +// ID=74 +7, +// ID=75 +7, +// ID=76 +7, +// ID=77 +2, +// ID=78 +3, +// ID=79 +1, +// ID=80 +1, +// ID=81 +7, +// ID=82 +6, +// ID=83 +8, +// ID=84 +30, +// ID=85 +1, +// ID=86 +10, +// ID=87 +10, +// ID=88 +10, +// ID=89 +10, +// ID=90 +10, +// ID=91 +10, +// ID=92 +1, +// ID=93 +3, +// ID=94 +8, +// ID=95 +2, +// ID=96 +17, +// ID=97 +28, +// ID=98 +40, +// ID=99 +32, +// ID=100 +5, +// ID=101 +16, +// ID=102 +38, +// ID=103 +241, +// ID=104 +2, +// ID=105 +5, +// ID=106 +2, +// ID=107 +2, +// ID=108 +2, +// ID=109 +2, +// ID=110 +3, +// ID=111 +9, +// ID=112 +7, +// ID=113 +7, +// ID=114 +1, +// ID=115 +14, +// ID=116 +9, +// ID=117 +5, +// ID=118 +3, +// ID=119 +2, +// ID=120 +30, +// ID=121 +3, +// ID=122 +29, +// ID=123 +12, +// ID=124 +9, +// ID=125 +10, +// ID=126 +13, +// ID=127 +23, +// ID=128 +44, +// ID=129 +18, +// ID=130 +50, +// ID=131 +12, +// ID=132 +8, +// ID=133 +1, +// ID=134 +5, +// ID=135 +1, +// ID=136 +4, +// ID=137 +1, +// ID=138 +4, +// ID=139 +1, +// ID=140 +6, +// ID=141 +1, +// ID=142 +6, +// ID=143 +6, +// ID=144 +18, +// ID=145 +579, +// ID=146 +761, +// ID=147 +113, +// ID=148 +101, +// ID=149 +24, +// ID=150 +8, +// ID=151 +73, +// ID=152 +1158, +// ID=153 +770, +// ID=154 +1522, +// ID=155 +226, +// ID=156 +202, +// ID=157 +48, +// ID=158 +128, +// ID=159 +8, +// ID=160 +146, +// ID=161 +4, +// ID=162 +7, +// ID=163 +7, +// ID=164 +7, +// ID=165 +11, +// ID=166 +11, +// ID=167 +8, +// ID=168 +6, +// ID=169 +7, +// ID=170 +1, +// ID=171 +8, +// ID=172 +7, +// ID=173 +16, +// ID=174 +13, +// ID=175 +10, +// ID=176 +25, +// ID=177 +30, +// ID=178 +5, +// ID=179 +20, +// ID=180 +10, +// ID=181 +10, +// ID=182 +12, +// ID=183 +1, +// ID=184 +15, +// ID=185 +14, +// ID=186 +55, +// ID=187 +50, +// ID=188 +34, +// ID=189 +8, +// ID=190 +8, +// ID=191 +14, +// ID=192 +14, +// ID=193 +8, +// ID=194 +16, +// ID=195 +16, +// ID=196 +5, +// ID=197 +9, +// ID=198 +2, +// ID=199 +5, +// ID=200 +6, +// ID=201 +3, +// ID=202 +7, +// ID=203 +6, +// ID=204 +6, +// ID=205 +7, +// ID=206 +7, +// ID=207 +12, +// ID=208 +6, +// ID=209 +7, +// ID=210 +12, +// ID=211 +6, +// ID=212 +7, +// ID=213 +12, +// ID=214 +6, +// ID=215 +7, +// ID=216 +12, +// ID=217 +6, +// ID=218 +7, +// ID=219 +12, +// ID=220 +6, +// ID=221 +7, +// ID=222 +12, +// ID=223 +6, +// ID=224 +10, +// ID=225 +6, +// ID=226 +15, +// ID=227 +10, +// ID=228 +10, +// ID=229 +6, +// ID=230 +2, +// ID=231 +6, +// ID=232 +7, +// ID=233 +5, +// ID=234 +3, +// ID=235 +11, +// ID=236 +10, +// ID=237 +10, +// ID=238 +6, +// ID=239 +15, +// ID=240 +10, +// ID=241 +10, +// ID=242 +6, +// ID=243 +2, +// ID=244 +11, +// ID=245 +10, +// ID=246 +10, +// ID=247 +6, +// ID=248 +15, +// ID=249 +10, +// ID=250 +10, +// ID=251 +6, +// ID=252 +2, +// ID=253 +11, +// ID=254 +10, +// ID=255 +10, +// ID=256 +6, +// ID=257 +15, +// ID=258 +10, +// ID=259 +10, +// ID=260 +8, +// ID=261 +18, +// ID=262 +10, +// ID=263 +10, +// ID=264 +15, +// ID=265 +10, +// ID=266 +10, +// ID=267 +8, +// ID=268 +8, +// ID=269 +5, +// ID=270 +6, +// ID=271 +15, +// ID=272 +10, +// ID=273 +10, +// ID=274 +15, +// ID=275 +10, +// ID=276 +10, +// ID=277 +6, +// ID=278 +2, +// ID=279 +11, +// ID=280 +11, +// ID=281 +11, +// ID=282 +11, +// ID=283 +11, +// ID=284 +11, +// ID=285 +7, +// ID=286 +5, +// ID=287 +4, +// ID=288 +6, +// ID=289 +6, +// ID=290 +5, +// ID=291 +8, +// ID=292 +8, +// ID=293 +10, +// ID=294 +8, +// ID=295 +8, +// ID=296 +10, +// ID=297 +6, +// ID=298 +5, +// ID=299 +3, +// ID=300 +8, +// ID=301 +23, +// ID=302 +12, +// ID=303 +6, +// ID=304 +23, +// ID=305 +12, +// ID=306 +6, +// ID=307 +18, +// ID=308 +7, +// ID=309 +6, +// ID=310 +9, +// ID=311 +18, +// ID=312 +7, +// ID=313 +4, +// ID=314 +6, +// ID=315 +8, +// ID=316 +17, +// ID=317 +6, +// ID=318 +5, +// ID=319 +12, +// ID=320 +12, +// ID=321 +12, +// ID=322 +12, +// ID=323 +8, +// ID=324 +17, +// ID=325 +6, +// ID=326 +5, +// ID=327 +12, +// ID=328 +8, +// ID=329 +17, +// ID=330 +6, +// ID=331 +5, +// ID=332 +3, +// ID=333 +16, +// ID=334 +17, +// ID=335 +6, +// ID=336 +5, +// ID=337 +12, +// ID=338 +12, +// ID=339 +8, +// ID=340 +17, +// ID=341 +6, +// ID=342 +5, +// ID=343 +13, +// ID=344 +17, +// ID=345 +6, +// ID=346 +5, +// ID=347 +3, +// ID=348 +19, +// ID=349 +17, +// ID=350 +6, +// ID=351 +5, +// ID=352 +3, +// ID=353 +8, +// ID=354 +17, +// ID=355 +6, +// ID=356 +5, +// ID=357 +3, +// ID=358 +8, +// ID=359 +17, +// ID=360 +6, +// ID=361 +5, +// ID=362 +3, +// ID=363 +8, +// ID=364 +17, +// ID=365 +6, +// ID=366 +5, +// ID=367 +3, +// ID=368 +8, +// ID=369 +17, +// ID=370 +6, +// ID=371 +5, +// ID=372 +3, +// ID=373 +5, +// ID=374 +8, +// ID=375 +17, +// ID=376 +6, +// ID=377 +5, +// ID=378 +3, +// ID=379 +18, +// ID=380 +17, +// ID=381 +6, +// ID=382 +5, +// ID=383 +3, +// ID=384 +8, +// ID=385 +17, +// ID=386 +6, +// ID=387 +5, +// ID=388 +3, +// ID=389 +8, +// ID=390 +17, +// ID=391 +6, +// ID=392 +5, +// ID=393 +3, +// ID=394 +5, +// ID=395 +8, +// ID=396 +19, +// ID=397 +8, +// ID=398 +5, +// ID=399 +10, +// ID=400 +7, +// ID=401 +19, +// ID=402 +8, +// ID=403 +6, +// ID=404 +10, +// ID=405 +7, +// ID=406 +19, +// ID=407 +8, +// ID=408 +6, +// ID=409 +10, +// ID=410 +7, +// ID=411 +19, +// ID=412 +8, +// ID=413 +6, +// ID=414 +10, +// ID=415 +7, +// ID=416 +19, +// ID=417 +8, +// ID=418 +6, +// ID=419 +10, +// ID=420 +7, +// ID=421 +19, +// ID=422 +8, +// ID=423 +6, +// ID=424 +10, +// ID=425 +7, +// ID=426 +19, +// ID=427 +8, +// ID=428 +6, +// ID=429 +10, +// ID=430 +7, +// ID=431 +19, +// ID=432 +8, +// ID=433 +6, +// ID=434 +10, +// ID=435 +7, +// ID=436 +19, +// ID=437 +8, +// ID=438 +6, +// ID=439 +10, +// ID=440 +7, +// ID=441 +19, +// ID=442 +8, +// ID=443 +6, +// ID=444 +10, +// ID=445 +7, +// ID=446 +19, +// ID=447 +8, +// ID=448 +6, +// ID=449 +10, +// ID=450 +7, +// ID=451 +17, +// ID=452 +6, +// ID=453 +5, +// ID=454 +8, +// ID=455 +17, +// ID=456 +6, +// ID=457 +5, +// ID=458 +12, +// ID=459 +12, +// ID=460 +8, +// ID=461 +17, +// ID=462 +6, +// ID=463 +5, +// ID=464 +12, +// ID=465 +12, +// ID=466 +8, +// ID=467 +17, +// ID=468 +6, +// ID=469 +5, +// ID=470 +12, +// ID=471 +8, +// ID=472 +17, +// ID=473 +6, +// ID=474 +5, +// ID=475 +12, +// ID=476 +8, +// ID=477 +17, +// ID=478 +6, +// ID=479 +5, +// ID=480 +12, +// ID=481 +8, +// ID=482 +17, +// ID=483 +6, +// ID=484 +5, +// ID=485 +12, +// ID=486 +8, +// ID=487 +17, +// ID=488 +6, +// ID=489 +5, +// ID=490 +15, +// ID=491 +12, +// ID=492 +8, +// ID=493 +17, +// ID=494 +6, +// ID=495 +5, +// ID=496 +12, +// ID=497 +8, +// ID=498 +17, +// ID=499 +6, +// ID=500 +5, +// ID=501 +13, +// ID=502 +8, +// ID=503 +17, +// ID=504 +6, +// ID=505 +5, +// ID=506 +13, +// ID=507 +8, +// ID=508 +17, +// ID=509 +6, +// ID=510 +5, +// ID=511 +8, +// ID=512 +17, +// ID=513 +6, +// ID=514 +5, +// ID=515 +5, +// ID=516 +8, +// ID=517 +21, +// ID=518 +10, +// ID=519 +6, +// ID=520 +10, +// ID=521 +15, +// ID=522 +10, +// ID=523 +10, +// ID=524 +6, +// ID=525 +2, +// ID=526 +11, +// ID=527 +21, +// ID=528 +10, +// ID=529 +10, +// ID=530 +15, +// ID=531 +10, +// ID=532 +10, +// ID=533 +8, +// ID=534 +8, +// ID=535 +6, +// ID=536 +16, +// ID=537 +21, +// ID=538 +10, +// ID=539 +10, +// ID=540 +15, +// ID=541 +10, +// ID=542 +10, +// ID=543 +6, +// ID=544 +16, +// ID=545 +19, +// ID=546 +8, +// ID=547 +5, +// ID=548 +19, +// ID=549 +8, +// ID=550 +19, +// ID=551 +5, +// ID=552 +19, +// ID=553 +8, +// ID=554 +5, +// ID=555 +19, +// ID=556 +7, +// ID=557 +8, +// ID=558 +5, +// ID=559 +19, +// ID=560 +8, +// ID=561 +19, +// ID=562 +5, +// ID=563 +19, +// ID=564 +8, +// ID=565 +5, +// ID=566 +20, +// ID=567 +9, +// ID=568 +20, +// ID=569 +6, +// ID=570 +20, +// ID=571 +9, +// ID=572 +20, +// ID=573 +6, +// ID=574 +20, +// ID=575 +9, +// ID=576 +20, +// ID=577 +6, +// ID=578 +20, +// ID=579 +9, +// ID=580 +20, +// ID=581 +6, +// ID=582 +20, +// ID=583 +9, +// ID=584 +20, +// ID=585 +6, +// ID=586 +20, +// ID=587 +9, +// ID=588 +20, +// ID=589 +6, +// ID=590 +20, +// ID=591 +9, +// ID=592 +20, +// ID=593 +6, +// ID=594 +20, +// ID=595 +9, +// ID=596 +20, +// ID=597 +6, +// ID=598 +24, +// ID=599 +13, +// ID=600 +14, +// ID=601 +11, +// ID=602 +21, +// ID=603 +10, +// ID=604 +11, +// ID=605 +8, +// ID=606 +23, +// ID=607 +12, +// ID=608 +13, +// ID=609 +10, +// ID=610 +22, +// ID=611 +9, +// ID=612 +11, +// ID=613 +5, +// ID=614 +11, +// ID=615 +5, +// ID=616 +12, +// ID=617 +6, +// ID=618 +10, +// ID=619 +7, +// ID=620 +15, +// ID=621 +4, +// ID=622 +6, +// ID=623 +11, +// ID=624 +21, +// ID=625 +10, +// ID=626 +8, +// ID=627 +17, +// ID=628 +6, +// ID=629 +13, +// ID=630 +7, +// ID=631 +14, +// ID=632 +3, +// ID=633 +24, +// ID=634 +20, +// ID=635 +13, +// ID=636 +11, +// ID=637 +24, +// ID=638 +13, +// ID=639 +5, +// ID=640 +18, +// ID=641 +7, +// ID=642 +13, +// ID=643 +8, +// ID=644 +17, +// ID=645 +6, +// ID=646 +6, +// ID=647 +6, +// ID=648 +1, +// ID=649 +5, +// ID=650 +7, +// ID=651 +10, +// ID=652 +8, +// ID=653 +9, +// ID=654 +7, +// ID=655 +6, +// ID=656 +10, +// ID=657 +9, +// ID=658 +13, +// ID=659 +7, +// ID=660 +9, +// ID=661 +10, +// ID=662 +6, +// ID=663 +4, +// ID=664 +4, +// ID=665 +6, +// ID=666 +8, +// ID=667 +26, +// ID=668 +7, +// ID=669 +5, +// ID=670 +4, +// ID=671 +5, +// ID=672 +10, +// ID=673 +16, +// ID=674 +11, +// ID=675 +12, +// ID=676 +10, +// ID=677 +26, +// ID=678 +3, +// ID=679 +25, +// ID=680 +21, +// ID=681 +23, +// ID=682 +31, +// ID=683 +25, +// ID=684 +5, +// ID=685 +29, +// ID=686 +8, +// ID=687 +7, +// ID=688 +8, +// ID=689 +14, +// ID=690 +14, +// ID=691 +8, +// ID=692 +40, +// ID=693 +59, +// ID=694 +18, +// ID=695 +21, +// ID=696 +19, +// ID=697 +14, +// ID=698 +17, +// ID=699 +12, +// ID=700 +17, +// ID=701 +18, +// ID=702 +19, +// ID=703 +13, +// ID=704 +10, +// ID=705 +5, +// ID=706 +10, +// ID=707 +21, +// ID=708 +6, +// ID=709 +54, +// ID=710 +1, +// ID=711 +2, +// ID=712 +2, +// ID=713 +8, +// ID=714 +6, +// ID=715 +7, +// ID=716 +6, +// ID=717 +8, +// ID=718 +11, +// ID=719 +19, +// ID=720 +10, +// ID=721 +7, +// ID=722 +10, +// ID=723 +10, +// ID=724 +1, +// ID=725 +10, +// ID=726 +10, +// ID=727 +10, +// ID=728 +13, +// ID=729 +7, +// ID=730 +7, +// ID=731 +7, +// ID=732 +4, +// ID=733 +7, +// ID=734 +7, +// ID=735 +9, +// ID=736 +5, +// ID=737 +8, +// ID=738 +23, +// ID=739 +7, +// ID=740 +7, +// ID=741 +7, +// ID=742 +7, +// ID=743 +4, +// ID=744 +14, +// ID=745 +2, +// ID=746 +5, +// ID=747 +1, +// ID=748 +1, +// ID=749 +6, +// ID=750 +3, +// ID=751 +7, +// ID=752 +7, +// ID=753 +7, +// ID=754 +7, +// ID=755 +7, +// ID=756 +7, +// ID=757 +16, +// ID=758 +3, +// ID=759 +18, +// ID=760 +6, +// ID=761 +6, +// ID=762 +7, +// ID=763 +9, +// ID=764 +8, +// ID=765 +6, +// ID=766 +8, +// ID=767 +7, +// ID=768 +8, +// ID=769 +5, +// ID=770 +5, +// ID=771 +3, +// ID=772 +4, +// ID=773 +4, +// ID=774 +6, +// ID=775 +9, +// ID=776 +7, +// ID=777 +8, +// ID=778 +8, +// ID=779 +24, +// ID=780 +14, +// ID=781 +18, +// ID=782 +6, +// ID=783 +7, +// ID=784 +7, +// ID=785 +6, +// ID=786 +7, +// ID=787 +13, +// ID=788 +12, +// ID=789 +6, +// ID=790 +15, +// ID=791 +10, +// ID=792 +21, +// ID=793 +14, +// ID=794 +21, +// ID=795 +21, +// ID=796 +3, +// ID=797 +22, +// ID=798 +30, +// ID=799 +15, +// ID=800 +16, +// ID=801 +1, +// ID=802 +7, +// ID=803 +121, +// ID=804 +25, +// ID=805 +21, +// ID=806 +2, +// ID=807 +56, +// ID=808 +77, +// ID=809 +7, +// ID=810 +7, +// ID=811 +7, +// ID=812 +1, +// ID=813 +9, +// ID=814 +3, +// ID=815 +8, +// ID=816 +7, +// ID=817 +7, +// ID=818 +13, +// ID=819 +10, +// ID=820 +2, +// ID=821 +7, +// ID=822 +7, +// ID=823 +9, +// ID=824 +8, +// ID=825 +12, +// ID=826 +16, +// ID=827 +6, +// ID=828 +7, +// ID=829 +11, +// ID=830 +11, +// ID=831 +11, +// ID=832 +7, +// ID=833 +7, +// ID=834 +7, +// ID=835 +7, +}; + +int xmlvm_constant_pool_size = sizeof(xmlvm_constant_pool_data) / sizeof(JAVA_ARRAY_CHAR*); + diff --git a/tests/nbody-java/hycomp.h b/tests/nbody-java/hycomp.h new file mode 100644 index 0000000000000..ae64f13009b89 --- /dev/null +++ b/tests/nbody-java/hycomp.h @@ -0,0 +1,522 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if !defined(hycomp_h) +#define hycomp_h + +/** + * USE_PROTOTYPES: Use full ANSI prototypes. + * + * CLOCK_PRIMS: We want the timer/clock prims to be used + * + * LITTLE_ENDIAN: This is for the intel machines or other + * little endian processors. Defaults to big endian. + * + * NO_LVALUE_CASTING: This is for compilers that don't like the left side + * of assigns to be cast. It hacks around to do the + * right thing. + * + * ATOMIC_FLOAT_ACCESS: So that float operations will work. + * + * LINKED_USER_PRIMITIVES: Indicates that user primitives are statically linked + * with the VM executeable. + * + * OLD_SPACE_SIZE_DIFF: The 68k uses a different amount of old space. + * This "legitimizes" the change. + * + * SIMPLE_SIGNAL: For machines that don't use real signals in C. + * (eg: PC, 68k) + * + * OS_NAME_LOOKUP: Use nlist to lookup user primitive addresses. + * + * VMCALL: Tag for all functions called by the VM. + * + * VMAPICALL: Tag for all functions called via the PlatformFunction + * callWith: mechanism. + * + * SYS_FLOAT: For some math functions where extended types (80 or 96 bits) are returned + * Most platforms return as a double + * + * FLOAT_EXTENDED: If defined, the type name for extended precision floats. + * + * PLATFORM_IS_ASCII: Must be defined if the platform is ASCII + * + * EXE_EXTENSION_CHAR: the executable has a delimiter that we want to stop at as part of argv[0]. + */ + + /** + * By default order doubles in the native (that is big/little endian) ordering. + */ + +#define HY_PLATFORM_DOUBLE_ORDER + +/** + * Define common types: + *
    + *
  • U_32 / I_32 - unsigned/signed 32 bits
  • + *
  • U_16 / I_16 - unsigned/signed 16 bits
  • + *
  • U_8 / I_8 - unsigned/signed 8 bits (bytes -- not to be + * confused with char)
  • + *
+ */ + +typedef int I_32; +typedef short I_16; +typedef signed char I_8; /* chars can be unsigned */ +typedef unsigned int U_32; +typedef unsigned short U_16; +typedef unsigned char U_8; + +/** + * Define platform specific types: + *
    + *
  • U_64 / I_64 - unsigned/signed 64 bits
  • + *
+ */ + +#if defined(LINUX) || defined(FREEBSD) || defined(AIX) || defined(MACOSX) || defined(__CYGWIN32__) + +#define DATA_TYPES_DEFINED + +/* NOTE: Linux supports different processors -- do not assume 386 */ +#if defined(HYX86_64) || defined(HYIA64) || defined(HYPPC64) || defined(HYS390X) + +typedef unsigned long int U_64; /* 64bits */ +typedef long int I_64; +#define TOC_UNWRAP_ADDRESS(wrappedPointer) ((void *) (wrappedPointer)[0]) +#define TOC_STORE_TOC(dest,wrappedPointer) (dest = ((UDATA*)wrappedPointer)[1]) + +#define HY_WORD64 + +#else + +typedef long long I_64; +typedef unsigned long long U_64; + +#endif + +#if defined(HYS390X) || defined(HYS390) || defined(HYPPC64) || defined(HYPPC32) +#define HY_BIG_ENDIAN +#else +#define HY_LITTLE_ENDIAN +#endif + +#if defined(HYPPC32) && defined(LINUX) +#define VA_PTR(valist) (&valist[0]) +#endif + +typedef double SYS_FLOAT; +#define HYCONST64(x) x##LL +#define NO_LVALUE_CASTING +#define FLOAT_EXTENDED long double +#define PLATFORM_IS_ASCII +#define PLATFORM_LINE_DELIMITER "\012" +#define DIR_SEPARATOR '/' +#define DIR_SEPARATOR_STR "/" +#define PATH_SEPARATOR ':' +#define PATH_SEPARATOR_STR ":" +#if defined(AIX) +#define LIBPATH_ENV_VAR "LIBPATH" +#else +#if defined(MACOSX) +#define LIBPATH_ENV_VAR "DYLD_LIBRARY_PATH" +#else +#define LIBPATH_ENV_VAR "LD_LIBRARY_PATH" +#endif +#endif +#if defined(MACOSX) +#define PLATFORM_DLL_EXTENSION ".dylib" +#else +#define PLATFORM_DLL_EXTENSION ".so" +#endif + +/** + * No priorities on Linux + */ + +#define HY_PRIORITY_MAP {0,0,0,0,0,0,0,0,0,0,0,0} + +typedef U_32 BOOLEAN; + +#endif + +/* Win32 - Windows 3.1 & NT using Win32 */ +#if defined(WIN32) + +#define HY_LITTLE_ENDIAN + +/* Define 64-bit integers for Windows */ +typedef __int64 I_64; +typedef unsigned __int64 U_64; + +typedef double SYS_FLOAT; +#define NO_LVALUE_CASTING +#define VMAPICALL _stdcall +#define VMCALL _cdecl +#define EXE_EXTENSION_CHAR '.' + +#define DIR_SEPARATOR '\\' +#define DIR_SEPARATOR_STR "\\" +#define PATH_SEPARATOR ';' +#define PATH_SEPARATOR_STR ";" +#define LIBPATH_ENV_VAR "PATH" + +/* Modifications for the Alpha running WIN-NT */ +#if defined(_ALPHA_) +#undef small /* defined as char in rpcndr.h */ +typedef double FLOAT_EXTENDED; +#endif + +#define HY_PRIORITY_MAP { \ + THREAD_PRIORITY_IDLE, /* 0 */\ + THREAD_PRIORITY_LOWEST, /* 1 */\ + THREAD_PRIORITY_BELOW_NORMAL, /* 2 */\ + THREAD_PRIORITY_BELOW_NORMAL, /* 3 */\ + THREAD_PRIORITY_BELOW_NORMAL, /* 4 */\ + THREAD_PRIORITY_NORMAL, /* 5 */\ + THREAD_PRIORITY_ABOVE_NORMAL, /* 6 */\ + THREAD_PRIORITY_ABOVE_NORMAL, /* 7 */\ + THREAD_PRIORITY_ABOVE_NORMAL, /* 8 */\ + THREAD_PRIORITY_ABOVE_NORMAL, /* 9 */\ + THREAD_PRIORITY_HIGHEST, /*10 */\ + THREAD_PRIORITY_TIME_CRITICAL /*11 */} + +#endif /* defined(WIN32) */ + +#if defined(ZOS) + +#define HY_BIG_ENDIAN + +#define DATA_TYPES_DEFINED +typedef unsigned int BOOLEAN; +#if defined (HYS390X) +typedef unsigned long U_64; +typedef long I_64; +#else +typedef signed long long I_64; +typedef unsigned long long U_64; +#endif + +typedef double SYS_FLOAT; + +#define HYCONST64(x) x##LL + +#define NO_LVALUE_CASTING +#define PLATFORM_LINE_DELIMITER "\012" +#define DIR_SEPARATOR '/' +#define DIR_SEPARATOR_STR "/" +#define PATH_SEPARATOR ':' +#define PATH_SEPARATOR_STR ":" +#define LIBPATH_ENV_VAR "LIBPATH" + +#define VA_PTR(valist) (&valist[0]) + +typedef struct { +#if !defined(HYS390X) + char stuff[16]; +#endif + char *ada; + void (*rawFnAddress)(); +} HyFunctionDescriptor_T; + +#define TOC_UNWRAP_ADDRESS(wrappedPointer) (((HyFunctionDescriptor_T *) (wrappedPointer))->rawFnAddress) + +#define PLATFORM_DLL_EXTENSION ".so" + +#ifdef HYS390X +#ifndef HY_WORD64 +#define HY_WORD64 +#endif /* ifndef HY_WORD64 */ +#endif /* HYS390X */ + +#endif /* ZOS */ + + +#if !defined(VMCALL) +#define VMCALL +#define VMAPICALL +#endif +#define PVMCALL VMCALL * + +#define GLOBAL_DATA(symbol) ((void*)&(symbol)) +#define GLOBAL_TABLE(symbol) GLOBAL_DATA(symbol) + +/** + * Define platform specific types: + *
    + *
  • UDATA - unsigned data, can be used as an integer or + * pointer storage
  • + *
  • IDATA - signed data, can be used as an integer or + * pointer storage
  • + *
+ */ +/* FIXME: POINTER64 */ +#if defined(HYX86_64) || defined(HYIA64) || defined(HYPPC64) || defined(HYS390X) || defined(POINTER64) + +typedef I_64 IDATA; +typedef U_64 UDATA; + +#else /* this is default for non-64bit systems */ + +typedef I_32 IDATA; +typedef U_32 UDATA; + +#endif /* defined(HYX86_64) */ + +#if !defined(DATA_TYPES_DEFINED) +/* no generic U_64 or I_64 */ + +/* don't typedef BOOLEAN since it's already def'ed on Win32 */ +#define BOOLEAN UDATA + +#ifndef HY_BIG_ENDIAN +#define HY_LITTLE_ENDIAN +#endif + +#endif + +#if !defined(HYCONST64) +#define HYCONST64(x) x##L +#endif + +#if !defined(HY_DEFAULT_SCHED) + +/** + * By default, pthreads platforms use the SCHED_OTHER thread + * scheduling policy. + */ + +#define HY_DEFAULT_SCHED SCHED_OTHER +#endif + +#if !defined(HY_PRIORITY_MAP) + +/** + * If no priority map if provided, priorities will be determined + * algorithmically. + */ + +#endif + +#if !defined(FALSE) +#define FALSE ((BOOLEAN) 0) +#if !defined(TRUE) +#define TRUE ((BOOLEAN) (!FALSE)) +#endif +#endif + +#if !defined(NULL) +#if defined(__cplusplus) +#define NULL (0) +#else +#define NULL ((void *)0) +#endif +#endif +#define USE_PROTOTYPES +#if defined(USE_PROTOTYPES) +#define PROTOTYPE(x) x +#define VARARGS , ... +#else +#define PROTOTYPE(x) () +#define VARARGS +#endif + +/** + * Assign the default line delimiter, if it was not set. + */ + +#if !defined(PLATFORM_LINE_DELIMITER) +#define PLATFORM_LINE_DELIMITER "\015\012" +#endif + +/** + * Set the max path length, if it was not set. + */ + +#if !defined(MAX_IMAGE_PATH_LENGTH) +#define MAX_IMAGE_PATH_LENGTH (2048) +#endif +typedef double ESDOUBLE; +typedef float ESSINGLE; + +/** + * Helpers for U_64s. + */ + +#define CLEAR_U64(u64) (u64 = (U_64)0) +#define LOW_LONG(l) (*((U_32 *) &(l))) +#define HIGH_LONG(l) (*(((U_32 *) &(l)) + 1)) +#define I8(x) ((I_8) (x)) +#define I8P(x) ((I_8 *) (x)) +#define U16(x) ((U_16) (x)) +#define I16(x) ((I_16) (x)) +#define I16P(x) ((I_16 *) (x)) +#define U32(x) ((U_32) (x)) +#define I32(x) ((I_32) (x)) +#define I32P(x) ((I_32 *) (x)) +#define U16P(x) ((U_16 *) (x)) +#define U32P(x) ((U_32 *) (x)) +#define OBJP(x) ((HyObject *) (x)) +#define OBJPP(x) ((HyObject **) (x)) +#define OBJPPP(x) ((HyObject ***) (x)) +#define CLASSP(x) ((Class *) (x)) +#define CLASSPP(x) ((Class **) (x)) +#define BYTEP(x) ((BYTE *) (x)) + +/** + * Test - was conflicting with OS2.h + */ + +#define ESCHAR(x) ((CHARACTER) (x)) +#define FLT(x) ((FLOAT) x) +#define FLTP(x) ((FLOAT *) (x)) +#if defined(NO_LVALUE_CASTING) +#define LI8(x) (*((I_8 *) &(x))) +#define LI8P(x) (*((I_8 **) &(x))) +#define LU16(x) (*((U_16 *) &(x))) +#define LI16(x) (*((I_16 *) &(x))) +#define LU32(x) (*((U_32 *) &(x))) +#define LI32(x) (*((I_32 *) &(x))) +#define LI32P(x) (*((I_32 **) &(x))) +#define LU16P(x) (*((U_16 **) &(x))) +#define LU32P(x) (*((U_32 **) &(x))) +#define LOBJP(x) (*((HyObject **) &(x))) +#define LOBJPP(x) (*((HyObject ***) &(x))) +#define LOBJPPP(x) (*((HyObject ****) &(x)) +#define LCLASSP(x) (*((Class **) &(x))) +#define LBYTEP(x) (*((BYTE **) &(x))) +#define LCHAR(x) (*((CHARACTER) &(x))) +#define LFLT(x) (*((FLOAT) &x)) +#define LFLTP(x) (*((FLOAT *) &(x))) +#else +#define LI8(x) I8((x)) +#define LI8P(x) I8P((x)) +#define LU16(x) U16((x)) +#define LI16(x) I16((x)) +#define LU32(x) U32((x)) +#define LI32(x) I32((x)) +#define LI32P(x) I32P((x)) +#define LU16P(x) U16P((x)) +#define LU32P(x) U32P((x)) +#define LOBJP(x) OBJP((x)) +#define LOBJPP(x) OBJPP((x)) +#define LOBJPPP(x) OBJPPP((x)) +#define LIOBJP(x) IOBJP((x)) +#define LCLASSP(x) CLASSP((x)) +#define LBYTEP(x) BYTEP((x)) +#define LCHAR(x) CHAR((x)) +#define LFLT(x) FLT((x)) +#define LFLTP(x) FLTP((x)) +#endif + +/** + * Macros for converting between words and longs and accessing bits. + */ + +#define HIGH_WORD(x) U16(U32((x)) >> 16) +#define LOW_WORD(x) U16(U32((x)) & 0xFFFF) +#define LOW_BIT(o) (U32((o)) & 1) +#define LOW_2_BITS(o) (U32((o)) & 3) +#define LOW_3_BITS(o) (U32((o)) & 7) +#define LOW_4_BITS(o) (U32((o)) & 15) +#define MAKE_32(h, l) ((U32((h)) << 16) | U32((l))) +#define MAKE_64(h, l) ((((I_64)(h)) << 32) | (l)) +#if defined(__cplusplus) +#define HY_CFUNC "C" +#define HY_CDATA "C" +#else +#define HY_CFUNC +#define HY_CDATA +#endif + +/** + * Macros for tagging functions which read/write the vm thread. + */ + +#define READSVMTHREAD +#define WRITESVMTHREAD +#define REQUIRESSTACKFRAME + +/** + * Macro for tagging functions, which never return. + */ + +#if defined(__GNUC__) + +/** + * On GCC, we can actually pass this information on to the compiler. + */ + +#define NORETURN __attribute__((noreturn)) +#else +#define NORETURN +#endif + +/** + * On some systems va_list is an array type. This is probably in + * violation of the ANSI C spec, but it's not entirely clear. Because of + * this, we end up with an undesired extra level of indirection if we take + * the address of a va_list argument. + * + * To get it right, always use the VA_PTR macro + */ + +#if !defined(VA_PTR) +#define VA_PTR(valist) (&valist) +#endif +#if !defined(TOC_UNWRAP_ADDRESS) +#define TOC_UNWRAP_ADDRESS(wrappedPointer) (wrappedPointer) +#endif + +#if !defined(TOC_STORE_TOC) +#define TOC_STORE_TOC(dest,wrappedPointer) +#endif +/** + * Macros for accessing I_64 values. + */ + +#if defined(ATOMIC_LONG_ACCESS) +#define PTR_LONG_STORE(dstPtr, aLongPtr) ((*U32P(dstPtr) = *U32P(aLongPtr)), (*(U32P(dstPtr)+1) = *(U32P(aLongPtr)+1))) +#define PTR_LONG_VALUE(dstPtr, aLongPtr) ((*U32P(aLongPtr) = *U32P(dstPtr)), (*(U32P(aLongPtr)+1) = *(U32P(dstPtr)+1))) +#else +#define PTR_LONG_STORE(dstPtr, aLongPtr) (*(dstPtr) = *(aLongPtr)) +#define PTR_LONG_VALUE(dstPtr, aLongPtr) (*(aLongPtr) = *(dstPtr)) +#endif + +/** + * Macro used when declaring tables which require relocations. + */ + +#if !defined(HYCONST_TABLE) +#define HYCONST_TABLE const +#endif + +/** + * ANSI qsort is not always available. + */ + +#if !defined(HY_SORT) +#define HY_SORT(base, nmemb, size, compare) qsort((base), (nmemb), (size), (compare)) +#endif + +/** + * Helper macros for storing/restoring pointers to jlong. + */ +#define jlong2addr(a, x) ((a *)((IDATA)(x))) +#define addr2jlong(x) ((jlong)((IDATA)(x))) + +#endif /* hycomp_h */ diff --git a/tests/nbody-java/hyporterror.h b/tests/nbody-java/hyporterror.h new file mode 100644 index 0000000000000..4cc6911e2dae7 --- /dev/null +++ b/tests/nbody-java/hyporterror.h @@ -0,0 +1,223 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @ingroup Port + * @brief Port Library Error Codes + * + * When an error is reported by the operating system the port library must translate this OS specific error code to a + * portable error code. All portable error codes are negative numbers. Not every module of the port library will have + * error codes dedicated to it's own use, some will use the generic portable error code values. + * + * Errors reported by the OS may be recorded by calling the port library functions @ref hyerror.c::hyerror_set_last_error "hyerror_set_last_error()" + * or @ref hyerror.c::hyerror_set_last_error_with_message "hyerror_set_last_error_with_message()". The mapping of the OS specific error + * code to a portable error code is the responsibility of the calling module. + */ +#if !defined(hyporterror_h) +#define hyporterror_h + +/** + * @name Generic Errors + * Generic error codes for modules that do not have their own specific errors. Where possible it is recommended that all + * modules that return error codes have their own set + * + * @internal HYPORT_ERROR* range from -1 to -99 avoid overlap + * @{ + */ +#define HYPORT_ERROR_BASE -1 +#define HYPORT_ERROR_OPFAILED HYPORT_ERROR_BASE +#define HYPORT_ERROR_EOF HYPORT_ERROR_BASE-1 +#define HYPORT_ERROR_NOPERMISSION HYPORT_ERROR_BASE-2 +#define HYPORT_ERROR_NOTFOUND HYPORT_ERROR_BASE-3 +#define HYPORT_ERROR_NAMETOOLONG HYPORT_ERROR_BASE-4 +#define HYPORT_ERROR_DISKFULL HYPORT_ERROR_BASE-5 +#define HYPORT_ERROR_EXIST HYPORT_ERROR_BASE-6 +#define HYPORT_ERROR_NOTEXIST HYPORT_ERROR_BASE-7 +#define HYPORT_ERROR_SYSTEMFULL HYPORT_ERROR_BASE-8 +#define HYPORT_ERROR_NOENT HYPORT_ERROR_BASE-9 +#define HYPORT_ERROR_DIRECTORY HYPORT_ERROR_BASE-10 +#define HYPORT_ERROR_NOTDIRECTORY HYPORT_ERROR_BASE-11 +#define HYPORT_ERROR_LOOP HYPORT_ERROR_BASE-12 +#define HYPORT_ERROR_BADF HYPORT_ERROR_BASE-13 +#define HYPORT_ERROR_WOULDBLOCK HYPORT_ERROR_BASE-14 +#define HYPORT_ERROR_INVALID HYPORT_ERROR_BASE-15 +/** @} */ +/** + * @name Port Library startup failure code + * Failures related to the initialization and startup of the port library. + * + * @internal HYPORT_ERROR_STARTUP* range from -100 to -149 to avoid overlap + * @{ + */ +#define HYPORT_ERROR_STARTUP_BASE -100 +#define HYPORT_ERROR_STARTUP_THREAD (HYPORT_ERROR_STARTUP_BASE) +#define HYPORT_ERROR_STARTUP_MEM (HYPORT_ERROR_STARTUP_BASE -1) +#define HYPORT_ERROR_STARTUP_TLS (HYPORT_ERROR_STARTUP_BASE -2) +#define HYPORT_ERROR_STARTUP_TLS_ALLOC (HYPORT_ERROR_STARTUP_BASE -3) +#define HYPORT_ERROR_STARTUP_TLS_MUTEX (HYPORT_ERROR_STARTUP_BASE -4) +#define HYPORT_ERROR_STARTUP_CPU (HYPORT_ERROR_STARTUP_BASE -5) +#define HYPORT_ERROR_STARTUP_VMEM (HYPORT_ERROR_STARTUP_BASE -6) +#define HYPORT_ERROR_STARTUP_FILE (HYPORT_ERROR_STARTUP_BASE -7) +#define HYPORT_ERROR_STARTUP_TTY (HYPORT_ERROR_STARTUP_BASE -8) +#define HYPORT_ERROR_STARTUP_TTY_HANDLE (HYPORT_ERROR_STARTUP_BASE -9) +#define HYPORT_ERROR_STARTUP_TTY_CONSOLE (HYPORT_ERROR_STARTUP_BASE -10) +#define HYPORT_ERROR_STARTUP_MMAP (HYPORT_ERROR_STARTUP_BASE -11) +#define HYPORT_ERROR_STARTUP_IPCMUTEX (HYPORT_ERROR_STARTUP_BASE -12) +#define HYPORT_ERROR_STARTUP_NLS (HYPORT_ERROR_STARTUP_BASE -13) +#define HYPORT_ERROR_STARTUP_SOCK (HYPORT_ERROR_STARTUP_BASE -14) +#define HYPORT_ERROR_STARTUP_TIME (HYPORT_ERROR_STARTUP_BASE -15) +#define HYPORT_ERROR_STARTUP_GP (HYPORT_ERROR_STARTUP_BASE -16) +#define HYPORT_ERROR_STARTUP_EXIT (HYPORT_ERROR_STARTUP_BASE -17) +#define HYPORT_ERROR_STARTUP_SYSINFO (HYPORT_ERROR_STARTUP_BASE -18) +#define HYPORT_ERROR_STARTUP_SL (HYPORT_ERROR_STARTUP_BASE -19) +#define HYPORT_ERROR_STARTUP_STR (HYPORT_ERROR_STARTUP_BASE -20) +#define HYPORT_ERROR_STARTUP_SHSEM (HYPORT_ERROR_STARTUP_BASE -21) +#define HYPORT_ERROR_STARTUP_SHMEM (HYPORT_ERROR_STARTUP_BASE -22) +#define HYPORT_ERROR_STARTUP_ERROR (HYPORT_ERROR_STARTUP_BASE -23) +#define HYPORT_ERROR_STARTUP_SIGNAL (HYPORT_ERROR_STARTUP_BASE -24) +/** @} */ +/** + * @name Shared Semaphore Errors + * Error codes for shared semaphore operations. + * + * @internal HYPORT_ERROR_SHSEM* range from at -150 to 159 to avoid overlap + * @{ + */ +#define HYPORT_ERROR_SHSEM_BASE -150 +#define HYPORT_ERROR_SHSEM_OPFAILED (HYPORT_ERROR_SHSEM_BASE) +#define HYPORT_ERROR_SHSEM_HANDLE_INVALID (HYPORT_ERROR_SHSEM_BASE-1) +#define HYPORT_ERROR_SHSEM_SEMSET_INVALID (HYPORT_ERROR_SHSEM_BASE-2) +#define HYPORT_ERROR_SHSEM_NOT_EXIST (HYPORT_ERROR_SHSEM_BASE-3) +#define HYPORT_ERROR_SHSEM_NOPERMISSION (HYPORT_ERROR_SHSEM_BASE-4) +#define HYPORT_ERROR_SHSEM_INVALID_INPUT (HYPORT_ERROR_SHSEM_BASE-5) +#define HYPORT_ERROR_SHSEM_NOSPACE (HYPORT_ERROR_SHSEM_BASE-6) +#define HYPORT_ERROR_SHSEM_ALREADY_EXIST (HYPORT_ERROR_SHSEM_BASE-7) +#define HYPORT_ERROR_SHSEM_DATA_DIRECTORY_FAILED (HYPORT_ERROR_SHSEM_BASE-8) +/** @} */ +/** + * @name Shared Memory Errors + * Error codes for shared memory semaphore operations. + * + * @internal HYPORT_ERROR_SHMEM* range from at -160 to -169 to avoid overlap + * @{ + */ +#define HYPORT_ERROR_SHMEM_BASE -160 +#define HYPORT_ERROR_SHMEM_OPFAILED (HYPORT_ERROR_SHMEM_BASE) +#define HYPORT_ERROR_SHMEM_HANDLE_INVALID (HYPORT_ERROR_SHMEM_BASE-1) +#define HYPORT_ERROR_SHMEM_NOT_EXIST (HYPORT_ERROR_SHMEM_BASE-2) +#define HYPORT_ERROR_SHMEM_NOPERMISSION (HYPORT_ERROR_SHMEM_BASE-3) +#define HYPORT_ERROR_SHMEM_INVALID_INPUT (HYPORT_ERROR_SHMEM_BASE-4) +#define HYPORT_ERROR_SHMEM_NOSPACE (HYPORT_ERROR_SHMEM_BASE-5) +#define HYPORT_ERROR_SHMEM_ALREADY_EXIST (HYPORT_ERROR_SHMEM_BASE-6) +#define HYPORT_ERROR_SHMEM_TOOBIG (HYPORT_ERROR_SHMEM_BASE-7) +#define HYPORT_ERROR_SHMEM_ATTACH_FAILED (HYPORT_ERROR_SHMEM_BASE-8) +#define HYPORT_ERROR_SHMEM_DATA_DIRECTORY_FAILED (HYPORT_ERROR_SHMEM_BASE-9) +/** @} */ +/* -170 to -199 available for use */ +/** + * @name Socket Errors + * Error codes for socket operations + * + * @internal HYPORT_ERROR_SOCKET* range from -200 to -299 avoid overlap + * @{ + */ +#define HYPORT_ERROR_SOCKET_BASE -200 +#define HYPORT_ERROR_SOCKET_BADSOCKET HYPORT_ERROR_SOCKET_BASE /* generic error */ +#define HYPORT_ERROR_SOCKET_NOTINITIALIZED HYPORT_ERROR_SOCKET_BASE-1 /* socket library uninitialized */ +#define HYPORT_ERROR_SOCKET_BADAF HYPORT_ERROR_SOCKET_BASE-2 /* bad address family */ +#define HYPORT_ERROR_SOCKET_BADPROTO HYPORT_ERROR_SOCKET_BASE-3 /* bad protocol */ +#define HYPORT_ERROR_SOCKET_BADTYPE HYPORT_ERROR_SOCKET_BASE-4 /* bad type */ +#define HYPORT_ERROR_SOCKET_SYSTEMBUSY HYPORT_ERROR_SOCKET_BASE-5 /* system busy handling requests */ +#define HYPORT_ERROR_SOCKET_SYSTEMFULL HYPORT_ERROR_SOCKET_BASE-6 /* too many sockets */ +#define HYPORT_ERROR_SOCKET_NOTCONNECTED HYPORT_ERROR_SOCKET_BASE-7 /* socket is not connected */ +#define HYPORT_ERROR_SOCKET_INTERRUPTED HYPORT_ERROR_SOCKET_BASE-8 /* the call was cancelled */ +#define HYPORT_ERROR_SOCKET_TIMEOUT HYPORT_ERROR_SOCKET_BASE-9 /* the operation timed out */ +#define HYPORT_ERROR_SOCKET_CONNRESET HYPORT_ERROR_SOCKET_BASE-10 /* the connection was reset */ +#define HYPORT_ERROR_SOCKET_WOULDBLOCK HYPORT_ERROR_SOCKET_BASE-11 /* the socket is marked as nonblocking operation would block */ +#define HYPORT_ERROR_SOCKET_ADDRNOTAVAIL HYPORT_ERROR_SOCKET_BASE-12 /* address not available */ +#define HYPORT_ERROR_SOCKET_ADDRINUSE HYPORT_ERROR_SOCKET_BASE-13 /* address already in use */ +#define HYPORT_ERROR_SOCKET_NOTBOUND HYPORT_ERROR_SOCKET_BASE-14 /* the socket is not bound */ +#define HYPORT_ERROR_SOCKET_UNKNOWNSOCKET HYPORT_ERROR_SOCKET_BASE-15 /* resolution of fileDescriptor to socket failed */ +#define HYPORT_ERROR_SOCKET_INVALIDTIMEOUT HYPORT_ERROR_SOCKET_BASE-16 /* the specified timeout is invalid */ +#define HYPORT_ERROR_SOCKET_FDSETFULL HYPORT_ERROR_SOCKET_BASE-17 /* Unable to create an FDSET */ +#define HYPORT_ERROR_SOCKET_TIMEVALFULL HYPORT_ERROR_SOCKET_BASE-18 /* Unable to create a TIMEVAL */ +#define HYPORT_ERROR_SOCKET_REMSOCKSHUTDOWN HYPORT_ERROR_SOCKET_BASE-19 /* The remote socket has shutdown gracefully */ +#define HYPORT_ERROR_SOCKET_NOTLISTENING HYPORT_ERROR_SOCKET_BASE-20 /* listen() was not invoked prior to accept() */ +#define HYPORT_ERROR_SOCKET_NOTSTREAMSOCK HYPORT_ERROR_SOCKET_BASE-21 /* The socket does not support connection-oriented service */ +#define HYPORT_ERROR_SOCKET_ALREADYBOUND HYPORT_ERROR_SOCKET_BASE-22 /* The socket is already bound to an address */ +#define HYPORT_ERROR_SOCKET_NBWITHLINGER HYPORT_ERROR_SOCKET_BASE-23 /* The socket is marked non-blocking & SO_LINGER is non-zero */ +#define HYPORT_ERROR_SOCKET_ISCONNECTED HYPORT_ERROR_SOCKET_BASE-24 /* The socket is already connected */ +#define HYPORT_ERROR_SOCKET_NOBUFFERS HYPORT_ERROR_SOCKET_BASE-25 /* No buffer space is available */ +#define HYPORT_ERROR_SOCKET_HOSTNOTFOUND HYPORT_ERROR_SOCKET_BASE-26 /* Authoritative Answer Host not found */ +#define HYPORT_ERROR_SOCKET_NODATA HYPORT_ERROR_SOCKET_BASE-27 /* Valid name, no data record of requested type */ +#define HYPORT_ERROR_SOCKET_BOUNDORCONN HYPORT_ERROR_SOCKET_BASE-28 /* The socket has not been bound or is already connected */ +#define HYPORT_ERROR_SOCKET_OPNOTSUPP HYPORT_ERROR_SOCKET_BASE-29 /* The socket does not support the operation */ +#define HYPORT_ERROR_SOCKET_OPTUNSUPP HYPORT_ERROR_SOCKET_BASE-30 /* The socket option is not supported */ +#define HYPORT_ERROR_SOCKET_OPTARGSINVALID HYPORT_ERROR_SOCKET_BASE-31 /* The socket option arguments are invalid */ +#define HYPORT_ERROR_SOCKET_SOCKLEVELINVALID HYPORT_ERROR_SOCKET_BASE-32 /* The socket level is invalid */ +#define HYPORT_ERROR_SOCKET_TIMEOUTFAILURE HYPORT_ERROR_SOCKET_BASE-33 +#define HYPORT_ERROR_SOCKET_SOCKADDRALLOCFAIL HYPORT_ERROR_SOCKET_BASE-34 /* Unable to allocate the sockaddr structure */ +#define HYPORT_ERROR_SOCKET_FDSET_SIZEBAD HYPORT_ERROR_SOCKET_BASE-35 /* The calculated maximum size of the file descriptor set is bad */ +#define HYPORT_ERROR_SOCKET_UNKNOWNFLAG HYPORT_ERROR_SOCKET_BASE-36 /* The flag is unknown */ +#define HYPORT_ERROR_SOCKET_MSGSIZE HYPORT_ERROR_SOCKET_BASE-37 /* The datagram was too big to fit the specified buffer & was truncated. */ +#define HYPORT_ERROR_SOCKET_NORECOVERY HYPORT_ERROR_SOCKET_BASE-38 /* The operation failed with no recovery possible */ +#define HYPORT_ERROR_SOCKET_ARGSINVALID HYPORT_ERROR_SOCKET_BASE-39 /* The arguments are invalid */ +#define HYPORT_ERROR_SOCKET_BADDESC HYPORT_ERROR_SOCKET_BASE-40 /* The socket argument is not a valid file descriptor */ +#define HYPORT_ERROR_SOCKET_NOTSOCK HYPORT_ERROR_SOCKET_BASE-41 /* The socket argument is not a socket */ +#define HYPORT_ERROR_SOCKET_HOSTENTALLOCFAIL HYPORT_ERROR_SOCKET_BASE-42 /* Unable to allocate the hostent structure */ +#define HYPORT_ERROR_SOCKET_TIMEVALALLOCFAIL HYPORT_ERROR_SOCKET_BASE-43 /* Unable to allocate the timeval structure */ +#define HYPORT_ERROR_SOCKET_LINGERALLOCFAIL HYPORT_ERROR_SOCKET_BASE-44 /* Unable to allocate the linger structure */ +#define HYPORT_ERROR_SOCKET_IPMREQALLOCFAIL HYPORT_ERROR_SOCKET_BASE-45 /* Unable to allocate the ipmreq structure */ +#define HYPORT_ERROR_SOCKET_FDSETALLOCFAIL HYPORT_ERROR_SOCKET_BASE-46 /* Unable to allocate the fdset structure */ +#define HYPORT_ERROR_SOCKET_OPFAILED HYPORT_ERROR_SOCKET_BASE-47 +#define HYPORT_ERROR_SOCKET_VALUE_NULL HYPORT_ERROR_SOCKET_BASE-48 /* The value indexed was NULL */ +#define HYPORT_ERROR_SOCKET_CONNECTION_REFUSED HYPORT_ERROR_SOCKET_BASE-49 /* connection was refused */ +#define HYPORT_ERROR_SOCKET_ENETUNREACH HYPORT_ERROR_SOCKET_BASE-50 /* network is not reachable */ +#define HYPORT_ERROR_SOCKET_EACCES HYPORT_ERROR_SOCKET_BASE-51 /* permissions do not allow action on socket */ +#define HYPORT_ERROR_SOCKET_WAS_CLOSED (HYPORT_ERROR_SOCKET_BASE-52) +#define HYPORT_ERROR_SOCKET_EINPROGRESS (HYPORT_ERROR_SOCKET_BASE-53) +#define HYPORT_ERROR_SOCKET_ALREADYINPROGRESS (HYPORT_ERROR_SOCKET_BASE-54) + +#define HYPORT_ERROR_SOCKET_FIRST_ERROR_NUMBER HYPORT_ERROR_SOCKET_BASE +#define HYPORT_ERROR_SOCKET_LAST_ERROR_NUMBER HYPORT_ERROR_SOCKET_VALUE_NULL /* Equals last used error code */ +/** + * @name File Errors + * Error codes for file operations. + * + * @internal HYPORT_ERROR_FILE* range from -300 to -349 avoid overlap + * @{ + */ +#define HYPORT_ERROR_FILE_BASE -300 +#define HYPORT_ERROR_FILE_OPFAILED (HYPORT_ERROR_FILE_BASE) +#define HYPORT_ERROR_FILE_EOF (HYPORT_ERROR_FILE_BASE-1) +#define HYPORT_ERROR_FILE_NOPERMISSION (HYPORT_ERROR_FILE_BASE-2) +#define HYPORT_ERROR_FILE_NOTFOUND (HYPORT_ERROR_FILE_BASE-3) +#define HYPORT_ERROR_FILE_NAMETOOLONG (HYPORT_ERROR_FILE_BASE-4) +#define HYPORT_ERROR_FILE_DISKFULL (HYPORT_ERROR_FILE_BASE-5) +#define HYPORT_ERROR_FILE_EXIST (HYPORT_ERROR_FILE_BASE-6) +#define HYPORT_ERROR_FILE_SYSTEMFULL (HYPORT_ERROR_FILE_BASE-7) +#define HYPORT_ERROR_FILE_NOENT (HYPORT_ERROR_FILE_BASE-8) +#define HYPORT_ERROR_FILE_NOTDIR (HYPORT_ERROR_FILE_BASE-9) +#define HYPORT_ERROR_FILE_LOOP (HYPORT_ERROR_FILE_BASE-10) +#define HYPORT_ERROR_FILE_BADF (HYPORT_ERROR_FILE_BASE-11) +#define HYPORT_ERROR_FILE_WOULDBLOCK (HYPORT_ERROR_FILE_BASE-12) +#define HYPORT_ERROR_FILE_INVAL (HYPORT_ERROR_FILE_BASE-13) +#define HYPORT_ERROR_FILE_LOCKED (HYPORT_ERROR_FILE_BASE-14) +/** @} */ + +#endif /* hyporterror_h */ diff --git a/tests/nbody-java/hysock.h b/tests/nbody-java/hysock.h new file mode 100644 index 0000000000000..4e41c9fa3182c --- /dev/null +++ b/tests/nbody-java/hysock.h @@ -0,0 +1,288 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if !defined(hysock_h) +#define hysock_h +/******************************************************\ + Portable socket library implementation. +\******************************************************/ +#include "xmlvm-hy.h" +#include +#include +#include +#include +#include +#include +#include +#include + +#if !defined(ZOS) +#include +#else /* !defined(ZOS) */ +#include +#endif /* !defined(ZOS) */ + +#include +#include +#include + +#if !defined(ZOS) +#if !defined(MACOSX) && !defined(__CYGWIN__) +#include +#endif +#else /* !defined(ZOS) */ +#include +#include +#endif /* !defined(ZOS) */ + +#include "hysocket.h" +#include "hycomp.h" +// #include "hyport.h" +#if defined(DEBUG) +#define HYSOCKDEBUG(x, err) printf(x, err) +#define HYSOCKDEBUGH(x, err) printf(x, err) +#define HYSOCKDEBUGPRINT(x) printf(x) +#else +#define HYSOCKDEBUG(x, err) +#define HYSOCKDEBUGH(x, err) +#define HYSOCKDEBUGPRINT(x) +#endif +/* the following defines are used to determine how gethostby*_r calls should be handled.*/ +/* HOSTENT_DATA_R: if the HOSTENT_DATA structure is used */ +#define HOSTENT_DATA_R (defined(AIX)) +/* GLIBC_R: uses the GLIBC versions */ +#define GLIBC_R (defined(LINUX)) +/* ORIGINAL_R: the original gethostby* call is thread safe */ +#define ORIGINAL_R defined(FREEBSD) +/* TOFIX: FreeBSD man page says: + * Though these functions are thread-safe, still it is recommended to use + * the getaddrinfo(3) family of functions, instead. + */ +/* NO_R: gethostby*_r calls do not exist and the normal gethostby* calls are not threadsafe */ +#define NO_R (defined(MACOSX) || defined(__CYGWIN__)) +/* OTHER_R: everything else */ +#define OTHER_R ((!HOSTENT_DATA_R)&&(!GLIBC_R)&&(!ORIGINAL_R)&&(!NO_R)) +/* Converts (seconds, microseconds) to milliseconds */ +#define TO_MILLIS(sec, microsec) (sec * 1000 + (microsec + 999) / 1000) +/* os types */ +typedef int OSSOCKET; /* as returned by socket() */ +typedef struct sockaddr_in OSSOCKADDR; /* as used by bind() and friends */ +typedef struct hostent OSHOSTENT; +typedef fd_set OSFDSET; +typedef struct timeval OSTIMEVAL; +typedef struct linger OSLINGER; +typedef struct sockaddr OSADDR; +typedef struct sockaddr_in6 OSSOCKADDR_IN6; /* IPv6 */ +typedef struct ipv6_mreq OSIPMREQ6; +typedef struct addrinfo OSADDRINFO; /* IPv6 */ +typedef struct sockaddr_storage OSSOCKADDR_STORAGE; /* IPv6 */ +/* + * Socket Types + */ +#define OSSOCK_ANY 0 /* for getaddrinfo hints */ +#define OSSOCK_STREAM SOCK_STREAM /* stream socket */ +#define OSSOCK_DGRAM SOCK_DGRAM /* datagram socket */ +#define OSSOCK_RAW SOCK_RAW /* raw-protocol interface */ +#define OSSOCK_RDM SOCK_RDM /* reliably-delivered message */ +#define OSSOCK_SEQPACKET SOCK_SEQPACKET /* sequenced packet stream */ +#if defined(HOSTENT_DATA_R) +typedef struct hostent_data OSHOSTENT_DATA; +#endif +typedef struct ip_mreq OSIPMREQ; +#define OSSOMAXCONN SOMAXCONN +#define OS_BADSOCKET -1 /* Provide bad socket constant */ +/* defines for socket levels */ +#define OS_SOL_SOCKET SOL_SOCKET +#define OS_IPPROTO_TCP IPPROTO_TCP +#define OS_IPPROTO_IP IPPROTO_IP +#if defined(IPv6_FUNCTION_SUPPORT) +#define OS_IPPROTO_IPV6 IPPROTO_IPV6 +#endif +/* defines for socket options */ +#define OS_SO_LINGER SO_LINGER +#define OS_SO_KEEPALIVE SO_KEEPALIVE +#define OS_TCP_NODELAY TCP_NODELAY +#define OS_SO_REUSEADDR SO_REUSEADDR +#define OS_SO_SNDBUF SO_SNDBUF +#define OS_SO_RCVBUF SO_RCVBUF +#define OS_SO_BROADCAST SO_BROADCAST /* Support datagram broadcasts */ +#define OS_SO_OOBINLINE SO_OOBINLINE +#define OS_IP_TOS IP_TOS +/* defines for socket options, multicast */ +#define OS_MCAST_TTL IP_MULTICAST_TTL +#define OS_MCAST_ADD_MEMBERSHIP IP_ADD_MEMBERSHIP +#define OS_MCAST_DROP_MEMBERSHIP IP_DROP_MEMBERSHIP +#define OS_MCAST_INTERFACE IP_MULTICAST_IF +#define OS_MCAST_LOOP IP_MULTICAST_LOOP +#if defined(IPv6_FUNCTION_SUPPORT) +#define OS_MCAST_INTERFACE_2 IPV6_MULTICAST_IF +#if defined(FREEBSD) || defined(MACOSX) || defined(ZOS) +#define OS_IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP +#define OS_IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP +#else +#define OS_IPV6_ADD_MEMBERSHIP IPV6_ADD_MEMBERSHIP +#define OS_IPV6_DROP_MEMBERSHIP IPV6_DROP_MEMBERSHIP +#endif +#endif +/* defines for the unix error constants. These may be overriden for specific platforms. */ +#define HYPORT_ERROR_SOCKET_UNIX_CONNRESET ECONNRESET +#define HYPORT_ERROR_SOCKET_UNIX_EAGAIN EAGAIN +#define HYPORT_ERROR_SOCKET_UNIX_EAFNOSUPPORT EAFNOSUPPORT +#define HYPORT_ERROR_SOCKET_UNIX_EBADF EBADF +#define HYPORT_ERROR_SOCKET_UNIX_ECONNRESET ECONNRESET +#define HYPORT_ERROR_SOCKET_UNIX_EINVAL EINVAL +#define HYPORT_ERROR_SOCKET_UNIX_EINTR EINTR +#define HYPORT_ERROR_SOCKET_UNIX_EFAULT EFAULT +#define HYPORT_ERROR_SOCKET_UNIX_ENOPROTOOPT ENOPROTOOPT +#define HYPORT_ERROR_SOCKET_UNIX_ENOTCONN ENOTCONN +#define HYPORT_ERROR_SOCKET_UNIX_EPROTONOSUPPORT EPROTONOSUPPORT +#define HYPORT_ERROR_SOCKET_UNIX_HOSTNOTFOUND HOST_NOT_FOUND +#define HYPORT_ERROR_SOCKET_UNIX_ENOBUFS ENOBUFS +#define HYPORT_ERROR_SOCKET_UNIX_NODATA NO_DATA +#define HYPORT_ERROR_SOCKET_UNIX_NORECOVERY NO_RECOVERY +#define HYPORT_ERROR_SOCKET_UNIX_ENOTSOCK ENOTSOCK +#define HYPORT_ERROR_SOCKET_UNIX_TRYAGAIN TRY_AGAIN +#define HYPORT_ERROR_SOCKET_UNIX_EOPNOTSUP EOPNOTSUPP +#define HYPORT_ERROR_SOCKET_UNIX_ETIMEDOUT ETIMEDOUT +#define HYPORT_ERROR_SOCKET_UNIX_CONNREFUSED ECONNREFUSED +#define HYPORT_ERROR_SOCKET_UNIX_EINPROGRESS EINPROGRESS +#define HYPORT_ERROR_SOCKET_UNIX_ENETUNREACH ENETUNREACH +#define HYPORT_ERROR_SOCKET_UNIX_EACCES EACCES +/* platform constants */ +#define HYSOCK_MAXCONN OSSOMAXCONN; +#define HYSOCK_BADSOCKET OS_BADSOCKET /* Provide bad socket constant */ +/* defines added for IPv6 */ +#define OS_AF_INET4 AF_INET +#define OS_AF_UNSPEC AF_UNSPEC +#define OS_PF_UNSPEC PF_UNSPEC +#define OS_PF_INET4 PF_INET +#define OS_INET4_ADDRESS_LENGTH INET_ADDRSTRLEN +#if defined(NI_MAXHOST) +#define OSNIMAXHOST NI_MAXHOST +#define OSNIMAXSERV NI_MAXSERV +#else +#define OSNIMAXHOST 1025 +#define OSNIMAXSERV 32 +#endif + +#if defined(AF_INET6) +#define OS_AF_INET6 AF_INET6 +#define OS_PF_INET6 PF_INET6 +#define OS_INET6_ADDRESS_LENGTH INET6_ADDRSTRLEN +#else +#define OS_AF_INET6 -1 +#define OS_PF_INET6 -1 +#define OS_INET6_ADDRESS_LENGTH 46 +#endif +/*platform structs */ +typedef struct hysocket_struct +{ + OSSOCKET sock; + U_16 family; +} hysocket_struct; +/* The sockets are now structs */ +#if defined(NO_LVALUE_CASTING) +#define SOCKET_CAST(x) ((struct hysocket_struct*) x)->sock +#else +#define SOCKET_CAST(x) ((struct hysocket_struct*) x)->sock +#endif +typedef struct hysockaddr_struct +{ +#if defined(IPv6_FUNCTION_SUPPORT) + OSSOCKADDR_STORAGE addr; +#else + OSSOCKADDR addr; +#endif +} hysockaddr_struct; +typedef struct hyhostent_struct +{ + OSHOSTENT *entity; +} hyhostent_struct; +typedef struct hyfdset_struct +{ + OSFDSET handle; +} hyfdset_struct; +typedef struct hytimeval_struct +{ + OSTIMEVAL time; +} hytimeval_struct; +typedef struct hylinger_struct +{ + OSLINGER linger; +} hylinger_struct; +typedef struct hyipmreq_struct +{ + OSIPMREQ addrpair; +} hyipmreq_struct; +#define GET_HOST_BUFFER_SIZE 512 +/* The gethostBuffer is allocated bufferSize + EXTRA_SPACE, while gethostby*_r is only aware of bufferSize + * because there seems to be a bug on Linux 386 where gethostbyname_r writes past the end of the + * buffer. This bug has not been observed on other platforms, but EXTRA_SPACE is added anyway as a precaution.*/ +#define EXTRA_SPACE 128 +/*size is 16 because an IP string is "xxx.xxx.xxx.xxx" + 1 null character */ +#define NTOA_SIZE 16 +/** new structure for IPv6 mulitcast requests */ +typedef struct hyipv6_mreq_struct +{ +#if defined(IPv6_FUNCTION_SUPPORT) + OSIPMREQ6 mreq; +#else + int dummy; +#endif +} hyipv6_mreq_struct; +/* structure for returning either and IPV4 or IPV6 ip address */ +typedef struct hyipAddress_struct +{ + union + { +#if defined(IPv6_FUNCTION_SUPPORT) + U_8 bytes[sizeof (struct in6_addr)]; +#else + U_8 bytes[sizeof (struct in_addr)]; +#endif +struct in_addr inAddr; +#if defined(IPv6_FUNCTION_SUPPORT) + struct in6_addr in6Addr; +#endif +} addr; + U_32 length; + U_32 scope; +} hyipAddress_struct; +/* structure for returning network interface information */ +typedef struct hyNetworkInterface_struct +{ + char *name; + char *displayName; + U_32 numberAddresses; + U_32 index; + struct hyipAddress_struct *addresses; +} hyNetworkInterface_struct; +/* array of network interface structures */ +typedef struct hyNetworkInterfaceArray_struct +{ + U_32 length; + struct hyNetworkInterface_struct *elements; +} hyNetworkInterfaceArray_struct; +/** new structure for IPv6 addrinfo will either point to a hostent or + an addr info depending on the IPv6 support for this OS */ +typedef struct hyaddrinfo_struct +{ + void *addr_info; + int length; +} hyaddrinfo_struct; +#endif + diff --git a/tests/nbody-java/hysocket.h b/tests/nbody-java/hysocket.h new file mode 100644 index 0000000000000..0089783599acd --- /dev/null +++ b/tests/nbody-java/hysocket.h @@ -0,0 +1,103 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/******************************************************\ + Portable socket library header. +\******************************************************/ + +#if !defined(hysocket_h) +#define hysocket_h + +#include +#include "hyporterror.h" + +/* Socket types, stream & datagram */ +#define HYSOCK_STREAM 0 +#define HYSOCK_DGRAM 1 +#define HYSOCK_AFINET 2 +#define HYSOCK_ANY 3 +#define HYSOCK_DEFPROTOCOL 0 +#define HYSOCK_INADDR_ANY (U_32)0 +#define HYSOCK_NOFLAGS (U_32)0 /* The default flag argument value, as in a recv */ +#define HYSOCK_INADDR_LEN 4 /* The length in bytes of a binary IPv4 internet address */ +#define HYSOCK_INADDR6_LEN 16 /* The length in bytes of a binary IPv6 internet address */ + +/* For getaddrinfo (IPv6) -- socket types */ +#define HYSOCKET_ANY 0 /* for getaddrinfo hints */ +#define HYSOCKET_STREAM 1 /* stream socket */ +#define HYSOCKET_DGRAM 2 /* datagram socket */ +#define HYSOCKET_RAW 3 /* raw-protocol interface */ +#define HYSOCKET_RDM 4 /* reliably-delivered message */ +#define HYSOCKET_SEQPACKET 5 /* sequenced packet stream */ + +/** address family */ +#define HYADDR_FAMILY_UNSPEC 0 /* IPv6 */ +#define HYADDR_FAMILY_AFINET4 2 /* IPv6 */ +#define HYADDR_FAMILY_AFINET6 23 /* IPv6 */ + +/** protocol family */ +#define HYPROTOCOL_FAMILY_UNSPEC HYADDR_FAMILY_UNSPEC /* IPv6 */ +#define HYPROTOCOL_FAMILY_INET4 HYADDR_FAMILY_AFINET4 /* IPv6 */ +#define HYPROTOCOL_FAMILY_INET6 HYADDR_FAMILY_AFINET6 /* IPv6 */ + +/* Portable defines for socket levels */ +#define HY_SOL_SOCKET 1 +#define HY_IPPROTO_TCP 2 +#define HY_IPPROTO_IP 3 +#define HY_IPPROTO_IPV6 4 + +/* Portable defines for socket options */ +#define HY_SO_LINGER 1 +#define HY_SO_KEEPALIVE 2 +#define HY_TCP_NODELAY 3 +#define HY_MCAST_TTL 4 +#define HY_MCAST_ADD_MEMBERSHIP 5 +#define HY_MCAST_DROP_MEMBERSHIP 6 +#define HY_MCAST_INTERFACE 7 +#define HY_SO_REUSEADDR 8 +#define HY_SO_REUSEPORT 9 +#define HY_SO_SNDBUF 11 +#define HY_SO_RCVBUF 12 +#define HY_SO_BROADCAST 13 +#define HY_SO_OOBINLINE 14 +#define HY_IP_MULTICAST_LOOP 15 +#define HY_IP_TOS 16 +#define HY_MCAST_INTERFACE_2 17 +#define HY_IPV6_ADD_MEMBERSHIP 18 +#define HY_IPV6_DROP_MEMBERSHIP 19 + +/* Portable defines for socket read/write options */ +#define HYSOCK_MSG_PEEK 1 +#define HYSOCK_MSG_OOB 2 + +/* Platform Constants */ +typedef struct hysocket_struct *hysocket_t; +typedef struct hysockaddr_struct *hysockaddr_t; +typedef struct hyhostent_struct *hyhostent_t; +typedef struct hyfdset_struct *hyfdset_t; +typedef struct hytimeval_struct *hytimeval_t; +typedef struct hylinger_struct *hylinger_t; +typedef struct hyipmreq_struct *hyipmreq_t; +typedef struct hyaddrinfo_struct *hyaddrinfo_t; /* IPv6 */ +typedef struct hyipv6_mreq_struct *hyipv6_mreq_t; /* IPv6 */ + +/* constants for calling multi-call functions */ +#define HY_PORT_SOCKET_STEP_START 10 +#define HY_PORT_SOCKET_STEP_CHECK 20 +#define HY_PORT_SOCKET_STEP_DONE 30 + +#endif /* hysocket_h */ diff --git a/tests/nbody-java/java_io_Closeable.c b/tests/nbody-java/java_io_Closeable.c new file mode 100644 index 0000000000000..f9868c6baf928 --- /dev/null +++ b/tests/nbody-java/java_io_Closeable.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_io_Closeable.h" + +__TIB_DEFINITION_java_io_Closeable __TIB_java_io_Closeable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_Closeable, // classInitializer + "java.io.Closeable", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_io_Closeable; +JAVA_OBJECT __CLASS_java_io_Closeable_1ARRAY; +JAVA_OBJECT __CLASS_java_io_Closeable_2ARRAY; +JAVA_OBJECT __CLASS_java_io_Closeable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_io_Closeable() +{ + staticInitializerLock(&__TIB_java_io_Closeable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_Closeable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_Closeable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_Closeable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_Closeable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_Closeable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_Closeable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.Closeable") + __INIT_IMPL_java_io_Closeable(); + } +} + +void __INIT_IMPL_java_io_Closeable() +{ + __TIB_java_io_Closeable.numInterfaces = 0; + __TIB_java_io_Closeable.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_Closeable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_io_Closeable.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_Closeable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_Closeable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_io_Closeable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_Closeable); + __TIB_java_io_Closeable.clazz = __CLASS_java_io_Closeable; + __TIB_java_io_Closeable.baseType = JAVA_NULL; + __CLASS_java_io_Closeable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Closeable); + __CLASS_java_io_Closeable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Closeable_1ARRAY); + __CLASS_java_io_Closeable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Closeable_2ARRAY); + + __TIB_java_io_Closeable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_io_Closeable.h b/tests/nbody-java/java_io_Closeable.h new file mode 100644 index 0000000000000..b6886df4b72da --- /dev/null +++ b/tests/nbody-java/java_io_Closeable.h @@ -0,0 +1,28 @@ +#ifndef __JAVA_IO_CLOSEABLE__ +#define __JAVA_IO_CLOSEABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_io_Closeable_close__ 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_io_Closeable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_io_Closeable; +extern JAVA_OBJECT __CLASS_java_io_Closeable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_Closeable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_Closeable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_io_Closeable +#define XMLVM_FORWARD_DECL_java_io_Closeable +typedef struct java_io_Closeable java_io_Closeable; +#endif + +void __INIT_java_io_Closeable(); +void __INIT_IMPL_java_io_Closeable(); + +#endif diff --git a/tests/nbody-java/java_io_File.c b/tests/nbody-java/java_io_File.c new file mode 100644 index 0000000000000..9faa0189155af --- /dev/null +++ b/tests/nbody-java/java_io_File.c @@ -0,0 +1,4503 @@ +#include "xmlvm.h" +#include "java_io_IOException.h" +#include "java_lang_Character.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_RuntimePermission.h" +#include "java_lang_SecurityManager.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_security_AccessController.h" +#include "java_util_ArrayList.h" +#include "java_util_List.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" +#include "org_apache_harmony_luni_util_PriviAction.h" +#include "org_apache_harmony_luni_util_Util.h" + +#include "java_io_File.h" + +#define XMLVM_CURRENT_CLASS_NAME File +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_File + +__TIB_DEFINITION_java_io_File __TIB_java_io_File = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_File, // classInitializer + "java.io.File", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_io_File), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_File; +JAVA_OBJECT __CLASS_java_io_File_1ARRAY; +JAVA_OBJECT __CLASS_java_io_File_2ARRAY; +JAVA_OBJECT __CLASS_java_io_File_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_io_File_serialVersionUID; +static JAVA_OBJECT _STATIC_java_io_File_EMPTY_STRING; +static JAVA_CHAR _STATIC_java_io_File_separatorChar; +static JAVA_OBJECT _STATIC_java_io_File_separator; +static JAVA_CHAR _STATIC_java_io_File_pathSeparatorChar; +static JAVA_OBJECT _STATIC_java_io_File_pathSeparator; +static JAVA_INT _STATIC_java_io_File_counter; +static JAVA_INT _STATIC_java_io_File_counterBase; +static JAVA_OBJECT _STATIC_java_io_File_tempFileLocker; +static JAVA_BOOLEAN _STATIC_java_io_File_caseSensitive; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_File() +{ + staticInitializerLock(&__TIB_java_io_File); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_File.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_File.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_File); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_File.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_File.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_File.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.File") + __INIT_IMPL_java_io_File(); + } +} + +void __INIT_IMPL_java_io_File() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_io_File.newInstanceFunc = __NEW_INSTANCE_java_io_File; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_File.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_io_File.vtable[1] = (VTABLE_PTR) &java_io_File_equals___java_lang_Object; + __TIB_java_io_File.vtable[4] = (VTABLE_PTR) &java_io_File_hashCode__; + __TIB_java_io_File.vtable[5] = (VTABLE_PTR) &java_io_File_toString__; + __TIB_java_io_File.vtable[6] = (VTABLE_PTR) &java_io_File_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_io_File.numImplementedInterfaces = 2; + __TIB_java_io_File.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_io_File.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_io_File.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_io_File.itableBegin = &__TIB_java_io_File.itable[0]; + __TIB_java_io_File.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_io_File.vtable[6]; + + _STATIC_java_io_File_serialVersionUID = 301077366599181567; + _STATIC_java_io_File_EMPTY_STRING = (java_lang_String*) xmlvm_create_java_string_from_pool(21); + _STATIC_java_io_File_separatorChar = 0; + _STATIC_java_io_File_separator = (java_lang_String*) JAVA_NULL; + _STATIC_java_io_File_pathSeparatorChar = 0; + _STATIC_java_io_File_pathSeparator = (java_lang_String*) JAVA_NULL; + _STATIC_java_io_File_counter = 0; + _STATIC_java_io_File_counterBase = 0; + _STATIC_java_io_File_tempFileLocker = (java_lang_Object*) JAVA_NULL; + _STATIC_java_io_File_caseSensitive = 0; + + __TIB_java_io_File.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_File.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_File.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_File.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_File.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_File.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_File.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_File.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_File = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_File); + __TIB_java_io_File.clazz = __CLASS_java_io_File; + __TIB_java_io_File.baseType = JAVA_NULL; + __CLASS_java_io_File_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_File); + __CLASS_java_io_File_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_File_1ARRAY); + __CLASS_java_io_File_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_File_2ARRAY); + java_io_File___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_File] + //XMLVM_END_WRAPPER + + __TIB_java_io_File.classInitialized = 1; +} + +void __DELETE_java_io_File(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_File] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_File(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_io_File*) me)->fields.java_io_File.path_ = (java_lang_String*) JAVA_NULL; + ((java_io_File*) me)->fields.java_io_File.properPath_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_File] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_File() +{ XMLVM_CLASS_INIT(java_io_File) +java_io_File* me = (java_io_File*) XMLVM_MALLOC(sizeof(java_io_File)); + me->tib = &__TIB_java_io_File; + __INIT_INSTANCE_MEMBERS_java_io_File(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_File] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_File() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_io_File_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_serialVersionUID; +} + +void java_io_File_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_serialVersionUID = v; +} + +JAVA_OBJECT java_io_File_GET_EMPTY_STRING() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_EMPTY_STRING; +} + +void java_io_File_PUT_EMPTY_STRING(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_EMPTY_STRING = v; +} + +JAVA_CHAR java_io_File_GET_separatorChar() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_separatorChar; +} + +void java_io_File_PUT_separatorChar(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_separatorChar = v; +} + +JAVA_OBJECT java_io_File_GET_separator() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_separator; +} + +void java_io_File_PUT_separator(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_separator = v; +} + +JAVA_CHAR java_io_File_GET_pathSeparatorChar() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_pathSeparatorChar; +} + +void java_io_File_PUT_pathSeparatorChar(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_pathSeparatorChar = v; +} + +JAVA_OBJECT java_io_File_GET_pathSeparator() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_pathSeparator; +} + +void java_io_File_PUT_pathSeparator(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_pathSeparator = v; +} + +JAVA_INT java_io_File_GET_counter() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_counter; +} + +void java_io_File_PUT_counter(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_counter = v; +} + +JAVA_INT java_io_File_GET_counterBase() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_counterBase; +} + +void java_io_File_PUT_counterBase(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_counterBase = v; +} + +JAVA_OBJECT java_io_File_GET_tempFileLocker() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_tempFileLocker; +} + +void java_io_File_PUT_tempFileLocker(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_tempFileLocker = v; +} + +JAVA_BOOLEAN java_io_File_GET_caseSensitive() +{ + XMLVM_CLASS_INIT(java_io_File) + return _STATIC_java_io_File_caseSensitive; +} + +void java_io_File_PUT_caseSensitive(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(java_io_File) +_STATIC_java_io_File_caseSensitive = v; +} + +//XMLVM_NATIVE[void java_io_File_oneTimeInitialization__()] + +void java_io_File___INIT____java_io_File_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File___INIT____java_io_File_java_lang_String] + XMLVM_ENTER_METHOD("java.io.File", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("File.java", 116) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("File.java", 117) + if (_r3.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 118) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("File.java", 120) + if (_r2.o != JAVA_NULL) goto label20; + XMLVM_SOURCE_POSITION("File.java", 121) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_fixSlashes___java_lang_String(_r1.o, _r3.o); + XMLVM_CHECK_NPE(1) + ((java_io_File*) _r1.o)->fields.java_io_File.path_ = _r0.o; + label19:; + XMLVM_SOURCE_POSITION("File.java", 125) + XMLVM_EXIT_METHOD() + return; + label20:; + XMLVM_SOURCE_POSITION("File.java", 123) + XMLVM_CHECK_NPE(2) + _r0.o = java_io_File_getPath__(_r2.o); + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_calculatePath___java_lang_String_java_lang_String(_r1.o, _r0.o, _r3.o); + XMLVM_CHECK_NPE(1) + ((java_io_File*) _r1.o)->fields.java_io_File.path_ = _r0.o; + goto label19; + //XMLVM_END_WRAPPER +} + +void java_io_File___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.io.File", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("File.java", 133) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("File.java", 135) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_fixSlashes___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + ((java_io_File*) _r1.o)->fields.java_io_File.path_ = _r0.o; + XMLVM_SOURCE_POSITION("File.java", 136) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_File___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.io.File", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("File.java", 149) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("File.java", 150) + if (_r3.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 151) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("File.java", 153) + if (_r2.o != JAVA_NULL) goto label20; + XMLVM_SOURCE_POSITION("File.java", 154) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_fixSlashes___java_lang_String(_r1.o, _r3.o); + XMLVM_CHECK_NPE(1) + ((java_io_File*) _r1.o)->fields.java_io_File.path_ = _r0.o; + label19:; + XMLVM_SOURCE_POSITION("File.java", 158) + XMLVM_EXIT_METHOD() + return; + label20:; + XMLVM_SOURCE_POSITION("File.java", 156) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_calculatePath___java_lang_String_java_lang_String(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(1) + ((java_io_File*) _r1.o)->fields.java_io_File.path_ = _r0.o; + goto label19; + //XMLVM_END_WRAPPER +} + +void java_io_File___INIT____java_net_URI(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File___INIT____java_net_URI] + XMLVM_ENTER_METHOD("java.io.File", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("File.java", 174) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("File.java", 176) + XMLVM_CHECK_NPE(1) + java_io_File_checkURI___java_net_URI(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("File.java", 177) + + + // Red class access removed: java.net.URI::getPath + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_fixSlashes___java_lang_String(_r1.o, _r0.o); + XMLVM_CHECK_NPE(1) + ((java_io_File*) _r1.o)->fields.java_io_File.path_ = _r0.o; + XMLVM_SOURCE_POSITION("File.java", 178) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_calculatePath___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_calculatePath___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.io.File", "calculatePath", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.o = n1; + _r5.o = n2; + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("File.java", 181) + XMLVM_CHECK_NPE(3) + _r4.o = java_io_File_fixSlashes___java_lang_String(_r3.o, _r4.o); + XMLVM_SOURCE_POSITION("File.java", 182) + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o); + if (_r1.i == 0) goto label22; + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[1])(_r4.o, _r2.o); + if (_r1.i == 0) goto label116; + label22:; + XMLVM_SOURCE_POSITION("File.java", 184) + XMLVM_CHECK_NPE(3) + _r5.o = java_io_File_fixSlashes___java_lang_String(_r3.o, _r5.o); + _r0.i = 0; + label27:; + XMLVM_SOURCE_POSITION("File.java", 186) + XMLVM_SOURCE_POSITION("File.java", 188) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + if (_r0.i >= _r1.i) goto label44; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r0.i); + _r2.i = java_io_File_GET_separatorChar(); + if (_r1.i != _r2.i) goto label44; + XMLVM_SOURCE_POSITION("File.java", 189) + _r0.i = _r0.i + 1; + goto label27; + label44:; + XMLVM_SOURCE_POSITION("File.java", 191) + if (_r0.i <= 0) goto label54; + XMLVM_SOURCE_POSITION("File.java", 192) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + XMLVM_CHECK_NPE(5) + _r5.o = java_lang_String_substring___int_int(_r5.o, _r0.i, _r1.i); + label54:; + XMLVM_SOURCE_POSITION("File.java", 196) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + if (_r1.i <= 0) goto label92; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r4.o)->tib->vtable[6])(_r4.o, _r1.i); + _r2.i = java_io_File_GET_separatorChar(); + if (_r1.i != _r2.i) goto label92; + XMLVM_SOURCE_POSITION("File.java", 198) + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + label91:; + XMLVM_SOURCE_POSITION("File.java", 203) + XMLVM_EXIT_METHOD() + return _r1.o; + label92:; + XMLVM_SOURCE_POSITION("File.java", 200) + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + _r2.i = java_io_File_GET_separatorChar(); + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[6])(_r1.o, _r2.i); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + goto label91; + label116:; + _r1 = _r4; + goto label91; + //XMLVM_END_WRAPPER +} + +void java_io_File_checkURI___java_net_URI(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_checkURI___java_net_URI] + XMLVM_ENTER_METHOD("java.io.File", "checkURI", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r7.o = me; + _r8.o = n1; + _r3.i = 2; + _r5.i = 1; + _r4.i = 0; + // "luni.B1" + _r6.o = xmlvm_create_java_string_from_pool(729); + XMLVM_SOURCE_POSITION("File.java", 208) + + + // Red class access removed: java.net.URI::isAbsolute + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label23; + XMLVM_SOURCE_POSITION("File.java", 209) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.AD" + _r2.o = xmlvm_create_java_string_from_pool(730); + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r2.o, _r8.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label23:; + XMLVM_SOURCE_POSITION("File.java", 210) + + + // Red class access removed: java.net.URI::getRawSchemeSpecificPart + XMLVM_RED_CLASS_DEPENDENCY(); + // "/" + _r2.o = xmlvm_create_java_string_from_pool(54); + XMLVM_CHECK_NPE(1) + _r1.i = java_lang_String_startsWith___java_lang_String(_r1.o, _r2.o); + if (_r1.i != 0) goto label47; + XMLVM_SOURCE_POSITION("File.java", 211) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.AE" + _r2.o = xmlvm_create_java_string_from_pool(731); + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r2.o, _r8.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label47:; + XMLVM_SOURCE_POSITION("File.java", 214) + + + // Red class access removed: java.net.URI::getScheme + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.o == JAVA_NULL) goto label61; + XMLVM_SOURCE_POSITION("File.java", 215) + // "file" + _r1.o = xmlvm_create_java_string_from_pool(732); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r1.i != 0) goto label73; + label61:; + XMLVM_SOURCE_POSITION("File.java", 216) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.AF" + _r2.o = xmlvm_create_java_string_from_pool(733); + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r2.o, _r8.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label73:; + XMLVM_SOURCE_POSITION("File.java", 219) + + + // Red class access removed: java.net.URI::getRawPath + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.o == JAVA_NULL) goto label85; + XMLVM_SOURCE_POSITION("File.java", 220) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + if (_r1.i != 0) goto label97; + label85:; + XMLVM_SOURCE_POSITION("File.java", 221) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.B0" + _r2.o = xmlvm_create_java_string_from_pool(734); + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r2.o, _r8.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label97:; + XMLVM_SOURCE_POSITION("File.java", 224) + + + // Red class access removed: java.net.URI::getRawAuthority + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.o == JAVA_NULL) goto label127; + XMLVM_SOURCE_POSITION("File.java", 225) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.B1" + _r2.o = xmlvm_create_java_string_from_pool(729); + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "authority" + _r3.o = xmlvm_create_java_string_from_pool(735); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r3.o; + + + // Red class access removed: java.net.URI::toString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r3.o; + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(_r6.o, _r2.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label127:; + XMLVM_SOURCE_POSITION("File.java", 229) + + + // Red class access removed: java.net.URI::getRawQuery + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.o == JAVA_NULL) goto label157; + XMLVM_SOURCE_POSITION("File.java", 230) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.B1" + _r2.o = xmlvm_create_java_string_from_pool(729); + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "query" + _r3.o = xmlvm_create_java_string_from_pool(736); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r3.o; + + + // Red class access removed: java.net.URI::toString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r3.o; + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(_r6.o, _r2.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label157:; + XMLVM_SOURCE_POSITION("File.java", 234) + + + // Red class access removed: java.net.URI::getRawFragment + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.o == JAVA_NULL) goto label187; + XMLVM_SOURCE_POSITION("File.java", 235) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.B1" + _r2.o = xmlvm_create_java_string_from_pool(729); + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "fragment" + _r3.o = xmlvm_create_java_string_from_pool(737); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r3.o; + + + // Red class access removed: java.net.URI::toString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r3.o; + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(_r6.o, _r2.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label187:; + XMLVM_SOURCE_POSITION("File.java", 238) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_io_File_rootsImpl__()] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_isCaseSensitiveImpl__()] + +JAVA_OBJECT java_io_File_listRoots__() +{ + XMLVM_CLASS_INIT(java_io_File) + //XMLVM_BEGIN_WRAPPER[java_io_File_listRoots__] + XMLVM_ENTER_METHOD("java.io.File", "listRoots", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVM_SOURCE_POSITION("File.java", 253) + _r2.o = java_io_File_rootsImpl__(); + if (_r2.o != JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("File.java", 254) + XMLVM_SOURCE_POSITION("File.java", 255) + _r3.i = 0; + XMLVM_CLASS_INIT(java_io_File) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_io_File, _r3.i); + label9:; + XMLVM_SOURCE_POSITION("File.java", 261) + XMLVM_EXIT_METHOD() + return _r3.o; + label10:; + XMLVM_SOURCE_POSITION("File.java", 257) + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + XMLVM_CLASS_INIT(java_io_File) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_io_File, _r3.i); + _r0.i = 0; + label14:; + XMLVM_SOURCE_POSITION("File.java", 258) + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r0.i >= _r3.i) goto label33; + XMLVM_SOURCE_POSITION("File.java", 259) + _r3.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r4.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r4.o = org_apache_harmony_luni_util_Util_toString___byte_1ARRAY(_r4.o); + XMLVM_CHECK_NPE(3) + java_io_File___INIT____java_lang_String(_r3.o, _r4.o); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.o; + _r0.i = _r0.i + 1; + goto label14; + label33:; + _r3 = _r1; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_fixSlashes___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_fixSlashes___java_lang_String] + XMLVM_ENTER_METHOD("java.io.File", "fixSlashes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.o = me; + _r11.o = n1; + XMLVM_SOURCE_POSITION("File.java", 270) + _r7.i = 1; + XMLVM_SOURCE_POSITION("File.java", 271) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(11) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r11.o)->tib->vtable[8])(_r11.o); + _r3.i = 0; + XMLVM_SOURCE_POSITION("File.java", 272) + _r8.i = java_io_File_GET_separatorChar(); + _r9.i = 47; + if (_r8.i != _r9.i) goto label55; + XMLVM_SOURCE_POSITION("File.java", 273) + _r7.i = 0; + label13:; + XMLVM_SOURCE_POSITION("File.java", 278) + _r0.i = 0; + XMLVM_SOURCE_POSITION("File.java", 279) + XMLVM_CHECK_NPE(11) + _r5.o = java_lang_String_toCharArray__(_r11.o); + _r1.i = 0; + _r4 = _r3; + label20:; + XMLVM_SOURCE_POSITION("File.java", 280) + if (_r1.i >= _r2.i) goto label112; + XMLVM_SOURCE_POSITION("File.java", 281) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("File.java", 282) + _r8.i = java_io_File_GET_separatorChar(); + _r9.i = 92; + if (_r8.i != _r9.i) goto label34; + _r8.i = 92; + if (_r6.i == _r8.i) goto label38; + label34:; + _r8.i = 47; + if (_r6.i != _r8.i) goto label69; + label38:; + XMLVM_SOURCE_POSITION("File.java", 285) + if (_r0.i == 0) goto label42; + if (_r1.i == _r7.i) goto label44; + label42:; + if (_r0.i != 0) goto label141; + label44:; + XMLVM_SOURCE_POSITION("File.java", 286) + _r3.i = _r4.i + 1; + _r8.i = java_io_File_GET_separatorChar(); + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r4.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r8.i; + XMLVM_SOURCE_POSITION("File.java", 287) + _r0.i = 1; + label51:; + _r1.i = _r1.i + 1; + _r4 = _r3; + goto label20; + label55:; + XMLVM_SOURCE_POSITION("File.java", 274) + _r8.i = 2; + if (_r2.i <= _r8.i) goto label13; + _r8.i = 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(11) + _r8.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r11.o)->tib->vtable[6])(_r11.o, _r8.i); + _r9.i = 58; + if (_r8.i != _r9.i) goto label13; + XMLVM_SOURCE_POSITION("File.java", 275) + _r7.i = 2; + goto label13; + label69:; + XMLVM_SOURCE_POSITION("File.java", 291) + _r8.i = 58; + if (_r6.i != _r8.i) goto label139; + if (_r7.i <= 0) goto label139; + _r8.i = 2; + if (_r4.i == _r8.i) goto label88; + _r8.i = 3; + if (_r4.i != _r8.i) goto label139; + _r8.i = 1; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r8.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r9.i = java_io_File_GET_separatorChar(); + if (_r8.i != _r9.i) goto label139; + label88:; + _r8.i = 0; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r8.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r9.i = java_io_File_GET_separatorChar(); + if (_r8.i != _r9.i) goto label139; + XMLVM_SOURCE_POSITION("File.java", 295) + _r8.i = 0; + _r9.i = 1; + _r9.i = _r4.i - _r9.i; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r9.i); + _r9.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r8.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r9.i; + XMLVM_SOURCE_POSITION("File.java", 296) + _r3.i = 1; + _r7.i = 2; + label105:; + XMLVM_SOURCE_POSITION("File.java", 298) + XMLVM_SOURCE_POSITION("File.java", 300) + _r4.i = _r3.i + 1; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r6.i; + XMLVM_SOURCE_POSITION("File.java", 301) + _r0.i = 0; + _r3 = _r4; + goto label51; + label112:; + XMLVM_SOURCE_POSITION("File.java", 305) + if (_r0.i == 0) goto label137; + _r8.i = _r7.i + 1; + if (_r4.i > _r8.i) goto label128; + _r8.i = 2; + if (_r4.i != _r8.i) goto label137; + _r8.i = 0; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r8.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r9.i = java_io_File_GET_separatorChar(); + if (_r8.i == _r9.i) goto label137; + label128:; + XMLVM_SOURCE_POSITION("File.java", 307) + _r3.i = _r4.i + -1; + label130:; + XMLVM_SOURCE_POSITION("File.java", 310) + _r8.o = __NEW_java_lang_String(); + _r9.i = 0; + XMLVM_CHECK_NPE(8) + java_lang_String___INIT____char_1ARRAY_int_int(_r8.o, _r5.o, _r9.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r8.o; + label137:; + _r3 = _r4; + goto label130; + label139:; + _r3 = _r4; + goto label105; + label141:; + _r3 = _r4; + goto label51; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_canRead__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_canRead__] + XMLVM_ENTER_METHOD("java.io.File", "canRead", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("File.java", 322) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_io_File*) _r5.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r2.i != 0) goto label12; + _r2 = _r3; + label11:; + XMLVM_SOURCE_POSITION("File.java", 323) + XMLVM_SOURCE_POSITION("File.java", 330) + XMLVM_EXIT_METHOD() + return _r2.i; + label12:; + XMLVM_SOURCE_POSITION("File.java", 325) + _r1.o = java_lang_System_getSecurityManager__(); + if (_r1.o == JAVA_NULL) goto label23; + XMLVM_SOURCE_POSITION("File.java", 326) + XMLVM_SOURCE_POSITION("File.java", 327) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_io_File*) _r5.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(1) + java_lang_SecurityManager_checkRead___java_lang_String(_r1.o, _r2.o); + label23:; + XMLVM_SOURCE_POSITION("File.java", 329) + XMLVM_CHECK_NPE(5) + _r0.o = java_io_File_properPath___boolean(_r5.o, _r4.i); + XMLVM_CHECK_NPE(5) + _r2.i = java_io_File_existsImpl___byte_1ARRAY(_r5.o, _r0.o); + if (_r2.i == 0) goto label41; + XMLVM_CHECK_NPE(5) + _r2.i = java_io_File_isWriteOnlyImpl___byte_1ARRAY(_r5.o, _r0.o); + if (_r2.i != 0) goto label41; + _r2 = _r4; + goto label11; + label41:; + _r2 = _r3; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_canWrite__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_canWrite__] + XMLVM_ENTER_METHOD("java.io.File", "canWrite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + XMLVM_SOURCE_POSITION("File.java", 343) + _r1.o = java_lang_System_getSecurityManager__(); + if (_r1.o == JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("File.java", 344) + XMLVM_SOURCE_POSITION("File.java", 345) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_io_File*) _r4.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(1) + java_lang_SecurityManager_checkWrite___java_lang_String(_r1.o, _r2.o); + label12:; + XMLVM_SOURCE_POSITION("File.java", 349) + _r0.i = 0; + XMLVM_SOURCE_POSITION("File.java", 350) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_io_File*) _r4.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r2.i <= 0) goto label29; + XMLVM_SOURCE_POSITION("File.java", 351) + XMLVM_CHECK_NPE(4) + _r2.o = java_io_File_properPath___boolean(_r4.o, _r3.i); + XMLVM_CHECK_NPE(4) + _r0.i = java_io_File_existsImpl___byte_1ARRAY(_r4.o, _r2.o); + label29:; + XMLVM_SOURCE_POSITION("File.java", 353) + if (_r0.i == 0) goto label43; + XMLVM_CHECK_NPE(4) + _r2.o = java_io_File_properPath___boolean(_r4.o, _r3.i); + XMLVM_CHECK_NPE(4) + _r2.i = java_io_File_isReadOnlyImpl___byte_1ARRAY(_r4.o, _r2.o); + if (_r2.i != 0) goto label43; + _r2 = _r3; + label42:; + XMLVM_EXIT_METHOD() + return _r2.i; + label43:; + _r2.i = 0; + goto label42; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_io_File_compareTo___java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_compareTo___java_io_File] + XMLVM_ENTER_METHOD("java.io.File", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("File.java", 367) + _r0.i = java_io_File_GET_caseSensitive(); + if (_r0.i == 0) goto label17; + XMLVM_SOURCE_POSITION("File.java", 368) + XMLVM_CHECK_NPE(2) + _r0.o = java_io_File_getPath__(_r2.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_getPath__(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_compareTo___java_lang_String(_r0.o, _r1.o); + label16:; + XMLVM_SOURCE_POSITION("File.java", 370) + XMLVM_EXIT_METHOD() + return _r0.i; + label17:; + XMLVM_CHECK_NPE(2) + _r0.o = java_io_File_getPath__(_r2.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_getPath__(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_compareToIgnoreCase___java_lang_String(_r0.o, _r1.o); + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_delete__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_delete__] + XMLVM_ENTER_METHOD("java.io.File", "delete", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("File.java", 383) + _r1.o = java_lang_System_getSecurityManager__(); + if (_r1.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 384) + XMLVM_SOURCE_POSITION("File.java", 385) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(1) + java_lang_SecurityManager_checkDelete___java_lang_String(_r1.o, _r2.o); + label11:; + XMLVM_SOURCE_POSITION("File.java", 387) + _r2.i = 1; + XMLVM_CHECK_NPE(3) + _r0.o = java_io_File_properPath___boolean(_r3.o, _r2.i); + XMLVM_SOURCE_POSITION("File.java", 388) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r2.i == 0) goto label35; + XMLVM_CHECK_NPE(3) + _r2.i = java_io_File_isDirectoryImpl___byte_1ARRAY(_r3.o, _r0.o); + if (_r2.i == 0) goto label35; + XMLVM_SOURCE_POSITION("File.java", 389) + XMLVM_CHECK_NPE(3) + _r2.i = java_io_File_deleteDirImpl___byte_1ARRAY(_r3.o, _r0.o); + label34:; + XMLVM_SOURCE_POSITION("File.java", 391) + XMLVM_EXIT_METHOD() + return _r2.i; + label35:; + XMLVM_CHECK_NPE(3) + _r2.i = java_io_File_deleteFileImpl___byte_1ARRAY(_r3.o, _r0.o); + goto label34; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_deleteDirImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_deleteFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +void java_io_File_deleteOnExit__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_deleteOnExit__] + XMLVM_ENTER_METHOD("java.io.File", "deleteOnExit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 408) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 409) + XMLVM_SOURCE_POSITION("File.java", 410) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkDelete___java_lang_String(_r0.o, _r1.o); + label11:; + XMLVM_SOURCE_POSITION("File.java", 413) + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + _r1.o = org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY(_r1.o); + + + // Red class access removed: org.apache.harmony.luni.util.DeleteOnExit::addFile + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("File.java", 414) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.io.File", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("File.java", 427) + XMLVM_CLASS_INIT(java_io_File) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_io_File); + if (_r0.i != 0) goto label6; + XMLVM_SOURCE_POSITION("File.java", 428) + _r0.i = 0; + label5:; + XMLVM_SOURCE_POSITION("File.java", 433) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("File.java", 430) + _r0.i = java_io_File_GET_caseSensitive(); + if (_r0.i != 0) goto label23; + XMLVM_SOURCE_POSITION("File.java", 431) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_getPath__(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + goto label5; + label23:; + XMLVM_CHECK_NPE(2) + _r0.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_getPath__(_r3.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_exists__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_exists__] + XMLVM_ENTER_METHOD("java.io.File", "exists", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 448) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r1.i != 0) goto label10; + XMLVM_SOURCE_POSITION("File.java", 449) + _r1.i = 0; + label9:; + XMLVM_SOURCE_POSITION("File.java", 455) + XMLVM_EXIT_METHOD() + return _r1.i; + label10:; + XMLVM_SOURCE_POSITION("File.java", 451) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("File.java", 452) + XMLVM_SOURCE_POSITION("File.java", 453) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label21:; + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r1.i = java_io_File_existsImpl___byte_1ARRAY(_r2.o, _r1.o); + goto label9; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_existsImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_OBJECT java_io_File_getAbsolutePath__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getAbsolutePath__] + XMLVM_ENTER_METHOD("java.io.File", "getAbsolutePath", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 468) + _r1.i = 0; + XMLVM_CHECK_NPE(2) + _r0.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("File.java", 469) + _r1.o = org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY(_r0.o); + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_getAbsoluteFile__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getAbsoluteFile__] + XMLVM_ENTER_METHOD("java.io.File", "getAbsoluteFile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 479) + _r0.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_getAbsolutePath__(_r2.o); + XMLVM_CHECK_NPE(0) + java_io_File___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_getCanonicalPath__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getCanonicalPath__] + XMLVM_ENTER_METHOD("java.io.File", "getCanonicalPath", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + XMLVMElem _r16; + XMLVMElem _r17; + XMLVMElem _r18; + XMLVMElem _r19; + XMLVMElem _r20; + _r20.o = me; + XMLVM_SOURCE_POSITION("File.java", 498) + _r18.i = 0; + _r0 = _r20; + _r1 = _r18; + XMLVM_CHECK_NPE(0) + _r15.o = java_io_File_properPath___boolean(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("File.java", 499) + _r4.o = org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY(_r15.o); + XMLVM_SOURCE_POSITION("File.java", 500) + + + // Red class access removed: org.apache.harmony.luni.internal.io.FileCanonPathCache::get + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r5.o == JAVA_NULL) goto label22; + XMLVM_SOURCE_POSITION("File.java", 502) + _r6 = _r5; + label21:; + XMLVM_SOURCE_POSITION("File.java", 503) + XMLVM_SOURCE_POSITION("File.java", 578) + XMLVM_EXIT_METHOD() + return _r6.o; + label22:; + XMLVM_SOURCE_POSITION("File.java", 505) + _r18.i = java_io_File_GET_separatorChar(); + _r19.i = 47; + _r0 = _r18; + _r1 = _r19; + if (_r0.i != _r1.i) goto label56; + XMLVM_SOURCE_POSITION("File.java", 507) + _r0 = _r15; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r18 = _r0; + _r19.i = 0; + _r0 = _r20; + _r1 = _r15; + _r2 = _r18; + _r3 = _r19; + XMLVM_CHECK_NPE(0) + _r15.o = java_io_File_resolveLink___byte_1ARRAY_int_boolean(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("File.java", 509) + _r0 = _r20; + _r1 = _r15; + XMLVM_CHECK_NPE(0) + _r15.o = java_io_File_resolve___byte_1ARRAY(_r0.o, _r1.o); + label56:; + XMLVM_SOURCE_POSITION("File.java", 511) + _r14.i = 1; + _r8.i = 0; + label58:; + XMLVM_SOURCE_POSITION("File.java", 512) + _r0 = _r15; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r18 = _r0; + _r0 = _r8; + _r1 = _r18; + if (_r0.i >= _r1.i) goto label82; + XMLVM_SOURCE_POSITION("File.java", 513) + XMLVM_CHECK_NPE(15) + XMLVM_CHECK_ARRAY_BOUNDS(_r15.o, _r8.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r15.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r19.i = java_io_File_GET_separatorChar(); + _r0 = _r18; + _r1 = _r19; + if (_r0.i != _r1.i) goto label79; + XMLVM_SOURCE_POSITION("File.java", 514) + _r14.i = _r14.i + 1; + label79:; + _r8.i = _r8.i + 1; + goto label58; + label82:; + XMLVM_SOURCE_POSITION("File.java", 517) + _r0 = _r14; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + _r17 = _r0; + _r16.i = 0; + XMLVM_SOURCE_POSITION("File.java", 519) + _r18.i = java_io_File_GET_separatorChar(); + _r19.i = 47; + _r0 = _r18; + _r1 = _r19; + if (_r0.i == _r1.i) goto label139; + XMLVM_SOURCE_POSITION("File.java", 520) + _r18.i = 0; + XMLVM_CHECK_NPE(15) + XMLVM_CHECK_ARRAY_BOUNDS(_r15.o, _r18.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r15.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r18.i]; + _r19.i = 92; + _r0 = _r18; + _r1 = _r19; + if (_r0.i != _r1.i) goto label185; + XMLVM_SOURCE_POSITION("File.java", 521) + _r0 = _r15; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r18 = _r0; + _r19.i = 1; + _r0 = _r18; + _r1 = _r19; + if (_r0.i <= _r1.i) goto label180; + _r18.i = 1; + XMLVM_CHECK_NPE(15) + XMLVM_CHECK_ARRAY_BOUNDS(_r15.o, _r18.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r15.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r18.i]; + _r19.i = 92; + _r0 = _r18; + _r1 = _r19; + if (_r0.i != _r1.i) goto label180; + _r18.i = 1; + _r16 = _r18; + label139:; + XMLVM_SOURCE_POSITION("File.java", 526) + _r0 = _r15; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r18 = _r0; + _r18.i = _r18.i + 1; + _r0 = _r18; + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + _r13 = _r0; + _r11.i = 0; + _r10.i = 0; + _r7.i = 0; + XMLVM_SOURCE_POSITION("File.java", 528) + XMLVM_CHECK_NPE(17) + XMLVM_CHECK_ARRAY_BOUNDS(_r17.o, _r10.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r17.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i] = _r16.i; + XMLVM_SOURCE_POSITION("File.java", 529) + _r8.i = 0; + label156:; + _r0 = _r15; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r18 = _r0; + _r0 = _r8; + _r1 = _r18; + if (_r0.i > _r1.i) goto label218; + XMLVM_SOURCE_POSITION("File.java", 530) + _r0 = _r8; + _r1 = _r16; + if (_r0.i >= _r1.i) goto label188; + XMLVM_SOURCE_POSITION("File.java", 531) + _r12.i = _r11.i + 1; + XMLVM_CHECK_NPE(15) + XMLVM_CHECK_ARRAY_BOUNDS(_r15.o, _r8.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r15.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r11.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r11.i] = _r18.i; + _r11 = _r12; + label177:; + _r8.i = _r8.i + 1; + goto label156; + label180:; + _r18.i = 0; + _r16 = _r18; + goto label139; + label185:; + XMLVM_SOURCE_POSITION("File.java", 523) + _r16.i = 2; + goto label139; + label188:; + XMLVM_SOURCE_POSITION("File.java", 533) + _r0 = _r15; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r18 = _r0; + _r0 = _r8; + _r1 = _r18; + if (_r0.i == _r1.i) goto label207; + XMLVM_CHECK_NPE(15) + XMLVM_CHECK_ARRAY_BOUNDS(_r15.o, _r8.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r15.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r19.i = java_io_File_GET_separatorChar(); + _r0 = _r18; + _r1 = _r19; + if (_r0.i != _r1.i) goto label332; + label207:; + XMLVM_SOURCE_POSITION("File.java", 534) + _r0 = _r15; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r18 = _r0; + _r0 = _r8; + _r1 = _r18; + if (_r0.i != _r1.i) goto label269; + if (_r7.i != 0) goto label269; + label218:; + XMLVM_SOURCE_POSITION("File.java", 569) + _r18.i = _r16.i + 1; + _r0 = _r11; + _r1 = _r18; + if (_r0.i <= _r1.i) goto label241; + _r18.i = 1; + _r18.i = _r11.i - _r18.i; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r18.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r18.i]; + _r19.i = java_io_File_GET_separatorChar(); + _r0 = _r18; + _r1 = _r19; + if (_r0.i != _r1.i) goto label241; + XMLVM_SOURCE_POSITION("File.java", 571) + _r11.i = _r11.i + -1; + label241:; + XMLVM_SOURCE_POSITION("File.java", 573) + _r18.i = 0; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r11.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r11.i] = _r18.i; + XMLVM_SOURCE_POSITION("File.java", 574) + _r0 = _r20; + _r1 = _r13; + XMLVM_CHECK_NPE(0) + _r13.o = java_io_File_getCanonImpl___byte_1ARRAY(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("File.java", 575) + _r11.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r13.o)); + _r18.i = 0; + XMLVM_SOURCE_POSITION("File.java", 576) + _r0 = _r13; + _r1 = _r18; + _r2 = _r11; + _r5.o = org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY_int_int(_r0.o, _r1.i, _r2.i); + XMLVM_SOURCE_POSITION("File.java", 577) + + + // Red class access removed: org.apache.harmony.luni.internal.io.FileCanonPathCache::put + XMLVM_RED_CLASS_DEPENDENCY(); + _r6 = _r5; + goto label21; + label269:; + XMLVM_SOURCE_POSITION("File.java", 537) + _r18.i = 1; + _r0 = _r7; + _r1 = _r18; + if (_r0.i != _r1.i) goto label278; + XMLVM_SOURCE_POSITION("File.java", 539) + _r7.i = 0; + XMLVM_SOURCE_POSITION("File.java", 540) + goto label177; + label278:; + XMLVM_SOURCE_POSITION("File.java", 542) + _r18.i = 1; + _r0 = _r7; + _r1 = _r18; + if (_r0.i <= _r1.i) goto label314; + XMLVM_SOURCE_POSITION("File.java", 544) + _r18.i = 1; + _r18.i = _r7.i - _r18.i; + _r0 = _r10; + _r1 = _r18; + if (_r0.i <= _r1.i) goto label309; + _r18.i = 1; + _r18.i = _r7.i - _r18.i; + _r18.i = _r10.i - _r18.i; + _r10 = _r18; + label302:; + XMLVM_SOURCE_POSITION("File.java", 546) + XMLVM_CHECK_NPE(17) + XMLVM_CHECK_ARRAY_BOUNDS(_r17.o, _r10.i); + _r18.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r17.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i]; + _r11.i = _r18.i + 1; + _r7.i = 0; + XMLVM_SOURCE_POSITION("File.java", 548) + goto label177; + label309:; + _r18.i = 0; + _r10 = _r18; + goto label302; + label314:; + XMLVM_SOURCE_POSITION("File.java", 550) + _r10.i = _r10.i + 1; + XMLVM_CHECK_NPE(17) + XMLVM_CHECK_ARRAY_BOUNDS(_r17.o, _r10.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r17.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i] = _r11.i; + XMLVM_SOURCE_POSITION("File.java", 551) + _r12.i = _r11.i + 1; + _r18.i = java_io_File_GET_separatorChar(); + _r0 = _r18; + _r0.i = (_r0.i << 24) >> 24; + _r18 = _r0; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r11.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r11.i] = _r18.i; + _r11 = _r12; + XMLVM_SOURCE_POSITION("File.java", 552) + goto label177; + label332:; + XMLVM_SOURCE_POSITION("File.java", 554) + XMLVM_CHECK_NPE(15) + XMLVM_CHECK_ARRAY_BOUNDS(_r15.o, _r8.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r15.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r19.i = 46; + _r0 = _r18; + _r1 = _r19; + if (_r0.i != _r1.i) goto label346; + XMLVM_SOURCE_POSITION("File.java", 555) + _r7.i = _r7.i + 1; + XMLVM_SOURCE_POSITION("File.java", 556) + goto label177; + label346:; + XMLVM_SOURCE_POSITION("File.java", 559) + if (_r7.i <= 0) goto label363; + XMLVM_SOURCE_POSITION("File.java", 560) + _r9.i = 0; + _r12 = _r11; + label350:; + if (_r9.i >= _r7.i) goto label362; + XMLVM_SOURCE_POSITION("File.java", 561) + _r11.i = _r12.i + 1; + _r18.i = 46; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r12.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r12.i] = _r18.i; + _r9.i = _r9.i + 1; + _r12 = _r11; + goto label350; + label362:; + _r11 = _r12; + label363:; + XMLVM_SOURCE_POSITION("File.java", 564) + _r12.i = _r11.i + 1; + XMLVM_CHECK_NPE(15) + XMLVM_CHECK_ARRAY_BOUNDS(_r15.o, _r8.i); + _r18.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r15.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r11.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r11.i] = _r18.i; + XMLVM_SOURCE_POSITION("File.java", 565) + _r7.i = 0; + _r11 = _r12; + goto label177; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_resolve___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_resolve___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.io.File", "resolve", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r12.o = me; + _r13.o = n1; + _r11.i = 0; + _r10.i = 1; + XMLVM_SOURCE_POSITION("File.java", 585) + _r4.i = 1; + _r5 = _r13; + _r2.i = 1; + label5:; + XMLVM_SOURCE_POSITION("File.java", 588) + _r8.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r13.o)); + if (_r2.i > _r8.i) goto label92; + XMLVM_SOURCE_POSITION("File.java", 589) + _r8.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r13.o)); + if (_r2.i == _r8.i) goto label17; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r2.i); + _r8.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r9.i = java_io_File_GET_separatorChar(); + if (_r8.i != _r9.i) goto label87; + label17:; + XMLVM_SOURCE_POSITION("File.java", 590) + _r8.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r13.o)); + _r8.i = _r8.i - _r10.i; + if (_r2.i < _r8.i) goto label29; + _r1 = _r10; + label22:; + if (_r1.i == 0) goto label31; + XMLVM_SOURCE_POSITION("File.java", 592) + _r8.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r8.i != _r10.i) goto label31; + _r8 = _r13; + label28:; + XMLVM_SOURCE_POSITION("File.java", 593) + XMLVM_SOURCE_POSITION("File.java", 617) + XMLVM_EXIT_METHOD() + return _r8.o; + label29:; + _r1 = _r11; + goto label22; + label31:; + XMLVM_SOURCE_POSITION("File.java", 595) + _r3.i = 0; + if (_r5.o != _r13.o) goto label44; + XMLVM_SOURCE_POSITION("File.java", 596) + XMLVM_SOURCE_POSITION("File.java", 597) + _r0 = _r13; + if (_r1.i != 0) goto label40; + XMLVM_SOURCE_POSITION("File.java", 600) + XMLVM_SOURCE_POSITION("File.java", 601) + _r3.i = 1; + XMLVM_SOURCE_POSITION("File.java", 602) + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r2.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r11.i; + label40:; + XMLVM_SOURCE_POSITION("File.java", 616) + if (_r1.i == 0) goto label72; + _r8 = _r0; + goto label28; + label44:; + XMLVM_SOURCE_POSITION("File.java", 605) + _r8.i = _r2.i - _r4.i; + _r7.i = _r8.i + 1; + XMLVM_SOURCE_POSITION("File.java", 606) + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r8.i = _r6.i - _r10.i; + XMLVM_SOURCE_POSITION("File.java", 607) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r8.i); + _r8.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r9.i = java_io_File_GET_separatorChar(); + if (_r8.i != _r9.i) goto label59; + XMLVM_SOURCE_POSITION("File.java", 608) + _r6.i = _r6.i + -1; + label59:; + XMLVM_SOURCE_POSITION("File.java", 610) + _r8.i = _r6.i + _r7.i; + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r8.i); + XMLVM_SOURCE_POSITION("File.java", 611) + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r5.o, _r11.i, _r0.o, _r11.i, _r6.i); + XMLVM_SOURCE_POSITION("File.java", 612) + _r8.i = _r4.i - _r10.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r13.o, _r8.i, _r0.o, _r6.i, _r7.i); + goto label40; + label72:; + XMLVM_SOURCE_POSITION("File.java", 619) + if (_r3.i == 0) goto label90; + _r8 = _r2; + label75:; + XMLVM_CHECK_NPE(12) + _r5.o = java_io_File_resolveLink___byte_1ARRAY_int_boolean(_r12.o, _r0.o, _r8.i, _r10.i); + if (_r3.i == 0) goto label85; + XMLVM_SOURCE_POSITION("File.java", 620) + XMLVM_SOURCE_POSITION("File.java", 621) + _r8.i = 47; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r2.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r8.i; + label85:; + XMLVM_SOURCE_POSITION("File.java", 623) + _r4.i = _r2.i + 1; + label87:; + _r2.i = _r2.i + 1; + goto label5; + label90:; + _r8.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + goto label75; + label92:; + XMLVM_SOURCE_POSITION("File.java", 626) + + + // Red class access removed: java.lang.InternalError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.InternalError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r8.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_resolveLink___byte_1ARRAY_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_resolveLink___byte_1ARRAY_int_boolean] + XMLVM_ENTER_METHOD("java.io.File", "resolveLink", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r7.o = me; + _r8.o = n1; + _r9.i = n2; + _r10.i = n3; + _r6.i = 0; + XMLVM_SOURCE_POSITION("File.java", 636) + _r2.i = 0; + label2:; + XMLVM_SOURCE_POSITION("File.java", 639) + XMLVM_CHECK_NPE(7) + _r1.o = java_io_File_getLinkImpl___byte_1ARRAY(_r7.o, _r8.o); + if (_r1.o != _r8.o) goto label15; + label8:; + XMLVM_SOURCE_POSITION("File.java", 640) + XMLVM_SOURCE_POSITION("File.java", 662) + if (_r2.i == 0) goto label58; + XMLVM_SOURCE_POSITION("File.java", 663) + XMLVM_CHECK_NPE(7) + _r4.o = java_io_File_resolve___byte_1ARRAY(_r7.o, _r8.o); + label14:; + XMLVM_SOURCE_POSITION("File.java", 665) + XMLVM_EXIT_METHOD() + return _r4.o; + label15:; + XMLVM_SOURCE_POSITION("File.java", 643) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r6.i); + _r4.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r5.i = java_io_File_GET_separatorChar(); + if (_r4.i != _r5.i) goto label31; + XMLVM_SOURCE_POSITION("File.java", 646) + _r2 = _r10; + _r8 = _r1; + label23:; + XMLVM_SOURCE_POSITION("File.java", 647) + XMLVM_SOURCE_POSITION("File.java", 659) + _r9.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r8.o)); + XMLVM_SOURCE_POSITION("File.java", 660) + XMLVM_CHECK_NPE(7) + _r4.i = java_io_File_existsImpl___byte_1ARRAY(_r7.o, _r8.o); + if (_r4.i != 0) goto label2; + goto label8; + label31:; + XMLVM_SOURCE_POSITION("File.java", 649) + _r4.i = 1; + _r0.i = _r9.i - _r4.i; + label34:; + XMLVM_SOURCE_POSITION("File.java", 650) + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r0.i); + _r4.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r5.i = java_io_File_GET_separatorChar(); + if (_r4.i == _r5.i) goto label43; + XMLVM_SOURCE_POSITION("File.java", 651) + _r0.i = _r0.i + -1; + goto label34; + label43:; + XMLVM_SOURCE_POSITION("File.java", 653) + _r0.i = _r0.i + 1; + XMLVM_SOURCE_POSITION("File.java", 654) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r4.i = _r4.i + _r0.i; + XMLVM_CLASS_INIT(byte) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r4.i); + XMLVM_SOURCE_POSITION("File.java", 655) + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r8.o, _r6.i, _r3.o, _r6.i, _r0.i); + XMLVM_SOURCE_POSITION("File.java", 656) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r6.i, _r3.o, _r0.i, _r4.i); + XMLVM_SOURCE_POSITION("File.java", 657) + _r8 = _r3; + goto label23; + label58:; + _r4 = _r8; + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_getCanonicalFile__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getCanonicalFile__] + XMLVM_ENTER_METHOD("java.io.File", "getCanonicalFile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 678) + _r0.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_getCanonicalPath__(_r2.o); + XMLVM_CHECK_NPE(0) + java_io_File___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_io_File_getCanonImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_OBJECT java_io_File_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getName__] + XMLVM_ENTER_METHOD("java.io.File", "getName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("File.java", 690) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_io_File*) _r4.o)->fields.java_io_File.path_; + _r2.o = java_io_File_GET_separator(); + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_lastIndexOf___java_lang_String(_r1.o, _r2.o); + if (_r0.i >= 0) goto label13; + XMLVM_SOURCE_POSITION("File.java", 691) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_io_File*) _r4.o)->fields.java_io_File.path_; + label12:; + XMLVM_EXIT_METHOD() + return _r1.o; + label13:; + XMLVM_CHECK_NPE(4) + _r1.o = ((java_io_File*) _r4.o)->fields.java_io_File.path_; + _r2.i = _r0.i + 1; + XMLVM_CHECK_NPE(4) + _r3.o = ((java_io_File*) _r4.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_String_substring___int_int(_r1.o, _r2.i, _r3.i); + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_getParent__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getParent__] + XMLVM_ENTER_METHOD("java.io.File", "getParent", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r8.o = me; + _r7.i = 1; + _r6.i = 0; + _r5.i = -1; + XMLVM_SOURCE_POSITION("File.java", 703) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + _r0.i = 0; + XMLVM_SOURCE_POSITION("File.java", 704) + _r3.i = java_io_File_GET_separatorChar(); + _r4.i = 92; + if (_r3.i != _r4.i) goto label30; + _r3.i = 2; + if (_r2.i <= _r3.i) goto label30; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r7.i); + _r4.i = 58; + if (_r3.i != _r4.i) goto label30; + XMLVM_SOURCE_POSITION("File.java", 705) + _r0.i = 2; + label30:; + XMLVM_SOURCE_POSITION("File.java", 707) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + _r4.i = java_io_File_GET_separatorChar(); + XMLVM_CHECK_NPE(3) + _r1.i = java_lang_String_lastIndexOf___int(_r3.o, _r4.i); + if (_r1.i != _r5.i) goto label43; + XMLVM_SOURCE_POSITION("File.java", 708) + if (_r0.i <= 0) goto label43; + XMLVM_SOURCE_POSITION("File.java", 709) + _r1.i = 2; + label43:; + XMLVM_SOURCE_POSITION("File.java", 711) + if (_r1.i == _r5.i) goto label57; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + _r4.i = _r2.i - _r7.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r4.i); + _r4.i = java_io_File_GET_separatorChar(); + if (_r3.i != _r4.i) goto label59; + label57:; + XMLVM_SOURCE_POSITION("File.java", 712) + _r3.o = JAVA_NULL; + label58:; + XMLVM_SOURCE_POSITION("File.java", 718) + XMLVM_EXIT_METHOD() + return _r3.o; + label59:; + XMLVM_SOURCE_POSITION("File.java", 714) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + _r4.i = java_io_File_GET_separatorChar(); + XMLVM_CHECK_NPE(3) + _r3.i = java_lang_String_indexOf___int(_r3.o, _r4.i); + if (_r3.i != _r1.i) goto label88; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r0.i); + _r4.i = java_io_File_GET_separatorChar(); + if (_r3.i != _r4.i) goto label88; + XMLVM_SOURCE_POSITION("File.java", 716) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + _r4.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_String_substring___int_int(_r3.o, _r6.i, _r4.i); + goto label58; + label88:; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_String_substring___int_int(_r3.o, _r6.i, _r1.i); + goto label58; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_getParentFile__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getParentFile__] + XMLVM_ENTER_METHOD("java.io.File", "getParentFile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 729) + XMLVM_CHECK_NPE(2) + _r0.o = java_io_File_getParent__(_r2.o); + if (_r0.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("File.java", 730) + XMLVM_SOURCE_POSITION("File.java", 731) + _r1.o = JAVA_NULL; + label7:; + XMLVM_SOURCE_POSITION("File.java", 733) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + _r1.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(1) + java_io_File___INIT____java_lang_String(_r1.o, _r0.o); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_getPath__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getPath__] + XMLVM_ENTER_METHOD("java.io.File", "getPath", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("File.java", 742) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_File*) _r1.o)->fields.java_io_File.path_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_io_File_getTotalSpace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getTotalSpace__] + XMLVM_ENTER_METHOD("java.io.File", "getTotalSpace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("File.java", 752) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("File.java", 753) + XMLVM_SOURCE_POSITION("File.java", 754) + _r1.o = __NEW_java_lang_RuntimePermission(); + // "getFileSystemAttributes" + _r2.o = xmlvm_create_java_string_from_pool(738); + XMLVM_CHECK_NPE(1) + java_lang_RuntimePermission___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("File.java", 756) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label21:; + XMLVM_SOURCE_POSITION("File.java", 758) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_properPath___boolean(_r3.o, _r1.i); + XMLVM_CHECK_NPE(3) + _r1.l = java_io_File_getTotalSpaceImpl___byte_1ARRAY(_r3.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r1.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_io_File_getTotalSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_LONG java_io_File_getUsableSpace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getUsableSpace__] + XMLVM_ENTER_METHOD("java.io.File", "getUsableSpace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("File.java", 774) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("File.java", 775) + XMLVM_SOURCE_POSITION("File.java", 776) + _r1.o = __NEW_java_lang_RuntimePermission(); + // "getFileSystemAttributes" + _r2.o = xmlvm_create_java_string_from_pool(738); + XMLVM_CHECK_NPE(1) + java_lang_RuntimePermission___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("File.java", 778) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label21:; + XMLVM_SOURCE_POSITION("File.java", 780) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_properPath___boolean(_r3.o, _r1.i); + XMLVM_CHECK_NPE(3) + _r1.l = java_io_File_getUsableSpaceImpl___byte_1ARRAY(_r3.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r1.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_io_File_getUsableSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_LONG java_io_File_getFreeSpace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getFreeSpace__] + XMLVM_ENTER_METHOD("java.io.File", "getFreeSpace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("File.java", 791) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("File.java", 792) + XMLVM_SOURCE_POSITION("File.java", 793) + _r1.o = __NEW_java_lang_RuntimePermission(); + // "getFileSystemAttributes" + _r2.o = xmlvm_create_java_string_from_pool(738); + XMLVM_CHECK_NPE(1) + java_lang_RuntimePermission___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("File.java", 795) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label21:; + XMLVM_SOURCE_POSITION("File.java", 797) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_properPath___boolean(_r3.o, _r1.i); + XMLVM_CHECK_NPE(3) + _r1.l = java_io_File_getFreeSpaceImpl___byte_1ARRAY(_r3.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r1.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_io_File_getFreeSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_INT java_io_File_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_hashCode__] + XMLVM_ENTER_METHOD("java.io.File", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r1.i = 1234321; + XMLVM_SOURCE_POSITION("File.java", 811) + _r0.i = java_io_File_GET_caseSensitive(); + if (_r0.i == 0) goto label15; + XMLVM_SOURCE_POSITION("File.java", 812) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[4])(_r0.o); + _r0.i = _r0.i ^ _r1.i; + label14:; + XMLVM_SOURCE_POSITION("File.java", 814) + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_CHECK_NPE(2) + _r0.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_toLowerCase__(_r0.o); + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[4])(_r0.o); + _r0.i = _r0.i ^ _r1.i; + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_isAbsolute__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_isAbsolute__] + XMLVM_ENTER_METHOD("java.io.File", "isAbsolute", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + _r5.i = 92; + _r4.i = 2; + _r3.i = 0; + _r2.i = 1; + XMLVM_SOURCE_POSITION("File.java", 828) + _r0.i = java_io_File_GET_separatorChar(); + if (_r0.i != _r5.i) goto label91; + XMLVM_SOURCE_POSITION("File.java", 830) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + if (_r0.i <= _r2.i) goto label39; + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + _r1.i = java_io_File_GET_separatorChar(); + if (_r0.i != _r1.i) goto label39; + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + _r1.i = java_io_File_GET_separatorChar(); + if (_r0.i != _r1.i) goto label39; + _r0 = _r2; + label38:; + XMLVM_SOURCE_POSITION("File.java", 832) + XMLVM_SOURCE_POSITION("File.java", 844) + XMLVM_EXIT_METHOD() + return _r0.i; + label39:; + XMLVM_SOURCE_POSITION("File.java", 834) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + if (_r0.i <= _r4.i) goto label89; + XMLVM_SOURCE_POSITION("File.java", 835) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + _r0.i = java_lang_Character_isLetter___char(_r0.i); + if (_r0.i == 0) goto label89; + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + _r1.i = 58; + if (_r0.i != _r1.i) goto label89; + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r4.i); + _r1.i = 47; + if (_r0.i == _r1.i) goto label87; + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r4.i); + if (_r0.i != _r5.i) goto label89; + label87:; + _r0 = _r2; + XMLVM_SOURCE_POSITION("File.java", 837) + goto label38; + label89:; + _r0 = _r3; + XMLVM_SOURCE_POSITION("File.java", 840) + goto label38; + label91:; + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + if (_r0.i <= 0) goto label111; + XMLVM_CHECK_NPE(6) + _r0.o = ((java_io_File*) _r6.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + _r1.i = java_io_File_GET_separatorChar(); + if (_r0.i != _r1.i) goto label111; + _r0 = _r2; + goto label38; + label111:; + _r0 = _r3; + goto label38; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_isDirectory__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_isDirectory__] + XMLVM_ENTER_METHOD("java.io.File", "isDirectory", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 858) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r1.i != 0) goto label10; + XMLVM_SOURCE_POSITION("File.java", 859) + _r1.i = 0; + label9:; + XMLVM_SOURCE_POSITION("File.java", 865) + XMLVM_EXIT_METHOD() + return _r1.i; + label10:; + XMLVM_SOURCE_POSITION("File.java", 861) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("File.java", 862) + XMLVM_SOURCE_POSITION("File.java", 863) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label21:; + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r1.i = java_io_File_isDirectoryImpl___byte_1ARRAY(_r2.o, _r1.o); + goto label9; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_isDirectoryImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_BOOLEAN java_io_File_isFile__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_isFile__] + XMLVM_ENTER_METHOD("java.io.File", "isFile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 880) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r1.i != 0) goto label10; + XMLVM_SOURCE_POSITION("File.java", 881) + _r1.i = 0; + label9:; + XMLVM_SOURCE_POSITION("File.java", 887) + XMLVM_EXIT_METHOD() + return _r1.i; + label10:; + XMLVM_SOURCE_POSITION("File.java", 883) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("File.java", 884) + XMLVM_SOURCE_POSITION("File.java", 885) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label21:; + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r1.i = java_io_File_isFileImpl___byte_1ARRAY(_r2.o, _r1.o); + goto label9; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_isFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_BOOLEAN java_io_File_isHidden__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_isHidden__] + XMLVM_ENTER_METHOD("java.io.File", "isHidden", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 905) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r1.i != 0) goto label10; + XMLVM_SOURCE_POSITION("File.java", 906) + _r1.i = 0; + label9:; + XMLVM_SOURCE_POSITION("File.java", 912) + XMLVM_EXIT_METHOD() + return _r1.i; + label10:; + XMLVM_SOURCE_POSITION("File.java", 908) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("File.java", 909) + XMLVM_SOURCE_POSITION("File.java", 910) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label21:; + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r1.i = java_io_File_isHiddenImpl___byte_1ARRAY(_r2.o, _r1.o); + goto label9; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_isHiddenImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_isReadOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_isWriteOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_io_File_getLinkImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_LONG java_io_File_lastModified__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_lastModified__] + XMLVM_ENTER_METHOD("java.io.File", "lastModified", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.o = me; + _r5.l = 0; + XMLVM_SOURCE_POSITION("File.java", 933) + _r2.o = java_lang_System_getSecurityManager__(); + if (_r2.o == JAVA_NULL) goto label13; + XMLVM_SOURCE_POSITION("File.java", 934) + XMLVM_SOURCE_POSITION("File.java", 935) + XMLVM_CHECK_NPE(7) + _r3.o = ((java_io_File*) _r7.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkRead___java_lang_String(_r2.o, _r3.o); + label13:; + XMLVM_SOURCE_POSITION("File.java", 937) + _r3.i = 1; + XMLVM_CHECK_NPE(7) + _r3.o = java_io_File_properPath___boolean(_r7.o, _r3.i); + XMLVM_CHECK_NPE(7) + _r0.l = java_io_File_lastModifiedImpl___byte_1ARRAY(_r7.o, _r3.o); + _r3.l = -1; + _r3.i = _r0.l > _r3.l ? 1 : (_r0.l == _r3.l ? 0 : -1); + if (_r3.i == 0) goto label32; + XMLVM_SOURCE_POSITION("File.java", 939) + _r3.i = _r0.l > _r5.l ? 1 : (_r0.l == _r5.l ? 0 : -1); + if (_r3.i != 0) goto label34; + label32:; + _r3 = _r5; + label33:; + XMLVM_SOURCE_POSITION("File.java", 940) + XMLVM_SOURCE_POSITION("File.java", 942) + XMLVM_EXIT_METHOD() + return _r3.l; + label34:; + _r3 = _r0; + goto label33; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_io_File_lastModifiedImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_BOOLEAN java_io_File_setLastModified___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setLastModified___long] + XMLVM_ENTER_METHOD("java.io.File", "setLastModified", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.l = n1; + XMLVM_SOURCE_POSITION("File.java", 962) + _r1.l = 0; + _r1.i = _r4.l > _r1.l ? 1 : (_r4.l == _r1.l ? 0 : -1); + if (_r1.i >= 0) goto label18; + XMLVM_SOURCE_POSITION("File.java", 963) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.B2" + _r2.o = xmlvm_create_java_string_from_pool(739); + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r2.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label18:; + XMLVM_SOURCE_POSITION("File.java", 965) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label29; + XMLVM_SOURCE_POSITION("File.java", 966) + XMLVM_SOURCE_POSITION("File.java", 967) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkWrite___java_lang_String(_r0.o, _r1.o); + label29:; + XMLVM_SOURCE_POSITION("File.java", 969) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_properPath___boolean(_r3.o, _r1.i); + XMLVM_CHECK_NPE(3) + _r1.i = java_io_File_setLastModifiedImpl___byte_1ARRAY_long(_r3.o, _r1.o, _r4.l); + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_setLastModifiedImpl___byte_1ARRAY_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2)] + +JAVA_BOOLEAN java_io_File_setReadOnly__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setReadOnly__] + XMLVM_ENTER_METHOD("java.io.File", "setReadOnly", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 985) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 986) + XMLVM_SOURCE_POSITION("File.java", 987) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkWrite___java_lang_String(_r0.o, _r1.o); + label11:; + XMLVM_SOURCE_POSITION("File.java", 989) + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r1.i = java_io_File_setReadOnlyImpl___byte_1ARRAY(_r2.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_setReadOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_BOOLEAN java_io_File_setReadable___boolean_boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setReadable___boolean_boolean] + XMLVM_ENTER_METHOD("java.io.File", "setReadable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("File.java", 1017) + XMLVM_CHECK_NPE(1) + java_io_File_checkWrite__(_r1.o); + XMLVM_SOURCE_POSITION("File.java", 1018) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_properPath___boolean(_r1.o, _r0.i); + XMLVM_CHECK_NPE(1) + _r0.i = java_io_File_setReadableImpl___byte_1ARRAY_boolean_boolean(_r1.o, _r0.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_setReadable___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setReadable___boolean] + XMLVM_ENTER_METHOD("java.io.File", "setReadable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("File.java", 1039) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.i = java_io_File_setReadable___boolean_boolean(_r1.o, _r2.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_setReadableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3)] + +JAVA_BOOLEAN java_io_File_setWritable___boolean_boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setWritable___boolean_boolean] + XMLVM_ENTER_METHOD("java.io.File", "setWritable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("File.java", 1066) + XMLVM_CHECK_NPE(1) + java_io_File_checkWrite__(_r1.o); + XMLVM_SOURCE_POSITION("File.java", 1067) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_properPath___boolean(_r1.o, _r0.i); + XMLVM_CHECK_NPE(1) + _r0.i = java_io_File_setWritableImpl___byte_1ARRAY_boolean_boolean(_r1.o, _r0.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_setWritableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3)] + +JAVA_BOOLEAN java_io_File_setWritable___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setWritable___boolean] + XMLVM_ENTER_METHOD("java.io.File", "setWritable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("File.java", 1089) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.i = java_io_File_setWritable___boolean_boolean(_r1.o, _r2.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_io_File_length__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_length__] + XMLVM_ENTER_METHOD("java.io.File", "length", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("File.java", 1101) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 1102) + XMLVM_SOURCE_POSITION("File.java", 1103) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkRead___java_lang_String(_r0.o, _r1.o); + label11:; + XMLVM_SOURCE_POSITION("File.java", 1105) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_properPath___boolean(_r3.o, _r1.i); + XMLVM_CHECK_NPE(3) + _r1.l = java_io_File_lengthImpl___byte_1ARRAY(_r3.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r1.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_io_File_lengthImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_OBJECT java_io_File_list__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_list__] + XMLVM_ENTER_METHOD("java.io.File", "list", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.o = me; + _r6.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("File.java", 1126) + _r4.o = java_lang_System_getSecurityManager__(); + if (_r4.o == JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("File.java", 1127) + XMLVM_SOURCE_POSITION("File.java", 1128) + XMLVM_CHECK_NPE(7) + _r5.o = ((java_io_File*) _r7.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(4) + java_lang_SecurityManager_checkRead___java_lang_String(_r4.o, _r5.o); + label12:; + XMLVM_SOURCE_POSITION("File.java", 1131) + XMLVM_CHECK_NPE(7) + _r5.o = ((java_io_File*) _r7.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + if (_r5.i != 0) goto label22; + _r5 = _r6; + label21:; + XMLVM_SOURCE_POSITION("File.java", 1132) + XMLVM_SOURCE_POSITION("File.java", 1149) + XMLVM_EXIT_METHOD() + return _r5.o; + label22:; + XMLVM_SOURCE_POSITION("File.java", 1135) + _r5.i = 1; + XMLVM_CHECK_NPE(7) + _r0.o = java_io_File_properPath___boolean(_r7.o, _r5.i); + XMLVM_SOURCE_POSITION("File.java", 1136) + XMLVM_CHECK_NPE(7) + _r5.i = java_io_File_isDirectoryImpl___byte_1ARRAY(_r7.o, _r0.o); + if (_r5.i == 0) goto label45; + XMLVM_CHECK_NPE(7) + _r5.i = java_io_File_existsImpl___byte_1ARRAY(_r7.o, _r0.o); + if (_r5.i == 0) goto label45; + XMLVM_CHECK_NPE(7) + _r5.i = java_io_File_isWriteOnlyImpl___byte_1ARRAY(_r7.o, _r0.o); + if (_r5.i == 0) goto label47; + label45:; + _r5 = _r6; + XMLVM_SOURCE_POSITION("File.java", 1137) + goto label21; + label47:; + XMLVM_SOURCE_POSITION("File.java", 1140) + _r1.o = java_io_File_listImpl___byte_1ARRAY(_r0.o); + if (_r1.o != JAVA_NULL) goto label57; + XMLVM_SOURCE_POSITION("File.java", 1141) + XMLVM_SOURCE_POSITION("File.java", 1143) + _r5.i = 0; + XMLVM_CLASS_INIT(java_lang_String) + _r5.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r5.i); + goto label21; + label57:; + XMLVM_SOURCE_POSITION("File.java", 1145) + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r5.i); + _r2.i = 0; + label61:; + XMLVM_SOURCE_POSITION("File.java", 1146) + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r2.i >= _r5.i) goto label75; + XMLVM_SOURCE_POSITION("File.java", 1147) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r5.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r5.o = org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY(_r5.o); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r5.o; + _r2.i = _r2.i + 1; + goto label61; + label75:; + _r5 = _r3; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_listFiles__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_listFiles__] + XMLVM_ENTER_METHOD("java.io.File", "listFiles", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("File.java", 1166) + XMLVM_CHECK_NPE(6) + _r3.o = java_io_File_list__(_r6.o); + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("File.java", 1167) + XMLVM_SOURCE_POSITION("File.java", 1168) + _r4.o = JAVA_NULL; + label7:; + XMLVM_SOURCE_POSITION("File.java", 1175) + XMLVM_EXIT_METHOD() + return _r4.o; + label8:; + XMLVM_SOURCE_POSITION("File.java", 1170) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_SOURCE_POSITION("File.java", 1171) + XMLVM_CLASS_INIT(java_io_File) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_io_File, _r1.i); + _r0.i = 0; + label12:; + XMLVM_SOURCE_POSITION("File.java", 1172) + if (_r0.i >= _r1.i) goto label26; + XMLVM_SOURCE_POSITION("File.java", 1173) + _r4.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(4) + java_io_File___INIT____java_io_File_java_lang_String(_r4.o, _r6.o, _r5.o); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r4.o; + _r0.i = _r0.i + 1; + goto label12; + label26:; + _r4 = _r2; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_listFiles___java_io_FilenameFilter(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_listFiles___java_io_FilenameFilter] + XMLVM_ENTER_METHOD("java.io.File", "listFiles", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("File.java", 1200) + XMLVM_CHECK_NPE(6) + _r3.o = java_io_File_list___java_io_FilenameFilter(_r6.o, _r7.o); + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("File.java", 1201) + XMLVM_SOURCE_POSITION("File.java", 1202) + _r4.o = JAVA_NULL; + label7:; + XMLVM_SOURCE_POSITION("File.java", 1209) + XMLVM_EXIT_METHOD() + return _r4.o; + label8:; + XMLVM_SOURCE_POSITION("File.java", 1204) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_SOURCE_POSITION("File.java", 1205) + XMLVM_CLASS_INIT(java_io_File) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_io_File, _r1.i); + _r0.i = 0; + label12:; + XMLVM_SOURCE_POSITION("File.java", 1206) + if (_r0.i >= _r1.i) goto label26; + XMLVM_SOURCE_POSITION("File.java", 1207) + _r4.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(4) + java_io_File___INIT____java_io_File_java_lang_String(_r4.o, _r6.o, _r5.o); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r4.o; + _r0.i = _r0.i + 1; + goto label12; + label26:; + _r4 = _r2; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_listFiles___java_io_FileFilter(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_listFiles___java_io_FileFilter] + XMLVM_ENTER_METHOD("java.io.File", "listFiles", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r9.o = me; + _r10.o = n1; + _r8.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("File.java", 1232) + _r5.o = java_lang_System_getSecurityManager__(); + if (_r5.o == JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("File.java", 1233) + XMLVM_SOURCE_POSITION("File.java", 1234) + XMLVM_CHECK_NPE(9) + _r7.o = ((java_io_File*) _r9.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(5) + java_lang_SecurityManager_checkRead___java_lang_String(_r5.o, _r7.o); + label12:; + XMLVM_SOURCE_POSITION("File.java", 1237) + XMLVM_CHECK_NPE(9) + _r7.o = ((java_io_File*) _r9.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(7) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[8])(_r7.o); + if (_r7.i != 0) goto label22; + _r7 = _r8; + label21:; + XMLVM_SOURCE_POSITION("File.java", 1238) + XMLVM_SOURCE_POSITION("File.java", 1258) + XMLVM_EXIT_METHOD() + return _r7.o; + label22:; + XMLVM_SOURCE_POSITION("File.java", 1241) + _r7.i = 1; + XMLVM_CHECK_NPE(9) + _r2.o = java_io_File_properPath___boolean(_r9.o, _r7.i); + XMLVM_SOURCE_POSITION("File.java", 1242) + XMLVM_CHECK_NPE(9) + _r7.i = java_io_File_isDirectoryImpl___byte_1ARRAY(_r9.o, _r2.o); + if (_r7.i == 0) goto label45; + XMLVM_CHECK_NPE(9) + _r7.i = java_io_File_existsImpl___byte_1ARRAY(_r9.o, _r2.o); + if (_r7.i == 0) goto label45; + XMLVM_CHECK_NPE(9) + _r7.i = java_io_File_isWriteOnlyImpl___byte_1ARRAY(_r9.o, _r2.o); + if (_r7.i == 0) goto label47; + label45:; + _r7 = _r8; + XMLVM_SOURCE_POSITION("File.java", 1243) + goto label21; + label47:; + XMLVM_SOURCE_POSITION("File.java", 1246) + _r3.o = java_io_File_listImpl___byte_1ARRAY(_r2.o); + if (_r3.o != JAVA_NULL) goto label57; + XMLVM_SOURCE_POSITION("File.java", 1247) + XMLVM_SOURCE_POSITION("File.java", 1248) + _r7.i = 0; + XMLVM_CLASS_INIT(java_io_File) + _r7.o = XMLVMArray_createSingleDimension(__CLASS_java_io_File, _r7.i); + goto label21; + label57:; + XMLVM_SOURCE_POSITION("File.java", 1250) + _r6.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(6) + java_util_ArrayList___INIT___(_r6.o); + _r4.i = 0; + label63:; + XMLVM_SOURCE_POSITION("File.java", 1251) + _r7.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r4.i >= _r7.i) goto label91; + XMLVM_SOURCE_POSITION("File.java", 1252) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r7.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r1.o = org_apache_harmony_luni_util_Util_toString___byte_1ARRAY(_r7.o); + XMLVM_SOURCE_POSITION("File.java", 1253) + _r0.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(0) + java_io_File___INIT____java_io_File_java_lang_String(_r0.o, _r9.o, _r1.o); + if (_r10.o == JAVA_NULL) goto label85; + XMLVM_SOURCE_POSITION("File.java", 1254) + + + // Red class access removed: java.io.FileFilter::accept + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r7.i == 0) goto label88; + label85:; + XMLVM_SOURCE_POSITION("File.java", 1255) + XMLVM_CHECK_NPE(6) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object])(_r6.o, _r0.o); + label88:; + _r4.i = _r4.i + 1; + goto label63; + label91:; + XMLVM_CHECK_NPE(6) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r6.o); + XMLVM_CLASS_INIT(java_io_File) + _r7.o = XMLVMArray_createSingleDimension(__CLASS_java_io_File, _r7.i); + XMLVM_CHECK_NPE(6) + _r9.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY])(_r6.o, _r7.o); + _r9.o = _r9.o; + _r7 = _r9; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_list___java_io_FilenameFilter(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_list___java_io_FilenameFilter] + XMLVM_ENTER_METHOD("java.io.File", "list", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r8.o = me; + _r9.o = n1; + _r7.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("File.java", 1282) + _r4.o = java_lang_System_getSecurityManager__(); + if (_r4.o == JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("File.java", 1283) + XMLVM_SOURCE_POSITION("File.java", 1284) + XMLVM_CHECK_NPE(8) + _r6.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(4) + java_lang_SecurityManager_checkRead___java_lang_String(_r4.o, _r6.o); + label12:; + XMLVM_SOURCE_POSITION("File.java", 1287) + XMLVM_CHECK_NPE(8) + _r6.o = ((java_io_File*) _r8.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(6) + _r6.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r6.o)->tib->vtable[8])(_r6.o); + if (_r6.i != 0) goto label22; + _r6 = _r7; + label21:; + XMLVM_SOURCE_POSITION("File.java", 1288) + XMLVM_SOURCE_POSITION("File.java", 1309) + XMLVM_EXIT_METHOD() + return _r6.o; + label22:; + XMLVM_SOURCE_POSITION("File.java", 1291) + _r6.i = 1; + XMLVM_CHECK_NPE(8) + _r1.o = java_io_File_properPath___boolean(_r8.o, _r6.i); + XMLVM_SOURCE_POSITION("File.java", 1292) + XMLVM_CHECK_NPE(8) + _r6.i = java_io_File_isDirectoryImpl___byte_1ARRAY(_r8.o, _r1.o); + if (_r6.i == 0) goto label45; + XMLVM_CHECK_NPE(8) + _r6.i = java_io_File_existsImpl___byte_1ARRAY(_r8.o, _r1.o); + if (_r6.i == 0) goto label45; + XMLVM_CHECK_NPE(8) + _r6.i = java_io_File_isWriteOnlyImpl___byte_1ARRAY(_r8.o, _r1.o); + if (_r6.i == 0) goto label47; + label45:; + _r6 = _r7; + XMLVM_SOURCE_POSITION("File.java", 1293) + goto label21; + label47:; + XMLVM_SOURCE_POSITION("File.java", 1296) + _r2.o = java_io_File_listImpl___byte_1ARRAY(_r1.o); + if (_r2.o != JAVA_NULL) goto label57; + XMLVM_SOURCE_POSITION("File.java", 1297) + XMLVM_SOURCE_POSITION("File.java", 1299) + _r6.i = 0; + XMLVM_CLASS_INIT(java_lang_String) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r6.i); + goto label21; + label57:; + XMLVM_SOURCE_POSITION("File.java", 1301) + _r5.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(5) + java_util_ArrayList___INIT___(_r5.o); + _r3.i = 0; + label63:; + XMLVM_SOURCE_POSITION("File.java", 1302) + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r3.i >= _r6.i) goto label86; + XMLVM_SOURCE_POSITION("File.java", 1303) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + _r6.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r0.o = org_apache_harmony_luni_util_Util_toString___byte_1ARRAY(_r6.o); + if (_r9.o == JAVA_NULL) goto label80; + XMLVM_SOURCE_POSITION("File.java", 1304) + + + // Red class access removed: java.io.FilenameFilter::accept + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.i == 0) goto label83; + label80:; + XMLVM_SOURCE_POSITION("File.java", 1305) + XMLVM_CHECK_NPE(5) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object])(_r5.o, _r0.o); + label83:; + _r3.i = _r3.i + 1; + goto label63; + label86:; + XMLVM_CHECK_NPE(5) + _r6.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r5.o); + XMLVM_CLASS_INIT(java_lang_String) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r6.i); + XMLVM_CHECK_NPE(5) + _r8.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY])(_r5.o, _r6.o); + _r8.o = _r8.o; + _r6 = _r8; + goto label21; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_io_File_listImpl___byte_1ARRAY(JAVA_OBJECT n1)] + +JAVA_BOOLEAN java_io_File_mkdir__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_mkdir__] + XMLVM_ENTER_METHOD("java.io.File", "mkdir", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 1326) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 1327) + XMLVM_SOURCE_POSITION("File.java", 1328) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkWrite___java_lang_String(_r0.o, _r1.o); + label11:; + XMLVM_SOURCE_POSITION("File.java", 1330) + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r1.o = java_io_File_properPath___boolean(_r2.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r1.i = java_io_File_mkdirImpl___byte_1ARRAY(_r2.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_mkdirImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_BOOLEAN java_io_File_mkdirs__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_mkdirs__] + XMLVM_ENTER_METHOD("java.io.File", "mkdirs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("File.java", 1349) + XMLVM_CHECK_NPE(4) + _r1.i = java_io_File_exists__(_r4.o); + if (_r1.i == 0) goto label10; + _r1 = _r2; + label9:; + XMLVM_SOURCE_POSITION("File.java", 1350) + XMLVM_SOURCE_POSITION("File.java", 1365) + XMLVM_EXIT_METHOD() + return _r1.i; + label10:; + XMLVM_SOURCE_POSITION("File.java", 1354) + XMLVM_CHECK_NPE(4) + _r1.i = java_io_File_mkdir__(_r4.o); + if (_r1.i == 0) goto label18; + _r1 = _r3; + XMLVM_SOURCE_POSITION("File.java", 1355) + goto label9; + label18:; + XMLVM_SOURCE_POSITION("File.java", 1358) + XMLVM_CHECK_NPE(4) + _r0.o = java_io_File_getParent__(_r4.o); + if (_r0.o != JAVA_NULL) goto label26; + XMLVM_SOURCE_POSITION("File.java", 1360) + _r1 = _r2; + XMLVM_SOURCE_POSITION("File.java", 1361) + goto label9; + label26:; + _r1.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(1) + java_io_File___INIT____java_lang_String(_r1.o, _r0.o); + XMLVM_CHECK_NPE(1) + _r1.i = java_io_File_mkdirs__(_r1.o); + if (_r1.i == 0) goto label45; + XMLVM_CHECK_NPE(4) + _r1.i = java_io_File_mkdir__(_r4.o); + if (_r1.i == 0) goto label45; + _r1 = _r3; + goto label9; + label45:; + _r1 = _r2; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_createNewFile__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_createNewFile__] + XMLVM_ENTER_METHOD("java.io.File", "createNewFile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + _r3.i = 1; + XMLVM_SOURCE_POSITION("File.java", 1382) + _r1.o = java_lang_System_getSecurityManager__(); + if (_r1.o == JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("File.java", 1383) + XMLVM_SOURCE_POSITION("File.java", 1384) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_io_File*) _r5.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(1) + java_lang_SecurityManager_checkWrite___java_lang_String(_r1.o, _r2.o); + label12:; + XMLVM_SOURCE_POSITION("File.java", 1386) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_io_File*) _r5.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r2.i != 0) goto label32; + XMLVM_SOURCE_POSITION("File.java", 1387) + _r2.o = __NEW_java_io_IOException(); + // "luni.B3" + _r3.o = xmlvm_create_java_string_from_pool(740); + _r3.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r3.o); + XMLVM_CHECK_NPE(2) + java_io_IOException___INIT____java_lang_String(_r2.o, _r3.o); + XMLVM_THROW_CUSTOM(_r2.o) + label32:; + XMLVM_SOURCE_POSITION("File.java", 1389) + XMLVM_CHECK_NPE(5) + _r2.o = java_io_File_properPath___boolean(_r5.o, _r3.i); + XMLVM_CHECK_NPE(5) + _r0.i = java_io_File_newFileImpl___byte_1ARRAY(_r5.o, _r2.o); + XMLVM_SOURCE_POSITION("File.java", 1390) + switch (_r0.i) { + case 0: goto label57; + case 1: goto label59; + } + XMLVM_SOURCE_POSITION("File.java", 1396) + _r2.o = __NEW_java_io_IOException(); + // "luni.B4" + _r3.o = xmlvm_create_java_string_from_pool(741); + XMLVM_CHECK_NPE(5) + _r4.o = ((java_io_File*) _r5.o)->fields.java_io_File.path_; + _r3.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r3.o, _r4.o); + XMLVM_CHECK_NPE(2) + java_io_IOException___INIT____java_lang_String(_r2.o, _r3.o); + XMLVM_THROW_CUSTOM(_r2.o) + label57:; + _r2 = _r3; + label58:; + XMLVM_SOURCE_POSITION("File.java", 1392) + XMLVM_SOURCE_POSITION("File.java", 1394) + XMLVM_EXIT_METHOD() + return _r2.i; + label59:; + _r2.i = 0; + goto label58; + label62:; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_io_File_newFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_OBJECT java_io_File_createTempFile___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_io_File) + //XMLVM_BEGIN_WRAPPER[java_io_File_createTempFile___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.io.File", "createTempFile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("File.java", 1419) + _r0.o = JAVA_NULL; + _r0.o = java_io_File_createTempFile___java_lang_String_java_lang_String_java_io_File(_r1.o, _r2.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_createTempFile___java_lang_String_java_lang_String_java_io_File(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_io_File) + //XMLVM_BEGIN_WRAPPER[java_io_File_createTempFile___java_lang_String_java_lang_String_java_io_File] + XMLVM_ENTER_METHOD("java.io.File", "createTempFile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r7.o = n1; + _r8.o = n2; + _r9.o = n3; + XMLVM_SOURCE_POSITION("File.java", 1446) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(7) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[8])(_r7.o); + _r5.i = 3; + if (_r4.i >= _r5.i) goto label19; + XMLVM_SOURCE_POSITION("File.java", 1447) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.B5" + _r5.o = xmlvm_create_java_string_from_pool(742); + _r5.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r5.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r4.o) + label19:; + XMLVM_SOURCE_POSITION("File.java", 1449) + if (_r8.o != JAVA_NULL) goto label57; + // ".tmp" + _r4.o = xmlvm_create_java_string_from_pool(743); + _r0 = _r4; + label24:; + if (_r9.o != JAVA_NULL) goto label59; + XMLVM_SOURCE_POSITION("File.java", 1451) + XMLVM_SOURCE_POSITION("File.java", 1452) + _r4.o = __NEW_org_apache_harmony_luni_util_PriviAction(); + // "java.io.tmpdir" + _r5.o = xmlvm_create_java_string_from_pool(744); + // "." + _r6.o = xmlvm_create_java_string_from_pool(52); + XMLVM_CHECK_NPE(4) + org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String_java_lang_String(_r4.o, _r5.o, _r6.o); + _r2.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r4.o); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("File.java", 1454) + _r3.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(3) + java_io_File___INIT____java_lang_String(_r3.o, _r2.o); + label46:; + XMLVM_SOURCE_POSITION("File.java", 1455) + XMLVM_SOURCE_POSITION("File.java", 1460) + _r1.o = java_io_File_genTempFile___java_lang_String_java_lang_String_java_io_File(_r7.o, _r0.o, _r3.o); + XMLVM_SOURCE_POSITION("File.java", 1461) + XMLVM_CHECK_NPE(1) + _r4.i = java_io_File_createNewFile__(_r1.o); + if (_r4.i == 0) goto label46; + XMLVM_SOURCE_POSITION("File.java", 1462) + XMLVM_EXIT_METHOD() + return _r1.o; + label57:; + _r0 = _r8; + goto label24; + label59:; + XMLVM_SOURCE_POSITION("File.java", 1456) + _r3 = _r9; + goto label46; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_genTempFile___java_lang_String_java_lang_String_java_io_File(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_io_File) + //XMLVM_BEGIN_WRAPPER[java_io_File_genTempFile___java_lang_String_java_lang_String_java_io_File] + XMLVM_ENTER_METHOD("java.io.File", "genTempFile", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + _r7.o = n1; + _r8.o = n2; + _r9.o = n3; + _r6.i = 65535; + XMLVM_SOURCE_POSITION("File.java", 1466) + _r0.i = 0; + XMLVM_SOURCE_POSITION("File.java", 1467) + _r4.o = java_io_File_GET_tempFileLocker(); + java_lang_Object_acquireLockRecursive__(_r4.o); + XMLVM_TRY_BEGIN(w4981aaac88b1c10) + // Begin try + XMLVM_SOURCE_POSITION("File.java", 1468) + _r5.i = java_io_File_GET_counter(); + if (_r5.i != 0) { XMLVM_MEMCPY(curThread_w4981aaac88b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4981aaac88b1c10, sizeof(XMLVM_JMP_BUF)); goto label34; }; + XMLVM_SOURCE_POSITION("File.java", 1469) + + + // Red class access removed: java.security.SecureRandom::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.security.SecureRandom:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.security.SecureRandom::nextInt + XMLVM_RED_CLASS_DEPENDENCY(); + _r5.i = 65535; + XMLVM_SOURCE_POSITION("File.java", 1470) + _r5.i = _r2.i / _r5.i; + _r5.i = _r5.i & _r6.i; + _r5.i = _r5.i + 10000; + java_io_File_PUT_counter( _r5.i); + XMLVM_SOURCE_POSITION("File.java", 1471) + _r5.i = java_io_File_GET_counter(); + java_io_File_PUT_counterBase( _r5.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac88b1c10) + XMLVM_CATCH_SPECIFIC(w4981aaac88b1c10,java_lang_Object,70) + XMLVM_CATCH_END(w4981aaac88b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac88b1c10) + label34:; + XMLVM_TRY_BEGIN(w4981aaac88b1c12) + // Begin try + XMLVM_SOURCE_POSITION("File.java", 1473) + _r1.i = java_io_File_GET_counter(); + _r5.i = _r1.i + 1; + java_io_File_PUT_counter( _r5.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac88b1c12) + XMLVM_CATCH_SPECIFIC(w4981aaac88b1c12,java_lang_Object,70) + XMLVM_CATCH_END(w4981aaac88b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac88b1c12) + XMLVM_TRY_BEGIN(w4981aaac88b1c13) + // Begin try + XMLVM_SOURCE_POSITION("File.java", 1474) + java_lang_Object_releaseLockRecursive__(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac88b1c13) + XMLVM_CATCH_SPECIFIC(w4981aaac88b1c13,java_lang_Object,73) + XMLVM_CATCH_END(w4981aaac88b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac88b1c13) + XMLVM_SOURCE_POSITION("File.java", 1476) + _r3.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("File.java", 1477) + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r7.o); + XMLVM_SOURCE_POSITION("File.java", 1478) + _r4.i = java_io_File_GET_counterBase(); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___int(_r3.o, _r4.i); + XMLVM_SOURCE_POSITION("File.java", 1479) + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___int(_r3.o, _r1.i); + XMLVM_SOURCE_POSITION("File.java", 1480) + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r8.o); + XMLVM_SOURCE_POSITION("File.java", 1481) + _r4.o = __NEW_java_io_File(); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + XMLVM_CHECK_NPE(4) + java_io_File___INIT____java_io_File_java_lang_String(_r4.o, _r9.o, _r5.o); + XMLVM_EXIT_METHOD() + return _r4.o; + label70:; + java_lang_Thread* curThread_w4981aaac88b1c32 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r5.o = curThread_w4981aaac88b1c32->fields.java_lang_Thread.xmlvmException_; + label71:; + XMLVM_TRY_BEGIN(w4981aaac88b1c34) + // Begin try + java_lang_Object_releaseLockRecursive__(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac88b1c34) + XMLVM_CATCH_SPECIFIC(w4981aaac88b1c34,java_lang_Object,70) + XMLVM_CATCH_END(w4981aaac88b1c34) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac88b1c34) + XMLVM_THROW_CUSTOM(_r5.o) + label73:; + java_lang_Thread* curThread_w4981aaac88b1c37 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r5.o = curThread_w4981aaac88b1c37->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + goto label71; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_properPath___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_properPath___boolean] + XMLVM_ENTER_METHOD("java.io.File", "properPath", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.o = me; + _r11.i = n1; + _r8.i = 2; + _r7.i = 1; + _r6.i = 0; + // "user.dir" + _r9.o = xmlvm_create_java_string_from_pool(691); + XMLVM_SOURCE_POSITION("File.java", 1494) + _r11.i = 0; + XMLVM_SOURCE_POSITION("File.java", 1496) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.properPath_; + if (_r4.o == JAVA_NULL) goto label13; + XMLVM_SOURCE_POSITION("File.java", 1497) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.properPath_; + label12:; + XMLVM_SOURCE_POSITION("File.java", 1538) + XMLVM_EXIT_METHOD() + return _r4.o; + label13:; + XMLVM_SOURCE_POSITION("File.java", 1500) + XMLVM_CHECK_NPE(10) + _r4.i = java_io_File_isAbsolute__(_r10.o); + if (_r4.i == 0) goto label29; + XMLVM_SOURCE_POSITION("File.java", 1501) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + _r1.o = org_apache_harmony_luni_util_Util_getUTF8Bytes___java_lang_String(_r4.o); + XMLVM_SOURCE_POSITION("File.java", 1502) + XMLVM_CHECK_NPE(10) + ((java_io_File*) _r10.o)->fields.java_io_File.properPath_ = _r1.o; + _r4 = _r1; + goto label12; + label29:; + XMLVM_SOURCE_POSITION("File.java", 1506) + if (_r11.i == 0) goto label59; + XMLVM_SOURCE_POSITION("File.java", 1507) + _r4.o = __NEW_org_apache_harmony_luni_util_PriviAction(); + // "user.dir" + _r5.o = xmlvm_create_java_string_from_pool(691); + XMLVM_CHECK_NPE(4) + org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String(_r4.o, _r9.o); + _r3.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r4.o); + _r3.o = _r3.o; + label44:; + XMLVM_SOURCE_POSITION("File.java", 1513) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + if (_r4.i != 0) goto label66; + XMLVM_SOURCE_POSITION("File.java", 1514) + _r4.o = org_apache_harmony_luni_util_Util_getUTF8Bytes___java_lang_String(_r3.o); + XMLVM_CHECK_NPE(10) + ((java_io_File*) _r10.o)->fields.java_io_File.properPath_ = _r4.o; + goto label12; + label59:; + XMLVM_SOURCE_POSITION("File.java", 1510) + // "user.dir" + _r4.o = xmlvm_create_java_string_from_pool(691); + _r3.o = java_lang_System_getProperty___java_lang_String(_r9.o); + goto label44; + label66:; + XMLVM_SOURCE_POSITION("File.java", 1516) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + XMLVM_SOURCE_POSITION("File.java", 1519) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(4) + _r4.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r4.o)->tib->vtable[6])(_r4.o, _r6.i); + _r5.i = 92; + if (_r4.i != _r5.i) goto label128; + XMLVM_SOURCE_POSITION("File.java", 1520) + if (_r0.i <= _r7.i) goto label120; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r4.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r7.i); + _r5.i = 58; + if (_r4.i != _r5.i) goto label120; + XMLVM_SOURCE_POSITION("File.java", 1521) + _r4.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT___(_r4.o); + XMLVM_CHECK_NPE(3) + _r5.o = java_lang_String_substring___int_int(_r3.o, _r6.i, _r8.i); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + XMLVM_CHECK_NPE(10) + _r5.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + _r4.o = org_apache_harmony_luni_util_Util_getUTF8Bytes___java_lang_String(_r4.o); + XMLVM_CHECK_NPE(10) + ((java_io_File*) _r10.o)->fields.java_io_File.properPath_ = _r4.o; + goto label12; + label120:; + XMLVM_SOURCE_POSITION("File.java", 1524) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_String_substring___int(_r4.o, _r7.i); + XMLVM_CHECK_NPE(10) + ((java_io_File*) _r10.o)->fields.java_io_File.path_ = _r4.o; + label128:; + XMLVM_SOURCE_POSITION("File.java", 1528) + _r2 = _r3; + _r4.i = _r0.i - _r7.i; + XMLVM_SOURCE_POSITION("File.java", 1529) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r4.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r4.i); + _r5.i = java_io_File_GET_separatorChar(); + if (_r4.i == _r5.i) goto label195; + XMLVM_SOURCE_POSITION("File.java", 1530) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(4) + _r4.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r4.o)->tib->vtable[6])(_r4.o, _r6.i); + _r5.i = java_io_File_GET_separatorChar(); + if (_r4.i == _r5.i) goto label168; + XMLVM_SOURCE_POSITION("File.java", 1531) + _r4.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT___(_r4.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r2.o); + _r5.o = java_io_File_GET_separator(); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + label168:; + XMLVM_SOURCE_POSITION("File.java", 1537) + _r4.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT___(_r4.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r2.o); + XMLVM_CHECK_NPE(10) + _r5.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + _r4.o = org_apache_harmony_luni_util_Util_getUTF8Bytes___java_lang_String(_r2.o); + XMLVM_CHECK_NPE(10) + ((java_io_File*) _r10.o)->fields.java_io_File.properPath_ = _r4.o; + goto label12; + label195:; + XMLVM_SOURCE_POSITION("File.java", 1533) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_io_File*) _r10.o)->fields.java_io_File.path_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(4) + _r4.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r4.o)->tib->vtable[6])(_r4.o, _r6.i); + _r5.i = java_io_File_GET_separatorChar(); + if (_r4.i != _r5.i) goto label168; + XMLVM_SOURCE_POSITION("File.java", 1534) + _r4.i = _r0.i - _r8.i; + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_String_substring___int_int(_r2.o, _r6.i, _r4.i); + goto label168; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_renameTo___java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_renameTo___java_io_File] + XMLVM_ENTER_METHOD("java.io.File", "renameTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("File.java", 1553) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label17; + XMLVM_SOURCE_POSITION("File.java", 1554) + XMLVM_SOURCE_POSITION("File.java", 1555) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkWrite___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("File.java", 1556) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_io_File*) _r4.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkWrite___java_lang_String(_r0.o, _r1.o); + label17:; + XMLVM_SOURCE_POSITION("File.java", 1558) + XMLVM_CHECK_NPE(3) + _r1.o = java_io_File_properPath___boolean(_r3.o, _r2.i); + XMLVM_CHECK_NPE(4) + _r2.o = java_io_File_properPath___boolean(_r4.o, _r2.i); + XMLVM_CHECK_NPE(3) + _r1.i = java_io_File_renameToImpl___byte_1ARRAY_byte_1ARRAY(_r3.o, _r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_renameToImpl___byte_1ARRAY_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)] + +JAVA_OBJECT java_io_File_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_toString__] + XMLVM_ENTER_METHOD("java.io.File", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("File.java", 1571) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_File*) _r1.o)->fields.java_io_File.path_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_toURI__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_toURI__] + XMLVM_ENTER_METHOD("java.io.File", "toURI", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r8.o = me; + _r7.o = JAVA_NULL; + // "file" + _r0.o = xmlvm_create_java_string_from_pool(732); + XMLVM_SOURCE_POSITION("File.java", 1583) + XMLVM_CHECK_NPE(8) + _r3.o = java_io_File_getAbsoluteName__(_r8.o); + XMLVM_TRY_BEGIN(w4981aaac93b1b6) + // Begin try + XMLVM_SOURCE_POSITION("File.java", 1585) + // "/" + _r0.o = xmlvm_create_java_string_from_pool(54); + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_String_startsWith___java_lang_String(_r3.o, _r0.o); + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w4981aaac93b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4981aaac93b1b6, sizeof(XMLVM_JMP_BUF)); goto label51; }; + XMLVM_SOURCE_POSITION("File.java", 1587) + + + // Red class access removed: java.net.URI::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "file" + _r1.o = xmlvm_create_java_string_from_pool(732); + _r2.o = JAVA_NULL; + _r4.o = __NEW_java_lang_StringBuilder(); + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + _r5.i = _r5.i + 1; + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT____int(_r4.o, _r5.i); + _r5.i = 47; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(4) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[6])(_r4.o, _r5.i); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + _r4.o = JAVA_NULL; + _r5.o = JAVA_NULL; + + + // Red class access removed: java.net.URI:: + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac93b1b6) + XMLVM_CATCH_END(w4981aaac93b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac93b1b6) + label50:; + XMLVM_TRY_BEGIN(w4981aaac93b1b8) + // Begin try + XMLVM_SOURCE_POSITION("File.java", 1596) + XMLVM_MEMCPY(curThread_w4981aaac93b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4981aaac93b1b8, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac93b1b8) + XMLVM_CATCH_END(w4981aaac93b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac93b1b8) + label51:; + XMLVM_TRY_BEGIN(w4981aaac93b1c10) + // Begin try + XMLVM_SOURCE_POSITION("File.java", 1590) + // "//" + _r0.o = xmlvm_create_java_string_from_pool(745); + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_String_startsWith___java_lang_String(_r3.o, _r0.o); + if (_r0.i == 0) { XMLVM_MEMCPY(curThread_w4981aaac93b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4981aaac93b1c10, sizeof(XMLVM_JMP_BUF)); goto label74; }; + XMLVM_SOURCE_POSITION("File.java", 1591) + + + // Red class access removed: java.net.URI::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "file" + _r1.o = xmlvm_create_java_string_from_pool(732); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + _r4.o = JAVA_NULL; + + + // Red class access removed: java.net.URI:: + XMLVM_RED_CLASS_DEPENDENCY(); + { XMLVM_MEMCPY(curThread_w4981aaac93b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4981aaac93b1c10, sizeof(XMLVM_JMP_BUF)); goto label50; }; + XMLVM_SOURCE_POSITION("File.java", 1594) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac93b1c10) + XMLVM_CATCH_END(w4981aaac93b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac93b1c10) + label70:; + XMLVM_TRY_BEGIN(w4981aaac93b1c12) + // Begin try + java_lang_Thread* curThread_w4981aaac93b1c12aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4981aaac93b1c12aa->fields.java_lang_Thread.xmlvmException_; + _r6 = _r0; + _r0 = _r7; + { XMLVM_MEMCPY(curThread_w4981aaac93b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4981aaac93b1c12, sizeof(XMLVM_JMP_BUF)); goto label50; }; + XMLVM_SOURCE_POSITION("File.java", 1593) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac93b1c12) + XMLVM_CATCH_END(w4981aaac93b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac93b1c12) + label74:; + XMLVM_TRY_BEGIN(w4981aaac93b1c14) + // Begin try + + + // Red class access removed: java.net.URI::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "file" + _r1.o = xmlvm_create_java_string_from_pool(732); + _r2.o = JAVA_NULL; + _r4.o = JAVA_NULL; + _r5.o = JAVA_NULL; + + + // Red class access removed: java.net.URI:: + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4981aaac93b1c14) + XMLVM_CATCH_END(w4981aaac93b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w4981aaac93b1c14) + goto label50; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_toURL__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_toURL__] + XMLVM_ENTER_METHOD("java.io.File", "toURL", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r8.o = me; + _r5.o = JAVA_NULL; + _r3.i = -1; + // "file" + _r1.o = xmlvm_create_java_string_from_pool(732); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("File.java", 1615) + XMLVM_CHECK_NPE(8) + _r4.o = java_io_File_getAbsoluteName__(_r8.o); + XMLVM_SOURCE_POSITION("File.java", 1616) + // "/" + _r0.o = xmlvm_create_java_string_from_pool(54); + XMLVM_CHECK_NPE(4) + _r0.i = java_lang_String_startsWith___java_lang_String(_r4.o, _r0.o); + if (_r0.i != 0) goto label53; + XMLVM_SOURCE_POSITION("File.java", 1618) + + + // Red class access removed: java.net.URL::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "file" + _r6.o = xmlvm_create_java_string_from_pool(732); + // "" + _r6.o = xmlvm_create_java_string_from_pool(21); + _r6.o = __NEW_java_lang_StringBuilder(); + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + _r7.i = _r7.i + 1; + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder___INIT____int(_r6.o, _r7.i); + _r7.i = 47; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(6) + _r6.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[6])(_r6.o, _r7.i); + XMLVM_CHECK_NPE(6) + _r6.o = java_lang_StringBuilder_append___java_lang_String(_r6.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(6) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[5])(_r6.o); + + + // Red class access removed: java.net.URL:: + XMLVM_RED_CLASS_DEPENDENCY(); + label52:; + XMLVM_SOURCE_POSITION("File.java", 1624) + XMLVM_EXIT_METHOD() + return _r0.o; + label53:; + XMLVM_SOURCE_POSITION("File.java", 1621) + // "//" + _r0.o = xmlvm_create_java_string_from_pool(745); + XMLVM_CHECK_NPE(4) + _r0.i = java_lang_String_startsWith___java_lang_String(_r4.o, _r0.o); + if (_r0.i == 0) goto label86; + XMLVM_SOURCE_POSITION("File.java", 1622) + + + // Red class access removed: java.net.URL::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "file:" + _r2.o = xmlvm_create_java_string_from_pool(746); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + + + // Red class access removed: java.net.URL:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label52; + label86:; + + + // Red class access removed: java.net.URL::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "file" + _r6.o = xmlvm_create_java_string_from_pool(732); + // "" + _r6.o = xmlvm_create_java_string_from_pool(21); + + + // Red class access removed: java.net.URL:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label52; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_File_getAbsoluteName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_getAbsoluteName__] + XMLVM_ENTER_METHOD("java.io.File", "getAbsoluteName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + _r4.i = 47; + XMLVM_SOURCE_POSITION("File.java", 1628) + XMLVM_CHECK_NPE(5) + _r0.o = java_io_File_getAbsoluteFile__(_r5.o); + XMLVM_SOURCE_POSITION("File.java", 1629) + XMLVM_CHECK_NPE(0) + _r1.o = java_io_File_getPath__(_r0.o); + XMLVM_SOURCE_POSITION("File.java", 1631) + XMLVM_CHECK_NPE(0) + _r2.i = java_io_File_isDirectory__(_r0.o); + if (_r2.i == 0) goto label53; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + _r3.i = 1; + _r2.i = _r2.i - _r3.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r1.o)->tib->vtable[6])(_r1.o, _r2.i); + _r3.i = java_io_File_GET_separatorChar(); + if (_r2.i == _r3.i) goto label53; + XMLVM_SOURCE_POSITION("File.java", 1633) + _r2.o = __NEW_java_lang_StringBuilder(); + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + _r3.i = _r3.i + 1; + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT____int(_r2.o, _r3.i); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r1.o); + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[6])(_r2.o, _r4.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + label53:; + XMLVM_SOURCE_POSITION("File.java", 1636) + _r2.i = java_io_File_GET_separatorChar(); + if (_r2.i == _r4.i) goto label63; + XMLVM_SOURCE_POSITION("File.java", 1637) + _r2.i = java_io_File_GET_separatorChar(); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_String_replace___char_char(_r1.o, _r2.i, _r4.i); + label63:; + XMLVM_SOURCE_POSITION("File.java", 1639) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +void java_io_File_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.io.File", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("File.java", 1643) + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("File.java", 1644) + _r0.i = java_io_File_GET_separatorChar(); + + + // Red class access removed: java.io.ObjectOutputStream::writeChar + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("File.java", 1646) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_File_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.io.File", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("File.java", 1650) + + + // Red class access removed: java.io.ObjectInputStream::defaultReadObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("File.java", 1651) + + + // Red class access removed: java.io.ObjectInputStream::readChar + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("File.java", 1652) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + _r2.i = java_io_File_GET_separatorChar(); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_String_replace___char_char(_r1.o, _r0.i, _r2.i); + XMLVM_CHECK_NPE(3) + ((java_io_File*) _r3.o)->fields.java_io_File.path_ = _r1.o; + XMLVM_SOURCE_POSITION("File.java", 1653) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_setExecutable___boolean_boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setExecutable___boolean_boolean] + XMLVM_ENTER_METHOD("java.io.File", "setExecutable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("File.java", 1678) + XMLVM_CHECK_NPE(1) + java_io_File_checkWrite__(_r1.o); + XMLVM_SOURCE_POSITION("File.java", 1679) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.o = java_io_File_properPath___boolean(_r1.o, _r0.i); + XMLVM_CHECK_NPE(1) + _r0.i = java_io_File_setExecutableImpl___byte_1ARRAY_boolean_boolean(_r1.o, _r0.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_File_setExecutable___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_setExecutable___boolean] + XMLVM_ENTER_METHOD("java.io.File", "setExecutable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("File.java", 1700) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.i = java_io_File_setExecutable___boolean_boolean(_r1.o, _r2.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_setExecutableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3)] + +JAVA_BOOLEAN java_io_File_canExecute__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_canExecute__] + XMLVM_ENTER_METHOD("java.io.File", "canExecute", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + _r2.i = 0; + _r1.i = 1; + XMLVM_SOURCE_POSITION("File.java", 1724) + XMLVM_CHECK_NPE(3) + java_io_File_checkExec__(_r3.o); + XMLVM_SOURCE_POSITION("File.java", 1725) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_io_File*) _r3.o)->fields.java_io_File.path_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + if (_r0.i != 0) goto label15; + _r0 = _r2; + label14:; + XMLVM_SOURCE_POSITION("File.java", 1726) + XMLVM_SOURCE_POSITION("File.java", 1728) + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_CHECK_NPE(3) + _r0.o = java_io_File_properPath___boolean(_r3.o, _r1.i); + XMLVM_CHECK_NPE(3) + _r0.i = java_io_File_existsImpl___byte_1ARRAY(_r3.o, _r0.o); + if (_r0.i == 0) goto label37; + XMLVM_CHECK_NPE(3) + _r0.o = java_io_File_properPath___boolean(_r3.o, _r1.i); + XMLVM_CHECK_NPE(3) + _r0.i = java_io_File_isExecutableImpl___byte_1ARRAY(_r3.o, _r0.o); + if (_r0.i == 0) goto label37; + _r0 = _r1; + goto label14; + label37:; + _r0 = _r2; + goto label14; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_io_File_isExecutableImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +void java_io_File_checkExec__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_checkExec__] + XMLVM_ENTER_METHOD("java.io.File", "checkExec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 1734) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 1735) + XMLVM_SOURCE_POSITION("File.java", 1736) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkExec___java_lang_String(_r0.o, _r1.o); + label11:; + XMLVM_SOURCE_POSITION("File.java", 1738) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_File_checkWrite__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_checkWrite__] + XMLVM_ENTER_METHOD("java.io.File", "checkWrite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("File.java", 1741) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("File.java", 1742) + XMLVM_SOURCE_POSITION("File.java", 1743) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_File*) _r2.o)->fields.java_io_File.path_; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkWrite___java_lang_String(_r0.o, _r1.o); + label11:; + XMLVM_SOURCE_POSITION("File.java", 1745) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_io_File_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_File_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.io.File", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("File.java", 49) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_io_File_compareTo___java_io_File(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_io_File___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_io_File___CLINIT___] + XMLVM_ENTER_METHOD("java.io.File", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("File.java", 82) + java_io_File_PUT_counter( _r3.i); + XMLVM_SOURCE_POSITION("File.java", 85) + java_io_File_PUT_counterBase( _r3.i); + XMLVM_SOURCE_POSITION("File.java", 89) + + + // Red class access removed: java.io.File$TempFileLocker::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: java.io.File$TempFileLocker:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_io_File_PUT_tempFileLocker( _r0.o); + XMLVM_SOURCE_POSITION("File.java", 96) + java_io_File_oneTimeInitialization__(); + XMLVM_SOURCE_POSITION("File.java", 99) + // "file.separator" + _r0.o = xmlvm_create_java_string_from_pool(689); + // "\134" + _r1.o = xmlvm_create_java_string_from_pool(747); + _r0.o = java_lang_System_getProperty___java_lang_String_java_lang_String(_r0.o, _r1.o); + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + java_io_File_PUT_separatorChar( _r0.i); + XMLVM_SOURCE_POSITION("File.java", 100) + // "path.separator" + _r0.o = xmlvm_create_java_string_from_pool(690); + // ";" + _r1.o = xmlvm_create_java_string_from_pool(748); + _r0.o = java_lang_System_getProperty___java_lang_String_java_lang_String(_r0.o, _r1.o); + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + java_io_File_PUT_pathSeparatorChar( _r0.i); + XMLVM_SOURCE_POSITION("File.java", 101) + _r0.o = __NEW_java_lang_String(); + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r4.i); + _r2.i = java_io_File_GET_separatorChar(); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r2.i; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r3.i, _r4.i); + java_io_File_PUT_separator( _r0.o); + XMLVM_SOURCE_POSITION("File.java", 102) + _r0.o = __NEW_java_lang_String(); + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r4.i); + _r2.i = java_io_File_GET_pathSeparatorChar(); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r2.i; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r3.i, _r4.i); + java_io_File_PUT_pathSeparator( _r0.o); + XMLVM_SOURCE_POSITION("File.java", 103) + _r0.i = java_io_File_isCaseSensitiveImpl__(); + java_io_File_PUT_caseSensitive( _r0.i); + XMLVM_SOURCE_POSITION("File.java", 104) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_File.h b/tests/nbody-java/java_io_File.h new file mode 100644 index 0000000000000..620bbb688e846 --- /dev/null +++ b/tests/nbody-java/java_io_File.h @@ -0,0 +1,238 @@ +#ifndef __JAVA_IO_FILE__ +#define __JAVA_IO_FILE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_File 8 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +XMLVM_FORWARD_DECL(java_io_IOException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimePermission +#define XMLVM_FORWARD_DECL_java_lang_RuntimePermission +XMLVM_FORWARD_DECL(java_lang_RuntimePermission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_SecurityManager +#define XMLVM_FORWARD_DECL_java_lang_SecurityManager +XMLVM_FORWARD_DECL(java_lang_SecurityManager) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_ArrayList +#define XMLVM_FORWARD_DECL_java_util_ArrayList +XMLVM_FORWARD_DECL(java_util_ArrayList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_List +#define XMLVM_FORWARD_DECL_java_util_List +XMLVM_FORWARD_DECL(java_util_List) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_PriviAction) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_Util +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_Util +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_Util) +#endif +// Class declarations for java.io.File +XMLVM_DEFINE_CLASS(java_io_File, 7, XMLVM_ITABLE_SIZE_java_io_File) + +extern JAVA_OBJECT __CLASS_java_io_File; +extern JAVA_OBJECT __CLASS_java_io_File_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_File_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_File_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_File +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_File \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT path_; \ + JAVA_OBJECT properPath_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_File \ + } java_io_File + +struct java_io_File { + __TIB_DEFINITION_java_io_File* tib; + struct { + __INSTANCE_FIELDS_java_io_File; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_File +#define XMLVM_FORWARD_DECL_java_io_File +typedef struct java_io_File java_io_File; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_File 7 +#define XMLVM_VTABLE_IDX_java_io_File_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_io_File_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_io_File_toString__ 5 +#define XMLVM_VTABLE_IDX_java_io_File_compareTo___java_lang_Object 6 + +void __INIT_java_io_File(); +void __INIT_IMPL_java_io_File(); +void __DELETE_java_io_File(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_File(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_File(); +JAVA_OBJECT __NEW_INSTANCE_java_io_File(); +void xmlvm_init_native_java_io_File(); +JAVA_LONG java_io_File_GET_serialVersionUID(); +void java_io_File_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_io_File_GET_EMPTY_STRING(); +void java_io_File_PUT_EMPTY_STRING(JAVA_OBJECT v); +JAVA_CHAR java_io_File_GET_separatorChar(); +void java_io_File_PUT_separatorChar(JAVA_CHAR v); +JAVA_OBJECT java_io_File_GET_separator(); +void java_io_File_PUT_separator(JAVA_OBJECT v); +JAVA_CHAR java_io_File_GET_pathSeparatorChar(); +void java_io_File_PUT_pathSeparatorChar(JAVA_CHAR v); +JAVA_OBJECT java_io_File_GET_pathSeparator(); +void java_io_File_PUT_pathSeparator(JAVA_OBJECT v); +JAVA_INT java_io_File_GET_counter(); +void java_io_File_PUT_counter(JAVA_INT v); +JAVA_INT java_io_File_GET_counterBase(); +void java_io_File_PUT_counterBase(JAVA_INT v); +JAVA_OBJECT java_io_File_GET_tempFileLocker(); +void java_io_File_PUT_tempFileLocker(JAVA_OBJECT v); +JAVA_BOOLEAN java_io_File_GET_caseSensitive(); +void java_io_File_PUT_caseSensitive(JAVA_BOOLEAN v); +void java_io_File_oneTimeInitialization__(); +void java_io_File___INIT____java_io_File_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_io_File___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_File___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_io_File___INIT____java_net_URI(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_calculatePath___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_io_File_checkURI___java_net_URI(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_rootsImpl__(); +JAVA_BOOLEAN java_io_File_isCaseSensitiveImpl__(); +JAVA_OBJECT java_io_File_listRoots__(); +JAVA_OBJECT java_io_File_fixSlashes___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_canRead__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_canWrite__(JAVA_OBJECT me); +JAVA_INT java_io_File_compareTo___java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_delete__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_deleteDirImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_deleteFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_File_deleteOnExit__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_io_File_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_exists__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_existsImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_getAbsolutePath__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_getAbsoluteFile__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_getCanonicalPath__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_resolve___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_resolveLink___byte_1ARRAY_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_BOOLEAN n3); +JAVA_OBJECT java_io_File_getCanonicalFile__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_getCanonImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_getName__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_getParent__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_getParentFile__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_getPath__(JAVA_OBJECT me); +JAVA_LONG java_io_File_getTotalSpace__(JAVA_OBJECT me); +JAVA_LONG java_io_File_getTotalSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_LONG java_io_File_getUsableSpace__(JAVA_OBJECT me); +JAVA_LONG java_io_File_getUsableSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_LONG java_io_File_getFreeSpace__(JAVA_OBJECT me); +JAVA_LONG java_io_File_getFreeSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_io_File_hashCode__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_isAbsolute__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_isDirectory__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_isDirectoryImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_isFile__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_isFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_isHidden__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_isHiddenImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_isReadOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_isWriteOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_getLinkImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_LONG java_io_File_lastModified__(JAVA_OBJECT me); +JAVA_LONG java_io_File_lastModifiedImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_setLastModified___long(JAVA_OBJECT me, JAVA_LONG n1); +JAVA_BOOLEAN java_io_File_setLastModifiedImpl___byte_1ARRAY_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2); +JAVA_BOOLEAN java_io_File_setReadOnly__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_setReadOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_setReadable___boolean_boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1, JAVA_BOOLEAN n2); +JAVA_BOOLEAN java_io_File_setReadable___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +JAVA_BOOLEAN java_io_File_setReadableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3); +JAVA_BOOLEAN java_io_File_setWritable___boolean_boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1, JAVA_BOOLEAN n2); +JAVA_BOOLEAN java_io_File_setWritableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3); +JAVA_BOOLEAN java_io_File_setWritable___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +JAVA_LONG java_io_File_length__(JAVA_OBJECT me); +JAVA_LONG java_io_File_lengthImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_list__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_listFiles__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_listFiles___java_io_FilenameFilter(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_listFiles___java_io_FileFilter(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_list___java_io_FilenameFilter(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_listImpl___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_mkdir__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_mkdirImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_mkdirs__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_createNewFile__(JAVA_OBJECT me); +JAVA_INT java_io_File_newFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_io_File_createTempFile___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_io_File_createTempFile___java_lang_String_java_lang_String_java_io_File(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_io_File_genTempFile___java_lang_String_java_lang_String_java_io_File(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_io_File_properPath___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +JAVA_BOOLEAN java_io_File_renameTo___java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_renameToImpl___byte_1ARRAY_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 5 +JAVA_OBJECT java_io_File_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_toURI__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_toURL__(JAVA_OBJECT me); +JAVA_OBJECT java_io_File_getAbsoluteName__(JAVA_OBJECT me); +void java_io_File_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_File_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_File_setExecutable___boolean_boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1, JAVA_BOOLEAN n2); +JAVA_BOOLEAN java_io_File_setExecutable___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +JAVA_BOOLEAN java_io_File_setExecutableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3); +JAVA_BOOLEAN java_io_File_canExecute__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_File_isExecutableImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_File_checkExec__(JAVA_OBJECT me); +void java_io_File_checkWrite__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_INT java_io_File_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_File___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_io_FileDescriptor.c b/tests/nbody-java/java_io_FileDescriptor.c new file mode 100644 index 0000000000000..3cc2bc61ab9f8 --- /dev/null +++ b/tests/nbody-java/java_io_FileDescriptor.c @@ -0,0 +1,309 @@ +#include "xmlvm.h" + +#include "java_io_FileDescriptor.h" + +#define XMLVM_CURRENT_CLASS_NAME FileDescriptor +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_FileDescriptor + +__TIB_DEFINITION_java_io_FileDescriptor __TIB_java_io_FileDescriptor = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_FileDescriptor, // classInitializer + "java.io.FileDescriptor", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_io_FileDescriptor), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_FileDescriptor; +JAVA_OBJECT __CLASS_java_io_FileDescriptor_1ARRAY; +JAVA_OBJECT __CLASS_java_io_FileDescriptor_2ARRAY; +JAVA_OBJECT __CLASS_java_io_FileDescriptor_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_io_FileDescriptor_in; +static JAVA_OBJECT _STATIC_java_io_FileDescriptor_out; +static JAVA_OBJECT _STATIC_java_io_FileDescriptor_err; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_FileDescriptor() +{ + staticInitializerLock(&__TIB_java_io_FileDescriptor); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_FileDescriptor.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_FileDescriptor.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_FileDescriptor); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_FileDescriptor.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_FileDescriptor.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_FileDescriptor.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.FileDescriptor") + __INIT_IMPL_java_io_FileDescriptor(); + } +} + +void __INIT_IMPL_java_io_FileDescriptor() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_io_FileDescriptor.newInstanceFunc = __NEW_INSTANCE_java_io_FileDescriptor; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_FileDescriptor.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_io_FileDescriptor.numImplementedInterfaces = 0; + __TIB_java_io_FileDescriptor.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_io_FileDescriptor_in = (java_io_FileDescriptor*) JAVA_NULL; + _STATIC_java_io_FileDescriptor_out = (java_io_FileDescriptor*) JAVA_NULL; + _STATIC_java_io_FileDescriptor_err = (java_io_FileDescriptor*) JAVA_NULL; + + __TIB_java_io_FileDescriptor.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_FileDescriptor.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_FileDescriptor.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_FileDescriptor.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_FileDescriptor.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_FileDescriptor.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_FileDescriptor.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_FileDescriptor.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_FileDescriptor = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_FileDescriptor); + __TIB_java_io_FileDescriptor.clazz = __CLASS_java_io_FileDescriptor; + __TIB_java_io_FileDescriptor.baseType = JAVA_NULL; + __CLASS_java_io_FileDescriptor_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_FileDescriptor); + __CLASS_java_io_FileDescriptor_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_FileDescriptor_1ARRAY); + __CLASS_java_io_FileDescriptor_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_FileDescriptor_2ARRAY); + java_io_FileDescriptor___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_FileDescriptor] + //XMLVM_END_WRAPPER + + __TIB_java_io_FileDescriptor.classInitialized = 1; +} + +void __DELETE_java_io_FileDescriptor(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_FileDescriptor] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_FileDescriptor(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_io_FileDescriptor*) me)->fields.java_io_FileDescriptor.descriptor_ = 0; + ((java_io_FileDescriptor*) me)->fields.java_io_FileDescriptor.readOnly_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_FileDescriptor] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_FileDescriptor() +{ XMLVM_CLASS_INIT(java_io_FileDescriptor) +java_io_FileDescriptor* me = (java_io_FileDescriptor*) XMLVM_MALLOC(sizeof(java_io_FileDescriptor)); + me->tib = &__TIB_java_io_FileDescriptor; + __INIT_INSTANCE_MEMBERS_java_io_FileDescriptor(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_FileDescriptor] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_FileDescriptor() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_io_FileDescriptor(); + java_io_FileDescriptor___INIT___(me); + return me; +} + +JAVA_OBJECT java_io_FileDescriptor_GET_in() +{ + XMLVM_CLASS_INIT(java_io_FileDescriptor) + return _STATIC_java_io_FileDescriptor_in; +} + +void java_io_FileDescriptor_PUT_in(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_FileDescriptor) +_STATIC_java_io_FileDescriptor_in = v; +} + +JAVA_OBJECT java_io_FileDescriptor_GET_out() +{ + XMLVM_CLASS_INIT(java_io_FileDescriptor) + return _STATIC_java_io_FileDescriptor_out; +} + +void java_io_FileDescriptor_PUT_out(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_FileDescriptor) +_STATIC_java_io_FileDescriptor_out = v; +} + +JAVA_OBJECT java_io_FileDescriptor_GET_err() +{ + XMLVM_CLASS_INIT(java_io_FileDescriptor) + return _STATIC_java_io_FileDescriptor_err; +} + +void java_io_FileDescriptor_PUT_err(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_FileDescriptor) +_STATIC_java_io_FileDescriptor_err = v; +} + +void java_io_FileDescriptor___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_io_FileDescriptor___CLINIT___] + XMLVM_ENTER_METHOD("java.io.FileDescriptor", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 43) + _r0.o = __NEW_java_io_FileDescriptor(); + XMLVM_CHECK_NPE(0) + java_io_FileDescriptor___INIT___(_r0.o); + java_io_FileDescriptor_PUT_in( _r0.o); + XMLVM_SOURCE_POSITION("FileDescriptor.java", 48) + _r0.o = __NEW_java_io_FileDescriptor(); + XMLVM_CHECK_NPE(0) + java_io_FileDescriptor___INIT___(_r0.o); + java_io_FileDescriptor_PUT_out( _r0.o); + XMLVM_SOURCE_POSITION("FileDescriptor.java", 53) + _r0.o = __NEW_java_io_FileDescriptor(); + XMLVM_CHECK_NPE(0) + java_io_FileDescriptor___INIT___(_r0.o); + java_io_FileDescriptor_PUT_err( _r0.o); + XMLVM_SOURCE_POSITION("FileDescriptor.java", 66) + _r0.o = java_io_FileDescriptor_GET_in(); + _r1.l = 0; + XMLVM_CHECK_NPE(0) + ((java_io_FileDescriptor*) _r0.o)->fields.java_io_FileDescriptor.descriptor_ = _r1.l; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 67) + _r0.o = java_io_FileDescriptor_GET_out(); + _r1.l = 1; + XMLVM_CHECK_NPE(0) + ((java_io_FileDescriptor*) _r0.o)->fields.java_io_FileDescriptor.descriptor_ = _r1.l; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 68) + _r0.o = java_io_FileDescriptor_GET_err(); + _r1.l = 2; + XMLVM_CHECK_NPE(0) + ((java_io_FileDescriptor*) _r0.o)->fields.java_io_FileDescriptor.descriptor_ = _r1.l; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 70) + java_io_FileDescriptor_oneTimeInitialization__(); + XMLVM_SOURCE_POSITION("FileDescriptor.java", 38) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_io_FileDescriptor_oneTimeInitialization__()] + +void java_io_FileDescriptor___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FileDescriptor___INIT___] + XMLVM_ENTER_METHOD("java.io.FileDescriptor", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 78) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("FileDescriptor.java", 59) + _r0.l = -1; + XMLVM_CHECK_NPE(2) + ((java_io_FileDescriptor*) _r2.o)->fields.java_io_FileDescriptor.descriptor_ = _r0.l; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 61) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + ((java_io_FileDescriptor*) _r2.o)->fields.java_io_FileDescriptor.readOnly_ = _r0.i; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 79) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_FileDescriptor_sync__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FileDescriptor_sync__] + XMLVM_ENTER_METHOD("java.io.FileDescriptor", "sync", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 90) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_io_FileDescriptor*) _r1.o)->fields.java_io_FileDescriptor.readOnly_; + if (_r0.i != 0) goto label7; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 91) + XMLVM_CHECK_NPE(1) + java_io_FileDescriptor_syncImpl__(_r1.o); + label7:; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 93) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_io_FileDescriptor_syncImpl__(JAVA_OBJECT me)] + +JAVA_BOOLEAN java_io_FileDescriptor_valid__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FileDescriptor_valid__] + XMLVM_ENTER_METHOD("java.io.FileDescriptor", "valid", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("FileDescriptor.java", 104) + XMLVM_CHECK_NPE(4) + _r0.l = ((java_io_FileDescriptor*) _r4.o)->fields.java_io_FileDescriptor.descriptor_; + _r2.l = -1; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i == 0) goto label10; + _r0.i = 1; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = 0; + goto label9; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_FileDescriptor.h b/tests/nbody-java/java_io_FileDescriptor.h new file mode 100644 index 0000000000000..72fb91c7c6933 --- /dev/null +++ b/tests/nbody-java/java_io_FileDescriptor.h @@ -0,0 +1,65 @@ +#ifndef __JAVA_IO_FILEDESCRIPTOR__ +#define __JAVA_IO_FILEDESCRIPTOR__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_FileDescriptor 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +// Class declarations for java.io.FileDescriptor +XMLVM_DEFINE_CLASS(java_io_FileDescriptor, 6, XMLVM_ITABLE_SIZE_java_io_FileDescriptor) + +extern JAVA_OBJECT __CLASS_java_io_FileDescriptor; +extern JAVA_OBJECT __CLASS_java_io_FileDescriptor_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_FileDescriptor_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_FileDescriptor_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_FileDescriptor +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_FileDescriptor \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_LONG descriptor_; \ + JAVA_BOOLEAN readOnly_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_FileDescriptor \ + } java_io_FileDescriptor + +struct java_io_FileDescriptor { + __TIB_DEFINITION_java_io_FileDescriptor* tib; + struct { + __INSTANCE_FIELDS_java_io_FileDescriptor; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_FileDescriptor +#define XMLVM_FORWARD_DECL_java_io_FileDescriptor +typedef struct java_io_FileDescriptor java_io_FileDescriptor; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_FileDescriptor 6 + +void __INIT_java_io_FileDescriptor(); +void __INIT_IMPL_java_io_FileDescriptor(); +void __DELETE_java_io_FileDescriptor(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_FileDescriptor(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_FileDescriptor(); +JAVA_OBJECT __NEW_INSTANCE_java_io_FileDescriptor(); +void xmlvm_init_native_java_io_FileDescriptor(); +JAVA_OBJECT java_io_FileDescriptor_GET_in(); +void java_io_FileDescriptor_PUT_in(JAVA_OBJECT v); +JAVA_OBJECT java_io_FileDescriptor_GET_out(); +void java_io_FileDescriptor_PUT_out(JAVA_OBJECT v); +JAVA_OBJECT java_io_FileDescriptor_GET_err(); +void java_io_FileDescriptor_PUT_err(JAVA_OBJECT v); +void java_io_FileDescriptor___CLINIT_(); +void java_io_FileDescriptor_oneTimeInitialization__(); +void java_io_FileDescriptor___INIT___(JAVA_OBJECT me); +void java_io_FileDescriptor_sync__(JAVA_OBJECT me); +void java_io_FileDescriptor_syncImpl__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_FileDescriptor_valid__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_io_FilterOutputStream.c b/tests/nbody-java/java_io_FilterOutputStream.c new file mode 100644 index 0000000000000..7611c9207e512 --- /dev/null +++ b/tests/nbody-java/java_io_FilterOutputStream.c @@ -0,0 +1,386 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" +#include "java_lang_Throwable.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_io_FilterOutputStream.h" + +#define XMLVM_CURRENT_CLASS_NAME FilterOutputStream +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_FilterOutputStream + +__TIB_DEFINITION_java_io_FilterOutputStream __TIB_java_io_FilterOutputStream = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_FilterOutputStream, // classInitializer + "java.io.FilterOutputStream", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_OutputStream, // extends + sizeof(java_io_FilterOutputStream), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_FilterOutputStream; +JAVA_OBJECT __CLASS_java_io_FilterOutputStream_1ARRAY; +JAVA_OBJECT __CLASS_java_io_FilterOutputStream_2ARRAY; +JAVA_OBJECT __CLASS_java_io_FilterOutputStream_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_FilterOutputStream() +{ + staticInitializerLock(&__TIB_java_io_FilterOutputStream); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_FilterOutputStream.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_FilterOutputStream.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_FilterOutputStream); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_FilterOutputStream.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_FilterOutputStream.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_FilterOutputStream.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.FilterOutputStream") + __INIT_IMPL_java_io_FilterOutputStream(); + } +} + +void __INIT_IMPL_java_io_FilterOutputStream() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_OutputStream) + __TIB_java_io_FilterOutputStream.newInstanceFunc = __NEW_INSTANCE_java_io_FilterOutputStream; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_FilterOutputStream.vtable, __TIB_java_io_OutputStream.vtable, sizeof(__TIB_java_io_OutputStream.vtable)); + // Initialize vtable for this class + __TIB_java_io_FilterOutputStream.vtable[7] = (VTABLE_PTR) &java_io_FilterOutputStream_close__; + __TIB_java_io_FilterOutputStream.vtable[8] = (VTABLE_PTR) &java_io_FilterOutputStream_flush__; + __TIB_java_io_FilterOutputStream.vtable[9] = (VTABLE_PTR) &java_io_FilterOutputStream_write___byte_1ARRAY; + __TIB_java_io_FilterOutputStream.vtable[10] = (VTABLE_PTR) &java_io_FilterOutputStream_write___byte_1ARRAY_int_int; + __TIB_java_io_FilterOutputStream.vtable[11] = (VTABLE_PTR) &java_io_FilterOutputStream_write___int; + // Initialize interface information + __TIB_java_io_FilterOutputStream.numImplementedInterfaces = 2; + __TIB_java_io_FilterOutputStream.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Closeable) + + __TIB_java_io_FilterOutputStream.implementedInterfaces[0][0] = &__TIB_java_io_Closeable; + + XMLVM_CLASS_INIT(java_io_Flushable) + + __TIB_java_io_FilterOutputStream.implementedInterfaces[0][1] = &__TIB_java_io_Flushable; + // Initialize itable for this class + __TIB_java_io_FilterOutputStream.itableBegin = &__TIB_java_io_FilterOutputStream.itable[0]; + __TIB_java_io_FilterOutputStream.itable[XMLVM_ITABLE_IDX_java_io_Closeable_close__] = __TIB_java_io_FilterOutputStream.vtable[7]; + __TIB_java_io_FilterOutputStream.itable[XMLVM_ITABLE_IDX_java_io_Flushable_flush__] = __TIB_java_io_FilterOutputStream.vtable[8]; + + + __TIB_java_io_FilterOutputStream.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_FilterOutputStream.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_FilterOutputStream.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_FilterOutputStream.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_FilterOutputStream.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_FilterOutputStream.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_FilterOutputStream.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_FilterOutputStream.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_FilterOutputStream = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_FilterOutputStream); + __TIB_java_io_FilterOutputStream.clazz = __CLASS_java_io_FilterOutputStream; + __TIB_java_io_FilterOutputStream.baseType = JAVA_NULL; + __CLASS_java_io_FilterOutputStream_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_FilterOutputStream); + __CLASS_java_io_FilterOutputStream_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_FilterOutputStream_1ARRAY); + __CLASS_java_io_FilterOutputStream_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_FilterOutputStream_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_FilterOutputStream] + //XMLVM_END_WRAPPER + + __TIB_java_io_FilterOutputStream.classInitialized = 1; +} + +void __DELETE_java_io_FilterOutputStream(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_FilterOutputStream] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_FilterOutputStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_OutputStream(me, 0 || derivedClassWillRegisterFinalizer); + ((java_io_FilterOutputStream*) me)->fields.java_io_FilterOutputStream.out_ = (java_io_OutputStream*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_FilterOutputStream] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_FilterOutputStream() +{ XMLVM_CLASS_INIT(java_io_FilterOutputStream) +java_io_FilterOutputStream* me = (java_io_FilterOutputStream*) XMLVM_MALLOC(sizeof(java_io_FilterOutputStream)); + me->tib = &__TIB_java_io_FilterOutputStream; + __INIT_INSTANCE_MEMBERS_java_io_FilterOutputStream(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_FilterOutputStream] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_FilterOutputStream() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_io_FilterOutputStream___INIT____java_io_OutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FilterOutputStream___INIT____java_io_OutputStream] + XMLVM_ENTER_METHOD("java.io.FilterOutputStream", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 47) + XMLVM_CHECK_NPE(0) + java_io_OutputStream___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 48) + XMLVM_CHECK_NPE(0) + ((java_io_FilterOutputStream*) _r0.o)->fields.java_io_FilterOutputStream.out_ = _r1.o; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 49) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_FilterOutputStream_close__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FilterOutputStream_close__] + XMLVM_ENTER_METHOD("java.io.FilterOutputStream", "close", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 59) + _r0.o = JAVA_NULL; + XMLVM_TRY_BEGIN(w4463aaab2b1b4) + // Begin try + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 61) + //java_io_FilterOutputStream_flush__[8] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT)) ((java_io_FilterOutputStream*) _r2.o)->tib->vtable[8])(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4463aaab2b1b4) + XMLVM_CATCH_SPECIFIC(w4463aaab2b1b4,java_lang_Throwable,20) + XMLVM_CATCH_END(w4463aaab2b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w4463aaab2b1b4) + label4:; + XMLVM_TRY_BEGIN(w4463aaab2b1b6) + // Begin try + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 67) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_; + //java_io_OutputStream_close__[7] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT)) ((java_io_OutputStream*) _r1.o)->tib->vtable[7])(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4463aaab2b1b6) + XMLVM_CATCH_SPECIFIC(w4463aaab2b1b6,java_lang_Throwable,15) + XMLVM_CATCH_END(w4463aaab2b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4463aaab2b1b6) + label9:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 74) + if (_r0.o == JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 75) + + + // Red class access removed: org.apache.harmony.luni.util.SneakyThrow::sneakyThrow + XMLVM_RED_CLASS_DEPENDENCY(); + label14:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 77) + XMLVM_EXIT_METHOD() + return; + label15:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 68) + java_lang_Thread* curThread_w4463aaab2b1c17 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4463aaab2b1c17->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 69) + if (_r0.o != JAVA_NULL) goto label9; + _r0 = _r1; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 70) + goto label9; + label20:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 62) + java_lang_Thread* curThread_w4463aaab2b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4463aaab2b1c25->fields.java_lang_Thread.xmlvmException_; + goto label4; + //XMLVM_END_WRAPPER +} + +void java_io_FilterOutputStream_flush__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FilterOutputStream_flush__] + XMLVM_ENTER_METHOD("java.io.FilterOutputStream", "flush", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 88) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_FilterOutputStream*) _r1.o)->fields.java_io_FilterOutputStream.out_; + //java_io_OutputStream_flush__[8] + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) ((java_io_OutputStream*) _r0.o)->tib->vtable[8])(_r0.o); + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 89) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_FilterOutputStream_write___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FilterOutputStream_write___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.io.FilterOutputStream", "write", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 103) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + //java_io_FilterOutputStream_write___byte_1ARRAY_int_int[10] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_io_FilterOutputStream*) _r2.o)->tib->vtable[10])(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 104) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_FilterOutputStream_write___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FilterOutputStream_write___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.io.FilterOutputStream", "write", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 126) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r4.i > _r0.i) goto label5; + if (_r4.i >= 0) goto label17; + label5:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 128) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.12" + _r1.o = xmlvm_create_java_string_from_pool(61); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r1.o, _r4.i); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 130) + if (_r5.i < 0) goto label23; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r0.i = _r0.i - _r4.i; + if (_r5.i <= _r0.i) goto label35; + label23:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 132) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.18" + _r1.o = xmlvm_create_java_string_from_pool(62); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r1.o, _r5.i); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label35:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 134) + _r0.i = 0; + label36:; + if (_r0.i < _r5.i) goto label39; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 139) + XMLVM_EXIT_METHOD() + return; + label39:; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 137) + _r1.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + //java_io_FilterOutputStream_write___int[11] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_INT)) ((java_io_FilterOutputStream*) _r2.o)->tib->vtable[11])(_r2.o, _r1.i); + _r0.i = _r0.i + 1; + goto label36; + //XMLVM_END_WRAPPER +} + +void java_io_FilterOutputStream_write___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_FilterOutputStream_write___int] + XMLVM_ENTER_METHOD("java.io.FilterOutputStream", "write", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 152) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_FilterOutputStream*) _r1.o)->fields.java_io_FilterOutputStream.out_; + //java_io_OutputStream_write___int[11] + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT, JAVA_INT)) ((java_io_OutputStream*) _r0.o)->tib->vtable[11])(_r0.o, _r2.i); + XMLVM_SOURCE_POSITION("FilterOutputStream.java", 153) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_FilterOutputStream.h b/tests/nbody-java/java_io_FilterOutputStream.h new file mode 100644 index 0000000000000..5fa1eeb18d0e6 --- /dev/null +++ b/tests/nbody-java/java_io_FilterOutputStream.h @@ -0,0 +1,83 @@ +#ifndef __JAVA_IO_FILTEROUTPUTSTREAM__ +#define __JAVA_IO_FILTEROUTPUTSTREAM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_FilterOutputStream 2 +// Implemented interfaces: +// Super Class: +#include "java_io_OutputStream.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.io.FilterOutputStream +XMLVM_DEFINE_CLASS(java_io_FilterOutputStream, 12, XMLVM_ITABLE_SIZE_java_io_FilterOutputStream) + +extern JAVA_OBJECT __CLASS_java_io_FilterOutputStream; +extern JAVA_OBJECT __CLASS_java_io_FilterOutputStream_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_FilterOutputStream_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_FilterOutputStream_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_FilterOutputStream +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_FilterOutputStream \ + __INSTANCE_FIELDS_java_io_OutputStream; \ + struct { \ + JAVA_OBJECT out_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_FilterOutputStream \ + } java_io_FilterOutputStream + +struct java_io_FilterOutputStream { + __TIB_DEFINITION_java_io_FilterOutputStream* tib; + struct { + __INSTANCE_FIELDS_java_io_FilterOutputStream; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_FilterOutputStream +#define XMLVM_FORWARD_DECL_java_io_FilterOutputStream +typedef struct java_io_FilterOutputStream java_io_FilterOutputStream; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_FilterOutputStream 12 +#define XMLVM_VTABLE_IDX_java_io_FilterOutputStream_close__ 7 +#define XMLVM_VTABLE_IDX_java_io_FilterOutputStream_flush__ 8 +#define XMLVM_VTABLE_IDX_java_io_FilterOutputStream_write___byte_1ARRAY 9 +#define XMLVM_VTABLE_IDX_java_io_FilterOutputStream_write___byte_1ARRAY_int_int 10 +#define XMLVM_VTABLE_IDX_java_io_FilterOutputStream_write___int 11 + +void __INIT_java_io_FilterOutputStream(); +void __INIT_IMPL_java_io_FilterOutputStream(); +void __DELETE_java_io_FilterOutputStream(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_FilterOutputStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_FilterOutputStream(); +JAVA_OBJECT __NEW_INSTANCE_java_io_FilterOutputStream(); +void java_io_FilterOutputStream___INIT____java_io_OutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 7 +void java_io_FilterOutputStream_close__(JAVA_OBJECT me); +// Vtable index: 8 +void java_io_FilterOutputStream_flush__(JAVA_OBJECT me); +// Vtable index: 9 +void java_io_FilterOutputStream_write___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 10 +void java_io_FilterOutputStream_write___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 11 +void java_io_FilterOutputStream_write___int(JAVA_OBJECT me, JAVA_INT n1); + +#endif diff --git a/tests/nbody-java/java_io_Flushable.c b/tests/nbody-java/java_io_Flushable.c new file mode 100644 index 0000000000000..99ac4e83d7933 --- /dev/null +++ b/tests/nbody-java/java_io_Flushable.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_io_Flushable.h" + +__TIB_DEFINITION_java_io_Flushable __TIB_java_io_Flushable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_Flushable, // classInitializer + "java.io.Flushable", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_io_Flushable; +JAVA_OBJECT __CLASS_java_io_Flushable_1ARRAY; +JAVA_OBJECT __CLASS_java_io_Flushable_2ARRAY; +JAVA_OBJECT __CLASS_java_io_Flushable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_io_Flushable() +{ + staticInitializerLock(&__TIB_java_io_Flushable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_Flushable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_Flushable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_Flushable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_Flushable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_Flushable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_Flushable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.Flushable") + __INIT_IMPL_java_io_Flushable(); + } +} + +void __INIT_IMPL_java_io_Flushable() +{ + __TIB_java_io_Flushable.numInterfaces = 0; + __TIB_java_io_Flushable.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_Flushable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_io_Flushable.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_Flushable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_Flushable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_io_Flushable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_Flushable); + __TIB_java_io_Flushable.clazz = __CLASS_java_io_Flushable; + __TIB_java_io_Flushable.baseType = JAVA_NULL; + __CLASS_java_io_Flushable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Flushable); + __CLASS_java_io_Flushable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Flushable_1ARRAY); + __CLASS_java_io_Flushable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Flushable_2ARRAY); + + __TIB_java_io_Flushable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_io_Flushable.h b/tests/nbody-java/java_io_Flushable.h new file mode 100644 index 0000000000000..ef09961840a16 --- /dev/null +++ b/tests/nbody-java/java_io_Flushable.h @@ -0,0 +1,28 @@ +#ifndef __JAVA_IO_FLUSHABLE__ +#define __JAVA_IO_FLUSHABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_io_Flushable_flush__ 1 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_io_Flushable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_io_Flushable; +extern JAVA_OBJECT __CLASS_java_io_Flushable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_Flushable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_Flushable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_io_Flushable +#define XMLVM_FORWARD_DECL_java_io_Flushable +typedef struct java_io_Flushable java_io_Flushable; +#endif + +void __INIT_java_io_Flushable(); +void __INIT_IMPL_java_io_Flushable(); + +#endif diff --git a/tests/nbody-java/java_io_IOException.c b/tests/nbody-java/java_io_IOException.c new file mode 100644 index 0000000000000..0c0551afbfdec --- /dev/null +++ b/tests/nbody-java/java_io_IOException.c @@ -0,0 +1,243 @@ +#include "xmlvm.h" +#include "java_lang_String.h" +#include "java_lang_Throwable.h" + +#include "java_io_IOException.h" + +#define XMLVM_CURRENT_CLASS_NAME IOException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_IOException + +__TIB_DEFINITION_java_io_IOException __TIB_java_io_IOException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_IOException, // classInitializer + "java.io.IOException", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Exception, // extends + sizeof(java_io_IOException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_IOException; +JAVA_OBJECT __CLASS_java_io_IOException_1ARRAY; +JAVA_OBJECT __CLASS_java_io_IOException_2ARRAY; +JAVA_OBJECT __CLASS_java_io_IOException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_io_IOException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_IOException() +{ + staticInitializerLock(&__TIB_java_io_IOException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_IOException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_IOException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_IOException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_IOException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_IOException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_IOException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.IOException") + __INIT_IMPL_java_io_IOException(); + } +} + +void __INIT_IMPL_java_io_IOException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Exception) + __TIB_java_io_IOException.newInstanceFunc = __NEW_INSTANCE_java_io_IOException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_IOException.vtable, __TIB_java_lang_Exception.vtable, sizeof(__TIB_java_lang_Exception.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_io_IOException.numImplementedInterfaces = 1; + __TIB_java_io_IOException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_io_IOException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_io_IOException.itableBegin = &__TIB_java_io_IOException.itable[0]; + + _STATIC_java_io_IOException_serialVersionUID = 7818375828146090155; + + __TIB_java_io_IOException.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_IOException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_IOException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_IOException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_IOException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_IOException.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_IOException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_IOException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_IOException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_IOException); + __TIB_java_io_IOException.clazz = __CLASS_java_io_IOException; + __TIB_java_io_IOException.baseType = JAVA_NULL; + __CLASS_java_io_IOException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_IOException); + __CLASS_java_io_IOException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_IOException_1ARRAY); + __CLASS_java_io_IOException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_IOException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_IOException] + //XMLVM_END_WRAPPER + + __TIB_java_io_IOException.classInitialized = 1; +} + +void __DELETE_java_io_IOException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_IOException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_IOException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Exception(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_IOException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_IOException() +{ XMLVM_CLASS_INIT(java_io_IOException) +java_io_IOException* me = (java_io_IOException*) XMLVM_MALLOC(sizeof(java_io_IOException)); + me->tib = &__TIB_java_io_IOException; + __INIT_INSTANCE_MEMBERS_java_io_IOException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_IOException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_IOException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_io_IOException(); + java_io_IOException___INIT___(me); + return me; +} + +JAVA_LONG java_io_IOException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_io_IOException) + return _STATIC_java_io_IOException_serialVersionUID; +} + +void java_io_IOException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_io_IOException) +_STATIC_java_io_IOException_serialVersionUID = v; +} + +void java_io_IOException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_IOException___INIT___] + XMLVM_ENTER_METHOD("java.io.IOException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("IOException.java", 34) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("IOException.java", 35) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_IOException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_IOException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.io.IOException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("IOException.java", 45) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("IOException.java", 46) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_IOException___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_IOException___INIT____java_lang_String_java_lang_Throwable] + XMLVM_ENTER_METHOD("java.io.IOException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("IOException.java", 59) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT____java_lang_String_java_lang_Throwable(_r0.o, _r1.o, _r2.o); + XMLVM_SOURCE_POSITION("IOException.java", 60) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_IOException___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_IOException___INIT____java_lang_Throwable] + XMLVM_ENTER_METHOD("java.io.IOException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("IOException.java", 70) + if (_r2.o != JAVA_NULL) goto label7; + _r0.o = JAVA_NULL; + label3:; + XMLVM_CHECK_NPE(1) + java_lang_Exception___INIT____java_lang_String_java_lang_Throwable(_r1.o, _r0.o, _r2.o); + XMLVM_SOURCE_POSITION("IOException.java", 71) + XMLVM_EXIT_METHOD() + return; + label7:; + //java_lang_Throwable_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r2.o)->tib->vtable[5])(_r2.o); + goto label3; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_IOException.h b/tests/nbody-java/java_io_IOException.h new file mode 100644 index 0000000000000..d2f06fed86aa6 --- /dev/null +++ b/tests/nbody-java/java_io_IOException.h @@ -0,0 +1,64 @@ +#ifndef __JAVA_IO_IOEXCEPTION__ +#define __JAVA_IO_IOEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_IOException 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Exception.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +// Class declarations for java.io.IOException +XMLVM_DEFINE_CLASS(java_io_IOException, 8, XMLVM_ITABLE_SIZE_java_io_IOException) + +extern JAVA_OBJECT __CLASS_java_io_IOException; +extern JAVA_OBJECT __CLASS_java_io_IOException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_IOException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_IOException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_IOException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_IOException \ + __INSTANCE_FIELDS_java_lang_Exception; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_IOException \ + } java_io_IOException + +struct java_io_IOException { + __TIB_DEFINITION_java_io_IOException* tib; + struct { + __INSTANCE_FIELDS_java_io_IOException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +typedef struct java_io_IOException java_io_IOException; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_IOException 8 + +void __INIT_java_io_IOException(); +void __INIT_IMPL_java_io_IOException(); +void __DELETE_java_io_IOException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_IOException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_IOException(); +JAVA_OBJECT __NEW_INSTANCE_java_io_IOException(); +JAVA_LONG java_io_IOException_GET_serialVersionUID(); +void java_io_IOException_PUT_serialVersionUID(JAVA_LONG v); +void java_io_IOException___INIT___(JAVA_OBJECT me); +void java_io_IOException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_IOException___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_io_IOException___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_io_InterruptedIOException.c b/tests/nbody-java/java_io_InterruptedIOException.c new file mode 100644 index 0000000000000..ac0112792848c --- /dev/null +++ b/tests/nbody-java/java_io_InterruptedIOException.c @@ -0,0 +1,198 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_io_InterruptedIOException.h" + +#define XMLVM_CURRENT_CLASS_NAME InterruptedIOException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_InterruptedIOException + +__TIB_DEFINITION_java_io_InterruptedIOException __TIB_java_io_InterruptedIOException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_InterruptedIOException, // classInitializer + "java.io.InterruptedIOException", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_IOException, // extends + sizeof(java_io_InterruptedIOException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_InterruptedIOException; +JAVA_OBJECT __CLASS_java_io_InterruptedIOException_1ARRAY; +JAVA_OBJECT __CLASS_java_io_InterruptedIOException_2ARRAY; +JAVA_OBJECT __CLASS_java_io_InterruptedIOException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_io_InterruptedIOException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_InterruptedIOException() +{ + staticInitializerLock(&__TIB_java_io_InterruptedIOException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_InterruptedIOException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_InterruptedIOException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_InterruptedIOException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_InterruptedIOException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_InterruptedIOException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_InterruptedIOException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.InterruptedIOException") + __INIT_IMPL_java_io_InterruptedIOException(); + } +} + +void __INIT_IMPL_java_io_InterruptedIOException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_IOException) + __TIB_java_io_InterruptedIOException.newInstanceFunc = __NEW_INSTANCE_java_io_InterruptedIOException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_InterruptedIOException.vtable, __TIB_java_io_IOException.vtable, sizeof(__TIB_java_io_IOException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_io_InterruptedIOException.numImplementedInterfaces = 1; + __TIB_java_io_InterruptedIOException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_io_InterruptedIOException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_io_InterruptedIOException.itableBegin = &__TIB_java_io_InterruptedIOException.itable[0]; + + _STATIC_java_io_InterruptedIOException_serialVersionUID = 4020568460727500567; + + __TIB_java_io_InterruptedIOException.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_InterruptedIOException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_InterruptedIOException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_InterruptedIOException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_InterruptedIOException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_InterruptedIOException.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_InterruptedIOException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_InterruptedIOException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_InterruptedIOException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_InterruptedIOException); + __TIB_java_io_InterruptedIOException.clazz = __CLASS_java_io_InterruptedIOException; + __TIB_java_io_InterruptedIOException.baseType = JAVA_NULL; + __CLASS_java_io_InterruptedIOException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InterruptedIOException); + __CLASS_java_io_InterruptedIOException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InterruptedIOException_1ARRAY); + __CLASS_java_io_InterruptedIOException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InterruptedIOException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_InterruptedIOException] + //XMLVM_END_WRAPPER + + __TIB_java_io_InterruptedIOException.classInitialized = 1; +} + +void __DELETE_java_io_InterruptedIOException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_InterruptedIOException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_InterruptedIOException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_IOException(me, 0 || derivedClassWillRegisterFinalizer); + ((java_io_InterruptedIOException*) me)->fields.java_io_InterruptedIOException.bytesTransferred_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_InterruptedIOException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_InterruptedIOException() +{ XMLVM_CLASS_INIT(java_io_InterruptedIOException) +java_io_InterruptedIOException* me = (java_io_InterruptedIOException*) XMLVM_MALLOC(sizeof(java_io_InterruptedIOException)); + me->tib = &__TIB_java_io_InterruptedIOException; + __INIT_INSTANCE_MEMBERS_java_io_InterruptedIOException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_InterruptedIOException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_InterruptedIOException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_io_InterruptedIOException(); + java_io_InterruptedIOException___INIT___(me); + return me; +} + +JAVA_LONG java_io_InterruptedIOException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_io_InterruptedIOException) + return _STATIC_java_io_InterruptedIOException_serialVersionUID; +} + +void java_io_InterruptedIOException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_io_InterruptedIOException) +_STATIC_java_io_InterruptedIOException_serialVersionUID = v; +} + +void java_io_InterruptedIOException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_InterruptedIOException___INIT___] + XMLVM_ENTER_METHOD("java.io.InterruptedIOException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("InterruptedIOException.java", 39) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("InterruptedIOException.java", 40) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_InterruptedIOException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_InterruptedIOException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.io.InterruptedIOException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InterruptedIOException.java", 50) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("InterruptedIOException.java", 51) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_InterruptedIOException.h b/tests/nbody-java/java_io_InterruptedIOException.h new file mode 100644 index 0000000000000..9735fbfddf7f3 --- /dev/null +++ b/tests/nbody-java/java_io_InterruptedIOException.h @@ -0,0 +1,59 @@ +#ifndef __JAVA_IO_INTERRUPTEDIOEXCEPTION__ +#define __JAVA_IO_INTERRUPTEDIOEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_InterruptedIOException 0 +// Implemented interfaces: +// Super Class: +#include "java_io_IOException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.io.InterruptedIOException +XMLVM_DEFINE_CLASS(java_io_InterruptedIOException, 8, XMLVM_ITABLE_SIZE_java_io_InterruptedIOException) + +extern JAVA_OBJECT __CLASS_java_io_InterruptedIOException; +extern JAVA_OBJECT __CLASS_java_io_InterruptedIOException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_InterruptedIOException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_InterruptedIOException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_InterruptedIOException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_InterruptedIOException \ + __INSTANCE_FIELDS_java_io_IOException; \ + struct { \ + JAVA_INT bytesTransferred_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_InterruptedIOException \ + } java_io_InterruptedIOException + +struct java_io_InterruptedIOException { + __TIB_DEFINITION_java_io_InterruptedIOException* tib; + struct { + __INSTANCE_FIELDS_java_io_InterruptedIOException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_InterruptedIOException +#define XMLVM_FORWARD_DECL_java_io_InterruptedIOException +typedef struct java_io_InterruptedIOException java_io_InterruptedIOException; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_InterruptedIOException 8 + +void __INIT_java_io_InterruptedIOException(); +void __INIT_IMPL_java_io_InterruptedIOException(); +void __DELETE_java_io_InterruptedIOException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_InterruptedIOException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_InterruptedIOException(); +JAVA_OBJECT __NEW_INSTANCE_java_io_InterruptedIOException(); +JAVA_LONG java_io_InterruptedIOException_GET_serialVersionUID(); +void java_io_InterruptedIOException_PUT_serialVersionUID(JAVA_LONG v); +void java_io_InterruptedIOException___INIT___(JAVA_OBJECT me); +void java_io_InterruptedIOException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_io_InvalidClassException.c b/tests/nbody-java/java_io_InvalidClassException.c new file mode 100644 index 0000000000000..647a15f8b77af --- /dev/null +++ b/tests/nbody-java/java_io_InvalidClassException.c @@ -0,0 +1,245 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "java_io_InvalidClassException.h" + +#define XMLVM_CURRENT_CLASS_NAME InvalidClassException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_InvalidClassException + +__TIB_DEFINITION_java_io_InvalidClassException __TIB_java_io_InvalidClassException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_InvalidClassException, // classInitializer + "java.io.InvalidClassException", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_ObjectStreamException, // extends + sizeof(java_io_InvalidClassException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_InvalidClassException; +JAVA_OBJECT __CLASS_java_io_InvalidClassException_1ARRAY; +JAVA_OBJECT __CLASS_java_io_InvalidClassException_2ARRAY; +JAVA_OBJECT __CLASS_java_io_InvalidClassException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_io_InvalidClassException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_InvalidClassException() +{ + staticInitializerLock(&__TIB_java_io_InvalidClassException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_InvalidClassException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_InvalidClassException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_InvalidClassException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_InvalidClassException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_InvalidClassException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_InvalidClassException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.InvalidClassException") + __INIT_IMPL_java_io_InvalidClassException(); + } +} + +void __INIT_IMPL_java_io_InvalidClassException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_ObjectStreamException) + __TIB_java_io_InvalidClassException.newInstanceFunc = __NEW_INSTANCE_java_io_InvalidClassException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_InvalidClassException.vtable, __TIB_java_io_ObjectStreamException.vtable, sizeof(__TIB_java_io_ObjectStreamException.vtable)); + // Initialize vtable for this class + __TIB_java_io_InvalidClassException.vtable[7] = (VTABLE_PTR) &java_io_InvalidClassException_getMessage__; + // Initialize interface information + __TIB_java_io_InvalidClassException.numImplementedInterfaces = 1; + __TIB_java_io_InvalidClassException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_io_InvalidClassException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_io_InvalidClassException.itableBegin = &__TIB_java_io_InvalidClassException.itable[0]; + + _STATIC_java_io_InvalidClassException_serialVersionUID = -4333316296251054416; + + __TIB_java_io_InvalidClassException.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_InvalidClassException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_InvalidClassException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_InvalidClassException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_InvalidClassException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_InvalidClassException.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_InvalidClassException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_InvalidClassException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_InvalidClassException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_InvalidClassException); + __TIB_java_io_InvalidClassException.clazz = __CLASS_java_io_InvalidClassException; + __TIB_java_io_InvalidClassException.baseType = JAVA_NULL; + __CLASS_java_io_InvalidClassException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InvalidClassException); + __CLASS_java_io_InvalidClassException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InvalidClassException_1ARRAY); + __CLASS_java_io_InvalidClassException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InvalidClassException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_InvalidClassException] + //XMLVM_END_WRAPPER + + __TIB_java_io_InvalidClassException.classInitialized = 1; +} + +void __DELETE_java_io_InvalidClassException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_InvalidClassException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_InvalidClassException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamException(me, 0 || derivedClassWillRegisterFinalizer); + ((java_io_InvalidClassException*) me)->fields.java_io_InvalidClassException.classname_ = (java_lang_String*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_InvalidClassException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_InvalidClassException() +{ XMLVM_CLASS_INIT(java_io_InvalidClassException) +java_io_InvalidClassException* me = (java_io_InvalidClassException*) XMLVM_MALLOC(sizeof(java_io_InvalidClassException)); + me->tib = &__TIB_java_io_InvalidClassException; + __INIT_INSTANCE_MEMBERS_java_io_InvalidClassException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_InvalidClassException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_InvalidClassException() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_io_InvalidClassException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_io_InvalidClassException) + return _STATIC_java_io_InvalidClassException_serialVersionUID; +} + +void java_io_InvalidClassException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_io_InvalidClassException) +_STATIC_java_io_InvalidClassException_serialVersionUID = v; +} + +void java_io_InvalidClassException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_InvalidClassException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.io.InvalidClassException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InvalidClassException.java", 51) + XMLVM_CHECK_NPE(0) + java_io_ObjectStreamException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("InvalidClassException.java", 52) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_InvalidClassException___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_InvalidClassException___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.io.InvalidClassException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("InvalidClassException.java", 65) + XMLVM_CHECK_NPE(0) + java_io_ObjectStreamException___INIT____java_lang_String(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("InvalidClassException.java", 66) + XMLVM_CHECK_NPE(0) + ((java_io_InvalidClassException*) _r0.o)->fields.java_io_InvalidClassException.classname_ = _r1.o; + XMLVM_SOURCE_POSITION("InvalidClassException.java", 67) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_InvalidClassException_getMessage__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_InvalidClassException_getMessage__] + XMLVM_ENTER_METHOD("java.io.InvalidClassException", "getMessage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("InvalidClassException.java", 80) + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_Throwable_getMessage__(_r3.o); + XMLVM_SOURCE_POSITION("InvalidClassException.java", 81) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_io_InvalidClassException*) _r3.o)->fields.java_io_InvalidClassException.classname_; + if (_r1.o == JAVA_NULL) goto label33; + XMLVM_SOURCE_POSITION("InvalidClassException.java", 82) + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(3) + _r2.o = ((java_io_InvalidClassException*) _r3.o)->fields.java_io_InvalidClassException.classname_; + _r2.o = java_lang_String_valueOf___java_lang_Object(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____java_lang_String(_r1.o, _r2.o); + // "; " + _r2.o = xmlvm_create_java_string_from_pool(820); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r0.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + label33:; + XMLVM_SOURCE_POSITION("InvalidClassException.java", 84) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_InvalidClassException.h b/tests/nbody-java/java_io_InvalidClassException.h new file mode 100644 index 0000000000000..b120752241707 --- /dev/null +++ b/tests/nbody-java/java_io_InvalidClassException.h @@ -0,0 +1,70 @@ +#ifndef __JAVA_IO_INVALIDCLASSEXCEPTION__ +#define __JAVA_IO_INVALIDCLASSEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_InvalidClassException 0 +// Implemented interfaces: +// Super Class: +#include "java_io_ObjectStreamException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for java.io.InvalidClassException +XMLVM_DEFINE_CLASS(java_io_InvalidClassException, 8, XMLVM_ITABLE_SIZE_java_io_InvalidClassException) + +extern JAVA_OBJECT __CLASS_java_io_InvalidClassException; +extern JAVA_OBJECT __CLASS_java_io_InvalidClassException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_InvalidClassException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_InvalidClassException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_InvalidClassException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_InvalidClassException \ + __INSTANCE_FIELDS_java_io_ObjectStreamException; \ + struct { \ + JAVA_OBJECT classname_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_InvalidClassException \ + } java_io_InvalidClassException + +struct java_io_InvalidClassException { + __TIB_DEFINITION_java_io_InvalidClassException* tib; + struct { + __INSTANCE_FIELDS_java_io_InvalidClassException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_InvalidClassException +#define XMLVM_FORWARD_DECL_java_io_InvalidClassException +typedef struct java_io_InvalidClassException java_io_InvalidClassException; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_InvalidClassException 8 +#define XMLVM_VTABLE_IDX_java_io_InvalidClassException_getMessage__ 7 + +void __INIT_java_io_InvalidClassException(); +void __INIT_IMPL_java_io_InvalidClassException(); +void __DELETE_java_io_InvalidClassException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_InvalidClassException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_InvalidClassException(); +JAVA_OBJECT __NEW_INSTANCE_java_io_InvalidClassException(); +JAVA_LONG java_io_InvalidClassException_GET_serialVersionUID(); +void java_io_InvalidClassException_PUT_serialVersionUID(JAVA_LONG v); +void java_io_InvalidClassException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_InvalidClassException___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 7 +JAVA_OBJECT java_io_InvalidClassException_getMessage__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_io_InvalidObjectException.c b/tests/nbody-java/java_io_InvalidObjectException.c new file mode 100644 index 0000000000000..b65e2021f0d4a --- /dev/null +++ b/tests/nbody-java/java_io_InvalidObjectException.c @@ -0,0 +1,180 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_io_InvalidObjectException.h" + +#define XMLVM_CURRENT_CLASS_NAME InvalidObjectException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_InvalidObjectException + +__TIB_DEFINITION_java_io_InvalidObjectException __TIB_java_io_InvalidObjectException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_InvalidObjectException, // classInitializer + "java.io.InvalidObjectException", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_ObjectStreamException, // extends + sizeof(java_io_InvalidObjectException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_InvalidObjectException; +JAVA_OBJECT __CLASS_java_io_InvalidObjectException_1ARRAY; +JAVA_OBJECT __CLASS_java_io_InvalidObjectException_2ARRAY; +JAVA_OBJECT __CLASS_java_io_InvalidObjectException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_io_InvalidObjectException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_InvalidObjectException() +{ + staticInitializerLock(&__TIB_java_io_InvalidObjectException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_InvalidObjectException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_InvalidObjectException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_InvalidObjectException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_InvalidObjectException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_InvalidObjectException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_InvalidObjectException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.InvalidObjectException") + __INIT_IMPL_java_io_InvalidObjectException(); + } +} + +void __INIT_IMPL_java_io_InvalidObjectException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_ObjectStreamException) + __TIB_java_io_InvalidObjectException.newInstanceFunc = __NEW_INSTANCE_java_io_InvalidObjectException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_InvalidObjectException.vtable, __TIB_java_io_ObjectStreamException.vtable, sizeof(__TIB_java_io_ObjectStreamException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_io_InvalidObjectException.numImplementedInterfaces = 1; + __TIB_java_io_InvalidObjectException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_io_InvalidObjectException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_io_InvalidObjectException.itableBegin = &__TIB_java_io_InvalidObjectException.itable[0]; + + _STATIC_java_io_InvalidObjectException_serialVersionUID = 3233174318281839583; + + __TIB_java_io_InvalidObjectException.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_InvalidObjectException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_InvalidObjectException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_InvalidObjectException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_InvalidObjectException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_InvalidObjectException.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_InvalidObjectException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_InvalidObjectException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_InvalidObjectException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_InvalidObjectException); + __TIB_java_io_InvalidObjectException.clazz = __CLASS_java_io_InvalidObjectException; + __TIB_java_io_InvalidObjectException.baseType = JAVA_NULL; + __CLASS_java_io_InvalidObjectException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InvalidObjectException); + __CLASS_java_io_InvalidObjectException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InvalidObjectException_1ARRAY); + __CLASS_java_io_InvalidObjectException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_InvalidObjectException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_InvalidObjectException] + //XMLVM_END_WRAPPER + + __TIB_java_io_InvalidObjectException.classInitialized = 1; +} + +void __DELETE_java_io_InvalidObjectException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_InvalidObjectException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_InvalidObjectException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_InvalidObjectException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_InvalidObjectException() +{ XMLVM_CLASS_INIT(java_io_InvalidObjectException) +java_io_InvalidObjectException* me = (java_io_InvalidObjectException*) XMLVM_MALLOC(sizeof(java_io_InvalidObjectException)); + me->tib = &__TIB_java_io_InvalidObjectException; + __INIT_INSTANCE_MEMBERS_java_io_InvalidObjectException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_InvalidObjectException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_InvalidObjectException() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_io_InvalidObjectException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_io_InvalidObjectException) + return _STATIC_java_io_InvalidObjectException_serialVersionUID; +} + +void java_io_InvalidObjectException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_io_InvalidObjectException) +_STATIC_java_io_InvalidObjectException_serialVersionUID = v; +} + +void java_io_InvalidObjectException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_InvalidObjectException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.io.InvalidObjectException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InvalidObjectException.java", 38) + XMLVM_CHECK_NPE(0) + java_io_ObjectStreamException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("InvalidObjectException.java", 39) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_InvalidObjectException.h b/tests/nbody-java/java_io_InvalidObjectException.h new file mode 100644 index 0000000000000..01996226ddf8d --- /dev/null +++ b/tests/nbody-java/java_io_InvalidObjectException.h @@ -0,0 +1,57 @@ +#ifndef __JAVA_IO_INVALIDOBJECTEXCEPTION__ +#define __JAVA_IO_INVALIDOBJECTEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_InvalidObjectException 0 +// Implemented interfaces: +// Super Class: +#include "java_io_ObjectStreamException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.io.InvalidObjectException +XMLVM_DEFINE_CLASS(java_io_InvalidObjectException, 8, XMLVM_ITABLE_SIZE_java_io_InvalidObjectException) + +extern JAVA_OBJECT __CLASS_java_io_InvalidObjectException; +extern JAVA_OBJECT __CLASS_java_io_InvalidObjectException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_InvalidObjectException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_InvalidObjectException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_InvalidObjectException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_InvalidObjectException \ + __INSTANCE_FIELDS_java_io_ObjectStreamException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_InvalidObjectException \ + } java_io_InvalidObjectException + +struct java_io_InvalidObjectException { + __TIB_DEFINITION_java_io_InvalidObjectException* tib; + struct { + __INSTANCE_FIELDS_java_io_InvalidObjectException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_InvalidObjectException +#define XMLVM_FORWARD_DECL_java_io_InvalidObjectException +typedef struct java_io_InvalidObjectException java_io_InvalidObjectException; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_InvalidObjectException 8 + +void __INIT_java_io_InvalidObjectException(); +void __INIT_IMPL_java_io_InvalidObjectException(); +void __DELETE_java_io_InvalidObjectException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_InvalidObjectException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_InvalidObjectException(); +JAVA_OBJECT __NEW_INSTANCE_java_io_InvalidObjectException(); +JAVA_LONG java_io_InvalidObjectException_GET_serialVersionUID(); +void java_io_InvalidObjectException_PUT_serialVersionUID(JAVA_LONG v); +void java_io_InvalidObjectException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_io_ObjectStreamException.c b/tests/nbody-java/java_io_ObjectStreamException.c new file mode 100644 index 0000000000000..0f0ba25a0a40e --- /dev/null +++ b/tests/nbody-java/java_io_ObjectStreamException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_io_ObjectStreamException.h" + +#define XMLVM_CURRENT_CLASS_NAME ObjectStreamException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_ObjectStreamException + +__TIB_DEFINITION_java_io_ObjectStreamException __TIB_java_io_ObjectStreamException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_ObjectStreamException, // classInitializer + "java.io.ObjectStreamException", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_IOException, // extends + sizeof(java_io_ObjectStreamException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_ObjectStreamException; +JAVA_OBJECT __CLASS_java_io_ObjectStreamException_1ARRAY; +JAVA_OBJECT __CLASS_java_io_ObjectStreamException_2ARRAY; +JAVA_OBJECT __CLASS_java_io_ObjectStreamException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_io_ObjectStreamException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_ObjectStreamException() +{ + staticInitializerLock(&__TIB_java_io_ObjectStreamException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_ObjectStreamException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_ObjectStreamException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_ObjectStreamException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_ObjectStreamException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_ObjectStreamException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_ObjectStreamException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.ObjectStreamException") + __INIT_IMPL_java_io_ObjectStreamException(); + } +} + +void __INIT_IMPL_java_io_ObjectStreamException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_IOException) + __TIB_java_io_ObjectStreamException.newInstanceFunc = __NEW_INSTANCE_java_io_ObjectStreamException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_ObjectStreamException.vtable, __TIB_java_io_IOException.vtable, sizeof(__TIB_java_io_IOException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_io_ObjectStreamException.numImplementedInterfaces = 1; + __TIB_java_io_ObjectStreamException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_io_ObjectStreamException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_io_ObjectStreamException.itableBegin = &__TIB_java_io_ObjectStreamException.itable[0]; + + _STATIC_java_io_ObjectStreamException_serialVersionUID = 7260898174833392607; + + __TIB_java_io_ObjectStreamException.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_ObjectStreamException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_ObjectStreamException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_ObjectStreamException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_ObjectStreamException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_ObjectStreamException.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_ObjectStreamException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_ObjectStreamException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_ObjectStreamException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_ObjectStreamException); + __TIB_java_io_ObjectStreamException.clazz = __CLASS_java_io_ObjectStreamException; + __TIB_java_io_ObjectStreamException.baseType = JAVA_NULL; + __CLASS_java_io_ObjectStreamException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_ObjectStreamException); + __CLASS_java_io_ObjectStreamException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_ObjectStreamException_1ARRAY); + __CLASS_java_io_ObjectStreamException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_ObjectStreamException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_ObjectStreamException] + //XMLVM_END_WRAPPER + + __TIB_java_io_ObjectStreamException.classInitialized = 1; +} + +void __DELETE_java_io_ObjectStreamException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_ObjectStreamException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_IOException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_ObjectStreamException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_ObjectStreamException() +{ XMLVM_CLASS_INIT(java_io_ObjectStreamException) +java_io_ObjectStreamException* me = (java_io_ObjectStreamException*) XMLVM_MALLOC(sizeof(java_io_ObjectStreamException)); + me->tib = &__TIB_java_io_ObjectStreamException; + __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_ObjectStreamException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_ObjectStreamException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_io_ObjectStreamException(); + java_io_ObjectStreamException___INIT___(me); + return me; +} + +JAVA_LONG java_io_ObjectStreamException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_io_ObjectStreamException) + return _STATIC_java_io_ObjectStreamException_serialVersionUID; +} + +void java_io_ObjectStreamException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_io_ObjectStreamException) +_STATIC_java_io_ObjectStreamException_serialVersionUID = v; +} + +void java_io_ObjectStreamException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamException___INIT___] + XMLVM_ENTER_METHOD("java.io.ObjectStreamException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamException.java", 41) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("ObjectStreamException.java", 42) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.io.ObjectStreamException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ObjectStreamException.java", 52) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ObjectStreamException.java", 53) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_ObjectStreamException.h b/tests/nbody-java/java_io_ObjectStreamException.h new file mode 100644 index 0000000000000..1fe4e0ee6f59f --- /dev/null +++ b/tests/nbody-java/java_io_ObjectStreamException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_IO_OBJECTSTREAMEXCEPTION__ +#define __JAVA_IO_OBJECTSTREAMEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_ObjectStreamException 0 +// Implemented interfaces: +// Super Class: +#include "java_io_IOException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.io.ObjectStreamException +XMLVM_DEFINE_CLASS(java_io_ObjectStreamException, 8, XMLVM_ITABLE_SIZE_java_io_ObjectStreamException) + +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamException; +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_ObjectStreamException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_ObjectStreamException \ + __INSTANCE_FIELDS_java_io_IOException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_ObjectStreamException \ + } java_io_ObjectStreamException + +struct java_io_ObjectStreamException { + __TIB_DEFINITION_java_io_ObjectStreamException* tib; + struct { + __INSTANCE_FIELDS_java_io_ObjectStreamException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_ObjectStreamException +#define XMLVM_FORWARD_DECL_java_io_ObjectStreamException +typedef struct java_io_ObjectStreamException java_io_ObjectStreamException; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_ObjectStreamException 8 + +void __INIT_java_io_ObjectStreamException(); +void __INIT_IMPL_java_io_ObjectStreamException(); +void __DELETE_java_io_ObjectStreamException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_ObjectStreamException(); +JAVA_OBJECT __NEW_INSTANCE_java_io_ObjectStreamException(); +JAVA_LONG java_io_ObjectStreamException_GET_serialVersionUID(); +void java_io_ObjectStreamException_PUT_serialVersionUID(JAVA_LONG v); +void java_io_ObjectStreamException___INIT___(JAVA_OBJECT me); +void java_io_ObjectStreamException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_io_ObjectStreamField.c b/tests/nbody-java/java_io_ObjectStreamField.c new file mode 100644 index 0000000000000..88064d5dd105b --- /dev/null +++ b/tests/nbody-java/java_io_ObjectStreamField.c @@ -0,0 +1,1128 @@ +#include "xmlvm.h" +#include "java_lang_Boolean.h" +#include "java_lang_Byte.h" +#include "java_lang_Character.h" +#include "java_lang_Class.h" +#include "java_lang_ClassLoader.h" +#include "java_lang_ClassNotFoundException.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "java_lang_Integer.h" +#include "java_lang_Long.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Short.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_ref_WeakReference.h" + +#include "java_io_ObjectStreamField.h" + +#define XMLVM_CURRENT_CLASS_NAME ObjectStreamField +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_ObjectStreamField + +__TIB_DEFINITION_java_io_ObjectStreamField __TIB_java_io_ObjectStreamField = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_ObjectStreamField, // classInitializer + "java.io.ObjectStreamField", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_io_ObjectStreamField), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_ObjectStreamField; +JAVA_OBJECT __CLASS_java_io_ObjectStreamField_1ARRAY; +JAVA_OBJECT __CLASS_java_io_ObjectStreamField_2ARRAY; +JAVA_OBJECT __CLASS_java_io_ObjectStreamField_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_io_ObjectStreamField_FIELD_IS_NOT_RESOLVED; +static JAVA_INT _STATIC_java_io_ObjectStreamField_FIELD_IS_ABSENT; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_ObjectStreamField() +{ + staticInitializerLock(&__TIB_java_io_ObjectStreamField); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_ObjectStreamField.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_ObjectStreamField.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_ObjectStreamField); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_ObjectStreamField.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_ObjectStreamField.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_ObjectStreamField.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.ObjectStreamField") + __INIT_IMPL_java_io_ObjectStreamField(); + } +} + +void __INIT_IMPL_java_io_ObjectStreamField() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_io_ObjectStreamField.newInstanceFunc = __NEW_INSTANCE_java_io_ObjectStreamField; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_ObjectStreamField.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_io_ObjectStreamField.vtable[6] = (VTABLE_PTR) &java_io_ObjectStreamField_compareTo___java_lang_Object; + __TIB_java_io_ObjectStreamField.vtable[1] = (VTABLE_PTR) &java_io_ObjectStreamField_equals___java_lang_Object; + __TIB_java_io_ObjectStreamField.vtable[4] = (VTABLE_PTR) &java_io_ObjectStreamField_hashCode__; + __TIB_java_io_ObjectStreamField.vtable[5] = (VTABLE_PTR) &java_io_ObjectStreamField_toString__; + // Initialize interface information + __TIB_java_io_ObjectStreamField.numImplementedInterfaces = 1; + __TIB_java_io_ObjectStreamField.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_io_ObjectStreamField.implementedInterfaces[0][0] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_io_ObjectStreamField.itableBegin = &__TIB_java_io_ObjectStreamField.itable[0]; + __TIB_java_io_ObjectStreamField.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_io_ObjectStreamField.vtable[6]; + + _STATIC_java_io_ObjectStreamField_FIELD_IS_NOT_RESOLVED = -1; + _STATIC_java_io_ObjectStreamField_FIELD_IS_ABSENT = -2; + + __TIB_java_io_ObjectStreamField.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_ObjectStreamField.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_ObjectStreamField.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_ObjectStreamField.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_ObjectStreamField.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_ObjectStreamField.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_ObjectStreamField.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_ObjectStreamField.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_ObjectStreamField = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_ObjectStreamField); + __TIB_java_io_ObjectStreamField.clazz = __CLASS_java_io_ObjectStreamField; + __TIB_java_io_ObjectStreamField.baseType = JAVA_NULL; + __CLASS_java_io_ObjectStreamField_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_ObjectStreamField); + __CLASS_java_io_ObjectStreamField_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_ObjectStreamField_1ARRAY); + __CLASS_java_io_ObjectStreamField_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_ObjectStreamField_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_ObjectStreamField] + //XMLVM_END_WRAPPER + + __TIB_java_io_ObjectStreamField.classInitialized = 1; +} + +void __DELETE_java_io_ObjectStreamField(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_ObjectStreamField] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamField(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_io_ObjectStreamField*) me)->fields.java_io_ObjectStreamField.name_ = (java_lang_String*) JAVA_NULL; + ((java_io_ObjectStreamField*) me)->fields.java_io_ObjectStreamField.type_ = (java_lang_Object*) JAVA_NULL; + ((java_io_ObjectStreamField*) me)->fields.java_io_ObjectStreamField.offset_ = 0; + ((java_io_ObjectStreamField*) me)->fields.java_io_ObjectStreamField.typeString_ = (java_lang_String*) JAVA_NULL; + ((java_io_ObjectStreamField*) me)->fields.java_io_ObjectStreamField.unshared_ = 0; + ((java_io_ObjectStreamField*) me)->fields.java_io_ObjectStreamField.isDeserialized_ = 0; + ((java_io_ObjectStreamField*) me)->fields.java_io_ObjectStreamField.assocFieldID_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_ObjectStreamField] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_ObjectStreamField() +{ XMLVM_CLASS_INIT(java_io_ObjectStreamField) +java_io_ObjectStreamField* me = (java_io_ObjectStreamField*) XMLVM_MALLOC(sizeof(java_io_ObjectStreamField)); + me->tib = &__TIB_java_io_ObjectStreamField; + __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamField(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_ObjectStreamField] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_ObjectStreamField() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT java_io_ObjectStreamField_GET_FIELD_IS_NOT_RESOLVED() +{ + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + return _STATIC_java_io_ObjectStreamField_FIELD_IS_NOT_RESOLVED; +} + +void java_io_ObjectStreamField_PUT_FIELD_IS_NOT_RESOLVED(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_io_ObjectStreamField) +_STATIC_java_io_ObjectStreamField_FIELD_IS_NOT_RESOLVED = v; +} + +JAVA_INT java_io_ObjectStreamField_GET_FIELD_IS_ABSENT() +{ + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + return _STATIC_java_io_ObjectStreamField_FIELD_IS_ABSENT; +} + +void java_io_ObjectStreamField_PUT_FIELD_IS_ABSENT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_io_ObjectStreamField) +_STATIC_java_io_ObjectStreamField_FIELD_IS_ABSENT = v; +} + +JAVA_LONG java_io_ObjectStreamField_getFieldID___org_apache_harmony_misc_accessors_ObjectAccessor_java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_getFieldID___org_apache_harmony_misc_accessors_ObjectAccessor_java_lang_Class] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "getFieldID", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r4.o = me; + _r5.o = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 58) + XMLVM_CHECK_NPE(4) + _r0.l = ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.assocFieldID_; + _r2.l = -1; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i == 0) goto label11; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 59) + XMLVM_CHECK_NPE(4) + _r0.l = ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.assocFieldID_; + label10:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 66) + XMLVM_EXIT_METHOD() + return _r0.l; + label11:; + XMLVM_TRY_BEGIN(w308aaab9b1c15) + // Begin try + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 62) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.name_; + + + // Red class access removed: org.apache.harmony.misc.accessors.ObjectAccessor::getFieldID + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.assocFieldID_ = _r0.l; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w308aaab9b1c15) + XMLVM_CATCH_END(w308aaab9b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w308aaab9b1c15) + label19:; + XMLVM_CHECK_NPE(4) + _r0.l = ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.assocFieldID_; + goto label10; + label22:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 64) + java_lang_Thread* curThread_w308aaab9b1c21 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w308aaab9b1c21->fields.java_lang_Thread.xmlvmException_; + _r0.l = -2; + XMLVM_CHECK_NPE(4) + ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.assocFieldID_ = _r0.l; + goto label19; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 80) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 55) + _r0.l = -1; + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.assocFieldID_ = _r0.l; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 81) + if (_r3.o == JAVA_NULL) goto label11; + if (_r4.o != JAVA_NULL) goto label17; + label11:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 82) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 84) + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.name_ = _r3.o; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 85) + _r0.o = __NEW_java_lang_ref_WeakReference(); + XMLVM_CHECK_NPE(0) + java_lang_ref_WeakReference___INIT____java_lang_Object(_r0.o, _r4.o); + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 86) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class_boolean] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 103) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 55) + _r0.l = -1; + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.assocFieldID_ = _r0.l; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 104) + if (_r3.o == JAVA_NULL) goto label11; + if (_r4.o != JAVA_NULL) goto label17; + label11:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 105) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 107) + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.name_ = _r3.o; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 108) + XMLVM_CHECK_NPE(4) + _r0.o = java_lang_Class_getClassLoader__(_r4.o); + if (_r0.o != JAVA_NULL) goto label31; + _r0 = _r4; + label26:; + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 110) + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.unshared_ = _r5.i; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 111) + XMLVM_EXIT_METHOD() + return; + label31:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 109) + _r0.o = __NEW_java_lang_ref_WeakReference(); + XMLVM_CHECK_NPE(0) + java_lang_ref_WeakReference___INIT____java_lang_Object(_r0.o, _r4.o); + goto label26; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamField___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 122) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 55) + _r0.l = -1; + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.assocFieldID_ = _r0.l; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 123) + if (_r4.o != JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 124) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label15:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 126) + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.name_ = _r4.o; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 127) + _r0.i = 46; + _r1.i = 47; + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_String_replace___char_char(_r3.o, _r0.i, _r1.i); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_intern__(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.typeString_ = _r0.o; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 128) + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField_defaultResolve__(_r2.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 129) + _r0.i = 1; + XMLVM_CHECK_NPE(2) + ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.isDeserialized_ = _r0.i; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 130) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_io_ObjectStreamField_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 145) + _r3.o = _r3.o; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 146) + XMLVM_CHECK_NPE(2) + _r0.i = java_io_ObjectStreamField_isPrimitive__(_r2.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 147) + XMLVM_CHECK_NPE(3) + _r1.i = java_io_ObjectStreamField_isPrimitive__(_r3.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 151) + if (_r0.i == _r1.i) goto label18; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 152) + if (_r0.i == 0) goto label16; + _r0.i = -1; + label15:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 156) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0.i = 1; + goto label15; + label18:; + XMLVM_CHECK_NPE(2) + _r0.o = java_io_ObjectStreamField_getName__(_r2.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_io_ObjectStreamField_getName__(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_compareTo___java_lang_String(_r0.o, _r1.o); + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_ObjectStreamField_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 161) + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + _r0.i = XMLVM_ISA(_r2.o, __CLASS_java_io_ObjectStreamField); + if (_r0.i == 0) goto label12; + //java_io_ObjectStreamField_compareTo___java_lang_Object[6] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_io_ObjectStreamField*) _r1.o)->tib->vtable[6])(_r1.o, _r2.o); + if (_r0.i != 0) goto label12; + _r0.i = 1; + label11:; + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + _r0.i = 0; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_io_ObjectStreamField_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_hashCode__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 166) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_ObjectStreamField_getName__(_r1.o); + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[4])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_ObjectStreamField_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_getName__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "getName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 175) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_ObjectStreamField*) _r1.o)->fields.java_io_ObjectStreamField.name_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_io_ObjectStreamField_getOffset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_getOffset__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "getOffset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 184) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_io_ObjectStreamField*) _r1.o)->fields.java_io_ObjectStreamField.offset_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_ObjectStreamField_getTypeInternal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_getTypeInternal__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "getTypeInternal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 194) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_ObjectStreamField*) _r1.o)->fields.java_io_ObjectStreamField.type_; + XMLVM_CLASS_INIT(java_lang_ref_WeakReference) + _r0.i = XMLVM_ISA(_r0.o, __CLASS_java_lang_ref_WeakReference); + if (_r0.i == 0) goto label18; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 195) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_io_ObjectStreamField*) _r1.o)->fields.java_io_ObjectStreamField.type_; + _r1.o = _r1.o; + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_ref_Reference_get__(_r1.o); + _r1.o = _r1.o; + _r0 = _r1; + label17:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 197) + XMLVM_EXIT_METHOD() + return _r0.o; + label18:; + XMLVM_CHECK_NPE(1) + _r1.o = ((java_io_ObjectStreamField*) _r1.o)->fields.java_io_ObjectStreamField.type_; + _r1.o = _r1.o; + _r0 = _r1; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_ObjectStreamField_getType__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_getType__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "getType", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 206) + XMLVM_CHECK_NPE(2) + _r0.o = java_io_ObjectStreamField_getTypeInternal__(_r2.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 207) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_io_ObjectStreamField*) _r2.o)->fields.java_io_ObjectStreamField.isDeserialized_; + if (_r1.i == 0) goto label16; + XMLVM_CHECK_NPE(0) + _r1.i = java_lang_Class_isPrimitive__(_r0.o); + if (_r1.i != 0) goto label16; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 208) + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = __CLASS_java_lang_Object; + label16:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 210) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_io_ObjectStreamField_getTypeCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_getTypeCode__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "getTypeCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 233) + XMLVM_CHECK_NPE(2) + _r0.o = java_io_ObjectStreamField_getTypeInternal__(_r2.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 234) + _r1.o = java_lang_Integer_GET_TYPE(); + if (_r0.o != _r1.o) goto label11; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 235) + _r0.i = 73; + label10:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 261) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 237) + _r1.o = java_lang_Byte_GET_TYPE(); + if (_r0.o != _r1.o) goto label18; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 238) + _r0.i = 66; + goto label10; + label18:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 240) + _r1.o = java_lang_Character_GET_TYPE(); + if (_r0.o != _r1.o) goto label25; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 241) + _r0.i = 67; + goto label10; + label25:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 243) + _r1.o = java_lang_Short_GET_TYPE(); + if (_r0.o != _r1.o) goto label32; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 244) + _r0.i = 83; + goto label10; + label32:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 246) + _r1.o = java_lang_Boolean_GET_TYPE(); + if (_r0.o != _r1.o) goto label39; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 247) + _r0.i = 90; + goto label10; + label39:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 249) + _r1.o = java_lang_Long_GET_TYPE(); + if (_r0.o != _r1.o) goto label46; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 250) + _r0.i = 74; + goto label10; + label46:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 252) + _r1.o = java_lang_Float_GET_TYPE(); + if (_r0.o != _r1.o) goto label53; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 253) + _r0.i = 70; + goto label10; + label53:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 255) + _r1.o = java_lang_Double_GET_TYPE(); + if (_r0.o != _r1.o) goto label60; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 256) + _r0.i = 68; + goto label10; + label60:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 258) + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_Class_isArray__(_r0.o); + if (_r0.i == 0) goto label69; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 259) + _r0.i = 91; + goto label10; + label69:; + _r0.i = 76; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_ObjectStreamField_getTypeString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_getTypeString__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "getTypeString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 272) + XMLVM_CHECK_NPE(4) + _r0.i = java_io_ObjectStreamField_isPrimitive__(_r4.o); + if (_r0.i == 0) goto label8; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 273) + _r0.o = JAVA_NULL; + label7:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 281) + XMLVM_EXIT_METHOD() + return _r0.o; + label8:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 275) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.typeString_; + if (_r0.o != JAVA_NULL) goto label41; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 276) + XMLVM_CHECK_NPE(4) + _r0.o = java_io_ObjectStreamField_getTypeInternal__(_r4.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 277) + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_Class_getName__(_r0.o); + _r2.i = 46; + _r3.i = 47; + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_String_replace___char_char(_r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 278) + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_Class_isArray__(_r0.o); + if (_r0.i == 0) goto label44; + _r0 = _r1; + label35:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 279) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_intern__(_r0.o); + XMLVM_CHECK_NPE(4) + ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.typeString_ = _r0.o; + label41:; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_io_ObjectStreamField*) _r4.o)->fields.java_io_ObjectStreamField.typeString_; + goto label7; + label44:; + _r0.o = __NEW_java_lang_StringBuilder(); + // "L" + _r2.o = xmlvm_create_java_string_from_pool(18); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + _r1.i = 59; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label35; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_ObjectStreamField_isPrimitive__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_isPrimitive__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "isPrimitive", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 291) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_ObjectStreamField_getTypeInternal__(_r1.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 292) + if (_r0.o == JAVA_NULL) goto label14; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_Class_isPrimitive__(_r0.o); + if (_r0.i == 0) goto label14; + _r0.i = 1; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 0; + goto label13; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamField_setOffset___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_setOffset___int] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "setOffset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 302) + XMLVM_CHECK_NPE(0) + ((java_io_ObjectStreamField*) _r0.o)->fields.java_io_ObjectStreamField.offset_ = _r1.i; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 303) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_ObjectStreamField_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_toString__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 313) + _r0.o = __NEW_java_lang_StringBuilder(); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_Class_getName__(_r1.o); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r1.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + _r1.i = 40; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r1.o = java_io_ObjectStreamField_getName__(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + _r1.i = 58; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 314) + XMLVM_CHECK_NPE(2) + _r1.o = java_io_ObjectStreamField_getTypeInternal__(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r1.o); + _r1.i = 41; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamField_sortFields___java_io_ObjectStreamField_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_sortFields___java_io_ObjectStreamField_1ARRAY] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "sortFields", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 326) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r1.i = 1; + if (_r0.i <= _r1.i) goto label12; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 327) + + + // Red class access removed: java.io.ObjectStreamField$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.ObjectStreamField$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 332) + + + // Red class access removed: java.util.Arrays::sort + XMLVM_RED_CLASS_DEPENDENCY(); + label12:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 334) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamField_resolve___java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_resolve___java_lang_ClassLoader] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "resolve", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r4.i = 0; + _r3.i = 1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 337) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_io_ObjectStreamField*) _r5.o)->fields.java_io_ObjectStreamField.typeString_; + if (_r0.o != JAVA_NULL) goto label22; + XMLVM_CHECK_NPE(5) + _r0.i = java_io_ObjectStreamField_isPrimitive__(_r5.o); + if (_r0.i == 0) goto label22; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 339) + XMLVM_CHECK_NPE(5) + _r0.i = java_io_ObjectStreamField_getTypeCode__(_r5.o); + _r0.o = java_lang_String_valueOf___char(_r0.i); + XMLVM_CHECK_NPE(5) + ((java_io_ObjectStreamField*) _r5.o)->fields.java_io_ObjectStreamField.typeString_ = _r0.o; + label22:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 342) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_io_ObjectStreamField*) _r5.o)->fields.java_io_ObjectStreamField.typeString_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + if (_r0.i != _r3.i) goto label37; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 343) + XMLVM_CHECK_NPE(5) + _r0.i = java_io_ObjectStreamField_defaultResolve__(_r5.o); + if (_r0.i == 0) goto label37; + label36:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 360) + XMLVM_EXIT_METHOD() + return; + label37:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 348) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_io_ObjectStreamField*) _r5.o)->fields.java_io_ObjectStreamField.typeString_; + _r1.i = 47; + _r2.i = 46; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_replace___char_char(_r0.o, _r1.i, _r2.i); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 349) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r4.i); + _r2.i = 76; + if (_r1.i != _r2.i) goto label64; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 351) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + _r1.i = _r1.i - _r3.i; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_substring___int_int(_r0.o, _r3.i, _r1.i); + label64:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 354) + _r1.i = 0; + XMLVM_TRY_BEGIN(w308aaac26b1c42) + // Begin try + _r0.o = java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(_r0.o, _r1.i, _r6.o); + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 355) + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_Class_getClassLoader__(_r0.o); + if (_r1.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w308aaac26b1c42->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w308aaac26b1c42, sizeof(XMLVM_JMP_BUF)); goto label80; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w308aaac26b1c42) + XMLVM_CATCH_SPECIFIC(w308aaac26b1c42,java_lang_ClassNotFoundException,78) + XMLVM_CATCH_END(w308aaac26b1c42) + XMLVM_RESTORE_EXCEPTION_ENV(w308aaac26b1c42) + label75:; + XMLVM_TRY_BEGIN(w308aaac26b1c44) + // Begin try + XMLVM_CHECK_NPE(5) + ((java_io_ObjectStreamField*) _r5.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + { XMLVM_MEMCPY(curThread_w308aaac26b1c44->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w308aaac26b1c44, sizeof(XMLVM_JMP_BUF)); goto label36; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w308aaac26b1c44) + XMLVM_CATCH_SPECIFIC(w308aaac26b1c44,java_lang_ClassNotFoundException,78) + XMLVM_CATCH_END(w308aaac26b1c44) + XMLVM_RESTORE_EXCEPTION_ENV(w308aaac26b1c44) + label78:; + XMLVM_TRY_BEGIN(w308aaac26b1c46) + // Begin try + java_lang_Thread* curThread_w308aaac26b1c46aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w308aaac26b1c46aa->fields.java_lang_Thread.xmlvmException_; + { XMLVM_MEMCPY(curThread_w308aaac26b1c46->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w308aaac26b1c46, sizeof(XMLVM_JMP_BUF)); goto label36; }; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 356) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w308aaac26b1c46) + XMLVM_CATCH_SPECIFIC(w308aaac26b1c46,java_lang_ClassNotFoundException,78) + XMLVM_CATCH_END(w308aaac26b1c46) + XMLVM_RESTORE_EXCEPTION_ENV(w308aaac26b1c46) + label80:; + XMLVM_TRY_BEGIN(w308aaac26b1c48) + // Begin try + _r1.o = __NEW_java_lang_ref_WeakReference(); + XMLVM_CHECK_NPE(1) + java_lang_ref_WeakReference___INIT____java_lang_Object(_r1.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w308aaac26b1c48) + XMLVM_CATCH_SPECIFIC(w308aaac26b1c48,java_lang_ClassNotFoundException,78) + XMLVM_CATCH_END(w308aaac26b1c48) + XMLVM_RESTORE_EXCEPTION_ENV(w308aaac26b1c48) + _r0 = _r1; + goto label75; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_ObjectStreamField_isUnshared__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_isUnshared__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "isUnshared", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 368) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_io_ObjectStreamField*) _r1.o)->fields.java_io_ObjectStreamField.unshared_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_io_ObjectStreamField_setUnshared___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_setUnshared___boolean] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "setUnshared", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 372) + XMLVM_CHECK_NPE(0) + ((java_io_ObjectStreamField*) _r0.o)->fields.java_io_ObjectStreamField.unshared_ = _r1.i; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 373) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_ObjectStreamField_defaultResolve__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_ObjectStreamField_defaultResolve__] + XMLVM_ENTER_METHOD("java.io.ObjectStreamField", "defaultResolve", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + _r2.i = 0; + _r1.i = 1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 380) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.typeString_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + switch (_r0.i) { + case 66: goto label23; + case 67: goto label29; + case 68: goto label59; + case 70: goto label53; + case 73: goto label17; + case 74: goto label47; + case 83: goto label35; + case 90: goto label41; + } + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 406) + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = __CLASS_java_lang_Object; + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r2; + label16:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 407) + XMLVM_EXIT_METHOD() + return _r0.i; + label17:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 382) + _r0.o = java_lang_Integer_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 383) + goto label16; + label23:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 385) + _r0.o = java_lang_Byte_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 386) + goto label16; + label29:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 388) + _r0.o = java_lang_Character_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 389) + goto label16; + label35:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 391) + _r0.o = java_lang_Short_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 392) + goto label16; + label41:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 394) + _r0.o = java_lang_Boolean_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 395) + goto label16; + label47:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 397) + _r0.o = java_lang_Long_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 398) + goto label16; + label53:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 400) + _r0.o = java_lang_Float_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 401) + goto label16; + label59:; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 403) + _r0.o = java_lang_Double_GET_TYPE(); + XMLVM_CHECK_NPE(3) + ((java_io_ObjectStreamField*) _r3.o)->fields.java_io_ObjectStreamField.type_ = _r0.o; + _r0 = _r1; + XMLVM_SOURCE_POSITION("ObjectStreamField.java", 404) + goto label16; + label66:; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_ObjectStreamField.h b/tests/nbody-java/java_io_ObjectStreamField.h new file mode 100644 index 0000000000000..d57599de22c3d --- /dev/null +++ b/tests/nbody-java/java_io_ObjectStreamField.h @@ -0,0 +1,151 @@ +#ifndef __JAVA_IO_OBJECTSTREAMFIELD__ +#define __JAVA_IO_OBJECTSTREAMFIELD__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_ObjectStreamField 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Boolean +#define XMLVM_FORWARD_DECL_java_lang_Boolean +XMLVM_FORWARD_DECL(java_lang_Boolean) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Byte +#define XMLVM_FORWARD_DECL_java_lang_Byte +XMLVM_FORWARD_DECL(java_lang_Byte) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader +#define XMLVM_FORWARD_DECL_java_lang_ClassLoader +XMLVM_FORWARD_DECL(java_lang_ClassLoader) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassNotFoundException +#define XMLVM_FORWARD_DECL_java_lang_ClassNotFoundException +XMLVM_FORWARD_DECL(java_lang_ClassNotFoundException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Short +#define XMLVM_FORWARD_DECL_java_lang_Short +XMLVM_FORWARD_DECL(java_lang_Short) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_WeakReference +#define XMLVM_FORWARD_DECL_java_lang_ref_WeakReference +XMLVM_FORWARD_DECL(java_lang_ref_WeakReference) +#endif +// Class declarations for java.io.ObjectStreamField +XMLVM_DEFINE_CLASS(java_io_ObjectStreamField, 7, XMLVM_ITABLE_SIZE_java_io_ObjectStreamField) + +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamField; +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamField_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamField_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_ObjectStreamField_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_ObjectStreamField +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_ObjectStreamField \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT name_; \ + JAVA_OBJECT type_; \ + JAVA_INT offset_; \ + JAVA_OBJECT typeString_; \ + JAVA_BOOLEAN unshared_; \ + JAVA_BOOLEAN isDeserialized_; \ + JAVA_LONG assocFieldID_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_ObjectStreamField \ + } java_io_ObjectStreamField + +struct java_io_ObjectStreamField { + __TIB_DEFINITION_java_io_ObjectStreamField* tib; + struct { + __INSTANCE_FIELDS_java_io_ObjectStreamField; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_ObjectStreamField +#define XMLVM_FORWARD_DECL_java_io_ObjectStreamField +typedef struct java_io_ObjectStreamField java_io_ObjectStreamField; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_ObjectStreamField 7 +#define XMLVM_VTABLE_IDX_java_io_ObjectStreamField_compareTo___java_lang_Object 6 +#define XMLVM_VTABLE_IDX_java_io_ObjectStreamField_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_io_ObjectStreamField_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_io_ObjectStreamField_toString__ 5 + +void __INIT_java_io_ObjectStreamField(); +void __INIT_IMPL_java_io_ObjectStreamField(); +void __DELETE_java_io_ObjectStreamField(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_ObjectStreamField(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_ObjectStreamField(); +JAVA_OBJECT __NEW_INSTANCE_java_io_ObjectStreamField(); +JAVA_INT java_io_ObjectStreamField_GET_FIELD_IS_NOT_RESOLVED(); +void java_io_ObjectStreamField_PUT_FIELD_IS_NOT_RESOLVED(JAVA_INT v); +JAVA_INT java_io_ObjectStreamField_GET_FIELD_IS_ABSENT(); +void java_io_ObjectStreamField_PUT_FIELD_IS_ABSENT(JAVA_INT v); +JAVA_LONG java_io_ObjectStreamField_getFieldID___org_apache_harmony_misc_accessors_ObjectAccessor_java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3); +void java_io_ObjectStreamField___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_INT java_io_ObjectStreamField_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 1 +JAVA_BOOLEAN java_io_ObjectStreamField_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_io_ObjectStreamField_hashCode__(JAVA_OBJECT me); +JAVA_OBJECT java_io_ObjectStreamField_getName__(JAVA_OBJECT me); +JAVA_INT java_io_ObjectStreamField_getOffset__(JAVA_OBJECT me); +JAVA_OBJECT java_io_ObjectStreamField_getTypeInternal__(JAVA_OBJECT me); +JAVA_OBJECT java_io_ObjectStreamField_getType__(JAVA_OBJECT me); +JAVA_CHAR java_io_ObjectStreamField_getTypeCode__(JAVA_OBJECT me); +JAVA_OBJECT java_io_ObjectStreamField_getTypeString__(JAVA_OBJECT me); +JAVA_BOOLEAN java_io_ObjectStreamField_isPrimitive__(JAVA_OBJECT me); +void java_io_ObjectStreamField_setOffset___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 5 +JAVA_OBJECT java_io_ObjectStreamField_toString__(JAVA_OBJECT me); +void java_io_ObjectStreamField_sortFields___java_io_ObjectStreamField_1ARRAY(JAVA_OBJECT n1); +void java_io_ObjectStreamField_resolve___java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_io_ObjectStreamField_isUnshared__(JAVA_OBJECT me); +void java_io_ObjectStreamField_setUnshared___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +JAVA_BOOLEAN java_io_ObjectStreamField_defaultResolve__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_io_OutputStream.c b/tests/nbody-java/java_io_OutputStream.c new file mode 100644 index 0000000000000..9ec682264bfa2 --- /dev/null +++ b/tests/nbody-java/java_io_OutputStream.c @@ -0,0 +1,293 @@ +#include "xmlvm.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_String.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_io_OutputStream.h" + +#define XMLVM_CURRENT_CLASS_NAME OutputStream +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_OutputStream + +__TIB_DEFINITION_java_io_OutputStream __TIB_java_io_OutputStream = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_OutputStream, // classInitializer + "java.io.OutputStream", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_io_OutputStream), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_OutputStream; +JAVA_OBJECT __CLASS_java_io_OutputStream_1ARRAY; +JAVA_OBJECT __CLASS_java_io_OutputStream_2ARRAY; +JAVA_OBJECT __CLASS_java_io_OutputStream_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_OutputStream() +{ + staticInitializerLock(&__TIB_java_io_OutputStream); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_OutputStream.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_OutputStream.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_OutputStream); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_OutputStream.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_OutputStream.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_OutputStream.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.OutputStream") + __INIT_IMPL_java_io_OutputStream(); + } +} + +void __INIT_IMPL_java_io_OutputStream() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_io_OutputStream.newInstanceFunc = __NEW_INSTANCE_java_io_OutputStream; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_OutputStream.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_io_OutputStream.vtable[7] = (VTABLE_PTR) &java_io_OutputStream_close__; + __TIB_java_io_OutputStream.vtable[8] = (VTABLE_PTR) &java_io_OutputStream_flush__; + __TIB_java_io_OutputStream.vtable[9] = (VTABLE_PTR) &java_io_OutputStream_write___byte_1ARRAY; + __TIB_java_io_OutputStream.vtable[10] = (VTABLE_PTR) &java_io_OutputStream_write___byte_1ARRAY_int_int; + __TIB_java_io_OutputStream.vtable[6] = (VTABLE_PTR) &java_io_OutputStream_checkError__; + // Initialize interface information + __TIB_java_io_OutputStream.numImplementedInterfaces = 2; + __TIB_java_io_OutputStream.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Closeable) + + __TIB_java_io_OutputStream.implementedInterfaces[0][0] = &__TIB_java_io_Closeable; + + XMLVM_CLASS_INIT(java_io_Flushable) + + __TIB_java_io_OutputStream.implementedInterfaces[0][1] = &__TIB_java_io_Flushable; + // Initialize itable for this class + __TIB_java_io_OutputStream.itableBegin = &__TIB_java_io_OutputStream.itable[0]; + __TIB_java_io_OutputStream.itable[XMLVM_ITABLE_IDX_java_io_Closeable_close__] = __TIB_java_io_OutputStream.vtable[7]; + __TIB_java_io_OutputStream.itable[XMLVM_ITABLE_IDX_java_io_Flushable_flush__] = __TIB_java_io_OutputStream.vtable[8]; + + + __TIB_java_io_OutputStream.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_OutputStream.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_OutputStream.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_OutputStream.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_OutputStream.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_OutputStream.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_OutputStream.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_OutputStream.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_OutputStream = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_OutputStream); + __TIB_java_io_OutputStream.clazz = __CLASS_java_io_OutputStream; + __TIB_java_io_OutputStream.baseType = JAVA_NULL; + __CLASS_java_io_OutputStream_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_OutputStream); + __CLASS_java_io_OutputStream_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_OutputStream_1ARRAY); + __CLASS_java_io_OutputStream_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_OutputStream_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_OutputStream] + //XMLVM_END_WRAPPER + + __TIB_java_io_OutputStream.classInitialized = 1; +} + +void __DELETE_java_io_OutputStream(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_OutputStream] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_OutputStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_OutputStream] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_OutputStream() +{ XMLVM_CLASS_INIT(java_io_OutputStream) +java_io_OutputStream* me = (java_io_OutputStream*) XMLVM_MALLOC(sizeof(java_io_OutputStream)); + me->tib = &__TIB_java_io_OutputStream; + __INIT_INSTANCE_MEMBERS_java_io_OutputStream(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_OutputStream] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_OutputStream() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_io_OutputStream(); + java_io_OutputStream___INIT___(me); + return me; +} + +void java_io_OutputStream___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_OutputStream___INIT___] + XMLVM_ENTER_METHOD("java.io.OutputStream", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("OutputStream.java", 44) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("OutputStream.java", 45) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_OutputStream_close__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_OutputStream_close__] + XMLVM_ENTER_METHOD("java.io.OutputStream", "close", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("OutputStream.java", 56) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_OutputStream_flush__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_OutputStream_flush__] + XMLVM_ENTER_METHOD("java.io.OutputStream", "flush", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("OutputStream.java", 67) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_OutputStream_write___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_OutputStream_write___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.io.OutputStream", "write", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("OutputStream.java", 79) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + //java_io_OutputStream_write___byte_1ARRAY_int_int[10] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_io_OutputStream*) _r2.o)->tib->vtable[10])(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_SOURCE_POSITION("OutputStream.java", 80) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_OutputStream_write___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_OutputStream_write___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.io.OutputStream", "write", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("OutputStream.java", 102) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r4.i > _r0.i) goto label11; + if (_r4.i < 0) goto label11; + if (_r5.i < 0) goto label11; + XMLVM_SOURCE_POSITION("OutputStream.java", 103) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r0.i = _r0.i - _r4.i; + if (_r5.i <= _r0.i) goto label23; + label11:; + XMLVM_SOURCE_POSITION("OutputStream.java", 104) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + // "luni.13" + _r1.o = xmlvm_create_java_string_from_pool(828); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r1.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label23:; + _r0 = _r4; + label24:; + XMLVM_SOURCE_POSITION("OutputStream.java", 106) + _r1.i = _r4.i + _r5.i; + if (_r0.i < _r1.i) goto label29; + XMLVM_SOURCE_POSITION("OutputStream.java", 109) + XMLVM_EXIT_METHOD() + return; + label29:; + XMLVM_SOURCE_POSITION("OutputStream.java", 107) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_io_OutputStream_write___int[11] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_INT)) ((java_io_OutputStream*) _r2.o)->tib->vtable[11])(_r2.o, _r1.i); + _r0.i = _r0.i + 1; + goto label24; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_OutputStream_checkError__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_OutputStream_checkError__] + XMLVM_ENTER_METHOD("java.io.OutputStream", "checkError", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("OutputStream.java", 127) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_OutputStream.h b/tests/nbody-java/java_io_OutputStream.h new file mode 100644 index 0000000000000..0a187fe531ddf --- /dev/null +++ b/tests/nbody-java/java_io_OutputStream.h @@ -0,0 +1,83 @@ +#ifndef __JAVA_IO_OUTPUTSTREAM__ +#define __JAVA_IO_OUTPUTSTREAM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_OutputStream 2 +// Implemented interfaces: +#include "java_io_Closeable.h" +#include "java_io_Flushable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.io.OutputStream +XMLVM_DEFINE_CLASS(java_io_OutputStream, 12, XMLVM_ITABLE_SIZE_java_io_OutputStream) + +extern JAVA_OBJECT __CLASS_java_io_OutputStream; +extern JAVA_OBJECT __CLASS_java_io_OutputStream_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_OutputStream_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_OutputStream_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_OutputStream +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_OutputStream \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_OutputStream \ + } java_io_OutputStream + +struct java_io_OutputStream { + __TIB_DEFINITION_java_io_OutputStream* tib; + struct { + __INSTANCE_FIELDS_java_io_OutputStream; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_OutputStream +#define XMLVM_FORWARD_DECL_java_io_OutputStream +typedef struct java_io_OutputStream java_io_OutputStream; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_OutputStream 12 +#define XMLVM_VTABLE_IDX_java_io_OutputStream_close__ 7 +#define XMLVM_VTABLE_IDX_java_io_OutputStream_flush__ 8 +#define XMLVM_VTABLE_IDX_java_io_OutputStream_write___byte_1ARRAY 9 +#define XMLVM_VTABLE_IDX_java_io_OutputStream_write___byte_1ARRAY_int_int 10 +#define XMLVM_VTABLE_IDX_java_io_OutputStream_write___int 11 +#define XMLVM_VTABLE_IDX_java_io_OutputStream_checkError__ 6 + +void __INIT_java_io_OutputStream(); +void __INIT_IMPL_java_io_OutputStream(); +void __DELETE_java_io_OutputStream(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_OutputStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_OutputStream(); +JAVA_OBJECT __NEW_INSTANCE_java_io_OutputStream(); +void java_io_OutputStream___INIT___(JAVA_OBJECT me); +// Vtable index: 7 +void java_io_OutputStream_close__(JAVA_OBJECT me); +// Vtable index: 8 +void java_io_OutputStream_flush__(JAVA_OBJECT me); +// Vtable index: 9 +void java_io_OutputStream_write___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 10 +void java_io_OutputStream_write___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 11 +void java_io_OutputStream_write___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 6 +JAVA_BOOLEAN java_io_OutputStream_checkError__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_io_PrintStream.c b/tests/nbody-java/java_io_PrintStream.c new file mode 100644 index 0000000000000..57d8b418ff67a --- /dev/null +++ b/tests/nbody-java/java_io_PrintStream.c @@ -0,0 +1,1610 @@ +#include "xmlvm.h" +#include "java_io_File.h" +#include "java_io_IOException.h" +#include "java_io_OutputStream.h" +#include "java_lang_CharSequence.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_Throwable.h" +#include "java_nio_charset_Charset.h" +#include "java_util_Locale.h" + +#include "java_io_PrintStream.h" + +#define XMLVM_CURRENT_CLASS_NAME PrintStream +#define XMLVM_CURRENT_PKG_CLASS_NAME java_io_PrintStream + +__TIB_DEFINITION_java_io_PrintStream __TIB_java_io_PrintStream = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_PrintStream, // classInitializer + "java.io.PrintStream", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_FilterOutputStream, // extends + sizeof(java_io_PrintStream), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_io_PrintStream; +JAVA_OBJECT __CLASS_java_io_PrintStream_1ARRAY; +JAVA_OBJECT __CLASS_java_io_PrintStream_2ARRAY; +JAVA_OBJECT __CLASS_java_io_PrintStream_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_io_PrintStream_TOKEN_NULL; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_io_PrintStream() +{ + staticInitializerLock(&__TIB_java_io_PrintStream); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_PrintStream.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_PrintStream.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_PrintStream); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_PrintStream.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_PrintStream.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_PrintStream.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.PrintStream") + __INIT_IMPL_java_io_PrintStream(); + } +} + +void __INIT_IMPL_java_io_PrintStream() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_FilterOutputStream) + __TIB_java_io_PrintStream.newInstanceFunc = __NEW_INSTANCE_java_io_PrintStream; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_io_PrintStream.vtable, __TIB_java_io_FilterOutputStream.vtable, sizeof(__TIB_java_io_FilterOutputStream.vtable)); + // Initialize vtable for this class + __TIB_java_io_PrintStream.vtable[6] = (VTABLE_PTR) &java_io_PrintStream_checkError__; + __TIB_java_io_PrintStream.vtable[7] = (VTABLE_PTR) &java_io_PrintStream_close__; + __TIB_java_io_PrintStream.vtable[8] = (VTABLE_PTR) &java_io_PrintStream_flush__; + __TIB_java_io_PrintStream.vtable[10] = (VTABLE_PTR) &java_io_PrintStream_write___byte_1ARRAY_int_int; + __TIB_java_io_PrintStream.vtable[11] = (VTABLE_PTR) &java_io_PrintStream_write___int; + __TIB_java_io_PrintStream.vtable[12] = (VTABLE_PTR) &java_io_PrintStream_append___char; + __TIB_java_io_PrintStream.vtable[13] = (VTABLE_PTR) &java_io_PrintStream_append___java_lang_CharSequence; + __TIB_java_io_PrintStream.vtable[14] = (VTABLE_PTR) &java_io_PrintStream_append___java_lang_CharSequence_int_int; + // Initialize interface information + __TIB_java_io_PrintStream.numImplementedInterfaces = 3; + __TIB_java_io_PrintStream.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Closeable) + + __TIB_java_io_PrintStream.implementedInterfaces[0][0] = &__TIB_java_io_Closeable; + + XMLVM_CLASS_INIT(java_io_Flushable) + + __TIB_java_io_PrintStream.implementedInterfaces[0][1] = &__TIB_java_io_Flushable; + + XMLVM_CLASS_INIT(java_lang_Appendable) + + __TIB_java_io_PrintStream.implementedInterfaces[0][2] = &__TIB_java_lang_Appendable; + // Initialize itable for this class + __TIB_java_io_PrintStream.itableBegin = &__TIB_java_io_PrintStream.itable[0]; + __TIB_java_io_PrintStream.itable[XMLVM_ITABLE_IDX_java_io_Closeable_close__] = __TIB_java_io_PrintStream.vtable[7]; + __TIB_java_io_PrintStream.itable[XMLVM_ITABLE_IDX_java_io_Flushable_flush__] = __TIB_java_io_PrintStream.vtable[8]; + __TIB_java_io_PrintStream.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___char] = __TIB_java_io_PrintStream.vtable[12]; + __TIB_java_io_PrintStream.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence] = __TIB_java_io_PrintStream.vtable[13]; + __TIB_java_io_PrintStream.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence_int_int] = __TIB_java_io_PrintStream.vtable[14]; + + _STATIC_java_io_PrintStream_TOKEN_NULL = (java_lang_String*) xmlvm_create_java_string_from_pool(63); + + __TIB_java_io_PrintStream.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_PrintStream.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_io_PrintStream.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_io_PrintStream.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_io_PrintStream.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_io_PrintStream.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_PrintStream.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_PrintStream.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_io_PrintStream = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_PrintStream); + __TIB_java_io_PrintStream.clazz = __CLASS_java_io_PrintStream; + __TIB_java_io_PrintStream.baseType = JAVA_NULL; + __CLASS_java_io_PrintStream_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_PrintStream); + __CLASS_java_io_PrintStream_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_PrintStream_1ARRAY); + __CLASS_java_io_PrintStream_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_PrintStream_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_io_PrintStream] + //XMLVM_END_WRAPPER + + __TIB_java_io_PrintStream.classInitialized = 1; +} + +void __DELETE_java_io_PrintStream(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_io_PrintStream] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_io_PrintStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_FilterOutputStream(me, 0 || derivedClassWillRegisterFinalizer); + ((java_io_PrintStream*) me)->fields.java_io_PrintStream.ioError_ = 0; + ((java_io_PrintStream*) me)->fields.java_io_PrintStream.autoflush_ = 0; + ((java_io_PrintStream*) me)->fields.java_io_PrintStream.encoding_ = (java_lang_String*) JAVA_NULL; + ((java_io_PrintStream*) me)->fields.java_io_PrintStream.lineSeparator_ = (java_lang_String*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_io_PrintStream] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_io_PrintStream() +{ XMLVM_CLASS_INIT(java_io_PrintStream) +java_io_PrintStream* me = (java_io_PrintStream*) XMLVM_MALLOC(sizeof(java_io_PrintStream)); + me->tib = &__TIB_java_io_PrintStream; + __INIT_INSTANCE_MEMBERS_java_io_PrintStream(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_io_PrintStream] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_io_PrintStream() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_io_PrintStream_GET_TOKEN_NULL() +{ + XMLVM_CLASS_INIT(java_io_PrintStream) + return _STATIC_java_io_PrintStream_TOKEN_NULL; +} + +void java_io_PrintStream_PUT_TOKEN_NULL(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_io_PrintStream) +_STATIC_java_io_PrintStream_TOKEN_NULL = v; +} + +void java_io_PrintStream___INIT____java_io_OutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream___INIT____java_io_OutputStream] + XMLVM_ENTER_METHOD("java.io.PrintStream", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 73) + XMLVM_CHECK_NPE(1) + java_io_FilterOutputStream___INIT____java_io_OutputStream(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 58) + // "\012" + _r0.o = xmlvm_create_java_string_from_pool(812); + XMLVM_CHECK_NPE(1) + ((java_io_PrintStream*) _r1.o)->fields.java_io_PrintStream.lineSeparator_ = _r0.o; + XMLVM_SOURCE_POSITION("PrintStream.java", 74) + if (_r2.o != JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("PrintStream.java", 75) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label15:; + XMLVM_SOURCE_POSITION("PrintStream.java", 77) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream___INIT____java_io_OutputStream_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream___INIT____java_io_OutputStream_boolean] + XMLVM_ENTER_METHOD("java.io.PrintStream", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("PrintStream.java", 94) + XMLVM_CHECK_NPE(1) + java_io_FilterOutputStream___INIT____java_io_OutputStream(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 58) + // "\012" + _r0.o = xmlvm_create_java_string_from_pool(812); + XMLVM_CHECK_NPE(1) + ((java_io_PrintStream*) _r1.o)->fields.java_io_PrintStream.lineSeparator_ = _r0.o; + XMLVM_SOURCE_POSITION("PrintStream.java", 95) + if (_r2.o != JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("PrintStream.java", 96) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label15:; + XMLVM_SOURCE_POSITION("PrintStream.java", 98) + XMLVM_CHECK_NPE(1) + ((java_io_PrintStream*) _r1.o)->fields.java_io_PrintStream.autoflush_ = _r3.i; + XMLVM_SOURCE_POSITION("PrintStream.java", 99) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream___INIT____java_io_OutputStream_boolean_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream___INIT____java_io_OutputStream_boolean_java_lang_String] + XMLVM_ENTER_METHOD("java.io.PrintStream", "", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + XMLVM_SOURCE_POSITION("PrintStream.java", 121) + XMLVM_CHECK_NPE(2) + java_io_FilterOutputStream___INIT____java_io_OutputStream(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 58) + // "\012" + _r1.o = xmlvm_create_java_string_from_pool(812); + XMLVM_CHECK_NPE(2) + ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.lineSeparator_ = _r1.o; + XMLVM_SOURCE_POSITION("PrintStream.java", 122) + if (_r3.o == JAVA_NULL) goto label11; + if (_r5.o != JAVA_NULL) goto label17; + label11:; + XMLVM_SOURCE_POSITION("PrintStream.java", 123) + _r1.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(1) + java_lang_NullPointerException___INIT___(_r1.o); + XMLVM_THROW_CUSTOM(_r1.o) + label17:; + XMLVM_SOURCE_POSITION("PrintStream.java", 125) + XMLVM_CHECK_NPE(2) + ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.autoflush_ = _r4.i; + XMLVM_TRY_BEGIN(w5955aaab7b1c21) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 127) + _r1.i = java_nio_charset_Charset_isSupported___java_lang_String(_r5.o); + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w5955aaab7b1c21->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaab7b1c21, sizeof(XMLVM_JMP_BUF)); goto label39; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 128) + + + // Red class access removed: java.io.UnsupportedEncodingException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaab7b1c21) + XMLVM_CATCH_END(w5955aaab7b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaab7b1c21) + label31:; + XMLVM_SOURCE_POSITION("PrintStream.java", 130) + java_lang_Thread* curThread_w5955aaab7b1c24 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5955aaab7b1c24->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + XMLVM_SOURCE_POSITION("PrintStream.java", 131) + + + // Red class access removed: java.io.UnsupportedEncodingException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label39:; + XMLVM_SOURCE_POSITION("PrintStream.java", 133) + XMLVM_CHECK_NPE(2) + ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.encoding_ = _r5.o; + XMLVM_SOURCE_POSITION("PrintStream.java", 134) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream___INIT____java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream___INIT____java_io_File] + XMLVM_ENTER_METHOD("java.io.PrintStream", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 150) + + + // Red class access removed: java.io.FileOutputStream::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.FileOutputStream:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + java_io_FilterOutputStream___INIT____java_io_OutputStream(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 58) + // "\012" + _r0.o = xmlvm_create_java_string_from_pool(812); + XMLVM_CHECK_NPE(1) + ((java_io_PrintStream*) _r1.o)->fields.java_io_PrintStream.lineSeparator_ = _r0.o; + XMLVM_SOURCE_POSITION("PrintStream.java", 151) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream___INIT____java_io_File_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream___INIT____java_io_File_java_lang_String] + XMLVM_ENTER_METHOD("java.io.PrintStream", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("PrintStream.java", 174) + + + // Red class access removed: java.io.FileOutputStream::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.FileOutputStream:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + java_io_FilterOutputStream___INIT____java_io_OutputStream(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 58) + // "\012" + _r0.o = xmlvm_create_java_string_from_pool(812); + XMLVM_CHECK_NPE(1) + ((java_io_PrintStream*) _r1.o)->fields.java_io_PrintStream.lineSeparator_ = _r0.o; + XMLVM_SOURCE_POSITION("PrintStream.java", 175) + if (_r3.o != JAVA_NULL) goto label20; + XMLVM_SOURCE_POSITION("PrintStream.java", 176) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label20:; + XMLVM_SOURCE_POSITION("PrintStream.java", 178) + _r0.i = java_nio_charset_Charset_isSupported___java_lang_String(_r3.o); + if (_r0.i != 0) goto label32; + XMLVM_SOURCE_POSITION("PrintStream.java", 179) + + + // Red class access removed: java.io.UnsupportedEncodingException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label32:; + XMLVM_SOURCE_POSITION("PrintStream.java", 181) + XMLVM_CHECK_NPE(1) + ((java_io_PrintStream*) _r1.o)->fields.java_io_PrintStream.encoding_ = _r3.o; + XMLVM_SOURCE_POSITION("PrintStream.java", 182) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.io.PrintStream", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 199) + _r0.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(0) + java_io_File___INIT____java_lang_String(_r0.o, _r2.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream___INIT____java_io_File(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 200) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.io.PrintStream", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("PrintStream.java", 224) + _r0.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(0) + java_io_File___INIT____java_lang_String(_r0.o, _r2.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream___INIT____java_io_File_java_lang_String(_r1.o, _r0.o, _r3.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 225) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_io_PrintStream_checkError__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_checkError__] + XMLVM_ENTER_METHOD("java.io.PrintStream", "checkError", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("PrintStream.java", 236) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_; + if (_r0.o != JAVA_NULL) goto label7; + XMLVM_SOURCE_POSITION("PrintStream.java", 237) + XMLVM_SOURCE_POSITION("PrintStream.java", 238) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.ioError_; + label6:; + XMLVM_SOURCE_POSITION("PrintStream.java", 243) + XMLVM_EXIT_METHOD() + return _r1.i; + label7:; + XMLVM_SOURCE_POSITION("PrintStream.java", 241) + //java_io_PrintStream_flush__[8] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT)) ((java_io_PrintStream*) _r2.o)->tib->vtable[8])(_r2.o); + XMLVM_CHECK_NPE(2) + _r1.i = ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.ioError_; + goto label6; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_close__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_close__] + XMLVM_ENTER_METHOD("java.io.PrintStream", "close", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("PrintStream.java", 253) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w5955aaac13b1b4) + // Begin try + //java_io_PrintStream_flush__[8] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT)) ((java_io_PrintStream*) _r2.o)->tib->vtable[8])(_r2.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 254) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac13b1b4) + XMLVM_CATCH_SPECIFIC(w5955aaac13b1b4,java_lang_Object,24) + XMLVM_CATCH_END(w5955aaac13b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac13b1b4) + if (_r1.o == JAVA_NULL) goto label16; + XMLVM_TRY_BEGIN(w5955aaac13b1b6) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 256) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_; + //java_io_OutputStream_close__[7] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT)) ((java_io_OutputStream*) _r1.o)->tib->vtable[7])(_r1.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 257) + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(2) + ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_ = _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac13b1b6) + XMLVM_CATCH_SPECIFIC(w5955aaac13b1b6,java_io_IOException,18) + XMLVM_CATCH_SPECIFIC(w5955aaac13b1b6,java_lang_Object,24) + XMLVM_CATCH_END(w5955aaac13b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac13b1b6) + label16:; + XMLVM_SOURCE_POSITION("PrintStream.java", 262) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return; + label18:; + XMLVM_SOURCE_POSITION("PrintStream.java", 258) + java_lang_Thread* curThread_w5955aaac13b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5955aaac13b1c13->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + XMLVM_TRY_BEGIN(w5955aaac13b1c15) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 259) + XMLVM_CHECK_NPE(2) + java_io_PrintStream_setError__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac13b1c15) + XMLVM_CATCH_SPECIFIC(w5955aaac13b1c15,java_lang_Object,24) + XMLVM_CATCH_END(w5955aaac13b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac13b1c15) + goto label16; + label24:; + java_lang_Thread* curThread_w5955aaac13b1c18 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5955aaac13b1c18->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_flush__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_flush__] + XMLVM_ENTER_METHOD("java.io.PrintStream", "flush", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PrintStream.java", 271) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w5955aaac14b1b4) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_FilterOutputStream*) _r1.o)->fields.java_io_FilterOutputStream.out_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac14b1b4) + XMLVM_CATCH_SPECIFIC(w5955aaac14b1b4,java_lang_Object,17) + XMLVM_CATCH_END(w5955aaac14b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac14b1b4) + if (_r0.o == JAVA_NULL) goto label13; + XMLVM_TRY_BEGIN(w5955aaac14b1b6) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 273) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_io_FilterOutputStream*) _r1.o)->fields.java_io_FilterOutputStream.out_; + //java_io_OutputStream_flush__[8] + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) ((java_io_OutputStream*) _r0.o)->tib->vtable[8])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac14b1b6) + XMLVM_CATCH_SPECIFIC(w5955aaac14b1b6,java_io_IOException,12) + XMLVM_CATCH_SPECIFIC(w5955aaac14b1b6,java_lang_Object,17) + XMLVM_CATCH_END(w5955aaac14b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac14b1b6) + label10:; + XMLVM_SOURCE_POSITION("PrintStream.java", 280) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return; + label12:; + XMLVM_SOURCE_POSITION("PrintStream.java", 275) + java_lang_Thread* curThread_w5955aaac14b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5955aaac14b1c13->fields.java_lang_Thread.xmlvmException_; + label13:; + XMLVM_TRY_BEGIN(w5955aaac14b1c15) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 279) + XMLVM_CHECK_NPE(1) + java_io_PrintStream_setError__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac14b1c15) + XMLVM_CATCH_SPECIFIC(w5955aaac14b1c15,java_lang_Object,17) + XMLVM_CATCH_END(w5955aaac14b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac14b1c15) + goto label10; + label17:; + java_lang_Thread* curThread_w5955aaac14b1c18 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5955aaac14b1c18->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_PrintStream_format___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_format___java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.io.PrintStream", "format", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("PrintStream.java", 303) + _r0.o = java_util_Locale_getDefault__(); + XMLVM_CHECK_NPE(1) + _r0.o = java_io_PrintStream_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(_r1.o, _r0.o, _r2.o, _r3.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_PrintStream_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.io.PrintStream", "format", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.o = n3; + XMLVM_SOURCE_POSITION("PrintStream.java", 328) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("PrintStream.java", 330) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("PrintStream.java", 332) + + + // Red class access removed: java.util.Formatter::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Formatter:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Formatter::format + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("PrintStream.java", 333) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_PrintStream_printf___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_printf___java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.io.PrintStream", "printf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("PrintStream.java", 357) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_PrintStream_format___java_lang_String_java_lang_Object_1ARRAY(_r1.o, _r2.o, _r3.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_PrintStream_printf___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_printf___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.io.PrintStream", "printf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.o = n3; + XMLVM_SOURCE_POSITION("PrintStream.java", 382) + XMLVM_CHECK_NPE(1) + _r0.o = java_io_PrintStream_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(_r1.o, _r2.o, _r3.o, _r4.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_newline__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_newline__] + XMLVM_ENTER_METHOD("java.io.PrintStream", "newline", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PrintStream.java", 389) + // "\012" + _r0.o = xmlvm_create_java_string_from_pool(812); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 390) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___char_1ARRAY] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 401) + _r0.o = __NEW_java_lang_String(); + _r1.i = 0; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r4.o, _r1.i, _r2.i); + XMLVM_CHECK_NPE(3) + java_io_PrintStream_print___java_lang_String(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 402) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___char] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 413) + _r0.o = java_lang_String_valueOf___char(_r2.i); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 414) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___double] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.d = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 425) + _r0.o = java_lang_String_valueOf___double(_r2.d); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 426) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___float(JAVA_OBJECT me, JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___float] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.f = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 437) + _r0.o = java_lang_String_valueOf___float(_r2.f); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 438) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___int] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 449) + _r0.o = java_lang_String_valueOf___int(_r2.i); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 450) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___long] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.l = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 461) + _r0.o = java_lang_String_valueOf___long(_r2.l); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 462) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___java_lang_Object] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 473) + _r0.o = java_lang_String_valueOf___java_lang_Object(_r2.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 474) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___java_lang_String] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 489) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w5955aaac27b1b5) + // Begin try + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_; + if (_r1.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w5955aaac27b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac27b1b5, sizeof(XMLVM_JMP_BUF)); goto label10; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 490) + XMLVM_CHECK_NPE(2) + java_io_PrintStream_setError__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac27b1b5) + XMLVM_CATCH_SPECIFIC(w5955aaac27b1b5,java_lang_Object,18) + XMLVM_CATCH_END(w5955aaac27b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac27b1b5) + label8:; + XMLVM_SOURCE_POSITION("PrintStream.java", 507) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return; + label10:; + XMLVM_SOURCE_POSITION("PrintStream.java", 493) + if (_r3.o != JAVA_NULL) goto label21; + XMLVM_TRY_BEGIN(w5955aaac27b1c13) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 494) + // "null" + _r1.o = xmlvm_create_java_string_from_pool(63); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_print___java_lang_String(_r2.o, _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac27b1c13) + XMLVM_CATCH_SPECIFIC(w5955aaac27b1c13,java_lang_Object,18) + XMLVM_CATCH_END(w5955aaac27b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac27b1c13) + goto label8; + label18:; + java_lang_Thread* curThread_w5955aaac27b1c16 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5955aaac27b1c16->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r1.o) + label21:; + XMLVM_TRY_BEGIN(w5955aaac27b1c20) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 499) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.encoding_; + if (_r1.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w5955aaac27b1c20->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac27b1c20, sizeof(XMLVM_JMP_BUF)); goto label39; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 500) + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_String_getBytes__(_r3.o); + //java_io_PrintStream_write___byte_1ARRAY[9] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_io_PrintStream*) _r2.o)->tib->vtable[9])(_r2.o, _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac27b1c20) + XMLVM_CATCH_SPECIFIC(w5955aaac27b1c20,java_io_IOException,33) + XMLVM_CATCH_SPECIFIC(w5955aaac27b1c20,java_lang_Object,18) + XMLVM_CATCH_END(w5955aaac27b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac27b1c20) + goto label8; + label33:; + XMLVM_SOURCE_POSITION("PrintStream.java", 504) + java_lang_Thread* curThread_w5955aaac27b1c24 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5955aaac27b1c24->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + XMLVM_TRY_BEGIN(w5955aaac27b1c26) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 505) + XMLVM_CHECK_NPE(2) + java_io_PrintStream_setError__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac27b1c26) + XMLVM_CATCH_SPECIFIC(w5955aaac27b1c26,java_lang_Object,18) + XMLVM_CATCH_END(w5955aaac27b1c26) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac27b1c26) + goto label8; + label39:; + XMLVM_TRY_BEGIN(w5955aaac27b1c29) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 502) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.encoding_; + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_String_getBytes___java_lang_String(_r3.o, _r1.o); + //java_io_PrintStream_write___byte_1ARRAY[9] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_io_PrintStream*) _r2.o)->tib->vtable[9])(_r2.o, _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac27b1c29) + XMLVM_CATCH_SPECIFIC(w5955aaac27b1c29,java_io_IOException,33) + XMLVM_CATCH_SPECIFIC(w5955aaac27b1c29,java_lang_Object,18) + XMLVM_CATCH_END(w5955aaac27b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac27b1c29) + goto label8; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_print___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_print___boolean] + XMLVM_ENTER_METHOD("java.io.PrintStream", "print", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 518) + _r0.o = java_lang_String_valueOf___boolean(_r2.i); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 519) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println__] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("PrintStream.java", 526) + XMLVM_CHECK_NPE(0) + java_io_PrintStream_newline__(_r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 527) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___char_1ARRAY] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 539) + _r0.o = __NEW_java_lang_String(); + _r1.i = 0; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r4.o, _r1.i, _r2.i); + XMLVM_CHECK_NPE(3) + java_io_PrintStream_println___java_lang_String(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 540) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___char] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 551) + _r0.o = java_lang_String_valueOf___char(_r2.i); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 552) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___double] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.d = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 563) + _r0.o = java_lang_String_valueOf___double(_r2.d); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 564) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___float(JAVA_OBJECT me, JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___float] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.f = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 575) + _r0.o = java_lang_String_valueOf___float(_r2.f); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 576) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___int] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 587) + _r0.o = java_lang_String_valueOf___int(_r2.i); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 588) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___long] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.l = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 599) + _r0.o = java_lang_String_valueOf___long(_r2.l); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 600) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___java_lang_Object] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 611) + _r0.o = java_lang_String_valueOf___java_lang_Object(_r2.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 612) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___java_lang_String] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 627) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w5955aaac37b1b5) + // Begin try + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 628) + XMLVM_CHECK_NPE(1) + java_io_PrintStream_newline__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac37b1b5) + XMLVM_CATCH_SPECIFIC(w5955aaac37b1b5,java_lang_Object,9) + XMLVM_CATCH_END(w5955aaac37b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac37b1b5) + XMLVM_SOURCE_POSITION("PrintStream.java", 629) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return; + label9:; + java_lang_Thread* curThread_w5955aaac37b1c10 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5955aaac37b1c10->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_println___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_println___boolean] + XMLVM_ENTER_METHOD("java.io.PrintStream", "println", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 640) + _r0.o = java_lang_String_valueOf___boolean(_r2.i); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 641) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_setError__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_setError__] + XMLVM_ENTER_METHOD("java.io.PrintStream", "setError", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PrintStream.java", 647) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + ((java_io_PrintStream*) _r1.o)->fields.java_io_PrintStream.ioError_ = _r0.i; + XMLVM_SOURCE_POSITION("PrintStream.java", 648) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_write___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_write___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.io.PrintStream", "write", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("PrintStream.java", 672) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r4.i > _r1.i) goto label5; + if (_r4.i >= 0) goto label11; + label5:; + XMLVM_SOURCE_POSITION("PrintStream.java", 675) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label11:; + XMLVM_SOURCE_POSITION("PrintStream.java", 677) + if (_r5.i < 0) goto label17; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r5.i <= _r1.i) goto label23; + label17:; + XMLVM_SOURCE_POSITION("PrintStream.java", 680) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label23:; + XMLVM_SOURCE_POSITION("PrintStream.java", 682) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w5955aaac40b1c28) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 683) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_; + if (_r1.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w5955aaac40b1c28->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac40b1c28, sizeof(XMLVM_JMP_BUF)); goto label33; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 684) + XMLVM_CHECK_NPE(2) + java_io_PrintStream_setError__(_r2.o); + XMLVM_SOURCE_POSITION("PrintStream.java", 685) + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac40b1c28) + XMLVM_CATCH_SPECIFIC(w5955aaac40b1c28,java_lang_Object,47) + XMLVM_CATCH_END(w5955aaac40b1c28) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac40b1c28) + label32:; + XMLVM_SOURCE_POSITION("PrintStream.java", 696) + XMLVM_EXIT_METHOD() + return; + label33:; + XMLVM_TRY_BEGIN(w5955aaac40b1c33) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 688) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_io_FilterOutputStream*) _r2.o)->fields.java_io_FilterOutputStream.out_; + //java_io_OutputStream_write___byte_1ARRAY_int_int[10] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_io_OutputStream*) _r1.o)->tib->vtable[10])(_r1.o, _r3.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("PrintStream.java", 689) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_io_PrintStream*) _r2.o)->fields.java_io_PrintStream.autoflush_; + if (_r1.i == 0) { XMLVM_MEMCPY(curThread_w5955aaac40b1c33->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac40b1c33, sizeof(XMLVM_JMP_BUF)); goto label45; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 690) + //java_io_PrintStream_flush__[8] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT)) ((java_io_PrintStream*) _r2.o)->tib->vtable[8])(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac40b1c33) + XMLVM_CATCH_SPECIFIC(w5955aaac40b1c33,java_io_IOException,50) + XMLVM_CATCH_SPECIFIC(w5955aaac40b1c33,java_lang_Object,47) + XMLVM_CATCH_END(w5955aaac40b1c33) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac40b1c33) + label45:; + XMLVM_TRY_BEGIN(w5955aaac40b1c35) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 695) + java_lang_Object_releaseLockRecursive__(_r2.o); + { XMLVM_MEMCPY(curThread_w5955aaac40b1c35->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac40b1c35, sizeof(XMLVM_JMP_BUF)); goto label32; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac40b1c35) + XMLVM_CATCH_SPECIFIC(w5955aaac40b1c35,java_lang_Object,47) + XMLVM_CATCH_END(w5955aaac40b1c35) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac40b1c35) + label47:; + XMLVM_TRY_BEGIN(w5955aaac40b1c37) + // Begin try + java_lang_Thread* curThread_w5955aaac40b1c37aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5955aaac40b1c37aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac40b1c37) + XMLVM_CATCH_SPECIFIC(w5955aaac40b1c37,java_lang_Object,47) + XMLVM_CATCH_END(w5955aaac40b1c37) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac40b1c37) + XMLVM_THROW_CUSTOM(_r1.o) + label50:; + XMLVM_SOURCE_POSITION("PrintStream.java", 692) + java_lang_Thread* curThread_w5955aaac40b1c41 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5955aaac40b1c41->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + XMLVM_TRY_BEGIN(w5955aaac40b1c43) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 693) + XMLVM_CHECK_NPE(2) + java_io_PrintStream_setError__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac40b1c43) + XMLVM_CATCH_SPECIFIC(w5955aaac40b1c43,java_lang_Object,47) + XMLVM_CATCH_END(w5955aaac40b1c43) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac40b1c43) + goto label45; + //XMLVM_END_WRAPPER +} + +void java_io_PrintStream_write___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_write___int] + XMLVM_ENTER_METHOD("java.io.PrintStream", "write", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 712) + java_lang_Object_acquireLockRecursive__(_r4.o); + XMLVM_TRY_BEGIN(w5955aaac41b1b5) + // Begin try + XMLVM_CHECK_NPE(4) + _r3.o = ((java_io_FilterOutputStream*) _r4.o)->fields.java_io_FilterOutputStream.out_; + if (_r3.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w5955aaac41b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac41b1b5, sizeof(XMLVM_JMP_BUF)); goto label10; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 713) + XMLVM_CHECK_NPE(4) + java_io_PrintStream_setError__(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac41b1b5) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1b5,java_lang_Object,43) + XMLVM_CATCH_END(w5955aaac41b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac41b1b5) + label8:; + XMLVM_SOURCE_POSITION("PrintStream.java", 727) + java_lang_Object_releaseLockRecursive__(_r4.o); + XMLVM_EXIT_METHOD() + return; + label10:; + XMLVM_TRY_BEGIN(w5955aaac41b1c11) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 717) + XMLVM_CHECK_NPE(4) + _r3.o = ((java_io_FilterOutputStream*) _r4.o)->fields.java_io_FilterOutputStream.out_; + //java_io_OutputStream_write___int[11] + XMLVM_CHECK_NPE(3) + (*(void (*)(JAVA_OBJECT, JAVA_INT)) ((java_io_OutputStream*) _r3.o)->tib->vtable[11])(_r3.o, _r5.i); + XMLVM_SOURCE_POSITION("PrintStream.java", 718) + _r0.i = _r5.i & 255; + _r3.i = 10; + if (_r0.i == _r3.i) { XMLVM_MEMCPY(curThread_w5955aaac41b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac41b1c11, sizeof(XMLVM_JMP_BUF)); goto label25; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 720) + _r3.i = 21; + if (_r0.i != _r3.i) { XMLVM_MEMCPY(curThread_w5955aaac41b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac41b1c11, sizeof(XMLVM_JMP_BUF)); goto label46; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac41b1c11) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1c11,java_io_IOException,37) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1c11,java_lang_Object,43) + XMLVM_CATCH_END(w5955aaac41b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac41b1c11) + label25:; + XMLVM_TRY_BEGIN(w5955aaac41b1c13) + // Begin try + _r3.i = 1; + _r2 = _r3; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac41b1c13) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1c13,java_io_IOException,37) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1c13,java_lang_Object,43) + XMLVM_CATCH_END(w5955aaac41b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac41b1c13) + label27:; + XMLVM_TRY_BEGIN(w5955aaac41b1c15) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 721) + XMLVM_CHECK_NPE(4) + _r3.i = ((java_io_PrintStream*) _r4.o)->fields.java_io_PrintStream.autoflush_; + if (_r3.i == 0) { XMLVM_MEMCPY(curThread_w5955aaac41b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac41b1c15, sizeof(XMLVM_JMP_BUF)); goto label8; }; + if (_r2.i == 0) { XMLVM_MEMCPY(curThread_w5955aaac41b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5955aaac41b1c15, sizeof(XMLVM_JMP_BUF)); goto label8; }; + XMLVM_SOURCE_POSITION("PrintStream.java", 722) + //java_io_PrintStream_flush__[8] + XMLVM_CHECK_NPE(4) + (*(void (*)(JAVA_OBJECT)) ((java_io_PrintStream*) _r4.o)->tib->vtable[8])(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac41b1c15) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1c15,java_io_IOException,37) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1c15,java_lang_Object,43) + XMLVM_CATCH_END(w5955aaac41b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac41b1c15) + goto label8; + label37:; + XMLVM_SOURCE_POSITION("PrintStream.java", 724) + java_lang_Thread* curThread_w5955aaac41b1c19 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5955aaac41b1c19->fields.java_lang_Thread.xmlvmException_; + _r1 = _r3; + XMLVM_TRY_BEGIN(w5955aaac41b1c21) + // Begin try + XMLVM_SOURCE_POSITION("PrintStream.java", 725) + XMLVM_CHECK_NPE(4) + java_io_PrintStream_setError__(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5955aaac41b1c21) + XMLVM_CATCH_SPECIFIC(w5955aaac41b1c21,java_lang_Object,43) + XMLVM_CATCH_END(w5955aaac41b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w5955aaac41b1c21) + goto label8; + label43:; + java_lang_Thread* curThread_w5955aaac41b1c24 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5955aaac41b1c24->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r4.o); + XMLVM_THROW_CUSTOM(_r3.o) + label46:; + _r3.i = 0; + _r2 = _r3; + goto label27; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_PrintStream_append___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_append___char] + XMLVM_ENTER_METHOD("java.io.PrintStream", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 738) + XMLVM_CHECK_NPE(0) + java_io_PrintStream_print___char(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("PrintStream.java", 739) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_PrintStream_append___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_append___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.io.PrintStream", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PrintStream.java", 753) + if (_r2.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("PrintStream.java", 754) + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + label7:; + XMLVM_SOURCE_POSITION("PrintStream.java", 758) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + XMLVM_SOURCE_POSITION("PrintStream.java", 756) + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_io_PrintStream_append___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_io_PrintStream_append___java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.io.PrintStream", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("PrintStream.java", 783) + if (_r2.o != JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("PrintStream.java", 784) + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_substring___int_int(_r0.o, _r3.i, _r4.i); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + label11:; + XMLVM_SOURCE_POSITION("PrintStream.java", 788) + XMLVM_EXIT_METHOD() + return _r1.o; + label12:; + XMLVM_SOURCE_POSITION("PrintStream.java", 786) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int])(_r2.o, _r3.i, _r4.i); + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r0.o); + goto label11; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_io_PrintStream.h b/tests/nbody-java/java_io_PrintStream.h new file mode 100644 index 0000000000000..97b5a51d35191 --- /dev/null +++ b/tests/nbody-java/java_io_PrintStream.h @@ -0,0 +1,158 @@ +#ifndef __JAVA_IO_PRINTSTREAM__ +#define __JAVA_IO_PRINTSTREAM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_io_PrintStream 5 +// Implemented interfaces: +#include "java_io_Closeable.h" +#include "java_lang_Appendable.h" +// Super Class: +#include "java_io_FilterOutputStream.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_File +#define XMLVM_FORWARD_DECL_java_io_File +XMLVM_FORWARD_DECL(java_io_File) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +XMLVM_FORWARD_DECL(java_io_IOException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_OutputStream +#define XMLVM_FORWARD_DECL_java_io_OutputStream +XMLVM_FORWARD_DECL(java_io_OutputStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +XMLVM_FORWARD_DECL(java_lang_CharSequence) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Locale +#define XMLVM_FORWARD_DECL_java_util_Locale +XMLVM_FORWARD_DECL(java_util_Locale) +#endif +// Class declarations for java.io.PrintStream +XMLVM_DEFINE_CLASS(java_io_PrintStream, 15, XMLVM_ITABLE_SIZE_java_io_PrintStream) + +extern JAVA_OBJECT __CLASS_java_io_PrintStream; +extern JAVA_OBJECT __CLASS_java_io_PrintStream_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_PrintStream_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_PrintStream_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_io_PrintStream +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_io_PrintStream \ + __INSTANCE_FIELDS_java_io_FilterOutputStream; \ + struct { \ + JAVA_BOOLEAN ioError_; \ + JAVA_BOOLEAN autoflush_; \ + JAVA_OBJECT encoding_; \ + JAVA_OBJECT lineSeparator_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_io_PrintStream \ + } java_io_PrintStream + +struct java_io_PrintStream { + __TIB_DEFINITION_java_io_PrintStream* tib; + struct { + __INSTANCE_FIELDS_java_io_PrintStream; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +typedef struct java_io_PrintStream java_io_PrintStream; +#endif + +#define XMLVM_VTABLE_SIZE_java_io_PrintStream 15 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_checkError__ 6 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_close__ 7 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_flush__ 8 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_write___byte_1ARRAY_int_int 10 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_write___int 11 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_append___char 12 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_append___java_lang_CharSequence 13 +#define XMLVM_VTABLE_IDX_java_io_PrintStream_append___java_lang_CharSequence_int_int 14 + +void __INIT_java_io_PrintStream(); +void __INIT_IMPL_java_io_PrintStream(); +void __DELETE_java_io_PrintStream(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_io_PrintStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_io_PrintStream(); +JAVA_OBJECT __NEW_INSTANCE_java_io_PrintStream(); +JAVA_OBJECT java_io_PrintStream_GET_TOKEN_NULL(); +void java_io_PrintStream_PUT_TOKEN_NULL(JAVA_OBJECT v); +void java_io_PrintStream___INIT____java_io_OutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream___INIT____java_io_OutputStream_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +void java_io_PrintStream___INIT____java_io_OutputStream_boolean_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3); +void java_io_PrintStream___INIT____java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream___INIT____java_io_File_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_io_PrintStream___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_BOOLEAN java_io_PrintStream_checkError__(JAVA_OBJECT me); +// Vtable index: 7 +void java_io_PrintStream_close__(JAVA_OBJECT me); +// Vtable index: 8 +void java_io_PrintStream_flush__(JAVA_OBJECT me); +JAVA_OBJECT java_io_PrintStream_format___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_io_PrintStream_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_io_PrintStream_printf___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_io_PrintStream_printf___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +void java_io_PrintStream_newline__(JAVA_OBJECT me); +void java_io_PrintStream_print___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream_print___char(JAVA_OBJECT me, JAVA_CHAR n1); +void java_io_PrintStream_print___double(JAVA_OBJECT me, JAVA_DOUBLE n1); +void java_io_PrintStream_print___float(JAVA_OBJECT me, JAVA_FLOAT n1); +void java_io_PrintStream_print___int(JAVA_OBJECT me, JAVA_INT n1); +void java_io_PrintStream_print___long(JAVA_OBJECT me, JAVA_LONG n1); +void java_io_PrintStream_print___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream_print___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream_print___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void java_io_PrintStream_println__(JAVA_OBJECT me); +void java_io_PrintStream_println___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream_println___char(JAVA_OBJECT me, JAVA_CHAR n1); +void java_io_PrintStream_println___double(JAVA_OBJECT me, JAVA_DOUBLE n1); +void java_io_PrintStream_println___float(JAVA_OBJECT me, JAVA_FLOAT n1); +void java_io_PrintStream_println___int(JAVA_OBJECT me, JAVA_INT n1); +void java_io_PrintStream_println___long(JAVA_OBJECT me, JAVA_LONG n1); +void java_io_PrintStream_println___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream_println___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_io_PrintStream_println___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void java_io_PrintStream_setError__(JAVA_OBJECT me); +// Vtable index: 10 +void java_io_PrintStream_write___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 11 +void java_io_PrintStream_write___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 12 +JAVA_OBJECT java_io_PrintStream_append___char(JAVA_OBJECT me, JAVA_CHAR n1); +// Vtable index: 13 +JAVA_OBJECT java_io_PrintStream_append___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 14 +JAVA_OBJECT java_io_PrintStream_append___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); + +#endif diff --git a/tests/nbody-java/java_io_Serializable.c b/tests/nbody-java/java_io_Serializable.c new file mode 100644 index 0000000000000..a5428cacfe094 --- /dev/null +++ b/tests/nbody-java/java_io_Serializable.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_io_Serializable.h" + +__TIB_DEFINITION_java_io_Serializable __TIB_java_io_Serializable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_io_Serializable, // classInitializer + "java.io.Serializable", // className + "java.io", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_io_Serializable; +JAVA_OBJECT __CLASS_java_io_Serializable_1ARRAY; +JAVA_OBJECT __CLASS_java_io_Serializable_2ARRAY; +JAVA_OBJECT __CLASS_java_io_Serializable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_io_Serializable() +{ + staticInitializerLock(&__TIB_java_io_Serializable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_io_Serializable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_io_Serializable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_io_Serializable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_io_Serializable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_io_Serializable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_io_Serializable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.io.Serializable") + __INIT_IMPL_java_io_Serializable(); + } +} + +void __INIT_IMPL_java_io_Serializable() +{ + __TIB_java_io_Serializable.numInterfaces = 0; + __TIB_java_io_Serializable.declaredFields = &__field_reflection_data[0]; + __TIB_java_io_Serializable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_io_Serializable.methodDispatcherFunc = method_dispatcher; + __TIB_java_io_Serializable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_io_Serializable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_io_Serializable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_io_Serializable); + __TIB_java_io_Serializable.clazz = __CLASS_java_io_Serializable; + __TIB_java_io_Serializable.baseType = JAVA_NULL; + __CLASS_java_io_Serializable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Serializable); + __CLASS_java_io_Serializable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Serializable_1ARRAY); + __CLASS_java_io_Serializable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_io_Serializable_2ARRAY); + + __TIB_java_io_Serializable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_io_Serializable.h b/tests/nbody-java/java_io_Serializable.h new file mode 100644 index 0000000000000..9f3d15e539c92 --- /dev/null +++ b/tests/nbody-java/java_io_Serializable.h @@ -0,0 +1,27 @@ +#ifndef __JAVA_IO_SERIALIZABLE__ +#define __JAVA_IO_SERIALIZABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_io_Serializable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_io_Serializable; +extern JAVA_OBJECT __CLASS_java_io_Serializable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_io_Serializable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_io_Serializable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_io_Serializable +#define XMLVM_FORWARD_DECL_java_io_Serializable +typedef struct java_io_Serializable java_io_Serializable; +#endif + +void __INIT_java_io_Serializable(); +void __INIT_IMPL_java_io_Serializable(); + +#endif diff --git a/tests/nbody-java/java_lang_AbstractStringBuilder.c b/tests/nbody-java/java_lang_AbstractStringBuilder.c new file mode 100644 index 0000000000000..82ee8d995e10a --- /dev/null +++ b/tests/nbody-java/java_lang_AbstractStringBuilder.c @@ -0,0 +1,2794 @@ +#include "xmlvm.h" +#include "java_io_InvalidObjectException.h" +#include "java_lang_CharSequence.h" +#include "java_lang_Character.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_lang_AbstractStringBuilder.h" + +#define XMLVM_CURRENT_CLASS_NAME AbstractStringBuilder +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_AbstractStringBuilder + +__TIB_DEFINITION_java_lang_AbstractStringBuilder __TIB_java_lang_AbstractStringBuilder = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_AbstractStringBuilder, // classInitializer + "java.lang.AbstractStringBuilder", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_AbstractStringBuilder), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder; +JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_lang_AbstractStringBuilder_INITIAL_CAPACITY; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_AbstractStringBuilder() +{ + staticInitializerLock(&__TIB_java_lang_AbstractStringBuilder); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_AbstractStringBuilder.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_AbstractStringBuilder.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_AbstractStringBuilder); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_AbstractStringBuilder.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_AbstractStringBuilder.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_AbstractStringBuilder.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.AbstractStringBuilder") + __INIT_IMPL_java_lang_AbstractStringBuilder(); + } +} + +void __INIT_IMPL_java_lang_AbstractStringBuilder() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_AbstractStringBuilder.newInstanceFunc = __NEW_INSTANCE_java_lang_AbstractStringBuilder; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_AbstractStringBuilder.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_AbstractStringBuilder.vtable[5] = (VTABLE_PTR) &java_lang_AbstractStringBuilder_toString__; + // Initialize interface information + __TIB_java_lang_AbstractStringBuilder.numImplementedInterfaces = 0; + __TIB_java_lang_AbstractStringBuilder.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_AbstractStringBuilder_INITIAL_CAPACITY = 16; + + __TIB_java_lang_AbstractStringBuilder.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_AbstractStringBuilder.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_AbstractStringBuilder.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_AbstractStringBuilder.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_AbstractStringBuilder.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_AbstractStringBuilder.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_AbstractStringBuilder.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_AbstractStringBuilder.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_AbstractStringBuilder = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_AbstractStringBuilder); + __TIB_java_lang_AbstractStringBuilder.clazz = __CLASS_java_lang_AbstractStringBuilder; + __TIB_java_lang_AbstractStringBuilder.baseType = JAVA_NULL; + __CLASS_java_lang_AbstractStringBuilder_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_AbstractStringBuilder); + __CLASS_java_lang_AbstractStringBuilder_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_AbstractStringBuilder_1ARRAY); + __CLASS_java_lang_AbstractStringBuilder_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_AbstractStringBuilder_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_AbstractStringBuilder] + //XMLVM_END_WRAPPER + + __TIB_java_lang_AbstractStringBuilder.classInitialized = 1; +} + +void __DELETE_java_lang_AbstractStringBuilder(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_AbstractStringBuilder] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_AbstractStringBuilder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_AbstractStringBuilder*) me)->fields.java_lang_AbstractStringBuilder.value_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_AbstractStringBuilder*) me)->fields.java_lang_AbstractStringBuilder.count_ = 0; + ((java_lang_AbstractStringBuilder*) me)->fields.java_lang_AbstractStringBuilder.shared_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_AbstractStringBuilder] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_AbstractStringBuilder() +{ XMLVM_CLASS_INIT(java_lang_AbstractStringBuilder) +java_lang_AbstractStringBuilder* me = (java_lang_AbstractStringBuilder*) XMLVM_MALLOC(sizeof(java_lang_AbstractStringBuilder)); + me->tib = &__TIB_java_lang_AbstractStringBuilder; + __INIT_INSTANCE_MEMBERS_java_lang_AbstractStringBuilder(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_AbstractStringBuilder] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_AbstractStringBuilder() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_AbstractStringBuilder(); + java_lang_AbstractStringBuilder___INIT___(me); + return me; +} + +JAVA_INT java_lang_AbstractStringBuilder_GET_INITIAL_CAPACITY() +{ + XMLVM_CLASS_INIT(java_lang_AbstractStringBuilder) + return _STATIC_java_lang_AbstractStringBuilder_INITIAL_CAPACITY; +} + +void java_lang_AbstractStringBuilder_PUT_INITIAL_CAPACITY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_AbstractStringBuilder) +_STATIC_java_lang_AbstractStringBuilder_INITIAL_CAPACITY = v; +} + +JAVA_OBJECT java_lang_AbstractStringBuilder_getValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_getValue__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "getValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 48) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_AbstractStringBuilder_shareValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_shareValue__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "shareValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 55) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r0.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 56) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_set___char_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_set___char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "set", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + _r2.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 63) + if (_r4.o != JAVA_NULL) goto label27; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 64) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r2.i); + label5:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 66) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r1.i >= _r5.i) goto label20; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 67) + _r0.o = __NEW_java_io_InvalidObjectException(); + // "luni.4A" + _r1.o = xmlvm_create_java_string_from_pool(60); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r1.o); + XMLVM_CHECK_NPE(0) + java_io_InvalidObjectException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label20:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 70) + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r2.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 71) + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 72) + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_ = _r5.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 73) + XMLVM_EXIT_METHOD() + return; + label27:; + _r0 = _r4; + goto label5; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder___INIT___] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 75) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 76) + _r0.i = 16; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_CHECK_NPE(1) + ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 77) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder___INIT____int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 79) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 80) + if (_r2.i >= 0) goto label11; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 81) + + + // Red class access removed: java.lang.NegativeArraySizeException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NegativeArraySizeException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 83) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r2.i); + XMLVM_CHECK_NPE(1) + ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 84) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 86) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 87) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 88) + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r2.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 89) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + 16; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 90) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + java_lang_String_getChars___int_int_char_1ARRAY_int(_r4.o, _r2.i, _r0.i, _r1.o, _r2.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 91) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_enlargeBuffer___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_enlargeBuffer___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "enlargeBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 94) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.i = _r0.i >> 1; + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r0.i = _r0.i + _r1.i; + _r0.i = _r0.i + 2; + if (_r5.i <= _r0.i) goto label15; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 95) + _r0 = _r5; + label15:; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 96) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r3.i, _r0.o, _r3.i, _r2.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 97) + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 98) + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r3.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 99) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_appendNull__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_appendNull__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "appendNull", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 108; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 102) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + 4; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 103) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 104) + XMLVM_CHECK_NPE(4) + java_lang_AbstractStringBuilder_enlargeBuffer___int(_r4.o, _r0.i); + label14:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 106) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_ = _r2.i; + _r2.i = 110; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 107) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_ = _r2.i; + _r2.i = 117; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 108) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 109) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 110) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_append0___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_append0___char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "append0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 113) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r0.i = _r0.i + _r1.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 114) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i <= _r1.i) goto label12; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 115) + XMLVM_CHECK_NPE(5) + java_lang_AbstractStringBuilder_enlargeBuffer___int(_r5.o, _r0.i); + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 117) + _r1.i = 0; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r6.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 118) + XMLVM_CHECK_NPE(5) + ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 119) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_append0___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_append0___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "append0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + _r6.i = n3; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 123) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r5.i > _r0.i) goto label5; + if (_r5.i >= 0) goto label17; + label5:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 125) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.12" + _r1.o = xmlvm_create_java_string_from_pool(61); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r1.o, _r5.i); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 127) + if (_r6.i < 0) goto label23; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + _r0.i = _r0.i - _r5.i; + if (_r0.i >= _r6.i) goto label35; + label23:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 129) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.18" + _r1.o = xmlvm_create_java_string_from_pool(62); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r1.o, _r6.i); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label35:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 132) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + _r6.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 133) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i <= _r1.i) goto label46; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 134) + XMLVM_CHECK_NPE(3) + java_lang_AbstractStringBuilder_enlargeBuffer___int(_r3.o, _r0.i); + label46:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 136) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r5.i, _r1.o, _r2.i, _r6.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 137) + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 138) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_append0___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_append0___char] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "append0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.i = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 141) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i != _r1.i) goto label14; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 142) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(3) + java_lang_AbstractStringBuilder_enlargeBuffer___int(_r3.o, _r0.i); + label14:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 144) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 145) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_append0___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_append0___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "append0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 148) + if (_r6.o != JAVA_NULL) goto label6; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 149) + XMLVM_CHECK_NPE(5) + java_lang_AbstractStringBuilder_appendNull__(_r5.o); + label5:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 159) + XMLVM_EXIT_METHOD() + return; + label6:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 152) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r6.o)->tib->vtable[8])(_r6.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 153) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = _r1.i + _r0.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 154) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r1.i <= _r2.i) goto label21; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 155) + XMLVM_CHECK_NPE(5) + java_lang_AbstractStringBuilder_enlargeBuffer___int(_r5.o, _r1.i); + label21:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 157) + _r2.i = 0; + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CHECK_NPE(6) + java_lang_String_getChars___int_int_char_1ARRAY_int(_r6.o, _r2.i, _r0.i, _r3.o, _r4.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 158) + XMLVM_CHECK_NPE(5) + ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_ = _r1.i; + goto label5; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_append0___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_append0___java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "append0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 162) + if (_r3.o != JAVA_NULL) goto label34; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 163) + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + label4:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 165) + if (_r4.i < 0) goto label16; + if (_r5.i < 0) goto label16; + if (_r4.i > _r5.i) goto label16; + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r0.o); + if (_r5.i <= _r1.i) goto label22; + label16:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 166) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 169) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int])(_r0.o, _r4.i, _r5.i); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__])(_r0.o); + XMLVM_CHECK_NPE(2) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 170) + XMLVM_EXIT_METHOD() + return; + label34:; + _r0 = _r3; + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_capacity__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_capacity__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "capacity", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 180) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_AbstractStringBuilder_charAt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_charAt___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "charAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 194) + if (_r2.i < 0) goto label6; + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r2.i < _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 195) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 197) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_delete0___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_delete0___int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "delete0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = me; + _r6.i = n1; + _r7.i = n2; + _r4.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 201) + if (_r6.i < 0) goto label58; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 202) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r7.i <= _r0.i) goto label64; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 203) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + label9:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 205) + if (_r0.i != _r6.i) goto label12; + label11:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 222) + XMLVM_EXIT_METHOD() + return; + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 208) + if (_r0.i <= _r6.i) goto label58; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 209) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = _r1.i - _r0.i; + if (_r1.i < 0) goto label30; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 210) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 211) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r2.i != 0) goto label38; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 212) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r0.i, _r3.o, _r6.i, _r1.i); + label30:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 221) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i - _r6.i; + _r0.i = _r1.i - _r0.i; + XMLVM_CHECK_NPE(5) + ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + goto label11; + label38:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 214) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + XMLVM_CLASS_INIT(char) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_char, _r2.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 215) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r4.i, _r2.o, _r4.i, _r6.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 216) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r0.i, _r2.o, _r6.i, _r1.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 217) + XMLVM_CHECK_NPE(5) + ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_ = _r2.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 218) + XMLVM_CHECK_NPE(5) + ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r4.i; + goto label30; + label58:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 225) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label64:; + _r0 = _r7; + goto label9; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_deleteCharAt0___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_deleteCharAt0___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "deleteCharAt0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.i = n1; + _r5.i = 1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 229) + if (_r7.i < 0) goto label8; + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r7.i < _r0.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 230) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 232) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i - _r7.i; + _r0.i = _r0.i - _r5.i; + if (_r0.i <= 0) goto label33; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 233) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 234) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r1.i != 0) goto label39; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 235) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = _r7.i + 1; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r3.o, _r7.i, _r0.i); + label33:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 246) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i - _r5.i; + XMLVM_CHECK_NPE(6) + ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 247) + XMLVM_EXIT_METHOD() + return; + label39:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 237) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 238) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r4.i, _r1.o, _r4.i, _r7.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 240) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.value_; + _r3.i = _r7.i + 1; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r1.o, _r7.i, _r0.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 242) + XMLVM_CHECK_NPE(6) + ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.value_ = _r1.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 243) + XMLVM_CHECK_NPE(6) + ((java_lang_AbstractStringBuilder*) _r6.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r4.i; + goto label33; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_ensureCapacity___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_ensureCapacity___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "ensureCapacity", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 262) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r2.i <= _r0.i) goto label17; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 263) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.i = _r0.i << 1; + _r0.i = _r0.i + 2; + if (_r0.i <= _r2.i) goto label18; + label14:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 264) + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_enlargeBuffer___int(_r1.o, _r0.i); + label17:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 266) + XMLVM_EXIT_METHOD() + return; + label18:; + _r0 = _r2; + goto label14; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_getChars___int_int_char_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_getChars___int_int_char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "getChars", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r2.o = me; + _r3.i = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 288) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r3.i > _r0.i) goto label10; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r4.i > _r0.i) goto label10; + if (_r3.i <= _r4.i) goto label16; + label10:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 289) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 291) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = _r4.i - _r3.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r3.i, _r5.o, _r6.i, _r1.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 292) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "insert0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.i = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 295) + if (_r4.i < 0) goto label6; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r4.i <= _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 296) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 298) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r0.i == 0) goto label32; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 299) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + XMLVM_CHECK_NPE(3) + java_lang_AbstractStringBuilder_move___int_int(_r3.o, _r0.i, _r4.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 300) + _r0.i = 0; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r5.o, _r0.i, _r1.o, _r4.i, _r2.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 301) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + label32:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 303) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "insert0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = me; + _r4.i = n1; + _r5.o = n2; + _r6.i = n3; + _r7.i = n4; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 306) + if (_r4.i < 0) goto label72; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r4.i > _r0.i) goto label72; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 308) + if (_r6.i < 0) goto label30; + if (_r7.i < 0) goto label30; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r0.i = _r0.i - _r6.i; + if (_r7.i > _r0.i) goto label30; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 309) + if (_r7.i == 0) goto label29; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 310) + XMLVM_CHECK_NPE(3) + java_lang_AbstractStringBuilder_move___int_int(_r3.o, _r7.i, _r4.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 311) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r5.o, _r6.i, _r0.o, _r4.i, _r7.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 312) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + _r7.i; + XMLVM_CHECK_NPE(3) + ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + label29:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 314) + XMLVM_EXIT_METHOD() + return; + label30:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 316) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + // "offset " + _r2.o = xmlvm_create_java_string_from_pool(64); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r6.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 317) + // ", length " + _r2.o = xmlvm_create_java_string_from_pool(65); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r7.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 318) + // ", char[].length " + _r2.o = xmlvm_create_java_string_from_pool(66); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r2.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label72:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 320) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_insert0___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_insert0___int_char] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "insert0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 324) + if (_r2.i < 0) goto label6; + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r2.i <= _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 326) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 328) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_move___int_int(_r1.o, _r0.i, _r2.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 329) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 330) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 331) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_insert0___int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_insert0___int_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "insert0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 334) + if (_r5.i < 0) goto label31; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r5.i > _r0.i) goto label31; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 335) + if (_r6.o != JAVA_NULL) goto label37; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 336) + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + label10:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 338) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 339) + if (_r1.i == 0) goto label30; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 340) + XMLVM_CHECK_NPE(4) + java_lang_AbstractStringBuilder_move___int_int(_r4.o, _r1.i, _r5.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 341) + _r2.i = 0; + XMLVM_CHECK_NPE(4) + _r3.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(0) + java_lang_String_getChars___int_int_char_1ARRAY_int(_r0.o, _r2.i, _r1.i, _r3.o, _r5.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 342) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + label30:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 347) + XMLVM_EXIT_METHOD() + return; + label31:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 345) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label37:; + _r0 = _r6; + goto label10; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_insert0___int_java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_insert0___int_java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "insert0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r2.o = me; + _r3.i = n1; + _r4.o = n2; + _r5.i = n3; + _r6.i = n4; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 350) + if (_r4.o != JAVA_NULL) goto label40; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 351) + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + label4:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 353) + if (_r3.i < 0) goto label22; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r3.i > _r1.i) goto label22; + if (_r5.i < 0) goto label22; + if (_r6.i < 0) goto label22; + if (_r5.i > _r6.i) goto label22; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 354) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r0.o); + if (_r6.i <= _r1.i) goto label28; + label22:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 355) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 357) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int])(_r0.o, _r5.i, _r6.i); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__])(_r0.o); + XMLVM_CHECK_NPE(2) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r2.o, _r3.i, _r0.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 358) + XMLVM_EXIT_METHOD() + return; + label40:; + _r0 = _r4; + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_length__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_length__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "length", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 366) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_move___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_move___int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "move", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = me; + _r6.i = n1; + _r7.i = n2; + _r4.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 371) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i - _r1.i; + if (_r0.i < _r6.i) goto label51; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 372) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r0.i != 0) goto label26; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 373) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(5) + _r1.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = _r7.i + _r6.i; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 374) + _r3.i = _r3.i - _r7.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r7.i, _r1.o, _r2.i, _r3.i); + label25:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 389) + XMLVM_EXIT_METHOD() + return; + label26:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 377) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + label29:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 383) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 384) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r4.i, _r0.o, _r4.i, _r7.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 386) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = _r7.i + _r6.i; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r3.i = _r3.i - _r7.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r7.i, _r0.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 387) + XMLVM_CHECK_NPE(5) + ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 388) + XMLVM_CHECK_NPE(5) + ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r4.i; + goto label25; + label51:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 379) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i + _r6.i; + XMLVM_CHECK_NPE(5) + _r1.o = ((java_lang_AbstractStringBuilder*) _r5.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r1.i = _r1.i << 1; + _r1.i = _r1.i + 2; + if (_r0.i > _r1.i) goto label29; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 380) + _r0 = _r1; + goto label29; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_replace0___int_int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_replace0___int_int_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "replace0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r8.o = me; + _r9.i = n1; + _r10.i = n2; + _r11.o = n3; + _r7.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 392) + if (_r9.i < 0) goto label110; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 393) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r10.i <= _r0.i) goto label116; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 394) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.count_; + label9:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 396) + if (_r0.i <= _r9.i) goto label96; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 397) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(11) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r11.o)->tib->vtable[8])(_r11.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 398) + _r2.i = _r0.i - _r9.i; + _r2.i = _r2.i - _r1.i; + if (_r2.i <= 0) goto label72; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 399) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 400) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r3.i != 0) goto label47; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 402) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(8) + _r4.o = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 403) + _r5.i = _r9.i + _r1.i; + XMLVM_CHECK_NPE(8) + _r6.i = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.count_; + _r6.i = _r6.i - _r0.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r0.i, _r4.o, _r5.i, _r6.i); + label36:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 420) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(11) + java_lang_String_getChars___int_int_char_1ARRAY_int(_r11.o, _r7.i, _r1.i, _r0.o, _r9.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 421) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i - _r2.i; + XMLVM_CHECK_NPE(8) + ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.count_ = _r0.i; + label46:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 429) + XMLVM_EXIT_METHOD() + return; + label47:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 405) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CLASS_INIT(char) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 406) + XMLVM_CHECK_NPE(8) + _r4.o = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r7.i, _r3.o, _r7.i, _r9.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 408) + XMLVM_CHECK_NPE(8) + _r4.o = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 409) + _r5.i = _r9.i + _r1.i; + XMLVM_CHECK_NPE(8) + _r6.i = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.count_; + _r6.i = _r6.i - _r0.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r0.i, _r3.o, _r5.i, _r6.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 410) + XMLVM_CHECK_NPE(8) + ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_ = _r3.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 411) + XMLVM_CHECK_NPE(8) + ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r7.i; + goto label36; + label72:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 413) + if (_r2.i >= 0) goto label79; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 415) + _r3.i = -_r2.i; + XMLVM_CHECK_NPE(8) + java_lang_AbstractStringBuilder_move___int_int(_r8.o, _r3.i, _r0.i); + goto label36; + label79:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 416) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r0.i == 0) goto label36; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 417) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_; + //char_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->tib->vtable[0])(_r0.o); + _r0.o = _r0.o; + XMLVM_CHECK_NPE(8) + ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 418) + XMLVM_CHECK_NPE(8) + ((java_lang_AbstractStringBuilder*) _r8.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r7.i; + goto label36; + label96:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 424) + if (_r9.i != _r0.i) goto label110; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 425) + if (_r11.o != JAVA_NULL) goto label106; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 426) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label106:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 428) + XMLVM_CHECK_NPE(8) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r8.o, _r9.i, _r11.o); + goto label46; + label110:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 432) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label116:; + _r0 = _r10; + goto label9; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_reverse0__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_reverse0__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "reverse0", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + _r14.o = me; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 436) + XMLVM_CHECK_NPE(14) + _r0.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = 2; + if (_r0.i >= _r1.i) goto label6; + label5:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 510) + XMLVM_EXIT_METHOD() + return; + label6:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 439) + XMLVM_CHECK_NPE(14) + _r0.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r0.i != 0) goto label227; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 440) + XMLVM_CHECK_NPE(14) + _r0.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 441) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = 0; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 442) + XMLVM_CHECK_NPE(14) + _r2.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 443) + _r3.i = 1; + _r4.i = 1; + _r5.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 444) + XMLVM_CHECK_NPE(14) + _r6.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + _r6.i = _r6.i / 2; + _r11 = _r5; + _r5 = _r0; + _r0 = _r11; + _r12 = _r3; + _r3 = _r2; + _r2 = _r12; + _r13 = _r1; + _r1 = _r4; + _r4 = _r13; + label39:; + if (_r0.i < _r6.i) goto label60; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 491) + XMLVM_CHECK_NPE(14) + _r0.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i & 1; + _r6.i = 1; + if (_r0.i != _r6.i) goto label5; + if (_r2.i == 0) goto label52; + if (_r1.i != 0) goto label5; + label52:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 492) + XMLVM_CHECK_NPE(14) + _r0.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + if (_r2.i == 0) goto label224; + _r1 = _r3; + label57:; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r1.i; + goto label5; + label60:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 445) + XMLVM_CHECK_NPE(14) + _r7.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r8.i = _r0.i + 1; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r8.i); + _r7.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 446) + XMLVM_CHECK_NPE(14) + _r8.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r9.i = 1; + _r9.i = _r5.i - _r9.i; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r9.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 447) + if (_r2.i == 0) goto label180; + _r2.i = 56320; + if (_r7.i < _r2.i) goto label180; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 448) + _r2.i = 57343; + if (_r7.i > _r2.i) goto label180; + _r2.i = 55296; + if (_r4.i < _r2.i) goto label180; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 449) + _r2.i = 56319; + if (_r4.i > _r2.i) goto label180; + _r2.i = 1; + label96:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 450) + if (_r2.i == 0) goto label103; + XMLVM_CHECK_NPE(14) + _r9.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + _r10.i = 3; + if (_r9.i < _r10.i) goto label5; + label103:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 453) + if (_r1.i == 0) goto label182; + _r1.i = 55296; + if (_r8.i < _r1.i) goto label182; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 454) + _r1.i = 56319; + if (_r8.i > _r1.i) goto label182; + _r1.i = 56320; + if (_r3.i < _r1.i) goto label182; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 455) + _r1.i = 57343; + if (_r3.i > _r1.i) goto label182; + _r1.i = 1; + label126:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 456) + _r9.i = 1; + if (_r2.i != _r1.i) goto label197; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 457) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 458) + if (_r2.i == 0) goto label184; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 460) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r7.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 461) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = 1; + _r2.i = _r5.i - _r2.i; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r4.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 462) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r8.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 463) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 464) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = _r0.i + 2; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 465) + XMLVM_CHECK_NPE(14) + _r2.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r3.i = 2; + _r3.i = _r5.i - _r3.i; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 466) + _r0.i = _r0.i + 1; + _r3.i = _r5.i + -1; + _r4 = _r1; + _r5 = _r3; + _r3 = _r2; + _r1 = _r9; + _r2 = _r9; + label174:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 467) + _r0.i = _r0.i + 1; + _r5.i = _r5.i + -1; + goto label39; + label180:; + _r2.i = 0; + goto label96; + label182:; + _r1.i = 0; + goto label126; + label184:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 470) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r4.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 471) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + _r1 = _r9; + _r2 = _r9; + _r3 = _r8; + _r4 = _r7; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 473) + goto label174; + label197:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 476) + if (_r2.i == 0) goto label212; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 478) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r7.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 479) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 481) + _r1.i = 0; + _r2 = _r1; + _r3 = _r8; + _r1 = _r9; + goto label174; + label212:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 484) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r4.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 485) + XMLVM_CHECK_NPE(14) + _r1.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r8.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 487) + _r1.i = 0; + _r2 = _r9; + _r4 = _r7; + goto label174; + label224:; + _r1 = _r4; + goto label57; + label227:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 495) + XMLVM_CHECK_NPE(14) + _r0.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 496) + _r1.i = 0; + XMLVM_CHECK_NPE(14) + _r2.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + _r11 = _r2; + _r2 = _r1; + _r1 = _r11; + label238:; + XMLVM_CHECK_NPE(14) + _r3.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r2.i < _r3.i) goto label249; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 507) + XMLVM_CHECK_NPE(14) + ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 508) + _r0.i = 0; + XMLVM_CHECK_NPE(14) + ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r0.i; + goto label5; + label249:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 497) + XMLVM_CHECK_NPE(14) + _r3.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 498) + _r4.i = _r2.i + 1; + XMLVM_CHECK_NPE(14) + _r5.i = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r4.i >= _r5.i) goto label291; + _r4.i = 55296; + if (_r3.i < _r4.i) goto label291; + _r4.i = 56319; + if (_r3.i > _r4.i) goto label291; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 499) + XMLVM_CHECK_NPE(14) + _r4.o = ((java_lang_AbstractStringBuilder*) _r14.o)->fields.java_lang_AbstractStringBuilder.value_; + _r5.i = _r2.i + 1; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r4.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 500) + _r5.i = 56320; + if (_r4.i < _r5.i) goto label291; + _r5.i = 57343; + if (_r4.i > _r5.i) goto label291; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 501) + _r1.i = _r1.i + -1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 502) + _r2.i = _r2.i + 1; + label291:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 505) + _r1.i = _r1.i + -1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r2.i = _r2.i + 1; + goto label238; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_setCharAt___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_setCharAt___int_char] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "setCharAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 524) + if (_r2.i < 0) goto label6; + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r2.i < _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 525) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 527) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r0.i == 0) goto label29; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 528) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + //char_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->tib->vtable[0])(_r0.o); + _r0.o = _r0.o; + XMLVM_CHECK_NPE(1) + ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 529) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r0.i; + label29:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 531) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 532) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_setLength___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_setLength___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "setLength", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 546) + if (_r5.i >= 0) goto label9; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 547) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label9:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 549) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r5.i <= _r0.i) goto label20; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 550) + XMLVM_CHECK_NPE(4) + java_lang_AbstractStringBuilder_enlargeBuffer___int(_r4.o, _r5.i); + label17:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 563) + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_ = _r5.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 564) + XMLVM_EXIT_METHOD() + return; + label20:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 552) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.shared_; + if (_r0.i == 0) goto label41; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 553) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 554) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r3.i, _r0.o, _r3.i, _r2.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 555) + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 556) + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r3.i; + goto label17; + label41:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 558) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r0.i >= _r5.i) goto label17; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 559) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_AbstractStringBuilder_substring___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_substring___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "substring", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.i = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 578) + if (_r4.i < 0) goto label24; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r4.i > _r0.i) goto label24; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 579) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r4.i != _r0.i) goto label13; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 580) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 584) + XMLVM_EXIT_METHOD() + return _r0.o; + label13:; + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r2.i = _r2.i - _r4.i; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r4.i, _r2.i); + goto label12; + label24:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 586) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_AbstractStringBuilder_substring___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_substring___int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "substring", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.i = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 603) + if (_r4.i < 0) goto label23; + if (_r4.i > _r5.i) goto label23; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r5.i > _r0.i) goto label23; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 604) + if (_r4.i != _r5.i) goto label13; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 605) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 609) + XMLVM_EXIT_METHOD() + return _r0.o; + label13:; + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + _r2.i = _r5.i - _r4.i; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r4.i, _r2.i); + goto label12; + label23:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 611) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_AbstractStringBuilder_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_toString__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 621) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r0.i != 0) goto label8; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 622) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + label7:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 631) + XMLVM_EXIT_METHOD() + return _r0.o; + label8:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 625) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = _r0.i - _r1.i; + _r1.i = 256; + if (_r0.i >= _r1.i) goto label28; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 626) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 627) + _r1.i = 16; + if (_r0.i < _r1.i) goto label38; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = _r1.i >> 1; + if (_r0.i < _r1.i) goto label38; + label28:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 628) + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r3.i, _r2.i); + goto label7; + label38:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 630) + _r0.i = 1; + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r0.i; + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r3.i, _r1.i, _r2.o); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_AbstractStringBuilder_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_subSequence___int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "subSequence", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 649) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_AbstractStringBuilder_substring___int_int(_r1.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_indexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_indexOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 664) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_AbstractStringBuilder_indexOf___java_lang_String_int(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_indexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_indexOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r9.o = me; + _r10.o = n1; + _r11.i = n2; + _r8.i = -1; + _r7.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 681) + if (_r11.i >= 0) goto label81; + _r0 = _r7; + label5:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 682) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 684) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(10) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r10.o)->tib->vtable[8])(_r10.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 685) + if (_r1.i <= 0) goto label72; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 686) + _r2.i = _r1.i + _r0.i; + XMLVM_CHECK_NPE(9) + _r3.i = ((java_lang_AbstractStringBuilder*) _r9.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r2.i <= _r3.i) goto label19; + _r0 = _r8; + label18:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 687) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 713) + XMLVM_EXIT_METHOD() + return _r0.i; + label19:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 690) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(10) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r10.o)->tib->vtable[6])(_r10.o, _r7.i); + label23:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 694) + XMLVM_CHECK_NPE(9) + _r3.i = ((java_lang_AbstractStringBuilder*) _r9.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r0.i < _r3.i) goto label38; + _r3 = _r7; + label28:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 700) + if (_r3.i == 0) goto label36; + _r3.i = _r1.i + _r0.i; + XMLVM_CHECK_NPE(9) + _r4.i = ((java_lang_AbstractStringBuilder*) _r9.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r3.i <= _r4.i) goto label49; + label36:; + _r0 = _r8; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 701) + goto label18; + label38:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 695) + XMLVM_CHECK_NPE(9) + _r3.o = ((java_lang_AbstractStringBuilder*) _r9.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r3.i != _r2.i) goto label46; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 696) + _r3.i = 1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 697) + goto label28; + label46:; + _r0.i = _r0.i + 1; + goto label23; + label49:; + _r3 = _r7; + _r4 = _r0; + label51:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 703) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 704) + _r3.i = _r3.i + 1; + if (_r3.i >= _r1.i) goto label67; + XMLVM_CHECK_NPE(9) + _r5.o = ((java_lang_AbstractStringBuilder*) _r9.o)->fields.java_lang_AbstractStringBuilder.value_; + _r4.i = _r4.i + 1; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r4.i); + _r5.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(10) + _r6.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r10.o)->tib->vtable[6])(_r10.o, _r3.i); + if (_r5.i == _r6.i) goto label51; + label67:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 707) + if (_r3.i == _r1.i) goto label18; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 710) + _r0.i = _r0.i + 1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 691) + goto label23; + label72:; + XMLVM_CHECK_NPE(9) + _r1.i = ((java_lang_AbstractStringBuilder*) _r9.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r0.i < _r1.i) goto label18; + if (_r0.i == 0) goto label18; + XMLVM_CHECK_NPE(9) + _r0.i = ((java_lang_AbstractStringBuilder*) _r9.o)->fields.java_lang_AbstractStringBuilder.count_; + goto label18; + label81:; + _r0 = _r11; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_lastIndexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_lastIndexOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 730) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_AbstractStringBuilder_lastIndexOf___java_lang_String_int(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_lastIndexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_lastIndexOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + _r10.o = me; + _r11.o = n1; + _r12.i = n2; + _r9.i = 1; + _r8.i = -1; + _r7.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 749) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(11) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r11.o)->tib->vtable[8])(_r11.o); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 750) + XMLVM_CHECK_NPE(10) + _r1.i = ((java_lang_AbstractStringBuilder*) _r10.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r0.i > _r1.i) goto label78; + if (_r12.i < 0) goto label78; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 751) + if (_r0.i <= 0) goto label69; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 752) + XMLVM_CHECK_NPE(10) + _r1.i = ((java_lang_AbstractStringBuilder*) _r10.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = _r1.i - _r0.i; + if (_r12.i <= _r1.i) goto label80; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 753) + XMLVM_CHECK_NPE(10) + _r1.i = ((java_lang_AbstractStringBuilder*) _r10.o)->fields.java_lang_AbstractStringBuilder.count_; + _r1.i = _r1.i - _r0.i; + label23:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 757) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(11) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r11.o)->tib->vtable[6])(_r11.o, _r7.i); + label27:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 761) + if (_r1.i >= 0) goto label34; + _r3 = _r7; + label30:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 767) + if (_r3.i != 0) goto label45; + _r0 = _r8; + label33:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 768) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 783) + XMLVM_EXIT_METHOD() + return _r0.i; + label34:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 762) + XMLVM_CHECK_NPE(10) + _r3.o = ((java_lang_AbstractStringBuilder*) _r10.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r3.i != _r2.i) goto label42; + _r3 = _r9; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 764) + goto label30; + label42:; + _r1.i = _r1.i + -1; + goto label27; + label45:; + _r3 = _r7; + _r4 = _r1; + label47:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 770) + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 771) + _r3.i = _r3.i + 1; + if (_r3.i >= _r0.i) goto label63; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 772) + XMLVM_CHECK_NPE(10) + _r5.o = ((java_lang_AbstractStringBuilder*) _r10.o)->fields.java_lang_AbstractStringBuilder.value_; + _r4.i = _r4.i + 1; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r4.i); + _r5.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(11) + _r6.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r11.o)->tib->vtable[6])(_r11.o, _r3.i); + if (_r5.i == _r6.i) goto label47; + label63:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 775) + if (_r3.i != _r0.i) goto label67; + _r0 = _r1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 776) + goto label33; + label67:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 778) + _r1.i = _r1.i - _r9.i; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 758) + goto label27; + label69:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 781) + XMLVM_CHECK_NPE(10) + _r0.i = ((java_lang_AbstractStringBuilder*) _r10.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r12.i >= _r0.i) goto label75; + _r0 = _r12; + goto label33; + label75:; + XMLVM_CHECK_NPE(10) + _r0.i = ((java_lang_AbstractStringBuilder*) _r10.o)->fields.java_lang_AbstractStringBuilder.count_; + goto label33; + label78:; + _r0 = _r8; + goto label33; + label80:; + _r1 = _r12; + goto label23; + //XMLVM_END_WRAPPER +} + +void java_lang_AbstractStringBuilder_trimToSize__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_trimToSize__] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "trimToSize", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 0; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 793) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i >= _r1.i) goto label23; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 794) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 795) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r3.i, _r0.o, _r3.i, _r2.i); + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 796) + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.value_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 797) + XMLVM_CHECK_NPE(4) + ((java_lang_AbstractStringBuilder*) _r4.o)->fields.java_lang_AbstractStringBuilder.shared_ = _r3.i; + label23:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 799) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_codePointAt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_codePointAt___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "codePointAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 815) + if (_r3.i < 0) goto label6; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r3.i < _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 816) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 818) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = java_lang_Character_codePointAt___char_1ARRAY_int_int(_r0.o, _r3.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_codePointBefore___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_codePointBefore___int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "codePointBefore", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 835) + _r0.i = 1; + if (_r2.i < _r0.i) goto label7; + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r2.i <= _r0.i) goto label13; + label7:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 836) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 838) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_AbstractStringBuilder*) _r1.o)->fields.java_lang_AbstractStringBuilder.value_; + _r0.i = java_lang_Character_codePointBefore___char_1ARRAY_int(_r0.o, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_codePointCount___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_codePointCount___int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "codePointCount", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.i = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 859) + if (_r3.i < 0) goto label8; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.count_; + if (_r4.i > _r0.i) goto label8; + if (_r3.i <= _r4.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 860) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 862) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_AbstractStringBuilder*) _r2.o)->fields.java_lang_AbstractStringBuilder.value_; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 863) + _r1.i = _r4.i - _r3.i; + _r0.i = java_lang_Character_codePointCount___char_1ARRAY_int_int(_r0.o, _r3.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_AbstractStringBuilder_offsetByCodePoints___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_AbstractStringBuilder_offsetByCodePoints___int_int] + XMLVM_ENTER_METHOD("java.lang.AbstractStringBuilder", "offsetByCodePoints", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.i = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("AbstractStringBuilder.java", 886) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.value_; + _r1.i = 0; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_AbstractStringBuilder*) _r3.o)->fields.java_lang_AbstractStringBuilder.count_; + _r0.i = java_lang_Character_offsetByCodePoints___char_1ARRAY_int_int_int_int(_r0.o, _r1.i, _r2.i, _r4.i, _r5.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_AbstractStringBuilder.h b/tests/nbody-java/java_lang_AbstractStringBuilder.h new file mode 100644 index 0000000000000..1f512ab775dc0 --- /dev/null +++ b/tests/nbody-java/java_lang_AbstractStringBuilder.h @@ -0,0 +1,136 @@ +#ifndef __JAVA_LANG_ABSTRACTSTRINGBUILDER__ +#define __JAVA_LANG_ABSTRACTSTRINGBUILDER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_AbstractStringBuilder 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_InvalidObjectException +#define XMLVM_FORWARD_DECL_java_io_InvalidObjectException +XMLVM_FORWARD_DECL(java_io_InvalidObjectException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +XMLVM_FORWARD_DECL(java_lang_CharSequence) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.lang.AbstractStringBuilder +XMLVM_DEFINE_CLASS(java_lang_AbstractStringBuilder, 6, XMLVM_ITABLE_SIZE_java_lang_AbstractStringBuilder) + +extern JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder; +extern JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_AbstractStringBuilder_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_AbstractStringBuilder +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_AbstractStringBuilder \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT value_; \ + JAVA_INT count_; \ + JAVA_BOOLEAN shared_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_AbstractStringBuilder \ + } java_lang_AbstractStringBuilder + +struct java_lang_AbstractStringBuilder { + __TIB_DEFINITION_java_lang_AbstractStringBuilder* tib; + struct { + __INSTANCE_FIELDS_java_lang_AbstractStringBuilder; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_AbstractStringBuilder +#define XMLVM_FORWARD_DECL_java_lang_AbstractStringBuilder +typedef struct java_lang_AbstractStringBuilder java_lang_AbstractStringBuilder; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_AbstractStringBuilder 6 +#define XMLVM_VTABLE_IDX_java_lang_AbstractStringBuilder_toString__ 5 + +void __INIT_java_lang_AbstractStringBuilder(); +void __INIT_IMPL_java_lang_AbstractStringBuilder(); +void __DELETE_java_lang_AbstractStringBuilder(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_AbstractStringBuilder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_AbstractStringBuilder(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_AbstractStringBuilder(); +JAVA_INT java_lang_AbstractStringBuilder_GET_INITIAL_CAPACITY(); +void java_lang_AbstractStringBuilder_PUT_INITIAL_CAPACITY(JAVA_INT v); +JAVA_OBJECT java_lang_AbstractStringBuilder_getValue__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_AbstractStringBuilder_shareValue__(JAVA_OBJECT me); +void java_lang_AbstractStringBuilder_set___char_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_AbstractStringBuilder___INIT___(JAVA_OBJECT me); +void java_lang_AbstractStringBuilder___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_AbstractStringBuilder___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_AbstractStringBuilder_enlargeBuffer___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_AbstractStringBuilder_appendNull__(JAVA_OBJECT me); +void java_lang_AbstractStringBuilder_append0___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_AbstractStringBuilder_append0___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +void java_lang_AbstractStringBuilder_append0___char(JAVA_OBJECT me, JAVA_CHAR n1); +void java_lang_AbstractStringBuilder_append0___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_AbstractStringBuilder_append0___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_INT java_lang_AbstractStringBuilder_capacity__(JAVA_OBJECT me); +JAVA_CHAR java_lang_AbstractStringBuilder_charAt___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_AbstractStringBuilder_delete0___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +void java_lang_AbstractStringBuilder_deleteCharAt0___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_AbstractStringBuilder_ensureCapacity___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_AbstractStringBuilder_getChars___int_int_char_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4); +void java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +void java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +void java_lang_AbstractStringBuilder_insert0___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2); +void java_lang_AbstractStringBuilder_insert0___int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +void java_lang_AbstractStringBuilder_insert0___int_java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +JAVA_INT java_lang_AbstractStringBuilder_length__(JAVA_OBJECT me); +void java_lang_AbstractStringBuilder_move___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +void java_lang_AbstractStringBuilder_replace0___int_int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3); +void java_lang_AbstractStringBuilder_reverse0__(JAVA_OBJECT me); +void java_lang_AbstractStringBuilder_setCharAt___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2); +void java_lang_AbstractStringBuilder_setLength___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_AbstractStringBuilder_substring___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_AbstractStringBuilder_substring___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 5 +JAVA_OBJECT java_lang_AbstractStringBuilder_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_AbstractStringBuilder_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_AbstractStringBuilder_indexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_AbstractStringBuilder_indexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_AbstractStringBuilder_lastIndexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_AbstractStringBuilder_lastIndexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_AbstractStringBuilder_trimToSize__(JAVA_OBJECT me); +JAVA_INT java_lang_AbstractStringBuilder_codePointAt___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_lang_AbstractStringBuilder_codePointBefore___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_lang_AbstractStringBuilder_codePointCount___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_AbstractStringBuilder_offsetByCodePoints___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); + +#endif diff --git a/tests/nbody-java/java_lang_Appendable.c b/tests/nbody-java/java_lang_Appendable.c new file mode 100644 index 0000000000000..07122cd329193 --- /dev/null +++ b/tests/nbody-java/java_lang_Appendable.c @@ -0,0 +1,77 @@ +#include "xmlvm.h" +#include "java_lang_CharSequence.h" + +#include "java_lang_Appendable.h" + +__TIB_DEFINITION_java_lang_Appendable __TIB_java_lang_Appendable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Appendable, // classInitializer + "java.lang.Appendable", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_Appendable; +JAVA_OBJECT __CLASS_java_lang_Appendable_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Appendable_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Appendable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_Appendable() +{ + staticInitializerLock(&__TIB_java_lang_Appendable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Appendable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Appendable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Appendable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Appendable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Appendable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Appendable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Appendable") + __INIT_IMPL_java_lang_Appendable(); + } +} + +void __INIT_IMPL_java_lang_Appendable() +{ + __TIB_java_lang_Appendable.numInterfaces = 0; + __TIB_java_lang_Appendable.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Appendable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_Appendable.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Appendable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Appendable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_Appendable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Appendable); + __TIB_java_lang_Appendable.clazz = __CLASS_java_lang_Appendable; + __TIB_java_lang_Appendable.baseType = JAVA_NULL; + __CLASS_java_lang_Appendable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Appendable); + __CLASS_java_lang_Appendable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Appendable_1ARRAY); + __CLASS_java_lang_Appendable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Appendable_2ARRAY); + + __TIB_java_lang_Appendable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_Appendable.h b/tests/nbody-java/java_lang_Appendable.h new file mode 100644 index 0000000000000..4a6f99002de96 --- /dev/null +++ b/tests/nbody-java/java_lang_Appendable.h @@ -0,0 +1,34 @@ +#ifndef __JAVA_LANG_APPENDABLE__ +#define __JAVA_LANG_APPENDABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_Appendable_append___char 2 +#define XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence 3 +#define XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence_int_int 4 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +XMLVM_FORWARD_DECL(java_lang_CharSequence) +#endif + +XMLVM_DEFINE_CLASS(java_lang_Appendable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_Appendable; +extern JAVA_OBJECT __CLASS_java_lang_Appendable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Appendable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Appendable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_Appendable +#define XMLVM_FORWARD_DECL_java_lang_Appendable +typedef struct java_lang_Appendable java_lang_Appendable; +#endif + +void __INIT_java_lang_Appendable(); +void __INIT_IMPL_java_lang_Appendable(); + +#endif diff --git a/tests/nbody-java/java_lang_Boolean.c b/tests/nbody-java/java_lang_Boolean.c new file mode 100644 index 0000000000000..c1e768f5de4d1 --- /dev/null +++ b/tests/nbody-java/java_lang_Boolean.c @@ -0,0 +1,540 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_System.h" + +#include "java_lang_Boolean.h" + +#define XMLVM_CURRENT_CLASS_NAME Boolean +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Boolean + +__TIB_DEFINITION_java_lang_Boolean __TIB_java_lang_Boolean = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Boolean, // classInitializer + "java.lang.Boolean", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Boolean), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Boolean; +JAVA_OBJECT __CLASS_java_lang_Boolean_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Boolean_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Boolean_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Boolean_serialVersionUID; +static JAVA_OBJECT _STATIC_java_lang_Boolean_TYPE; +static JAVA_OBJECT _STATIC_java_lang_Boolean_TRUE; +static JAVA_OBJECT _STATIC_java_lang_Boolean_FALSE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Boolean() +{ + staticInitializerLock(&__TIB_java_lang_Boolean); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Boolean.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Boolean.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Boolean); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Boolean.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Boolean.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Boolean.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Boolean") + __INIT_IMPL_java_lang_Boolean(); + } +} + +void __INIT_IMPL_java_lang_Boolean() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Boolean.newInstanceFunc = __NEW_INSTANCE_java_lang_Boolean; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Boolean.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Boolean.vtable[1] = (VTABLE_PTR) &java_lang_Boolean_equals___java_lang_Object; + __TIB_java_lang_Boolean.vtable[4] = (VTABLE_PTR) &java_lang_Boolean_hashCode__; + __TIB_java_lang_Boolean.vtable[5] = (VTABLE_PTR) &java_lang_Boolean_toString__; + __TIB_java_lang_Boolean.vtable[6] = (VTABLE_PTR) &java_lang_Boolean_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Boolean.numImplementedInterfaces = 2; + __TIB_java_lang_Boolean.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Boolean.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Boolean.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Boolean.itableBegin = &__TIB_java_lang_Boolean.itable[0]; + __TIB_java_lang_Boolean.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Boolean.vtable[6]; + + _STATIC_java_lang_Boolean_serialVersionUID = -3665804199014368530; + _STATIC_java_lang_Boolean_TYPE = (java_lang_Class*) JAVA_NULL; + _STATIC_java_lang_Boolean_TRUE = (java_lang_Boolean*) JAVA_NULL; + _STATIC_java_lang_Boolean_FALSE = (java_lang_Boolean*) JAVA_NULL; + + __TIB_java_lang_Boolean.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Boolean.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Boolean.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Boolean.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Boolean.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Boolean.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Boolean.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Boolean.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Boolean = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Boolean); + __TIB_java_lang_Boolean.clazz = __CLASS_java_lang_Boolean; + __TIB_java_lang_Boolean.baseType = JAVA_NULL; + __CLASS_java_lang_Boolean_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Boolean); + __CLASS_java_lang_Boolean_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Boolean_1ARRAY); + __CLASS_java_lang_Boolean_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Boolean_2ARRAY); + java_lang_Boolean___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Boolean] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Boolean.classInitialized = 1; +} + +void __DELETE_java_lang_Boolean(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Boolean] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Boolean(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Boolean*) me)->fields.java_lang_Boolean.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Boolean] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Boolean() +{ XMLVM_CLASS_INIT(java_lang_Boolean) +java_lang_Boolean* me = (java_lang_Boolean*) XMLVM_MALLOC(sizeof(java_lang_Boolean)); + me->tib = &__TIB_java_lang_Boolean; + __INIT_INSTANCE_MEMBERS_java_lang_Boolean(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Boolean] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Boolean() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Boolean_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + return _STATIC_java_lang_Boolean_serialVersionUID; +} + +void java_lang_Boolean_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) +_STATIC_java_lang_Boolean_serialVersionUID = v; +} + +JAVA_OBJECT java_lang_Boolean_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + return _STATIC_java_lang_Boolean_TYPE; +} + +void java_lang_Boolean_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) +_STATIC_java_lang_Boolean_TYPE = v; +} + +JAVA_OBJECT java_lang_Boolean_GET_TRUE() +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + return _STATIC_java_lang_Boolean_TRUE; +} + +void java_lang_Boolean_PUT_TRUE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) +_STATIC_java_lang_Boolean_TRUE = v; +} + +JAVA_OBJECT java_lang_Boolean_GET_FALSE() +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + return _STATIC_java_lang_Boolean_FALSE; +} + +void java_lang_Boolean_PUT_FALSE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) +_STATIC_java_lang_Boolean_FALSE = v; +} + +void java_lang_Boolean___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Boolean", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Boolean.java", 41) + XMLVM_CLASS_INIT(boolean) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_boolean, _r2.i); + XMLVM_SOURCE_POSITION("Boolean.java", 42) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Boolean_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Boolean.java", 51) + _r0.o = __NEW_java_lang_Boolean(); + _r1.i = 1; + XMLVM_CHECK_NPE(0) + java_lang_Boolean___INIT____boolean(_r0.o, _r1.i); + java_lang_Boolean_PUT_TRUE( _r0.o); + XMLVM_SOURCE_POSITION("Boolean.java", 57) + _r0.o = __NEW_java_lang_Boolean(); + XMLVM_CHECK_NPE(0) + java_lang_Boolean___INIT____boolean(_r0.o, _r2.i); + java_lang_Boolean_PUT_FALSE( _r0.o); + XMLVM_SOURCE_POSITION("Boolean.java", 27) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Boolean___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Boolean", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 70) + _r0.i = java_lang_Boolean_parseBoolean___java_lang_String(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_Boolean___INIT____boolean(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("Boolean.java", 71) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Boolean___INIT____boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean___INIT____boolean] + XMLVM_ENTER_METHOD("java.lang.Boolean", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 80) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Boolean.java", 81) + XMLVM_CHECK_NPE(0) + ((java_lang_Boolean*) _r0.o)->fields.java_lang_Boolean.value_ = _r1.i; + XMLVM_SOURCE_POSITION("Boolean.java", 82) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Boolean_booleanValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_booleanValue__] + XMLVM_ENTER_METHOD("java.lang.Boolean", "booleanValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Boolean.java", 91) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Boolean*) _r1.o)->fields.java_lang_Boolean.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Boolean_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Boolean", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 106) + if (_r3.o == _r2.o) goto label16; + XMLVM_SOURCE_POSITION("Boolean.java", 107) + XMLVM_CLASS_INIT(java_lang_Boolean) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_lang_Boolean); + if (_r0.i == 0) goto label14; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Boolean*) _r2.o)->fields.java_lang_Boolean.value_; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Boolean*) _r3.o)->fields.java_lang_Boolean.value_; + if (_r0.i == _r1.i) goto label16; + label14:; + _r0.i = 0; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0.i = 1; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Boolean_compareTo___java_lang_Boolean(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_compareTo___java_lang_Boolean] + XMLVM_ENTER_METHOD("java.lang.Boolean", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 125) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Boolean.java", 126) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Boolean.java", 129) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Boolean*) _r2.o)->fields.java_lang_Boolean.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Boolean*) _r3.o)->fields.java_lang_Boolean.value_; + if (_r0.i != _r1.i) goto label16; + XMLVM_SOURCE_POSITION("Boolean.java", 130) + _r0.i = 0; + label15:; + XMLVM_SOURCE_POSITION("Boolean.java", 133) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Boolean*) _r2.o)->fields.java_lang_Boolean.value_; + if (_r0.i == 0) goto label22; + _r0.i = 1; + goto label15; + label22:; + _r0.i = -1; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Boolean_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Boolean", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Boolean.java", 144) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Boolean*) _r1.o)->fields.java_lang_Boolean.value_; + if (_r0.i == 0) goto label7; + _r0.i = 1231; + label6:; + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + _r0.i = 1237; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Boolean_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_toString__] + XMLVM_ENTER_METHOD("java.lang.Boolean", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Boolean.java", 156) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Boolean*) _r1.o)->fields.java_lang_Boolean.value_; + _r0.o = java_lang_String_valueOf___boolean(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Boolean_getBoolean___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_getBoolean___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Boolean", "getBoolean", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 171) + if (_r1.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r0.i != 0) goto label10; + label8:; + XMLVM_SOURCE_POSITION("Boolean.java", 172) + _r0.i = 0; + label9:; + XMLVM_SOURCE_POSITION("Boolean.java", 174) + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.o = java_lang_System_getProperty___java_lang_String(_r1.o); + _r0.i = java_lang_Boolean_parseBoolean___java_lang_String(_r0.o); + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Boolean_parseBoolean___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_parseBoolean___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Boolean", "parseBoolean", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 188) + // "true" + _r0.o = xmlvm_create_java_string_from_pool(4); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Boolean_toString___boolean(JAVA_BOOLEAN n1) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_toString___boolean] + XMLVM_ENTER_METHOD("java.lang.Boolean", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 199) + _r0.o = java_lang_String_valueOf___boolean(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Boolean_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Boolean", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 212) + _r0.i = java_lang_Boolean_parseBoolean___java_lang_String(_r1.o); + if (_r0.i == 0) goto label9; + _r0.o = java_lang_Boolean_GET_TRUE(); + label8:; + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + _r0.o = java_lang_Boolean_GET_FALSE(); + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Boolean_valueOf___boolean(JAVA_BOOLEAN n1) +{ + XMLVM_CLASS_INIT(java_lang_Boolean) + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_valueOf___boolean] + XMLVM_ENTER_METHOD("java.lang.Boolean", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 228) + if (_r1.i == 0) goto label5; + _r0.o = java_lang_Boolean_GET_TRUE(); + label4:; + XMLVM_EXIT_METHOD() + return _r0.o; + label5:; + _r0.o = java_lang_Boolean_GET_FALSE(); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Boolean_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Boolean_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Boolean", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Boolean.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Boolean_compareTo___java_lang_Boolean(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Boolean.h b/tests/nbody-java/java_lang_Boolean.h new file mode 100644 index 0000000000000..0767fa98cab10 --- /dev/null +++ b/tests/nbody-java/java_lang_Boolean.h @@ -0,0 +1,99 @@ +#ifndef __JAVA_LANG_BOOLEAN__ +#define __JAVA_LANG_BOOLEAN__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Boolean 8 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +// Class declarations for java.lang.Boolean +XMLVM_DEFINE_CLASS(java_lang_Boolean, 7, XMLVM_ITABLE_SIZE_java_lang_Boolean) + +extern JAVA_OBJECT __CLASS_java_lang_Boolean; +extern JAVA_OBJECT __CLASS_java_lang_Boolean_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Boolean_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Boolean_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Boolean +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Boolean \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_BOOLEAN value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Boolean \ + } java_lang_Boolean + +struct java_lang_Boolean { + __TIB_DEFINITION_java_lang_Boolean* tib; + struct { + __INSTANCE_FIELDS_java_lang_Boolean; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Boolean +#define XMLVM_FORWARD_DECL_java_lang_Boolean +typedef struct java_lang_Boolean java_lang_Boolean; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Boolean 7 +#define XMLVM_VTABLE_IDX_java_lang_Boolean_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Boolean_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Boolean_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Boolean_compareTo___java_lang_Object 6 + +void __INIT_java_lang_Boolean(); +void __INIT_IMPL_java_lang_Boolean(); +void __DELETE_java_lang_Boolean(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Boolean(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Boolean(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Boolean(); +JAVA_LONG java_lang_Boolean_GET_serialVersionUID(); +void java_lang_Boolean_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_lang_Boolean_GET_TYPE(); +void java_lang_Boolean_PUT_TYPE(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Boolean_GET_TRUE(); +void java_lang_Boolean_PUT_TRUE(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Boolean_GET_FALSE(); +void java_lang_Boolean_PUT_FALSE(JAVA_OBJECT v); +void java_lang_Boolean___CLINIT_(); +void java_lang_Boolean___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Boolean___INIT____boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +JAVA_BOOLEAN java_lang_Boolean_booleanValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Boolean_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_Boolean_compareTo___java_lang_Boolean(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_lang_Boolean_hashCode__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Boolean_toString__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Boolean_getBoolean___java_lang_String(JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_Boolean_parseBoolean___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Boolean_toString___boolean(JAVA_BOOLEAN n1); +JAVA_OBJECT java_lang_Boolean_valueOf___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Boolean_valueOf___boolean(JAVA_BOOLEAN n1); +// Vtable index: 6 +JAVA_INT java_lang_Boolean_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Byte.c b/tests/nbody-java/java_lang_Byte.c new file mode 100644 index 0000000000000..ea3cba892feeb --- /dev/null +++ b/tests/nbody-java/java_lang_Byte.c @@ -0,0 +1,761 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Integer.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" + +#include "java_lang_Byte.h" + +#define XMLVM_CURRENT_CLASS_NAME Byte +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Byte + +__TIB_DEFINITION_java_lang_Byte __TIB_java_lang_Byte = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Byte, // classInitializer + "java.lang.Byte", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Number;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Number, // extends + sizeof(java_lang_Byte), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Byte; +JAVA_OBJECT __CLASS_java_lang_Byte_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Byte_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Byte_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Byte_serialVersionUID; +static JAVA_BYTE _STATIC_java_lang_Byte_MAX_VALUE; +static JAVA_BYTE _STATIC_java_lang_Byte_MIN_VALUE; +static JAVA_INT _STATIC_java_lang_Byte_SIZE; +static JAVA_OBJECT _STATIC_java_lang_Byte_TYPE; +static JAVA_OBJECT _STATIC_java_lang_Byte_CACHE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Byte() +{ + staticInitializerLock(&__TIB_java_lang_Byte); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Byte.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Byte.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Byte); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Byte.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Byte.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Byte.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Byte") + __INIT_IMPL_java_lang_Byte(); + } +} + +void __INIT_IMPL_java_lang_Byte() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Number) + __TIB_java_lang_Byte.newInstanceFunc = __NEW_INSTANCE_java_lang_Byte; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Byte.vtable, __TIB_java_lang_Number.vtable, sizeof(__TIB_java_lang_Number.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Byte.vtable[6] = (VTABLE_PTR) &java_lang_Byte_byteValue__; + __TIB_java_lang_Byte.vtable[7] = (VTABLE_PTR) &java_lang_Byte_doubleValue__; + __TIB_java_lang_Byte.vtable[1] = (VTABLE_PTR) &java_lang_Byte_equals___java_lang_Object; + __TIB_java_lang_Byte.vtable[8] = (VTABLE_PTR) &java_lang_Byte_floatValue__; + __TIB_java_lang_Byte.vtable[4] = (VTABLE_PTR) &java_lang_Byte_hashCode__; + __TIB_java_lang_Byte.vtable[9] = (VTABLE_PTR) &java_lang_Byte_intValue__; + __TIB_java_lang_Byte.vtable[10] = (VTABLE_PTR) &java_lang_Byte_longValue__; + __TIB_java_lang_Byte.vtable[11] = (VTABLE_PTR) &java_lang_Byte_shortValue__; + __TIB_java_lang_Byte.vtable[5] = (VTABLE_PTR) &java_lang_Byte_toString__; + __TIB_java_lang_Byte.vtable[12] = (VTABLE_PTR) &java_lang_Byte_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Byte.numImplementedInterfaces = 2; + __TIB_java_lang_Byte.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Byte.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Byte.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Byte.itableBegin = &__TIB_java_lang_Byte.itable[0]; + __TIB_java_lang_Byte.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Byte.vtable[12]; + + _STATIC_java_lang_Byte_serialVersionUID = -7183698231559129828; + _STATIC_java_lang_Byte_MAX_VALUE = 127; + _STATIC_java_lang_Byte_MIN_VALUE = -128; + _STATIC_java_lang_Byte_SIZE = 8; + _STATIC_java_lang_Byte_TYPE = (java_lang_Class*) JAVA_NULL; + _STATIC_java_lang_Byte_CACHE = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_lang_Byte.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Byte.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Byte.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Byte.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Byte.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Byte.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Byte.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Byte.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Byte = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Byte); + __TIB_java_lang_Byte.clazz = __CLASS_java_lang_Byte; + __TIB_java_lang_Byte.baseType = JAVA_NULL; + __CLASS_java_lang_Byte_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Byte); + __CLASS_java_lang_Byte_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Byte_1ARRAY); + __CLASS_java_lang_Byte_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Byte_2ARRAY); + java_lang_Byte___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Byte] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Byte.classInitialized = 1; +} + +void __DELETE_java_lang_Byte(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Byte] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Byte(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Number(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Byte*) me)->fields.java_lang_Byte.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Byte] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Byte() +{ XMLVM_CLASS_INIT(java_lang_Byte) +java_lang_Byte* me = (java_lang_Byte*) XMLVM_MALLOC(sizeof(java_lang_Byte)); + me->tib = &__TIB_java_lang_Byte; + __INIT_INSTANCE_MEMBERS_java_lang_Byte(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Byte] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Byte() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Byte_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Byte) + return _STATIC_java_lang_Byte_serialVersionUID; +} + +void java_lang_Byte_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Byte) +_STATIC_java_lang_Byte_serialVersionUID = v; +} + +JAVA_BYTE java_lang_Byte_GET_MAX_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Byte) + return _STATIC_java_lang_Byte_MAX_VALUE; +} + +void java_lang_Byte_PUT_MAX_VALUE(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Byte) +_STATIC_java_lang_Byte_MAX_VALUE = v; +} + +JAVA_BYTE java_lang_Byte_GET_MIN_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Byte) + return _STATIC_java_lang_Byte_MIN_VALUE; +} + +void java_lang_Byte_PUT_MIN_VALUE(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Byte) +_STATIC_java_lang_Byte_MIN_VALUE = v; +} + +JAVA_INT java_lang_Byte_GET_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_Byte) + return _STATIC_java_lang_Byte_SIZE; +} + +void java_lang_Byte_PUT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Byte) +_STATIC_java_lang_Byte_SIZE = v; +} + +JAVA_OBJECT java_lang_Byte_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Byte) + return _STATIC_java_lang_Byte_TYPE; +} + +void java_lang_Byte_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Byte) +_STATIC_java_lang_Byte_TYPE = v; +} + +JAVA_OBJECT java_lang_Byte_GET_CACHE() +{ + XMLVM_CLASS_INIT(java_lang_Byte) + return _STATIC_java_lang_Byte_CACHE; +} + +void java_lang_Byte_PUT_CACHE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Byte) +_STATIC_java_lang_Byte_CACHE = v; +} + +void java_lang_Byte___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Byte", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Byte.java", 56) + _r0.i = 0; + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_SOURCE_POSITION("Byte.java", 57) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Byte_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Byte.java", 65) + _r0.i = 256; + XMLVM_CLASS_INIT(java_lang_Byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Byte, _r0.i); + java_lang_Byte_PUT_CACHE( _r0.o); + XMLVM_SOURCE_POSITION("Byte.java", 25) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Byte___INIT____byte(JAVA_OBJECT me, JAVA_BYTE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte___INIT____byte] + XMLVM_ENTER_METHOD("java.lang.Byte", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Byte.java", 73) + XMLVM_CHECK_NPE(0) + java_lang_Number___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Byte.java", 74) + XMLVM_CHECK_NPE(0) + ((java_lang_Byte*) _r0.o)->fields.java_lang_Byte.value_ = _r1.i; + XMLVM_SOURCE_POSITION("Byte.java", 75) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Byte___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Byte", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Byte.java", 87) + _r0.i = java_lang_Byte_parseByte___java_lang_String(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_Byte___INIT____byte(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("Byte.java", 88) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Byte_byteValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_byteValue__] + XMLVM_ENTER_METHOD("java.lang.Byte", "byteValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 97) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Byte*) _r1.o)->fields.java_lang_Byte.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Byte_compareTo___java_lang_Byte(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_compareTo___java_lang_Byte] + XMLVM_ENTER_METHOD("java.lang.Byte", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Byte.java", 114) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Byte*) _r2.o)->fields.java_lang_Byte.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Byte*) _r3.o)->fields.java_lang_Byte.value_; + if (_r0.i <= _r1.i) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Byte*) _r2.o)->fields.java_lang_Byte.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Byte*) _r3.o)->fields.java_lang_Byte.value_; + if (_r0.i >= _r1.i) goto label16; + _r0.i = -1; + goto label7; + label16:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Byte_decode___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Byte) + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_decode___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Byte", "decode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Byte.java", 130) + _r0.o = java_lang_Integer_decode___java_lang_String(_r2.o); + //java_lang_Integer_intValue__[9] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Integer*) _r0.o)->tib->vtable[9])(_r0.o); + XMLVM_SOURCE_POSITION("Byte.java", 131) + _r1.i = (_r0.i << 24) >> 24; + if (_r1.i != _r0.i) goto label16; + XMLVM_SOURCE_POSITION("Byte.java", 132) + XMLVM_SOURCE_POSITION("Byte.java", 133) + _r0.o = java_lang_Byte_valueOf___byte(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + label16:; + XMLVM_SOURCE_POSITION("Byte.java", 135) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Byte_doubleValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_doubleValue__] + XMLVM_ENTER_METHOD("java.lang.Byte", "doubleValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 140) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Byte*) _r2.o)->fields.java_lang_Byte.value_; + _r0.d = (JAVA_DOUBLE) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Byte_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Byte", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Byte.java", 155) + if (_r3.o == _r2.o) goto label16; + XMLVM_CLASS_INIT(java_lang_Byte) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_lang_Byte); + if (_r0.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Byte.java", 156) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Byte*) _r2.o)->fields.java_lang_Byte.value_; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Byte*) _r3.o)->fields.java_lang_Byte.value_; + if (_r0.i == _r1.i) goto label16; + label14:; + _r0.i = 0; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0.i = 1; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Byte_floatValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_floatValue__] + XMLVM_ENTER_METHOD("java.lang.Byte", "floatValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 161) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Byte*) _r1.o)->fields.java_lang_Byte.value_; + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Byte_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Byte", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 166) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Byte*) _r1.o)->fields.java_lang_Byte.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Byte_intValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_intValue__] + XMLVM_ENTER_METHOD("java.lang.Byte", "intValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 171) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Byte*) _r1.o)->fields.java_lang_Byte.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Byte_longValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_longValue__] + XMLVM_ENTER_METHOD("java.lang.Byte", "longValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 176) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Byte*) _r2.o)->fields.java_lang_Byte.value_; + _r0.l = (JAVA_LONG) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Byte_parseByte___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Byte) + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_parseByte___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Byte", "parseByte", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Byte.java", 191) + _r0.i = java_lang_Integer_parseInt___java_lang_String(_r2.o); + XMLVM_SOURCE_POSITION("Byte.java", 192) + _r1.i = (_r0.i << 24) >> 24; + if (_r1.i != _r0.i) goto label8; + XMLVM_SOURCE_POSITION("Byte.java", 193) + XMLVM_SOURCE_POSITION("Byte.java", 194) + XMLVM_EXIT_METHOD() + return _r1.i; + label8:; + XMLVM_SOURCE_POSITION("Byte.java", 196) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Byte_parseByte___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Byte) + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_parseByte___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Byte", "parseByte", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("Byte.java", 217) + _r0.i = java_lang_Integer_parseInt___java_lang_String_int(_r2.o, _r3.i); + XMLVM_SOURCE_POSITION("Byte.java", 218) + _r1.i = (_r0.i << 24) >> 24; + if (_r1.i != _r0.i) goto label8; + XMLVM_SOURCE_POSITION("Byte.java", 219) + XMLVM_SOURCE_POSITION("Byte.java", 220) + XMLVM_EXIT_METHOD() + return _r1.i; + label8:; + XMLVM_SOURCE_POSITION("Byte.java", 222) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Byte_shortValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_shortValue__] + XMLVM_ENTER_METHOD("java.lang.Byte", "shortValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 227) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Byte*) _r1.o)->fields.java_lang_Byte.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Byte_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_toString__] + XMLVM_ENTER_METHOD("java.lang.Byte", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Byte.java", 232) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Byte*) _r1.o)->fields.java_lang_Byte.value_; + _r0.o = java_lang_Integer_toString___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Byte_toString___byte(JAVA_BYTE n1) +{ + XMLVM_CLASS_INIT(java_lang_Byte) + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_toString___byte] + XMLVM_ENTER_METHOD("java.lang.Byte", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Byte.java", 244) + _r0.o = java_lang_Integer_toString___int(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Byte_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Byte) + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Byte", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Byte.java", 260) + _r0.i = java_lang_Byte_parseByte___java_lang_String(_r1.o); + _r0.o = java_lang_Byte_valueOf___byte(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Byte_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Byte) + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_valueOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Byte", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Byte.java", 282) + _r0.i = java_lang_Byte_parseByte___java_lang_String_int(_r1.o, _r2.i); + _r0.o = java_lang_Byte_valueOf___byte(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Byte_valueOf___byte(JAVA_BYTE n1) +{ + XMLVM_CLASS_INIT(java_lang_Byte) + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_valueOf___byte] + XMLVM_ENTER_METHOD("java.lang.Byte", "valueOf", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.i = n1; + XMLVM_SOURCE_POSITION("Byte.java", 298) + _r0.o = java_lang_Byte_GET_CACHE(); + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_SOURCE_POSITION("Byte.java", 299) + _r1.i = -128; + _r1.i = _r4.i - _r1.i; + XMLVM_TRY_BEGIN(w5361aaac26b1b8) + // Begin try + XMLVM_SOURCE_POSITION("Byte.java", 300) + _r2.o = java_lang_Byte_GET_CACHE(); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("Byte.java", 301) + if (_r2.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w5361aaac26b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5361aaac26b1b8, sizeof(XMLVM_JMP_BUF)); goto label25; }; + _r2.o = java_lang_Byte_GET_CACHE(); + _r3.o = __NEW_java_lang_Byte(); + XMLVM_CHECK_NPE(3) + java_lang_Byte___INIT____byte(_r3.o, _r4.i); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.o; + _r1 = _r3; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5361aaac26b1b8) + XMLVM_CATCH_SPECIFIC(w5361aaac26b1b8,java_lang_Object,27) + XMLVM_CATCH_END(w5361aaac26b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w5361aaac26b1b8) + label23:; + XMLVM_TRY_BEGIN(w5361aaac26b1c10) + // Begin try + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w5361aaac26b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5361aaac26b1c10, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5361aaac26b1c10) + XMLVM_CATCH_SPECIFIC(w5361aaac26b1c10,java_lang_Object,27) + XMLVM_CATCH_END(w5361aaac26b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w5361aaac26b1c10) + label25:; + XMLVM_TRY_BEGIN(w5361aaac26b1c12) + // Begin try + _r1 = _r2; + { XMLVM_MEMCPY(curThread_w5361aaac26b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5361aaac26b1c12, sizeof(XMLVM_JMP_BUF)); goto label23; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5361aaac26b1c12) + XMLVM_CATCH_SPECIFIC(w5361aaac26b1c12,java_lang_Object,27) + XMLVM_CATCH_END(w5361aaac26b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w5361aaac26b1c12) + label27:; + XMLVM_TRY_BEGIN(w5361aaac26b1c14) + // Begin try + java_lang_Thread* curThread_w5361aaac26b1c14aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5361aaac26b1c14aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5361aaac26b1c14) + XMLVM_CATCH_SPECIFIC(w5361aaac26b1c14,java_lang_Object,27) + XMLVM_CATCH_END(w5361aaac26b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w5361aaac26b1c14) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Byte_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Byte_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Byte", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Byte.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Byte_compareTo___java_lang_Byte(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Byte.h b/tests/nbody-java/java_lang_Byte.h new file mode 100644 index 0000000000000..721b6f9d7fc9d --- /dev/null +++ b/tests/nbody-java/java_lang_Byte.h @@ -0,0 +1,121 @@ +#ifndef __JAVA_LANG_BYTE__ +#define __JAVA_LANG_BYTE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Byte 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Number.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.Byte +XMLVM_DEFINE_CLASS(java_lang_Byte, 13, XMLVM_ITABLE_SIZE_java_lang_Byte) + +extern JAVA_OBJECT __CLASS_java_lang_Byte; +extern JAVA_OBJECT __CLASS_java_lang_Byte_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Byte_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Byte_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Byte +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Byte \ + __INSTANCE_FIELDS_java_lang_Number; \ + struct { \ + JAVA_BYTE value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Byte \ + } java_lang_Byte + +struct java_lang_Byte { + __TIB_DEFINITION_java_lang_Byte* tib; + struct { + __INSTANCE_FIELDS_java_lang_Byte; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Byte +#define XMLVM_FORWARD_DECL_java_lang_Byte +typedef struct java_lang_Byte java_lang_Byte; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Byte 13 +#define XMLVM_VTABLE_IDX_java_lang_Byte_byteValue__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Byte_doubleValue__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Byte_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Byte_floatValue__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Byte_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Byte_intValue__ 9 +#define XMLVM_VTABLE_IDX_java_lang_Byte_longValue__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Byte_shortValue__ 11 +#define XMLVM_VTABLE_IDX_java_lang_Byte_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Byte_compareTo___java_lang_Object 12 + +void __INIT_java_lang_Byte(); +void __INIT_IMPL_java_lang_Byte(); +void __DELETE_java_lang_Byte(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Byte(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Byte(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Byte(); +JAVA_LONG java_lang_Byte_GET_serialVersionUID(); +void java_lang_Byte_PUT_serialVersionUID(JAVA_LONG v); +JAVA_BYTE java_lang_Byte_GET_MAX_VALUE(); +void java_lang_Byte_PUT_MAX_VALUE(JAVA_BYTE v); +JAVA_BYTE java_lang_Byte_GET_MIN_VALUE(); +void java_lang_Byte_PUT_MIN_VALUE(JAVA_BYTE v); +JAVA_INT java_lang_Byte_GET_SIZE(); +void java_lang_Byte_PUT_SIZE(JAVA_INT v); +JAVA_OBJECT java_lang_Byte_GET_TYPE(); +void java_lang_Byte_PUT_TYPE(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Byte_GET_CACHE(); +void java_lang_Byte_PUT_CACHE(JAVA_OBJECT v); +void java_lang_Byte___CLINIT_(); +void java_lang_Byte___INIT____byte(JAVA_OBJECT me, JAVA_BYTE n1); +void java_lang_Byte___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_BYTE java_lang_Byte_byteValue__(JAVA_OBJECT me); +JAVA_INT java_lang_Byte_compareTo___java_lang_Byte(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Byte_decode___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_DOUBLE java_lang_Byte_doubleValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Byte_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_FLOAT java_lang_Byte_floatValue__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_Byte_hashCode__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_Byte_intValue__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_LONG java_lang_Byte_longValue__(JAVA_OBJECT me); +JAVA_BYTE java_lang_Byte_parseByte___java_lang_String(JAVA_OBJECT n1); +JAVA_BYTE java_lang_Byte_parseByte___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 11 +JAVA_SHORT java_lang_Byte_shortValue__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Byte_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Byte_toString___byte(JAVA_BYTE n1); +JAVA_OBJECT java_lang_Byte_valueOf___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Byte_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_Byte_valueOf___byte(JAVA_BYTE n1); +// Vtable index: 12 +JAVA_INT java_lang_Byte_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_CharSequence.c b/tests/nbody-java/java_lang_CharSequence.c new file mode 100644 index 0000000000000..4b75265d49207 --- /dev/null +++ b/tests/nbody-java/java_lang_CharSequence.c @@ -0,0 +1,77 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_lang_CharSequence.h" + +__TIB_DEFINITION_java_lang_CharSequence __TIB_java_lang_CharSequence = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_CharSequence, // classInitializer + "java.lang.CharSequence", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_CharSequence; +JAVA_OBJECT __CLASS_java_lang_CharSequence_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_CharSequence_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_CharSequence_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_CharSequence() +{ + staticInitializerLock(&__TIB_java_lang_CharSequence); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_CharSequence.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_CharSequence.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_CharSequence); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_CharSequence.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_CharSequence.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_CharSequence.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.CharSequence") + __INIT_IMPL_java_lang_CharSequence(); + } +} + +void __INIT_IMPL_java_lang_CharSequence() +{ + __TIB_java_lang_CharSequence.numInterfaces = 0; + __TIB_java_lang_CharSequence.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_CharSequence.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_CharSequence.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_CharSequence.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_CharSequence.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_CharSequence = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_CharSequence); + __TIB_java_lang_CharSequence.clazz = __CLASS_java_lang_CharSequence; + __TIB_java_lang_CharSequence.baseType = JAVA_NULL; + __CLASS_java_lang_CharSequence_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_CharSequence); + __CLASS_java_lang_CharSequence_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_CharSequence_1ARRAY); + __CLASS_java_lang_CharSequence_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_CharSequence_2ARRAY); + + __TIB_java_lang_CharSequence.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_CharSequence.h b/tests/nbody-java/java_lang_CharSequence.h new file mode 100644 index 0000000000000..a592a540b03e2 --- /dev/null +++ b/tests/nbody-java/java_lang_CharSequence.h @@ -0,0 +1,35 @@ +#ifndef __JAVA_LANG_CHARSEQUENCE__ +#define __JAVA_LANG_CHARSEQUENCE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_CharSequence_length__ 1 +#define XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int 0 +#define XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int 5 +#define XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__ 6 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif + +XMLVM_DEFINE_CLASS(java_lang_CharSequence, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_CharSequence; +extern JAVA_OBJECT __CLASS_java_lang_CharSequence_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_CharSequence_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_CharSequence_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +typedef struct java_lang_CharSequence java_lang_CharSequence; +#endif + +void __INIT_java_lang_CharSequence(); +void __INIT_IMPL_java_lang_CharSequence(); + +#endif diff --git a/tests/nbody-java/java_lang_Character.c b/tests/nbody-java/java_lang_Character.c new file mode 100644 index 0000000000000..4c2b20e7f915a --- /dev/null +++ b/tests/nbody-java/java_lang_Character.c @@ -0,0 +1,8874 @@ +#include "xmlvm.h" +#include "java_lang_CharSequence.h" +#include "java_lang_Class.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" + +#include "java_lang_Character.h" + +#define XMLVM_CURRENT_CLASS_NAME Character +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Character + +__TIB_DEFINITION_java_lang_Character __TIB_java_lang_Character = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Character, // classInitializer + "java.lang.Character", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Character), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Character; +JAVA_OBJECT __CLASS_java_lang_Character_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Character_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Character_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Character_serialVersionUID; +static JAVA_CHAR _STATIC_java_lang_Character_MIN_VALUE; +static JAVA_CHAR _STATIC_java_lang_Character_MAX_VALUE; +static JAVA_INT _STATIC_java_lang_Character_MIN_RADIX; +static JAVA_INT _STATIC_java_lang_Character_MAX_RADIX; +static JAVA_OBJECT _STATIC_java_lang_Character_TYPE; +static JAVA_BYTE _STATIC_java_lang_Character_UNASSIGNED; +static JAVA_BYTE _STATIC_java_lang_Character_UPPERCASE_LETTER; +static JAVA_BYTE _STATIC_java_lang_Character_LOWERCASE_LETTER; +static JAVA_BYTE _STATIC_java_lang_Character_TITLECASE_LETTER; +static JAVA_BYTE _STATIC_java_lang_Character_MODIFIER_LETTER; +static JAVA_BYTE _STATIC_java_lang_Character_OTHER_LETTER; +static JAVA_BYTE _STATIC_java_lang_Character_NON_SPACING_MARK; +static JAVA_BYTE _STATIC_java_lang_Character_ENCLOSING_MARK; +static JAVA_BYTE _STATIC_java_lang_Character_COMBINING_SPACING_MARK; +static JAVA_BYTE _STATIC_java_lang_Character_DECIMAL_DIGIT_NUMBER; +static JAVA_BYTE _STATIC_java_lang_Character_LETTER_NUMBER; +static JAVA_BYTE _STATIC_java_lang_Character_OTHER_NUMBER; +static JAVA_BYTE _STATIC_java_lang_Character_SPACE_SEPARATOR; +static JAVA_BYTE _STATIC_java_lang_Character_LINE_SEPARATOR; +static JAVA_BYTE _STATIC_java_lang_Character_PARAGRAPH_SEPARATOR; +static JAVA_BYTE _STATIC_java_lang_Character_CONTROL; +static JAVA_BYTE _STATIC_java_lang_Character_FORMAT; +static JAVA_BYTE _STATIC_java_lang_Character_PRIVATE_USE; +static JAVA_BYTE _STATIC_java_lang_Character_SURROGATE; +static JAVA_BYTE _STATIC_java_lang_Character_DASH_PUNCTUATION; +static JAVA_BYTE _STATIC_java_lang_Character_START_PUNCTUATION; +static JAVA_BYTE _STATIC_java_lang_Character_END_PUNCTUATION; +static JAVA_BYTE _STATIC_java_lang_Character_CONNECTOR_PUNCTUATION; +static JAVA_BYTE _STATIC_java_lang_Character_OTHER_PUNCTUATION; +static JAVA_BYTE _STATIC_java_lang_Character_MATH_SYMBOL; +static JAVA_BYTE _STATIC_java_lang_Character_CURRENCY_SYMBOL; +static JAVA_BYTE _STATIC_java_lang_Character_MODIFIER_SYMBOL; +static JAVA_BYTE _STATIC_java_lang_Character_OTHER_SYMBOL; +static JAVA_BYTE _STATIC_java_lang_Character_INITIAL_QUOTE_PUNCTUATION; +static JAVA_BYTE _STATIC_java_lang_Character_FINAL_QUOTE_PUNCTUATION; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_UNDEFINED; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_ARABIC_NUMBER; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_NONSPACING_MARK; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_BOUNDARY_NEUTRAL; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_PARAGRAPH_SEPARATOR; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_SEGMENT_SEPARATOR; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_WHITESPACE; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_OTHER_NEUTRALS; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE; +static JAVA_BYTE _STATIC_java_lang_Character_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT; +static JAVA_CHAR _STATIC_java_lang_Character_MIN_HIGH_SURROGATE; +static JAVA_CHAR _STATIC_java_lang_Character_MAX_HIGH_SURROGATE; +static JAVA_CHAR _STATIC_java_lang_Character_MIN_LOW_SURROGATE; +static JAVA_CHAR _STATIC_java_lang_Character_MAX_LOW_SURROGATE; +static JAVA_CHAR _STATIC_java_lang_Character_MIN_SURROGATE; +static JAVA_CHAR _STATIC_java_lang_Character_MAX_SURROGATE; +static JAVA_INT _STATIC_java_lang_Character_MIN_SUPPLEMENTARY_CODE_POINT; +static JAVA_INT _STATIC_java_lang_Character_MIN_CODE_POINT; +static JAVA_INT _STATIC_java_lang_Character_MAX_CODE_POINT; +static JAVA_INT _STATIC_java_lang_Character_SIZE; +static JAVA_OBJECT _STATIC_java_lang_Character_bidiKeys; +static JAVA_OBJECT _STATIC_java_lang_Character_bidiValues; +static JAVA_OBJECT _STATIC_java_lang_Character_mirrored; +static JAVA_OBJECT _STATIC_java_lang_Character_typeKeys; +static JAVA_OBJECT _STATIC_java_lang_Character_typeValues; +static JAVA_OBJECT _STATIC_java_lang_Character_typeValuesCache; +static JAVA_OBJECT _STATIC_java_lang_Character_uppercaseKeys; +static JAVA_OBJECT _STATIC_java_lang_Character_uppercaseValues; +static JAVA_OBJECT _STATIC_java_lang_Character_uppercaseValuesCache; +static JAVA_OBJECT _STATIC_java_lang_Character_lowercaseKeys; +static JAVA_OBJECT _STATIC_java_lang_Character_lowercaseValues; +static JAVA_OBJECT _STATIC_java_lang_Character_lowercaseValuesCache; +static JAVA_OBJECT _STATIC_java_lang_Character_digitKeys; +static JAVA_OBJECT _STATIC_java_lang_Character_digitValues; +static JAVA_OBJECT _STATIC_java_lang_Character_typeTags; +static JAVA_OBJECT _STATIC_java_lang_Character_DIRECTIONALITY; +static JAVA_INT _STATIC_java_lang_Character_ISJAVASTART; +static JAVA_INT _STATIC_java_lang_Character_ISJAVAPART; +static JAVA_OBJECT _STATIC_java_lang_Character_titlecaseKeys; +static JAVA_OBJECT _STATIC_java_lang_Character_titlecaseValues; +static JAVA_OBJECT _STATIC_java_lang_Character_numericKeys; +static JAVA_OBJECT _STATIC_java_lang_Character_numericValues; +static JAVA_INT _STATIC_java_lang_Character_CACHE_LEN; +static JAVA_BOOLEAN _STATIC_java_lang_Character__assertionsDisabled; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Character() +{ + staticInitializerLock(&__TIB_java_lang_Character); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Character.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Character.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Character); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Character.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Character.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Character.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Character") + __INIT_IMPL_java_lang_Character(); + } +} + +void __INIT_IMPL_java_lang_Character() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Character.newInstanceFunc = __NEW_INSTANCE_java_lang_Character; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Character.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Character.vtable[1] = (VTABLE_PTR) &java_lang_Character_equals___java_lang_Object; + __TIB_java_lang_Character.vtable[4] = (VTABLE_PTR) &java_lang_Character_hashCode__; + __TIB_java_lang_Character.vtable[5] = (VTABLE_PTR) &java_lang_Character_toString__; + __TIB_java_lang_Character.vtable[6] = (VTABLE_PTR) &java_lang_Character_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Character.numImplementedInterfaces = 2; + __TIB_java_lang_Character.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Character.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Character.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Character.itableBegin = &__TIB_java_lang_Character.itable[0]; + __TIB_java_lang_Character.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Character.vtable[6]; + + _STATIC_java_lang_Character_serialVersionUID = 3786198910865385080; + _STATIC_java_lang_Character_MIN_VALUE = 0; + _STATIC_java_lang_Character_MAX_VALUE = 65535; + _STATIC_java_lang_Character_MIN_RADIX = 2; + _STATIC_java_lang_Character_MAX_RADIX = 36; + _STATIC_java_lang_Character_TYPE = (java_lang_Class*) JAVA_NULL; + _STATIC_java_lang_Character_UNASSIGNED = 0; + _STATIC_java_lang_Character_UPPERCASE_LETTER = 1; + _STATIC_java_lang_Character_LOWERCASE_LETTER = 2; + _STATIC_java_lang_Character_TITLECASE_LETTER = 3; + _STATIC_java_lang_Character_MODIFIER_LETTER = 4; + _STATIC_java_lang_Character_OTHER_LETTER = 5; + _STATIC_java_lang_Character_NON_SPACING_MARK = 6; + _STATIC_java_lang_Character_ENCLOSING_MARK = 7; + _STATIC_java_lang_Character_COMBINING_SPACING_MARK = 8; + _STATIC_java_lang_Character_DECIMAL_DIGIT_NUMBER = 9; + _STATIC_java_lang_Character_LETTER_NUMBER = 10; + _STATIC_java_lang_Character_OTHER_NUMBER = 11; + _STATIC_java_lang_Character_SPACE_SEPARATOR = 12; + _STATIC_java_lang_Character_LINE_SEPARATOR = 13; + _STATIC_java_lang_Character_PARAGRAPH_SEPARATOR = 14; + _STATIC_java_lang_Character_CONTROL = 15; + _STATIC_java_lang_Character_FORMAT = 16; + _STATIC_java_lang_Character_PRIVATE_USE = 18; + _STATIC_java_lang_Character_SURROGATE = 19; + _STATIC_java_lang_Character_DASH_PUNCTUATION = 20; + _STATIC_java_lang_Character_START_PUNCTUATION = 21; + _STATIC_java_lang_Character_END_PUNCTUATION = 22; + _STATIC_java_lang_Character_CONNECTOR_PUNCTUATION = 23; + _STATIC_java_lang_Character_OTHER_PUNCTUATION = 24; + _STATIC_java_lang_Character_MATH_SYMBOL = 25; + _STATIC_java_lang_Character_CURRENCY_SYMBOL = 26; + _STATIC_java_lang_Character_MODIFIER_SYMBOL = 27; + _STATIC_java_lang_Character_OTHER_SYMBOL = 28; + _STATIC_java_lang_Character_INITIAL_QUOTE_PUNCTUATION = 29; + _STATIC_java_lang_Character_FINAL_QUOTE_PUNCTUATION = 30; + _STATIC_java_lang_Character_DIRECTIONALITY_UNDEFINED = -1; + _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT = 0; + _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT = 1; + _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC = 2; + _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER = 3; + _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR = 4; + _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR = 5; + _STATIC_java_lang_Character_DIRECTIONALITY_ARABIC_NUMBER = 6; + _STATIC_java_lang_Character_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR = 7; + _STATIC_java_lang_Character_DIRECTIONALITY_NONSPACING_MARK = 8; + _STATIC_java_lang_Character_DIRECTIONALITY_BOUNDARY_NEUTRAL = 9; + _STATIC_java_lang_Character_DIRECTIONALITY_PARAGRAPH_SEPARATOR = 10; + _STATIC_java_lang_Character_DIRECTIONALITY_SEGMENT_SEPARATOR = 11; + _STATIC_java_lang_Character_DIRECTIONALITY_WHITESPACE = 12; + _STATIC_java_lang_Character_DIRECTIONALITY_OTHER_NEUTRALS = 13; + _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING = 14; + _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE = 15; + _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING = 16; + _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE = 17; + _STATIC_java_lang_Character_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT = 18; + _STATIC_java_lang_Character_MIN_HIGH_SURROGATE = 55296; + _STATIC_java_lang_Character_MAX_HIGH_SURROGATE = 56319; + _STATIC_java_lang_Character_MIN_LOW_SURROGATE = 56320; + _STATIC_java_lang_Character_MAX_LOW_SURROGATE = 57343; + _STATIC_java_lang_Character_MIN_SURROGATE = 55296; + _STATIC_java_lang_Character_MAX_SURROGATE = 57343; + _STATIC_java_lang_Character_MIN_SUPPLEMENTARY_CODE_POINT = 65536; + _STATIC_java_lang_Character_MIN_CODE_POINT = 0; + _STATIC_java_lang_Character_MAX_CODE_POINT = 1114111; + _STATIC_java_lang_Character_SIZE = 16; + _STATIC_java_lang_Character_bidiKeys = (java_lang_String*) xmlvm_create_java_string_from_pool(145); + _STATIC_java_lang_Character_bidiValues = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_mirrored = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_typeKeys = (java_lang_String*) xmlvm_create_java_string_from_pool(146); + _STATIC_java_lang_Character_typeValues = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_typeValuesCache = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_uppercaseKeys = (java_lang_String*) xmlvm_create_java_string_from_pool(147); + _STATIC_java_lang_Character_uppercaseValues = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_uppercaseValuesCache = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_lowercaseKeys = (java_lang_String*) xmlvm_create_java_string_from_pool(148); + _STATIC_java_lang_Character_lowercaseValues = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_lowercaseValuesCache = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_digitKeys = (java_lang_String*) xmlvm_create_java_string_from_pool(149); + _STATIC_java_lang_Character_digitValues = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_typeTags = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_DIRECTIONALITY = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_ISJAVASTART = 1; + _STATIC_java_lang_Character_ISJAVAPART = 2; + _STATIC_java_lang_Character_titlecaseKeys = (java_lang_String*) xmlvm_create_java_string_from_pool(150); + _STATIC_java_lang_Character_titlecaseValues = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_numericKeys = (java_lang_String*) xmlvm_create_java_string_from_pool(151); + _STATIC_java_lang_Character_numericValues = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Character_CACHE_LEN = 512; + _STATIC_java_lang_Character__assertionsDisabled = 0; + + __TIB_java_lang_Character.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Character.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Character.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Character.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Character.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Character.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Character.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Character.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Character = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Character); + __TIB_java_lang_Character.clazz = __CLASS_java_lang_Character; + __TIB_java_lang_Character.baseType = JAVA_NULL; + __CLASS_java_lang_Character_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Character); + __CLASS_java_lang_Character_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Character_1ARRAY); + __CLASS_java_lang_Character_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Character_2ARRAY); + java_lang_Character___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Character] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Character.classInitialized = 1; +} + +void __DELETE_java_lang_Character(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Character] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Character(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Character*) me)->fields.java_lang_Character.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Character] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Character() +{ XMLVM_CLASS_INIT(java_lang_Character) +java_lang_Character* me = (java_lang_Character*) XMLVM_MALLOC(sizeof(java_lang_Character)); + me->tib = &__TIB_java_lang_Character; + __INIT_INSTANCE_MEMBERS_java_lang_Character(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Character] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Character() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Character_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_serialVersionUID; +} + +void java_lang_Character_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_serialVersionUID = v; +} + +JAVA_CHAR java_lang_Character_GET_MIN_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MIN_VALUE; +} + +void java_lang_Character_PUT_MIN_VALUE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MIN_VALUE = v; +} + +JAVA_CHAR java_lang_Character_GET_MAX_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MAX_VALUE; +} + +void java_lang_Character_PUT_MAX_VALUE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MAX_VALUE = v; +} + +JAVA_INT java_lang_Character_GET_MIN_RADIX() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MIN_RADIX; +} + +void java_lang_Character_PUT_MIN_RADIX(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MIN_RADIX = v; +} + +JAVA_INT java_lang_Character_GET_MAX_RADIX() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MAX_RADIX; +} + +void java_lang_Character_PUT_MAX_RADIX(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MAX_RADIX = v; +} + +JAVA_OBJECT java_lang_Character_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_TYPE; +} + +void java_lang_Character_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_TYPE = v; +} + +JAVA_BYTE java_lang_Character_GET_UNASSIGNED() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_UNASSIGNED; +} + +void java_lang_Character_PUT_UNASSIGNED(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_UNASSIGNED = v; +} + +JAVA_BYTE java_lang_Character_GET_UPPERCASE_LETTER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_UPPERCASE_LETTER; +} + +void java_lang_Character_PUT_UPPERCASE_LETTER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_UPPERCASE_LETTER = v; +} + +JAVA_BYTE java_lang_Character_GET_LOWERCASE_LETTER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_LOWERCASE_LETTER; +} + +void java_lang_Character_PUT_LOWERCASE_LETTER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_LOWERCASE_LETTER = v; +} + +JAVA_BYTE java_lang_Character_GET_TITLECASE_LETTER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_TITLECASE_LETTER; +} + +void java_lang_Character_PUT_TITLECASE_LETTER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_TITLECASE_LETTER = v; +} + +JAVA_BYTE java_lang_Character_GET_MODIFIER_LETTER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MODIFIER_LETTER; +} + +void java_lang_Character_PUT_MODIFIER_LETTER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MODIFIER_LETTER = v; +} + +JAVA_BYTE java_lang_Character_GET_OTHER_LETTER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_OTHER_LETTER; +} + +void java_lang_Character_PUT_OTHER_LETTER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_OTHER_LETTER = v; +} + +JAVA_BYTE java_lang_Character_GET_NON_SPACING_MARK() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_NON_SPACING_MARK; +} + +void java_lang_Character_PUT_NON_SPACING_MARK(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_NON_SPACING_MARK = v; +} + +JAVA_BYTE java_lang_Character_GET_ENCLOSING_MARK() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_ENCLOSING_MARK; +} + +void java_lang_Character_PUT_ENCLOSING_MARK(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_ENCLOSING_MARK = v; +} + +JAVA_BYTE java_lang_Character_GET_COMBINING_SPACING_MARK() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_COMBINING_SPACING_MARK; +} + +void java_lang_Character_PUT_COMBINING_SPACING_MARK(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_COMBINING_SPACING_MARK = v; +} + +JAVA_BYTE java_lang_Character_GET_DECIMAL_DIGIT_NUMBER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DECIMAL_DIGIT_NUMBER; +} + +void java_lang_Character_PUT_DECIMAL_DIGIT_NUMBER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DECIMAL_DIGIT_NUMBER = v; +} + +JAVA_BYTE java_lang_Character_GET_LETTER_NUMBER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_LETTER_NUMBER; +} + +void java_lang_Character_PUT_LETTER_NUMBER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_LETTER_NUMBER = v; +} + +JAVA_BYTE java_lang_Character_GET_OTHER_NUMBER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_OTHER_NUMBER; +} + +void java_lang_Character_PUT_OTHER_NUMBER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_OTHER_NUMBER = v; +} + +JAVA_BYTE java_lang_Character_GET_SPACE_SEPARATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_SPACE_SEPARATOR; +} + +void java_lang_Character_PUT_SPACE_SEPARATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_SPACE_SEPARATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_LINE_SEPARATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_LINE_SEPARATOR; +} + +void java_lang_Character_PUT_LINE_SEPARATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_LINE_SEPARATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_PARAGRAPH_SEPARATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_PARAGRAPH_SEPARATOR; +} + +void java_lang_Character_PUT_PARAGRAPH_SEPARATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_PARAGRAPH_SEPARATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_CONTROL() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_CONTROL; +} + +void java_lang_Character_PUT_CONTROL(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_CONTROL = v; +} + +JAVA_BYTE java_lang_Character_GET_FORMAT() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_FORMAT; +} + +void java_lang_Character_PUT_FORMAT(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_FORMAT = v; +} + +JAVA_BYTE java_lang_Character_GET_PRIVATE_USE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_PRIVATE_USE; +} + +void java_lang_Character_PUT_PRIVATE_USE(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_PRIVATE_USE = v; +} + +JAVA_BYTE java_lang_Character_GET_SURROGATE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_SURROGATE; +} + +void java_lang_Character_PUT_SURROGATE(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_SURROGATE = v; +} + +JAVA_BYTE java_lang_Character_GET_DASH_PUNCTUATION() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DASH_PUNCTUATION; +} + +void java_lang_Character_PUT_DASH_PUNCTUATION(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DASH_PUNCTUATION = v; +} + +JAVA_BYTE java_lang_Character_GET_START_PUNCTUATION() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_START_PUNCTUATION; +} + +void java_lang_Character_PUT_START_PUNCTUATION(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_START_PUNCTUATION = v; +} + +JAVA_BYTE java_lang_Character_GET_END_PUNCTUATION() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_END_PUNCTUATION; +} + +void java_lang_Character_PUT_END_PUNCTUATION(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_END_PUNCTUATION = v; +} + +JAVA_BYTE java_lang_Character_GET_CONNECTOR_PUNCTUATION() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_CONNECTOR_PUNCTUATION; +} + +void java_lang_Character_PUT_CONNECTOR_PUNCTUATION(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_CONNECTOR_PUNCTUATION = v; +} + +JAVA_BYTE java_lang_Character_GET_OTHER_PUNCTUATION() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_OTHER_PUNCTUATION; +} + +void java_lang_Character_PUT_OTHER_PUNCTUATION(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_OTHER_PUNCTUATION = v; +} + +JAVA_BYTE java_lang_Character_GET_MATH_SYMBOL() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MATH_SYMBOL; +} + +void java_lang_Character_PUT_MATH_SYMBOL(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MATH_SYMBOL = v; +} + +JAVA_BYTE java_lang_Character_GET_CURRENCY_SYMBOL() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_CURRENCY_SYMBOL; +} + +void java_lang_Character_PUT_CURRENCY_SYMBOL(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_CURRENCY_SYMBOL = v; +} + +JAVA_BYTE java_lang_Character_GET_MODIFIER_SYMBOL() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MODIFIER_SYMBOL; +} + +void java_lang_Character_PUT_MODIFIER_SYMBOL(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MODIFIER_SYMBOL = v; +} + +JAVA_BYTE java_lang_Character_GET_OTHER_SYMBOL() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_OTHER_SYMBOL; +} + +void java_lang_Character_PUT_OTHER_SYMBOL(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_OTHER_SYMBOL = v; +} + +JAVA_BYTE java_lang_Character_GET_INITIAL_QUOTE_PUNCTUATION() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_INITIAL_QUOTE_PUNCTUATION; +} + +void java_lang_Character_PUT_INITIAL_QUOTE_PUNCTUATION(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_INITIAL_QUOTE_PUNCTUATION = v; +} + +JAVA_BYTE java_lang_Character_GET_FINAL_QUOTE_PUNCTUATION() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_FINAL_QUOTE_PUNCTUATION; +} + +void java_lang_Character_PUT_FINAL_QUOTE_PUNCTUATION(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_FINAL_QUOTE_PUNCTUATION = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_UNDEFINED() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_UNDEFINED; +} + +void java_lang_Character_PUT_DIRECTIONALITY_UNDEFINED(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_UNDEFINED = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_LEFT_TO_RIGHT() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT; +} + +void java_lang_Character_PUT_DIRECTIONALITY_LEFT_TO_RIGHT(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT; +} + +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC; +} + +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_EUROPEAN_NUMBER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER; +} + +void java_lang_Character_PUT_DIRECTIONALITY_EUROPEAN_NUMBER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR; +} + +void java_lang_Character_PUT_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR; +} + +void java_lang_Character_PUT_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_ARABIC_NUMBER() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_ARABIC_NUMBER; +} + +void java_lang_Character_PUT_DIRECTIONALITY_ARABIC_NUMBER(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_ARABIC_NUMBER = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR; +} + +void java_lang_Character_PUT_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_NONSPACING_MARK() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_NONSPACING_MARK; +} + +void java_lang_Character_PUT_DIRECTIONALITY_NONSPACING_MARK(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_NONSPACING_MARK = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_BOUNDARY_NEUTRAL() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_BOUNDARY_NEUTRAL; +} + +void java_lang_Character_PUT_DIRECTIONALITY_BOUNDARY_NEUTRAL(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_BOUNDARY_NEUTRAL = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_PARAGRAPH_SEPARATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_PARAGRAPH_SEPARATOR; +} + +void java_lang_Character_PUT_DIRECTIONALITY_PARAGRAPH_SEPARATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_PARAGRAPH_SEPARATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_SEGMENT_SEPARATOR() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_SEGMENT_SEPARATOR; +} + +void java_lang_Character_PUT_DIRECTIONALITY_SEGMENT_SEPARATOR(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_SEGMENT_SEPARATOR = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_WHITESPACE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_WHITESPACE; +} + +void java_lang_Character_PUT_DIRECTIONALITY_WHITESPACE(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_WHITESPACE = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_OTHER_NEUTRALS() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_OTHER_NEUTRALS; +} + +void java_lang_Character_PUT_DIRECTIONALITY_OTHER_NEUTRALS(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_OTHER_NEUTRALS = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING; +} + +void java_lang_Character_PUT_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE; +} + +void java_lang_Character_PUT_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING; +} + +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE; +} + +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE = v; +} + +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT; +} + +void java_lang_Character_PUT_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT(JAVA_BYTE v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT = v; +} + +JAVA_CHAR java_lang_Character_GET_MIN_HIGH_SURROGATE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MIN_HIGH_SURROGATE; +} + +void java_lang_Character_PUT_MIN_HIGH_SURROGATE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MIN_HIGH_SURROGATE = v; +} + +JAVA_CHAR java_lang_Character_GET_MAX_HIGH_SURROGATE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MAX_HIGH_SURROGATE; +} + +void java_lang_Character_PUT_MAX_HIGH_SURROGATE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MAX_HIGH_SURROGATE = v; +} + +JAVA_CHAR java_lang_Character_GET_MIN_LOW_SURROGATE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MIN_LOW_SURROGATE; +} + +void java_lang_Character_PUT_MIN_LOW_SURROGATE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MIN_LOW_SURROGATE = v; +} + +JAVA_CHAR java_lang_Character_GET_MAX_LOW_SURROGATE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MAX_LOW_SURROGATE; +} + +void java_lang_Character_PUT_MAX_LOW_SURROGATE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MAX_LOW_SURROGATE = v; +} + +JAVA_CHAR java_lang_Character_GET_MIN_SURROGATE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MIN_SURROGATE; +} + +void java_lang_Character_PUT_MIN_SURROGATE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MIN_SURROGATE = v; +} + +JAVA_CHAR java_lang_Character_GET_MAX_SURROGATE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MAX_SURROGATE; +} + +void java_lang_Character_PUT_MAX_SURROGATE(JAVA_CHAR v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MAX_SURROGATE = v; +} + +JAVA_INT java_lang_Character_GET_MIN_SUPPLEMENTARY_CODE_POINT() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MIN_SUPPLEMENTARY_CODE_POINT; +} + +void java_lang_Character_PUT_MIN_SUPPLEMENTARY_CODE_POINT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MIN_SUPPLEMENTARY_CODE_POINT = v; +} + +JAVA_INT java_lang_Character_GET_MIN_CODE_POINT() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MIN_CODE_POINT; +} + +void java_lang_Character_PUT_MIN_CODE_POINT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MIN_CODE_POINT = v; +} + +JAVA_INT java_lang_Character_GET_MAX_CODE_POINT() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_MAX_CODE_POINT; +} + +void java_lang_Character_PUT_MAX_CODE_POINT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_MAX_CODE_POINT = v; +} + +JAVA_INT java_lang_Character_GET_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_SIZE; +} + +void java_lang_Character_PUT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_SIZE = v; +} + +JAVA_OBJECT java_lang_Character_GET_bidiKeys() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_bidiKeys; +} + +void java_lang_Character_PUT_bidiKeys(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_bidiKeys = v; +} + +JAVA_OBJECT java_lang_Character_GET_bidiValues() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_bidiValues; +} + +void java_lang_Character_PUT_bidiValues(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_bidiValues = v; +} + +JAVA_OBJECT java_lang_Character_GET_mirrored() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_mirrored; +} + +void java_lang_Character_PUT_mirrored(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_mirrored = v; +} + +JAVA_OBJECT java_lang_Character_GET_typeKeys() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_typeKeys; +} + +void java_lang_Character_PUT_typeKeys(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_typeKeys = v; +} + +JAVA_OBJECT java_lang_Character_GET_typeValues() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_typeValues; +} + +void java_lang_Character_PUT_typeValues(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_typeValues = v; +} + +JAVA_OBJECT java_lang_Character_GET_typeValuesCache() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_typeValuesCache; +} + +void java_lang_Character_PUT_typeValuesCache(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_typeValuesCache = v; +} + +JAVA_OBJECT java_lang_Character_GET_uppercaseKeys() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_uppercaseKeys; +} + +void java_lang_Character_PUT_uppercaseKeys(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_uppercaseKeys = v; +} + +JAVA_OBJECT java_lang_Character_GET_uppercaseValues() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_uppercaseValues; +} + +void java_lang_Character_PUT_uppercaseValues(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_uppercaseValues = v; +} + +JAVA_OBJECT java_lang_Character_GET_uppercaseValuesCache() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_uppercaseValuesCache; +} + +void java_lang_Character_PUT_uppercaseValuesCache(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_uppercaseValuesCache = v; +} + +JAVA_OBJECT java_lang_Character_GET_lowercaseKeys() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_lowercaseKeys; +} + +void java_lang_Character_PUT_lowercaseKeys(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_lowercaseKeys = v; +} + +JAVA_OBJECT java_lang_Character_GET_lowercaseValues() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_lowercaseValues; +} + +void java_lang_Character_PUT_lowercaseValues(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_lowercaseValues = v; +} + +JAVA_OBJECT java_lang_Character_GET_lowercaseValuesCache() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_lowercaseValuesCache; +} + +void java_lang_Character_PUT_lowercaseValuesCache(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_lowercaseValuesCache = v; +} + +JAVA_OBJECT java_lang_Character_GET_digitKeys() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_digitKeys; +} + +void java_lang_Character_PUT_digitKeys(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_digitKeys = v; +} + +JAVA_OBJECT java_lang_Character_GET_digitValues() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_digitValues; +} + +void java_lang_Character_PUT_digitValues(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_digitValues = v; +} + +JAVA_OBJECT java_lang_Character_GET_typeTags() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_typeTags; +} + +void java_lang_Character_PUT_typeTags(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_typeTags = v; +} + +JAVA_OBJECT java_lang_Character_GET_DIRECTIONALITY() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_DIRECTIONALITY; +} + +void java_lang_Character_PUT_DIRECTIONALITY(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_DIRECTIONALITY = v; +} + +JAVA_INT java_lang_Character_GET_ISJAVASTART() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_ISJAVASTART; +} + +void java_lang_Character_PUT_ISJAVASTART(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_ISJAVASTART = v; +} + +JAVA_INT java_lang_Character_GET_ISJAVAPART() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_ISJAVAPART; +} + +void java_lang_Character_PUT_ISJAVAPART(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_ISJAVAPART = v; +} + +JAVA_OBJECT java_lang_Character_GET_titlecaseKeys() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_titlecaseKeys; +} + +void java_lang_Character_PUT_titlecaseKeys(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_titlecaseKeys = v; +} + +JAVA_OBJECT java_lang_Character_GET_titlecaseValues() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_titlecaseValues; +} + +void java_lang_Character_PUT_titlecaseValues(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_titlecaseValues = v; +} + +JAVA_OBJECT java_lang_Character_GET_numericKeys() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_numericKeys; +} + +void java_lang_Character_PUT_numericKeys(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_numericKeys = v; +} + +JAVA_OBJECT java_lang_Character_GET_numericValues() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_numericValues; +} + +void java_lang_Character_PUT_numericValues(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_numericValues = v; +} + +JAVA_INT java_lang_Character_GET_CACHE_LEN() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character_CACHE_LEN; +} + +void java_lang_Character_PUT_CACHE_LEN(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character_CACHE_LEN = v; +} + +JAVA_BOOLEAN java_lang_Character_GET__assertionsDisabled() +{ + XMLVM_CLASS_INIT(java_lang_Character) + return _STATIC_java_lang_Character__assertionsDisabled; +} + +void java_lang_Character_PUT__assertionsDisabled(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(java_lang_Character) +_STATIC_java_lang_Character__assertionsDisabled = v; +} + +void java_lang_Character___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Character", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.i = 27; + _r6.i = 15; + _r5.i = 6; + _r4.i = 1; + _r3.i = 2; + XMLVM_SOURCE_POSITION("Character.java", 52) + XMLVM_CLASS_INIT(java_lang_Character) + _r0.o = __CLASS_java_lang_Character; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_Class_desiredAssertionStatus__(_r0.o); + if (_r0.i != 0) goto label4189; + _r0 = _r4; + label16:; + java_lang_Character_PUT__assertionsDisabled( _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 81) + _r0.i = 0; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 82) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Character_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 459) + // "\010\012\013\6013\015\5415\033\012\036\013 \6015\042\016%\006*\016.\30100\24049\004;\7010@\016Z\001`\016z\001\176\016\204\012\206\5412\237\012\241\7010\245\006\251\016\253\7001\257\016\261\006\263\004\266\416\270\016\272\2001\277\016\326\001\330\7001\366\001\370\7001\1037\001\1063\001\1255\001\1270\001\1272\016\1301\001\1317\016\1321\001\1337\016\1344\001\1355\016\1356\001\1516\011\1542\011\1565\016\1572\001\1576\016\1605\016\1610\7001\1612\001\1614\001\1641\001\1716\001\1727\001\1763\001\2202\001\2206\011\2211\011\2304\001\2310\001\2314\001\2365\001\2371\001\2526\001\2537\001\2607\001\2612\416\2641\011\2671\011\2675\011\2701\4402\2704\1011\2752\002\2764\002\3014\010\3033\1400\3037\1400\3072\003\3112\003\3125\011\3151\007\3153\3406\3155\1407\3161\1411\3325\003\3344\011\3346\003\3350\011\3352\7011\3355\011\3371\004\3376\003\3415\003\3420\5003\3422\4403\3454\003\3512\011\3645\003\3660\011\4402\011\4403\400\4471\001\4475\411\4500\001\4510\011\4514\001\4515\4400\4521\4401\4524\011\4541\001\4543\011\4560\001\4602\4401\4603\400\4614\001\4620\001\4650\001\4660\001\4662\001\4671\001\4674\011\4700\001\4704\011\4710\001\4714\001\4715\4400\4727\400\4735\001\4741\001\4743\011\4761\001\4763\006\4772\001\5002\011\5012\001\5020\001\5050\001\5060\001\5063\001\5066\001\5071\001\5074\011\5100\001\5102\011\5110\011\5115\011\5134\001\5136\001\5157\001\5161\011\5164\001\5202\011\5203\400\5213\001\5215\400\5221\001\5250\001\5260\001\5263\001\5271\001\5275\411\5300\001\5305\011\5310\011\5311\400\5314\001\5315\4400\5320\001\5340\001\5357\001\5402\4401\5403\400\5414\001\5420\001\5450\001\5460\001\5463\001\5471\001\5475\411\5501\4401\5503\011\5510\001\5514\001\5515\4400\5527\411\5535\001\5541\001\5560\001\5603\411\5612\001\5620\001\5625\001\5632\001\5634\001\5637\001\5644\001\5652\001\5665\001\5671\001\5677\001\5701\411\5702\001\5710\001\5714\001\5715\4400\5727\400\5762\001\6003\001\6014\001\6020\001\6050\001\6063\001\6071\001\6100\011\6104\001\6110\011\6115\011\6126\011\6141\001\6157\001\6203\001\6214\001\6220\001\6250\001\6263\001\6271\001\6300\4401\6304\001\6307\411\6310\001\6313\001\6315\011\6326\001\6336\001\6341\001\6357\001\6403\001\6414\001\6420\001\6450\001\6471\001\6500\001\6503\011\6510\001\6514\001\6515\4400\6527\400\6541\001\6557\001\6603\001\6626\001\6661\001\6673\001\6675\400\6706\001\6712\011\6721\001\6724\011\6726\011\6737\001\6764\001\7060\001\7062\4401\7064\411\7072\011\7100\3001\7106\001\7116\011\7133\001\7202\001\7204\001\7210\001\7212\001\7215\400\7227\001\7237\001\7243\001\7245\400\7247\400\7253\001\7260\001\7262\4401\7264\411\7271\011\7274\011\7275\400\7304\001\7306\001\7315\011\7331\001\7335\001\7427\001\7431\011\7464\001\7471\4401\7475\016\7507\001\7552\001\7576\011\7600\411\7604\011\7606\411\7610\4401\7613\001\7627\011\7674\011\7705\001\7707\411\7714\001\7717\400\10041\001\10047\001\10052\001\10055\4401\10060\011\10062\411\10067\011\10071\4401\10127\001\10131\011\10305\001\10366\001\10373\400\10531\001\10642\001\10771\001\11006\001\11106\001\11110\001\11115\001\11126\001\11130\001\11135\001\11206\001\11210\001\11215\001\11256\001\11260\001\11265\001\11276\001\11300\001\11305\001\11316\001\11326\001\11356\001\11416\001\11420\001\11425\001\11436\001\11506\001\11532\001\11574\001\11764\001\13166\001\13201\415\13232\001\13234\016\13360\001\13666\001\13675\011\13705\001\13707\411\13711\4401\13723\011\13732\001\13734\3001\13751\001\14012\016\14016\012\14031\001\14167\001\14250\001\14251\4400\17233\001\17371\001\17425\001\17435\001\17505\001\17515\001\17527\001\17531\400\17533\400\17535\400\17575\001\17664\001\17674\001\17677\7001\17701\016\17704\001\17714\001\17717\016\17723\001\17733\001\17737\016\17754\001\17757\016\17764\001\17774\001\17776\016\20012\015\20015\012\20017\1001\20047\016\20051\5415\20053\10417\20055\10023\20057\6422\20064\006\20106\016\20115\016\20157\012\20160\004\20171\004\20173\006\20176\016\20200\404\20211\004\20213\006\20216\016\20257\006\20343\011\20401\016\20403\7001\20406\016\20410\416\20412\7001\20423\001\20426\416\20430\016\20435\001\20443\016\20452\7001\20455\001\20457\406\20461\001\20463\416\20471\001\20472\016\20537\016\20603\001\20763\016\21021\016\21023\006\21361\016\21465\016\21572\001\21573\7000\21624\016\21626\416\21632\016\22046\016\22112\016\22233\004\22351\001\22352\004\22625\016\22767\016\23023\016\23161\016\23404\016\23411\016\23447\016\23513\016\23515\7000\23522\016\23526\016\23536\016\23547\016\23624\016\23657\016\23676\016\24377\016\27231\016\27363\016\27725\016\27773\016\30001\7015\30004\016\30007\001\30040\016\30051\001\30057\011\30061\416\30065\001\30067\016\30072\001\30077\016\30224\001\30232\011\30234\016\30236\001\30372\001\30374\7001\30376\001\30454\001\30616\001\30667\001\31034\001\31103\001\31173\001\31260\001\31313\001\31376\001\31566\001\31735\001\31776\001\46665\001\117645\001\122214\001\122241\016\122263\016\122300\016\122304\016\122306\016\153643\001\175055\001\175406\001\175427\001\175437\1011\175450\002\175452\3002\175466\002\175474\002\175476\002\175501\002\175504\002\175517\002\175661\003\176475\003\176477\016\176617\003\176707\003\176773\003\177043\011\177104\016\177117\016\177122\7010\177126\4016\177136\016\177140\3016\177142\7006\177144\3016\177146\016\177151\3016\177153\7006\177162\003\177164\003\177374\003\177377\5000\177402\016\177405\006\177412\016\177416\3010\177420\2404\177431\004\177433\7010\177440\016\177472\001\177500\016\177532\001\177536\016\177545\016\177676\001\177707\001\177717\001\177727\001\177734\001\177741\006\177744\016\177746\006\177756\016\177773\012\177775\016" + _r0.o = xmlvm_create_java_string_from_pool(152); + XMLVM_SOURCE_POSITION("Character.java", 460) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_bidiValues( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 462) + // "\000\000\1400\50000\000\24000\000\24000\000\000\4000\4000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\3000`\000\000\60000\60000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\37436\136142\174127\175017\17777\100074\147765\177777\117777\407\177714\140777\37000\177703\37777\003\7400\000\3003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\177400\7763" + _r0.o = xmlvm_create_java_string_from_pool(153); + XMLVM_SOURCE_POSITION("Character.java", 463) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_mirrored( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 468) + // "\037\017!\14014#\030%\14032'\030)\13025,\14430.\120300\140119\011;\030>\031@\030Z\001\134\12430^\13033`\13433z\002\174\12431\176\13031\237\017\241\14014\245\032\247\034\251\16033\253\16402\255\12031\260\15434\262\14413\264\5433\266\1034\270\14033\272\5402\274\17013\276\013\300\14001\326\001\330\14401\336\001\366\002\370\14402\377\002\467\1001\510\402\570\1001\576\402\600\002\602\001\606\1001\611\402\613\001\615\002\621\001\623\402\626\1001\630\001\633\002\635\001\637\402\646\1001\652\402\656\1001\661\402\663\001\667\402\671\1001\673\2402\675\1001\677\002\703\005\705\1401\707\402\711\1003\713\1401\734\402\757\1001\761\402\763\1003\766\1001\770\001\1037\1001\1063\1001\1255\002\1270\004\1272\033\1301\004\1317\033\1321\004\1337\033\1344\004\1355\033\1356\004\1516\006\1542\006\1565\033\1572\004\1576\030\1605\033\1610\14001\1612\001\1614\001\1617\001\1621\402\1641\001\1653\001\1716\002\1721\002\1724\001\1727\002\1757\1001\1763\002\2057\001\2137\002\2201\1001\2203\3034\2206\006\2211\007\2300\1001\2304\402\2310\402\2314\402\2365\1001\2371\1001\2526\001\2532\2030\2537\030\2607\002\2612\14024\2641\006\2671\006\2675\006\2701\3030\2704\14006\2752\005\2762\005\2764\030\3014\030\3033\14000\3037\14000\3072\005\3101\2404\3112\005\3125\006\3151\011\3155\030\3161\2406\3323\005\3325\2430\3334\006\3336\007\3344\006\3346\004\3350\006\3352\16006\3355\006\3371\011\3374\005\3376\034\3415\030\3420\10005\3422\3005\3454\005\3512\006\3645\005\3660\006\4402\006\4403\4000\4471\005\4475\2406\4500\010\4510\006\4514\010\4515\3000\4521\3005\4524\006\4541\005\4543\006\4545\030\4557\011\4560\030\4602\3010\4603\4000\4614\005\4620\005\4650\005\4660\005\4662\005\4671\005\4674\006\4700\010\4704\006\4710\010\4714\010\4715\3000\4727\4000\4735\005\4741\005\4743\006\4757\011\4761\005\4763\032\4771\013\4772\034\5002\006\5012\005\5020\005\5050\005\5060\005\5063\005\5066\005\5071\005\5074\006\5100\010\5102\006\5110\006\5115\006\5134\005\5136\005\5157\011\5161\006\5164\005\5202\006\5203\4000\5213\005\5215\2400\5221\005\5250\005\5260\005\5263\005\5271\005\5275\2406\5300\010\5305\006\5310\006\5311\4000\5314\010\5315\3000\5320\005\5340\005\5357\011\5402\3010\5403\4000\5414\005\5420\005\5450\005\5460\005\5463\005\5471\005\5475\2406\5501\3010\5503\006\5510\010\5514\010\5515\3000\5527\4006\5535\005\5541\005\5557\011\5560\034\5603\4006\5612\005\5620\005\5625\005\5632\005\5634\005\5637\005\5644\005\5652\005\5665\005\5671\005\5677\010\5701\4006\5702\010\5710\010\5714\010\5715\3000\5727\4000\5757\011\5762\013\6003\010\6014\005\6020\005\6050\005\6063\005\6071\005\6100\006\6104\010\6110\006\6115\006\6126\006\6141\005\6157\011\6203\010\6214\005\6220\005\6250\005\6263\005\6271\005\6300\3010\6304\010\6307\4006\6310\010\6313\010\6315\006\6326\010\6336\005\6341\005\6357\011\6403\010\6414\005\6420\005\6450\005\6471\005\6500\010\6503\006\6510\010\6514\010\6515\3000\6527\4000\6541\005\6557\011\6603\010\6626\005\6661\005\6673\005\6675\2400\6706\005\6712\006\6721\010\6724\006\6726\006\6737\010\6763\010\6764\030\7060\005\7062\3005\7064\2406\7072\006\7100\15005\7105\005\7107\3004\7116\006\7120\14011\7131\011\7133\030\7202\005\7204\005\7210\005\7212\005\7215\2400\7227\005\7237\005\7243\005\7245\2400\7247\2400\7253\005\7260\005\7262\3005\7264\2406\7271\006\7274\006\7275\2400\7304\005\7306\004\7315\006\7331\011\7335\005\7401\16005\7403\034\7422\030\7427\034\7431\006\7437\034\7451\011\7463\013\7471\3034\7475\13025\7477\010\7507\005\7552\005\7576\006\7600\4006\7604\006\7606\14006\7610\3005\7613\005\7627\006\7674\006\7705\034\7707\16006\7714\034\7717\16000\10041\005\10047\005\10052\005\10055\3010\10060\006\10062\4006\10067\006\10071\3010\10111\011\10117\030\10125\005\10127\010\10131\006\10305\001\10366\005\10373\14000\10531\005\10642\005\10771\005\11006\005\11106\005\11110\005\11115\005\11126\005\11130\005\11135\005\11206\005\11210\005\11215\005\11256\005\11260\005\11265\005\11276\005\11300\005\11305\005\11316\005\11326\005\11356\005\11416\005\11420\005\11425\005\11436\005\11506\005\11532\005\11550\030\11561\011\11574\013\11764\005\13154\005\13156\030\13166\005\13201\2414\13232\005\13234\12426\13352\005\13355\030\13360\013\13663\005\13666\010\13675\006\13705\010\13707\4006\13711\3010\13723\006\13732\030\13734\15030\13751\011\14005\030\14007\14024\14012\030\14016\020\14031\011\14102\005\14104\2005\14167\005\14250\005\14251\3000\17225\1001\17233\002\17371\1001\17407\002\17417\001\17425\002\17435\001\17447\002\17457\001\17467\002\17477\001\17505\002\17515\001\17527\002\17531\400\17533\400\17535\400\17540\402\17547\002\17557\001\17575\002\17607\002\17617\003\17627\002\17637\003\17647\002\17657\003\17664\002\17667\002\17673\001\17675\15403\17677\15402\17701\033\17704\002\17707\002\17713\001\17715\15403\17717\033\17723\002\17727\002\17733\001\17737\033\17747\002\17754\001\17757\033\17764\002\17767\002\17773\001\17775\15403\17776\033\20013\014\20017\020\20025\024\20027\030\20031\17035\20033\16425\20035\17035\20037\16425\20047\030\20051\7015\20056\020\20060\6030\20070\030\20072\16436\20076\030\20100\027\20103\030\20105\12431\20106\026\20115\030\20157\020\20160\013\20171\013\20174\031\20176\12426\20200\1013\20211\013\20214\031\20216\12426\20257\032\20334\006\20340\007\20342\3007\20343\3400\20401\034\20403\16001\20406\034\20410\434\20412\16002\20415\001\20417\002\20422\001\20424\1034\20426\434\20430\034\20435\001\20443\034\20452\16001\20455\001\20457\1034\20461\001\20463\434\20465\2402\20470\005\20472\1034\20537\013\20603\012\20624\031\20631\034\20633\031\20637\034\20641\16031\20644\14434\20647\16031\20655\034\20657\16031\20715\034\20717\031\20721\034\20725\16031\20763\034\21361\031\21407\034\21413\031\21437\034\21441\031\21450\034\21452\12426\21573\034\21632\034\22046\034\22112\034\22233\013\22351\034\22352\013\22625\034\22666\034\22670\14434\22700\034\22702\14434\22767\034\23023\034\23156\034\23160\14434\23161\16000\23404\034\23411\034\23447\034\23513\034\23515\16000\23522\034\23526\034\23536\034\23547\034\23623\013\23624\034\23657\034\23676\034\24377\034\27231\034\27363\034\27725\034\27773\034\30001\14014\30003\030\30005\2034\30007\5005\30021\13025\30023\034\30033\13025\30035\12424\30037\026\30041\5034\30051\012\30057\006\30061\2024\30065\004\30067\034\30072\012\30077\034\30224\005\30232\006\30234\033\30236\004\30372\005\30374\13404\30376\004\30454\005\30616\005\30621\034\30625\013\30637\034\30667\005\31034\034\31051\013\31103\034\31173\034\31200\16013\31211\013\31260\034\31313\034\31376\034\31566\034\31735\034\31776\034\46665\005\117645\005\122214\005\122241\034\122263\034\122300\034\122304\034\122306\034\153643\005\157777\023\174377\022\175055\005\175406\002\175427\002\175437\2406\175450\005\175452\14405\175466\005\175474\005\175476\005\175501\005\175504\005\175661\005\176475\005\176477\13025\176617\005\176707\005\176773\005\177043\006\177061\12030\177063\13424\177065\12427\177104\12426\177114\030\177117\027\177122\030\177127\030\177131\12424\177136\12426\177141\030\177144\12031\177146\031\177152\15030\177153\14000\177162\005\177164\005\177374\005\177377\10000\177403\030\177405\14032\177407\030\177411\13025\177414\14430\177416\12030\177420\14011\177431\011\177433\030\177436\031\177440\030\177472\001\177474\12430\177476\13033\177500\13433\177532\002\177534\12431\177536\13031\177542\14025\177544\13030\177546\13405\177557\005\177561\2404\177635\005\177637\004\177676\005\177707\005\177717\005\177727\005\177734\005\177741\032\177743\15431\177745\15034\177746\032\177751\14434\177754\031\177756\034\177773\020\177775\034" + _r0.o = xmlvm_create_java_string_from_pool(154); + XMLVM_SOURCE_POSITION("Character.java", 469) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_typeValues( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 471) + _r0.i = 1000; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + _r1.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 472) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r4.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r6.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r6.i; + _r1.i = 3; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 5; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r5.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r6.i; + _r1.i = 7; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 8; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 10; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 11; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 12; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 13; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 14; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r6.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r6.i; + _r1.i = 16; + XMLVM_SOURCE_POSITION("Character.java", 473) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 17; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 18; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 19; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 20; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 21; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 22; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 23; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 26; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r6.i; + _r1.i = 28; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 29; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 30; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 31; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 32; + _r2.i = 12; + XMLVM_SOURCE_POSITION("Character.java", 474) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 33; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 34; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 35; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 36; + _r2.i = 26; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 37; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 38; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 39; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 40; + _r2.i = 21; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 41; + _r2.i = 22; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 42; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 43; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 44; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 45; + _r2.i = 20; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 46; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 47; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 48; + _r2.i = 9; + XMLVM_SOURCE_POSITION("Character.java", 475) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 49; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 50; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 51; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 52; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 53; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 54; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 55; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 56; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 57; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 58; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 59; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 60; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 61; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 62; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 63; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 64; + _r2.i = 24; + XMLVM_SOURCE_POSITION("Character.java", 476) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 65; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 66; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 67; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 68; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 69; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 70; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 71; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 72; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 73; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 74; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 75; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 76; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 77; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 78; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 79; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 80; + XMLVM_SOURCE_POSITION("Character.java", 477) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 81; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 82; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 83; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 84; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 85; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 86; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 87; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 88; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 89; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 90; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 91; + _r2.i = 21; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 92; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 93; + _r2.i = 22; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 94; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 95; + _r2.i = 23; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 96; + XMLVM_SOURCE_POSITION("Character.java", 478) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 97; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 98; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 99; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 100; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 101; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 102; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 103; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 104; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 105; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 106; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 107; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 108; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 109; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 110; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 111; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 112; + XMLVM_SOURCE_POSITION("Character.java", 479) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 113; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 114; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 115; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 116; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 117; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 118; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 119; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 120; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 121; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 122; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 123; + _r2.i = 21; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 124; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 125; + _r2.i = 22; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 126; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 127; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 128; + XMLVM_SOURCE_POSITION("Character.java", 480) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 129; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 130; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 131; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 132; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 133; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 134; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 135; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 136; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 137; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 138; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 139; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 140; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 141; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 142; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 143; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 144; + XMLVM_SOURCE_POSITION("Character.java", 481) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 145; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 146; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 147; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 148; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 149; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 150; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 151; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 152; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 153; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 154; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 155; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 156; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 157; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 158; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 159; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 160; + _r2.i = 12; + XMLVM_SOURCE_POSITION("Character.java", 482) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 161; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 162; + _r2.i = 26; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 163; + _r2.i = 26; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 164; + _r2.i = 26; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 165; + _r2.i = 26; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 166; + _r2.i = 28; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 167; + _r2.i = 28; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 168; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 169; + _r2.i = 28; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 170; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 171; + _r2.i = 29; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 172; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 173; + _r2.i = 16; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 174; + _r2.i = 28; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 175; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 176; + _r2.i = 28; + XMLVM_SOURCE_POSITION("Character.java", 483) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 177; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 178; + _r2.i = 11; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 179; + _r2.i = 11; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 180; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 181; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 182; + _r2.i = 28; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 183; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 184; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 185; + _r2.i = 11; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 186; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 187; + _r2.i = 30; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 188; + _r2.i = 11; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 189; + _r2.i = 11; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 190; + _r2.i = 11; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 191; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 192; + XMLVM_SOURCE_POSITION("Character.java", 484) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 193; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 194; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 195; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 196; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 197; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 198; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 199; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 200; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 201; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 202; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 203; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 204; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 205; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 206; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 207; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 208; + XMLVM_SOURCE_POSITION("Character.java", 485) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 209; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 210; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 211; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 212; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 213; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 214; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 215; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 216; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 217; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 218; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 219; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 220; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 221; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 222; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 223; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 224; + XMLVM_SOURCE_POSITION("Character.java", 486) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 225; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 226; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 227; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 228; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 229; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 230; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 231; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 232; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 233; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 234; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 235; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 236; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 237; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 238; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 239; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 240; + XMLVM_SOURCE_POSITION("Character.java", 487) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 241; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 242; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 243; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 244; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 245; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 246; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 247; + _r2.i = 25; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 248; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 249; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 250; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 251; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 252; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 253; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 254; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 255; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 256; + XMLVM_SOURCE_POSITION("Character.java", 488) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 257; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 258; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 259; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 260; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 261; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 262; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 263; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 264; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 265; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 266; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 267; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 268; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 269; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 270; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 271; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 272; + XMLVM_SOURCE_POSITION("Character.java", 489) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 273; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 274; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 275; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 276; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 277; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 278; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 279; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 280; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 281; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 282; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 283; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 284; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 285; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 286; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 287; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 288; + XMLVM_SOURCE_POSITION("Character.java", 490) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 289; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 290; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 291; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 292; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 293; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 294; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 295; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 296; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 297; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 298; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 299; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 300; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 301; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 302; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 303; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 304; + XMLVM_SOURCE_POSITION("Character.java", 491) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 305; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 306; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 307; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 308; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 309; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 310; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 311; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 312; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 313; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 314; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 315; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 316; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 317; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 318; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 319; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 320; + XMLVM_SOURCE_POSITION("Character.java", 492) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 321; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 322; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 323; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 324; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 325; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 326; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 327; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 328; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 329; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 330; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 331; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 332; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 333; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 334; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 335; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 336; + XMLVM_SOURCE_POSITION("Character.java", 493) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 337; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 338; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 339; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 340; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 341; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 342; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 343; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 344; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 345; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 346; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 347; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 348; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 349; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 350; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 351; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 352; + XMLVM_SOURCE_POSITION("Character.java", 494) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 353; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 354; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 355; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 356; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 357; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 358; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 359; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 360; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 361; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 362; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 363; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 364; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 365; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 366; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 367; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 368; + XMLVM_SOURCE_POSITION("Character.java", 495) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 369; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 370; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 371; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 372; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 373; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 374; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 375; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 376; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 377; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 378; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 379; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 380; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 381; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 382; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 383; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 384; + XMLVM_SOURCE_POSITION("Character.java", 496) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 385; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 386; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 387; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 388; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 389; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 390; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 391; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 392; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 393; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 394; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 395; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 396; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 397; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 398; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 399; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 400; + XMLVM_SOURCE_POSITION("Character.java", 497) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 401; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 402; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 403; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 404; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 405; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 406; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 407; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 408; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 409; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 410; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 411; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 412; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 413; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 414; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 415; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 416; + XMLVM_SOURCE_POSITION("Character.java", 498) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 417; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 418; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 419; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 420; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 421; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 422; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 423; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 424; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 425; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 426; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 427; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 428; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 429; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 430; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 431; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 432; + XMLVM_SOURCE_POSITION("Character.java", 499) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 433; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 434; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 435; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 436; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 437; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 438; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 439; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 440; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 441; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 442; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 443; + _r2.i = 5; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 444; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 445; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 446; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 447; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 448; + _r2.i = 5; + XMLVM_SOURCE_POSITION("Character.java", 500) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 449; + _r2.i = 5; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 450; + _r2.i = 5; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 451; + _r2.i = 5; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 452; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 453; + _r2.i = 3; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 454; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 455; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 456; + _r2.i = 3; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 457; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 458; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 459; + _r2.i = 3; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 460; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 461; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 462; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 463; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 464; + XMLVM_SOURCE_POSITION("Character.java", 501) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 465; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 466; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 467; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 468; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 469; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 470; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 471; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 472; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 473; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 474; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 475; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 476; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 477; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 478; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 479; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 480; + XMLVM_SOURCE_POSITION("Character.java", 502) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 481; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 482; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 483; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 484; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 485; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 486; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 487; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 488; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 489; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 490; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 491; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 492; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 493; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 494; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 495; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 496; + XMLVM_SOURCE_POSITION("Character.java", 503) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 497; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 498; + _r2.i = 3; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 499; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 500; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 501; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 502; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 503; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 504; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 505; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 506; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 507; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 508; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 509; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 510; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 511; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 512; + XMLVM_SOURCE_POSITION("Character.java", 504) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 513; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 514; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 515; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 516; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 517; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 518; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 519; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 520; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 521; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 522; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 523; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 524; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 525; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 526; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 527; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 528; + XMLVM_SOURCE_POSITION("Character.java", 505) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 529; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 530; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 531; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 532; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 533; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 534; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 535; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 536; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 537; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 538; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 539; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 540; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 541; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 542; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 543; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 544; + XMLVM_SOURCE_POSITION("Character.java", 506) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 545; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 546; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 547; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 548; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 549; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 550; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 551; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 552; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 553; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 554; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 555; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 556; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 557; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 558; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 559; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 560; + XMLVM_SOURCE_POSITION("Character.java", 507) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 561; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 562; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 563; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 564; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 565; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 566; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 592; + XMLVM_SOURCE_POSITION("Character.java", 509) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 593; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 594; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 595; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 596; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 597; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 598; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 599; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 600; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 601; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 602; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 603; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 604; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 605; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 606; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 607; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 608; + XMLVM_SOURCE_POSITION("Character.java", 510) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 609; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 610; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 611; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 612; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 613; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 614; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 615; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 616; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 617; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 618; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 619; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 620; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 621; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 622; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 623; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 624; + XMLVM_SOURCE_POSITION("Character.java", 511) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 625; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 626; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 627; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 628; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 629; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 630; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 631; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 632; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 633; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 634; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 635; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 636; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 637; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 638; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 639; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 640; + XMLVM_SOURCE_POSITION("Character.java", 512) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 641; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 642; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 643; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 644; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 645; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 646; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 647; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 648; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 649; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 650; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 651; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 652; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 653; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 654; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 655; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 656; + XMLVM_SOURCE_POSITION("Character.java", 513) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 657; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 658; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 659; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 660; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 661; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 662; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 663; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 664; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 665; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 666; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 667; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 668; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 669; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 670; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 671; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 672; + XMLVM_SOURCE_POSITION("Character.java", 514) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 673; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 674; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 675; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 676; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 677; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 678; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 679; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 680; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 681; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 682; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 683; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 684; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 685; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 686; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 687; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 688; + _r2.i = 4; + XMLVM_SOURCE_POSITION("Character.java", 515) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 689; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 690; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 691; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 692; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 693; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 694; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 695; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 696; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 697; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 698; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 699; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 700; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 701; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 702; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 703; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 704; + _r2.i = 4; + XMLVM_SOURCE_POSITION("Character.java", 516) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 705; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 706; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 707; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 708; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 709; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 710; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 711; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 712; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 713; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 714; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 715; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 716; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 717; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 718; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 719; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 720; + _r2.i = 4; + XMLVM_SOURCE_POSITION("Character.java", 517) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 721; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 722; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 723; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 724; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 725; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 726; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 727; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 728; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 729; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 730; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 731; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 732; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 733; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 734; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 735; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 736; + _r2.i = 4; + XMLVM_SOURCE_POSITION("Character.java", 518) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 737; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 738; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 739; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 740; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 741; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 742; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 743; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 744; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 745; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 746; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 747; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 748; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 749; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 750; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 751; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 752; + XMLVM_SOURCE_POSITION("Character.java", 519) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 753; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 754; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 755; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 756; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 757; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 758; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 759; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 760; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 761; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 762; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 763; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 764; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 765; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 766; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 767; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 768; + XMLVM_SOURCE_POSITION("Character.java", 520) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 769; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 770; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 771; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 772; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 773; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 774; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 775; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 776; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 777; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 778; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 779; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 780; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 781; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 782; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 783; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 784; + XMLVM_SOURCE_POSITION("Character.java", 521) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 785; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 786; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 787; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 788; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 789; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 790; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 791; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 792; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 793; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 794; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 795; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 796; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 797; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 798; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 799; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 800; + XMLVM_SOURCE_POSITION("Character.java", 522) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 801; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 802; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 803; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 804; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 805; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 806; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 807; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 808; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 809; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 810; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 811; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 812; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 813; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 814; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 815; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 816; + XMLVM_SOURCE_POSITION("Character.java", 523) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 817; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 818; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 819; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 820; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 821; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 822; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 823; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 824; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 825; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 826; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 827; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 828; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 829; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 830; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 831; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 832; + XMLVM_SOURCE_POSITION("Character.java", 524) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 833; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 834; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 835; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 836; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 837; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 838; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 839; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 840; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 841; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 842; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 843; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 844; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 845; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 846; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 847; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 848; + XMLVM_SOURCE_POSITION("Character.java", 525) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 849; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 850; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 851; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 852; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 853; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 854; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 855; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 861; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 862; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 863; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 864; + XMLVM_SOURCE_POSITION("Character.java", 526) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 865; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 866; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 867; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 868; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 869; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 870; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 871; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 872; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 873; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 874; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 875; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 876; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 877; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 878; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 879; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + _r1.i = 884; + XMLVM_SOURCE_POSITION("Character.java", 527) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 885; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 890; + _r2.i = 4; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 894; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 900; + XMLVM_SOURCE_POSITION("Character.java", 528) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 901; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + _r1.i = 902; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 903; + _r2.i = 24; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 904; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 905; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 906; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 908; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 910; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 911; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 912; + XMLVM_SOURCE_POSITION("Character.java", 529) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 913; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 914; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 915; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 916; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 917; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 918; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 919; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 920; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 921; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 922; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 923; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 924; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 925; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 926; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 927; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 928; + XMLVM_SOURCE_POSITION("Character.java", 530) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 929; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 931; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 932; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 933; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 934; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 935; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 936; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 937; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 938; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 939; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 940; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 941; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 942; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 943; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 944; + XMLVM_SOURCE_POSITION("Character.java", 531) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 945; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 946; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 947; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 948; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 949; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 950; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 951; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 952; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 953; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 954; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 955; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 956; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 957; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 958; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 959; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 960; + XMLVM_SOURCE_POSITION("Character.java", 532) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 961; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 962; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 963; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 964; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 965; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 966; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 967; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 968; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 969; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 970; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 971; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 972; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 973; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 974; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 976; + XMLVM_SOURCE_POSITION("Character.java", 533) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 977; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 978; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 979; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 980; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 981; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 982; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 983; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 984; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 985; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 986; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 987; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 988; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 989; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 990; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 991; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 992; + XMLVM_SOURCE_POSITION("Character.java", 534) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 993; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 994; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 995; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 996; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 997; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 998; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + _r1.i = 999; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + java_lang_Character_PUT_typeValuesCache( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 540) + // "z\177740\265\1347\366\177740\376\177740\377y\100457\177777\461\177430\100467\177777\100510\177777\100567\177777\100576\177777\577\177324\100605\177777\610\177777\614\177777\622\177777\625a\631\177777\100645\177777\650\177777\655\177777\660\177777\100666\177777\671\177777\675\177777\6778\705\177777\706\177776\710\177777\711\177776\713\177777\714\177776\100734\177777\735\177661\100757\177777\762\177777\763\177776\765\177777\101037\177777\101063\177777\1123\177456\1124\177462\1127\177463\1131\177466\1133\177465\1140\177463\1143\177461\1150\177457\1151\177455\1157\177455\1162\177453\1165\177452\1200\177446\1203\177446\1210\177446\1213\177447\1222\177445\1505T\1654\177732\1657\177733\1701\177740\1702\177741\1713\177740\1714\177700\1716\177701\1720\177702\1721\177707\1725\177721\1726\177712\101757\177777\1760\177652\1761\177660\1762\177661\2117\177740\2137\177660\102201\177777\102277\177777\102304\177777\2310\177777\2314\177777\102365\177777\2371\177777\2606\177720\117225\177777\17233\177705\117371\177777\17407\010\17425\010\17447\010\17467\010\17505\010\117527\010\17547\010\17561J\17565V\17567d\17571\200\17573p\17575\176\17607\010\17627\010\17647\010\17661\010\17663\011\17676\161733\17703\011\17721\010\17741\010\17745\007\17763\011\20577\177760\22351\177746\177532\177740" + _r0.o = xmlvm_create_java_string_from_pool(155); + XMLVM_SOURCE_POSITION("Character.java", 541) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_uppercaseValues( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 543) + _r0.i = 819; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_INT[]){924, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 247, 216, 217, 218, 219, 220, 221, 222, 376, 256, 256, 258, 258, 260, 260, 262, 262, 264, 264, 266, 266, 268, 268, 270, 270, 272, 272, 274, 274, 276, 276, 278, 278, 280, 280, 282, 282, 284, 284, 286, 286, 288, 288, 290, 290, 292, 292, 294, 294, 296, 296, 298, 298, 300, 300, 302, 302, 304, 73, 306, 306, 308, 308, 310, 310, 312, 313, 313, 315, 315, 317, 317, 319, 319, 321, 321, 323, 323, 325, 325, 327, 327, 329, 330, 330, 332, 332, 334, 334, 336, 336, 338, 338, 340, 340, 342, 342, 344, 344, 346, 346, 348, 348, 350, 350, 352, 352, 354, 354, 356, 356, 358, 358, 360, 360, 362, 362, 364, 364, 366, 366, 368, 368, 370, 370, 372, 372, 374, 374, 376, 377, 377, 379, 379, 381, 381, 83, 384, 385, 386, 386, 388, 388, 390, 391, 391, 393, 394, 395, 395, 397, 398, 399, 400, 401, 401, 403, 404, 502, 406, 407, 408, 408, 410, 411, 412, 413, 544, 415, 416, 416, 418, 418, 420, 420, 422, 423, 423, 425, 426, 427, 428, 428, 430, 431, 431, 433, 434, 435, 435, 437, 437, 439, 440, 440, 442, 443, 444, 444, 446, 503, 448, 449, 450, 451, 452, 452, 452, 455, 455, 455, 458, 458, 458, 461, 461, 463, 463, 465, 465, 467, 467, 469, 469, 471, 471, 473, 473, 475, 475, 398, 478, 478, 480, 480, 482, 482, 484, 484, 486, 486, 488, 488, 490, 490, 492, 492, 494, 494, 496, 497, 497, 497, 500, 500, 502, 503, 504, 504, 506, 506, 508, 508, 510, 510, 512, 512, 514, 514, 516, 516, 518, 518, 520, 520, 522, 522, 524, 524, 526, 526, 528, 528, 530, 530, 532, 532, 534, 534, 536, 536, 538, 538, 540, 540, 542, 542, 544, 545, 546, 546, 548, 548, 550, 550, 552, 552, 554, 554, 556, 556, 558, 558, 560, 560, 562, 562, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 385, 390, 597, 393, 394, 600, 399, 602, 400, 604, 605, 606, 607, 403, 609, 610, 404, 612, 613, 614, 615, 407, 406, 618, 619, 620, 621, 622, 412, 624, 625, 413, 627, 628, 415, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 422, 641, 642, 425, 644, 645, 646, 647, 430, 649, 433, 434, 652, 653, 654, 655, 656, 657, 439, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 921, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 902, 904, 905, 906, 944, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 931, 931, 932, 933, 934, 935, 936, 937, 938, 939, 908, 910, 911, 975, 914, 920, 978, 979, 980, 934, 928, 983, 984, 984, 986, 986, 988, 988, 990, 990, 992, 992, 994, 994, 996, 996, 998, 998, }); + java_lang_Character_PUT_uppercaseValuesCache( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 599) + // "Z \326 \336 \100456\001\460\177471\100466\001\100507\001\100566\001\570\177607\100575\001\601\322\100604\001\606\316\607\001\612\315\613\001\616O\617\312\620\313\621\001\623\315\624\317\626\323\627\321\630\001\634\323\635\325\637\326\100644\001\646\332\647\001\651\332\654\001\656\332\657\001\662\331\100665\001\667\333\670\001\674\001\704\002\705\001\707\002\710\001\712\002\100733\001\100756\001\761\002\100764\001\766\177637\767\177710\101036\001\101062\001\1606&\1612%\1614@\1617?\1641 \1653 \101756\001\2017P\2057 \102200\001\102276\001\102303\001\2307\001\2313\001\102364\001\2370\001\25260\117224\001\117370\001\17417\177770\17435\177770\17457\177770\17477\177770\17515\177770\117537\177770\17557\177770\17617\177770\17637\177770\17657\177770\17671\177770\17673\177666\17674\177767\17713\177652\17714\177767\17731\177770\17733\177634\17751\177770\17753\177620\17754\177771\17771\177600\17773\177602\17774\177767\20446\161243\20452\157501\20453\157672\20557\020\22317\032\177472 " + _r0.o = xmlvm_create_java_string_from_pool(156); + XMLVM_SOURCE_POSITION("Character.java", 600) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_lowercaseValues( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 602) + _r0.i = 808; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_INT[]){224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 215, 248, 249, 250, 251, 252, 253, 254, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 257, 257, 259, 259, 261, 261, 263, 263, 265, 265, 267, 267, 269, 269, 271, 271, 273, 273, 275, 275, 277, 277, 279, 279, 281, 281, 283, 283, 285, 285, 287, 287, 289, 289, 291, 291, 293, 293, 295, 295, 297, 297, 299, 299, 301, 301, 303, 303, 105, 305, 307, 307, 309, 309, 311, 311, 312, 314, 314, 316, 316, 318, 318, 320, 320, 322, 322, 324, 324, 326, 326, 328, 328, 329, 331, 331, 333, 333, 335, 335, 337, 337, 339, 339, 341, 341, 343, 343, 345, 345, 347, 347, 349, 349, 351, 351, 353, 353, 355, 355, 357, 357, 359, 359, 361, 361, 363, 363, 365, 365, 367, 367, 369, 369, 371, 371, 373, 373, 375, 375, 255, 378, 378, 380, 380, 382, 382, 383, 384, 595, 387, 387, 389, 389, 596, 392, 392, 598, 599, 396, 396, 397, 477, 601, 603, 402, 402, 608, 611, 405, 617, 616, 409, 409, 410, 411, 623, 626, 414, 629, 417, 417, 419, 419, 421, 421, 640, 424, 424, 643, 426, 427, 429, 429, 648, 432, 432, 650, 651, 436, 436, 438, 438, 658, 441, 441, 442, 443, 445, 445, 446, 447, 448, 449, 450, 451, 454, 454, 454, 457, 457, 457, 460, 460, 460, 462, 462, 464, 464, 466, 466, 468, 468, 470, 470, 472, 472, 474, 474, 476, 476, 477, 479, 479, 481, 481, 483, 483, 485, 485, 487, 487, 489, 489, 491, 491, 493, 493, 495, 495, 496, 499, 499, 499, 501, 501, 405, 447, 505, 505, 507, 507, 509, 509, 511, 511, 513, 513, 515, 515, 517, 517, 519, 519, 521, 521, 523, 523, 525, 525, 527, 527, 529, 529, 531, 531, 533, 533, 535, 535, 537, 537, 539, 539, 541, 541, 543, 543, 414, 545, 547, 547, 549, 549, 551, 551, 553, 553, 555, 555, 557, 557, 559, 559, 561, 561, 563, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 940, 903, 941, 942, 943, 907, 972, 909, 973, 974, 912, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 930, 963, 964, 965, 966, 967, 968, 969, 970, 971, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 985, 985, 987, 987, 989, 989, 991, 991, 993, 993, 995, 995, 997, 997, 999, 999, }); + java_lang_Character_PUT_lowercaseValuesCache( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 657) + // "90Z7zW\3151\3140\3371\3360\4557\4546\4757\4746\5157\5146\5357\5346\5557\5546\5757\5746\6157\6146\6357\6346\6557\6546\7131\7120\7331\7320\7451\7440\10111\10100\11561\11550\13751\13740\14031\14020\177431\177420\177472\177427\177532\177467" + _r0.o = xmlvm_create_java_string_from_pool(157); + XMLVM_SOURCE_POSITION("Character.java", 658) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_digitValues( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 660) + // "\002\002\002\002\002\002\002\002\002\000\000\000\000\000\002\002\002\002\002\002\002\002\002\002\002\002\002\002\000\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000\002\002\002\002\002\002\002\002\002\002\000\000\000\000\000\000\000\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\000\000\000\000\003\000\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\000\000\000\000\002" + _r0.o = xmlvm_create_java_string_from_pool(158); + XMLVM_SOURCE_POSITION("Character.java", 661) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_typeTags( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 663) + _r0.i = 19; + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 664) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r4.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r4.i; + XMLVM_SOURCE_POSITION("Character.java", 665) + _r1.i = 3; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r1.i; + _r1.i = 3; + _r2.i = 4; + XMLVM_SOURCE_POSITION("Character.java", 666) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 4; + _r2.i = 5; + XMLVM_SOURCE_POSITION("Character.java", 667) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 5; + XMLVM_SOURCE_POSITION("Character.java", 668) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + XMLVM_SOURCE_POSITION("Character.java", 669) + _r1.i = 7; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r5.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r1.i; + _r1.i = 7; + _r2.i = 10; + XMLVM_SOURCE_POSITION("Character.java", 670) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 8; + _r2.i = 11; + XMLVM_SOURCE_POSITION("Character.java", 671) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 9; + _r2.i = 12; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 10; + _r2.i = 13; + XMLVM_SOURCE_POSITION("Character.java", 672) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 11; + _r2.i = 14; + XMLVM_SOURCE_POSITION("Character.java", 673) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 12; + XMLVM_SOURCE_POSITION("Character.java", 674) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + _r1.i = 13; + XMLVM_SOURCE_POSITION("Character.java", 675) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r1.i = 14; + _r2.i = 16; + XMLVM_SOURCE_POSITION("Character.java", 676) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + XMLVM_SOURCE_POSITION("Character.java", 677) + _r1.i = 17; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r6.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r1.i; + _r1.i = 16; + _r2.i = 18; + XMLVM_SOURCE_POSITION("Character.java", 678) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 17; + _r2.i = 8; + XMLVM_SOURCE_POSITION("Character.java", 679) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 18; + _r2.i = 9; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + java_lang_Character_PUT_DIRECTIONALITY( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 688) + // "\705\705\710\710\713\713\762\762" + _r0.o = xmlvm_create_java_string_from_pool(159); + XMLVM_SOURCE_POSITION("Character.java", 689) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_titlecaseValues( _r0.o); + XMLVM_SOURCE_POSITION("Character.java", 694) + // "90Z7zW\263\260\271\270\276\000\3151\3140\3371\3360\4557\4546\4757\4746\4767\4763\4771\4751\5157\5146\5357\5346\5557\5546\5760\5746\5761\5615\5762\4012\6157\6146\6357\6346\6557\6546\7131\7120\7331\7320\7451\7440\10111\10100\11562\11550\11563\11537\11564\11526\11565\11515\11566\11504\11567\11473\11570\11462\11571\11451\11572\11440\11573\11427\11574\166154\13360\13335\13751\13740\14031\14020\20160\20160\20171\20160\20211\20200\20536\000\20537\20536\20553\20537\20554\20472\20555\20411\20556\17572\20557\16607\20573\20557\20574\20512\20575\20431\20576\17612\20577\16627\20600\16630\20601\6771\20602\175162\22163\22137\22207\22163\22233\22207\22352\22352\23577\23565\23611\23577\23623\23611\30007\30007\30051\30040\30070\30056\30071\30045\30072\30034\31211\31177\177431\177420\177472\177427\177532\177467" + _r0.o = xmlvm_create_java_string_from_pool(160); + XMLVM_SOURCE_POSITION("Character.java", 695) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_getValue__(_r0.o); + java_lang_Character_PUT_numericValues( _r0.o); + XMLVM_EXIT_METHOD() + return; + label4189:; + _r0.i = 0; + goto label16; + label4192:; + label5834:; + //XMLVM_END_WRAPPER +} + +void java_lang_Character___INIT____char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character___INIT____char] + XMLVM_ENTER_METHOD("java.lang.Character", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 1975) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Character.java", 1976) + XMLVM_CHECK_NPE(0) + ((java_lang_Character*) _r0.o)->fields.java_lang_Character.value_ = _r1.i; + XMLVM_SOURCE_POSITION("Character.java", 1977) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_Character_charValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character_charValue__] + XMLVM_ENTER_METHOD("java.lang.Character", "charValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Character.java", 1985) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Character*) _r1.o)->fields.java_lang_Character.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_compareTo___java_lang_Character(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character_compareTo___java_lang_Character] + XMLVM_ENTER_METHOD("java.lang.Character", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Character.java", 2003) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Character*) _r2.o)->fields.java_lang_Character.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Character*) _r3.o)->fields.java_lang_Character.value_; + _r0.i = _r0.i - _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Character_valueOf___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_valueOf___char] + XMLVM_ENTER_METHOD("java.lang.Character", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2018) + _r0.i = 512; + if (_r1.i < _r0.i) goto label10; + XMLVM_SOURCE_POSITION("Character.java", 2019) + _r0.o = __NEW_java_lang_Character(); + XMLVM_CHECK_NPE(0) + java_lang_Character___INIT____char(_r0.o, _r1.i); + label9:; + XMLVM_SOURCE_POSITION("Character.java", 2021) + XMLVM_EXIT_METHOD() + return _r0.o; + label10:; + + + // Red class access removed: java.lang.Character$valueOfCache::access$0 + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isValidCodePoint___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isValidCodePoint___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isValidCodePoint", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2050) + if (_r1.i < 0) goto label9; + _r0.i = 1114111; + if (_r0.i < _r1.i) goto label9; + _r0.i = 1; + label8:; + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + _r0.i = 0; + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isSupplementaryCodePoint___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isSupplementaryCodePoint___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isSupplementaryCodePoint", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2064) + _r0.i = 65536; + if (_r0.i > _r1.i) goto label11; + _r0.i = 1114111; + if (_r0.i < _r1.i) goto label11; + _r0.i = 1; + label10:; + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + _r0.i = 0; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isHighSurrogate___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isHighSurrogate___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isHighSurrogate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2080) + _r0.i = 55296; + if (_r0.i > _r1.i) goto label12; + _r0.i = 56319; + if (_r0.i < _r1.i) goto label12; + _r0.i = 1; + label11:; + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + _r0.i = 0; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isLowSurrogate___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isLowSurrogate___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isLowSurrogate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2096) + _r0.i = 56320; + if (_r0.i > _r1.i) goto label12; + _r0.i = 57343; + if (_r0.i < _r1.i) goto label12; + _r0.i = 1; + label11:; + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + _r0.i = 0; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isSurrogatePair___char_char(JAVA_CHAR n1, JAVA_CHAR n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isSurrogatePair___char_char] + XMLVM_ENTER_METHOD("java.lang.Character", "isSurrogatePair", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.i = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Character.java", 2114) + _r0.i = java_lang_Character_isHighSurrogate___char(_r1.i); + if (_r0.i == 0) goto label14; + _r0.i = java_lang_Character_isLowSurrogate___char(_r2.i); + if (_r0.i == 0) goto label14; + _r0.i = 1; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 0; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_charCount___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_charCount___int] + XMLVM_ENTER_METHOD("java.lang.Character", "charCount", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2133) + _r0.i = 65536; + if (_r1.i < _r0.i) goto label6; + _r0.i = 2; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 1; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_toCodePoint___char_char(JAVA_CHAR n1, JAVA_CHAR n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toCodePoint___char_char] + XMLVM_ENTER_METHOD("java.lang.Character", "toCodePoint", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("Character.java", 2154) + _r0.i = _r2.i & 1023; + _r0.i = _r0.i << 10; + _r1.i = _r3.i & 1023; + _r0.i = _r0.i | _r1.i; + _r1.i = 65536; + _r0.i = _r0.i + _r1.i; + XMLVM_SOURCE_POSITION("Character.java", 2156) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointAt___java_lang_CharSequence_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointAt___java_lang_CharSequence_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Character.java", 2182) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2183) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2185) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r3.o); + XMLVM_SOURCE_POSITION("Character.java", 2186) + if (_r4.i < 0) goto label16; + if (_r4.i < _r0.i) goto label22; + label16:; + XMLVM_SOURCE_POSITION("Character.java", 2187) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("Character.java", 2190) + _r1.i = _r4.i + 1; + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r3.o, _r4.i); + XMLVM_SOURCE_POSITION("Character.java", 2191) + if (_r1.i < _r0.i) goto label32; + _r0 = _r2; + label31:; + XMLVM_SOURCE_POSITION("Character.java", 2192) + XMLVM_SOURCE_POSITION("Character.java", 2198) + XMLVM_EXIT_METHOD() + return _r0.i; + label32:; + XMLVM_SOURCE_POSITION("Character.java", 2194) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r3.o, _r1.i); + XMLVM_SOURCE_POSITION("Character.java", 2195) + _r1.i = java_lang_Character_isSurrogatePair___char_char(_r2.i, _r0.i); + if (_r1.i == 0) goto label47; + XMLVM_SOURCE_POSITION("Character.java", 2196) + _r0.i = java_lang_Character_toCodePoint___char_char(_r2.i, _r0.i); + goto label31; + label47:; + _r0 = _r2; + goto label31; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointAt___char_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointAt___char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Character.java", 2224) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2225) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2227) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_SOURCE_POSITION("Character.java", 2228) + if (_r4.i < 0) goto label13; + if (_r4.i < _r0.i) goto label19; + label13:; + XMLVM_SOURCE_POSITION("Character.java", 2229) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("Character.java", 2232) + _r1.i = _r4.i + 1; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_SOURCE_POSITION("Character.java", 2233) + if (_r1.i < _r0.i) goto label27; + _r0 = _r2; + label26:; + XMLVM_SOURCE_POSITION("Character.java", 2234) + XMLVM_SOURCE_POSITION("Character.java", 2240) + XMLVM_EXIT_METHOD() + return _r0.i; + label27:; + XMLVM_SOURCE_POSITION("Character.java", 2236) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("Character.java", 2237) + _r1.i = java_lang_Character_isSurrogatePair___char_char(_r2.i, _r0.i); + if (_r1.i == 0) goto label40; + XMLVM_SOURCE_POSITION("Character.java", 2238) + _r0.i = java_lang_Character_toCodePoint___char_char(_r2.i, _r0.i); + goto label26; + label40:; + _r0 = _r2; + goto label26; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointAt___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointAt___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("Character.java", 2269) + if (_r4.i < 0) goto label9; + if (_r4.i >= _r5.i) goto label9; + if (_r5.i < 0) goto label9; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r5.i <= _r0.i) goto label15; + label9:; + XMLVM_SOURCE_POSITION("Character.java", 2270) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label15:; + XMLVM_SOURCE_POSITION("Character.java", 2273) + _r0.i = _r4.i + 1; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_SOURCE_POSITION("Character.java", 2274) + if (_r0.i < _r5.i) goto label23; + _r0 = _r1; + label22:; + XMLVM_SOURCE_POSITION("Character.java", 2275) + XMLVM_SOURCE_POSITION("Character.java", 2281) + XMLVM_EXIT_METHOD() + return _r0.i; + label23:; + XMLVM_SOURCE_POSITION("Character.java", 2277) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2278) + _r2.i = java_lang_Character_isSurrogatePair___char_char(_r1.i, _r0.i); + if (_r2.i == 0) goto label36; + XMLVM_SOURCE_POSITION("Character.java", 2279) + _r0.i = java_lang_Character_toCodePoint___char_char(_r1.i, _r0.i); + goto label22; + label36:; + _r0 = _r1; + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointBefore___java_lang_CharSequence_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointBefore___java_lang_CharSequence_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointBefore", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Character.java", 2307) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2308) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2310) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r3.o); + XMLVM_SOURCE_POSITION("Character.java", 2311) + _r1.i = 1; + if (_r4.i < _r1.i) goto label17; + if (_r4.i <= _r0.i) goto label23; + label17:; + XMLVM_SOURCE_POSITION("Character.java", 2312) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label23:; + XMLVM_SOURCE_POSITION("Character.java", 2315) + _r0.i = _r4.i + -1; + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r3.o, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 2316) + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label35; + _r0 = _r1; + label34:; + XMLVM_SOURCE_POSITION("Character.java", 2317) + XMLVM_SOURCE_POSITION("Character.java", 2323) + XMLVM_EXIT_METHOD() + return _r0.i; + label35:; + XMLVM_SOURCE_POSITION("Character.java", 2319) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r3.o, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 2320) + _r2.i = java_lang_Character_isSurrogatePair___char_char(_r0.i, _r1.i); + if (_r2.i == 0) goto label50; + XMLVM_SOURCE_POSITION("Character.java", 2321) + _r0.i = java_lang_Character_toCodePoint___char_char(_r0.i, _r1.i); + goto label34; + label50:; + _r0 = _r1; + goto label34; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointBefore___char_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointBefore___char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointBefore", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Character.java", 2349) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2350) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2352) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_SOURCE_POSITION("Character.java", 2353) + _r1.i = 1; + if (_r4.i < _r1.i) goto label14; + if (_r4.i <= _r0.i) goto label20; + label14:; + XMLVM_SOURCE_POSITION("Character.java", 2354) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label20:; + XMLVM_SOURCE_POSITION("Character.java", 2357) + _r0.i = _r4.i + -1; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2358) + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label30; + _r0 = _r1; + label29:; + XMLVM_SOURCE_POSITION("Character.java", 2359) + XMLVM_SOURCE_POSITION("Character.java", 2365) + XMLVM_EXIT_METHOD() + return _r0.i; + label30:; + XMLVM_SOURCE_POSITION("Character.java", 2361) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2362) + _r2.i = java_lang_Character_isSurrogatePair___char_char(_r0.i, _r1.i); + if (_r2.i == 0) goto label43; + XMLVM_SOURCE_POSITION("Character.java", 2363) + _r0.i = java_lang_Character_toCodePoint___char_char(_r0.i, _r1.i); + goto label29; + label43:; + _r0 = _r1; + goto label29; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointBefore___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointBefore___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointBefore", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("Character.java", 2396) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2397) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2399) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_SOURCE_POSITION("Character.java", 2400) + if (_r4.i <= _r5.i) goto label17; + if (_r4.i > _r0.i) goto label17; + if (_r5.i < 0) goto label17; + if (_r5.i < _r0.i) goto label23; + label17:; + XMLVM_SOURCE_POSITION("Character.java", 2401) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label23:; + XMLVM_SOURCE_POSITION("Character.java", 2404) + _r0.i = _r4.i + -1; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2405) + _r0.i = _r0.i + -1; + if (_r0.i >= _r5.i) goto label33; + _r0 = _r1; + label32:; + XMLVM_SOURCE_POSITION("Character.java", 2406) + XMLVM_SOURCE_POSITION("Character.java", 2412) + XMLVM_EXIT_METHOD() + return _r0.i; + label33:; + XMLVM_SOURCE_POSITION("Character.java", 2408) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2409) + _r2.i = java_lang_Character_isSurrogatePair___char_char(_r0.i, _r1.i); + if (_r2.i == 0) goto label46; + XMLVM_SOURCE_POSITION("Character.java", 2410) + _r0.i = java_lang_Character_toCodePoint___char_char(_r0.i, _r1.i); + goto label32; + label46:; + _r0 = _r1; + goto label32; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_toChars___int_char_1ARRAY_int(JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toChars___int_char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.Character", "toChars", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.i = n1; + _r4.o = n2; + _r5.i = n3; + _r1.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 2439) + _r0.i = java_lang_Character_isValidCodePoint___int(_r3.i); + if (_r0.i != 0) goto label13; + XMLVM_SOURCE_POSITION("Character.java", 2440) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("Character.java", 2442) + if (_r4.o != JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("Character.java", 2443) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label21:; + XMLVM_SOURCE_POSITION("Character.java", 2445) + if (_r5.i < 0) goto label26; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r5.i < _r0.i) goto label32; + label26:; + XMLVM_SOURCE_POSITION("Character.java", 2446) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label32:; + XMLVM_SOURCE_POSITION("Character.java", 2449) + _r0.i = java_lang_Character_isSupplementaryCodePoint___int(_r3.i); + if (_r0.i == 0) goto label76; + XMLVM_SOURCE_POSITION("Character.java", 2450) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + _r0.i = _r0.i - _r1.i; + if (_r5.i != _r0.i) goto label48; + XMLVM_SOURCE_POSITION("Character.java", 2451) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label48:; + XMLVM_SOURCE_POSITION("Character.java", 2455) + _r0.i = 65536; + _r0.i = _r3.i - _r0.i; + _r1.i = 55296; + _r2.i = _r0.i >> 10; + _r2.i = _r2.i & 1023; + _r1.i = _r1.i | _r2.i; + _r2.i = 56320; + _r0.i = _r0.i & 1023; + _r0.i = _r0.i | _r2.i; + _r1.i = _r1.i & 0xffff; + XMLVM_SOURCE_POSITION("Character.java", 2458) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r1.i; + XMLVM_SOURCE_POSITION("Character.java", 2459) + _r1.i = _r5.i + 1; + _r0.i = _r0.i & 0xffff; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r0.i; + XMLVM_SOURCE_POSITION("Character.java", 2460) + _r0.i = 2; + label75:; + XMLVM_SOURCE_POSITION("Character.java", 2464) + XMLVM_EXIT_METHOD() + return _r0.i; + label76:; + XMLVM_SOURCE_POSITION("Character.java", 2463) + _r0.i = _r3.i & 0xffff; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r0.i; + _r0 = _r1; + goto label75; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Character_toChars___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toChars___int] + XMLVM_ENTER_METHOD("java.lang.Character", "toChars", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.i = n1; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 2482) + _r0.i = java_lang_Character_isValidCodePoint___int(_r5.i); + if (_r0.i != 0) goto label14; + XMLVM_SOURCE_POSITION("Character.java", 2483) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("Character.java", 2486) + _r0.i = java_lang_Character_isSupplementaryCodePoint___int(_r5.i); + if (_r0.i == 0) goto label49; + XMLVM_SOURCE_POSITION("Character.java", 2487) + _r0.i = 65536; + _r0.i = _r5.i - _r0.i; + _r1.i = 55296; + _r2.i = _r0.i >> 10; + _r2.i = _r2.i & 1023; + _r1.i = _r1.i | _r2.i; + _r2.i = 56320; + _r0.i = _r0.i & 1023; + _r0.i = _r0.i | _r2.i; + _r2.i = 2; + XMLVM_SOURCE_POSITION("Character.java", 2490) + XMLVM_CLASS_INIT(char) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_char, _r2.i); + _r1.i = _r1.i & 0xffff; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r1.i; + _r0.i = _r0.i & 0xffff; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r4.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r0.i; + _r0 = _r2; + label48:; + XMLVM_SOURCE_POSITION("Character.java", 2492) + XMLVM_EXIT_METHOD() + return _r0.o; + label49:; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r4.i); + _r1.i = _r5.i & 0xffff; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r1.i; + goto label48; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointCount___java_lang_CharSequence_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointCount___java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointCount", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("Character.java", 2517) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2518) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2520) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r3.o); + XMLVM_SOURCE_POSITION("Character.java", 2521) + if (_r4.i < 0) goto label18; + if (_r5.i > _r0.i) goto label18; + if (_r4.i <= _r5.i) goto label24; + label18:; + XMLVM_SOURCE_POSITION("Character.java", 2522) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("Character.java", 2525) + _r0.i = 0; + _r1 = _r0; + _r0 = _r4; + label27:; + XMLVM_SOURCE_POSITION("Character.java", 2526) + if (_r0.i < _r5.i) goto label30; + XMLVM_SOURCE_POSITION("Character.java", 2538) + XMLVM_EXIT_METHOD() + return _r1.i; + label30:; + XMLVM_SOURCE_POSITION("Character.java", 2527) + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r3.o, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 2528) + _r2.i = java_lang_Character_isHighSurrogate___char(_r2.i); + if (_r2.i == 0) goto label56; + XMLVM_SOURCE_POSITION("Character.java", 2529) + _r0.i = _r0.i + 1; + if (_r0.i >= _r5.i) goto label56; + XMLVM_SOURCE_POSITION("Character.java", 2530) + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r3.o, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 2531) + _r2.i = java_lang_Character_isLowSurrogate___char(_r2.i); + if (_r2.i != 0) goto label56; + XMLVM_SOURCE_POSITION("Character.java", 2532) + _r1.i = _r1.i + 1; + label56:; + XMLVM_SOURCE_POSITION("Character.java", 2536) + _r1.i = _r1.i + 1; + _r0.i = _r0.i + 1; + goto label27; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_codePointCount___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_codePointCount___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "codePointCount", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = n1; + _r5.i = n2; + _r6.i = n3; + XMLVM_SOURCE_POSITION("Character.java", 2564) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2565) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2567) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + XMLVM_SOURCE_POSITION("Character.java", 2568) + _r1.i = _r5.i + _r6.i; + if (_r5.i < 0) goto label17; + XMLVM_SOURCE_POSITION("Character.java", 2569) + if (_r6.i < 0) goto label17; + if (_r1.i <= _r0.i) goto label23; + label17:; + XMLVM_SOURCE_POSITION("Character.java", 2570) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label23:; + XMLVM_SOURCE_POSITION("Character.java", 2573) + _r0.i = 0; + _r2 = _r0; + _r0 = _r5; + label26:; + XMLVM_SOURCE_POSITION("Character.java", 2574) + if (_r0.i < _r1.i) goto label29; + XMLVM_SOURCE_POSITION("Character.java", 2586) + XMLVM_EXIT_METHOD() + return _r2.i; + label29:; + XMLVM_SOURCE_POSITION("Character.java", 2575) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r0.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2576) + _r3.i = java_lang_Character_isHighSurrogate___char(_r3.i); + if (_r3.i == 0) goto label51; + XMLVM_SOURCE_POSITION("Character.java", 2577) + _r0.i = _r0.i + 1; + if (_r0.i >= _r1.i) goto label51; + XMLVM_SOURCE_POSITION("Character.java", 2578) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r0.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2579) + _r3.i = java_lang_Character_isLowSurrogate___char(_r3.i); + if (_r3.i != 0) goto label51; + XMLVM_SOURCE_POSITION("Character.java", 2580) + _r2.i = _r2.i + 1; + label51:; + XMLVM_SOURCE_POSITION("Character.java", 2584) + _r2.i = _r2.i + 1; + _r0.i = _r0.i + 1; + goto label26; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_offsetByCodePoints___java_lang_CharSequence_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_offsetByCodePoints___java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "offsetByCodePoints", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = n1; + _r5.i = n2; + _r6.i = n3; + XMLVM_SOURCE_POSITION("Character.java", 2614) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2615) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2617) + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r4.o); + XMLVM_SOURCE_POSITION("Character.java", 2618) + if (_r5.i < 0) goto label16; + if (_r5.i <= _r0.i) goto label22; + label16:; + XMLVM_SOURCE_POSITION("Character.java", 2619) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("Character.java", 2622) + if (_r6.i != 0) goto label26; + _r0 = _r5; + label25:; + XMLVM_SOURCE_POSITION("Character.java", 2623) + XMLVM_SOURCE_POSITION("Character.java", 2661) + XMLVM_EXIT_METHOD() + return _r0.i; + label26:; + XMLVM_SOURCE_POSITION("Character.java", 2626) + if (_r6.i <= 0) goto label73; + _r1 = _r5; + _r2 = _r6; + label30:; + XMLVM_SOURCE_POSITION("Character.java", 2629) + if (_r2.i > 0) goto label34; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Character.java", 2642) + goto label25; + label34:; + XMLVM_SOURCE_POSITION("Character.java", 2630) + _r2.i = _r2.i + -1; + if (_r1.i < _r0.i) goto label44; + XMLVM_SOURCE_POSITION("Character.java", 2631) + XMLVM_SOURCE_POSITION("Character.java", 2632) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label44:; + XMLVM_SOURCE_POSITION("Character.java", 2634) + XMLVM_CHECK_NPE(4) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r4.o, _r1.i); + _r3.i = java_lang_Character_isHighSurrogate___char(_r3.i); + if (_r3.i == 0) goto label70; + XMLVM_SOURCE_POSITION("Character.java", 2635) + _r3.i = _r1.i + 1; + if (_r3.i >= _r0.i) goto label70; + XMLVM_SOURCE_POSITION("Character.java", 2636) + XMLVM_CHECK_NPE(4) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r4.o, _r3.i); + _r3.i = java_lang_Character_isLowSurrogate___char(_r3.i); + if (_r3.i == 0) goto label70; + XMLVM_SOURCE_POSITION("Character.java", 2637) + _r1.i = _r1.i + 1; + label70:; + XMLVM_SOURCE_POSITION("Character.java", 2640) + _r1.i = _r1.i + 1; + goto label30; + label73:; + XMLVM_SOURCE_POSITION("Character.java", 2645) + _r0.i = java_lang_Character_GET__assertionsDisabled(); + if (_r0.i != 0) goto label85; + if (_r6.i < 0) goto label85; + + + // Red class access removed: java.lang.AssertionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.AssertionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label85:; + XMLVM_SOURCE_POSITION("Character.java", 2646) + _r0.i = -_r6.i; + _r1 = _r0; + _r0 = _r5; + label88:; + XMLVM_SOURCE_POSITION("Character.java", 2648) + if (_r1.i <= 0) goto label25; + XMLVM_SOURCE_POSITION("Character.java", 2649) + _r1.i = _r1.i + -1; + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label102; + XMLVM_SOURCE_POSITION("Character.java", 2651) + XMLVM_SOURCE_POSITION("Character.java", 2652) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label102:; + XMLVM_SOURCE_POSITION("Character.java", 2654) + XMLVM_CHECK_NPE(4) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r4.o, _r0.i); + _r2.i = java_lang_Character_isLowSurrogate___char(_r2.i); + if (_r2.i == 0) goto label88; + XMLVM_SOURCE_POSITION("Character.java", 2655) + _r2.i = 1; + _r2.i = _r0.i - _r2.i; + if (_r2.i < 0) goto label88; + XMLVM_SOURCE_POSITION("Character.java", 2656) + XMLVM_CHECK_NPE(4) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int])(_r4.o, _r2.i); + _r2.i = java_lang_Character_isHighSurrogate___char(_r2.i); + if (_r2.i == 0) goto label88; + XMLVM_SOURCE_POSITION("Character.java", 2657) + _r0.i = _r0.i + -1; + goto label88; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_offsetByCodePoints___char_1ARRAY_int_int_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_offsetByCodePoints___char_1ARRAY_int_int_int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "offsetByCodePoints", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r4.o = n1; + _r5.i = n2; + _r6.i = n3; + _r7.i = n4; + _r8.i = n5; + XMLVM_SOURCE_POSITION("Character.java", 2698) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2699) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2701) + _r0.i = _r5.i + _r6.i; + if (_r5.i < 0) goto label21; + XMLVM_SOURCE_POSITION("Character.java", 2702) + if (_r6.i < 0) goto label21; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r0.i > _r1.i) goto label21; + if (_r7.i < _r5.i) goto label21; + XMLVM_SOURCE_POSITION("Character.java", 2703) + if (_r7.i <= _r0.i) goto label27; + label21:; + XMLVM_SOURCE_POSITION("Character.java", 2704) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label27:; + XMLVM_SOURCE_POSITION("Character.java", 2707) + if (_r8.i != 0) goto label31; + _r0 = _r7; + label30:; + XMLVM_SOURCE_POSITION("Character.java", 2708) + XMLVM_SOURCE_POSITION("Character.java", 2746) + XMLVM_EXIT_METHOD() + return _r0.i; + label31:; + XMLVM_SOURCE_POSITION("Character.java", 2711) + if (_r8.i <= 0) goto label74; + _r1 = _r7; + _r2 = _r8; + label35:; + XMLVM_SOURCE_POSITION("Character.java", 2714) + if (_r2.i > 0) goto label39; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Character.java", 2727) + goto label30; + label39:; + XMLVM_SOURCE_POSITION("Character.java", 2715) + _r2.i = _r2.i + -1; + if (_r1.i < _r0.i) goto label49; + XMLVM_SOURCE_POSITION("Character.java", 2716) + XMLVM_SOURCE_POSITION("Character.java", 2717) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label49:; + XMLVM_SOURCE_POSITION("Character.java", 2719) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3.i = java_lang_Character_isHighSurrogate___char(_r3.i); + if (_r3.i == 0) goto label71; + XMLVM_SOURCE_POSITION("Character.java", 2720) + _r3.i = _r1.i + 1; + if (_r3.i >= _r0.i) goto label71; + XMLVM_SOURCE_POSITION("Character.java", 2721) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r3.i = java_lang_Character_isLowSurrogate___char(_r3.i); + if (_r3.i == 0) goto label71; + XMLVM_SOURCE_POSITION("Character.java", 2722) + _r1.i = _r1.i + 1; + label71:; + XMLVM_SOURCE_POSITION("Character.java", 2725) + _r1.i = _r1.i + 1; + goto label35; + label74:; + XMLVM_SOURCE_POSITION("Character.java", 2730) + _r0.i = java_lang_Character_GET__assertionsDisabled(); + if (_r0.i != 0) goto label86; + if (_r8.i < 0) goto label86; + + + // Red class access removed: java.lang.AssertionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.AssertionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label86:; + XMLVM_SOURCE_POSITION("Character.java", 2731) + _r0.i = -_r8.i; + _r1 = _r0; + _r0 = _r7; + label89:; + XMLVM_SOURCE_POSITION("Character.java", 2733) + if (_r1.i <= 0) goto label30; + XMLVM_SOURCE_POSITION("Character.java", 2734) + _r1.i = _r1.i + -1; + _r0.i = _r0.i + -1; + if (_r0.i >= _r5.i) goto label103; + XMLVM_SOURCE_POSITION("Character.java", 2736) + XMLVM_SOURCE_POSITION("Character.java", 2737) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label103:; + XMLVM_SOURCE_POSITION("Character.java", 2739) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r0.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r2.i = java_lang_Character_isLowSurrogate___char(_r2.i); + if (_r2.i == 0) goto label89; + XMLVM_SOURCE_POSITION("Character.java", 2740) + _r2.i = 1; + _r2.i = _r0.i - _r2.i; + if (_r2.i < _r5.i) goto label89; + XMLVM_SOURCE_POSITION("Character.java", 2741) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r2.i = java_lang_Character_isHighSurrogate___char(_r2.i); + if (_r2.i == 0) goto label89; + XMLVM_SOURCE_POSITION("Character.java", 2742) + _r0.i = _r0.i + -1; + goto label89; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_digit___char_int(JAVA_CHAR n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_digit___char_int] + XMLVM_ENTER_METHOD("java.lang.Character", "digit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.i = n1; + _r5.i = n2; + _r1.i = 48; + _r3.i = -1; + XMLVM_SOURCE_POSITION("Character.java", 2762) + _r0.i = 2; + if (_r5.i < _r0.i) goto label84; + _r0.i = 36; + if (_r5.i > _r0.i) goto label84; + XMLVM_SOURCE_POSITION("Character.java", 2763) + _r0.i = 128; + if (_r4.i >= _r0.i) goto label53; + XMLVM_SOURCE_POSITION("Character.java", 2766) + if (_r1.i > _r4.i) goto label25; + _r0.i = 57; + if (_r4.i > _r0.i) goto label25; + XMLVM_SOURCE_POSITION("Character.java", 2767) + _r0.i = _r4.i - _r1.i; + label22:; + XMLVM_SOURCE_POSITION("Character.java", 2773) + if (_r0.i >= _r5.i) goto label51; + label24:; + XMLVM_SOURCE_POSITION("Character.java", 2784) + XMLVM_EXIT_METHOD() + return _r0.i; + label25:; + XMLVM_SOURCE_POSITION("Character.java", 2768) + _r0.i = 97; + if (_r0.i > _r4.i) goto label38; + _r0.i = 122; + if (_r4.i > _r0.i) goto label38; + XMLVM_SOURCE_POSITION("Character.java", 2769) + _r0.i = 87; + _r0.i = _r4.i - _r0.i; + goto label22; + label38:; + XMLVM_SOURCE_POSITION("Character.java", 2770) + _r0.i = 65; + if (_r0.i > _r4.i) goto label86; + _r0.i = 90; + if (_r4.i > _r0.i) goto label86; + XMLVM_SOURCE_POSITION("Character.java", 2771) + _r0.i = 55; + _r0.i = _r4.i - _r0.i; + goto label22; + label51:; + _r0 = _r3; + goto label24; + label53:; + XMLVM_SOURCE_POSITION("Character.java", 2775) + // "0Aa\3140\3360\4546\4746\5146\5346\5546\5747\6146\6346\6546\7120\7320\7440\10100\11551\13740\14020\177420\177441\177501" + _r0.o = xmlvm_create_java_string_from_pool(149); + + + // Red class access removed: org.apache.harmony.luni.util.BinarySearch::binarySearchRange + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Character.java", 2776) + if (_r0.i < 0) goto label84; + _r1.o = java_lang_Character_GET_digitValues(); + _r2.i = _r0.i * 2; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + if (_r4.i > _r1.i) goto label84; + XMLVM_SOURCE_POSITION("Character.java", 2777) + _r1.o = java_lang_Character_GET_digitValues(); + _r0.i = _r0.i * 2; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r0.i = _r4.i - _r0.i; + _r0.i = _r0.i & 0xffff; + if (_r0.i < _r5.i) goto label24; + XMLVM_SOURCE_POSITION("Character.java", 2778) + _r0 = _r3; + XMLVM_SOURCE_POSITION("Character.java", 2779) + goto label24; + label84:; + _r0 = _r3; + goto label24; + label86:; + _r0 = _r3; + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_digit___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_digit___int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "digit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.i = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Character.java", 2801) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::digit + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Character", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Character.java", 2816) + XMLVM_CLASS_INIT(java_lang_Character) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_lang_Character); + if (_r0.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Character.java", 2817) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Character*) _r2.o)->fields.java_lang_Character.value_; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Character*) _r3.o)->fields.java_lang_Character.value_; + if (_r0.i != _r1.i) goto label14; + _r0.i = 1; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 0; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_Character_forDigit___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_forDigit___int_int] + XMLVM_ENTER_METHOD("java.lang.Character", "forDigit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.i = n1; + _r3.i = n2; + _r1.i = 10; + XMLVM_SOURCE_POSITION("Character.java", 2835) + _r0.i = 2; + if (_r0.i > _r3.i) goto label23; + _r0.i = 36; + if (_r3.i > _r0.i) goto label23; + XMLVM_SOURCE_POSITION("Character.java", 2836) + if (_r2.i < 0) goto label23; + if (_r2.i >= _r3.i) goto label23; + XMLVM_SOURCE_POSITION("Character.java", 2837) + if (_r2.i >= _r1.i) goto label19; + _r0.i = _r2.i + 48; + label17:; + _r0.i = _r0.i & 0xffff; + label18:; + XMLVM_SOURCE_POSITION("Character.java", 2840) + XMLVM_EXIT_METHOD() + return _r0.i; + label19:; + _r0.i = _r2.i + 97; + _r0.i = _r0.i - _r1.i; + goto label17; + label23:; + _r0.i = 0; + goto label18; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_getNumericValue___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_getNumericValue___char] + XMLVM_ENTER_METHOD("java.lang.Character", "getNumericValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r1.i = 48; + _r3.i = -1; + XMLVM_SOURCE_POSITION("Character.java", 2853) + _r0.i = 128; + if (_r4.i >= _r0.i) goto label44; + XMLVM_SOURCE_POSITION("Character.java", 2855) + if (_r4.i < _r1.i) goto label16; + _r0.i = 57; + if (_r4.i > _r0.i) goto label16; + XMLVM_SOURCE_POSITION("Character.java", 2856) + _r0.i = _r4.i - _r1.i; + label15:; + XMLVM_SOURCE_POSITION("Character.java", 2878) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + XMLVM_SOURCE_POSITION("Character.java", 2858) + _r0.i = 97; + if (_r4.i < _r0.i) goto label29; + _r0.i = 122; + if (_r4.i > _r0.i) goto label29; + XMLVM_SOURCE_POSITION("Character.java", 2859) + _r0.i = 87; + _r0.i = _r4.i - _r0.i; + goto label15; + label29:; + XMLVM_SOURCE_POSITION("Character.java", 2861) + _r0.i = 65; + if (_r4.i < _r0.i) goto label42; + _r0.i = 90; + if (_r4.i > _r0.i) goto label42; + XMLVM_SOURCE_POSITION("Character.java", 2862) + _r0.i = 55; + _r0.i = _r4.i - _r0.i; + goto label15; + label42:; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Character.java", 2864) + goto label15; + label44:; + XMLVM_SOURCE_POSITION("Character.java", 2866) + // "0Aa\262\271\274\3140\3360\4546\4746\4764\4771\5146\5346\5546\5747\5761\5762\6146\6346\6546\7120\7320\7440\10100\11551\11563\11564\11565\11566\11567\11570\11571\11572\11573\11574\13356\13740\14020\20160\20164\20200\20523\20537\20540\20554\20555\20556\20557\20560\20574\20575\20576\20577\20600\20601\20602\22140\22164\22210\22352\23566\23600\23612\30007\30041\30070\30071\30072\31200\177420\177441\177501" + _r0.o = xmlvm_create_java_string_from_pool(151); + + + // Red class access removed: org.apache.harmony.luni.util.BinarySearch::binarySearchRange + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Character.java", 2867) + if (_r0.i < 0) goto label81; + _r1.o = java_lang_Character_GET_numericValues(); + _r2.i = _r0.i * 2; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + if (_r4.i > _r1.i) goto label81; + XMLVM_SOURCE_POSITION("Character.java", 2868) + _r1.o = java_lang_Character_GET_numericValues(); + _r0.i = _r0.i * 2; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2869) + if (_r0.i != 0) goto label72; + XMLVM_SOURCE_POSITION("Character.java", 2870) + _r0.i = -2; + goto label15; + label72:; + XMLVM_SOURCE_POSITION("Character.java", 2873) + if (_r0.i <= _r4.i) goto label78; + XMLVM_SOURCE_POSITION("Character.java", 2874) + _r0.i = (_r0.i << 16) >> 16; + _r0.i = _r4.i - _r0.i; + goto label15; + label78:; + XMLVM_SOURCE_POSITION("Character.java", 2876) + _r0.i = _r4.i - _r0.i; + goto label15; + label81:; + _r0 = _r3; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_getNumericValue___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_getNumericValue___int] + XMLVM_ENTER_METHOD("java.lang.Character", "getNumericValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2894) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::getNumericValue + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_getType___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_getType___char] + XMLVM_ENTER_METHOD("java.lang.Character", "getType", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2905) + _r0.i = 1000; + if (_r3.i >= _r0.i) goto label9; + XMLVM_SOURCE_POSITION("Character.java", 2906) + _r0.o = java_lang_Character_GET_typeValuesCache(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2917) + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_SOURCE_POSITION("Character.java", 2908) + // "\000 \042$&(*-/1:fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("Character.java", 2910) + if (_r3.i > _r1.i) goto label46; + XMLVM_SOURCE_POSITION("Character.java", 2911) + _r1.o = java_lang_Character_GET_typeValues(); + _r0.i = _r0.i * 2; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2912) + _r1.i = 256; + if (_r0.i < _r1.i) goto label8; + XMLVM_SOURCE_POSITION("Character.java", 2915) + _r1.i = _r3.i & 1; + _r2.i = 1; + if (_r1.i != _r2.i) goto label43; + _r0.i = _r0.i >> 8; + goto label8; + label43:; + _r0.i = _r0.i & 255; + goto label8; + label46:; + _r0.i = 0; + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_getType___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_getType___int] + XMLVM_ENTER_METHOD("java.lang.Character", "getType", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 2928) + _r0.i = 1000; + if (_r2.i >= _r0.i) goto label11; + if (_r2.i <= 0) goto label11; + XMLVM_SOURCE_POSITION("Character.java", 2929) + _r0.o = java_lang_Character_GET_typeValuesCache(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + label10:; + XMLVM_SOURCE_POSITION("Character.java", 2938) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("Character.java", 2931) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::getType + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Character.java", 2935) + _r1.i = 16; + if (_r0.i <= _r1.i) goto label10; + _r0.i = _r0.i + 1; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Character_getDirectionality___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_getDirectionality___char] + XMLVM_ENTER_METHOD("java.lang.Character", "getDirectionality", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r3.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 2949) + // "\000\011\014\016\034\037!#&+/1:fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("Character.java", 2951) + if (_r4.i > _r1.i) goto label42; + XMLVM_SOURCE_POSITION("Character.java", 2952) + _r1.o = java_lang_Character_GET_bidiValues(); + _r0.i = _r0.i * 2; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 2953) + _r1.i = 256; + if (_r0.i >= _r1.i) goto label30; + XMLVM_SOURCE_POSITION("Character.java", 2954) + _r0.i = _r0.i - _r3.i; + _r0.i = (_r0.i << 24) >> 24; + label29:; + XMLVM_SOURCE_POSITION("Character.java", 2958) + XMLVM_EXIT_METHOD() + return _r0.i; + label30:; + XMLVM_SOURCE_POSITION("Character.java", 2956) + _r1.i = _r4.i & 1; + if (_r1.i != _r3.i) goto label39; + _r0.i = _r0.i >> 8; + label36:; + _r0.i = _r0.i - _r3.i; + _r0.i = (_r0.i << 24) >> 24; + goto label29; + label39:; + _r0.i = _r0.i & 255; + goto label36; + label42:; + _r0.i = -1; + goto label29; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Character_getDirectionality___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_getDirectionality___int] + XMLVM_ENTER_METHOD("java.lang.Character", "getDirectionality", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + _r1.i = -1; + XMLVM_SOURCE_POSITION("Character.java", 2969) + _r0.i = java_lang_Character_getType___int(_r2.i); + if (_r0.i != 0) goto label9; + _r0 = _r1; + label8:; + XMLVM_SOURCE_POSITION("Character.java", 2970) + XMLVM_SOURCE_POSITION("Character.java", 2977) + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_SOURCE_POSITION("Character.java", 2973) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::getDirectionality + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Character.java", 2974) + if (_r0.i != _r1.i) goto label17; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Character.java", 2975) + goto label8; + label17:; + _r1.o = java_lang_Character_GET_DIRECTIONALITY(); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isMirrored___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isMirrored___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isMirrored", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.i = n1; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 2989) + _r0.i = _r5.i / 16; + XMLVM_SOURCE_POSITION("Character.java", 2990) + _r1.o = java_lang_Character_GET_mirrored(); + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i < _r1.i) goto label11; + _r0 = _r3; + label10:; + XMLVM_SOURCE_POSITION("Character.java", 2991) + XMLVM_SOURCE_POSITION("Character.java", 2994) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("Character.java", 2993) + _r1.i = _r5.i % 16; + _r1.i = _r4.i << _r1.i; + _r2.o = java_lang_Character_GET_mirrored(); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r0.i = _r0.i & _r1.i; + if (_r0.i == 0) goto label24; + _r0 = _r4; + goto label10; + label24:; + _r0 = _r3; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isMirrored___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isMirrored___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isMirrored", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3006) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isMirrored + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Character", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Character.java", 3011) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Character*) _r1.o)->fields.java_lang_Character.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isDefined___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isDefined___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isDefined", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3024) + _r0.i = java_lang_Character_getType___char(_r1.i); + if (_r0.i == 0) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isDefined___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isDefined___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isDefined", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3037) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isDefined + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isDigit___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isDigit___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isDigit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 3050) + _r0.i = 48; + if (_r0.i > _r4.i) goto label12; + _r0.i = 57; + if (_r4.i > _r0.i) goto label12; + _r0 = _r3; + label11:; + XMLVM_SOURCE_POSITION("Character.java", 3051) + XMLVM_SOURCE_POSITION("Character.java", 3056) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("Character.java", 3053) + _r0.i = 1632; + if (_r4.i >= _r0.i) goto label18; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Character.java", 3054) + goto label11; + label18:; + _r0.i = java_lang_Character_getType___char(_r4.i); + _r1.i = 9; + if (_r0.i != _r1.i) goto label28; + _r0 = _r3; + goto label11; + label28:; + _r0 = _r2; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isDigit___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isDigit___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isDigit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3068) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isDigit + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isIdentifierIgnorable___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isIdentifierIgnorable___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isIdentifierIgnorable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3080) + if (_r2.i < 0) goto label6; + _r0.i = 8; + if (_r2.i <= _r0.i) goto label32; + label6:; + _r0.i = 14; + if (_r2.i < _r0.i) goto label14; + _r0.i = 27; + if (_r2.i <= _r0.i) goto label32; + label14:; + XMLVM_SOURCE_POSITION("Character.java", 3081) + _r0.i = 127; + if (_r2.i < _r0.i) goto label22; + _r0.i = 159; + if (_r2.i <= _r0.i) goto label32; + label22:; + _r0.i = java_lang_Character_getType___char(_r2.i); + _r1.i = 16; + if (_r0.i == _r1.i) goto label32; + _r0.i = 0; + label31:; + XMLVM_EXIT_METHOD() + return _r0.i; + label32:; + _r0.i = 1; + goto label31; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isIdentifierIgnorable___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isIdentifierIgnorable___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isIdentifierIgnorable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3094) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isIdentifierIgnorable + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isISOControl___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isISOControl___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isISOControl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3106) + _r0.i = java_lang_Character_isISOControl___int(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isISOControl___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isISOControl___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isISOControl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3118) + if (_r1.i < 0) goto label6; + _r0.i = 31; + if (_r1.i <= _r0.i) goto label16; + label6:; + _r0.i = 127; + if (_r1.i < _r0.i) goto label14; + _r0.i = 159; + if (_r1.i <= _r0.i) goto label16; + label14:; + _r0.i = 0; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0.i = 1; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierPart___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isJavaIdentifierPart___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isJavaIdentifierPart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.i = n1; + _r4.i = 128; + _r3.i = 0; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3132) + if (_r5.i >= _r4.i) goto label18; + XMLVM_SOURCE_POSITION("Character.java", 3133) + _r0.o = java_lang_Character_GET_typeTags(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r5.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + _r0.i = _r0.i & 2; + if (_r0.i == 0) goto label16; + _r0 = _r2; + label15:; + XMLVM_SOURCE_POSITION("Character.java", 3141) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0 = _r3; + goto label15; + label18:; + XMLVM_SOURCE_POSITION("Character.java", 3136) + _r0.i = java_lang_Character_getType___char(_r5.i); + XMLVM_SOURCE_POSITION("Character.java", 3137) + if (_r0.i < _r2.i) goto label27; + _r1.i = 5; + if (_r0.i <= _r1.i) goto label62; + label27:; + XMLVM_SOURCE_POSITION("Character.java", 3138) + _r1.i = 26; + if (_r0.i == _r1.i) goto label62; + _r1.i = 23; + if (_r0.i == _r1.i) goto label62; + XMLVM_SOURCE_POSITION("Character.java", 3139) + _r1.i = 9; + if (_r0.i < _r1.i) goto label43; + _r1.i = 10; + if (_r0.i <= _r1.i) goto label62; + label43:; + XMLVM_SOURCE_POSITION("Character.java", 3140) + _r1.i = 6; + if (_r0.i == _r1.i) goto label62; + _r1.i = 8; + if (_r0.i == _r1.i) goto label62; + if (_r5.i < _r4.i) goto label56; + _r1.i = 159; + if (_r5.i <= _r1.i) goto label62; + label56:; + _r1.i = 16; + if (_r0.i == _r1.i) goto label62; + _r0 = _r3; + goto label15; + label62:; + _r0 = _r2; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierPart___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isJavaIdentifierPart___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isJavaIdentifierPart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3154) + _r0.i = java_lang_Character_getType___int(_r3.i); + XMLVM_SOURCE_POSITION("Character.java", 3155) + if (_r0.i < _r2.i) goto label10; + _r1.i = 5; + if (_r0.i <= _r1.i) goto label41; + label10:; + XMLVM_SOURCE_POSITION("Character.java", 3156) + _r1.i = 26; + if (_r0.i == _r1.i) goto label41; + _r1.i = 23; + if (_r0.i == _r1.i) goto label41; + XMLVM_SOURCE_POSITION("Character.java", 3157) + _r1.i = 9; + if (_r0.i < _r1.i) goto label26; + _r1.i = 10; + if (_r0.i <= _r1.i) goto label41; + label26:; + XMLVM_SOURCE_POSITION("Character.java", 3158) + _r1.i = 8; + if (_r0.i == _r1.i) goto label41; + _r1.i = 6; + if (_r0.i == _r1.i) goto label41; + XMLVM_SOURCE_POSITION("Character.java", 3159) + _r0.i = java_lang_Character_isIdentifierIgnorable___int(_r3.i); + if (_r0.i != 0) goto label41; + _r0.i = 0; + label40:; + XMLVM_EXIT_METHOD() + return _r0.i; + label41:; + _r0 = _r2; + goto label40; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierStart___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isJavaIdentifierStart___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isJavaIdentifierStart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r3.i = 0; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3173) + _r0.i = 128; + if (_r4.i >= _r0.i) goto label18; + XMLVM_SOURCE_POSITION("Character.java", 3174) + _r0.o = java_lang_Character_GET_typeTags(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r4.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r0.i = _r0.i & 1; + if (_r0.i == 0) goto label16; + _r0 = _r2; + label15:; + XMLVM_SOURCE_POSITION("Character.java", 3180) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0 = _r3; + goto label15; + label18:; + XMLVM_SOURCE_POSITION("Character.java", 3177) + _r0.i = java_lang_Character_getType___char(_r4.i); + XMLVM_SOURCE_POSITION("Character.java", 3178) + if (_r0.i < _r2.i) goto label27; + _r1.i = 5; + if (_r0.i <= _r1.i) goto label41; + label27:; + XMLVM_SOURCE_POSITION("Character.java", 3179) + _r1.i = 26; + if (_r0.i == _r1.i) goto label41; + _r1.i = 23; + if (_r0.i == _r1.i) goto label41; + _r1.i = 10; + if (_r0.i == _r1.i) goto label41; + _r0 = _r3; + goto label15; + label41:; + _r0 = _r2; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierStart___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isJavaIdentifierStart___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isJavaIdentifierStart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3193) + _r0.i = java_lang_Character_getType___int(_r2.i); + XMLVM_SOURCE_POSITION("Character.java", 3194) + _r1.i = java_lang_Character_isLetter___int(_r2.i); + if (_r1.i != 0) goto label24; + _r1.i = 26; + if (_r0.i == _r1.i) goto label24; + XMLVM_SOURCE_POSITION("Character.java", 3195) + _r1.i = 23; + if (_r0.i == _r1.i) goto label24; + _r1.i = 10; + if (_r0.i == _r1.i) goto label24; + _r0.i = 0; + label23:; + XMLVM_EXIT_METHOD() + return _r0.i; + label24:; + _r0.i = 1; + goto label23; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isJavaLetter___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isJavaLetter___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isJavaLetter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3209) + _r0.i = java_lang_Character_isJavaIdentifierStart___char(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isJavaLetterOrDigit___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isJavaLetterOrDigit___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isJavaLetterOrDigit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3224) + _r0.i = java_lang_Character_isJavaIdentifierPart___char(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isLetter___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isLetter___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isLetter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r3.i = 0; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3235) + _r0.i = 65; + if (_r0.i > _r4.i) goto label10; + _r0.i = 90; + if (_r4.i <= _r0.i) goto label18; + label10:; + _r0.i = 97; + if (_r0.i > _r4.i) goto label20; + _r0.i = 122; + if (_r4.i > _r0.i) goto label20; + label18:; + _r0 = _r2; + label19:; + XMLVM_SOURCE_POSITION("Character.java", 3236) + XMLVM_SOURCE_POSITION("Character.java", 3242) + XMLVM_EXIT_METHOD() + return _r0.i; + label20:; + XMLVM_SOURCE_POSITION("Character.java", 3238) + _r0.i = 128; + if (_r4.i >= _r0.i) goto label26; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Character.java", 3239) + goto label19; + label26:; + XMLVM_SOURCE_POSITION("Character.java", 3241) + _r0.i = java_lang_Character_getType___char(_r4.i); + if (_r0.i < _r2.i) goto label37; + _r1.i = 5; + if (_r0.i > _r1.i) goto label37; + _r0 = _r2; + goto label19; + label37:; + _r0 = _r3; + goto label19; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isLetter___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isLetter___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isLetter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3254) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isLetter + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isLetterOrDigit___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isLetterOrDigit___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isLetterOrDigit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3266) + _r0.i = java_lang_Character_getType___char(_r3.i); + XMLVM_SOURCE_POSITION("Character.java", 3267) + if (_r0.i < _r2.i) goto label10; + _r1.i = 5; + if (_r0.i <= _r1.i) goto label16; + label10:; + XMLVM_SOURCE_POSITION("Character.java", 3268) + _r1.i = 9; + if (_r0.i == _r1.i) goto label16; + _r0.i = 0; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0 = _r2; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isLetterOrDigit___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isLetterOrDigit___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isLetterOrDigit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3280) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isLetterOrDigit + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isLowerCase___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isLowerCase___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isLowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 3293) + _r0.i = 97; + if (_r0.i > _r4.i) goto label12; + _r0.i = 122; + if (_r4.i > _r0.i) goto label12; + _r0 = _r3; + label11:; + XMLVM_SOURCE_POSITION("Character.java", 3294) + XMLVM_SOURCE_POSITION("Character.java", 3300) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("Character.java", 3296) + _r0.i = 128; + if (_r4.i >= _r0.i) goto label18; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Character.java", 3297) + goto label11; + label18:; + _r0.i = java_lang_Character_getType___char(_r4.i); + _r1.i = 2; + if (_r0.i != _r1.i) goto label27; + _r0 = _r3; + goto label11; + label27:; + _r0 = _r2; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isLowerCase___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isLowerCase___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isLowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3312) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isLowerCase + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isSpace___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isSpace___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isSpace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3326) + _r0.i = 10; + if (_r1.i == _r0.i) goto label22; + _r0.i = 9; + if (_r1.i == _r0.i) goto label22; + _r0.i = 12; + if (_r1.i == _r0.i) goto label22; + _r0.i = 13; + if (_r1.i == _r0.i) goto label22; + _r0.i = 32; + if (_r1.i == _r0.i) goto label22; + _r0.i = 0; + label21:; + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + _r0.i = 1; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isSpaceChar___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isSpaceChar___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isSpaceChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 1; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 3340) + _r0.i = 32; + if (_r3.i == _r0.i) goto label14; + _r0.i = 160; + if (_r3.i == _r0.i) goto label14; + _r0.i = 5760; + if (_r3.i != _r0.i) goto label16; + label14:; + _r0 = _r2; + label15:; + XMLVM_SOURCE_POSITION("Character.java", 3341) + XMLVM_SOURCE_POSITION("Character.java", 3347) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + XMLVM_SOURCE_POSITION("Character.java", 3343) + _r0.i = 8192; + if (_r3.i >= _r0.i) goto label22; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Character.java", 3344) + goto label15; + label22:; + XMLVM_SOURCE_POSITION("Character.java", 3346) + _r0.i = 8203; + if (_r3.i <= _r0.i) goto label44; + _r0.i = 8232; + if (_r3.i == _r0.i) goto label44; + _r0.i = 8233; + if (_r3.i == _r0.i) goto label44; + _r0.i = 8239; + if (_r3.i == _r0.i) goto label44; + _r0.i = 12288; + if (_r3.i == _r0.i) goto label44; + _r0 = _r1; + goto label15; + label44:; + _r0 = _r2; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isSpaceChar___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isSpaceChar___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isSpaceChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3361) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isSpaceChar + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isTitleCase___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isTitleCase___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isTitleCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r1.i = 8188; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 3373) + _r0.i = 453; + if (_r4.i == _r0.i) goto label20; + _r0.i = 456; + if (_r4.i == _r0.i) goto label20; + _r0.i = 459; + if (_r4.i == _r0.i) goto label20; + _r0.i = 498; + if (_r4.i != _r0.i) goto label22; + label20:; + _r0 = _r3; + label21:; + XMLVM_SOURCE_POSITION("Character.java", 3374) + XMLVM_SOURCE_POSITION("Character.java", 3384) + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + XMLVM_SOURCE_POSITION("Character.java", 3376) + _r0.i = 8072; + if (_r4.i < _r0.i) goto label60; + if (_r4.i > _r1.i) goto label60; + XMLVM_SOURCE_POSITION("Character.java", 3378) + _r0.i = 8111; + if (_r4.i <= _r0.i) goto label46; + XMLVM_SOURCE_POSITION("Character.java", 3379) + _r0.i = 8124; + if (_r4.i == _r0.i) goto label44; + _r0.i = 8140; + if (_r4.i == _r0.i) goto label44; + if (_r4.i == _r1.i) goto label44; + _r0 = _r2; + goto label21; + label44:; + _r0 = _r3; + goto label21; + label46:; + XMLVM_SOURCE_POSITION("Character.java", 3381) + _r0.i = _r4.i & 15; + _r1.i = 8; + if (_r0.i < _r1.i) goto label58; + XMLVM_SOURCE_POSITION("Character.java", 3382) + _r1.i = 15; + if (_r0.i > _r1.i) goto label58; + _r0 = _r3; + goto label21; + label58:; + _r0 = _r2; + goto label21; + label60:; + _r0 = _r2; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isTitleCase___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isTitleCase___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isTitleCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3396) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isTitleCase + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierPart___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isUnicodeIdentifierPart___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isUnicodeIdentifierPart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3409) + _r0.i = java_lang_Character_getType___char(_r3.i); + XMLVM_SOURCE_POSITION("Character.java", 3410) + if (_r0.i < _r2.i) goto label10; + _r1.i = 5; + if (_r0.i <= _r1.i) goto label37; + label10:; + XMLVM_SOURCE_POSITION("Character.java", 3411) + _r1.i = 23; + if (_r0.i == _r1.i) goto label37; + XMLVM_SOURCE_POSITION("Character.java", 3412) + _r1.i = 9; + if (_r0.i < _r1.i) goto label22; + _r1.i = 10; + if (_r0.i <= _r1.i) goto label37; + label22:; + XMLVM_SOURCE_POSITION("Character.java", 3413) + _r1.i = 6; + if (_r0.i == _r1.i) goto label37; + _r1.i = 8; + if (_r0.i == _r1.i) goto label37; + XMLVM_SOURCE_POSITION("Character.java", 3414) + _r0.i = java_lang_Character_isIdentifierIgnorable___char(_r3.i); + if (_r0.i != 0) goto label37; + _r0.i = 0; + label36:; + XMLVM_EXIT_METHOD() + return _r0.i; + label37:; + _r0 = _r2; + goto label36; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierPart___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isUnicodeIdentifierPart___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isUnicodeIdentifierPart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3427) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isUnicodeIdentifierPart + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierStart___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isUnicodeIdentifierStart___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isUnicodeIdentifierStart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3440) + _r0.i = java_lang_Character_getType___char(_r3.i); + XMLVM_SOURCE_POSITION("Character.java", 3441) + if (_r0.i < _r2.i) goto label10; + _r1.i = 5; + if (_r0.i <= _r1.i) goto label16; + label10:; + XMLVM_SOURCE_POSITION("Character.java", 3442) + _r1.i = 10; + if (_r0.i == _r1.i) goto label16; + _r0.i = 0; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0 = _r2; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierStart___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isUnicodeIdentifierStart___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isUnicodeIdentifierStart", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3455) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isUnicodeIdentifierStart + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isUpperCase___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isUpperCase___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 0; + _r1.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3468) + _r0.i = 65; + if (_r0.i > _r3.i) goto label12; + _r0.i = 90; + if (_r3.i > _r0.i) goto label12; + _r0 = _r1; + label11:; + XMLVM_SOURCE_POSITION("Character.java", 3469) + XMLVM_SOURCE_POSITION("Character.java", 3475) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("Character.java", 3471) + _r0.i = 128; + if (_r3.i >= _r0.i) goto label18; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Character.java", 3472) + goto label11; + label18:; + _r0.i = java_lang_Character_getType___char(_r3.i); + if (_r0.i != _r1.i) goto label26; + _r0 = _r1; + goto label11; + label26:; + _r0 = _r2; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isUpperCase___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isUpperCase___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3487) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isUpperCase + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isWhitespace___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isWhitespace___char] + XMLVM_ENTER_METHOD("java.lang.Character", "isWhitespace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 0; + _r1.i = 1; + XMLVM_SOURCE_POSITION("Character.java", 3501) + _r0.i = 28; + if (_r3.i < _r0.i) goto label10; + _r0.i = 32; + if (_r3.i <= _r0.i) goto label18; + label10:; + _r0.i = 9; + if (_r3.i < _r0.i) goto label20; + _r0.i = 13; + if (_r3.i > _r0.i) goto label20; + label18:; + _r0 = _r1; + label19:; + XMLVM_SOURCE_POSITION("Character.java", 3502) + XMLVM_SOURCE_POSITION("Character.java", 3510) + XMLVM_EXIT_METHOD() + return _r0.i; + label20:; + XMLVM_SOURCE_POSITION("Character.java", 3504) + _r0.i = 5760; + if (_r3.i != _r0.i) goto label26; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Character.java", 3505) + goto label19; + label26:; + XMLVM_SOURCE_POSITION("Character.java", 3507) + _r0.i = 8192; + if (_r3.i < _r0.i) goto label34; + _r0.i = 8199; + if (_r3.i != _r0.i) goto label36; + label34:; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Character.java", 3508) + goto label19; + label36:; + _r0.i = 8203; + if (_r3.i <= _r0.i) goto label54; + _r0.i = 8232; + if (_r3.i == _r0.i) goto label54; + _r0.i = 8233; + if (_r3.i == _r0.i) goto label54; + _r0.i = 12288; + if (_r3.i == _r0.i) goto label54; + _r0 = _r2; + goto label19; + label54:; + _r0 = _r1; + goto label19; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Character_isWhitespace___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_isWhitespace___int] + XMLVM_ENTER_METHOD("java.lang.Character", "isWhitespace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3524) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::isWhitespace + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_Character_reverseBytes___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_reverseBytes___char] + XMLVM_ENTER_METHOD("java.lang.Character", "reverseBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3537) + _r0.i = _r2.i << 8; + _r1.i = _r2.i >> 8; + _r0.i = _r0.i | _r1.i; + _r0.i = _r0.i & 0xffff; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_Character_toLowerCase___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toLowerCase___char] + XMLVM_ENTER_METHOD("java.lang.Character", "toLowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r8.i = n1; + _r1.i = 192; + _r6.i = 32768; + // "A\300\330\400\460\462\471\512\570\571\601\602\606\607\611\613\616\617\620\621\623\624\626\627\630\634\635\637\640\646\647\651\654\656\657\661\663\667\670\674\704\705\707\710\712\713\736\761\762\766\767\770\1042\1606\1610\1614\1616\1621\1643\1732\2000\2020\2140\2214\2301\2307\2313\2320\2370\2461\17000\17240\17410\17430\17450\17470\17510\17531\17550\17610\17630\17650\17670\17672\17674\17710\17714\17730\17732\17750\17752\17754\17770\17772\17774\20446\20452\20453\20540\22266\177441" + _r3.o = xmlvm_create_java_string_from_pool(148); + XMLVM_SOURCE_POSITION("Character.java", 3552) + _r0.i = 65; + if (_r0.i > _r8.i) goto label19; + _r0.i = 90; + if (_r8.i > _r0.i) goto label19; + XMLVM_SOURCE_POSITION("Character.java", 3553) + _r0.i = _r8.i + 32; + _r0.i = _r0.i & 0xffff; + label18:; + XMLVM_SOURCE_POSITION("Character.java", 3579) + XMLVM_EXIT_METHOD() + return _r0.i; + label19:; + XMLVM_SOURCE_POSITION("Character.java", 3555) + if (_r8.i >= _r1.i) goto label23; + _r0 = _r8; + XMLVM_SOURCE_POSITION("Character.java", 3556) + goto label18; + label23:; + XMLVM_SOURCE_POSITION("Character.java", 3558) + _r0.i = 1000; + if (_r8.i >= _r0.i) goto label35; + XMLVM_SOURCE_POSITION("Character.java", 3559) + _r0.o = java_lang_Character_GET_lowercaseValuesCache(); + _r1.i = _r8.i - _r1.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r0.i = _r0.i & 0xffff; + goto label18; + label35:; + XMLVM_SOURCE_POSITION("Character.java", 3562) + // "A\300\330\400\460\462\471\512\570\571\601\602\606\607\611\613\616\617\620\621\623\624\626\627\630\634\635\637\640\646\647\651\654\656\657\661\663\667\670\674\704\705\707\710\712\713\736\761\762\766\767\770\1042\1606\1610\1614\1616\1621\1643\1732\2000\2020\2140\2214\2301\2307\2313\2320\2370\2461\17000\17240\17410\17430\17450\17470\17510\17531\17550\17610\17630\17650\17670\17672\17674\17710\17714\17730\17732\17750\17752\17754\17770\17772\17774\20446\20452\20453\20540\22266\177441" + _r0.o = xmlvm_create_java_string_from_pool(148); + + + // Red class access removed: org.apache.harmony.luni.util.BinarySearch::binarySearchRange + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Character.java", 3563) + if (_r0.i < 0) goto label89; + XMLVM_SOURCE_POSITION("Character.java", 3564) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 3565) + // "A\300\330\400\460\462\471\512\570\571\601\602\606\607\611\613\616\617\620\621\623\624\626\627\630\634\635\637\640\646\647\651\654\656\657\661\663\667\670\674\704\705\707\710\712\713\736\761\762\766\767\770\1042\1606\1610\1614\1616\1621\1643\1732\2000\2020\2140\2214\2301\2307\2313\2320\2370\2461\17000\17240\17410\17430\17450\17470\17510\17531\17550\17610\17630\17650\17670\17672\17674\17710\17714\17730\17732\17750\17752\17754\17770\17772\17774\20446\20452\20453\20540\22266\177441" + _r2.o = xmlvm_create_java_string_from_pool(148); + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 3566) + _r3.o = java_lang_Character_GET_lowercaseValues(); + _r4.i = _r0.i * 2; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_SOURCE_POSITION("Character.java", 3567) + _r4.i = _r2.i & _r6.i; + _r5.i = _r3.i & _r6.i; + if (_r4.i == _r5.i) goto label91; + XMLVM_SOURCE_POSITION("Character.java", 3568) + _r1.i = _r3.i ^ _r6.i; + _r1.i = _r1.i & 0xffff; + _r3.i = 1; + label66:; + XMLVM_SOURCE_POSITION("Character.java", 3569) + XMLVM_SOURCE_POSITION("Character.java", 3571) + if (_r8.i > _r1.i) goto label89; + XMLVM_SOURCE_POSITION("Character.java", 3572) + if (_r3.i == 0) goto label78; + _r1.i = _r8.i & 1; + _r2.i = _r2.i & 1; + if (_r1.i == _r2.i) goto label78; + _r0 = _r8; + XMLVM_SOURCE_POSITION("Character.java", 3573) + goto label18; + label78:; + XMLVM_SOURCE_POSITION("Character.java", 3575) + _r1.o = java_lang_Character_GET_lowercaseValues(); + _r0.i = _r0.i * 2; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 3576) + _r0.i = _r0.i + _r8.i; + _r0.i = _r0.i & 0xffff; + goto label18; + label89:; + _r0 = _r8; + goto label18; + label91:; + _r7 = _r3; + _r3 = _r1; + _r1 = _r7; + goto label66; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_toLowerCase___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toLowerCase___int] + XMLVM_ENTER_METHOD("java.lang.Character", "toLowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3593) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::toLowerCase + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Character_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toString__] + XMLVM_ENTER_METHOD("java.lang.Character", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Character.java", 3598) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Character*) _r1.o)->fields.java_lang_Character.value_; + _r0.o = java_lang_String_valueOf___char(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Character_toString___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toString___char] + XMLVM_ENTER_METHOD("java.lang.Character", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3609) + _r0.o = java_lang_String_valueOf___char(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_Character_toTitleCase___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toTitleCase___char] + XMLVM_ENTER_METHOD("java.lang.Character", "toTitleCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3622) + _r0.i = java_lang_Character_isTitleCase___char(_r2.i); + if (_r0.i == 0) goto label8; + _r0 = _r2; + label7:; + XMLVM_SOURCE_POSITION("Character.java", 3623) + XMLVM_SOURCE_POSITION("Character.java", 3629) + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_SOURCE_POSITION("Character.java", 3625) + // "\704\706\707\711\712\714\761\763" + _r0.o = xmlvm_create_java_string_from_pool(150); + + + // Red class access removed: org.apache.harmony.luni.util.BinarySearch::binarySearch + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Character.java", 3626) + if (_r0.i < 0) goto label21; + XMLVM_SOURCE_POSITION("Character.java", 3627) + _r1.o = java_lang_Character_GET_titlecaseValues(); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + goto label7; + label21:; + _r0.i = java_lang_Character_toUpperCase___char(_r2.i); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_toTitleCase___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toTitleCase___int] + XMLVM_ENTER_METHOD("java.lang.Character", "toTitleCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3642) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::toTitleCase + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_Character_toUpperCase___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toUpperCase___char] + XMLVM_ENTER_METHOD("java.lang.Character", "toUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r8.i = n1; + _r1.i = 181; + _r6.i = 32768; + // "a\265\340\370\377\401\461\463\472\513\572\577\603\610\614\622\625\631\641\650\655\660\664\671\675\677\705\706\710\711\713\714\716\735\737\762\763\765\771\1043\1123\1124\1126\1131\1133\1140\1143\1150\1151\1157\1162\1165\1200\1203\1210\1212\1222\1505\1654\1655\1661\1702\1703\1714\1715\1720\1721\1725\1726\1733\1760\1761\1762\2060\2120\2141\2215\2302\2310\2314\2321\2371\2541\17001\17233\17241\17400\17420\17440\17460\17500\17521\17540\17560\17562\17566\17570\17572\17574\17600\17620\17640\17660\17663\17676\17703\17720\17740\17745\17763\20560\22320\177501" + _r3.o = xmlvm_create_java_string_from_pool(147); + XMLVM_SOURCE_POSITION("Character.java", 3657) + _r0.i = 97; + if (_r0.i > _r8.i) goto label21; + _r0.i = 122; + if (_r8.i > _r0.i) goto label21; + XMLVM_SOURCE_POSITION("Character.java", 3658) + _r0.i = 32; + _r0.i = _r8.i - _r0.i; + _r0.i = _r0.i & 0xffff; + label20:; + XMLVM_SOURCE_POSITION("Character.java", 3683) + XMLVM_EXIT_METHOD() + return _r0.i; + label21:; + XMLVM_SOURCE_POSITION("Character.java", 3660) + if (_r8.i >= _r1.i) goto label25; + _r0 = _r8; + XMLVM_SOURCE_POSITION("Character.java", 3661) + goto label20; + label25:; + XMLVM_SOURCE_POSITION("Character.java", 3663) + _r0.i = 1000; + if (_r8.i >= _r0.i) goto label37; + XMLVM_SOURCE_POSITION("Character.java", 3664) + _r0.o = java_lang_Character_GET_uppercaseValuesCache(); + _r1.i = _r8.i - _r1.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r0.i = _r0.i & 0xffff; + goto label20; + label37:; + XMLVM_SOURCE_POSITION("Character.java", 3666) + // "a\265\340\370\377\401\461\463\472\513\572\577\603\610\614\622\625\631\641\650\655\660\664\671\675\677\705\706\710\711\713\714\716\735\737\762\763\765\771\1043\1123\1124\1126\1131\1133\1140\1143\1150\1151\1157\1162\1165\1200\1203\1210\1212\1222\1505\1654\1655\1661\1702\1703\1714\1715\1720\1721\1725\1726\1733\1760\1761\1762\2060\2120\2141\2215\2302\2310\2314\2321\2371\2541\17001\17233\17241\17400\17420\17440\17460\17500\17521\17540\17560\17562\17566\17570\17572\17574\17600\17620\17640\17660\17663\17676\17703\17720\17740\17745\17763\20560\22320\177501" + _r0.o = xmlvm_create_java_string_from_pool(147); + + + // Red class access removed: org.apache.harmony.luni.util.BinarySearch::binarySearchRange + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Character.java", 3667) + if (_r0.i < 0) goto label91; + XMLVM_SOURCE_POSITION("Character.java", 3668) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Character.java", 3669) + // "a\265\340\370\377\401\461\463\472\513\572\577\603\610\614\622\625\631\641\650\655\660\664\671\675\677\705\706\710\711\713\714\716\735\737\762\763\765\771\1043\1123\1124\1126\1131\1133\1140\1143\1150\1151\1157\1162\1165\1200\1203\1210\1212\1222\1505\1654\1655\1661\1702\1703\1714\1715\1720\1721\1725\1726\1733\1760\1761\1762\2060\2120\2141\2215\2302\2310\2314\2321\2371\2541\17001\17233\17241\17400\17420\17440\17460\17500\17521\17540\17560\17562\17566\17570\17572\17574\17600\17620\17640\17660\17663\17676\17703\17720\17740\17745\17763\20560\22320\177501" + _r2.o = xmlvm_create_java_string_from_pool(147); + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r0.i); + XMLVM_SOURCE_POSITION("Character.java", 3670) + _r3.o = java_lang_Character_GET_uppercaseValues(); + _r4.i = _r0.i * 2; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_SOURCE_POSITION("Character.java", 3671) + _r4.i = _r2.i & _r6.i; + _r5.i = _r3.i & _r6.i; + if (_r4.i == _r5.i) goto label93; + XMLVM_SOURCE_POSITION("Character.java", 3672) + _r1.i = _r3.i ^ _r6.i; + _r1.i = _r1.i & 0xffff; + _r3.i = 1; + label68:; + XMLVM_SOURCE_POSITION("Character.java", 3673) + XMLVM_SOURCE_POSITION("Character.java", 3675) + if (_r8.i > _r1.i) goto label91; + XMLVM_SOURCE_POSITION("Character.java", 3676) + if (_r3.i == 0) goto label80; + _r1.i = _r8.i & 1; + _r2.i = _r2.i & 1; + if (_r1.i == _r2.i) goto label80; + _r0 = _r8; + XMLVM_SOURCE_POSITION("Character.java", 3677) + goto label20; + label80:; + XMLVM_SOURCE_POSITION("Character.java", 3679) + _r1.o = java_lang_Character_GET_uppercaseValues(); + _r0.i = _r0.i * 2; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Character.java", 3680) + _r0.i = _r0.i + _r8.i; + _r0.i = _r0.i & 0xffff; + goto label20; + label91:; + _r0 = _r8; + goto label20; + label93:; + _r7 = _r3; + _r3 = _r1; + _r1 = _r7; + goto label68; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_toUpperCase___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Character) + //XMLVM_BEGIN_WRAPPER[java_lang_Character_toUpperCase___int] + XMLVM_ENTER_METHOD("java.lang.Character", "toUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Character.java", 3697) + + + // Red class access removed: com.ibm.icu.lang.UCharacter::toUpperCase + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Character_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Character_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Character", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Character.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Character_compareTo___java_lang_Character(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Character.h b/tests/nbody-java/java_lang_Character.h new file mode 100644 index 0000000000000..fb3e0da565892 --- /dev/null +++ b/tests/nbody-java/java_lang_Character.h @@ -0,0 +1,341 @@ +#ifndef __JAVA_LANG_CHARACTER__ +#define __JAVA_LANG_CHARACTER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Character 8 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +XMLVM_FORWARD_DECL(java_lang_CharSequence) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.Character +XMLVM_DEFINE_CLASS(java_lang_Character, 7, XMLVM_ITABLE_SIZE_java_lang_Character) + +extern JAVA_OBJECT __CLASS_java_lang_Character; +extern JAVA_OBJECT __CLASS_java_lang_Character_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Character_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Character_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Character +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Character \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_CHAR value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Character \ + } java_lang_Character + +struct java_lang_Character { + __TIB_DEFINITION_java_lang_Character* tib; + struct { + __INSTANCE_FIELDS_java_lang_Character; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +typedef struct java_lang_Character java_lang_Character; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Character 7 +#define XMLVM_VTABLE_IDX_java_lang_Character_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Character_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Character_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Character_compareTo___java_lang_Object 6 + +void __INIT_java_lang_Character(); +void __INIT_IMPL_java_lang_Character(); +void __DELETE_java_lang_Character(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Character(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Character(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Character(); +JAVA_LONG java_lang_Character_GET_serialVersionUID(); +void java_lang_Character_PUT_serialVersionUID(JAVA_LONG v); +JAVA_CHAR java_lang_Character_GET_MIN_VALUE(); +void java_lang_Character_PUT_MIN_VALUE(JAVA_CHAR v); +JAVA_CHAR java_lang_Character_GET_MAX_VALUE(); +void java_lang_Character_PUT_MAX_VALUE(JAVA_CHAR v); +JAVA_INT java_lang_Character_GET_MIN_RADIX(); +void java_lang_Character_PUT_MIN_RADIX(JAVA_INT v); +JAVA_INT java_lang_Character_GET_MAX_RADIX(); +void java_lang_Character_PUT_MAX_RADIX(JAVA_INT v); +JAVA_OBJECT java_lang_Character_GET_TYPE(); +void java_lang_Character_PUT_TYPE(JAVA_OBJECT v); +JAVA_BYTE java_lang_Character_GET_UNASSIGNED(); +void java_lang_Character_PUT_UNASSIGNED(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_UPPERCASE_LETTER(); +void java_lang_Character_PUT_UPPERCASE_LETTER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_LOWERCASE_LETTER(); +void java_lang_Character_PUT_LOWERCASE_LETTER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_TITLECASE_LETTER(); +void java_lang_Character_PUT_TITLECASE_LETTER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_MODIFIER_LETTER(); +void java_lang_Character_PUT_MODIFIER_LETTER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_OTHER_LETTER(); +void java_lang_Character_PUT_OTHER_LETTER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_NON_SPACING_MARK(); +void java_lang_Character_PUT_NON_SPACING_MARK(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_ENCLOSING_MARK(); +void java_lang_Character_PUT_ENCLOSING_MARK(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_COMBINING_SPACING_MARK(); +void java_lang_Character_PUT_COMBINING_SPACING_MARK(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DECIMAL_DIGIT_NUMBER(); +void java_lang_Character_PUT_DECIMAL_DIGIT_NUMBER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_LETTER_NUMBER(); +void java_lang_Character_PUT_LETTER_NUMBER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_OTHER_NUMBER(); +void java_lang_Character_PUT_OTHER_NUMBER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_SPACE_SEPARATOR(); +void java_lang_Character_PUT_SPACE_SEPARATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_LINE_SEPARATOR(); +void java_lang_Character_PUT_LINE_SEPARATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_PARAGRAPH_SEPARATOR(); +void java_lang_Character_PUT_PARAGRAPH_SEPARATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_CONTROL(); +void java_lang_Character_PUT_CONTROL(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_FORMAT(); +void java_lang_Character_PUT_FORMAT(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_PRIVATE_USE(); +void java_lang_Character_PUT_PRIVATE_USE(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_SURROGATE(); +void java_lang_Character_PUT_SURROGATE(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DASH_PUNCTUATION(); +void java_lang_Character_PUT_DASH_PUNCTUATION(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_START_PUNCTUATION(); +void java_lang_Character_PUT_START_PUNCTUATION(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_END_PUNCTUATION(); +void java_lang_Character_PUT_END_PUNCTUATION(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_CONNECTOR_PUNCTUATION(); +void java_lang_Character_PUT_CONNECTOR_PUNCTUATION(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_OTHER_PUNCTUATION(); +void java_lang_Character_PUT_OTHER_PUNCTUATION(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_MATH_SYMBOL(); +void java_lang_Character_PUT_MATH_SYMBOL(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_CURRENCY_SYMBOL(); +void java_lang_Character_PUT_CURRENCY_SYMBOL(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_MODIFIER_SYMBOL(); +void java_lang_Character_PUT_MODIFIER_SYMBOL(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_OTHER_SYMBOL(); +void java_lang_Character_PUT_OTHER_SYMBOL(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_INITIAL_QUOTE_PUNCTUATION(); +void java_lang_Character_PUT_INITIAL_QUOTE_PUNCTUATION(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_FINAL_QUOTE_PUNCTUATION(); +void java_lang_Character_PUT_FINAL_QUOTE_PUNCTUATION(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_UNDEFINED(); +void java_lang_Character_PUT_DIRECTIONALITY_UNDEFINED(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_LEFT_TO_RIGHT(); +void java_lang_Character_PUT_DIRECTIONALITY_LEFT_TO_RIGHT(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT(); +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC(); +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_EUROPEAN_NUMBER(); +void java_lang_Character_PUT_DIRECTIONALITY_EUROPEAN_NUMBER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR(); +void java_lang_Character_PUT_DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR(); +void java_lang_Character_PUT_DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_ARABIC_NUMBER(); +void java_lang_Character_PUT_DIRECTIONALITY_ARABIC_NUMBER(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR(); +void java_lang_Character_PUT_DIRECTIONALITY_COMMON_NUMBER_SEPARATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_NONSPACING_MARK(); +void java_lang_Character_PUT_DIRECTIONALITY_NONSPACING_MARK(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_BOUNDARY_NEUTRAL(); +void java_lang_Character_PUT_DIRECTIONALITY_BOUNDARY_NEUTRAL(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_PARAGRAPH_SEPARATOR(); +void java_lang_Character_PUT_DIRECTIONALITY_PARAGRAPH_SEPARATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_SEGMENT_SEPARATOR(); +void java_lang_Character_PUT_DIRECTIONALITY_SEGMENT_SEPARATOR(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_WHITESPACE(); +void java_lang_Character_PUT_DIRECTIONALITY_WHITESPACE(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_OTHER_NEUTRALS(); +void java_lang_Character_PUT_DIRECTIONALITY_OTHER_NEUTRALS(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING(); +void java_lang_Character_PUT_DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE(); +void java_lang_Character_PUT_DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING(); +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE(); +void java_lang_Character_PUT_DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE(JAVA_BYTE v); +JAVA_BYTE java_lang_Character_GET_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT(); +void java_lang_Character_PUT_DIRECTIONALITY_POP_DIRECTIONAL_FORMAT(JAVA_BYTE v); +JAVA_CHAR java_lang_Character_GET_MIN_HIGH_SURROGATE(); +void java_lang_Character_PUT_MIN_HIGH_SURROGATE(JAVA_CHAR v); +JAVA_CHAR java_lang_Character_GET_MAX_HIGH_SURROGATE(); +void java_lang_Character_PUT_MAX_HIGH_SURROGATE(JAVA_CHAR v); +JAVA_CHAR java_lang_Character_GET_MIN_LOW_SURROGATE(); +void java_lang_Character_PUT_MIN_LOW_SURROGATE(JAVA_CHAR v); +JAVA_CHAR java_lang_Character_GET_MAX_LOW_SURROGATE(); +void java_lang_Character_PUT_MAX_LOW_SURROGATE(JAVA_CHAR v); +JAVA_CHAR java_lang_Character_GET_MIN_SURROGATE(); +void java_lang_Character_PUT_MIN_SURROGATE(JAVA_CHAR v); +JAVA_CHAR java_lang_Character_GET_MAX_SURROGATE(); +void java_lang_Character_PUT_MAX_SURROGATE(JAVA_CHAR v); +JAVA_INT java_lang_Character_GET_MIN_SUPPLEMENTARY_CODE_POINT(); +void java_lang_Character_PUT_MIN_SUPPLEMENTARY_CODE_POINT(JAVA_INT v); +JAVA_INT java_lang_Character_GET_MIN_CODE_POINT(); +void java_lang_Character_PUT_MIN_CODE_POINT(JAVA_INT v); +JAVA_INT java_lang_Character_GET_MAX_CODE_POINT(); +void java_lang_Character_PUT_MAX_CODE_POINT(JAVA_INT v); +JAVA_INT java_lang_Character_GET_SIZE(); +void java_lang_Character_PUT_SIZE(JAVA_INT v); +JAVA_OBJECT java_lang_Character_GET_bidiKeys(); +void java_lang_Character_PUT_bidiKeys(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_bidiValues(); +void java_lang_Character_PUT_bidiValues(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_mirrored(); +void java_lang_Character_PUT_mirrored(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_typeKeys(); +void java_lang_Character_PUT_typeKeys(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_typeValues(); +void java_lang_Character_PUT_typeValues(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_typeValuesCache(); +void java_lang_Character_PUT_typeValuesCache(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_uppercaseKeys(); +void java_lang_Character_PUT_uppercaseKeys(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_uppercaseValues(); +void java_lang_Character_PUT_uppercaseValues(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_uppercaseValuesCache(); +void java_lang_Character_PUT_uppercaseValuesCache(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_lowercaseKeys(); +void java_lang_Character_PUT_lowercaseKeys(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_lowercaseValues(); +void java_lang_Character_PUT_lowercaseValues(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_lowercaseValuesCache(); +void java_lang_Character_PUT_lowercaseValuesCache(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_digitKeys(); +void java_lang_Character_PUT_digitKeys(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_digitValues(); +void java_lang_Character_PUT_digitValues(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_typeTags(); +void java_lang_Character_PUT_typeTags(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_DIRECTIONALITY(); +void java_lang_Character_PUT_DIRECTIONALITY(JAVA_OBJECT v); +JAVA_INT java_lang_Character_GET_ISJAVASTART(); +void java_lang_Character_PUT_ISJAVASTART(JAVA_INT v); +JAVA_INT java_lang_Character_GET_ISJAVAPART(); +void java_lang_Character_PUT_ISJAVAPART(JAVA_INT v); +JAVA_OBJECT java_lang_Character_GET_titlecaseKeys(); +void java_lang_Character_PUT_titlecaseKeys(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_titlecaseValues(); +void java_lang_Character_PUT_titlecaseValues(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_numericKeys(); +void java_lang_Character_PUT_numericKeys(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Character_GET_numericValues(); +void java_lang_Character_PUT_numericValues(JAVA_OBJECT v); +JAVA_INT java_lang_Character_GET_CACHE_LEN(); +void java_lang_Character_PUT_CACHE_LEN(JAVA_INT v); +JAVA_BOOLEAN java_lang_Character_GET__assertionsDisabled(); +void java_lang_Character_PUT__assertionsDisabled(JAVA_BOOLEAN v); +void java_lang_Character___CLINIT_(); +void java_lang_Character___INIT____char(JAVA_OBJECT me, JAVA_CHAR n1); +JAVA_CHAR java_lang_Character_charValue__(JAVA_OBJECT me); +JAVA_INT java_lang_Character_compareTo___java_lang_Character(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Character_valueOf___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isValidCodePoint___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isSupplementaryCodePoint___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isHighSurrogate___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isLowSurrogate___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isSurrogatePair___char_char(JAVA_CHAR n1, JAVA_CHAR n2); +JAVA_INT java_lang_Character_charCount___int(JAVA_INT n1); +JAVA_INT java_lang_Character_toCodePoint___char_char(JAVA_CHAR n1, JAVA_CHAR n2); +JAVA_INT java_lang_Character_codePointAt___java_lang_CharSequence_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_Character_codePointAt___char_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_Character_codePointAt___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_INT java_lang_Character_codePointBefore___java_lang_CharSequence_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_Character_codePointBefore___char_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_Character_codePointBefore___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_INT java_lang_Character_toChars___int_char_1ARRAY_int(JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3); +JAVA_OBJECT java_lang_Character_toChars___int(JAVA_INT n1); +JAVA_INT java_lang_Character_codePointCount___java_lang_CharSequence_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_INT java_lang_Character_codePointCount___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_INT java_lang_Character_offsetByCodePoints___java_lang_CharSequence_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_INT java_lang_Character_offsetByCodePoints___char_1ARRAY_int_int_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5); +JAVA_INT java_lang_Character_digit___char_int(JAVA_CHAR n1, JAVA_INT n2); +JAVA_INT java_lang_Character_digit___int_int(JAVA_INT n1, JAVA_INT n2); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Character_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_CHAR java_lang_Character_forDigit___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_Character_getNumericValue___char(JAVA_CHAR n1); +JAVA_INT java_lang_Character_getNumericValue___int(JAVA_INT n1); +JAVA_INT java_lang_Character_getType___char(JAVA_CHAR n1); +JAVA_INT java_lang_Character_getType___int(JAVA_INT n1); +JAVA_BYTE java_lang_Character_getDirectionality___char(JAVA_CHAR n1); +JAVA_BYTE java_lang_Character_getDirectionality___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isMirrored___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isMirrored___int(JAVA_INT n1); +// Vtable index: 4 +JAVA_INT java_lang_Character_hashCode__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Character_isDefined___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isDefined___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isDigit___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isDigit___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isIdentifierIgnorable___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isIdentifierIgnorable___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isISOControl___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isISOControl___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierPart___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierPart___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierStart___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isJavaIdentifierStart___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isJavaLetter___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isJavaLetterOrDigit___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isLetter___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isLetter___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isLetterOrDigit___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isLetterOrDigit___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isLowerCase___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isLowerCase___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isSpace___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isSpaceChar___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isSpaceChar___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isTitleCase___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isTitleCase___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierPart___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierPart___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierStart___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isUnicodeIdentifierStart___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isUpperCase___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isUpperCase___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_Character_isWhitespace___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_lang_Character_isWhitespace___int(JAVA_INT n1); +JAVA_CHAR java_lang_Character_reverseBytes___char(JAVA_CHAR n1); +JAVA_CHAR java_lang_Character_toLowerCase___char(JAVA_CHAR n1); +JAVA_INT java_lang_Character_toLowerCase___int(JAVA_INT n1); +// Vtable index: 5 +JAVA_OBJECT java_lang_Character_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Character_toString___char(JAVA_CHAR n1); +JAVA_CHAR java_lang_Character_toTitleCase___char(JAVA_CHAR n1); +JAVA_INT java_lang_Character_toTitleCase___int(JAVA_INT n1); +JAVA_CHAR java_lang_Character_toUpperCase___char(JAVA_CHAR n1); +JAVA_INT java_lang_Character_toUpperCase___int(JAVA_INT n1); +// Vtable index: 6 +JAVA_INT java_lang_Character_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Class.c b/tests/nbody-java/java_lang_Class.c new file mode 100644 index 0000000000000..471a8fa9f75bd --- /dev/null +++ b/tests/nbody-java/java_lang_Class.c @@ -0,0 +1,1273 @@ +#include "xmlvm.h" +#include "java_io_File.h" +#include "java_io_IOException.h" +#include "java_lang_ClassLoader.h" +#include "java_lang_RuntimeException.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_lang_Throwable.h" +#include "java_lang_reflect_Constructor.h" +#include "java_lang_reflect_Field.h" +#include "java_lang_reflect_Method.h" +#include "org_xmlvm_runtime_XMLVMClassLoader.h" + +#include "java_lang_Class.h" + +#define XMLVM_CURRENT_CLASS_NAME Class +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Class + +__TIB_DEFINITION_java_lang_Class __TIB_java_lang_Class = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Class, // classInitializer + "java.lang.Class", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/reflect/AnnotatedElement;Ljava/lang/reflect/GenericDeclaration;Ljava/lang/reflect/Type;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Class), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Class; +JAVA_OBJECT __CLASS_java_lang_Class_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Class_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Class_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Class_serialVersionUID; +static JAVA_OBJECT _STATIC_java_lang_Class_classLoader; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Class() +{ + staticInitializerLock(&__TIB_java_lang_Class); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Class.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Class.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Class); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Class.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Class.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Class.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Class") + __INIT_IMPL_java_lang_Class(); + } +} + +void __INIT_IMPL_java_lang_Class() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Class.newInstanceFunc = __NEW_INSTANCE_java_lang_Class; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Class.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Class.vtable[6] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Class.vtable[7] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Class.vtable[8] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Class.vtable[9] = (VTABLE_PTR) &java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY; + __TIB_java_lang_Class.vtable[10] = (VTABLE_PTR) &java_lang_Class_getTypeParameters__; + __TIB_java_lang_Class.vtable[11] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Class.vtable[12] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Class.vtable[5] = (VTABLE_PTR) &java_lang_Class_toString__; + xmlvm_init_native_java_lang_Class(); + // Initialize interface information + __TIB_java_lang_Class.numImplementedInterfaces = 4; + __TIB_java_lang_Class.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 4); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Class.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_reflect_AnnotatedElement) + + __TIB_java_lang_Class.implementedInterfaces[0][1] = &__TIB_java_lang_reflect_AnnotatedElement; + + XMLVM_CLASS_INIT(java_lang_reflect_GenericDeclaration) + + __TIB_java_lang_Class.implementedInterfaces[0][2] = &__TIB_java_lang_reflect_GenericDeclaration; + + XMLVM_CLASS_INIT(java_lang_reflect_Type) + + __TIB_java_lang_Class.implementedInterfaces[0][3] = &__TIB_java_lang_reflect_Type; + // Initialize itable for this class + __TIB_java_lang_Class.itableBegin = &__TIB_java_lang_Class.itable[0]; + __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotation___java_lang_Class] = __TIB_java_lang_Class.vtable[6]; + __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotations__] = __TIB_java_lang_Class.vtable[7]; + __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getDeclaredAnnotations__] = __TIB_java_lang_Class.vtable[8]; + __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_isAnnotationPresent___java_lang_Class] = __TIB_java_lang_Class.vtable[11]; + __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_GenericDeclaration_getTypeParameters__] = __TIB_java_lang_Class.vtable[10]; + + _STATIC_java_lang_Class_serialVersionUID = 3206093459760846163; + _STATIC_java_lang_Class_classLoader = (java_lang_ClassLoader*) JAVA_NULL; + + __TIB_java_lang_Class.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Class.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Class.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Class.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Class.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Class.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Class.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Class.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Class = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Class); + __TIB_java_lang_Class.clazz = __CLASS_java_lang_Class; + __TIB_java_lang_Class.baseType = JAVA_NULL; + __CLASS_java_lang_Class_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Class); + __CLASS_java_lang_Class_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Class_1ARRAY); + __CLASS_java_lang_Class_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Class_2ARRAY); + java_lang_Class___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Class] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Class.classInitialized = 1; +} + +void __DELETE_java_lang_Class(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Class] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Class(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Class*) me)->fields.java_lang_Class.tib_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Class] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Class() +{ XMLVM_CLASS_INIT(java_lang_Class) +java_lang_Class* me = (java_lang_Class*) XMLVM_MALLOC(sizeof(java_lang_Class)); + me->tib = &__TIB_java_lang_Class; + __INIT_INSTANCE_MEMBERS_java_lang_Class(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Class] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Class() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Class_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Class) + return _STATIC_java_lang_Class_serialVersionUID; +} + +void java_lang_Class_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Class) +_STATIC_java_lang_Class_serialVersionUID = v; +} + +JAVA_OBJECT java_lang_Class_GET_classLoader() +{ + XMLVM_CLASS_INIT(java_lang_Class) + return _STATIC_java_lang_Class_classLoader; +} + +void java_lang_Class_PUT_classLoader(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Class) +_STATIC_java_lang_Class_classLoader = v; +} + +//XMLVM_NATIVE[void java_lang_Class_initNativeLayer__()] + +void java_lang_Class___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class___INIT____java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Class", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Class.java", 127) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Class.java", 128) + XMLVM_CHECK_NPE(0) + ((java_lang_Class*) _r0.o)->fields.java_lang_Class.tib_ = _r1.o; + XMLVM_SOURCE_POSITION("Class.java", 129) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getStackClasses___int_boolean(JAVA_INT n1, JAVA_BOOLEAN n2)] + +JAVA_OBJECT java_lang_Class_forName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Class) + //XMLVM_BEGIN_WRAPPER[java_lang_Class_forName___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Class", "forName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Class.java", 189) + _r0.i = 1; + _r1.o = JAVA_NULL; + _r0.o = java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(_r2.o, _r0.i, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getClasses__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void java_lang_Class_verify__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getAnnotation___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getAnnotations__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getCanonicalName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getCanonicalName__] + XMLVM_ENTER_METHOD("java.lang.Class", "getCanonicalName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Class.java", 277) + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_Class_isAnonymousClass__(_r3.o); + if (_r0.i != 0) goto label12; + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_Class_isLocalClass__(_r3.o); + if (_r0.i == 0) goto label14; + label12:; + XMLVM_SOURCE_POSITION("Class.java", 279) + _r0.o = JAVA_NULL; + label13:; + XMLVM_SOURCE_POSITION("Class.java", 284) + XMLVM_EXIT_METHOD() + return _r0.o; + label14:; + XMLVM_SOURCE_POSITION("Class.java", 281) + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_Class_isPrimitive__(_r3.o); + if (_r0.i == 0) goto label25; + XMLVM_SOURCE_POSITION("Class.java", 282) + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_Class_getSimpleName__(_r3.o); + goto label13; + label25:; + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_Class_getPackage__(_r3.o); + if (_r0.o != JAVA_NULL) goto label42; + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + label33:; + _r1.i = 36; + _r2.i = 46; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_replace___char_char(_r0.o, _r1.i, _r2.i); + goto label13; + label42:; + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_Class_getPackage__(_r3.o); + + + // Red class access removed: java.lang.Package::getName + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "." + _r1.o = xmlvm_create_java_string_from_pool(52); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_Class_getSimpleName__(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Class_getClassLoader__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getClassLoader__] + XMLVM_ENTER_METHOD("java.lang.Class", "getClassLoader", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Class.java", 301) + _r0.o = java_lang_Class_GET_classLoader(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Class_getClassLoaderImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getClassLoaderImpl__] + XMLVM_ENTER_METHOD("java.lang.Class", "getClassLoaderImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Class.java", 317) + _r0.o = java_lang_Class_GET_classLoader(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getComponentType__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getConstructor___java_lang_Class_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Class", "getConstructor", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Class.java", 347) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getConstructors__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredAnnotations__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredClasses__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Class", "getDeclaredConstructor", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("Class.java", 409) + XMLVM_CHECK_NPE(5) + _r0.o = java_lang_Class_getDeclaredConstructors__(_r5.o); + _r1.i = 0; + label5:; + XMLVM_SOURCE_POSITION("Class.java", 410) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r1.i >= _r2.i) goto label26; + XMLVM_SOURCE_POSITION("Class.java", 411) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_reflect_Constructor_getParameterTypes__(_r2.o); + _r2.i = java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(_r6.o, _r2.o); + if (_r2.i == 0) goto label23; + XMLVM_SOURCE_POSITION("Class.java", 412) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_EXIT_METHOD() + return _r2.o; + label23:; + _r1.i = _r1.i + 1; + goto label5; + label26:; + XMLVM_SOURCE_POSITION("Class.java", 415) + + + // Red class access removed: java.lang.NoSuchMethodException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r3.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT___(_r3.o); + XMLVM_CHECK_NPE(5) + _r4.o = java_lang_Class_getName__(_r5.o); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + // "." + _r4.o = xmlvm_create_java_string_from_pool(53); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + + + // Red class access removed: java.lang.NoSuchMethodException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_Class) + //XMLVM_BEGIN_WRAPPER[java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Class", "arrayEqual", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = n1; + _r6.o = n2; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Class.java", 419) + if (_r5.o != JAVA_NULL) goto label13; + XMLVM_SOURCE_POSITION("Class.java", 420) + if (_r6.o == JAVA_NULL) goto label9; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + if (_r1.i != 0) goto label11; + label9:; + _r1 = _r4; + label10:; + XMLVM_SOURCE_POSITION("Class.java", 437) + XMLVM_EXIT_METHOD() + return _r1.i; + label11:; + _r1 = _r3; + goto label10; + label13:; + XMLVM_SOURCE_POSITION("Class.java", 423) + if (_r6.o != JAVA_NULL) goto label22; + XMLVM_SOURCE_POSITION("Class.java", 424) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r1.i != 0) goto label20; + _r1 = _r4; + goto label10; + label20:; + _r1 = _r3; + goto label10; + label22:; + XMLVM_SOURCE_POSITION("Class.java", 427) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + if (_r1.i == _r2.i) goto label28; + _r1 = _r3; + XMLVM_SOURCE_POSITION("Class.java", 428) + goto label10; + label28:; + XMLVM_SOURCE_POSITION("Class.java", 431) + _r0.i = 0; + label29:; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r0.i >= _r1.i) goto label43; + XMLVM_SOURCE_POSITION("Class.java", 432) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r1.o == _r2.o) goto label40; + _r1 = _r3; + XMLVM_SOURCE_POSITION("Class.java", 433) + goto label10; + label40:; + _r0.i = _r0.i + 1; + goto label29; + label43:; + _r1 = _r4; + goto label10; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredConstructors__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredFields__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getDeclaredMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getDeclaredMethod___java_lang_String_java_lang_Class_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Class", "getDeclaredMethod", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r6.o = me; + _r7.o = n1; + _r8.o = n2; + XMLVM_SOURCE_POSITION("Class.java", 509) + XMLVM_CHECK_NPE(6) + _r2.o = java_lang_Class_getDeclaredMethods__(_r6.o); + _r0.i = 0; + label5:; + XMLVM_SOURCE_POSITION("Class.java", 510) + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r0.i >= _r3.i) goto label34; + XMLVM_SOURCE_POSITION("Class.java", 511) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Class.java", 512) + //java_lang_reflect_Method_getName__[13] + XMLVM_CHECK_NPE(1) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_reflect_Method*) _r1.o)->tib->vtable[13])(_r1.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r3.o); + if (_r3.i == 0) goto label31; + XMLVM_CHECK_NPE(1) + _r3.o = java_lang_reflect_Method_getParameterTypes__(_r1.o); + _r3.i = java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(_r8.o, _r3.o); + if (_r3.i == 0) goto label31; + XMLVM_SOURCE_POSITION("Class.java", 514) + XMLVM_EXIT_METHOD() + return _r1.o; + label31:; + _r0.i = _r0.i + 1; + goto label5; + label34:; + XMLVM_SOURCE_POSITION("Class.java", 517) + + + // Red class access removed: java.lang.NoSuchMethodException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r4.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT___(_r4.o); + XMLVM_CHECK_NPE(6) + _r5.o = java_lang_Class_getName__(_r6.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + // "." + _r5.o = xmlvm_create_java_string_from_pool(52); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r7.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + + + // Red class access removed: java.lang.NoSuchMethodException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredMethods__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getDeclaringClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getDeclaringClass__] + XMLVM_ENTER_METHOD("java.lang.Class", "getDeclaringClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Class.java", 543) + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Class_isArray__(_r1.o); + if (_r0.i != 0) goto label12; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Class_isPrimitive__(_r1.o); + if (_r0.i == 0) goto label14; + label12:; + XMLVM_SOURCE_POSITION("Class.java", 544) + _r0.o = JAVA_NULL; + label13:; + XMLVM_SOURCE_POSITION("Class.java", 546) + XMLVM_EXIT_METHOD() + return _r0.o; + label14:; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_Class_getEnclosingClass__(_r1.o); + goto label13; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnclosingClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnclosingConstructor__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnclosingMethod__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnumConstants__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getFields__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getGenericInterfaces__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getGenericInterfaces__] + XMLVM_ENTER_METHOD("java.lang.Class", "getGenericInterfaces", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Class.java", 632) + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Class.java", 633) + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_Class_getSignatureAttribute__(_r2.o); + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::parseForClass + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Class.java", 634) + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser,org.apache.harmony.luni.lang.reflect.ListOfTypes::interfaceTypes + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.Types::getClonedTypeArray + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Class_getGenericSuperclass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getGenericSuperclass__] + XMLVM_ENTER_METHOD("java.lang.Class", "getGenericSuperclass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Class.java", 646) + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Class.java", 647) + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_Class_getSignatureAttribute__(_r2.o); + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::parseForClass + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Class.java", 648) + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser,java.lang.reflect.Type::superclassType + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.Types::getType + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getInterfaces__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Class", "getMethod", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r6.o = me; + _r7.o = n1; + _r8.o = n2; + XMLVM_SOURCE_POSITION("Class.java", 684) + XMLVM_CHECK_NPE(6) + _r2.o = java_lang_Class_getMethods__(_r6.o); + _r0.i = 0; + label5:; + XMLVM_SOURCE_POSITION("Class.java", 685) + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r0.i >= _r3.i) goto label34; + XMLVM_SOURCE_POSITION("Class.java", 686) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("Class.java", 687) + //java_lang_reflect_Method_getName__[13] + XMLVM_CHECK_NPE(1) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_reflect_Method*) _r1.o)->tib->vtable[13])(_r1.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r3.o); + if (_r3.i == 0) goto label31; + XMLVM_CHECK_NPE(1) + _r3.o = java_lang_reflect_Method_getParameterTypes__(_r1.o); + _r3.i = java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(_r8.o, _r3.o); + if (_r3.i == 0) goto label31; + XMLVM_SOURCE_POSITION("Class.java", 689) + XMLVM_EXIT_METHOD() + return _r1.o; + label31:; + _r0.i = _r0.i + 1; + goto label5; + label34:; + XMLVM_SOURCE_POSITION("Class.java", 692) + + + // Red class access removed: java.lang.NoSuchMethodException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r4.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT___(_r4.o); + XMLVM_CHECK_NPE(6) + _r5.o = java_lang_Class_getName__(_r6.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + // "." + _r5.o = xmlvm_create_java_string_from_pool(52); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r7.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + + + // Red class access removed: java.lang.NoSuchMethodException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Class_getMethods__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getMethods__] + XMLVM_ENTER_METHOD("java.lang.Class", "getMethods", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.o = me; + _r6.i = 0; + XMLVM_SOURCE_POSITION("Class.java", 713) + XMLVM_CHECK_NPE(7) + _r3.o = java_lang_Class_getDeclaredMethods__(_r7.o); + XMLVM_SOURCE_POSITION("Class.java", 714) + XMLVM_CHECK_NPE(7) + _r1.o = java_lang_Class_getSuperclass__(_r7.o); + if (_r1.o != JAVA_NULL) goto label13; + XMLVM_SOURCE_POSITION("Class.java", 715) + _r4 = _r3; + label12:; + XMLVM_SOURCE_POSITION("Class.java", 716) + XMLVM_SOURCE_POSITION("Class.java", 722) + XMLVM_EXIT_METHOD() + return _r4.o; + label13:; + XMLVM_SOURCE_POSITION("Class.java", 718) + XMLVM_CHECK_NPE(1) + _r2.o = java_lang_Class_getMethods__(_r1.o); + XMLVM_SOURCE_POSITION("Class.java", 719) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r4.i = _r4.i + _r5.i; + XMLVM_CLASS_INIT(java_lang_reflect_Method) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_reflect_Method, _r4.i); + XMLVM_SOURCE_POSITION("Class.java", 720) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r6.i, _r0.o, _r6.i, _r4.i); + XMLVM_SOURCE_POSITION("Class.java", 721) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r6.i, _r0.o, _r4.i, _r5.i); + _r4 = _r0; + goto label12; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_lang_Class_getModifiers__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getName__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSimpleName__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getProtectionDomain__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getPDImpl__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getResource___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Class", "getResource", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + _r8.o = me; + _r9.o = n1; + _r6.i = 46; + // "/" + _r7.o = xmlvm_create_java_string_from_pool(54); + XMLVM_SOURCE_POSITION("Class.java", 796) + _r2.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(2) + java_io_File___INIT____java_lang_String(_r2.o, _r9.o); + XMLVM_SOURCE_POSITION("Class.java", 798) + XMLVM_CHECK_NPE(2) + _r4.i = java_io_File_exists__(_r2.o); + if (_r4.i != 0) goto label33; + XMLVM_SOURCE_POSITION("Class.java", 800) + // "/" + _r4.o = xmlvm_create_java_string_from_pool(54); + XMLVM_CHECK_NPE(9) + _r4.i = java_lang_String_startsWith___java_lang_String(_r9.o, _r7.o); + if (_r4.i == 0) goto label68; + XMLVM_SOURCE_POSITION("Class.java", 801) + _r4.i = 1; + XMLVM_CHECK_NPE(9) + _r9.o = java_lang_String_substring___int(_r9.o, _r4.i); + label28:; + XMLVM_SOURCE_POSITION("Class.java", 813) + _r2.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(2) + java_io_File___INIT____java_lang_String(_r2.o, _r9.o); + label33:; + XMLVM_SOURCE_POSITION("Class.java", 816) + XMLVM_CHECK_NPE(2) + _r4.i = java_io_File_exists__(_r2.o); + if (_r4.i == 0) goto label125; + XMLVM_TRY_BEGIN(w556aaac44b1c26) + // Begin try + XMLVM_SOURCE_POSITION("Class.java", 818) + + + // Red class access removed: java.net.URL::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r5.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(5) + java_lang_StringBuilder___INIT___(_r5.o); + // "file://" + _r6.o = xmlvm_create_java_string_from_pool(55); + XMLVM_CHECK_NPE(5) + _r5.o = java_lang_StringBuilder_append___java_lang_String(_r5.o, _r6.o); + XMLVM_CHECK_NPE(2) + _r6.o = java_io_File_getAbsolutePath__(_r2.o); + XMLVM_CHECK_NPE(5) + _r5.o = java_lang_StringBuilder_append___java_lang_String(_r5.o, _r6.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(5) + _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r5.o)->tib->vtable[5])(_r5.o); + + + // Red class access removed: java.net.URL:: + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w556aaac44b1c26) + XMLVM_CATCH_END(w556aaac44b1c26) + XMLVM_RESTORE_EXCEPTION_ENV(w556aaac44b1c26) + label67:; + XMLVM_SOURCE_POSITION("Class.java", 823) + XMLVM_EXIT_METHOD() + return _r4.o; + label68:; + XMLVM_SOURCE_POSITION("Class.java", 803) + XMLVM_CHECK_NPE(8) + _r3.o = java_lang_Class_getName__(_r8.o); + XMLVM_SOURCE_POSITION("Class.java", 804) + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_String_lastIndexOf___int(_r3.o, _r6.i); + _r4.i = -1; + if (_r0.i == _r4.i) goto label114; + XMLVM_SOURCE_POSITION("Class.java", 805) + XMLVM_SOURCE_POSITION("Class.java", 806) + _r4.i = 0; + XMLVM_CHECK_NPE(3) + _r4.o = java_lang_String_substring___int_int(_r3.o, _r4.i, _r0.i); + _r5.i = 47; + XMLVM_CHECK_NPE(4) + _r3.o = java_lang_String_replace___char_char(_r4.o, _r6.i, _r5.i); + label90:; + XMLVM_SOURCE_POSITION("Class.java", 811) + _r4.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT___(_r4.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r3.o); + // "/" + _r5.o = xmlvm_create_java_string_from_pool(54); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r7.o); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r9.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r9.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + goto label28; + label114:; + XMLVM_SOURCE_POSITION("Class.java", 808) + // "" + _r3.o = xmlvm_create_java_string_from_pool(21); + goto label90; + label117:; + XMLVM_SOURCE_POSITION("Class.java", 819) + java_lang_Thread* curThread_w556aaac44b1c59 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w556aaac44b1c59->fields.java_lang_Thread.xmlvmException_; + _r1 = _r4; + XMLVM_SOURCE_POSITION("Class.java", 820) + _r4.o = __NEW_java_lang_RuntimeException(); + XMLVM_CHECK_NPE(4) + java_lang_RuntimeException___INIT____java_lang_Throwable(_r4.o, _r1.o); + XMLVM_THROW_CUSTOM(_r4.o) + label125:; + _r4.o = JAVA_NULL; + goto label67; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Class_getResourceAsStream___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getResourceAsStream___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Class", "getResourceAsStream", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Class.java", 842) + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_Class_getResource___java_lang_String(_r3.o, _r4.o); + if (_r1.o != JAVA_NULL) goto label8; + label7:; + XMLVM_SOURCE_POSITION("Class.java", 843) + XMLVM_SOURCE_POSITION("Class.java", 849) + XMLVM_EXIT_METHOD() + return _r2.o; + label8:; + XMLVM_TRY_BEGIN(w556aaac45b1c12) + // Begin try + XMLVM_SOURCE_POSITION("Class.java", 847) + + + // Red class access removed: java.net.URL::openStream + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w556aaac45b1c12) + XMLVM_CATCH_SPECIFIC(w556aaac45b1c12,java_io_IOException,13) + XMLVM_CATCH_END(w556aaac45b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w556aaac45b1c12) + goto label7; + label13:; + XMLVM_SOURCE_POSITION("Class.java", 848) + java_lang_Thread* curThread_w556aaac45b1c16 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w556aaac45b1c16->fields.java_lang_Thread.xmlvmException_; + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSigners__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSuperclass__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_getTypeParameters__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getTypeParameters__] + XMLVM_ENTER_METHOD("java.lang.Class", "getTypeParameters", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Class.java", 885) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w556aaac48b1b4) + // Begin try + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Class.java", 886) + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_Class_getSignatureAttribute__(_r2.o); + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::parseForClass + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Class.java", 887) + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser,java.lang.reflect.TypeVariable[]::formalTypeParameters + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.reflect.TypeVariable[]::clone + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.reflect.TypeVariable[]::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w556aaac48b1b4) + XMLVM_CATCH_SPECIFIC(w556aaac48b1b4,java_lang_Object,24) + XMLVM_CATCH_END(w556aaac48b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w556aaac48b1b4) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return _r1.o; + label24:; + java_lang_Thread* curThread_w556aaac48b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w556aaac48b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAnnotation__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAnnotationPresent___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAnonymousClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isArray__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAssignableFrom___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isEnum__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isInstance___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isInterface__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isLocalClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isMemberClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isPrimitive__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isSynthetic__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_newInstance__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Class_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_toString__] + XMLVM_ENTER_METHOD("java.lang.Class", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Class.java", 1031) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Class.java", 1032) + XMLVM_CHECK_NPE(2) + _r1.i = java_lang_Class_isPrimitive__(_r2.o); + if (_r1.i != 0) goto label27; + XMLVM_SOURCE_POSITION("Class.java", 1033) + XMLVM_CHECK_NPE(2) + _r1.i = java_lang_Class_isInterface__(_r2.o); + if (_r1.i == 0) goto label39; + XMLVM_SOURCE_POSITION("Class.java", 1034) + // "interface" + _r1.o = xmlvm_create_java_string_from_pool(56); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label22:; + XMLVM_SOURCE_POSITION("Class.java", 1038) + // " " + _r1.o = xmlvm_create_java_string_from_pool(57); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label27:; + XMLVM_SOURCE_POSITION("Class.java", 1040) + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_Class_getName__(_r2.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Class.java", 1041) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r1.o; + label39:; + XMLVM_SOURCE_POSITION("Class.java", 1036) + // "class" + _r1.o = xmlvm_create_java_string_from_pool(58); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Class_getPackage__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_getPackage__] + XMLVM_ENTER_METHOD("java.lang.Class", "getPackage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Class.java", 1053) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_Class_getPackageString__(_r1.o); + + + // Red class access removed: java.lang.Package::getPackage + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getPackageString__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_desiredAssertionStatus__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_asSubclass___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_OBJECT java_lang_Class_cast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class_cast___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Class", "cast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Class.java", 1092) + if (_r2.o == JAVA_NULL) goto label12; + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o); + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Class_isAssignableFrom___java_lang_Class(_r1.o, _r0.o); + if (_r0.i == 0) goto label13; + label12:; + XMLVM_SOURCE_POSITION("Class.java", 1093) + XMLVM_EXIT_METHOD() + return _r2.o; + label13:; + XMLVM_SOURCE_POSITION("Class.java", 1095) + + + // Red class access removed: java.lang.ClassCastException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ClassCastException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSignatureAttribute__(JAVA_OBJECT me)] + +void java_lang_Class___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Class___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Class", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Class.java", 118) + _r0.o = __NEW_org_xmlvm_runtime_XMLVMClassLoader(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_XMLVMClassLoader___INIT___(_r0.o); + java_lang_Class_PUT_classLoader( _r0.o); + XMLVM_SOURCE_POSITION("Class.java", 124) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Class.h b/tests/nbody-java/java_lang_Class.h new file mode 100644 index 0000000000000..f6b5ca30aa9c2 --- /dev/null +++ b/tests/nbody-java/java_lang_Class.h @@ -0,0 +1,191 @@ +#ifndef __JAVA_LANG_CLASS__ +#define __JAVA_LANG_CLASS__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Class 5 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_reflect_AnnotatedElement.h" +#include "java_lang_reflect_GenericDeclaration.h" +#include "java_lang_reflect_Type.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_File +#define XMLVM_FORWARD_DECL_java_io_File +XMLVM_FORWARD_DECL(java_io_File) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +XMLVM_FORWARD_DECL(java_io_IOException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader +#define XMLVM_FORWARD_DECL_java_lang_ClassLoader +XMLVM_FORWARD_DECL(java_lang_ClassLoader) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimeException +#define XMLVM_FORWARD_DECL_java_lang_RuntimeException +XMLVM_FORWARD_DECL(java_lang_RuntimeException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +#define XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +XMLVM_FORWARD_DECL(java_lang_reflect_Constructor) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Field +#define XMLVM_FORWARD_DECL_java_lang_reflect_Field +XMLVM_FORWARD_DECL(java_lang_reflect_Field) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Method +#define XMLVM_FORWARD_DECL_java_lang_reflect_Method +XMLVM_FORWARD_DECL(java_lang_reflect_Method) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader +XMLVM_FORWARD_DECL(org_xmlvm_runtime_XMLVMClassLoader) +#endif +// Class declarations for java.lang.Class +XMLVM_DEFINE_CLASS(java_lang_Class, 13, XMLVM_ITABLE_SIZE_java_lang_Class) + +extern JAVA_OBJECT __CLASS_java_lang_Class; +extern JAVA_OBJECT __CLASS_java_lang_Class_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Class_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Class_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Class +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Class \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT tib_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Class \ + } java_lang_Class + +struct java_lang_Class { + __TIB_DEFINITION_java_lang_Class* tib; + struct { + __INSTANCE_FIELDS_java_lang_Class; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +typedef struct java_lang_Class java_lang_Class; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Class 13 +#define XMLVM_VTABLE_IDX_java_lang_Class_getAnnotation___java_lang_Class 6 +#define XMLVM_VTABLE_IDX_java_lang_Class_getAnnotations__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredAnnotations__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY 9 +#define XMLVM_VTABLE_IDX_java_lang_Class_getTypeParameters__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Class_isAnnotationPresent___java_lang_Class 11 +#define XMLVM_VTABLE_IDX_java_lang_Class_newInstance__ 12 +#define XMLVM_VTABLE_IDX_java_lang_Class_toString__ 5 + +void __INIT_java_lang_Class(); +void __INIT_IMPL_java_lang_Class(); +void __DELETE_java_lang_Class(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Class(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Class(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Class(); +void xmlvm_init_native_java_lang_Class(); +JAVA_LONG java_lang_Class_GET_serialVersionUID(); +void java_lang_Class_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_lang_Class_GET_classLoader(); +void java_lang_Class_PUT_classLoader(JAVA_OBJECT v); +void java_lang_Class_initNativeLayer__(); +void java_lang_Class___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_getStackClasses___int_boolean(JAVA_INT n1, JAVA_BOOLEAN n2); +JAVA_OBJECT java_lang_Class_forName___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3); +JAVA_OBJECT java_lang_Class_getClasses__(JAVA_OBJECT me); +void java_lang_Class_verify__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT java_lang_Class_getAnnotation___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_OBJECT java_lang_Class_getAnnotations__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getCanonicalName__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getClassLoader__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getClassLoaderImpl__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getComponentType__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_getConstructors__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_OBJECT java_lang_Class_getDeclaredAnnotations__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getDeclaredClasses__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_Class_getDeclaredConstructors__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getDeclaredField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_getDeclaredFields__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getDeclaredMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_Class_getDeclaredMethods__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getDeclaringClass__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getEnclosingClass__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getEnclosingConstructor__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getEnclosingMethod__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getEnumConstants__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_getFields__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getGenericInterfaces__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getGenericSuperclass__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getInterfaces__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_OBJECT java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_Class_getMethods__(JAVA_OBJECT me); +JAVA_INT java_lang_Class_getModifiers__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getName__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getSimpleName__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getProtectionDomain__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getPDImpl__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_getResourceAsStream___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_getSigners__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getSuperclass__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_OBJECT java_lang_Class_getTypeParameters__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isAnnotation__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_BOOLEAN java_lang_Class_isAnnotationPresent___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_Class_isAnonymousClass__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isArray__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isAssignableFrom___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_Class_isEnum__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isInstance___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_Class_isInterface__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isLocalClass__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isMemberClass__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isPrimitive__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_isSynthetic__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_lang_Class_newInstance__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Class_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getPackage__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_getPackageString__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Class_desiredAssertionStatus__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Class_asSubclass___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_cast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Class_getSignatureAttribute__(JAVA_OBJECT me); +void java_lang_Class___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_ClassLoader.c b/tests/nbody-java/java_lang_ClassLoader.c new file mode 100644 index 0000000000000..58e6d39b4c6b8 --- /dev/null +++ b/tests/nbody-java/java_lang_ClassLoader.c @@ -0,0 +1,894 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" +#include "java_nio_ByteBuffer.h" +#include "java_util_Enumeration.h" +#include "org_xmlvm_runtime_XMLVMClassLoader.h" + +#include "java_lang_ClassLoader.h" + +#define XMLVM_CURRENT_CLASS_NAME ClassLoader +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ClassLoader + +__TIB_DEFINITION_java_lang_ClassLoader __TIB_java_lang_ClassLoader = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ClassLoader, // classInitializer + "java.lang.ClassLoader", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_ClassLoader), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ClassLoader; +JAVA_OBJECT __CLASS_java_lang_ClassLoader_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ClassLoader_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ClassLoader_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_ClassLoader_systemClassLoader; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ClassLoader() +{ + staticInitializerLock(&__TIB_java_lang_ClassLoader); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ClassLoader.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ClassLoader.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ClassLoader); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ClassLoader.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ClassLoader.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ClassLoader.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ClassLoader") + __INIT_IMPL_java_lang_ClassLoader(); + } +} + +void __INIT_IMPL_java_lang_ClassLoader() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_ClassLoader.newInstanceFunc = __NEW_INSTANCE_java_lang_ClassLoader; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ClassLoader.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_ClassLoader.vtable[6] = (VTABLE_PTR) &java_lang_ClassLoader_findClass___java_lang_String; + __TIB_java_lang_ClassLoader.vtable[7] = (VTABLE_PTR) &java_lang_ClassLoader_findResource___java_lang_String; + // Initialize interface information + __TIB_java_lang_ClassLoader.numImplementedInterfaces = 0; + __TIB_java_lang_ClassLoader.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_ClassLoader_systemClassLoader = (java_lang_ClassLoader*) JAVA_NULL; + + __TIB_java_lang_ClassLoader.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ClassLoader.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ClassLoader.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ClassLoader.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ClassLoader.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ClassLoader.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ClassLoader.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ClassLoader.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ClassLoader = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ClassLoader); + __TIB_java_lang_ClassLoader.clazz = __CLASS_java_lang_ClassLoader; + __TIB_java_lang_ClassLoader.baseType = JAVA_NULL; + __CLASS_java_lang_ClassLoader_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ClassLoader); + __CLASS_java_lang_ClassLoader_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ClassLoader_1ARRAY); + __CLASS_java_lang_ClassLoader_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ClassLoader_2ARRAY); + java_lang_ClassLoader___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ClassLoader] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ClassLoader.classInitialized = 1; +} + +void __DELETE_java_lang_ClassLoader(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ClassLoader] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ClassLoader(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ClassLoader] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ClassLoader() +{ XMLVM_CLASS_INIT(java_lang_ClassLoader) +java_lang_ClassLoader* me = (java_lang_ClassLoader*) XMLVM_MALLOC(sizeof(java_lang_ClassLoader)); + me->tib = &__TIB_java_lang_ClassLoader; + __INIT_INSTANCE_MEMBERS_java_lang_ClassLoader(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ClassLoader] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ClassLoader() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_ClassLoader(); + java_lang_ClassLoader___INIT___(me); + return me; +} + +JAVA_OBJECT java_lang_ClassLoader_GET_systemClassLoader() +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + return _STATIC_java_lang_ClassLoader_systemClassLoader; +} + +void java_lang_ClassLoader_PUT_systemClassLoader(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) +_STATIC_java_lang_ClassLoader_systemClassLoader = v; +} + +void java_lang_ClassLoader_initializeClassLoaders__() +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_initializeClassLoaders__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "initializeClassLoaders", "?") + XMLVM_SOURCE_POSITION("ClassLoader.java", 65) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getSystemClassLoader__() +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getSystemClassLoader__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getSystemClassLoader", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("ClassLoader.java", 84) + _r0.o = java_lang_ClassLoader_GET_systemClassLoader(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getSystemResource___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getSystemResource___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getSystemResource", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 98) + XMLVM_CLASS_INIT(java_lang_Class) + _r0.o = __CLASS_java_lang_Class; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getResource___java_lang_String(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getSystemResources___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getSystemResources___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getSystemResources", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 115) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getSystemResourceAsStream___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getSystemResourceAsStream___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getSystemResourceAsStream", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 130) + XMLVM_CLASS_INIT(java_lang_Class) + _r0.o = __CLASS_java_lang_Class; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getResourceAsStream___java_lang_String(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader___INIT___] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("ClassLoader.java", 142) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("ClassLoader.java", 143) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader___INIT____java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader___INIT____java_lang_ClassLoader] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 157) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("ClassLoader.java", 158) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_defineClass___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_defineClass___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "defineClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("ClassLoader.java", 183) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_defineClass___java_lang_String_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_defineClass___java_lang_String_byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "defineClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.i = n3; + _r5.i = n4; + XMLVM_SOURCE_POSITION("ClassLoader.java", 210) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_defineClass___java_lang_String_byte_1ARRAY_int_int_java_security_ProtectionDomain(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_defineClass___java_lang_String_byte_1ARRAY_int_int_java_security_ProtectionDomain] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "defineClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.i = n3; + _r5.i = n4; + _r6.o = n5; + XMLVM_SOURCE_POSITION("ClassLoader.java", 246) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_defineClass___java_lang_String_java_nio_ByteBuffer_java_security_ProtectionDomain(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_defineClass___java_lang_String_java_nio_ByteBuffer_java_security_ProtectionDomain] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "defineClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r6.o = me; + _r7.o = n1; + _r8.o = n2; + _r9.o = n3; + XMLVM_SOURCE_POSITION("ClassLoader.java", 273) + XMLVM_CHECK_NPE(8) + _r0.i = java_nio_Buffer_remaining__(_r8.o); + XMLVM_CLASS_INIT(byte) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + XMLVM_SOURCE_POSITION("ClassLoader.java", 274) + XMLVM_CHECK_NPE(8) + java_nio_ByteBuffer_get___byte_1ARRAY(_r8.o, _r2.o); + XMLVM_SOURCE_POSITION("ClassLoader.java", 275) + _r3.i = 0; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r0 = _r6; + _r1 = _r7; + _r5 = _r9; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_ClassLoader_defineClass___java_lang_String_byte_1ARRAY_int_int_java_security_ProtectionDomain(_r0.o, _r1.o, _r2.o, _r3.i, _r4.i, _r5.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_findClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_findClass___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "findClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 291) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_findLoadedClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_findLoadedClass___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "findLoadedClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 304) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_findSystemClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_findSystemClass___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "findSystemClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 319) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getParent__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getParent__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getParent", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ClassLoader.java", 331) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getResource___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getResource", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 347) + XMLVM_CLASS_INIT(java_lang_Class) + _r0.o = __CLASS_java_lang_Class; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getResource___java_lang_String(_r0.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getResources___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getResources___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getResources", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 362) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getResourceAsStream___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getResourceAsStream___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getResourceAsStream", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 378) + XMLVM_CLASS_INIT(java_lang_Class) + _r0.o = __CLASS_java_lang_Class; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getResourceAsStream___java_lang_String(_r0.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_loadClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_loadClass___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "loadClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 392) + _r0.o = java_lang_Class_forName___java_lang_String(_r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_loadClass___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_loadClass___java_lang_String_boolean] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "loadClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("ClassLoader.java", 419) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_ClassLoader_loadClass___java_lang_String(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_resolveClass___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_resolveClass___java_lang_Class] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "resolveClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 430) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ClassLoader_isSystemClassLoader__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_isSystemClassLoader__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "isSystemClassLoader", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ClassLoader.java", 451) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ClassLoader_isAncestorOf___java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_isAncestorOf___java_lang_ClassLoader] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "isAncestorOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 469) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_findResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_findResource___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "findResource", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 482) + XMLVM_CLASS_INIT(java_lang_Class) + _r0.o = __CLASS_java_lang_Class; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getResource___java_lang_String(_r0.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_findResources___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_findResources___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "findResources", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 497) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_findLibrary___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_findLibrary___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "findLibrary", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 511) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getPackage___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getPackage___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getPackage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 524) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getPackages__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getPackages__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getPackages", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ClassLoader.java", 533) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_definePackage___java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_net_URL(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_OBJECT n5, JAVA_OBJECT n6, JAVA_OBJECT n7, JAVA_OBJECT n8) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_definePackage___java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_net_URL] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "definePackage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.o = n3; + _r5.o = n4; + _r6.o = n5; + _r7.o = n6; + _r8.o = n7; + _r9.o = n8; + XMLVM_SOURCE_POSITION("ClassLoader.java", 566) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getSigners___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getSigners___java_lang_Class] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getSigners", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 577) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_setSigners___java_lang_Class_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_setSigners___java_lang_Class_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "setSigners", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("ClassLoader.java", 589) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_getStackClassLoader___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getStackClassLoader___int] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getStackClassLoader", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 623) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassLoader_callerClassLoader__() +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_callerClassLoader__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "callerClassLoader", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("ClassLoader.java", 637) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_loadLibraryWithClassLoader___java_lang_String_java_lang_ClassLoader(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_loadLibraryWithClassLoader___java_lang_String_java_lang_ClassLoader] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "loadLibraryWithClassLoader", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = n1; + _r1.o = n2; + XMLVM_SOURCE_POSITION("ClassLoader.java", 657) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_loadLibraryWithPath___java_lang_String_java_lang_ClassLoader_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_lang_ClassLoader) + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_loadLibraryWithPath___java_lang_String_java_lang_ClassLoader_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "loadLibraryWithPath", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = n1; + _r1.o = n2; + _r2.o = n3; + XMLVM_SOURCE_POSITION("ClassLoader.java", 678) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_setClassAssertionStatus___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_setClassAssertionStatus___java_lang_String_boolean] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "setClassAssertionStatus", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("ClassLoader.java", 690) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_setPackageAssertionStatus___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_setPackageAssertionStatus___java_lang_String_boolean] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "setPackageAssertionStatus", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("ClassLoader.java", 702) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_setDefaultAssertionStatus___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_setDefaultAssertionStatus___boolean] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "setDefaultAssertionStatus", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 712) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader_clearAssertionStatus__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_clearAssertionStatus__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "clearAssertionStatus", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("ClassLoader.java", 720) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ClassLoader_getClassAssertionStatus___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getClassAssertionStatus___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getClassAssertionStatus", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 735) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ClassLoader_getPackageAssertionStatus___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getPackageAssertionStatus___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getPackageAssertionStatus", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassLoader.java", 749) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ClassLoader_getDefaultAssertionStatus__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader_getDefaultAssertionStatus__] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "getDefaultAssertionStatus", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ClassLoader.java", 758) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassLoader___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassLoader___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.ClassLoader", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("ClassLoader.java", 57) + _r0.o = __NEW_org_xmlvm_runtime_XMLVMClassLoader(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_XMLVMClassLoader___INIT___(_r0.o); + java_lang_ClassLoader_PUT_systemClassLoader( _r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ClassLoader.h b/tests/nbody-java/java_lang_ClassLoader.h new file mode 100644 index 0000000000000..f3c960f287562 --- /dev/null +++ b/tests/nbody-java/java_lang_ClassLoader.h @@ -0,0 +1,119 @@ +#ifndef __JAVA_LANG_CLASSLOADER__ +#define __JAVA_LANG_CLASSLOADER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ClassLoader 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader +XMLVM_FORWARD_DECL(org_xmlvm_runtime_XMLVMClassLoader) +#endif +// Class declarations for java.lang.ClassLoader +XMLVM_DEFINE_CLASS(java_lang_ClassLoader, 8, XMLVM_ITABLE_SIZE_java_lang_ClassLoader) + +extern JAVA_OBJECT __CLASS_java_lang_ClassLoader; +extern JAVA_OBJECT __CLASS_java_lang_ClassLoader_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ClassLoader_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ClassLoader_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ClassLoader +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ClassLoader \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ClassLoader \ + } java_lang_ClassLoader + +struct java_lang_ClassLoader { + __TIB_DEFINITION_java_lang_ClassLoader* tib; + struct { + __INSTANCE_FIELDS_java_lang_ClassLoader; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader +#define XMLVM_FORWARD_DECL_java_lang_ClassLoader +typedef struct java_lang_ClassLoader java_lang_ClassLoader; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ClassLoader 8 +#define XMLVM_VTABLE_IDX_java_lang_ClassLoader_findClass___java_lang_String 6 +#define XMLVM_VTABLE_IDX_java_lang_ClassLoader_findResource___java_lang_String 7 + +void __INIT_java_lang_ClassLoader(); +void __INIT_IMPL_java_lang_ClassLoader(); +void __DELETE_java_lang_ClassLoader(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ClassLoader(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ClassLoader(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ClassLoader(); +JAVA_OBJECT java_lang_ClassLoader_GET_systemClassLoader(); +void java_lang_ClassLoader_PUT_systemClassLoader(JAVA_OBJECT v); +void java_lang_ClassLoader_initializeClassLoaders__(); +JAVA_OBJECT java_lang_ClassLoader_getSystemClassLoader__(); +JAVA_OBJECT java_lang_ClassLoader_getSystemResource___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_getSystemResources___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_getSystemResourceAsStream___java_lang_String(JAVA_OBJECT n1); +void java_lang_ClassLoader___INIT___(JAVA_OBJECT me); +void java_lang_ClassLoader___INIT____java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_defineClass___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_lang_ClassLoader_defineClass___java_lang_String_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +JAVA_OBJECT java_lang_ClassLoader_defineClass___java_lang_String_byte_1ARRAY_int_int_java_security_ProtectionDomain(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5); +JAVA_OBJECT java_lang_ClassLoader_defineClass___java_lang_String_java_nio_ByteBuffer_java_security_ProtectionDomain(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +// Vtable index: 6 +JAVA_OBJECT java_lang_ClassLoader_findClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_findLoadedClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_findSystemClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_getParent__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ClassLoader_getResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_getResources___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_getResourceAsStream___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_loadClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_loadClass___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +void java_lang_ClassLoader_resolveClass___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_ClassLoader_isSystemClassLoader__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ClassLoader_isAncestorOf___java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_OBJECT java_lang_ClassLoader_findResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_findResources___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_findLibrary___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_getPackage___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_ClassLoader_getPackages__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ClassLoader_definePackage___java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_lang_String_java_net_URL(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_OBJECT n5, JAVA_OBJECT n6, JAVA_OBJECT n7, JAVA_OBJECT n8); +JAVA_OBJECT java_lang_ClassLoader_getSigners___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ClassLoader_setSigners___java_lang_Class_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_ClassLoader_getStackClassLoader___int(JAVA_INT n1); +JAVA_OBJECT java_lang_ClassLoader_callerClassLoader__(); +void java_lang_ClassLoader_loadLibraryWithClassLoader___java_lang_String_java_lang_ClassLoader(JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_ClassLoader_loadLibraryWithPath___java_lang_String_java_lang_ClassLoader_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +void java_lang_ClassLoader_setClassAssertionStatus___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +void java_lang_ClassLoader_setPackageAssertionStatus___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +void java_lang_ClassLoader_setDefaultAssertionStatus___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void java_lang_ClassLoader_clearAssertionStatus__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ClassLoader_getClassAssertionStatus___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_ClassLoader_getPackageAssertionStatus___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_ClassLoader_getDefaultAssertionStatus__(JAVA_OBJECT me); +void java_lang_ClassLoader___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_ClassNotFoundException.c b/tests/nbody-java/java_lang_ClassNotFoundException.c new file mode 100644 index 0000000000000..550a0ee094be1 --- /dev/null +++ b/tests/nbody-java/java_lang_ClassNotFoundException.c @@ -0,0 +1,257 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_Throwable.h" + +#include "java_lang_ClassNotFoundException.h" + +#define XMLVM_CURRENT_CLASS_NAME ClassNotFoundException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ClassNotFoundException + +__TIB_DEFINITION_java_lang_ClassNotFoundException __TIB_java_lang_ClassNotFoundException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ClassNotFoundException, // classInitializer + "java.lang.ClassNotFoundException", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Exception, // extends + sizeof(java_lang_ClassNotFoundException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException; +JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_ClassNotFoundException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ClassNotFoundException() +{ + staticInitializerLock(&__TIB_java_lang_ClassNotFoundException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ClassNotFoundException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ClassNotFoundException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ClassNotFoundException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ClassNotFoundException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ClassNotFoundException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ClassNotFoundException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ClassNotFoundException") + __INIT_IMPL_java_lang_ClassNotFoundException(); + } +} + +void __INIT_IMPL_java_lang_ClassNotFoundException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Exception) + __TIB_java_lang_ClassNotFoundException.newInstanceFunc = __NEW_INSTANCE_java_lang_ClassNotFoundException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ClassNotFoundException.vtable, __TIB_java_lang_Exception.vtable, sizeof(__TIB_java_lang_Exception.vtable)); + // Initialize vtable for this class + __TIB_java_lang_ClassNotFoundException.vtable[6] = (VTABLE_PTR) &java_lang_ClassNotFoundException_getCause__; + // Initialize interface information + __TIB_java_lang_ClassNotFoundException.numImplementedInterfaces = 1; + __TIB_java_lang_ClassNotFoundException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_ClassNotFoundException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_ClassNotFoundException.itableBegin = &__TIB_java_lang_ClassNotFoundException.itable[0]; + + _STATIC_java_lang_ClassNotFoundException_serialVersionUID = 9176873029745254542; + + __TIB_java_lang_ClassNotFoundException.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ClassNotFoundException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ClassNotFoundException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ClassNotFoundException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ClassNotFoundException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ClassNotFoundException.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ClassNotFoundException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ClassNotFoundException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ClassNotFoundException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ClassNotFoundException); + __TIB_java_lang_ClassNotFoundException.clazz = __CLASS_java_lang_ClassNotFoundException; + __TIB_java_lang_ClassNotFoundException.baseType = JAVA_NULL; + __CLASS_java_lang_ClassNotFoundException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ClassNotFoundException); + __CLASS_java_lang_ClassNotFoundException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ClassNotFoundException_1ARRAY); + __CLASS_java_lang_ClassNotFoundException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ClassNotFoundException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ClassNotFoundException] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ClassNotFoundException.classInitialized = 1; +} + +void __DELETE_java_lang_ClassNotFoundException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ClassNotFoundException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ClassNotFoundException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Exception(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_ClassNotFoundException*) me)->fields.java_lang_ClassNotFoundException.ex_ = (java_lang_Throwable*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ClassNotFoundException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ClassNotFoundException() +{ XMLVM_CLASS_INIT(java_lang_ClassNotFoundException) +java_lang_ClassNotFoundException* me = (java_lang_ClassNotFoundException*) XMLVM_MALLOC(sizeof(java_lang_ClassNotFoundException)); + me->tib = &__TIB_java_lang_ClassNotFoundException; + __INIT_INSTANCE_MEMBERS_java_lang_ClassNotFoundException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ClassNotFoundException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ClassNotFoundException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_ClassNotFoundException(); + java_lang_ClassNotFoundException___INIT___(me); + return me; +} + +JAVA_LONG java_lang_ClassNotFoundException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_ClassNotFoundException) + return _STATIC_java_lang_ClassNotFoundException_serialVersionUID; +} + +void java_lang_ClassNotFoundException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_ClassNotFoundException) +_STATIC_java_lang_ClassNotFoundException_serialVersionUID = v; +} + +void java_lang_ClassNotFoundException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassNotFoundException___INIT___] + XMLVM_ENTER_METHOD("java.lang.ClassNotFoundException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 34) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(1) + java_lang_Exception___INIT____java_lang_Throwable(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 35) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassNotFoundException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassNotFoundException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ClassNotFoundException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 45) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(1) + java_lang_Exception___INIT____java_lang_String_java_lang_Throwable(_r1.o, _r2.o, _r0.o); + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 46) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ClassNotFoundException___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassNotFoundException___INIT____java_lang_String_java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.ClassNotFoundException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 59) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 60) + XMLVM_CHECK_NPE(0) + ((java_lang_ClassNotFoundException*) _r0.o)->fields.java_lang_ClassNotFoundException.ex_ = _r2.o; + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 61) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassNotFoundException_getException__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassNotFoundException_getException__] + XMLVM_ENTER_METHOD("java.lang.ClassNotFoundException", "getException", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 69) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ClassNotFoundException*) _r1.o)->fields.java_lang_ClassNotFoundException.ex_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ClassNotFoundException_getCause__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ClassNotFoundException_getCause__] + XMLVM_ENTER_METHOD("java.lang.ClassNotFoundException", "getCause", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ClassNotFoundException.java", 80) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ClassNotFoundException*) _r1.o)->fields.java_lang_ClassNotFoundException.ex_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ClassNotFoundException.h b/tests/nbody-java/java_lang_ClassNotFoundException.h new file mode 100644 index 0000000000000..6a4de01d3c734 --- /dev/null +++ b/tests/nbody-java/java_lang_ClassNotFoundException.h @@ -0,0 +1,72 @@ +#ifndef __JAVA_LANG_CLASSNOTFOUNDEXCEPTION__ +#define __JAVA_LANG_CLASSNOTFOUNDEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ClassNotFoundException 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Exception.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +// Class declarations for java.lang.ClassNotFoundException +XMLVM_DEFINE_CLASS(java_lang_ClassNotFoundException, 8, XMLVM_ITABLE_SIZE_java_lang_ClassNotFoundException) + +extern JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException; +extern JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ClassNotFoundException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ClassNotFoundException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ClassNotFoundException \ + __INSTANCE_FIELDS_java_lang_Exception; \ + struct { \ + JAVA_OBJECT ex_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ClassNotFoundException \ + } java_lang_ClassNotFoundException + +struct java_lang_ClassNotFoundException { + __TIB_DEFINITION_java_lang_ClassNotFoundException* tib; + struct { + __INSTANCE_FIELDS_java_lang_ClassNotFoundException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassNotFoundException +#define XMLVM_FORWARD_DECL_java_lang_ClassNotFoundException +typedef struct java_lang_ClassNotFoundException java_lang_ClassNotFoundException; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ClassNotFoundException 8 +#define XMLVM_VTABLE_IDX_java_lang_ClassNotFoundException_getCause__ 6 + +void __INIT_java_lang_ClassNotFoundException(); +void __INIT_IMPL_java_lang_ClassNotFoundException(); +void __DELETE_java_lang_ClassNotFoundException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ClassNotFoundException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ClassNotFoundException(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ClassNotFoundException(); +JAVA_LONG java_lang_ClassNotFoundException_GET_serialVersionUID(); +void java_lang_ClassNotFoundException_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_ClassNotFoundException___INIT___(JAVA_OBJECT me); +void java_lang_ClassNotFoundException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ClassNotFoundException___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_ClassNotFoundException_getException__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT java_lang_ClassNotFoundException_getCause__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_Cloneable.c b/tests/nbody-java/java_lang_Cloneable.c new file mode 100644 index 0000000000000..825bdeef56415 --- /dev/null +++ b/tests/nbody-java/java_lang_Cloneable.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_lang_Cloneable.h" + +__TIB_DEFINITION_java_lang_Cloneable __TIB_java_lang_Cloneable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Cloneable, // classInitializer + "java.lang.Cloneable", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_Cloneable; +JAVA_OBJECT __CLASS_java_lang_Cloneable_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Cloneable_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Cloneable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_Cloneable() +{ + staticInitializerLock(&__TIB_java_lang_Cloneable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Cloneable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Cloneable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Cloneable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Cloneable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Cloneable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Cloneable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Cloneable") + __INIT_IMPL_java_lang_Cloneable(); + } +} + +void __INIT_IMPL_java_lang_Cloneable() +{ + __TIB_java_lang_Cloneable.numInterfaces = 0; + __TIB_java_lang_Cloneable.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Cloneable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_Cloneable.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Cloneable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Cloneable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_Cloneable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Cloneable); + __TIB_java_lang_Cloneable.clazz = __CLASS_java_lang_Cloneable; + __TIB_java_lang_Cloneable.baseType = JAVA_NULL; + __CLASS_java_lang_Cloneable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Cloneable); + __CLASS_java_lang_Cloneable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Cloneable_1ARRAY); + __CLASS_java_lang_Cloneable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Cloneable_2ARRAY); + + __TIB_java_lang_Cloneable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_Cloneable.h b/tests/nbody-java/java_lang_Cloneable.h new file mode 100644 index 0000000000000..aaa8361368aa1 --- /dev/null +++ b/tests/nbody-java/java_lang_Cloneable.h @@ -0,0 +1,27 @@ +#ifndef __JAVA_LANG_CLONEABLE__ +#define __JAVA_LANG_CLONEABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_lang_Cloneable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_Cloneable; +extern JAVA_OBJECT __CLASS_java_lang_Cloneable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Cloneable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Cloneable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_Cloneable +#define XMLVM_FORWARD_DECL_java_lang_Cloneable +typedef struct java_lang_Cloneable java_lang_Cloneable; +#endif + +void __INIT_java_lang_Cloneable(); +void __INIT_IMPL_java_lang_Cloneable(); + +#endif diff --git a/tests/nbody-java/java_lang_Comparable.c b/tests/nbody-java/java_lang_Comparable.c new file mode 100644 index 0000000000000..a10ee30f25f3a --- /dev/null +++ b/tests/nbody-java/java_lang_Comparable.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_lang_Comparable.h" + +__TIB_DEFINITION_java_lang_Comparable __TIB_java_lang_Comparable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Comparable, // classInitializer + "java.lang.Comparable", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_Comparable; +JAVA_OBJECT __CLASS_java_lang_Comparable_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Comparable_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Comparable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_Comparable() +{ + staticInitializerLock(&__TIB_java_lang_Comparable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Comparable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Comparable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Comparable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Comparable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Comparable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Comparable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Comparable") + __INIT_IMPL_java_lang_Comparable(); + } +} + +void __INIT_IMPL_java_lang_Comparable() +{ + __TIB_java_lang_Comparable.numInterfaces = 0; + __TIB_java_lang_Comparable.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Comparable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_Comparable.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Comparable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Comparable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_Comparable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Comparable); + __TIB_java_lang_Comparable.clazz = __CLASS_java_lang_Comparable; + __TIB_java_lang_Comparable.baseType = JAVA_NULL; + __CLASS_java_lang_Comparable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Comparable); + __CLASS_java_lang_Comparable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Comparable_1ARRAY); + __CLASS_java_lang_Comparable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Comparable_2ARRAY); + + __TIB_java_lang_Comparable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_Comparable.h b/tests/nbody-java/java_lang_Comparable.h new file mode 100644 index 0000000000000..7b4a94db31bfa --- /dev/null +++ b/tests/nbody-java/java_lang_Comparable.h @@ -0,0 +1,28 @@ +#ifndef __JAVA_LANG_COMPARABLE__ +#define __JAVA_LANG_COMPARABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object 7 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_lang_Comparable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_Comparable; +extern JAVA_OBJECT __CLASS_java_lang_Comparable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Comparable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Comparable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_Comparable +#define XMLVM_FORWARD_DECL_java_lang_Comparable +typedef struct java_lang_Comparable java_lang_Comparable; +#endif + +void __INIT_java_lang_Comparable(); +void __INIT_IMPL_java_lang_Comparable(); + +#endif diff --git a/tests/nbody-java/java_lang_Double.c b/tests/nbody-java/java_lang_Double.c new file mode 100644 index 0000000000000..56072d9cec2f2 --- /dev/null +++ b/tests/nbody-java/java_lang_Double.c @@ -0,0 +1,1106 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Long.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "org_apache_harmony_luni_util_FloatingPointParser.h" +#include "org_apache_harmony_luni_util_NumberConverter.h" + +#include "java_lang_Double.h" + +#define XMLVM_CURRENT_CLASS_NAME Double +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Double + +__TIB_DEFINITION_java_lang_Double __TIB_java_lang_Double = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Double, // classInitializer + "java.lang.Double", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Number;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Number, // extends + sizeof(java_lang_Double), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Double; +JAVA_OBJECT __CLASS_java_lang_Double_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Double_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Double_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Double_serialVersionUID; +static JAVA_DOUBLE _STATIC_java_lang_Double_MAX_VALUE; +static JAVA_DOUBLE _STATIC_java_lang_Double_MIN_VALUE; +static JAVA_DOUBLE _STATIC_java_lang_Double_MIN_NORMAL; +static JAVA_DOUBLE _STATIC_java_lang_Double_NaN; +static JAVA_DOUBLE _STATIC_java_lang_Double_POSITIVE_INFINITY; +static JAVA_INT _STATIC_java_lang_Double_MAX_EXPONENT; +static JAVA_INT _STATIC_java_lang_Double_MIN_EXPONENT; +static JAVA_DOUBLE _STATIC_java_lang_Double_NEGATIVE_INFINITY; +static JAVA_OBJECT _STATIC_java_lang_Double_TYPE; +static JAVA_INT _STATIC_java_lang_Double_SIZE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Double() +{ + staticInitializerLock(&__TIB_java_lang_Double); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Double.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Double.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Double); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Double.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Double.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Double.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Double") + __INIT_IMPL_java_lang_Double(); + } +} + +void __INIT_IMPL_java_lang_Double() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Number) + __TIB_java_lang_Double.newInstanceFunc = __NEW_INSTANCE_java_lang_Double; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Double.vtable, __TIB_java_lang_Number.vtable, sizeof(__TIB_java_lang_Number.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Double.vtable[6] = (VTABLE_PTR) &java_lang_Double_byteValue__; + __TIB_java_lang_Double.vtable[7] = (VTABLE_PTR) &java_lang_Double_doubleValue__; + __TIB_java_lang_Double.vtable[1] = (VTABLE_PTR) &java_lang_Double_equals___java_lang_Object; + __TIB_java_lang_Double.vtable[8] = (VTABLE_PTR) &java_lang_Double_floatValue__; + __TIB_java_lang_Double.vtable[4] = (VTABLE_PTR) &java_lang_Double_hashCode__; + __TIB_java_lang_Double.vtable[9] = (VTABLE_PTR) &java_lang_Double_intValue__; + __TIB_java_lang_Double.vtable[10] = (VTABLE_PTR) &java_lang_Double_longValue__; + __TIB_java_lang_Double.vtable[11] = (VTABLE_PTR) &java_lang_Double_shortValue__; + __TIB_java_lang_Double.vtable[5] = (VTABLE_PTR) &java_lang_Double_toString__; + __TIB_java_lang_Double.vtable[12] = (VTABLE_PTR) &java_lang_Double_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Double.numImplementedInterfaces = 2; + __TIB_java_lang_Double.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Double.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Double.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Double.itableBegin = &__TIB_java_lang_Double.itable[0]; + __TIB_java_lang_Double.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Double.vtable[12]; + + _STATIC_java_lang_Double_serialVersionUID = -9172774392245257468; + _STATIC_java_lang_Double_MAX_VALUE = 1.7976931348623157E308; + _STATIC_java_lang_Double_MIN_VALUE = 4.9E-324; + _STATIC_java_lang_Double_MIN_NORMAL = 2.2250738585072014E-308; + _STATIC_java_lang_Double_NaN = NaN; + _STATIC_java_lang_Double_POSITIVE_INFINITY = Infinity; + _STATIC_java_lang_Double_MAX_EXPONENT = 1023; + _STATIC_java_lang_Double_MIN_EXPONENT = -1022; + _STATIC_java_lang_Double_NEGATIVE_INFINITY = -Infinity; + _STATIC_java_lang_Double_TYPE = (java_lang_Class*) JAVA_NULL; + _STATIC_java_lang_Double_SIZE = 64; + + __TIB_java_lang_Double.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Double.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Double.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Double.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Double.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Double.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Double.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Double.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Double = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Double); + __TIB_java_lang_Double.clazz = __CLASS_java_lang_Double; + __TIB_java_lang_Double.baseType = JAVA_NULL; + __CLASS_java_lang_Double_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Double); + __CLASS_java_lang_Double_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Double_1ARRAY); + __CLASS_java_lang_Double_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Double_2ARRAY); + java_lang_Double___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Double] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Double.classInitialized = 1; +} + +void __DELETE_java_lang_Double(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Double] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Double(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Number(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Double*) me)->fields.java_lang_Double.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Double] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Double() +{ XMLVM_CLASS_INIT(java_lang_Double) +java_lang_Double* me = (java_lang_Double*) XMLVM_MALLOC(sizeof(java_lang_Double)); + me->tib = &__TIB_java_lang_Double; + __INIT_INSTANCE_MEMBERS_java_lang_Double(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Double] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Double() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Double_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_serialVersionUID; +} + +void java_lang_Double_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_serialVersionUID = v; +} + +JAVA_DOUBLE java_lang_Double_GET_MAX_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_MAX_VALUE; +} + +void java_lang_Double_PUT_MAX_VALUE(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_MAX_VALUE = v; +} + +JAVA_DOUBLE java_lang_Double_GET_MIN_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_MIN_VALUE; +} + +void java_lang_Double_PUT_MIN_VALUE(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_MIN_VALUE = v; +} + +JAVA_DOUBLE java_lang_Double_GET_MIN_NORMAL() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_MIN_NORMAL; +} + +void java_lang_Double_PUT_MIN_NORMAL(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_MIN_NORMAL = v; +} + +JAVA_DOUBLE java_lang_Double_GET_NaN() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_NaN; +} + +void java_lang_Double_PUT_NaN(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_NaN = v; +} + +JAVA_DOUBLE java_lang_Double_GET_POSITIVE_INFINITY() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_POSITIVE_INFINITY; +} + +void java_lang_Double_PUT_POSITIVE_INFINITY(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_POSITIVE_INFINITY = v; +} + +JAVA_INT java_lang_Double_GET_MAX_EXPONENT() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_MAX_EXPONENT; +} + +void java_lang_Double_PUT_MAX_EXPONENT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_MAX_EXPONENT = v; +} + +JAVA_INT java_lang_Double_GET_MIN_EXPONENT() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_MIN_EXPONENT; +} + +void java_lang_Double_PUT_MIN_EXPONENT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_MIN_EXPONENT = v; +} + +JAVA_DOUBLE java_lang_Double_GET_NEGATIVE_INFINITY() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_NEGATIVE_INFINITY; +} + +void java_lang_Double_PUT_NEGATIVE_INFINITY(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_NEGATIVE_INFINITY = v; +} + +JAVA_OBJECT java_lang_Double_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_TYPE; +} + +void java_lang_Double_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_TYPE = v; +} + +JAVA_INT java_lang_Double_GET_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_Double) + return _STATIC_java_lang_Double_SIZE; +} + +void java_lang_Double_PUT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Double) +_STATIC_java_lang_Double_SIZE = v; +} + +void java_lang_Double___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Double", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Double.java", 95) + _r0.i = 0; + XMLVM_CLASS_INIT(double) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_double, _r0.i); + XMLVM_SOURCE_POSITION("Double.java", 96) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Double_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Double.java", 26) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Double___INIT____double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double___INIT____double] + XMLVM_ENTER_METHOD("java.lang.Double", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.d = n1; + XMLVM_SOURCE_POSITION("Double.java", 116) + XMLVM_CHECK_NPE(0) + java_lang_Number___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Double.java", 117) + XMLVM_CHECK_NPE(0) + ((java_lang_Double*) _r0.o)->fields.java_lang_Double.value_ = _r1.d; + XMLVM_SOURCE_POSITION("Double.java", 118) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Double___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Double", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Double.java", 130) + _r0.d = java_lang_Double_parseDouble___java_lang_String(_r3.o); + XMLVM_CHECK_NPE(2) + java_lang_Double___INIT____double(_r2.o, _r0.d); + XMLVM_SOURCE_POSITION("Double.java", 131) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Double_compareTo___java_lang_Double(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_compareTo___java_lang_Double] + XMLVM_ENTER_METHOD("java.lang.Double", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Double.java", 154) + XMLVM_CHECK_NPE(4) + _r0.d = ((java_lang_Double*) _r4.o)->fields.java_lang_Double.value_; + XMLVM_CHECK_NPE(5) + _r2.d = ((java_lang_Double*) _r5.o)->fields.java_lang_Double.value_; + _r0.i = java_lang_Double_compare___double_double(_r0.d, _r2.d); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Double_byteValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_byteValue__] + XMLVM_ENTER_METHOD("java.lang.Double", "byteValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 159) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.i = (JAVA_INT) _r0.d; + _r0.i = (_r0.i << 24) >> 24; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_lang_Double_doubleToLongBits___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_LONG java_lang_Double_doubleToRawLongBits___double(JAVA_DOUBLE n1)] + +JAVA_DOUBLE java_lang_Double_doubleValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_doubleValue__] + XMLVM_ENTER_METHOD("java.lang.Double", "doubleValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 198) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Double_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Double", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Double.java", 214) + if (_r5.o == _r4.o) goto label26; + XMLVM_SOURCE_POSITION("Double.java", 215) + XMLVM_CLASS_INIT(java_lang_Double) + _r0.i = XMLVM_ISA(_r5.o, __CLASS_java_lang_Double); + if (_r0.i == 0) goto label24; + XMLVM_SOURCE_POSITION("Double.java", 216) + XMLVM_CHECK_NPE(4) + _r0.d = ((java_lang_Double*) _r4.o)->fields.java_lang_Double.value_; + _r0.l = java_lang_Double_doubleToLongBits___double(_r0.d); + _r5.o = _r5.o; + XMLVM_CHECK_NPE(5) + _r2.d = ((java_lang_Double*) _r5.o)->fields.java_lang_Double.value_; + _r2.l = java_lang_Double_doubleToLongBits___double(_r2.d); + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i == 0) goto label26; + label24:; + _r0.i = 0; + label25:; + XMLVM_EXIT_METHOD() + return _r0.i; + label26:; + _r0.i = 1; + goto label25; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Double_floatValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_floatValue__] + XMLVM_ENTER_METHOD("java.lang.Double", "floatValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 221) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.f = (JAVA_FLOAT) _r0.d; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Double_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Double", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("Double.java", 226) + XMLVM_CHECK_NPE(4) + _r0.d = ((java_lang_Double*) _r4.o)->fields.java_lang_Double.value_; + _r0.l = java_lang_Double_doubleToLongBits___double(_r0.d); + XMLVM_SOURCE_POSITION("Double.java", 227) + _r2.i = 32; + _r2.l = ((JAVA_ULONG) _r0.l) >> (0x3f & ((JAVA_ULONG) _r2.l)); + _r0.l = _r0.l ^ _r2.l; + _r0.i = (JAVA_INT) _r0.l; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Double_intValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_intValue__] + XMLVM_ENTER_METHOD("java.lang.Double", "intValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 232) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.i = (JAVA_INT) _r0.d; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Double_isInfinite__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_isInfinite__] + XMLVM_ENTER_METHOD("java.lang.Double", "isInfinite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 242) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.i = java_lang_Double_isInfinite___double(_r0.d); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Double_isInfinite___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_isInfinite___double] + XMLVM_ENTER_METHOD("java.lang.Double", "isInfinite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.d = n1; + XMLVM_SOURCE_POSITION("Double.java", 254) + _r0.d = Infinity; + _r0.i = _r2.d > _r0.d ? 1 : (_r2.d == _r0.d ? 0 : -1); + if (_r0.i == 0) goto label14; + _r0.d = -Infinity; + _r0.i = _r2.d > _r0.d ? 1 : (_r2.d == _r0.d ? 0 : -1); + if (_r0.i == 0) goto label14; + _r0.i = 0; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 1; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Double_isNaN__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_isNaN__] + XMLVM_ENTER_METHOD("java.lang.Double", "isNaN", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 264) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.i = java_lang_Double_isNaN___double(_r0.d); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Double_isNaN___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_isNaN___double] + XMLVM_ENTER_METHOD("java.lang.Double", "isNaN", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.d = n1; + XMLVM_SOURCE_POSITION("Double.java", 277) + _r0.i = _r1.d > _r1.d ? 1 : (_r1.d == _r1.d ? 0 : -1); + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Double_longBitsToDouble___long(JAVA_LONG n1)] + +JAVA_LONG java_lang_Double_longValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_longValue__] + XMLVM_ENTER_METHOD("java.lang.Double", "longValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 295) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.l = (JAVA_LONG) _r0.d; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Double_parseDouble___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_parseDouble___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Double", "parseDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Double.java", 311) + _r0.d = org_apache_harmony_luni_util_FloatingPointParser_parseDouble___java_lang_String(_r2.o); + XMLVM_SOURCE_POSITION("Double.java", 310) + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Double_shortValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_shortValue__] + XMLVM_ENTER_METHOD("java.lang.Double", "shortValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 316) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.i = (JAVA_INT) _r0.d; + _r0.i = (_r0.i << 16) >> 16; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Double_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_toString__] + XMLVM_ENTER_METHOD("java.lang.Double", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Double.java", 321) + XMLVM_CHECK_NPE(2) + _r0.d = ((java_lang_Double*) _r2.o)->fields.java_lang_Double.value_; + _r0.o = java_lang_Double_toString___double(_r0.d); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Double_toString___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_toString___double] + XMLVM_ENTER_METHOD("java.lang.Double", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.d = n1; + XMLVM_SOURCE_POSITION("Double.java", 333) + _r0.o = org_apache_harmony_luni_util_NumberConverter_convert___double(_r1.d); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Double_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Double", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Double.java", 349) + _r0.o = __NEW_java_lang_Double(); + _r1.d = java_lang_Double_parseDouble___java_lang_String(_r3.o); + XMLVM_CHECK_NPE(0) + java_lang_Double___INIT____double(_r0.o, _r1.d); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Double_compare___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_compare___double_double] + XMLVM_ENTER_METHOD("java.lang.Double", "compare", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r6.d = n1; + _r8.d = n2; + _r5.i = 63; + _r4.i = 1; + _r3.i = 0; + _r2.i = -1; + XMLVM_SOURCE_POSITION("Double.java", 370) + _r0.i = _r6.d > _r8.d ? 1 : (_r6.d == _r8.d ? 0 : -1); + if (_r0.i <= 0) goto label11; + _r0 = _r4; + label10:; + XMLVM_SOURCE_POSITION("Double.java", 371) + XMLVM_SOURCE_POSITION("Double.java", 395) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("Double.java", 373) + _r0.i = _r8.d > _r6.d ? 1 : (_r8.d == _r6.d ? 0 : -1); + if (_r0.i <= 0) goto label17; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Double.java", 374) + goto label10; + label17:; + XMLVM_SOURCE_POSITION("Double.java", 376) + _r0.i = _r6.d > _r8.d ? 1 : (_r6.d == _r8.d ? 0 : -1); + if (_r0.i != 0) goto label29; + _r0.d = 0.0; + _r0.i = _r0.d > _r6.d ? 1 : (_r0.d == _r6.d ? 0 : -1); + if (_r0.i == 0) goto label29; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Double.java", 377) + goto label10; + label29:; + XMLVM_SOURCE_POSITION("Double.java", 381) + _r0.i = java_lang_Double_isNaN___double(_r6.d); + if (_r0.i == 0) goto label45; + XMLVM_SOURCE_POSITION("Double.java", 382) + _r0.i = java_lang_Double_isNaN___double(_r8.d); + if (_r0.i == 0) goto label43; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Double.java", 383) + goto label10; + label43:; + _r0 = _r4; + XMLVM_SOURCE_POSITION("Double.java", 385) + goto label10; + label45:; + XMLVM_SOURCE_POSITION("Double.java", 386) + _r0.i = java_lang_Double_isNaN___double(_r8.d); + if (_r0.i == 0) goto label53; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Double.java", 387) + goto label10; + label53:; + XMLVM_SOURCE_POSITION("Double.java", 391) + _r0.l = java_lang_Double_doubleToRawLongBits___double(_r6.d); + XMLVM_SOURCE_POSITION("Double.java", 392) + _r2.l = java_lang_Double_doubleToRawLongBits___double(_r8.d); + _r0.l = _r0.l >> (0x3f & _r5.l); + _r2.l = _r2.l >> (0x3f & _r5.l); + _r0.l = _r0.l - _r2.l; + _r0.i = (JAVA_INT) _r0.l; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Double_valueOf___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_valueOf___double] + XMLVM_ENTER_METHOD("java.lang.Double", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.d = n1; + XMLVM_SOURCE_POSITION("Double.java", 407) + _r0.o = __NEW_java_lang_Double(); + XMLVM_CHECK_NPE(0) + java_lang_Double___INIT____double(_r0.o, _r1.d); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Double_toHexString___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Double) + //XMLVM_BEGIN_WRAPPER[java_lang_Double_toHexString___double] + XMLVM_ENTER_METHOD("java.lang.Double", "toHexString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + _r11.d = n1; + XMLVM_SOURCE_POSITION("Double.java", 422) + _r0.i = _r11.d > _r11.d ? 1 : (_r11.d == _r11.d ? 0 : -1); + if (_r0.i == 0) goto label7; + XMLVM_SOURCE_POSITION("Double.java", 423) + // "NaN" + _r11.o = xmlvm_create_java_string_from_pool(8); + label6:; + XMLVM_SOURCE_POSITION("Double.java", 499) + XMLVM_EXIT_METHOD() + return _r11.o; + label7:; + XMLVM_SOURCE_POSITION("Double.java", 425) + _r0.d = Infinity; + _r0.i = _r11.d > _r0.d ? 1 : (_r11.d == _r0.d ? 0 : -1); + if (_r0.i != 0) goto label16; + XMLVM_SOURCE_POSITION("Double.java", 426) + // "Infinity" + _r11.o = xmlvm_create_java_string_from_pool(9); + goto label6; + label16:; + XMLVM_SOURCE_POSITION("Double.java", 428) + _r0.d = -Infinity; + _r0.i = _r11.d > _r0.d ? 1 : (_r11.d == _r0.d ? 0 : -1); + if (_r0.i != 0) goto label25; + XMLVM_SOURCE_POSITION("Double.java", 429) + // "-Infinity" + _r11.o = xmlvm_create_java_string_from_pool(10); + goto label6; + label25:; + XMLVM_SOURCE_POSITION("Double.java", 432) + _r11.l = java_lang_Double_doubleToLongBits___double(_r11.d); + XMLVM_SOURCE_POSITION("Double.java", 434) + _r0.l = -9223372036854775808; + _r0.l = _r0.l & _r11.l; + _r2.l = 0; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i == 0) goto label68; + _r0.i = 1; + label39:; + XMLVM_SOURCE_POSITION("Double.java", 436) + _r1.l = 9218868437227405312; + _r1.l = _r1.l & _r11.l; + _r3.i = 52; + _r1.l = ((JAVA_ULONG) _r1.l) >> (0x3f & ((JAVA_ULONG) _r3.l)); + _r3.l = 4503599627370495; + _r11.l = _r11.l & _r3.l; + _r3.l = 0; + _r3.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r3.i != 0) goto label73; + XMLVM_SOURCE_POSITION("Double.java", 440) + _r3.l = 0; + _r3.i = _r11.l > _r3.l ? 1 : (_r11.l == _r3.l ? 0 : -1); + if (_r3.i != 0) goto label73; + XMLVM_SOURCE_POSITION("Double.java", 441) + if (_r0.i == 0) goto label70; + // "-0x0.0p0" + _r11.o = xmlvm_create_java_string_from_pool(11); + goto label6; + label68:; + _r0.i = 0; + goto label39; + label70:; + // "0x0.0p0" + _r11.o = xmlvm_create_java_string_from_pool(12); + goto label6; + label73:; + XMLVM_SOURCE_POSITION("Double.java", 444) + _r3.o = __NEW_java_lang_StringBuilder(); + _r4.i = 10; + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT____int(_r3.o, _r4.i); + XMLVM_SOURCE_POSITION("Double.java", 445) + if (_r0.i == 0) goto label157; + XMLVM_SOURCE_POSITION("Double.java", 446) + // "-0x" + _r0.o = xmlvm_create_java_string_from_pool(13); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r0.o); + label87:; + XMLVM_SOURCE_POSITION("Double.java", 451) + _r4.l = 0; + _r0.i = _r1.l > _r4.l ? 1 : (_r1.l == _r4.l ? 0 : -1); + if (_r0.i != 0) goto label175; + XMLVM_SOURCE_POSITION("Double.java", 452) + // "0." + _r0.o = xmlvm_create_java_string_from_pool(14); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("Double.java", 454) + _r0.i = 13; + _r10 = _r0; + _r0 = _r11; + _r11 = _r10; + label103:; + XMLVM_SOURCE_POSITION("Double.java", 457) + _r4.l = 0; + _r12.i = _r0.l > _r4.l ? 1 : (_r0.l == _r4.l ? 0 : -1); + if (_r12.i == 0) goto label118; + _r4.l = 15; + _r4.l = _r4.l & _r0.l; + _r6.l = 0; + _r12.i = _r4.l > _r6.l ? 1 : (_r4.l == _r6.l ? 0 : -1); + if (_r12.i == 0) goto label163; + label118:; + XMLVM_SOURCE_POSITION("Double.java", 462) + _r12.o = java_lang_Long_toHexString___long(_r0.l); + XMLVM_SOURCE_POSITION("Double.java", 465) + _r4.l = 0; + _r0.i = _r0.l > _r4.l ? 1 : (_r0.l == _r4.l ? 0 : -1); + if (_r0.i == 0) goto label143; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r11.i <= _r0.i) goto label143; + XMLVM_SOURCE_POSITION("Double.java", 466) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + _r11.i = _r11.i - _r0.i; + label139:; + XMLVM_SOURCE_POSITION("Double.java", 467) + _r0.i = _r11.i + -1; + if (_r11.i != 0) goto label168; + label143:; + XMLVM_SOURCE_POSITION("Double.java", 471) + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r12.o); + XMLVM_SOURCE_POSITION("Double.java", 472) + // "p-1022" + _r11.o = xmlvm_create_java_string_from_pool(708); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r11.o); + label151:; + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r11.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + goto label6; + label157:; + XMLVM_SOURCE_POSITION("Double.java", 448) + // "0x" + _r0.o = xmlvm_create_java_string_from_pool(16); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r0.o); + goto label87; + label163:; + XMLVM_SOURCE_POSITION("Double.java", 458) + _r12.i = 4; + _r0.l = ((JAVA_ULONG) _r0.l) >> (0x3f & ((JAVA_ULONG) _r12.l)); + _r11.i = _r11.i + -1; + XMLVM_SOURCE_POSITION("Double.java", 459) + goto label103; + label168:; + XMLVM_SOURCE_POSITION("Double.java", 468) + _r11.i = 48; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[6])(_r3.o, _r11.i); + _r11 = _r0; + goto label139; + label175:; + XMLVM_SOURCE_POSITION("Double.java", 474) + // "1." + _r0.o = xmlvm_create_java_string_from_pool(17); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("Double.java", 476) + _r0.i = 13; + _r4 = _r11; + _r11 = _r0; + label184:; + XMLVM_SOURCE_POSITION("Double.java", 479) + _r6.l = 0; + _r12.i = _r4.l > _r6.l ? 1 : (_r4.l == _r6.l ? 0 : -1); + if (_r12.i == 0) goto label199; + _r6.l = 15; + _r6.l = _r6.l & _r4.l; + _r8.l = 0; + _r12.i = _r6.l > _r8.l ? 1 : (_r6.l == _r8.l ? 0 : -1); + if (_r12.i == 0) goto label244; + label199:; + XMLVM_SOURCE_POSITION("Double.java", 484) + _r12.o = java_lang_Long_toHexString___long(_r4.l); + XMLVM_SOURCE_POSITION("Double.java", 487) + _r6.l = 0; + _r0.i = _r4.l > _r6.l ? 1 : (_r4.l == _r6.l ? 0 : -1); + if (_r0.i == 0) goto label224; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r11.i <= _r0.i) goto label224; + XMLVM_SOURCE_POSITION("Double.java", 488) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + _r11.i = _r11.i - _r0.i; + label220:; + XMLVM_SOURCE_POSITION("Double.java", 489) + _r0.i = _r11.i + -1; + if (_r11.i != 0) goto label249; + label224:; + XMLVM_SOURCE_POSITION("Double.java", 494) + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r12.o); + XMLVM_SOURCE_POSITION("Double.java", 495) + _r11.i = 112; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[6])(_r3.o, _r11.i); + XMLVM_SOURCE_POSITION("Double.java", 497) + _r11.l = 1023; + _r11.l = _r1.l - _r11.l; + _r11.o = java_lang_Long_toString___long(_r11.l); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r11.o); + goto label151; + label244:; + XMLVM_SOURCE_POSITION("Double.java", 480) + _r12.i = 4; + _r4.l = ((JAVA_ULONG) _r4.l) >> (0x3f & ((JAVA_ULONG) _r12.l)); + _r11.i = _r11.i + -1; + XMLVM_SOURCE_POSITION("Double.java", 481) + goto label184; + label249:; + XMLVM_SOURCE_POSITION("Double.java", 490) + _r11.i = 48; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[6])(_r3.o, _r11.i); + _r11 = _r0; + goto label220; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Double_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Double_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Double", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Double.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Double_compareTo___java_lang_Double(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Double.h b/tests/nbody-java/java_lang_Double.h new file mode 100644 index 0000000000000..79090b72f46d3 --- /dev/null +++ b/tests/nbody-java/java_lang_Double.h @@ -0,0 +1,149 @@ +#ifndef __JAVA_LANG_DOUBLE__ +#define __JAVA_LANG_DOUBLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Double 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Number.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_FloatingPointParser +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_FloatingPointParser +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_FloatingPointParser) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_NumberConverter +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_NumberConverter +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_NumberConverter) +#endif +// Class declarations for java.lang.Double +XMLVM_DEFINE_CLASS(java_lang_Double, 13, XMLVM_ITABLE_SIZE_java_lang_Double) + +extern JAVA_OBJECT __CLASS_java_lang_Double; +extern JAVA_OBJECT __CLASS_java_lang_Double_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Double_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Double_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Double +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Double \ + __INSTANCE_FIELDS_java_lang_Number; \ + struct { \ + JAVA_DOUBLE value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Double \ + } java_lang_Double + +struct java_lang_Double { + __TIB_DEFINITION_java_lang_Double* tib; + struct { + __INSTANCE_FIELDS_java_lang_Double; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +typedef struct java_lang_Double java_lang_Double; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Double 13 +#define XMLVM_VTABLE_IDX_java_lang_Double_byteValue__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Double_doubleValue__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Double_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Double_floatValue__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Double_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Double_intValue__ 9 +#define XMLVM_VTABLE_IDX_java_lang_Double_longValue__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Double_shortValue__ 11 +#define XMLVM_VTABLE_IDX_java_lang_Double_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Double_compareTo___java_lang_Object 12 + +void __INIT_java_lang_Double(); +void __INIT_IMPL_java_lang_Double(); +void __DELETE_java_lang_Double(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Double(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Double(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Double(); +JAVA_LONG java_lang_Double_GET_serialVersionUID(); +void java_lang_Double_PUT_serialVersionUID(JAVA_LONG v); +JAVA_DOUBLE java_lang_Double_GET_MAX_VALUE(); +void java_lang_Double_PUT_MAX_VALUE(JAVA_DOUBLE v); +JAVA_DOUBLE java_lang_Double_GET_MIN_VALUE(); +void java_lang_Double_PUT_MIN_VALUE(JAVA_DOUBLE v); +JAVA_DOUBLE java_lang_Double_GET_MIN_NORMAL(); +void java_lang_Double_PUT_MIN_NORMAL(JAVA_DOUBLE v); +JAVA_DOUBLE java_lang_Double_GET_NaN(); +void java_lang_Double_PUT_NaN(JAVA_DOUBLE v); +JAVA_DOUBLE java_lang_Double_GET_POSITIVE_INFINITY(); +void java_lang_Double_PUT_POSITIVE_INFINITY(JAVA_DOUBLE v); +JAVA_INT java_lang_Double_GET_MAX_EXPONENT(); +void java_lang_Double_PUT_MAX_EXPONENT(JAVA_INT v); +JAVA_INT java_lang_Double_GET_MIN_EXPONENT(); +void java_lang_Double_PUT_MIN_EXPONENT(JAVA_INT v); +JAVA_DOUBLE java_lang_Double_GET_NEGATIVE_INFINITY(); +void java_lang_Double_PUT_NEGATIVE_INFINITY(JAVA_DOUBLE v); +JAVA_OBJECT java_lang_Double_GET_TYPE(); +void java_lang_Double_PUT_TYPE(JAVA_OBJECT v); +JAVA_INT java_lang_Double_GET_SIZE(); +void java_lang_Double_PUT_SIZE(JAVA_INT v); +void java_lang_Double___CLINIT_(); +void java_lang_Double___INIT____double(JAVA_OBJECT me, JAVA_DOUBLE n1); +void java_lang_Double___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_Double_compareTo___java_lang_Double(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_BYTE java_lang_Double_byteValue__(JAVA_OBJECT me); +JAVA_LONG java_lang_Double_doubleToLongBits___double(JAVA_DOUBLE n1); +JAVA_LONG java_lang_Double_doubleToRawLongBits___double(JAVA_DOUBLE n1); +// Vtable index: 7 +JAVA_DOUBLE java_lang_Double_doubleValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Double_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_FLOAT java_lang_Double_floatValue__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_Double_hashCode__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_Double_intValue__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Double_isInfinite__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Double_isInfinite___double(JAVA_DOUBLE n1); +JAVA_BOOLEAN java_lang_Double_isNaN__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Double_isNaN___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Double_longBitsToDouble___long(JAVA_LONG n1); +// Vtable index: 10 +JAVA_LONG java_lang_Double_longValue__(JAVA_OBJECT me); +JAVA_DOUBLE java_lang_Double_parseDouble___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 11 +JAVA_SHORT java_lang_Double_shortValue__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Double_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Double_toString___double(JAVA_DOUBLE n1); +JAVA_OBJECT java_lang_Double_valueOf___java_lang_String(JAVA_OBJECT n1); +JAVA_INT java_lang_Double_compare___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_OBJECT java_lang_Double_valueOf___double(JAVA_DOUBLE n1); +JAVA_OBJECT java_lang_Double_toHexString___double(JAVA_DOUBLE n1); +// Vtable index: 12 +JAVA_INT java_lang_Double_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Enum.c b/tests/nbody-java/java_lang_Enum.c new file mode 100644 index 0000000000000..ba5eaf78cea1c --- /dev/null +++ b/tests/nbody-java/java_lang_Enum.c @@ -0,0 +1,546 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Exception.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_reflect_Method.h" +#include "java_security_AccessController.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_lang_Enum.h" + +#define XMLVM_CURRENT_CLASS_NAME Enum +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Enum + +__TIB_DEFINITION_java_lang_Enum __TIB_java_lang_Enum = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Enum, // classInitializer + "java.lang.Enum", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + ";>Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Enum), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Enum; +JAVA_OBJECT __CLASS_java_lang_Enum_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Enum_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Enum_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Enum_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Enum() +{ + staticInitializerLock(&__TIB_java_lang_Enum); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Enum.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Enum.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Enum); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Enum.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Enum.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Enum.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Enum") + __INIT_IMPL_java_lang_Enum(); + } +} + +void __INIT_IMPL_java_lang_Enum() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Enum.newInstanceFunc = __NEW_INSTANCE_java_lang_Enum; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Enum.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Enum.vtable[5] = (VTABLE_PTR) &java_lang_Enum_toString__; + __TIB_java_lang_Enum.vtable[1] = (VTABLE_PTR) &java_lang_Enum_equals___java_lang_Object; + __TIB_java_lang_Enum.vtable[4] = (VTABLE_PTR) &java_lang_Enum_hashCode__; + __TIB_java_lang_Enum.vtable[0] = (VTABLE_PTR) &java_lang_Enum_clone__; + __TIB_java_lang_Enum.vtable[2] = (VTABLE_PTR) &java_lang_Enum_finalize_java_lang_Enum__; + __TIB_java_lang_Enum.vtable[6] = (VTABLE_PTR) &java_lang_Enum_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Enum.numImplementedInterfaces = 2; + __TIB_java_lang_Enum.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Enum.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Enum.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Enum.itableBegin = &__TIB_java_lang_Enum.itable[0]; + __TIB_java_lang_Enum.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Enum.vtable[6]; + + _STATIC_java_lang_Enum_serialVersionUID = -4300926546619394005; + + __TIB_java_lang_Enum.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Enum.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Enum.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Enum.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Enum.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Enum.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Enum.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Enum.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Enum = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Enum); + __TIB_java_lang_Enum.clazz = __CLASS_java_lang_Enum; + __TIB_java_lang_Enum.baseType = JAVA_NULL; + __CLASS_java_lang_Enum_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Enum); + __CLASS_java_lang_Enum_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Enum_1ARRAY); + __CLASS_java_lang_Enum_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Enum_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Enum] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Enum.classInitialized = 1; +} + +void __DELETE_java_lang_Enum(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Enum] + //XMLVM_END_WRAPPER + // Call the finalizer + (*(void (*)(JAVA_OBJECT)) ((java_lang_Object*) me)->tib->vtable[XMLVM_VTABLE_IDX_java_lang_Object_finalize_java_lang_Object__])(me); +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Enum(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 1 || derivedClassWillRegisterFinalizer); + ((java_lang_Enum*) me)->fields.java_lang_Enum.name_ = (java_lang_String*) JAVA_NULL; + ((java_lang_Enum*) me)->fields.java_lang_Enum.ordinal_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Enum] + //XMLVM_END_WRAPPER + if (!derivedClassWillRegisterFinalizer) { + // Tell the GC to finalize us + XMLVM_FINALIZE(me, __DELETE_java_lang_Enum); + } +} + +JAVA_OBJECT __NEW_java_lang_Enum() +{ XMLVM_CLASS_INIT(java_lang_Enum) +java_lang_Enum* me = (java_lang_Enum*) XMLVM_MALLOC(sizeof(java_lang_Enum)); + me->tib = &__TIB_java_lang_Enum; + __INIT_INSTANCE_MEMBERS_java_lang_Enum(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Enum] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Enum() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Enum_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Enum) + return _STATIC_java_lang_Enum_serialVersionUID; +} + +void java_lang_Enum_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Enum) +_STATIC_java_lang_Enum_serialVersionUID = v; +} + +void java_lang_Enum___INIT____java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum___INIT____java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Enum", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Enum.java", 49) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Enum.java", 50) + XMLVM_CHECK_NPE(0) + ((java_lang_Enum*) _r0.o)->fields.java_lang_Enum.name_ = _r1.o; + XMLVM_SOURCE_POSITION("Enum.java", 51) + XMLVM_CHECK_NPE(0) + ((java_lang_Enum*) _r0.o)->fields.java_lang_Enum.ordinal_ = _r2.i; + XMLVM_SOURCE_POSITION("Enum.java", 52) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Enum_name__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_name__] + XMLVM_ENTER_METHOD("java.lang.Enum", "name", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Enum.java", 62) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Enum*) _r1.o)->fields.java_lang_Enum.name_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Enum_ordinal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_ordinal__] + XMLVM_ENTER_METHOD("java.lang.Enum", "ordinal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Enum.java", 72) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Enum*) _r1.o)->fields.java_lang_Enum.ordinal_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Enum_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_toString__] + XMLVM_ENTER_METHOD("java.lang.Enum", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Enum.java", 83) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Enum*) _r1.o)->fields.java_lang_Enum.name_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Enum_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Enum", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Enum.java", 98) + if (_r1.o != _r2.o) goto label4; + _r0.i = 1; + label3:; + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + _r0.i = 0; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Enum_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Enum", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Enum.java", 103) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Enum*) _r2.o)->fields.java_lang_Enum.ordinal_; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_Enum*) _r2.o)->fields.java_lang_Enum.name_; + if (_r1.o != JAVA_NULL) goto label9; + _r1.i = 0; + label7:; + _r0.i = _r0.i + _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_Enum*) _r2.o)->fields.java_lang_Enum.name_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[4])(_r1.o); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Enum_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_clone__] + XMLVM_ENTER_METHOD("java.lang.Enum", "clone", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Enum.java", 117) + + + // Red class access removed: java.lang.CloneNotSupportedException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.4C" + _r1.o = xmlvm_create_java_string_from_pool(832); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r1.o); + + + // Red class access removed: java.lang.CloneNotSupportedException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Enum_compareTo___java_lang_Enum(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_compareTo___java_lang_Enum] + XMLVM_ENTER_METHOD("java.lang.Enum", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Enum.java", 135) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Enum*) _r2.o)->fields.java_lang_Enum.ordinal_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Enum*) _r3.o)->fields.java_lang_Enum.ordinal_; + _r0.i = _r0.i - _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Enum_getDeclaringClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_getDeclaringClass__] + XMLVM_ENTER_METHOD("java.lang.Enum", "getDeclaringClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Enum.java", 145) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[3])(_r3.o); + XMLVM_SOURCE_POSITION("Enum.java", 146) + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_Class_getSuperclass__(_r0.o); + XMLVM_SOURCE_POSITION("Enum.java", 147) + XMLVM_CLASS_INIT(java_lang_Enum) + _r2.o = __CLASS_java_lang_Enum; + if (_r2.o != _r1.o) goto label13; + label12:; + XMLVM_SOURCE_POSITION("Enum.java", 150) + XMLVM_EXIT_METHOD() + return _r0.o; + label13:; + _r0 = _r1; + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Enum_valueOf___java_lang_Class_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_Enum) + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_valueOf___java_lang_Class_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Enum", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("Enum.java", 169) + if (_r5.o == JAVA_NULL) goto label4; + if (_r6.o != JAVA_NULL) goto label16; + label4:; + XMLVM_SOURCE_POSITION("Enum.java", 171) + _r0.o = __NEW_java_lang_NullPointerException(); + // "luni.4D" + _r1.o = xmlvm_create_java_string_from_pool(833); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r1.o); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("Enum.java", 173) + _r0.o = java_lang_Enum_getValues___java_lang_Class(_r5.o); + XMLVM_SOURCE_POSITION("Enum.java", 174) + if (_r0.o != JAVA_NULL) goto label34; + XMLVM_SOURCE_POSITION("Enum.java", 176) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.4E" + _r1.o = xmlvm_create_java_string_from_pool(834); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r1.o, _r5.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label34:; + XMLVM_SOURCE_POSITION("Enum.java", 178) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r2.i = 0; + label36:; + if (_r2.i < _r1.i) goto label50; + XMLVM_SOURCE_POSITION("Enum.java", 184) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.4F" + _r1.o = xmlvm_create_java_string_from_pool(835); + XMLVM_SOURCE_POSITION("Enum.java", 185) + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r6.o, _r5.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label50:; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("Enum.java", 179) + XMLVM_CHECK_NPE(3) + _r4.o = ((java_lang_Enum*) _r3.o)->fields.java_lang_Enum.name_; + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r4.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[1])(_r4.o, _r6.o); + if (_r4.i == 0) goto label61; + XMLVM_SOURCE_POSITION("Enum.java", 180) + XMLVM_EXIT_METHOD() + return _r3.o; + label61:; + _r2.i = _r2.i + 1; + goto label36; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Enum_getValues___java_lang_Class(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Enum) + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_getValues___java_lang_Class] + XMLVM_ENTER_METHOD("java.lang.Enum", "getValues", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = n1; + _r2.o = JAVA_NULL; + XMLVM_TRY_BEGIN(w6397aaac13b1b3) + // Begin try + XMLVM_SOURCE_POSITION("Enum.java", 196) + + + // Red class access removed: java.lang.Enum$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.Enum$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedExceptionAction(_r0.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Enum.java", 204) + _r1.o = JAVA_NULL; + //java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY[15] + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_reflect_Method*) _r0.o)->tib->vtable[15])(_r0.o, _r3.o, _r1.o); + _r3.o = _r3.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6397aaac13b1b3) + XMLVM_CATCH_SPECIFIC(w6397aaac13b1b3,java_lang_Exception,21) + XMLVM_CATCH_END(w6397aaac13b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w6397aaac13b1b3) + _r0 = _r3; + label20:; + XMLVM_SOURCE_POSITION("Enum.java", 206) + XMLVM_EXIT_METHOD() + return _r0.o; + label21:; + java_lang_Thread* curThread_w6397aaac13b1b9 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w6397aaac13b1b9->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + goto label20; + //XMLVM_END_WRAPPER +} + +void java_lang_Enum_finalize_java_lang_Enum__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_finalize_java_lang_Enum__] + XMLVM_ENTER_METHOD("java.lang.Enum", "finalize", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Enum.java", 219) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Enum_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Enum_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Enum", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Enum.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Enum_compareTo___java_lang_Enum(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Enum.h b/tests/nbody-java/java_lang_Enum.h new file mode 100644 index 0000000000000..6c6f235aa8e15 --- /dev/null +++ b/tests/nbody-java/java_lang_Enum.h @@ -0,0 +1,109 @@ +#ifndef __JAVA_LANG_ENUM__ +#define __JAVA_LANG_ENUM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Enum 8 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Exception +#define XMLVM_FORWARD_DECL_java_lang_Exception +XMLVM_FORWARD_DECL(java_lang_Exception) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Method +#define XMLVM_FORWARD_DECL_java_lang_reflect_Method +XMLVM_FORWARD_DECL(java_lang_reflect_Method) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.lang.Enum +XMLVM_DEFINE_CLASS(java_lang_Enum, 7, XMLVM_ITABLE_SIZE_java_lang_Enum) + +extern JAVA_OBJECT __CLASS_java_lang_Enum; +extern JAVA_OBJECT __CLASS_java_lang_Enum_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Enum_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Enum_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Enum +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Enum \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT name_; \ + JAVA_INT ordinal_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Enum \ + } java_lang_Enum + +struct java_lang_Enum { + __TIB_DEFINITION_java_lang_Enum* tib; + struct { + __INSTANCE_FIELDS_java_lang_Enum; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Enum +#define XMLVM_FORWARD_DECL_java_lang_Enum +typedef struct java_lang_Enum java_lang_Enum; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Enum 7 +#define XMLVM_VTABLE_IDX_java_lang_Enum_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Enum_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Enum_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Enum_clone__ 0 +#define XMLVM_VTABLE_IDX_java_lang_Enum_finalize_java_lang_Enum__ 2 +#define XMLVM_VTABLE_IDX_java_lang_Enum_compareTo___java_lang_Object 6 + +void __INIT_java_lang_Enum(); +void __INIT_IMPL_java_lang_Enum(); +void __DELETE_java_lang_Enum(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Enum(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Enum(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Enum(); +JAVA_LONG java_lang_Enum_GET_serialVersionUID(); +void java_lang_Enum_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_Enum___INIT____java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_Enum_name__(JAVA_OBJECT me); +JAVA_INT java_lang_Enum_ordinal__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Enum_toString__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Enum_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_lang_Enum_hashCode__(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_lang_Enum_clone__(JAVA_OBJECT me); +JAVA_INT java_lang_Enum_compareTo___java_lang_Enum(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Enum_getDeclaringClass__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Enum_valueOf___java_lang_Class_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_Enum_getValues___java_lang_Class(JAVA_OBJECT n1); +// Vtable index: 2 +void java_lang_Enum_finalize_java_lang_Enum__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_INT java_lang_Enum_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Exception.c b/tests/nbody-java/java_lang_Exception.c new file mode 100644 index 0000000000000..fb902112d618c --- /dev/null +++ b/tests/nbody-java/java_lang_Exception.c @@ -0,0 +1,233 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_lang_Exception.h" + +#define XMLVM_CURRENT_CLASS_NAME Exception +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Exception + +__TIB_DEFINITION_java_lang_Exception __TIB_java_lang_Exception = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Exception, // classInitializer + "java.lang.Exception", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Throwable, // extends + sizeof(java_lang_Exception), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Exception; +JAVA_OBJECT __CLASS_java_lang_Exception_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Exception_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Exception_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Exception_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Exception() +{ + staticInitializerLock(&__TIB_java_lang_Exception); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Exception.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Exception.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Exception); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Exception.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Exception.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Exception.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Exception") + __INIT_IMPL_java_lang_Exception(); + } +} + +void __INIT_IMPL_java_lang_Exception() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Throwable) + __TIB_java_lang_Exception.newInstanceFunc = __NEW_INSTANCE_java_lang_Exception; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Exception.vtable, __TIB_java_lang_Throwable.vtable, sizeof(__TIB_java_lang_Throwable.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_Exception.numImplementedInterfaces = 1; + __TIB_java_lang_Exception.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Exception.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_Exception.itableBegin = &__TIB_java_lang_Exception.itable[0]; + + _STATIC_java_lang_Exception_serialVersionUID = -3387516993124229948; + + __TIB_java_lang_Exception.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Exception.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Exception.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Exception.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Exception.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Exception.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Exception.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Exception.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Exception = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Exception); + __TIB_java_lang_Exception.clazz = __CLASS_java_lang_Exception; + __TIB_java_lang_Exception.baseType = JAVA_NULL; + __CLASS_java_lang_Exception_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Exception); + __CLASS_java_lang_Exception_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Exception_1ARRAY); + __CLASS_java_lang_Exception_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Exception_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Exception] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Exception.classInitialized = 1; +} + +void __DELETE_java_lang_Exception(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Exception] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Exception(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Throwable(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Exception] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Exception() +{ XMLVM_CLASS_INIT(java_lang_Exception) +java_lang_Exception* me = (java_lang_Exception*) XMLVM_MALLOC(sizeof(java_lang_Exception)); + me->tib = &__TIB_java_lang_Exception; + __INIT_INSTANCE_MEMBERS_java_lang_Exception(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Exception] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Exception() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_Exception(); + java_lang_Exception___INIT___(me); + return me; +} + +JAVA_LONG java_lang_Exception_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Exception) + return _STATIC_java_lang_Exception_serialVersionUID; +} + +void java_lang_Exception_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Exception) +_STATIC_java_lang_Exception_serialVersionUID = v; +} + +void java_lang_Exception___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Exception___INIT___] + XMLVM_ENTER_METHOD("java.lang.Exception", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Exception.java", 37) + XMLVM_CHECK_NPE(0) + java_lang_Throwable___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Exception.java", 38) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Exception___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Exception___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Exception", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Exception.java", 48) + XMLVM_CHECK_NPE(0) + java_lang_Throwable___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Exception.java", 49) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Exception___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Exception___INIT____java_lang_String_java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.Exception", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Exception.java", 61) + XMLVM_CHECK_NPE(0) + java_lang_Throwable___INIT____java_lang_String_java_lang_Throwable(_r0.o, _r1.o, _r2.o); + XMLVM_SOURCE_POSITION("Exception.java", 62) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Exception___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Exception___INIT____java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.Exception", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Exception.java", 72) + XMLVM_CHECK_NPE(0) + java_lang_Throwable___INIT____java_lang_Throwable(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Exception.java", 73) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Exception.h b/tests/nbody-java/java_lang_Exception.h new file mode 100644 index 0000000000000..a7b470abe237f --- /dev/null +++ b/tests/nbody-java/java_lang_Exception.h @@ -0,0 +1,60 @@ +#ifndef __JAVA_LANG_EXCEPTION__ +#define __JAVA_LANG_EXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Exception 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Throwable.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.Exception +XMLVM_DEFINE_CLASS(java_lang_Exception, 8, XMLVM_ITABLE_SIZE_java_lang_Exception) + +extern JAVA_OBJECT __CLASS_java_lang_Exception; +extern JAVA_OBJECT __CLASS_java_lang_Exception_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Exception_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Exception_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Exception +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Exception \ + __INSTANCE_FIELDS_java_lang_Throwable; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Exception \ + } java_lang_Exception + +struct java_lang_Exception { + __TIB_DEFINITION_java_lang_Exception* tib; + struct { + __INSTANCE_FIELDS_java_lang_Exception; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Exception +#define XMLVM_FORWARD_DECL_java_lang_Exception +typedef struct java_lang_Exception java_lang_Exception; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Exception 8 + +void __INIT_java_lang_Exception(); +void __INIT_IMPL_java_lang_Exception(); +void __DELETE_java_lang_Exception(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Exception(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Exception(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Exception(); +JAVA_LONG java_lang_Exception_GET_serialVersionUID(); +void java_lang_Exception_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_Exception___INIT___(JAVA_OBJECT me); +void java_lang_Exception___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Exception___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_Exception___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Float.c b/tests/nbody-java/java_lang_Float.c new file mode 100644 index 0000000000000..800ac427cdcbc --- /dev/null +++ b/tests/nbody-java/java_lang_Float.c @@ -0,0 +1,1057 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Integer.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "org_apache_harmony_luni_util_FloatingPointParser.h" +#include "org_apache_harmony_luni_util_NumberConverter.h" + +#include "java_lang_Float.h" + +#define XMLVM_CURRENT_CLASS_NAME Float +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Float + +__TIB_DEFINITION_java_lang_Float __TIB_java_lang_Float = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Float, // classInitializer + "java.lang.Float", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Number;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Number, // extends + sizeof(java_lang_Float), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Float; +JAVA_OBJECT __CLASS_java_lang_Float_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Float_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Float_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Float_serialVersionUID; +static JAVA_FLOAT _STATIC_java_lang_Float_MAX_VALUE; +static JAVA_FLOAT _STATIC_java_lang_Float_MIN_VALUE; +static JAVA_FLOAT _STATIC_java_lang_Float_MIN_NORMAL; +static JAVA_FLOAT _STATIC_java_lang_Float_NaN; +static JAVA_FLOAT _STATIC_java_lang_Float_POSITIVE_INFINITY; +static JAVA_FLOAT _STATIC_java_lang_Float_NEGATIVE_INFINITY; +static JAVA_OBJECT _STATIC_java_lang_Float_TYPE; +static JAVA_INT _STATIC_java_lang_Float_MAX_EXPONENT; +static JAVA_INT _STATIC_java_lang_Float_MIN_EXPONENT; +static JAVA_INT _STATIC_java_lang_Float_SIZE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Float() +{ + staticInitializerLock(&__TIB_java_lang_Float); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Float.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Float.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Float); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Float.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Float.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Float.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Float") + __INIT_IMPL_java_lang_Float(); + } +} + +void __INIT_IMPL_java_lang_Float() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Number) + __TIB_java_lang_Float.newInstanceFunc = __NEW_INSTANCE_java_lang_Float; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Float.vtable, __TIB_java_lang_Number.vtable, sizeof(__TIB_java_lang_Number.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Float.vtable[6] = (VTABLE_PTR) &java_lang_Float_byteValue__; + __TIB_java_lang_Float.vtable[7] = (VTABLE_PTR) &java_lang_Float_doubleValue__; + __TIB_java_lang_Float.vtable[1] = (VTABLE_PTR) &java_lang_Float_equals___java_lang_Object; + __TIB_java_lang_Float.vtable[8] = (VTABLE_PTR) &java_lang_Float_floatValue__; + __TIB_java_lang_Float.vtable[4] = (VTABLE_PTR) &java_lang_Float_hashCode__; + __TIB_java_lang_Float.vtable[9] = (VTABLE_PTR) &java_lang_Float_intValue__; + __TIB_java_lang_Float.vtable[10] = (VTABLE_PTR) &java_lang_Float_longValue__; + __TIB_java_lang_Float.vtable[11] = (VTABLE_PTR) &java_lang_Float_shortValue__; + __TIB_java_lang_Float.vtable[5] = (VTABLE_PTR) &java_lang_Float_toString__; + __TIB_java_lang_Float.vtable[12] = (VTABLE_PTR) &java_lang_Float_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Float.numImplementedInterfaces = 2; + __TIB_java_lang_Float.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Float.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Float.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Float.itableBegin = &__TIB_java_lang_Float.itable[0]; + __TIB_java_lang_Float.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Float.vtable[12]; + + _STATIC_java_lang_Float_serialVersionUID = -2671257302660747028; + _STATIC_java_lang_Float_MAX_VALUE = 3.4028235E38; + _STATIC_java_lang_Float_MIN_VALUE = 1.4E-45; + _STATIC_java_lang_Float_MIN_NORMAL = 1.17549435E-38; + _STATIC_java_lang_Float_NaN = NaN; + _STATIC_java_lang_Float_POSITIVE_INFINITY = Infinity; + _STATIC_java_lang_Float_NEGATIVE_INFINITY = -Infinity; + _STATIC_java_lang_Float_TYPE = (java_lang_Class*) JAVA_NULL; + _STATIC_java_lang_Float_MAX_EXPONENT = 127; + _STATIC_java_lang_Float_MIN_EXPONENT = -126; + _STATIC_java_lang_Float_SIZE = 32; + + __TIB_java_lang_Float.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Float.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Float.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Float.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Float.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Float.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Float.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Float.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Float = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Float); + __TIB_java_lang_Float.clazz = __CLASS_java_lang_Float; + __TIB_java_lang_Float.baseType = JAVA_NULL; + __CLASS_java_lang_Float_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Float); + __CLASS_java_lang_Float_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Float_1ARRAY); + __CLASS_java_lang_Float_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Float_2ARRAY); + java_lang_Float___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Float] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Float.classInitialized = 1; +} + +void __DELETE_java_lang_Float(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Float] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Float(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Number(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Float*) me)->fields.java_lang_Float.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Float] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Float() +{ XMLVM_CLASS_INIT(java_lang_Float) +java_lang_Float* me = (java_lang_Float*) XMLVM_MALLOC(sizeof(java_lang_Float)); + me->tib = &__TIB_java_lang_Float; + __INIT_INSTANCE_MEMBERS_java_lang_Float(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Float] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Float() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Float_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_serialVersionUID; +} + +void java_lang_Float_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_serialVersionUID = v; +} + +JAVA_FLOAT java_lang_Float_GET_MAX_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_MAX_VALUE; +} + +void java_lang_Float_PUT_MAX_VALUE(JAVA_FLOAT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_MAX_VALUE = v; +} + +JAVA_FLOAT java_lang_Float_GET_MIN_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_MIN_VALUE; +} + +void java_lang_Float_PUT_MIN_VALUE(JAVA_FLOAT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_MIN_VALUE = v; +} + +JAVA_FLOAT java_lang_Float_GET_MIN_NORMAL() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_MIN_NORMAL; +} + +void java_lang_Float_PUT_MIN_NORMAL(JAVA_FLOAT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_MIN_NORMAL = v; +} + +JAVA_FLOAT java_lang_Float_GET_NaN() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_NaN; +} + +void java_lang_Float_PUT_NaN(JAVA_FLOAT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_NaN = v; +} + +JAVA_FLOAT java_lang_Float_GET_POSITIVE_INFINITY() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_POSITIVE_INFINITY; +} + +void java_lang_Float_PUT_POSITIVE_INFINITY(JAVA_FLOAT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_POSITIVE_INFINITY = v; +} + +JAVA_FLOAT java_lang_Float_GET_NEGATIVE_INFINITY() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_NEGATIVE_INFINITY; +} + +void java_lang_Float_PUT_NEGATIVE_INFINITY(JAVA_FLOAT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_NEGATIVE_INFINITY = v; +} + +JAVA_OBJECT java_lang_Float_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_TYPE; +} + +void java_lang_Float_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_TYPE = v; +} + +JAVA_INT java_lang_Float_GET_MAX_EXPONENT() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_MAX_EXPONENT; +} + +void java_lang_Float_PUT_MAX_EXPONENT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_MAX_EXPONENT = v; +} + +JAVA_INT java_lang_Float_GET_MIN_EXPONENT() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_MIN_EXPONENT; +} + +void java_lang_Float_PUT_MIN_EXPONENT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_MIN_EXPONENT = v; +} + +JAVA_INT java_lang_Float_GET_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_Float) + return _STATIC_java_lang_Float_SIZE; +} + +void java_lang_Float_PUT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Float) +_STATIC_java_lang_Float_SIZE = v; +} + +void java_lang_Float___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Float", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Float.java", 75) + _r0.i = 0; + XMLVM_CLASS_INIT(float) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_float, _r0.i); + XMLVM_SOURCE_POSITION("Float.java", 76) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Float_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Float.java", 26) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Float___INIT____float(JAVA_OBJECT me, JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float___INIT____float] + XMLVM_ENTER_METHOD("java.lang.Float", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.f = n1; + XMLVM_SOURCE_POSITION("Float.java", 111) + XMLVM_CHECK_NPE(0) + java_lang_Number___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Float.java", 112) + XMLVM_CHECK_NPE(0) + ((java_lang_Float*) _r0.o)->fields.java_lang_Float.value_ = _r1.f; + XMLVM_SOURCE_POSITION("Float.java", 113) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Float___INIT____double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float___INIT____double] + XMLVM_ENTER_METHOD("java.lang.Float", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.d = n1; + XMLVM_SOURCE_POSITION("Float.java", 121) + XMLVM_CHECK_NPE(1) + java_lang_Number___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Float.java", 122) + _r0.f = (JAVA_FLOAT) _r2.d; + XMLVM_CHECK_NPE(1) + ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_ = _r0.f; + XMLVM_SOURCE_POSITION("Float.java", 123) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Float___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Float", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Float.java", 135) + _r0.f = java_lang_Float_parseFloat___java_lang_String(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_Float___INIT____float(_r1.o, _r0.f); + XMLVM_SOURCE_POSITION("Float.java", 136) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Float_compareTo___java_lang_Float(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_compareTo___java_lang_Float] + XMLVM_ENTER_METHOD("java.lang.Float", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Float.java", 157) + XMLVM_CHECK_NPE(2) + _r0.f = ((java_lang_Float*) _r2.o)->fields.java_lang_Float.value_; + XMLVM_CHECK_NPE(3) + _r1.f = ((java_lang_Float*) _r3.o)->fields.java_lang_Float.value_; + _r0.i = java_lang_Float_compare___float_float(_r0.f, _r1.f); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Float_byteValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_byteValue__] + XMLVM_ENTER_METHOD("java.lang.Float", "byteValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 162) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + _r0.i = (JAVA_INT) _r0.f; + _r0.i = (_r0.i << 24) >> 24; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Float_doubleValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_doubleValue__] + XMLVM_ENTER_METHOD("java.lang.Float", "doubleValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Float.java", 167) + XMLVM_CHECK_NPE(2) + _r0.f = ((java_lang_Float*) _r2.o)->fields.java_lang_Float.value_; + _r0.d = (JAVA_DOUBLE) _r0.f; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Float_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Float", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Float.java", 182) + if (_r3.o == _r2.o) goto label24; + XMLVM_SOURCE_POSITION("Float.java", 183) + XMLVM_CLASS_INIT(java_lang_Float) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_lang_Float); + if (_r0.i == 0) goto label22; + XMLVM_SOURCE_POSITION("Float.java", 184) + XMLVM_CHECK_NPE(2) + _r0.f = ((java_lang_Float*) _r2.o)->fields.java_lang_Float.value_; + _r0.i = java_lang_Float_floatToIntBits___float(_r0.f); + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.f = ((java_lang_Float*) _r3.o)->fields.java_lang_Float.value_; + _r1.i = java_lang_Float_floatToIntBits___float(_r1.f); + if (_r0.i == _r1.i) goto label24; + label22:; + _r0.i = 0; + label23:; + XMLVM_EXIT_METHOD() + return _r0.i; + label24:; + _r0.i = 1; + goto label23; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_lang_Float_floatToIntBits___float(JAVA_FLOAT n1)] + +//XMLVM_NATIVE[JAVA_INT java_lang_Float_floatToRawIntBits___float(JAVA_FLOAT n1)] + +JAVA_FLOAT java_lang_Float_floatValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_floatValue__] + XMLVM_ENTER_METHOD("java.lang.Float", "floatValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 223) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Float_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Float", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 228) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + _r0.i = java_lang_Float_floatToIntBits___float(_r0.f); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_FLOAT java_lang_Float_intBitsToFloat___int(JAVA_INT n1)] + +JAVA_INT java_lang_Float_intValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_intValue__] + XMLVM_ENTER_METHOD("java.lang.Float", "intValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 246) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + _r0.i = (JAVA_INT) _r0.f; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Float_isInfinite__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_isInfinite__] + XMLVM_ENTER_METHOD("java.lang.Float", "isInfinite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 256) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + _r0.i = java_lang_Float_isInfinite___float(_r0.f); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Float_isInfinite___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_isInfinite___float] + XMLVM_ENTER_METHOD("java.lang.Float", "isInfinite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.f = n1; + XMLVM_SOURCE_POSITION("Float.java", 268) + _r0.f = Infinity; + _r0.i = _r1.f > _r0.f ? 1 : (_r1.f == _r0.f ? 0 : -1); + if (_r0.i == 0) goto label14; + _r0.f = -Infinity; + _r0.i = _r1.f > _r0.f ? 1 : (_r1.f == _r0.f ? 0 : -1); + if (_r0.i == 0) goto label14; + _r0.i = 0; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 1; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Float_isNaN__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_isNaN__] + XMLVM_ENTER_METHOD("java.lang.Float", "isNaN", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 278) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + _r0.i = java_lang_Float_isNaN___float(_r0.f); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Float_isNaN___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_isNaN___float] + XMLVM_ENTER_METHOD("java.lang.Float", "isNaN", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.f = n1; + XMLVM_SOURCE_POSITION("Float.java", 291) + _r0.i = _r1.f > _r1.f ? 1 : (_r1.f == _r1.f ? 0 : -1); + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Float_longValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_longValue__] + XMLVM_ENTER_METHOD("java.lang.Float", "longValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Float.java", 296) + XMLVM_CHECK_NPE(2) + _r0.f = ((java_lang_Float*) _r2.o)->fields.java_lang_Float.value_; + _r0.l = (JAVA_LONG) _r0.f; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Float_parseFloat___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_parseFloat___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Float", "parseFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Float.java", 313) + _r0.f = org_apache_harmony_luni_util_FloatingPointParser_parseFloat___java_lang_String(_r1.o); + XMLVM_SOURCE_POSITION("Float.java", 312) + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Float_shortValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_shortValue__] + XMLVM_ENTER_METHOD("java.lang.Float", "shortValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 318) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + _r0.i = (JAVA_INT) _r0.f; + _r0.i = (_r0.i << 16) >> 16; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Float_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_toString__] + XMLVM_ENTER_METHOD("java.lang.Float", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Float.java", 323) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_lang_Float*) _r1.o)->fields.java_lang_Float.value_; + _r0.o = java_lang_Float_toString___float(_r0.f); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Float_toString___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_toString___float] + XMLVM_ENTER_METHOD("java.lang.Float", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.f = n1; + XMLVM_SOURCE_POSITION("Float.java", 335) + _r0.o = org_apache_harmony_luni_util_NumberConverter_convert___float(_r1.f); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Float_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Float", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Float.java", 351) + _r0.f = java_lang_Float_parseFloat___java_lang_String(_r1.o); + _r0.o = java_lang_Float_valueOf___float(_r0.f); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Float_compare___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_compare___float_float] + XMLVM_ENTER_METHOD("java.lang.Float", "compare", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.f = n1; + _r5.f = n2; + _r3.i = 1; + _r2.i = 0; + _r1.i = -1; + XMLVM_SOURCE_POSITION("Float.java", 373) + _r0.i = _r4.f > _r5.f ? 1 : (_r4.f == _r5.f ? 0 : -1); + if (_r0.i <= 0) goto label9; + _r0 = _r3; + label8:; + XMLVM_SOURCE_POSITION("Float.java", 374) + XMLVM_SOURCE_POSITION("Float.java", 399) + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_SOURCE_POSITION("Float.java", 376) + _r0.i = _r5.f > _r4.f ? 1 : (_r5.f == _r4.f ? 0 : -1); + if (_r0.i <= 0) goto label15; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Float.java", 377) + goto label8; + label15:; + XMLVM_SOURCE_POSITION("Float.java", 379) + _r0.i = _r4.f > _r5.f ? 1 : (_r4.f == _r5.f ? 0 : -1); + if (_r0.i != 0) goto label26; + _r0.f = 0.0; + _r0.i = _r0.f > _r4.f ? 1 : (_r0.f == _r4.f ? 0 : -1); + if (_r0.i == 0) goto label26; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Float.java", 380) + goto label8; + label26:; + XMLVM_SOURCE_POSITION("Float.java", 384) + _r0.i = java_lang_Float_isNaN___float(_r4.f); + if (_r0.i == 0) goto label42; + XMLVM_SOURCE_POSITION("Float.java", 385) + _r0.i = java_lang_Float_isNaN___float(_r5.f); + if (_r0.i == 0) goto label40; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Float.java", 386) + goto label8; + label40:; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Float.java", 388) + goto label8; + label42:; + XMLVM_SOURCE_POSITION("Float.java", 389) + _r0.i = java_lang_Float_isNaN___float(_r5.f); + if (_r0.i == 0) goto label50; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Float.java", 390) + goto label8; + label50:; + XMLVM_SOURCE_POSITION("Float.java", 394) + _r0.i = java_lang_Float_floatToRawIntBits___float(_r4.f); + XMLVM_SOURCE_POSITION("Float.java", 395) + _r1.i = java_lang_Float_floatToRawIntBits___float(_r5.f); + _r0.i = _r0.i >> 31; + _r1.i = _r1.i >> 31; + _r0.i = _r0.i - _r1.i; + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Float_valueOf___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_valueOf___float] + XMLVM_ENTER_METHOD("java.lang.Float", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.f = n1; + XMLVM_SOURCE_POSITION("Float.java", 411) + _r0.o = __NEW_java_lang_Float(); + XMLVM_CHECK_NPE(0) + java_lang_Float___INIT____float(_r0.o, _r1.f); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Float_toHexString___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Float) + //XMLVM_BEGIN_WRAPPER[java_lang_Float_toHexString___float] + XMLVM_ENTER_METHOD("java.lang.Float", "toHexString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.f = n1; + _r6.i = 48; + _r5.i = 6; + XMLVM_SOURCE_POSITION("Float.java", 426) + _r0.i = _r7.f > _r7.f ? 1 : (_r7.f == _r7.f ? 0 : -1); + if (_r0.i == 0) goto label10; + XMLVM_SOURCE_POSITION("Float.java", 427) + // "NaN" + _r0.o = xmlvm_create_java_string_from_pool(8); + label9:; + XMLVM_SOURCE_POSITION("Float.java", 503) + XMLVM_EXIT_METHOD() + return _r0.o; + label10:; + XMLVM_SOURCE_POSITION("Float.java", 429) + _r0.f = Infinity; + _r0.i = _r7.f > _r0.f ? 1 : (_r7.f == _r0.f ? 0 : -1); + if (_r0.i != 0) goto label19; + XMLVM_SOURCE_POSITION("Float.java", 430) + // "Infinity" + _r0.o = xmlvm_create_java_string_from_pool(9); + goto label9; + label19:; + XMLVM_SOURCE_POSITION("Float.java", 432) + _r0.f = -Infinity; + _r0.i = _r7.f > _r0.f ? 1 : (_r7.f == _r0.f ? 0 : -1); + if (_r0.i != 0) goto label28; + XMLVM_SOURCE_POSITION("Float.java", 433) + // "-Infinity" + _r0.o = xmlvm_create_java_string_from_pool(10); + goto label9; + label28:; + XMLVM_SOURCE_POSITION("Float.java", 436) + _r0.i = java_lang_Float_floatToIntBits___float(_r7.f); + XMLVM_SOURCE_POSITION("Float.java", 438) + _r1.i = -2147483648; + _r1.i = _r1.i & _r0.i; + if (_r1.i == 0) goto label58; + _r1.i = 1; + label38:; + XMLVM_SOURCE_POSITION("Float.java", 440) + _r2.i = 2139095040; + _r2.i = _r2.i & _r0.i; + _r2.i = ((JAVA_UINT) _r2.i) >> (0x1f & ((JAVA_UINT) 23)); + _r3.i = 8388607; + _r0.i = _r0.i & _r3.i; + _r0.i = _r0.i << 1; + if (_r2.i != 0) goto label63; + XMLVM_SOURCE_POSITION("Float.java", 445) + if (_r0.i != 0) goto label63; + XMLVM_SOURCE_POSITION("Float.java", 446) + if (_r1.i == 0) goto label60; + // "-0x0.0p0" + _r0.o = xmlvm_create_java_string_from_pool(11); + goto label9; + label58:; + _r1.i = 0; + goto label38; + label60:; + // "0x0.0p0" + _r0.o = xmlvm_create_java_string_from_pool(12); + goto label9; + label63:; + XMLVM_SOURCE_POSITION("Float.java", 449) + _r3.o = __NEW_java_lang_StringBuilder(); + _r4.i = 10; + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT____int(_r3.o, _r4.i); + XMLVM_SOURCE_POSITION("Float.java", 450) + if (_r1.i == 0) goto label126; + XMLVM_SOURCE_POSITION("Float.java", 451) + // "-0x" + _r1.o = xmlvm_create_java_string_from_pool(13); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r1.o); + label77:; + XMLVM_SOURCE_POSITION("Float.java", 456) + if (_r2.i != 0) goto label142; + XMLVM_SOURCE_POSITION("Float.java", 457) + // "0." + _r1.o = xmlvm_create_java_string_from_pool(14); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r1.o); + _r1 = _r0; + _r0 = _r5; + label86:; + XMLVM_SOURCE_POSITION("Float.java", 462) + if (_r1.i == 0) goto label92; + _r2.i = _r1.i & 15; + if (_r2.i == 0) goto label132; + label92:; + XMLVM_SOURCE_POSITION("Float.java", 467) + _r2.o = java_lang_Integer_toHexString___int(_r1.i); + XMLVM_SOURCE_POSITION("Float.java", 470) + if (_r1.i == 0) goto label113; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r0.i <= _r1.i) goto label113; + XMLVM_SOURCE_POSITION("Float.java", 471) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + _r0.i = _r0.i - _r1.i; + label109:; + XMLVM_SOURCE_POSITION("Float.java", 472) + _r1.i = _r0.i + -1; + if (_r0.i != 0) goto label137; + label113:; + XMLVM_SOURCE_POSITION("Float.java", 476) + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r2.o); + XMLVM_SOURCE_POSITION("Float.java", 477) + // "p-126" + _r0.o = xmlvm_create_java_string_from_pool(15); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r0.o); + label121:; + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + goto label9; + label126:; + XMLVM_SOURCE_POSITION("Float.java", 453) + // "0x" + _r1.o = xmlvm_create_java_string_from_pool(16); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r1.o); + goto label77; + label132:; + XMLVM_SOURCE_POSITION("Float.java", 463) + _r1.i = ((JAVA_UINT) _r1.i) >> (0x1f & ((JAVA_UINT) 4)); + _r0.i = _r0.i + -1; + XMLVM_SOURCE_POSITION("Float.java", 464) + goto label86; + label137:; + XMLVM_SOURCE_POSITION("Float.java", 473) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[6])(_r3.o, _r6.i); + _r0 = _r1; + goto label109; + label142:; + XMLVM_SOURCE_POSITION("Float.java", 479) + // "1." + _r1.o = xmlvm_create_java_string_from_pool(17); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r1.o); + _r1 = _r0; + _r0 = _r5; + label149:; + XMLVM_SOURCE_POSITION("Float.java", 484) + if (_r1.i == 0) goto label155; + _r4.i = _r1.i & 15; + if (_r4.i == 0) goto label196; + label155:; + XMLVM_SOURCE_POSITION("Float.java", 489) + _r4.o = java_lang_Integer_toHexString___int(_r1.i); + XMLVM_SOURCE_POSITION("Float.java", 492) + if (_r1.i == 0) goto label176; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + if (_r0.i <= _r1.i) goto label176; + XMLVM_SOURCE_POSITION("Float.java", 493) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + _r0.i = _r0.i - _r1.i; + label172:; + XMLVM_SOURCE_POSITION("Float.java", 494) + _r1.i = _r0.i + -1; + if (_r0.i != 0) goto label201; + label176:; + XMLVM_SOURCE_POSITION("Float.java", 498) + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + XMLVM_SOURCE_POSITION("Float.java", 499) + _r0.i = 112; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[6])(_r3.o, _r0.i); + XMLVM_SOURCE_POSITION("Float.java", 501) + _r0.i = 127; + _r0.i = _r2.i - _r0.i; + _r0.o = java_lang_Integer_toString___int(_r0.i); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder_append___java_lang_String(_r3.o, _r0.o); + goto label121; + label196:; + XMLVM_SOURCE_POSITION("Float.java", 485) + _r1.i = ((JAVA_UINT) _r1.i) >> (0x1f & ((JAVA_UINT) 4)); + _r0.i = _r0.i + -1; + XMLVM_SOURCE_POSITION("Float.java", 486) + goto label149; + label201:; + XMLVM_SOURCE_POSITION("Float.java", 495) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[6])(_r3.o, _r6.i); + _r0 = _r1; + goto label172; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Float_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Float_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Float", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Float.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Float_compareTo___java_lang_Float(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Float.h b/tests/nbody-java/java_lang_Float.h new file mode 100644 index 0000000000000..5ac0bfd01bdcc --- /dev/null +++ b/tests/nbody-java/java_lang_Float.h @@ -0,0 +1,150 @@ +#ifndef __JAVA_LANG_FLOAT__ +#define __JAVA_LANG_FLOAT__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Float 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Number.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_FloatingPointParser +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_FloatingPointParser +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_FloatingPointParser) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_NumberConverter +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_NumberConverter +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_NumberConverter) +#endif +// Class declarations for java.lang.Float +XMLVM_DEFINE_CLASS(java_lang_Float, 13, XMLVM_ITABLE_SIZE_java_lang_Float) + +extern JAVA_OBJECT __CLASS_java_lang_Float; +extern JAVA_OBJECT __CLASS_java_lang_Float_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Float_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Float_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Float +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Float \ + __INSTANCE_FIELDS_java_lang_Number; \ + struct { \ + JAVA_FLOAT value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Float \ + } java_lang_Float + +struct java_lang_Float { + __TIB_DEFINITION_java_lang_Float* tib; + struct { + __INSTANCE_FIELDS_java_lang_Float; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +typedef struct java_lang_Float java_lang_Float; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Float 13 +#define XMLVM_VTABLE_IDX_java_lang_Float_byteValue__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Float_doubleValue__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Float_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Float_floatValue__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Float_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Float_intValue__ 9 +#define XMLVM_VTABLE_IDX_java_lang_Float_longValue__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Float_shortValue__ 11 +#define XMLVM_VTABLE_IDX_java_lang_Float_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Float_compareTo___java_lang_Object 12 + +void __INIT_java_lang_Float(); +void __INIT_IMPL_java_lang_Float(); +void __DELETE_java_lang_Float(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Float(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Float(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Float(); +JAVA_LONG java_lang_Float_GET_serialVersionUID(); +void java_lang_Float_PUT_serialVersionUID(JAVA_LONG v); +JAVA_FLOAT java_lang_Float_GET_MAX_VALUE(); +void java_lang_Float_PUT_MAX_VALUE(JAVA_FLOAT v); +JAVA_FLOAT java_lang_Float_GET_MIN_VALUE(); +void java_lang_Float_PUT_MIN_VALUE(JAVA_FLOAT v); +JAVA_FLOAT java_lang_Float_GET_MIN_NORMAL(); +void java_lang_Float_PUT_MIN_NORMAL(JAVA_FLOAT v); +JAVA_FLOAT java_lang_Float_GET_NaN(); +void java_lang_Float_PUT_NaN(JAVA_FLOAT v); +JAVA_FLOAT java_lang_Float_GET_POSITIVE_INFINITY(); +void java_lang_Float_PUT_POSITIVE_INFINITY(JAVA_FLOAT v); +JAVA_FLOAT java_lang_Float_GET_NEGATIVE_INFINITY(); +void java_lang_Float_PUT_NEGATIVE_INFINITY(JAVA_FLOAT v); +JAVA_OBJECT java_lang_Float_GET_TYPE(); +void java_lang_Float_PUT_TYPE(JAVA_OBJECT v); +JAVA_INT java_lang_Float_GET_MAX_EXPONENT(); +void java_lang_Float_PUT_MAX_EXPONENT(JAVA_INT v); +JAVA_INT java_lang_Float_GET_MIN_EXPONENT(); +void java_lang_Float_PUT_MIN_EXPONENT(JAVA_INT v); +JAVA_INT java_lang_Float_GET_SIZE(); +void java_lang_Float_PUT_SIZE(JAVA_INT v); +void java_lang_Float___CLINIT_(); +void java_lang_Float___INIT____float(JAVA_OBJECT me, JAVA_FLOAT n1); +void java_lang_Float___INIT____double(JAVA_OBJECT me, JAVA_DOUBLE n1); +void java_lang_Float___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_Float_compareTo___java_lang_Float(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_BYTE java_lang_Float_byteValue__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_DOUBLE java_lang_Float_doubleValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Float_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_Float_floatToIntBits___float(JAVA_FLOAT n1); +JAVA_INT java_lang_Float_floatToRawIntBits___float(JAVA_FLOAT n1); +// Vtable index: 8 +JAVA_FLOAT java_lang_Float_floatValue__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_Float_hashCode__(JAVA_OBJECT me); +JAVA_FLOAT java_lang_Float_intBitsToFloat___int(JAVA_INT n1); +// Vtable index: 9 +JAVA_INT java_lang_Float_intValue__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Float_isInfinite__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Float_isInfinite___float(JAVA_FLOAT n1); +JAVA_BOOLEAN java_lang_Float_isNaN__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Float_isNaN___float(JAVA_FLOAT n1); +// Vtable index: 10 +JAVA_LONG java_lang_Float_longValue__(JAVA_OBJECT me); +JAVA_FLOAT java_lang_Float_parseFloat___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 11 +JAVA_SHORT java_lang_Float_shortValue__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Float_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Float_toString___float(JAVA_FLOAT n1); +JAVA_OBJECT java_lang_Float_valueOf___java_lang_String(JAVA_OBJECT n1); +JAVA_INT java_lang_Float_compare___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2); +JAVA_OBJECT java_lang_Float_valueOf___float(JAVA_FLOAT n1); +JAVA_OBJECT java_lang_Float_toHexString___float(JAVA_FLOAT n1); +// Vtable index: 12 +JAVA_INT java_lang_Float_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_IndexOutOfBoundsException.c b/tests/nbody-java/java_lang_IndexOutOfBoundsException.c new file mode 100644 index 0000000000000..48a87b77c459b --- /dev/null +++ b/tests/nbody-java/java_lang_IndexOutOfBoundsException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_lang_IndexOutOfBoundsException.h" + +#define XMLVM_CURRENT_CLASS_NAME IndexOutOfBoundsException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_IndexOutOfBoundsException + +__TIB_DEFINITION_java_lang_IndexOutOfBoundsException __TIB_java_lang_IndexOutOfBoundsException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_IndexOutOfBoundsException, // classInitializer + "java.lang.IndexOutOfBoundsException", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_RuntimeException, // extends + sizeof(java_lang_IndexOutOfBoundsException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException; +JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_IndexOutOfBoundsException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_IndexOutOfBoundsException() +{ + staticInitializerLock(&__TIB_java_lang_IndexOutOfBoundsException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_IndexOutOfBoundsException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_IndexOutOfBoundsException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_IndexOutOfBoundsException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_IndexOutOfBoundsException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_IndexOutOfBoundsException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_IndexOutOfBoundsException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.IndexOutOfBoundsException") + __INIT_IMPL_java_lang_IndexOutOfBoundsException(); + } +} + +void __INIT_IMPL_java_lang_IndexOutOfBoundsException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_RuntimeException) + __TIB_java_lang_IndexOutOfBoundsException.newInstanceFunc = __NEW_INSTANCE_java_lang_IndexOutOfBoundsException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_IndexOutOfBoundsException.vtable, __TIB_java_lang_RuntimeException.vtable, sizeof(__TIB_java_lang_RuntimeException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_IndexOutOfBoundsException.numImplementedInterfaces = 1; + __TIB_java_lang_IndexOutOfBoundsException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_IndexOutOfBoundsException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_IndexOutOfBoundsException.itableBegin = &__TIB_java_lang_IndexOutOfBoundsException.itable[0]; + + _STATIC_java_lang_IndexOutOfBoundsException_serialVersionUID = 234122996006267687; + + __TIB_java_lang_IndexOutOfBoundsException.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_IndexOutOfBoundsException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_IndexOutOfBoundsException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_IndexOutOfBoundsException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_IndexOutOfBoundsException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_IndexOutOfBoundsException.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_IndexOutOfBoundsException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_IndexOutOfBoundsException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_IndexOutOfBoundsException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_IndexOutOfBoundsException); + __TIB_java_lang_IndexOutOfBoundsException.clazz = __CLASS_java_lang_IndexOutOfBoundsException; + __TIB_java_lang_IndexOutOfBoundsException.baseType = JAVA_NULL; + __CLASS_java_lang_IndexOutOfBoundsException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_IndexOutOfBoundsException); + __CLASS_java_lang_IndexOutOfBoundsException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_IndexOutOfBoundsException_1ARRAY); + __CLASS_java_lang_IndexOutOfBoundsException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_IndexOutOfBoundsException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_IndexOutOfBoundsException] + //XMLVM_END_WRAPPER + + __TIB_java_lang_IndexOutOfBoundsException.classInitialized = 1; +} + +void __DELETE_java_lang_IndexOutOfBoundsException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_IndexOutOfBoundsException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_IndexOutOfBoundsException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_RuntimeException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_IndexOutOfBoundsException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_IndexOutOfBoundsException() +{ XMLVM_CLASS_INIT(java_lang_IndexOutOfBoundsException) +java_lang_IndexOutOfBoundsException* me = (java_lang_IndexOutOfBoundsException*) XMLVM_MALLOC(sizeof(java_lang_IndexOutOfBoundsException)); + me->tib = &__TIB_java_lang_IndexOutOfBoundsException; + __INIT_INSTANCE_MEMBERS_java_lang_IndexOutOfBoundsException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_IndexOutOfBoundsException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_IndexOutOfBoundsException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_IndexOutOfBoundsException(); + java_lang_IndexOutOfBoundsException___INIT___(me); + return me; +} + +JAVA_LONG java_lang_IndexOutOfBoundsException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_IndexOutOfBoundsException) + return _STATIC_java_lang_IndexOutOfBoundsException_serialVersionUID; +} + +void java_lang_IndexOutOfBoundsException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_IndexOutOfBoundsException) +_STATIC_java_lang_IndexOutOfBoundsException_serialVersionUID = v; +} + +void java_lang_IndexOutOfBoundsException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_IndexOutOfBoundsException___INIT___] + XMLVM_ENTER_METHOD("java.lang.IndexOutOfBoundsException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("IndexOutOfBoundsException.java", 33) + XMLVM_CHECK_NPE(0) + java_lang_RuntimeException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("IndexOutOfBoundsException.java", 34) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_IndexOutOfBoundsException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_IndexOutOfBoundsException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.IndexOutOfBoundsException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("IndexOutOfBoundsException.java", 44) + XMLVM_CHECK_NPE(0) + java_lang_RuntimeException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("IndexOutOfBoundsException.java", 45) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_IndexOutOfBoundsException.h b/tests/nbody-java/java_lang_IndexOutOfBoundsException.h new file mode 100644 index 0000000000000..9a0cb954a1474 --- /dev/null +++ b/tests/nbody-java/java_lang_IndexOutOfBoundsException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_LANG_INDEXOUTOFBOUNDSEXCEPTION__ +#define __JAVA_LANG_INDEXOUTOFBOUNDSEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_IndexOutOfBoundsException 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_RuntimeException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.IndexOutOfBoundsException +XMLVM_DEFINE_CLASS(java_lang_IndexOutOfBoundsException, 8, XMLVM_ITABLE_SIZE_java_lang_IndexOutOfBoundsException) + +extern JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException; +extern JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_IndexOutOfBoundsException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_IndexOutOfBoundsException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_IndexOutOfBoundsException \ + __INSTANCE_FIELDS_java_lang_RuntimeException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_IndexOutOfBoundsException \ + } java_lang_IndexOutOfBoundsException + +struct java_lang_IndexOutOfBoundsException { + __TIB_DEFINITION_java_lang_IndexOutOfBoundsException* tib; + struct { + __INSTANCE_FIELDS_java_lang_IndexOutOfBoundsException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +typedef struct java_lang_IndexOutOfBoundsException java_lang_IndexOutOfBoundsException; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_IndexOutOfBoundsException 8 + +void __INIT_java_lang_IndexOutOfBoundsException(); +void __INIT_IMPL_java_lang_IndexOutOfBoundsException(); +void __DELETE_java_lang_IndexOutOfBoundsException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_IndexOutOfBoundsException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_IndexOutOfBoundsException(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_IndexOutOfBoundsException(); +JAVA_LONG java_lang_IndexOutOfBoundsException_GET_serialVersionUID(); +void java_lang_IndexOutOfBoundsException_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_IndexOutOfBoundsException___INIT___(JAVA_OBJECT me); +void java_lang_IndexOutOfBoundsException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Integer.c b/tests/nbody-java/java_lang_Integer.c new file mode 100644 index 0000000000000..2f60511a58475 --- /dev/null +++ b/tests/nbody-java/java_lang_Integer.c @@ -0,0 +1,1982 @@ +#include "xmlvm.h" +#include "java_lang_Character.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_System.h" + +#include "java_lang_Integer.h" + +#define XMLVM_CURRENT_CLASS_NAME Integer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Integer + +__TIB_DEFINITION_java_lang_Integer __TIB_java_lang_Integer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Integer, // classInitializer + "java.lang.Integer", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Number;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Number, // extends + sizeof(java_lang_Integer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Integer; +JAVA_OBJECT __CLASS_java_lang_Integer_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Integer_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Integer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Integer_serialVersionUID; +static JAVA_INT _STATIC_java_lang_Integer_MAX_VALUE; +static JAVA_INT _STATIC_java_lang_Integer_MIN_VALUE; +static JAVA_INT _STATIC_java_lang_Integer_SIZE; +static JAVA_OBJECT _STATIC_java_lang_Integer_decimalScale; +static JAVA_OBJECT _STATIC_java_lang_Integer_TYPE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Integer() +{ + staticInitializerLock(&__TIB_java_lang_Integer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Integer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Integer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Integer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Integer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Integer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Integer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Integer") + __INIT_IMPL_java_lang_Integer(); + } +} + +void __INIT_IMPL_java_lang_Integer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Number) + __TIB_java_lang_Integer.newInstanceFunc = __NEW_INSTANCE_java_lang_Integer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Integer.vtable, __TIB_java_lang_Number.vtable, sizeof(__TIB_java_lang_Number.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Integer.vtable[6] = (VTABLE_PTR) &java_lang_Integer_byteValue__; + __TIB_java_lang_Integer.vtable[7] = (VTABLE_PTR) &java_lang_Integer_doubleValue__; + __TIB_java_lang_Integer.vtable[1] = (VTABLE_PTR) &java_lang_Integer_equals___java_lang_Object; + __TIB_java_lang_Integer.vtable[8] = (VTABLE_PTR) &java_lang_Integer_floatValue__; + __TIB_java_lang_Integer.vtable[4] = (VTABLE_PTR) &java_lang_Integer_hashCode__; + __TIB_java_lang_Integer.vtable[9] = (VTABLE_PTR) &java_lang_Integer_intValue__; + __TIB_java_lang_Integer.vtable[10] = (VTABLE_PTR) &java_lang_Integer_longValue__; + __TIB_java_lang_Integer.vtable[11] = (VTABLE_PTR) &java_lang_Integer_shortValue__; + __TIB_java_lang_Integer.vtable[5] = (VTABLE_PTR) &java_lang_Integer_toString__; + __TIB_java_lang_Integer.vtable[12] = (VTABLE_PTR) &java_lang_Integer_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Integer.numImplementedInterfaces = 2; + __TIB_java_lang_Integer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Integer.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Integer.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Integer.itableBegin = &__TIB_java_lang_Integer.itable[0]; + __TIB_java_lang_Integer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Integer.vtable[12]; + + _STATIC_java_lang_Integer_serialVersionUID = 1360826667806852920; + _STATIC_java_lang_Integer_MAX_VALUE = 2147483647; + _STATIC_java_lang_Integer_MIN_VALUE = -2147483648; + _STATIC_java_lang_Integer_SIZE = 32; + _STATIC_java_lang_Integer_decimalScale = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_Integer_TYPE = (java_lang_Class*) JAVA_NULL; + + __TIB_java_lang_Integer.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Integer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Integer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Integer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Integer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Integer.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Integer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Integer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Integer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Integer); + __TIB_java_lang_Integer.clazz = __CLASS_java_lang_Integer; + __TIB_java_lang_Integer.baseType = JAVA_NULL; + __CLASS_java_lang_Integer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Integer); + __CLASS_java_lang_Integer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Integer_1ARRAY); + __CLASS_java_lang_Integer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Integer_2ARRAY); + java_lang_Integer___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Integer] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Integer.classInitialized = 1; +} + +void __DELETE_java_lang_Integer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Integer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Integer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Number(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Integer*) me)->fields.java_lang_Integer.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Integer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Integer() +{ XMLVM_CLASS_INIT(java_lang_Integer) +java_lang_Integer* me = (java_lang_Integer*) XMLVM_MALLOC(sizeof(java_lang_Integer)); + me->tib = &__TIB_java_lang_Integer; + __INIT_INSTANCE_MEMBERS_java_lang_Integer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Integer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Integer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Integer_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Integer) + return _STATIC_java_lang_Integer_serialVersionUID; +} + +void java_lang_Integer_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Integer) +_STATIC_java_lang_Integer_serialVersionUID = v; +} + +JAVA_INT java_lang_Integer_GET_MAX_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Integer) + return _STATIC_java_lang_Integer_MAX_VALUE; +} + +void java_lang_Integer_PUT_MAX_VALUE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Integer) +_STATIC_java_lang_Integer_MAX_VALUE = v; +} + +JAVA_INT java_lang_Integer_GET_MIN_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Integer) + return _STATIC_java_lang_Integer_MIN_VALUE; +} + +void java_lang_Integer_PUT_MIN_VALUE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Integer) +_STATIC_java_lang_Integer_MIN_VALUE = v; +} + +JAVA_INT java_lang_Integer_GET_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_Integer) + return _STATIC_java_lang_Integer_SIZE; +} + +void java_lang_Integer_PUT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Integer) +_STATIC_java_lang_Integer_SIZE = v; +} + +JAVA_OBJECT java_lang_Integer_GET_decimalScale() +{ + XMLVM_CLASS_INIT(java_lang_Integer) + return _STATIC_java_lang_Integer_decimalScale; +} + +void java_lang_Integer_PUT_decimalScale(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Integer) +_STATIC_java_lang_Integer_decimalScale = v; +} + +JAVA_OBJECT java_lang_Integer_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Integer) + return _STATIC_java_lang_Integer_TYPE; +} + +void java_lang_Integer_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Integer) +_STATIC_java_lang_Integer_TYPE = v; +} + +void java_lang_Integer___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Integer", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Integer.java", 63) + _r0.i = 10; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_INT[]){1000000000, 100000000, 10000000, 1000000, 100000, 10000, 1000, 100, 10, 1, }); + java_lang_Integer_PUT_decimalScale( _r0.o); + XMLVM_SOURCE_POSITION("Integer.java", 70) + _r0.i = 0; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + XMLVM_SOURCE_POSITION("Integer.java", 71) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Integer_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Integer.java", 31) + XMLVM_EXIT_METHOD() + return; + label24:; + //XMLVM_END_WRAPPER +} + +void java_lang_Integer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer___INIT____int] + XMLVM_ENTER_METHOD("java.lang.Integer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 83) + XMLVM_CHECK_NPE(0) + java_lang_Number___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Integer.java", 84) + XMLVM_CHECK_NPE(0) + ((java_lang_Integer*) _r0.o)->fields.java_lang_Integer.value_ = _r1.i; + XMLVM_SOURCE_POSITION("Integer.java", 85) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Integer___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Integer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Integer.java", 97) + _r0.i = java_lang_Integer_parseInt___java_lang_String(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_Integer___INIT____int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("Integer.java", 98) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Integer_byteValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_byteValue__] + XMLVM_ENTER_METHOD("java.lang.Integer", "byteValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 102) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Integer*) _r1.o)->fields.java_lang_Integer.value_; + _r0.i = (_r0.i << 24) >> 24; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_compareTo___java_lang_Integer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_compareTo___java_lang_Integer] + XMLVM_ENTER_METHOD("java.lang.Integer", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Integer.java", 119) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Integer*) _r2.o)->fields.java_lang_Integer.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Integer*) _r3.o)->fields.java_lang_Integer.value_; + if (_r0.i <= _r1.i) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Integer*) _r2.o)->fields.java_lang_Integer.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Integer*) _r3.o)->fields.java_lang_Integer.value_; + if (_r0.i >= _r1.i) goto label16; + _r0.i = -1; + goto label7; + label16:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_decode___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_decode___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Integer", "decode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r9.o = n1; + _r7.i = 16; + _r3.i = 1; + _r6.i = 0; + XMLVM_SOURCE_POSITION("Integer.java", 136) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(9) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r9.o)->tib->vtable[8])(_r9.o); + XMLVM_SOURCE_POSITION("Integer.java", 137) + if (_r0.i != 0) goto label16; + XMLVM_SOURCE_POSITION("Integer.java", 138) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("Integer.java", 140) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(9) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r9.o)->tib->vtable[6])(_r9.o, _r6.i); + XMLVM_SOURCE_POSITION("Integer.java", 141) + _r2.i = 45; + if (_r1.i != _r2.i) goto label35; + _r2 = _r3; + label25:; + XMLVM_SOURCE_POSITION("Integer.java", 142) + if (_r2.i == 0) goto label115; + XMLVM_SOURCE_POSITION("Integer.java", 143) + if (_r0.i != _r3.i) goto label37; + XMLVM_SOURCE_POSITION("Integer.java", 144) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label35:; + _r2 = _r6; + goto label25; + label37:; + XMLVM_SOURCE_POSITION("Integer.java", 146) + _r1.i = _r6.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(9) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r9.o)->tib->vtable[6])(_r9.o, _r1.i); + _r8 = _r3; + _r3 = _r1; + _r1 = _r8; + label46:; + XMLVM_SOURCE_POSITION("Integer.java", 149) + _r4.i = 10; + _r5.i = 48; + if (_r1.i != _r5.i) goto label96; + XMLVM_SOURCE_POSITION("Integer.java", 150) + XMLVM_SOURCE_POSITION("Integer.java", 151) + _r1.i = _r3.i + 1; + if (_r1.i != _r0.i) goto label61; + XMLVM_SOURCE_POSITION("Integer.java", 152) + _r0.o = java_lang_Integer_valueOf___int(_r6.i); + label60:; + XMLVM_SOURCE_POSITION("Integer.java", 170) + XMLVM_EXIT_METHOD() + return _r0.o; + label61:; + XMLVM_SOURCE_POSITION("Integer.java", 154) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(9) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r9.o)->tib->vtable[6])(_r9.o, _r1.i); + _r4.i = 120; + if (_r3.i == _r4.i) goto label73; + _r4.i = 88; + if (_r3.i != _r4.i) goto label93; + label73:; + XMLVM_SOURCE_POSITION("Integer.java", 155) + _r1.i = _r1.i + 1; + if (_r1.i != _r0.i) goto label83; + XMLVM_SOURCE_POSITION("Integer.java", 156) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label83:; + _r0 = _r7; + label84:; + XMLVM_SOURCE_POSITION("Integer.java", 158) + XMLVM_SOURCE_POSITION("Integer.java", 169) + _r0.i = java_lang_Integer_parse___java_lang_String_int_int_boolean(_r9.o, _r1.i, _r0.i, _r2.i); + _r0.o = java_lang_Integer_valueOf___int(_r0.i); + goto label60; + label93:; + XMLVM_SOURCE_POSITION("Integer.java", 160) + _r0.i = 8; + goto label84; + label96:; + XMLVM_SOURCE_POSITION("Integer.java", 162) + _r5.i = 35; + if (_r1.i != _r5.i) goto label112; + XMLVM_SOURCE_POSITION("Integer.java", 163) + _r1.i = _r3.i + 1; + if (_r1.i != _r0.i) goto label110; + XMLVM_SOURCE_POSITION("Integer.java", 164) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label110:; + _r0 = _r7; + XMLVM_SOURCE_POSITION("Integer.java", 166) + goto label84; + label112:; + _r0 = _r4; + _r1 = _r3; + goto label84; + label115:; + _r3 = _r6; + goto label46; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Integer_doubleValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_doubleValue__] + XMLVM_ENTER_METHOD("java.lang.Integer", "doubleValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 175) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Integer*) _r2.o)->fields.java_lang_Integer.value_; + _r0.d = (JAVA_DOUBLE) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Integer_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Integer", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Integer.java", 190) + XMLVM_CLASS_INIT(java_lang_Integer) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_lang_Integer); + if (_r0.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Integer.java", 191) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Integer*) _r2.o)->fields.java_lang_Integer.value_; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Integer*) _r3.o)->fields.java_lang_Integer.value_; + if (_r0.i != _r1.i) goto label14; + _r0.i = 1; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 0; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Integer_floatValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_floatValue__] + XMLVM_ENTER_METHOD("java.lang.Integer", "floatValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 196) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Integer*) _r1.o)->fields.java_lang_Integer.value_; + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_getInteger___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_getInteger___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Integer", "getInteger", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = n1; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Integer.java", 211) + if (_r2.o == JAVA_NULL) goto label9; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r0.i != 0) goto label11; + label9:; + _r0 = _r1; + label10:; + XMLVM_SOURCE_POSITION("Integer.java", 212) + XMLVM_SOURCE_POSITION("Integer.java", 221) + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + XMLVM_SOURCE_POSITION("Integer.java", 214) + _r0.o = java_lang_System_getProperty___java_lang_String(_r2.o); + XMLVM_SOURCE_POSITION("Integer.java", 215) + if (_r0.o != JAVA_NULL) goto label19; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Integer.java", 216) + goto label10; + label19:; + XMLVM_TRY_BEGIN(w4709aaac16b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Integer.java", 219) + _r0.o = java_lang_Integer_decode___java_lang_String(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4709aaac16b1c22) + XMLVM_CATCH_END(w4709aaac16b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4709aaac16b1c22) + goto label10; + label24:; + java_lang_Thread* curThread_w4709aaac16b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4709aaac16b1c25->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_getInteger___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_getInteger___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Integer", "getInteger", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Integer.java", 240) + if (_r1.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r0.i != 0) goto label13; + label8:; + XMLVM_SOURCE_POSITION("Integer.java", 241) + _r0.o = java_lang_Integer_valueOf___int(_r2.i); + label12:; + XMLVM_SOURCE_POSITION("Integer.java", 250) + XMLVM_EXIT_METHOD() + return _r0.o; + label13:; + XMLVM_SOURCE_POSITION("Integer.java", 243) + _r0.o = java_lang_System_getProperty___java_lang_String(_r1.o); + XMLVM_SOURCE_POSITION("Integer.java", 244) + if (_r0.o != JAVA_NULL) goto label24; + XMLVM_SOURCE_POSITION("Integer.java", 245) + _r0.o = java_lang_Integer_valueOf___int(_r2.i); + goto label12; + label24:; + XMLVM_TRY_BEGIN(w4709aaac17b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Integer.java", 248) + _r0.o = java_lang_Integer_decode___java_lang_String(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4709aaac17b1c22) + XMLVM_CATCH_END(w4709aaac17b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4709aaac17b1c22) + goto label12; + label29:; + java_lang_Thread* curThread_w4709aaac17b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4709aaac17b1c25->fields.java_lang_Thread.xmlvmException_; + _r0.o = java_lang_Integer_valueOf___int(_r2.i); + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_getInteger___java_lang_String_java_lang_Integer(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_getInteger___java_lang_String_java_lang_Integer] + XMLVM_ENTER_METHOD("java.lang.Integer", "getInteger", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Integer.java", 269) + if (_r1.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r0.i != 0) goto label10; + label8:; + _r0 = _r2; + label9:; + XMLVM_SOURCE_POSITION("Integer.java", 270) + XMLVM_SOURCE_POSITION("Integer.java", 279) + XMLVM_EXIT_METHOD() + return _r0.o; + label10:; + XMLVM_SOURCE_POSITION("Integer.java", 272) + _r0.o = java_lang_System_getProperty___java_lang_String(_r1.o); + XMLVM_SOURCE_POSITION("Integer.java", 273) + if (_r0.o != JAVA_NULL) goto label18; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Integer.java", 274) + goto label9; + label18:; + XMLVM_TRY_BEGIN(w4709aaac18b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Integer.java", 277) + _r0.o = java_lang_Integer_decode___java_lang_String(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4709aaac18b1c22) + XMLVM_CATCH_END(w4709aaac18b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4709aaac18b1c22) + goto label9; + label23:; + java_lang_Thread* curThread_w4709aaac18b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4709aaac18b1c25->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Integer", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 285) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Integer*) _r1.o)->fields.java_lang_Integer.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_intValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_intValue__] + XMLVM_ENTER_METHOD("java.lang.Integer", "intValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 295) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Integer*) _r1.o)->fields.java_lang_Integer.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Integer_longValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_longValue__] + XMLVM_ENTER_METHOD("java.lang.Integer", "longValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 300) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Integer*) _r2.o)->fields.java_lang_Integer.value_; + _r0.l = (JAVA_LONG) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_parseInt___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_parseInt___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Integer", "parseInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Integer.java", 315) + _r0.i = 10; + _r0.i = java_lang_Integer_parseInt___java_lang_String_int(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_parseInt___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_parseInt___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Integer", "parseInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.i = n2; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Integer.java", 336) + if (_r4.o == JAVA_NULL) goto label10; + _r0.i = 2; + if (_r5.i < _r0.i) goto label10; + XMLVM_SOURCE_POSITION("Integer.java", 337) + _r0.i = 36; + if (_r5.i <= _r0.i) goto label16; + label10:; + XMLVM_SOURCE_POSITION("Integer.java", 338) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("Integer.java", 340) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + XMLVM_SOURCE_POSITION("Integer.java", 341) + if (_r0.i != 0) goto label28; + XMLVM_SOURCE_POSITION("Integer.java", 342) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_SOURCE_POSITION("Integer.java", 344) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r4.o)->tib->vtable[6])(_r4.o, _r3.i); + _r2.i = 45; + if (_r1.i != _r2.i) goto label49; + _r1.i = 1; + label37:; + XMLVM_SOURCE_POSITION("Integer.java", 345) + if (_r1.i == 0) goto label57; + _r2.i = _r3.i + 1; + if (_r2.i != _r0.i) goto label51; + XMLVM_SOURCE_POSITION("Integer.java", 346) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label49:; + _r1 = _r3; + goto label37; + label51:; + _r0 = _r2; + label52:; + XMLVM_SOURCE_POSITION("Integer.java", 349) + _r0.i = java_lang_Integer_parse___java_lang_String_int_int_boolean(_r4.o, _r0.i, _r5.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + label57:; + _r0 = _r3; + goto label52; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_parse___java_lang_String_int_int_boolean(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_BOOLEAN n4) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_parse___java_lang_String_int_int_boolean] + XMLVM_ENTER_METHOD("java.lang.Integer", "parse", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + _r9.i = n4; + XMLVM_SOURCE_POSITION("Integer.java", 354) + _r0.i = -2147483648; + _r0.i = _r0.i / _r8.i; + XMLVM_SOURCE_POSITION("Integer.java", 355) + _r1.i = 0; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(6) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r6.o)->tib->vtable[8])(_r6.o); + _r3 = _r7; + label9:; + XMLVM_SOURCE_POSITION("Integer.java", 356) + if (_r3.i < _r2.i) goto label22; + XMLVM_SOURCE_POSITION("Integer.java", 370) + if (_r9.i != 0) goto label64; + XMLVM_SOURCE_POSITION("Integer.java", 371) + _r0.i = -_r1.i; + if (_r0.i >= 0) goto label65; + XMLVM_SOURCE_POSITION("Integer.java", 372) + XMLVM_SOURCE_POSITION("Integer.java", 373) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("Integer.java", 357) + _r4.i = _r3.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(6) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r6.o)->tib->vtable[6])(_r6.o, _r3.i); + _r3.i = java_lang_Character_digit___char_int(_r3.i, _r8.i); + XMLVM_SOURCE_POSITION("Integer.java", 358) + _r5.i = -1; + if (_r3.i != _r5.i) goto label41; + XMLVM_SOURCE_POSITION("Integer.java", 359) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label41:; + XMLVM_SOURCE_POSITION("Integer.java", 361) + if (_r0.i <= _r1.i) goto label49; + XMLVM_SOURCE_POSITION("Integer.java", 362) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label49:; + XMLVM_SOURCE_POSITION("Integer.java", 364) + _r5.i = _r1.i * _r8.i; + _r3.i = _r5.i - _r3.i; + if (_r3.i <= _r1.i) goto label61; + XMLVM_SOURCE_POSITION("Integer.java", 365) + XMLVM_SOURCE_POSITION("Integer.java", 366) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label61:; + _r1 = _r3; + _r3 = _r4; + XMLVM_SOURCE_POSITION("Integer.java", 368) + goto label9; + label64:; + _r0 = _r1; + label65:; + XMLVM_SOURCE_POSITION("Integer.java", 376) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Integer_shortValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_shortValue__] + XMLVM_ENTER_METHOD("java.lang.Integer", "shortValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 381) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Integer*) _r1.o)->fields.java_lang_Integer.value_; + _r0.i = (_r0.i << 16) >> 16; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_toBinaryString___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_toBinaryString___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "toBinaryString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 393) + _r0.i = 1; + if (_r4.i >= 0) goto label37; + XMLVM_SOURCE_POSITION("Integer.java", 395) + XMLVM_SOURCE_POSITION("Integer.java", 396) + _r0.i = 32; + label5:; + XMLVM_SOURCE_POSITION("Integer.java", 403) + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + _r2 = _r4; + label8:; + XMLVM_SOURCE_POSITION("Integer.java", 405) + _r0.i = _r0.i + -1; + _r3.i = _r2.i & 1; + _r3.i = _r3.i + 48; + _r3.i = _r3.i & 0xffff; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + XMLVM_SOURCE_POSITION("Integer.java", 406) + _r2.i = ((JAVA_UINT) _r2.i) >> (0x1f & ((JAVA_UINT) 1)); + if (_r0.i > 0) goto label8; + XMLVM_SOURCE_POSITION("Integer.java", 407) + XMLVM_SOURCE_POSITION("Integer.java", 408) + _r0.o = __NEW_java_lang_String(); + _r2.i = 0; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r2.i, _r3.i, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label29:; + XMLVM_SOURCE_POSITION("Integer.java", 399) + _r1.i = _r1.i + 1; + label31:; + XMLVM_SOURCE_POSITION("Integer.java", 398) + _r0.i = ((JAVA_UINT) _r0.i) >> (0x1f & ((JAVA_UINT) 1)); + if (_r0.i != 0) goto label29; + _r0 = _r1; + goto label5; + label37:; + _r1 = _r0; + _r0 = _r4; + goto label31; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_toHexString___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_toHexString___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "toHexString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 421) + _r0.i = 1; + if (_r5.i >= 0) goto label47; + XMLVM_SOURCE_POSITION("Integer.java", 423) + XMLVM_SOURCE_POSITION("Integer.java", 424) + _r0.i = 8; + label5:; + XMLVM_SOURCE_POSITION("Integer.java", 431) + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + _r2 = _r5; + label8:; + XMLVM_SOURCE_POSITION("Integer.java", 433) + _r3.i = _r2.i & 15; + _r4.i = 9; + if (_r3.i <= _r4.i) goto label44; + XMLVM_SOURCE_POSITION("Integer.java", 434) + XMLVM_SOURCE_POSITION("Integer.java", 435) + _r4.i = 10; + _r3.i = _r3.i - _r4.i; + _r3.i = _r3.i + 97; + label19:; + XMLVM_SOURCE_POSITION("Integer.java", 439) + _r0.i = _r0.i + -1; + _r3.i = _r3.i & 0xffff; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + XMLVM_SOURCE_POSITION("Integer.java", 440) + _r2.i = ((JAVA_UINT) _r2.i) >> (0x1f & ((JAVA_UINT) 4)); + if (_r0.i > 0) goto label8; + XMLVM_SOURCE_POSITION("Integer.java", 441) + XMLVM_SOURCE_POSITION("Integer.java", 442) + _r0.o = __NEW_java_lang_String(); + _r2.i = 0; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r2.i, _r3.i, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label36:; + XMLVM_SOURCE_POSITION("Integer.java", 427) + _r1.i = _r1.i + 1; + label38:; + XMLVM_SOURCE_POSITION("Integer.java", 426) + _r0.i = ((JAVA_UINT) _r0.i) >> (0x1f & ((JAVA_UINT) 4)); + if (_r0.i != 0) goto label36; + _r0 = _r1; + goto label5; + label44:; + XMLVM_SOURCE_POSITION("Integer.java", 437) + _r3.i = _r3.i + 48; + goto label19; + label47:; + _r1 = _r0; + _r0 = _r5; + goto label38; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_toOctalString___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_toOctalString___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "toOctalString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 454) + _r0.i = 1; + if (_r4.i >= 0) goto label37; + XMLVM_SOURCE_POSITION("Integer.java", 456) + XMLVM_SOURCE_POSITION("Integer.java", 457) + _r0.i = 11; + label5:; + XMLVM_SOURCE_POSITION("Integer.java", 464) + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + _r2 = _r4; + label8:; + XMLVM_SOURCE_POSITION("Integer.java", 466) + _r0.i = _r0.i + -1; + _r3.i = _r2.i & 7; + _r3.i = _r3.i + 48; + _r3.i = _r3.i & 0xffff; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + XMLVM_SOURCE_POSITION("Integer.java", 467) + _r2.i = ((JAVA_UINT) _r2.i) >> (0x1f & ((JAVA_UINT) 3)); + if (_r0.i > 0) goto label8; + XMLVM_SOURCE_POSITION("Integer.java", 468) + XMLVM_SOURCE_POSITION("Integer.java", 469) + _r0.o = __NEW_java_lang_String(); + _r2.i = 0; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r2.i, _r3.i, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label29:; + XMLVM_SOURCE_POSITION("Integer.java", 460) + _r1.i = _r1.i + 1; + label31:; + XMLVM_SOURCE_POSITION("Integer.java", 459) + _r0.i = ((JAVA_UINT) _r0.i) >> (0x1f & ((JAVA_UINT) 3)); + if (_r0.i != 0) goto label29; + _r0 = _r1; + goto label5; + label37:; + _r1 = _r0; + _r0 = _r4; + goto label31; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_toString__] + XMLVM_ENTER_METHOD("java.lang.Integer", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Integer.java", 474) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Integer*) _r1.o)->fields.java_lang_Integer.value_; + _r0.o = java_lang_Integer_toString___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_toString___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_toString___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r10.i = n1; + _r2.i = 45; + _r8.i = 1; + _r7.i = 0; + XMLVM_SOURCE_POSITION("Integer.java", 487) + if (_r10.i != 0) goto label9; + XMLVM_SOURCE_POSITION("Integer.java", 488) + // "0" + _r0.o = xmlvm_create_java_string_from_pool(70); + label8:; + XMLVM_SOURCE_POSITION("Integer.java", 573) + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + XMLVM_SOURCE_POSITION("Integer.java", 492) + _r0.i = 1000; + if (_r10.i >= _r0.i) goto label72; + _r0.i = -1000; + if (_r10.i <= _r0.i) goto label72; + XMLVM_SOURCE_POSITION("Integer.java", 493) + _r0.i = 4; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("Integer.java", 494) + if (_r10.i >= 0) goto label70; + _r1.i = -_r10.i; + label23:; + XMLVM_SOURCE_POSITION("Integer.java", 496) + if (_r10.i >= 0) goto label232; + XMLVM_SOURCE_POSITION("Integer.java", 497) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r2.i; + XMLVM_SOURCE_POSITION("Integer.java", 498) + _r2.i = _r7.i + 1; + label29:; + _r3 = _r2; + label30:; + XMLVM_SOURCE_POSITION("Integer.java", 501) + XMLVM_SOURCE_POSITION("Integer.java", 503) + _r4.i = _r1.i / 10; + XMLVM_SOURCE_POSITION("Integer.java", 504) + _r5.i = _r4.i << 3; + _r6.i = _r4.i << 1; + _r5.i = _r5.i + _r6.i; + _r1.i = _r1.i - _r5.i; + _r1.i = _r1.i + 48; + _r5.i = _r3.i + 1; + _r1.i = _r1.i & 0xffff; + XMLVM_SOURCE_POSITION("Integer.java", 506) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r1.i; + XMLVM_SOURCE_POSITION("Integer.java", 508) + if (_r4.i != 0) goto label228; + XMLVM_SOURCE_POSITION("Integer.java", 510) + _r1.i = _r5.i + -1; + label49:; + XMLVM_SOURCE_POSITION("Integer.java", 512) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("Integer.java", 513) + _r4.i = _r1.i + -1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r6.i; + XMLVM_SOURCE_POSITION("Integer.java", 514) + _r1.i = _r2.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i; + XMLVM_SOURCE_POSITION("Integer.java", 515) + if (_r1.i < _r4.i) goto label224; + XMLVM_SOURCE_POSITION("Integer.java", 516) + _r1.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(1) + java_lang_String___INIT____int_int_char_1ARRAY(_r1.o, _r7.i, _r5.i, _r0.o); + _r0 = _r1; + goto label8; + label70:; + _r1 = _r10; + goto label23; + label72:; + XMLVM_SOURCE_POSITION("Integer.java", 518) + _r0.i = -2147483648; + if (_r10.i != _r0.i) goto label79; + XMLVM_SOURCE_POSITION("Integer.java", 519) + // "-2147483648" + _r0.o = xmlvm_create_java_string_from_pool(718); + goto label8; + label79:; + XMLVM_SOURCE_POSITION("Integer.java", 522) + _r0.i = 11; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("Integer.java", 523) + if (_r10.i >= 0) goto label119; + _r1.i = -_r10.i; + label86:; + XMLVM_SOURCE_POSITION("Integer.java", 525) + if (_r10.i >= 0) goto label221; + XMLVM_SOURCE_POSITION("Integer.java", 526) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r2.i; + XMLVM_SOURCE_POSITION("Integer.java", 527) + _r2.i = _r7.i + 1; + _r2.i = (_r2.i << 24) >> 24; + label93:; + _r3 = _r2; + _r4 = _r1; + _r1 = _r7; + _r2 = _r7; + label97:; + XMLVM_SOURCE_POSITION("Integer.java", 533) + _r5.i = 9; + if (_r1.i < _r5.i) goto label121; + XMLVM_SOURCE_POSITION("Integer.java", 571) + _r1.i = _r3.i + 1; + _r1.i = (_r1.i << 24) >> 24; + _r2.i = _r4.i + 48; + _r2.i = _r2.i & 0xffff; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r2.i; + XMLVM_SOURCE_POSITION("Integer.java", 572) + _r2.i = _r1.i - _r8.i; + _r2.i = (_r2.i << 24) >> 24; + _r2.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____int_int_char_1ARRAY(_r2.o, _r7.i, _r1.i, _r0.o); + _r0 = _r2; + goto label8; + label119:; + _r1 = _r10; + goto label86; + label121:; + XMLVM_SOURCE_POSITION("Integer.java", 535) + _r5.o = java_lang_Integer_GET_decimalScale(); + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r5.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r4.i >= _r5.i) goto label140; + XMLVM_SOURCE_POSITION("Integer.java", 536) + if (_r2.i == 0) goto label137; + XMLVM_SOURCE_POSITION("Integer.java", 537) + _r5.i = _r3.i + 1; + _r5.i = (_r5.i << 24) >> 24; + _r6.i = 48; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r6.i; + _r3 = _r5; + label137:; + XMLVM_SOURCE_POSITION("Integer.java", 539) + _r1.i = _r1.i + 1; + goto label97; + label140:; + XMLVM_SOURCE_POSITION("Integer.java", 542) + if (_r1.i <= 0) goto label218; + XMLVM_SOURCE_POSITION("Integer.java", 543) + _r5.o = java_lang_Integer_GET_decimalScale(); + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r5.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r5.i = _r5.i << 3; + if (_r4.i < _r5.i) goto label215; + XMLVM_SOURCE_POSITION("Integer.java", 544) + XMLVM_SOURCE_POSITION("Integer.java", 545) + _r4.i = _r4.i - _r5.i; + _r5.i = _r7.i + 8; + _r5.i = (_r5.i << 24) >> 24; + _r9 = _r5; + _r5 = _r4; + _r4 = _r9; + label157:; + XMLVM_SOURCE_POSITION("Integer.java", 546) + XMLVM_SOURCE_POSITION("Integer.java", 548) + _r6.o = java_lang_Integer_GET_decimalScale(); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + _r6.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r6.i = _r6.i << 2; + if (_r5.i < _r6.i) goto label169; + XMLVM_SOURCE_POSITION("Integer.java", 549) + XMLVM_SOURCE_POSITION("Integer.java", 550) + _r5.i = _r5.i - _r6.i; + _r4.i = _r4.i + 4; + _r4.i = (_r4.i << 24) >> 24; + label169:; + XMLVM_SOURCE_POSITION("Integer.java", 551) + XMLVM_SOURCE_POSITION("Integer.java", 554) + _r6.o = java_lang_Integer_GET_decimalScale(); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + _r6.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r6.i = _r6.i << 1; + if (_r5.i < _r6.i) goto label181; + XMLVM_SOURCE_POSITION("Integer.java", 555) + XMLVM_SOURCE_POSITION("Integer.java", 556) + _r5.i = _r5.i - _r6.i; + _r4.i = _r4.i + 2; + _r4.i = (_r4.i << 24) >> 24; + label181:; + XMLVM_SOURCE_POSITION("Integer.java", 557) + XMLVM_SOURCE_POSITION("Integer.java", 559) + _r6.o = java_lang_Integer_GET_decimalScale(); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + _r6.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r5.i < _r6.i) goto label195; + XMLVM_SOURCE_POSITION("Integer.java", 560) + _r6.o = java_lang_Integer_GET_decimalScale(); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + _r6.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r5.i = _r5.i - _r6.i; + _r4.i = _r4.i + 1; + _r4.i = (_r4.i << 24) >> 24; + label195:; + XMLVM_SOURCE_POSITION("Integer.java", 561) + XMLVM_SOURCE_POSITION("Integer.java", 563) + if (_r4.i <= 0) goto label200; + if (_r2.i != 0) goto label200; + _r2 = _r8; + label200:; + XMLVM_SOURCE_POSITION("Integer.java", 564) + XMLVM_SOURCE_POSITION("Integer.java", 566) + if (_r2.i == 0) goto label213; + XMLVM_SOURCE_POSITION("Integer.java", 567) + _r6.i = _r3.i + 1; + _r6.i = (_r6.i << 24) >> 24; + _r4.i = _r4.i + 48; + _r4.i = _r4.i & 0xffff; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.i; + _r3 = _r6; + _r4 = _r5; + goto label137; + label213:; + _r4 = _r5; + goto label137; + label215:; + _r5 = _r4; + _r4 = _r7; + goto label157; + label218:; + _r5 = _r4; + _r4 = _r7; + goto label169; + label221:; + _r2 = _r7; + goto label93; + label224:; + _r2 = _r1; + _r1 = _r4; + goto label49; + label228:; + _r1 = _r4; + _r3 = _r5; + goto label30; + label232:; + _r2 = _r7; + goto label29; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_toString___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_toString___int_int] + XMLVM_ENTER_METHOD("java.lang.Integer", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r9.i = n1; + _r10.i = n2; + _r8.i = 10; + _r2.i = 2; + _r3.i = 1; + _r7.i = 0; + XMLVM_SOURCE_POSITION("Integer.java", 591) + if (_r10.i < _r2.i) goto label11; + _r0.i = 36; + if (_r10.i <= _r0.i) goto label73; + label11:; + _r0 = _r8; + label12:; + XMLVM_SOURCE_POSITION("Integer.java", 592) + XMLVM_SOURCE_POSITION("Integer.java", 594) + if (_r9.i != 0) goto label17; + XMLVM_SOURCE_POSITION("Integer.java", 595) + // "0" + _r0.o = xmlvm_create_java_string_from_pool(70); + label16:; + XMLVM_SOURCE_POSITION("Integer.java", 621) + XMLVM_EXIT_METHOD() + return _r0.o; + label17:; + XMLVM_SOURCE_POSITION("Integer.java", 599) + if (_r9.i >= 0) goto label61; + _r1 = _r3; + label20:; + XMLVM_SOURCE_POSITION("Integer.java", 600) + if (_r1.i != 0) goto label69; + XMLVM_SOURCE_POSITION("Integer.java", 602) + _r2.i = -_r9.i; + _r4 = _r9; + label24:; + XMLVM_SOURCE_POSITION("Integer.java", 604) + _r4.i = _r4.i / _r0.i; + if (_r4.i != 0) goto label63; + XMLVM_SOURCE_POSITION("Integer.java", 608) + XMLVM_CLASS_INIT(char) + _r4.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i); + label29:; + XMLVM_SOURCE_POSITION("Integer.java", 610) + _r5.i = _r2.i % _r0.i; + _r5.i = _r7.i - _r5.i; + _r6.i = 9; + if (_r5.i <= _r6.i) goto label66; + XMLVM_SOURCE_POSITION("Integer.java", 611) + XMLVM_SOURCE_POSITION("Integer.java", 612) + _r5.i = _r5.i - _r8.i; + _r5.i = _r5.i + 97; + label40:; + XMLVM_SOURCE_POSITION("Integer.java", 616) + _r3.i = _r3.i + -1; + _r5.i = _r5.i & 0xffff; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r5.i; + XMLVM_SOURCE_POSITION("Integer.java", 617) + _r2.i = _r2.i / _r0.i; + if (_r2.i != 0) goto label29; + XMLVM_SOURCE_POSITION("Integer.java", 618) + if (_r1.i == 0) goto label54; + XMLVM_SOURCE_POSITION("Integer.java", 619) + _r0.i = 45; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r7.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r0.i; + label54:; + _r0.o = __NEW_java_lang_String(); + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r7.i, _r1.i, _r4.o); + goto label16; + label61:; + _r1 = _r7; + goto label20; + label63:; + XMLVM_SOURCE_POSITION("Integer.java", 605) + _r3.i = _r3.i + 1; + goto label24; + label66:; + XMLVM_SOURCE_POSITION("Integer.java", 614) + _r5.i = _r5.i + 48; + goto label40; + label69:; + _r3 = _r2; + _r4 = _r9; + _r2 = _r9; + goto label24; + label73:; + _r0 = _r10; + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Integer", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Integer.java", 637) + _r0.i = java_lang_Integer_parseInt___java_lang_String(_r1.o); + _r0.o = java_lang_Integer_valueOf___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_valueOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Integer", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Integer.java", 659) + _r0.i = java_lang_Integer_parseInt___java_lang_String_int(_r1.o, _r2.i); + _r0.o = java_lang_Integer_valueOf___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_highestOneBit___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_highestOneBit___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "highestOneBit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 674) + _r0.i = _r2.i >> 1; + _r0.i = _r0.i | _r2.i; + _r1.i = _r0.i >> 2; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 4; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 8; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 16; + _r0.i = _r0.i | _r1.i; + _r1.i = ((JAVA_UINT) _r0.i) >> (0x1f & ((JAVA_UINT) 1)); + _r1.i = _r1.i ^ -1; + _r0.i = _r0.i & _r1.i; + XMLVM_SOURCE_POSITION("Integer.java", 679) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_lowestOneBit___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_lowestOneBit___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "lowestOneBit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 694) + _r0.i = -_r1.i; + _r0.i = _r0.i & _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_numberOfLeadingZeros___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_numberOfLeadingZeros___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "numberOfLeadingZeros", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 707) + _r0.i = _r2.i >> 1; + _r0.i = _r0.i | _r2.i; + _r1.i = _r0.i >> 2; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 4; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 8; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 16; + _r0.i = _r0.i | _r1.i; + _r0.i = _r0.i ^ -1; + XMLVM_SOURCE_POSITION("Integer.java", 712) + _r0.i = java_lang_Integer_bitCount___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_numberOfTrailingZeros___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_numberOfTrailingZeros___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "numberOfTrailingZeros", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 725) + _r0.i = -_r2.i; + _r0.i = _r0.i & _r2.i; + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + _r0.i = java_lang_Integer_bitCount___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_bitCount___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_bitCount___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "bitCount", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + _r2.i = 858993459; + XMLVM_SOURCE_POSITION("Integer.java", 738) + _r0.i = _r3.i >> 1; + _r1.i = 1431655765; + _r0.i = _r0.i & _r1.i; + _r0.i = _r3.i - _r0.i; + _r1.i = _r0.i & _r2.i; + _r0.i = _r0.i >> 2; + _r0.i = _r0.i & _r2.i; + _r0.i = _r0.i + _r1.i; + _r1.i = _r0.i >> 4; + _r0.i = _r0.i + _r1.i; + _r1.i = 252645135; + _r0.i = _r0.i & _r1.i; + _r1.i = _r0.i >> 8; + _r0.i = _r0.i + _r1.i; + _r1.i = _r0.i >> 16; + _r0.i = _r0.i + _r1.i; + _r0.i = _r0.i & 63; + XMLVM_SOURCE_POSITION("Integer.java", 743) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_rotateLeft___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_rotateLeft___int_int] + XMLVM_ENTER_METHOD("java.lang.Integer", "rotateLeft", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("Integer.java", 758) + if (_r3.i != 0) goto label4; + _r0 = _r2; + label3:; + XMLVM_SOURCE_POSITION("Integer.java", 759) + XMLVM_SOURCE_POSITION("Integer.java", 766) + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + _r0.i = _r2.i << _r3.i; + _r1.i = -_r3.i; + _r1.i = ((JAVA_UINT) _r2.i) >> (0x1f & ((JAVA_UINT) _r1.i)); + _r0.i = _r0.i | _r1.i; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_rotateRight___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_rotateRight___int_int] + XMLVM_ENTER_METHOD("java.lang.Integer", "rotateRight", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("Integer.java", 781) + if (_r3.i != 0) goto label4; + _r0 = _r2; + label3:; + XMLVM_SOURCE_POSITION("Integer.java", 782) + XMLVM_SOURCE_POSITION("Integer.java", 789) + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + _r0.i = ((JAVA_UINT) _r2.i) >> (0x1f & ((JAVA_UINT) _r3.i)); + _r1.i = -_r3.i; + _r1.i = _r2.i << _r1.i; + _r0.i = _r0.i | _r1.i; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_reverseBytes___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_reverseBytes___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "reverseBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r2.i = 65280; + XMLVM_SOURCE_POSITION("Integer.java", 801) + _r0.i = ((JAVA_UINT) _r4.i) >> (0x1f & ((JAVA_UINT) 24)); + _r1.i = ((JAVA_UINT) _r4.i) >> (0x1f & ((JAVA_UINT) 8)); + _r1.i = _r1.i & _r2.i; + _r2.i = _r2.i & _r4.i; + _r2.i = _r2.i << 8; + _r3.i = _r4.i << 24; + _r2.i = _r2.i | _r3.i; + _r1.i = _r1.i | _r2.i; + _r0.i = _r0.i | _r1.i; + XMLVM_SOURCE_POSITION("Integer.java", 805) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_reverse___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_reverse___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "reverse", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.i = n1; + _r4.i = 1431655765; + _r3.i = 858993459; + _r2.i = 252645135; + XMLVM_SOURCE_POSITION("Integer.java", 818) + _r0.i = _r5.i & _r4.i; + _r0.i = _r0.i << 1; + _r1.i = _r5.i >> 1; + _r1.i = _r1.i & _r4.i; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i & _r3.i; + _r1.i = _r1.i << 2; + _r0.i = _r0.i >> 2; + _r0.i = _r0.i & _r3.i; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i & _r2.i; + _r1.i = _r1.i << 4; + _r0.i = _r0.i >> 4; + _r0.i = _r0.i & _r2.i; + _r0.i = _r0.i | _r1.i; + XMLVM_SOURCE_POSITION("Integer.java", 821) + _r0.i = java_lang_Integer_reverseBytes___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_signum___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_signum___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "signum", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 835) + if (_r1.i != 0) goto label4; + _r0.i = 0; + label3:; + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + if (_r1.i >= 0) goto label8; + _r0.i = -1; + goto label3; + label8:; + _r0.i = 1; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Integer_valueOf___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Integer) + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_valueOf___int] + XMLVM_ENTER_METHOD("java.lang.Integer", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Integer.java", 851) + _r0.i = -128; + if (_r2.i < _r0.i) goto label8; + _r0.i = 127; + if (_r2.i <= _r0.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("Integer.java", 852) + _r0.o = __NEW_java_lang_Integer(); + XMLVM_CHECK_NPE(0) + java_lang_Integer___INIT____int(_r0.o, _r2.i); + label13:; + XMLVM_SOURCE_POSITION("Integer.java", 854) + XMLVM_EXIT_METHOD() + return _r0.o; + label14:; + + + // Red class access removed: java.lang.Integer$valueOfCache,java.lang.Integer[]::CACHE + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.i = _r2.i + 128; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Integer_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Integer_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Integer", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Integer.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Integer_compareTo___java_lang_Integer(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Integer.h b/tests/nbody-java/java_lang_Integer.h new file mode 100644 index 0000000000000..49042c2a1f283 --- /dev/null +++ b/tests/nbody-java/java_lang_Integer.h @@ -0,0 +1,143 @@ +#ifndef __JAVA_LANG_INTEGER__ +#define __JAVA_LANG_INTEGER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Integer 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Number.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +// Class declarations for java.lang.Integer +XMLVM_DEFINE_CLASS(java_lang_Integer, 13, XMLVM_ITABLE_SIZE_java_lang_Integer) + +extern JAVA_OBJECT __CLASS_java_lang_Integer; +extern JAVA_OBJECT __CLASS_java_lang_Integer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Integer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Integer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Integer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Integer \ + __INSTANCE_FIELDS_java_lang_Number; \ + struct { \ + JAVA_INT value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Integer \ + } java_lang_Integer + +struct java_lang_Integer { + __TIB_DEFINITION_java_lang_Integer* tib; + struct { + __INSTANCE_FIELDS_java_lang_Integer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +typedef struct java_lang_Integer java_lang_Integer; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Integer 13 +#define XMLVM_VTABLE_IDX_java_lang_Integer_byteValue__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Integer_doubleValue__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Integer_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Integer_floatValue__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Integer_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Integer_intValue__ 9 +#define XMLVM_VTABLE_IDX_java_lang_Integer_longValue__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Integer_shortValue__ 11 +#define XMLVM_VTABLE_IDX_java_lang_Integer_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Integer_compareTo___java_lang_Object 12 + +void __INIT_java_lang_Integer(); +void __INIT_IMPL_java_lang_Integer(); +void __DELETE_java_lang_Integer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Integer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Integer(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Integer(); +JAVA_LONG java_lang_Integer_GET_serialVersionUID(); +void java_lang_Integer_PUT_serialVersionUID(JAVA_LONG v); +JAVA_INT java_lang_Integer_GET_MAX_VALUE(); +void java_lang_Integer_PUT_MAX_VALUE(JAVA_INT v); +JAVA_INT java_lang_Integer_GET_MIN_VALUE(); +void java_lang_Integer_PUT_MIN_VALUE(JAVA_INT v); +JAVA_INT java_lang_Integer_GET_SIZE(); +void java_lang_Integer_PUT_SIZE(JAVA_INT v); +JAVA_OBJECT java_lang_Integer_GET_decimalScale(); +void java_lang_Integer_PUT_decimalScale(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Integer_GET_TYPE(); +void java_lang_Integer_PUT_TYPE(JAVA_OBJECT v); +void java_lang_Integer___CLINIT_(); +void java_lang_Integer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_Integer___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_BYTE java_lang_Integer_byteValue__(JAVA_OBJECT me); +JAVA_INT java_lang_Integer_compareTo___java_lang_Integer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Integer_decode___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_DOUBLE java_lang_Integer_doubleValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Integer_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_FLOAT java_lang_Integer_floatValue__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Integer_getInteger___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Integer_getInteger___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_Integer_getInteger___java_lang_String_java_lang_Integer(JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 4 +JAVA_INT java_lang_Integer_hashCode__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_Integer_intValue__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_LONG java_lang_Integer_longValue__(JAVA_OBJECT me); +JAVA_INT java_lang_Integer_parseInt___java_lang_String(JAVA_OBJECT n1); +JAVA_INT java_lang_Integer_parseInt___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_Integer_parse___java_lang_String_int_int_boolean(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_BOOLEAN n4); +// Vtable index: 11 +JAVA_SHORT java_lang_Integer_shortValue__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Integer_toBinaryString___int(JAVA_INT n1); +JAVA_OBJECT java_lang_Integer_toHexString___int(JAVA_INT n1); +JAVA_OBJECT java_lang_Integer_toOctalString___int(JAVA_INT n1); +// Vtable index: 5 +JAVA_OBJECT java_lang_Integer_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Integer_toString___int(JAVA_INT n1); +JAVA_OBJECT java_lang_Integer_toString___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_Integer_valueOf___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Integer_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_Integer_highestOneBit___int(JAVA_INT n1); +JAVA_INT java_lang_Integer_lowestOneBit___int(JAVA_INT n1); +JAVA_INT java_lang_Integer_numberOfLeadingZeros___int(JAVA_INT n1); +JAVA_INT java_lang_Integer_numberOfTrailingZeros___int(JAVA_INT n1); +JAVA_INT java_lang_Integer_bitCount___int(JAVA_INT n1); +JAVA_INT java_lang_Integer_rotateLeft___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_Integer_rotateRight___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_Integer_reverseBytes___int(JAVA_INT n1); +JAVA_INT java_lang_Integer_reverse___int(JAVA_INT n1); +JAVA_INT java_lang_Integer_signum___int(JAVA_INT n1); +JAVA_OBJECT java_lang_Integer_valueOf___int(JAVA_INT n1); +// Vtable index: 12 +JAVA_INT java_lang_Integer_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Iterable.c b/tests/nbody-java/java_lang_Iterable.c new file mode 100644 index 0000000000000..499e4d09a3b2a --- /dev/null +++ b/tests/nbody-java/java_lang_Iterable.c @@ -0,0 +1,77 @@ +#include "xmlvm.h" +#include "java_util_Iterator.h" + +#include "java_lang_Iterable.h" + +__TIB_DEFINITION_java_lang_Iterable __TIB_java_lang_Iterable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Iterable, // classInitializer + "java.lang.Iterable", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_Iterable; +JAVA_OBJECT __CLASS_java_lang_Iterable_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Iterable_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Iterable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_Iterable() +{ + staticInitializerLock(&__TIB_java_lang_Iterable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Iterable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Iterable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Iterable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Iterable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Iterable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Iterable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Iterable") + __INIT_IMPL_java_lang_Iterable(); + } +} + +void __INIT_IMPL_java_lang_Iterable() +{ + __TIB_java_lang_Iterable.numInterfaces = 0; + __TIB_java_lang_Iterable.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Iterable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_Iterable.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Iterable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Iterable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_Iterable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Iterable); + __TIB_java_lang_Iterable.clazz = __CLASS_java_lang_Iterable; + __TIB_java_lang_Iterable.baseType = JAVA_NULL; + __CLASS_java_lang_Iterable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Iterable); + __CLASS_java_lang_Iterable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Iterable_1ARRAY); + __CLASS_java_lang_Iterable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Iterable_2ARRAY); + + __TIB_java_lang_Iterable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_Iterable.h b/tests/nbody-java/java_lang_Iterable.h new file mode 100644 index 0000000000000..41b09c048c05c --- /dev/null +++ b/tests/nbody-java/java_lang_Iterable.h @@ -0,0 +1,32 @@ +#ifndef __JAVA_LANG_ITERABLE__ +#define __JAVA_LANG_ITERABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__ 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif + +XMLVM_DEFINE_CLASS(java_lang_Iterable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_Iterable; +extern JAVA_OBJECT __CLASS_java_lang_Iterable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Iterable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Iterable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_Iterable +#define XMLVM_FORWARD_DECL_java_lang_Iterable +typedef struct java_lang_Iterable java_lang_Iterable; +#endif + +void __INIT_java_lang_Iterable(); +void __INIT_IMPL_java_lang_Iterable(); + +#endif diff --git a/tests/nbody-java/java_lang_Long.c b/tests/nbody-java/java_lang_Long.c new file mode 100644 index 0000000000000..397702d8af8c7 --- /dev/null +++ b/tests/nbody-java/java_lang_Long.c @@ -0,0 +1,1903 @@ +#include "xmlvm.h" +#include "java_lang_Character.h" +#include "java_lang_Class.h" +#include "java_lang_Long_valueOfCache.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_System.h" + +#include "java_lang_Long.h" + +#define XMLVM_CURRENT_CLASS_NAME Long +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Long + +__TIB_DEFINITION_java_lang_Long __TIB_java_lang_Long = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Long, // classInitializer + "java.lang.Long", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Number;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Number, // extends + sizeof(java_lang_Long), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Long; +JAVA_OBJECT __CLASS_java_lang_Long_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Long_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Long_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Long_serialVersionUID; +static JAVA_LONG _STATIC_java_lang_Long_MAX_VALUE; +static JAVA_LONG _STATIC_java_lang_Long_MIN_VALUE; +static JAVA_OBJECT _STATIC_java_lang_Long_TYPE; +static JAVA_INT _STATIC_java_lang_Long_SIZE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Long() +{ + staticInitializerLock(&__TIB_java_lang_Long); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Long.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Long.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Long); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Long.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Long.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Long.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Long") + __INIT_IMPL_java_lang_Long(); + } +} + +void __INIT_IMPL_java_lang_Long() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Number) + __TIB_java_lang_Long.newInstanceFunc = __NEW_INSTANCE_java_lang_Long; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Long.vtable, __TIB_java_lang_Number.vtable, sizeof(__TIB_java_lang_Number.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Long.vtable[6] = (VTABLE_PTR) &java_lang_Long_byteValue__; + __TIB_java_lang_Long.vtable[7] = (VTABLE_PTR) &java_lang_Long_doubleValue__; + __TIB_java_lang_Long.vtable[1] = (VTABLE_PTR) &java_lang_Long_equals___java_lang_Object; + __TIB_java_lang_Long.vtable[8] = (VTABLE_PTR) &java_lang_Long_floatValue__; + __TIB_java_lang_Long.vtable[4] = (VTABLE_PTR) &java_lang_Long_hashCode__; + __TIB_java_lang_Long.vtable[9] = (VTABLE_PTR) &java_lang_Long_intValue__; + __TIB_java_lang_Long.vtable[10] = (VTABLE_PTR) &java_lang_Long_longValue__; + __TIB_java_lang_Long.vtable[11] = (VTABLE_PTR) &java_lang_Long_shortValue__; + __TIB_java_lang_Long.vtable[5] = (VTABLE_PTR) &java_lang_Long_toString__; + __TIB_java_lang_Long.vtable[12] = (VTABLE_PTR) &java_lang_Long_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Long.numImplementedInterfaces = 2; + __TIB_java_lang_Long.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Long.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Long.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Long.itableBegin = &__TIB_java_lang_Long.itable[0]; + __TIB_java_lang_Long.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Long.vtable[12]; + + _STATIC_java_lang_Long_serialVersionUID = 4290774380558885855; + _STATIC_java_lang_Long_MAX_VALUE = 9223372036854775807; + _STATIC_java_lang_Long_MIN_VALUE = -9223372036854775808; + _STATIC_java_lang_Long_TYPE = (java_lang_Class*) JAVA_NULL; + _STATIC_java_lang_Long_SIZE = 64; + + __TIB_java_lang_Long.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Long.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Long.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Long.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Long.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Long.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Long.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Long.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Long = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Long); + __TIB_java_lang_Long.clazz = __CLASS_java_lang_Long; + __TIB_java_lang_Long.baseType = JAVA_NULL; + __CLASS_java_lang_Long_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Long); + __CLASS_java_lang_Long_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Long_1ARRAY); + __CLASS_java_lang_Long_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Long_2ARRAY); + java_lang_Long___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Long] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Long.classInitialized = 1; +} + +void __DELETE_java_lang_Long(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Long] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Long(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Number(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Long*) me)->fields.java_lang_Long.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Long] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Long() +{ XMLVM_CLASS_INIT(java_lang_Long) +java_lang_Long* me = (java_lang_Long*) XMLVM_MALLOC(sizeof(java_lang_Long)); + me->tib = &__TIB_java_lang_Long; + __INIT_INSTANCE_MEMBERS_java_lang_Long(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Long] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Long() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Long_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Long) + return _STATIC_java_lang_Long_serialVersionUID; +} + +void java_lang_Long_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Long) +_STATIC_java_lang_Long_serialVersionUID = v; +} + +JAVA_LONG java_lang_Long_GET_MAX_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Long) + return _STATIC_java_lang_Long_MAX_VALUE; +} + +void java_lang_Long_PUT_MAX_VALUE(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Long) +_STATIC_java_lang_Long_MAX_VALUE = v; +} + +JAVA_LONG java_lang_Long_GET_MIN_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Long) + return _STATIC_java_lang_Long_MIN_VALUE; +} + +void java_lang_Long_PUT_MIN_VALUE(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Long) +_STATIC_java_lang_Long_MIN_VALUE = v; +} + +JAVA_OBJECT java_lang_Long_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Long) + return _STATIC_java_lang_Long_TYPE; +} + +void java_lang_Long_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Long) +_STATIC_java_lang_Long_TYPE = v; +} + +JAVA_INT java_lang_Long_GET_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_Long) + return _STATIC_java_lang_Long_SIZE; +} + +void java_lang_Long_PUT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Long) +_STATIC_java_lang_Long_SIZE = v; +} + +void java_lang_Long___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Long", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Long.java", 54) + _r0.i = 0; + XMLVM_CLASS_INIT(long) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_long, _r0.i); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_SOURCE_POSITION("Long.java", 55) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Long_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Long.java", 31) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Long___INIT____long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long___INIT____long] + XMLVM_ENTER_METHOD("java.lang.Long", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.l = n1; + XMLVM_SOURCE_POSITION("Long.java", 75) + XMLVM_CHECK_NPE(0) + java_lang_Number___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Long.java", 76) + XMLVM_CHECK_NPE(0) + ((java_lang_Long*) _r0.o)->fields.java_lang_Long.value_ = _r1.l; + XMLVM_SOURCE_POSITION("Long.java", 77) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Long___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Long", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Long.java", 89) + _r0.l = java_lang_Long_parseLong___java_lang_String(_r3.o); + XMLVM_CHECK_NPE(2) + java_lang_Long___INIT____long(_r2.o, _r0.l); + XMLVM_SOURCE_POSITION("Long.java", 90) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Long_byteValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_byteValue__] + XMLVM_ENTER_METHOD("java.lang.Long", "byteValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Long.java", 94) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Long*) _r2.o)->fields.java_lang_Long.value_; + _r0.i = (JAVA_INT) _r0.l; + _r0.i = (_r0.i << 24) >> 24; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_compareTo___java_lang_Long(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_compareTo___java_lang_Long] + XMLVM_ENTER_METHOD("java.lang.Long", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Long.java", 111) + XMLVM_CHECK_NPE(4) + _r0.l = ((java_lang_Long*) _r4.o)->fields.java_lang_Long.value_; + XMLVM_CHECK_NPE(5) + _r2.l = ((java_lang_Long*) _r5.o)->fields.java_lang_Long.value_; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i <= 0) goto label10; + _r0.i = 1; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + XMLVM_CHECK_NPE(4) + _r0.l = ((java_lang_Long*) _r4.o)->fields.java_lang_Long.value_; + XMLVM_CHECK_NPE(5) + _r2.l = ((java_lang_Long*) _r5.o)->fields.java_lang_Long.value_; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i >= 0) goto label20; + _r0.i = -1; + goto label9; + label20:; + _r0.i = 0; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_decode___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_decode___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Long", "decode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r8.o = n1; + _r6.i = 16; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Long.java", 127) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(8) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r8.o)->tib->vtable[8])(_r8.o); + XMLVM_SOURCE_POSITION("Long.java", 128) + if (_r0.i != 0) goto label16; + XMLVM_SOURCE_POSITION("Long.java", 129) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("Long.java", 131) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(8) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r8.o)->tib->vtable[6])(_r8.o, _r3.i); + XMLVM_SOURCE_POSITION("Long.java", 132) + _r2.i = 45; + if (_r1.i != _r2.i) goto label35; + _r2 = _r4; + label25:; + XMLVM_SOURCE_POSITION("Long.java", 133) + if (_r2.i == 0) goto label46; + XMLVM_SOURCE_POSITION("Long.java", 134) + if (_r0.i != _r4.i) goto label37; + XMLVM_SOURCE_POSITION("Long.java", 135) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label35:; + _r2 = _r3; + goto label25; + label37:; + XMLVM_SOURCE_POSITION("Long.java", 137) + _r1.i = _r3.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(8) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r8.o)->tib->vtable[6])(_r8.o, _r1.i); + _r7 = _r3; + _r3 = _r1; + _r1 = _r7; + label46:; + XMLVM_SOURCE_POSITION("Long.java", 140) + _r4.i = 10; + _r5.i = 48; + if (_r1.i != _r5.i) goto label99; + XMLVM_SOURCE_POSITION("Long.java", 141) + XMLVM_SOURCE_POSITION("Long.java", 142) + _r1.i = _r3.i + 1; + if (_r1.i != _r0.i) goto label63; + XMLVM_SOURCE_POSITION("Long.java", 143) + _r0.l = 0; + _r0.o = java_lang_Long_valueOf___long(_r0.l); + label62:; + XMLVM_SOURCE_POSITION("Long.java", 163) + XMLVM_EXIT_METHOD() + return _r0.o; + label63:; + XMLVM_SOURCE_POSITION("Long.java", 145) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(8) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r8.o)->tib->vtable[6])(_r8.o, _r1.i); + _r4.i = 120; + if (_r3.i == _r4.i) goto label75; + _r4.i = 88; + if (_r3.i != _r4.i) goto label96; + label75:; + XMLVM_SOURCE_POSITION("Long.java", 146) + if (_r1.i != _r0.i) goto label83; + XMLVM_SOURCE_POSITION("Long.java", 147) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label83:; + XMLVM_SOURCE_POSITION("Long.java", 149) + _r0.i = _r1.i + 1; + _r1 = _r0; + _r0 = _r6; + label87:; + XMLVM_SOURCE_POSITION("Long.java", 150) + XMLVM_SOURCE_POSITION("Long.java", 162) + _r0.l = java_lang_Long_parse___java_lang_String_int_int_boolean(_r8.o, _r1.i, _r0.i, _r2.i); + _r0.o = java_lang_Long_valueOf___long(_r0.l); + goto label62; + label96:; + XMLVM_SOURCE_POSITION("Long.java", 152) + _r0.i = 8; + goto label87; + label99:; + XMLVM_SOURCE_POSITION("Long.java", 154) + _r5.i = 35; + if (_r1.i != _r5.i) goto label116; + XMLVM_SOURCE_POSITION("Long.java", 155) + if (_r3.i != _r0.i) goto label111; + XMLVM_SOURCE_POSITION("Long.java", 156) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label111:; + XMLVM_SOURCE_POSITION("Long.java", 158) + _r0.i = _r3.i + 1; + _r1 = _r0; + _r0 = _r6; + XMLVM_SOURCE_POSITION("Long.java", 159) + goto label87; + label116:; + _r0 = _r4; + _r1 = _r3; + goto label87; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Long_doubleValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_doubleValue__] + XMLVM_ENTER_METHOD("java.lang.Long", "doubleValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Long.java", 168) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Long*) _r2.o)->fields.java_lang_Long.value_; + _r0.d = (JAVA_DOUBLE) _r0.l; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Long_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Long", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Long.java", 183) + XMLVM_CLASS_INIT(java_lang_Long) + _r0.i = XMLVM_ISA(_r5.o, __CLASS_java_lang_Long); + if (_r0.i == 0) goto label16; + XMLVM_SOURCE_POSITION("Long.java", 184) + XMLVM_CHECK_NPE(4) + _r0.l = ((java_lang_Long*) _r4.o)->fields.java_lang_Long.value_; + _r5.o = _r5.o; + XMLVM_CHECK_NPE(5) + _r2.l = ((java_lang_Long*) _r5.o)->fields.java_lang_Long.value_; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i != 0) goto label16; + _r0.i = 1; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0.i = 0; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Long_floatValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_floatValue__] + XMLVM_ENTER_METHOD("java.lang.Long", "floatValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Long.java", 189) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Long*) _r2.o)->fields.java_lang_Long.value_; + _r0.f = (JAVA_FLOAT) _r0.l; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_getLong___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_getLong___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Long", "getLong", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = n1; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Long.java", 203) + if (_r2.o == JAVA_NULL) goto label9; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r0.i != 0) goto label11; + label9:; + _r0 = _r1; + label10:; + XMLVM_SOURCE_POSITION("Long.java", 204) + XMLVM_SOURCE_POSITION("Long.java", 213) + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + XMLVM_SOURCE_POSITION("Long.java", 206) + _r0.o = java_lang_System_getProperty___java_lang_String(_r2.o); + XMLVM_SOURCE_POSITION("Long.java", 207) + if (_r0.o != JAVA_NULL) goto label19; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Long.java", 208) + goto label10; + label19:; + XMLVM_TRY_BEGIN(w4223aaac15b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Long.java", 211) + _r0.o = java_lang_Long_decode___java_lang_String(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4223aaac15b1c22) + XMLVM_CATCH_END(w4223aaac15b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4223aaac15b1c22) + goto label10; + label24:; + java_lang_Thread* curThread_w4223aaac15b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4223aaac15b1c25->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_getLong___java_lang_String_long(JAVA_OBJECT n1, JAVA_LONG n2) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_getLong___java_lang_String_long] + XMLVM_ENTER_METHOD("java.lang.Long", "getLong", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r1.o = n1; + _r2.l = n2; + XMLVM_SOURCE_POSITION("Long.java", 232) + if (_r1.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r0.i != 0) goto label13; + label8:; + XMLVM_SOURCE_POSITION("Long.java", 233) + _r0.o = java_lang_Long_valueOf___long(_r2.l); + label12:; + XMLVM_SOURCE_POSITION("Long.java", 242) + XMLVM_EXIT_METHOD() + return _r0.o; + label13:; + XMLVM_SOURCE_POSITION("Long.java", 235) + _r0.o = java_lang_System_getProperty___java_lang_String(_r1.o); + XMLVM_SOURCE_POSITION("Long.java", 236) + if (_r0.o != JAVA_NULL) goto label24; + XMLVM_SOURCE_POSITION("Long.java", 237) + _r0.o = java_lang_Long_valueOf___long(_r2.l); + goto label12; + label24:; + XMLVM_TRY_BEGIN(w4223aaac16b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Long.java", 240) + _r0.o = java_lang_Long_decode___java_lang_String(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4223aaac16b1c22) + XMLVM_CATCH_END(w4223aaac16b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4223aaac16b1c22) + goto label12; + label29:; + java_lang_Thread* curThread_w4223aaac16b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4223aaac16b1c25->fields.java_lang_Thread.xmlvmException_; + _r0.o = java_lang_Long_valueOf___long(_r2.l); + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_getLong___java_lang_String_java_lang_Long(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_getLong___java_lang_String_java_lang_Long] + XMLVM_ENTER_METHOD("java.lang.Long", "getLong", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Long.java", 261) + if (_r1.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r0.i != 0) goto label10; + label8:; + _r0 = _r2; + label9:; + XMLVM_SOURCE_POSITION("Long.java", 262) + XMLVM_SOURCE_POSITION("Long.java", 271) + XMLVM_EXIT_METHOD() + return _r0.o; + label10:; + XMLVM_SOURCE_POSITION("Long.java", 264) + _r0.o = java_lang_System_getProperty___java_lang_String(_r1.o); + XMLVM_SOURCE_POSITION("Long.java", 265) + if (_r0.o != JAVA_NULL) goto label18; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Long.java", 266) + goto label9; + label18:; + XMLVM_TRY_BEGIN(w4223aaac17b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Long.java", 269) + _r0.o = java_lang_Long_decode___java_lang_String(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4223aaac17b1c22) + XMLVM_CATCH_END(w4223aaac17b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4223aaac17b1c22) + goto label9; + label23:; + java_lang_Thread* curThread_w4223aaac17b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4223aaac17b1c25->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Long", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("Long.java", 277) + XMLVM_CHECK_NPE(5) + _r0.l = ((java_lang_Long*) _r5.o)->fields.java_lang_Long.value_; + XMLVM_CHECK_NPE(5) + _r2.l = ((java_lang_Long*) _r5.o)->fields.java_lang_Long.value_; + _r4.i = 32; + _r2.l = ((JAVA_ULONG) _r2.l) >> (0x3f & ((JAVA_ULONG) _r4.l)); + _r0.l = _r0.l ^ _r2.l; + _r0.i = (JAVA_INT) _r0.l; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_intValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_intValue__] + XMLVM_ENTER_METHOD("java.lang.Long", "intValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Long.java", 282) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Long*) _r2.o)->fields.java_lang_Long.value_; + _r0.i = (JAVA_INT) _r0.l; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_longValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_longValue__] + XMLVM_ENTER_METHOD("java.lang.Long", "longValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Long.java", 292) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Long*) _r2.o)->fields.java_lang_Long.value_; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_parseLong___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_parseLong___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Long", "parseLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Long.java", 307) + _r0.i = 10; + _r0.l = java_lang_Long_parseLong___java_lang_String_int(_r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_parseLong___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_parseLong___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Long", "parseLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.i = n2; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Long.java", 328) + if (_r4.o == JAVA_NULL) goto label10; + _r0.i = 2; + if (_r5.i < _r0.i) goto label10; + XMLVM_SOURCE_POSITION("Long.java", 329) + _r0.i = 36; + if (_r5.i <= _r0.i) goto label16; + label10:; + XMLVM_SOURCE_POSITION("Long.java", 330) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("Long.java", 332) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + XMLVM_SOURCE_POSITION("Long.java", 333) + if (_r0.i != 0) goto label28; + XMLVM_SOURCE_POSITION("Long.java", 334) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_SOURCE_POSITION("Long.java", 336) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r4.o)->tib->vtable[6])(_r4.o, _r3.i); + _r2.i = 45; + if (_r1.i != _r2.i) goto label49; + _r1.i = 1; + label37:; + XMLVM_SOURCE_POSITION("Long.java", 337) + if (_r1.i == 0) goto label57; + _r2.i = _r3.i + 1; + if (_r2.i != _r0.i) goto label51; + XMLVM_SOURCE_POSITION("Long.java", 338) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label49:; + _r1 = _r3; + goto label37; + label51:; + _r0 = _r2; + label52:; + XMLVM_SOURCE_POSITION("Long.java", 341) + _r0.l = java_lang_Long_parse___java_lang_String_int_int_boolean(_r4.o, _r0.i, _r5.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.l; + label57:; + _r0 = _r3; + goto label52; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_parse___java_lang_String_int_int_boolean(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_BOOLEAN n4) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_parse___java_lang_String_int_int_boolean] + XMLVM_ENTER_METHOD("java.lang.Long", "parse", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + _r11.o = n1; + _r12.i = n2; + _r13.i = n3; + _r14.i = n4; + XMLVM_SOURCE_POSITION("Long.java", 346) + _r0.l = -9223372036854775808; + _r2.l = (JAVA_LONG) _r13.i; + _r0.l = _r0.l / _r2.l; + XMLVM_SOURCE_POSITION("Long.java", 347) + _r2.l = 0; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(11) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r11.o)->tib->vtable[8])(_r11.o); + _r4.l = (JAVA_LONG) _r4.i; + label11:; + XMLVM_SOURCE_POSITION("Long.java", 348) + _r6.l = (JAVA_LONG) _r12.i; + _r6.i = _r6.l > _r4.l ? 1 : (_r6.l == _r4.l ? 0 : -1); + if (_r6.i < 0) goto label31; + XMLVM_SOURCE_POSITION("Long.java", 362) + if (_r14.i != 0) goto label79; + XMLVM_SOURCE_POSITION("Long.java", 363) + _r12.l = -_r2.l; + _r0.l = 0; + _r14.i = _r12.l > _r0.l ? 1 : (_r12.l == _r0.l ? 0 : -1); + if (_r14.i >= 0) goto label77; + XMLVM_SOURCE_POSITION("Long.java", 364) + XMLVM_SOURCE_POSITION("Long.java", 365) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r12.o) + label31:; + XMLVM_SOURCE_POSITION("Long.java", 349) + _r6.i = _r12.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(11) + _r12.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r11.o)->tib->vtable[6])(_r11.o, _r12.i); + _r12.i = java_lang_Character_digit___char_int(_r12.i, _r13.i); + XMLVM_SOURCE_POSITION("Long.java", 350) + _r7.i = -1; + if (_r12.i != _r7.i) goto label50; + XMLVM_SOURCE_POSITION("Long.java", 351) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r12.o) + label50:; + XMLVM_SOURCE_POSITION("Long.java", 353) + _r7.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r7.i <= 0) goto label60; + XMLVM_SOURCE_POSITION("Long.java", 354) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r12.o) + label60:; + XMLVM_SOURCE_POSITION("Long.java", 356) + _r7.l = (JAVA_LONG) _r13.i; + _r7.l = _r7.l * _r2.l; + _r9.l = (JAVA_LONG) _r12.i; + _r7.l = _r7.l - _r9.l; + _r12.i = _r7.l > _r2.l ? 1 : (_r7.l == _r2.l ? 0 : -1); + if (_r12.i <= 0) goto label74; + XMLVM_SOURCE_POSITION("Long.java", 357) + XMLVM_SOURCE_POSITION("Long.java", 358) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r12.o) + label74:; + _r2 = _r7; + _r12 = _r6; + XMLVM_SOURCE_POSITION("Long.java", 360) + goto label11; + label77:; + _r11 = _r12; + label78:; + XMLVM_SOURCE_POSITION("Long.java", 368) + XMLVM_EXIT_METHOD() + return _r11.l; + label79:; + _r11 = _r2; + goto label78; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Long_shortValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_shortValue__] + XMLVM_ENTER_METHOD("java.lang.Long", "shortValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Long.java", 373) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Long*) _r2.o)->fields.java_lang_Long.value_; + _r0.i = (JAVA_INT) _r0.l; + _r0.i = (_r0.i << 16) >> 16; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_toBinaryString___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_toBinaryString___long] + XMLVM_ENTER_METHOD("java.lang.Long", "toBinaryString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r9.l = n1; + _r4.l = 0; + _r8.i = 1; + XMLVM_SOURCE_POSITION("Long.java", 385) + XMLVM_SOURCE_POSITION("Long.java", 388) + _r0.i = _r9.l > _r4.l ? 1 : (_r9.l == _r4.l ? 0 : -1); + if (_r0.i >= 0) goto label44; + XMLVM_SOURCE_POSITION("Long.java", 389) + _r0.i = 64; + label9:; + XMLVM_SOURCE_POSITION("Long.java", 396) + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + _r2 = _r9; + label12:; + XMLVM_SOURCE_POSITION("Long.java", 398) + _r0.i = _r0.i + -1; + _r4.l = 1; + _r4.l = _r4.l & _r2.l; + _r6.l = 48; + _r4.l = _r4.l + _r6.l; + _r4.i = (JAVA_INT) _r4.l; + _r4.i = _r4.i & 0xffff; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r4.i; + XMLVM_SOURCE_POSITION("Long.java", 399) + _r2.l = _r2.l >> (0x3f & _r8.l); + if (_r0.i > 0) goto label12; + XMLVM_SOURCE_POSITION("Long.java", 400) + XMLVM_SOURCE_POSITION("Long.java", 401) + _r0.o = __NEW_java_lang_String(); + _r2.i = 0; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r2.i, _r3.i, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label35:; + XMLVM_SOURCE_POSITION("Long.java", 392) + _r2.i = _r2.i + 1; + label37:; + XMLVM_SOURCE_POSITION("Long.java", 391) + _r0.l = _r0.l >> (0x3f & _r8.l); + _r3.i = _r0.l > _r4.l ? 1 : (_r0.l == _r4.l ? 0 : -1); + if (_r3.i != 0) goto label35; + _r0 = _r2; + goto label9; + label44:; + _r0 = _r9; + _r2 = _r8; + goto label37; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_toHexString___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_toHexString___long] + XMLVM_ENTER_METHOD("java.lang.Long", "toHexString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r7.l = n1; + _r4.l = 0; + _r6.i = 4; + XMLVM_SOURCE_POSITION("Long.java", 414) + _r0.i = 1; + _r1.i = _r7.l > _r4.l ? 1 : (_r7.l == _r4.l ? 0 : -1); + if (_r1.i >= 0) goto label54; + XMLVM_SOURCE_POSITION("Long.java", 417) + XMLVM_SOURCE_POSITION("Long.java", 418) + _r0.i = 16; + label10:; + XMLVM_SOURCE_POSITION("Long.java", 425) + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + _r2 = _r7; + label13:; + XMLVM_SOURCE_POSITION("Long.java", 427) + _r4.l = 15; + _r4.l = _r4.l & _r2.l; + _r4.i = (JAVA_INT) _r4.l; + _r5.i = 9; + if (_r4.i <= _r5.i) goto label51; + XMLVM_SOURCE_POSITION("Long.java", 428) + XMLVM_SOURCE_POSITION("Long.java", 429) + _r5.i = 10; + _r4.i = _r4.i - _r5.i; + _r4.i = _r4.i + 97; + label26:; + XMLVM_SOURCE_POSITION("Long.java", 433) + _r0.i = _r0.i + -1; + _r4.i = _r4.i & 0xffff; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r4.i; + XMLVM_SOURCE_POSITION("Long.java", 434) + _r2.l = _r2.l >> (0x3f & _r6.l); + if (_r0.i > 0) goto label13; + XMLVM_SOURCE_POSITION("Long.java", 435) + XMLVM_SOURCE_POSITION("Long.java", 436) + _r0.o = __NEW_java_lang_String(); + _r2.i = 0; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r2.i, _r3.i, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label42:; + XMLVM_SOURCE_POSITION("Long.java", 421) + _r2.i = _r2.i + 1; + label44:; + XMLVM_SOURCE_POSITION("Long.java", 420) + _r0.l = _r0.l >> (0x3f & _r6.l); + _r3.i = _r0.l > _r4.l ? 1 : (_r0.l == _r4.l ? 0 : -1); + if (_r3.i != 0) goto label42; + _r0 = _r2; + goto label10; + label51:; + XMLVM_SOURCE_POSITION("Long.java", 431) + _r4.i = _r4.i + 48; + goto label26; + label54:; + _r2 = _r0; + _r0 = _r7; + goto label44; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_toOctalString___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_toOctalString___long] + XMLVM_ENTER_METHOD("java.lang.Long", "toOctalString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r9.l = n1; + _r4.l = 0; + _r8.i = 3; + XMLVM_SOURCE_POSITION("Long.java", 448) + _r0.i = 1; + _r1.i = _r9.l > _r4.l ? 1 : (_r9.l == _r4.l ? 0 : -1); + if (_r1.i >= 0) goto label45; + XMLVM_SOURCE_POSITION("Long.java", 451) + XMLVM_SOURCE_POSITION("Long.java", 452) + _r0.i = 22; + label10:; + XMLVM_SOURCE_POSITION("Long.java", 459) + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + _r2 = _r9; + label13:; + XMLVM_SOURCE_POSITION("Long.java", 461) + _r0.i = _r0.i + -1; + _r4.l = 7; + _r4.l = _r4.l & _r2.l; + _r6.l = 48; + _r4.l = _r4.l + _r6.l; + _r4.i = (JAVA_INT) _r4.l; + _r4.i = _r4.i & 0xffff; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r4.i; + XMLVM_SOURCE_POSITION("Long.java", 462) + _r2.l = ((JAVA_ULONG) _r2.l) >> (0x3f & ((JAVA_ULONG) _r8.l)); + if (_r0.i > 0) goto label13; + XMLVM_SOURCE_POSITION("Long.java", 463) + XMLVM_SOURCE_POSITION("Long.java", 464) + _r0.o = __NEW_java_lang_String(); + _r2.i = 0; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r2.i, _r3.i, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label36:; + XMLVM_SOURCE_POSITION("Long.java", 455) + _r2.i = _r2.i + 1; + label38:; + XMLVM_SOURCE_POSITION("Long.java", 454) + _r0.l = ((JAVA_ULONG) _r0.l) >> (0x3f & ((JAVA_ULONG) _r8.l)); + _r3.i = _r0.l > _r4.l ? 1 : (_r0.l == _r4.l ? 0 : -1); + if (_r3.i != 0) goto label36; + _r0 = _r2; + goto label10; + label45:; + _r2 = _r0; + _r0 = _r9; + goto label38; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_toString__] + XMLVM_ENTER_METHOD("java.lang.Long", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Long.java", 469) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Long*) _r2.o)->fields.java_lang_Long.value_; + _r0.o = java_lang_Long_toString___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_toString___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_toString___long] + XMLVM_ENTER_METHOD("java.lang.Long", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.l = n1; + XMLVM_SOURCE_POSITION("Long.java", 482) + _r0.i = 10; + _r0.o = java_lang_Long_toString___long_int(_r1.l, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_toString___long_int(JAVA_LONG n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_toString___long_int] + XMLVM_ENTER_METHOD("java.lang.Long", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + _r13.l = n1; + _r15.i = n2; + _r12.i = 10; + _r2.i = 2; + _r4.i = 1; + _r10.l = 0; + _r9.i = 0; + XMLVM_SOURCE_POSITION("Long.java", 500) + if (_r15.i < _r2.i) goto label13; + _r0.i = 36; + if (_r15.i <= _r0.i) goto label87; + label13:; + _r0 = _r12; + label14:; + XMLVM_SOURCE_POSITION("Long.java", 501) + XMLVM_SOURCE_POSITION("Long.java", 503) + _r1.i = _r13.l > _r10.l ? 1 : (_r13.l == _r10.l ? 0 : -1); + if (_r1.i != 0) goto label21; + XMLVM_SOURCE_POSITION("Long.java", 504) + // "0" + _r0.o = xmlvm_create_java_string_from_pool(70); + label20:; + XMLVM_SOURCE_POSITION("Long.java", 531) + XMLVM_EXIT_METHOD() + return _r0.o; + label21:; + XMLVM_SOURCE_POSITION("Long.java", 509) + _r1.i = _r13.l > _r10.l ? 1 : (_r13.l == _r10.l ? 0 : -1); + if (_r1.i >= 0) goto label75; + _r1 = _r4; + label26:; + XMLVM_SOURCE_POSITION("Long.java", 510) + if (_r1.i != 0) goto label83; + XMLVM_SOURCE_POSITION("Long.java", 512) + _r2.l = -_r13.l; + _r5 = _r13; + label30:; + XMLVM_SOURCE_POSITION("Long.java", 514) + _r7.l = (JAVA_LONG) _r0.i; + _r5.l = _r5.l / _r7.l; + _r7.i = _r5.l > _r10.l ? 1 : (_r5.l == _r10.l ? 0 : -1); + if (_r7.i != 0) goto label77; + XMLVM_SOURCE_POSITION("Long.java", 518) + XMLVM_CLASS_INIT(char) + _r5.o = XMLVMArray_createSingleDimension(__CLASS_char, _r4.i); + label38:; + XMLVM_SOURCE_POSITION("Long.java", 520) + _r6.l = (JAVA_LONG) _r0.i; + _r6.l = _r2.l % _r6.l; + _r6.i = (JAVA_INT) _r6.l; + _r6.i = _r9.i - _r6.i; + _r7.i = 9; + if (_r6.i <= _r7.i) goto label80; + XMLVM_SOURCE_POSITION("Long.java", 521) + XMLVM_SOURCE_POSITION("Long.java", 522) + _r6.i = _r6.i - _r12.i; + _r6.i = _r6.i + 97; + label51:; + XMLVM_SOURCE_POSITION("Long.java", 526) + _r4.i = _r4.i + -1; + _r6.i = _r6.i & 0xffff; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r4.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r6.i; + XMLVM_SOURCE_POSITION("Long.java", 527) + _r6.l = (JAVA_LONG) _r0.i; + _r2.l = _r2.l / _r6.l; + _r6.i = _r2.l > _r10.l ? 1 : (_r2.l == _r10.l ? 0 : -1); + if (_r6.i != 0) goto label38; + XMLVM_SOURCE_POSITION("Long.java", 528) + if (_r1.i == 0) goto label68; + XMLVM_SOURCE_POSITION("Long.java", 529) + _r0.i = 45; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r9.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r0.i; + label68:; + _r0.o = __NEW_java_lang_String(); + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r9.i, _r1.i, _r5.o); + goto label20; + label75:; + _r1 = _r9; + goto label26; + label77:; + XMLVM_SOURCE_POSITION("Long.java", 515) + _r4.i = _r4.i + 1; + goto label30; + label80:; + XMLVM_SOURCE_POSITION("Long.java", 524) + _r6.i = _r6.i + 48; + goto label51; + label83:; + _r4 = _r2; + _r5 = _r13; + _r2 = _r13; + goto label30; + label87:; + _r0 = _r15; + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Long", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Long.java", 547) + _r0.l = java_lang_Long_parseLong___java_lang_String(_r2.o); + _r0.o = java_lang_Long_valueOf___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_valueOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Long", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("Long.java", 569) + _r0.l = java_lang_Long_parseLong___java_lang_String_int(_r2.o, _r3.i); + _r0.o = java_lang_Long_valueOf___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_highestOneBit___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_highestOneBit___long] + XMLVM_ENTER_METHOD("java.lang.Long", "highestOneBit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.l = n1; + _r4.i = 1; + XMLVM_SOURCE_POSITION("Long.java", 584) + _r0.l = _r6.l >> (0x3f & _r4.l); + _r0.l = _r0.l | _r6.l; + _r2.i = 2; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 4; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 8; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 16; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 32; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.l = ((JAVA_ULONG) _r0.l) >> (0x3f & ((JAVA_ULONG) _r4.l)); + _r4.l = -1; + _r2.l = _r2.l ^ _r4.l; + _r0.l = _r0.l & _r2.l; + XMLVM_SOURCE_POSITION("Long.java", 590) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_lowestOneBit___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_lowestOneBit___long] + XMLVM_ENTER_METHOD("java.lang.Long", "lowestOneBit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.l = n1; + XMLVM_SOURCE_POSITION("Long.java", 605) + _r0.l = -_r2.l; + _r0.l = _r0.l & _r2.l; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_numberOfLeadingZeros___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_numberOfLeadingZeros___long] + XMLVM_ENTER_METHOD("java.lang.Long", "numberOfLeadingZeros", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.l = n1; + XMLVM_SOURCE_POSITION("Long.java", 618) + _r0.i = 1; + _r0.l = _r4.l >> (0x3f & _r0.l); + _r0.l = _r0.l | _r4.l; + _r2.i = 2; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 4; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 8; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 16; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.i = 32; + _r2.l = _r0.l >> (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + _r2.l = -1; + _r0.l = _r0.l ^ _r2.l; + XMLVM_SOURCE_POSITION("Long.java", 624) + _r0.i = java_lang_Long_bitCount___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_numberOfTrailingZeros___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_numberOfTrailingZeros___long] + XMLVM_ENTER_METHOD("java.lang.Long", "numberOfTrailingZeros", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.l = n1; + XMLVM_SOURCE_POSITION("Long.java", 637) + _r0.l = -_r4.l; + _r0.l = _r0.l & _r4.l; + _r2.l = 1; + _r0.l = _r0.l - _r2.l; + _r0.i = java_lang_Long_bitCount___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_bitCount___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_bitCount___long] + XMLVM_ENTER_METHOD("java.lang.Long", "bitCount", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r12.l = n1; + _r10.l = 6148914691236517205; + _r8.l = 3689348814741910323; + _r7.i = 252645135; + _r6.i = 16711935; + _r5.i = 65535; + XMLVM_SOURCE_POSITION("Long.java", 650) + _r0.l = _r12.l & _r10.l; + _r2.i = 1; + _r2.l = _r12.l >> (0x3f & _r2.l); + _r2.l = _r2.l & _r10.l; + _r0.l = _r0.l + _r2.l; + _r2.l = _r0.l & _r8.l; + _r4.i = 2; + _r0.l = _r0.l >> (0x3f & _r4.l); + _r0.l = _r0.l & _r8.l; + _r0.l = _r0.l + _r2.l; + _r2.i = 32; + _r2.l = ((JAVA_ULONG) _r0.l) >> (0x3f & ((JAVA_ULONG) _r2.l)); + _r0.l = _r0.l + _r2.l; + _r0.i = (JAVA_INT) _r0.l; + _r1.i = _r0.i & _r7.i; + _r0.i = _r0.i >> 4; + _r0.i = _r0.i & _r7.i; + _r0.i = _r0.i + _r1.i; + _r1.i = _r0.i & _r6.i; + _r0.i = _r0.i >> 8; + _r0.i = _r0.i & _r6.i; + _r0.i = _r0.i + _r1.i; + _r1.i = _r0.i & _r5.i; + _r0.i = _r0.i >> 16; + _r0.i = _r0.i & _r5.i; + _r0.i = _r0.i + _r1.i; + XMLVM_SOURCE_POSITION("Long.java", 657) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_rotateLeft___long_int(JAVA_LONG n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_rotateLeft___long_int] + XMLVM_ENTER_METHOD("java.lang.Long", "rotateLeft", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.l = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("Long.java", 672) + if (_r6.i != 0) goto label4; + _r0 = _r4; + label3:; + XMLVM_SOURCE_POSITION("Long.java", 673) + XMLVM_SOURCE_POSITION("Long.java", 680) + XMLVM_EXIT_METHOD() + return _r0.l; + label4:; + _r0.l = _r4.l << (0x3f & _r6.l); + _r2.i = -_r6.i; + _r2.l = ((JAVA_ULONG) _r4.l) >> (0x3f & ((JAVA_ULONG) _r2.l)); + _r0.l = _r0.l | _r2.l; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_rotateRight___long_int(JAVA_LONG n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_rotateRight___long_int] + XMLVM_ENTER_METHOD("java.lang.Long", "rotateRight", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.l = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("Long.java", 696) + if (_r6.i != 0) goto label4; + _r0 = _r4; + label3:; + XMLVM_SOURCE_POSITION("Long.java", 697) + XMLVM_SOURCE_POSITION("Long.java", 704) + XMLVM_EXIT_METHOD() + return _r0.l; + label4:; + _r0.l = ((JAVA_ULONG) _r4.l) >> (0x3f & ((JAVA_ULONG) _r6.l)); + _r2.i = -_r6.i; + _r2.l = _r4.l << (0x3f & _r2.l); + _r0.l = _r0.l | _r2.l; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_reverseBytes___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_reverseBytes___long] + XMLVM_ENTER_METHOD("java.lang.Long", "reverseBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + XMLVMElem _r16; + _r15.l = n1; + XMLVM_SOURCE_POSITION("Long.java", 716) + _r0.i = 56; + _r0.l = ((JAVA_ULONG) _r15.l) >> (0x3f & ((JAVA_ULONG) _r0.l)); + _r2.i = 40; + _r2.l = ((JAVA_ULONG) _r15.l) >> (0x3f & ((JAVA_ULONG) _r2.l)); + _r4.l = 65280; + _r2.l = _r2.l & _r4.l; + _r4.i = 24; + _r4.l = ((JAVA_ULONG) _r15.l) >> (0x3f & ((JAVA_ULONG) _r4.l)); + _r6.l = 16711680; + _r4.l = _r4.l & _r6.l; + _r6.i = 8; + _r6.l = ((JAVA_ULONG) _r15.l) >> (0x3f & ((JAVA_ULONG) _r6.l)); + _r8.l = 4278190080; + _r6.l = _r6.l & _r8.l; + _r8.l = 4278190080; + _r8.l = _r8.l & _r15.l; + _r10.i = 8; + _r8.l = _r8.l << (0x3f & _r10.l); + _r10.l = 16711680; + _r10.l = _r10.l & _r15.l; + _r12.i = 24; + _r10.l = _r10.l << (0x3f & _r12.l); + _r12.l = 65280; + _r12.l = _r12.l & _r15.l; + _r14.i = 40; + _r12.l = _r12.l << (0x3f & _r14.l); + _r14.i = 56; + _r15.l = _r15.l << (0x3f & _r14.l); + _r15.l = _r15.l | _r12.l; + _r15.l = _r15.l | _r10.l; + _r15.l = _r15.l | _r8.l; + _r15.l = _r15.l | _r6.l; + _r15.l = _r15.l | _r4.l; + _r15.l = _r15.l | _r2.l; + _r15.l = _r15.l | _r0.l; + XMLVM_SOURCE_POSITION("Long.java", 724) + XMLVM_EXIT_METHOD() + return _r15.l; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Long_reverse___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_reverse___long] + XMLVM_ENTER_METHOD("java.lang.Long", "reverse", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r12.l = n1; + _r10.l = 3689348814741910323; + _r8.l = 1085102592571150095; + _r7.i = 4; + _r6.i = 2; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Long.java", 737) + _r0.l = 6148914691236517205; + _r0.l = _r0.l & _r12.l; + _r0.l = _r0.l << (0x3f & _r2.l); + _r2.l = _r12.l >> (0x3f & _r2.l); + _r4.l = 6148914691236517205; + _r2.l = _r2.l & _r4.l; + _r0.l = _r0.l | _r2.l; + _r2.l = _r0.l & _r10.l; + _r2.l = _r2.l << (0x3f & _r6.l); + _r0.l = _r0.l >> (0x3f & _r6.l); + _r0.l = _r0.l & _r10.l; + _r0.l = _r0.l | _r2.l; + _r2.l = _r0.l & _r8.l; + _r2.l = _r2.l << (0x3f & _r7.l); + _r0.l = _r0.l >> (0x3f & _r7.l); + _r0.l = _r0.l & _r8.l; + _r0.l = _r0.l | _r2.l; + XMLVM_SOURCE_POSITION("Long.java", 743) + _r0.l = java_lang_Long_reverseBytes___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_signum___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_signum___long] + XMLVM_ENTER_METHOD("java.lang.Long", "signum", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.l = n1; + _r1.l = 0; + XMLVM_SOURCE_POSITION("Long.java", 757) + _r0.i = _r3.l > _r1.l ? 1 : (_r3.l == _r1.l ? 0 : -1); + if (_r0.i != 0) goto label8; + _r0.i = 0; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = _r3.l > _r1.l ? 1 : (_r3.l == _r1.l ? 0 : -1); + if (_r0.i >= 0) goto label14; + _r0.i = -1; + goto label7; + label14:; + _r0.i = 1; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Long_valueOf___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Long) + //XMLVM_BEGIN_WRAPPER[java_lang_Long_valueOf___long] + XMLVM_ENTER_METHOD("java.lang.Long", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.l = n1; + XMLVM_SOURCE_POSITION("Long.java", 773) + _r0.l = -128; + _r0.i = _r2.l > _r0.l ? 1 : (_r2.l == _r0.l ? 0 : -1); + if (_r0.i < 0) goto label12; + _r0.l = 127; + _r0.i = _r2.l > _r0.l ? 1 : (_r2.l == _r0.l ? 0 : -1); + if (_r0.i <= 0) goto label18; + label12:; + XMLVM_SOURCE_POSITION("Long.java", 774) + _r0.o = __NEW_java_lang_Long(); + XMLVM_CHECK_NPE(0) + java_lang_Long___INIT____long(_r0.o, _r2.l); + label17:; + XMLVM_SOURCE_POSITION("Long.java", 776) + XMLVM_EXIT_METHOD() + return _r0.o; + label18:; + _r0.o = java_lang_Long_valueOfCache_GET_CACHE(); + _r1.i = (JAVA_INT) _r2.l; + _r1.i = _r1.i + 128; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Long_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Long", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Long.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Long_compareTo___java_lang_Long(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Long.h b/tests/nbody-java/java_lang_Long.h new file mode 100644 index 0000000000000..3f3d3ac353688 --- /dev/null +++ b/tests/nbody-java/java_lang_Long.h @@ -0,0 +1,145 @@ +#ifndef __JAVA_LANG_LONG__ +#define __JAVA_LANG_LONG__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Long 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Number.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long_valueOfCache +#define XMLVM_FORWARD_DECL_java_lang_Long_valueOfCache +XMLVM_FORWARD_DECL(java_lang_Long_valueOfCache) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +// Class declarations for java.lang.Long +XMLVM_DEFINE_CLASS(java_lang_Long, 13, XMLVM_ITABLE_SIZE_java_lang_Long) + +extern JAVA_OBJECT __CLASS_java_lang_Long; +extern JAVA_OBJECT __CLASS_java_lang_Long_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Long_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Long_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Long +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Long \ + __INSTANCE_FIELDS_java_lang_Number; \ + struct { \ + JAVA_LONG value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Long \ + } java_lang_Long + +struct java_lang_Long { + __TIB_DEFINITION_java_lang_Long* tib; + struct { + __INSTANCE_FIELDS_java_lang_Long; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +typedef struct java_lang_Long java_lang_Long; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Long 13 +#define XMLVM_VTABLE_IDX_java_lang_Long_byteValue__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Long_doubleValue__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Long_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Long_floatValue__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Long_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Long_intValue__ 9 +#define XMLVM_VTABLE_IDX_java_lang_Long_longValue__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Long_shortValue__ 11 +#define XMLVM_VTABLE_IDX_java_lang_Long_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Long_compareTo___java_lang_Object 12 + +void __INIT_java_lang_Long(); +void __INIT_IMPL_java_lang_Long(); +void __DELETE_java_lang_Long(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Long(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Long(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Long(); +JAVA_LONG java_lang_Long_GET_serialVersionUID(); +void java_lang_Long_PUT_serialVersionUID(JAVA_LONG v); +JAVA_LONG java_lang_Long_GET_MAX_VALUE(); +void java_lang_Long_PUT_MAX_VALUE(JAVA_LONG v); +JAVA_LONG java_lang_Long_GET_MIN_VALUE(); +void java_lang_Long_PUT_MIN_VALUE(JAVA_LONG v); +JAVA_OBJECT java_lang_Long_GET_TYPE(); +void java_lang_Long_PUT_TYPE(JAVA_OBJECT v); +JAVA_INT java_lang_Long_GET_SIZE(); +void java_lang_Long_PUT_SIZE(JAVA_INT v); +void java_lang_Long___CLINIT_(); +void java_lang_Long___INIT____long(JAVA_OBJECT me, JAVA_LONG n1); +void java_lang_Long___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_BYTE java_lang_Long_byteValue__(JAVA_OBJECT me); +JAVA_INT java_lang_Long_compareTo___java_lang_Long(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Long_decode___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_DOUBLE java_lang_Long_doubleValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Long_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_FLOAT java_lang_Long_floatValue__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Long_getLong___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Long_getLong___java_lang_String_long(JAVA_OBJECT n1, JAVA_LONG n2); +JAVA_OBJECT java_lang_Long_getLong___java_lang_String_java_lang_Long(JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 4 +JAVA_INT java_lang_Long_hashCode__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_Long_intValue__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_LONG java_lang_Long_longValue__(JAVA_OBJECT me); +JAVA_LONG java_lang_Long_parseLong___java_lang_String(JAVA_OBJECT n1); +JAVA_LONG java_lang_Long_parseLong___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_LONG java_lang_Long_parse___java_lang_String_int_int_boolean(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_BOOLEAN n4); +// Vtable index: 11 +JAVA_SHORT java_lang_Long_shortValue__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Long_toBinaryString___long(JAVA_LONG n1); +JAVA_OBJECT java_lang_Long_toHexString___long(JAVA_LONG n1); +JAVA_OBJECT java_lang_Long_toOctalString___long(JAVA_LONG n1); +// Vtable index: 5 +JAVA_OBJECT java_lang_Long_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Long_toString___long(JAVA_LONG n1); +JAVA_OBJECT java_lang_Long_toString___long_int(JAVA_LONG n1, JAVA_INT n2); +JAVA_OBJECT java_lang_Long_valueOf___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Long_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_LONG java_lang_Long_highestOneBit___long(JAVA_LONG n1); +JAVA_LONG java_lang_Long_lowestOneBit___long(JAVA_LONG n1); +JAVA_INT java_lang_Long_numberOfLeadingZeros___long(JAVA_LONG n1); +JAVA_INT java_lang_Long_numberOfTrailingZeros___long(JAVA_LONG n1); +JAVA_INT java_lang_Long_bitCount___long(JAVA_LONG n1); +JAVA_LONG java_lang_Long_rotateLeft___long_int(JAVA_LONG n1, JAVA_INT n2); +JAVA_LONG java_lang_Long_rotateRight___long_int(JAVA_LONG n1, JAVA_INT n2); +JAVA_LONG java_lang_Long_reverseBytes___long(JAVA_LONG n1); +JAVA_LONG java_lang_Long_reverse___long(JAVA_LONG n1); +JAVA_INT java_lang_Long_signum___long(JAVA_LONG n1); +JAVA_OBJECT java_lang_Long_valueOf___long(JAVA_LONG n1); +// Vtable index: 12 +JAVA_INT java_lang_Long_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Long_valueOfCache.c b/tests/nbody-java/java_lang_Long_valueOfCache.c new file mode 100644 index 0000000000000..c58acc4f460f2 --- /dev/null +++ b/tests/nbody-java/java_lang_Long_valueOfCache.c @@ -0,0 +1,212 @@ +#include "xmlvm.h" +#include "java_lang_Long.h" + +#include "java_lang_Long_valueOfCache.h" + +#define XMLVM_CURRENT_CLASS_NAME Long_valueOfCache +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Long_valueOfCache + +__TIB_DEFINITION_java_lang_Long_valueOfCache __TIB_java_lang_Long_valueOfCache = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Long_valueOfCache, // classInitializer + "java.lang.Long$valueOfCache", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Long_valueOfCache), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache; +JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_Long_valueOfCache_CACHE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Long_valueOfCache() +{ + staticInitializerLock(&__TIB_java_lang_Long_valueOfCache); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Long_valueOfCache.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Long_valueOfCache.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Long_valueOfCache); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Long_valueOfCache.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Long_valueOfCache.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Long_valueOfCache.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Long$valueOfCache") + __INIT_IMPL_java_lang_Long_valueOfCache(); + } +} + +void __INIT_IMPL_java_lang_Long_valueOfCache() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Long_valueOfCache.newInstanceFunc = __NEW_INSTANCE_java_lang_Long_valueOfCache; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Long_valueOfCache.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_Long_valueOfCache.numImplementedInterfaces = 0; + __TIB_java_lang_Long_valueOfCache.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_Long_valueOfCache_CACHE = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_lang_Long_valueOfCache.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Long_valueOfCache.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Long_valueOfCache.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Long_valueOfCache.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Long_valueOfCache.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Long_valueOfCache.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Long_valueOfCache.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Long_valueOfCache.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Long_valueOfCache = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Long_valueOfCache); + __TIB_java_lang_Long_valueOfCache.clazz = __CLASS_java_lang_Long_valueOfCache; + __TIB_java_lang_Long_valueOfCache.baseType = JAVA_NULL; + __CLASS_java_lang_Long_valueOfCache_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Long_valueOfCache); + __CLASS_java_lang_Long_valueOfCache_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Long_valueOfCache_1ARRAY); + __CLASS_java_lang_Long_valueOfCache_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Long_valueOfCache_2ARRAY); + java_lang_Long_valueOfCache___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Long_valueOfCache] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Long_valueOfCache.classInitialized = 1; +} + +void __DELETE_java_lang_Long_valueOfCache(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Long_valueOfCache] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Long_valueOfCache(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Long_valueOfCache] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Long_valueOfCache() +{ XMLVM_CLASS_INIT(java_lang_Long_valueOfCache) +java_lang_Long_valueOfCache* me = (java_lang_Long_valueOfCache*) XMLVM_MALLOC(sizeof(java_lang_Long_valueOfCache)); + me->tib = &__TIB_java_lang_Long_valueOfCache; + __INIT_INSTANCE_MEMBERS_java_lang_Long_valueOfCache(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Long_valueOfCache] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Long_valueOfCache() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_Long_valueOfCache(); + java_lang_Long_valueOfCache___INIT___(me); + return me; +} + +JAVA_OBJECT java_lang_Long_valueOfCache_GET_CACHE() +{ + XMLVM_CLASS_INIT(java_lang_Long_valueOfCache) + return _STATIC_java_lang_Long_valueOfCache_CACHE; +} + +void java_lang_Long_valueOfCache_PUT_CACHE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Long_valueOfCache) +_STATIC_java_lang_Long_valueOfCache_CACHE = v; +} + +void java_lang_Long_valueOfCache___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_valueOfCache___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Long$valueOfCache", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVM_SOURCE_POSITION("Long.java", 784) + _r0.i = 256; + XMLVM_CLASS_INIT(java_lang_Long) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Long, _r0.i); + java_lang_Long_valueOfCache_PUT_CACHE( _r0.o); + XMLVM_SOURCE_POSITION("Long.java", 787) + _r0.i = -128; + label8:; + _r1.i = 127; + if (_r0.i <= _r1.i) goto label13; + XMLVM_SOURCE_POSITION("Long.java", 779) + XMLVM_EXIT_METHOD() + return; + label13:; + XMLVM_SOURCE_POSITION("Long.java", 788) + _r1.o = java_lang_Long_valueOfCache_GET_CACHE(); + _r2.i = _r0.i + 128; + _r3.o = __NEW_java_lang_Long(); + _r4.l = (JAVA_LONG) _r0.i; + XMLVM_CHECK_NPE(3) + java_lang_Long___INIT____long(_r3.o, _r4.l); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.o; + _r0.i = _r0.i + 1; + goto label8; + //XMLVM_END_WRAPPER +} + +void java_lang_Long_valueOfCache___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Long_valueOfCache___INIT___] + XMLVM_ENTER_METHOD("java.lang.Long$valueOfCache", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Long.java", 779) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Long_valueOfCache.h b/tests/nbody-java/java_lang_Long_valueOfCache.h new file mode 100644 index 0000000000000..78046d5ac8af1 --- /dev/null +++ b/tests/nbody-java/java_lang_Long_valueOfCache.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_LANG_LONG_VALUEOFCACHE__ +#define __JAVA_LANG_LONG_VALUEOFCACHE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Long_valueOfCache 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +// Class declarations for java.lang.Long$valueOfCache +XMLVM_DEFINE_CLASS(java_lang_Long_valueOfCache, 6, XMLVM_ITABLE_SIZE_java_lang_Long_valueOfCache) + +extern JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache; +extern JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Long_valueOfCache_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Long_valueOfCache +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Long_valueOfCache \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Long_valueOfCache \ + } java_lang_Long_valueOfCache + +struct java_lang_Long_valueOfCache { + __TIB_DEFINITION_java_lang_Long_valueOfCache* tib; + struct { + __INSTANCE_FIELDS_java_lang_Long_valueOfCache; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Long_valueOfCache +#define XMLVM_FORWARD_DECL_java_lang_Long_valueOfCache +typedef struct java_lang_Long_valueOfCache java_lang_Long_valueOfCache; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Long_valueOfCache 6 + +void __INIT_java_lang_Long_valueOfCache(); +void __INIT_IMPL_java_lang_Long_valueOfCache(); +void __DELETE_java_lang_Long_valueOfCache(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Long_valueOfCache(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Long_valueOfCache(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Long_valueOfCache(); +JAVA_OBJECT java_lang_Long_valueOfCache_GET_CACHE(); +void java_lang_Long_valueOfCache_PUT_CACHE(JAVA_OBJECT v); +void java_lang_Long_valueOfCache___CLINIT_(); +void java_lang_Long_valueOfCache___INIT___(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_Math.c b/tests/nbody-java/java_lang_Math.c new file mode 100644 index 0000000000000..8011558e35799 --- /dev/null +++ b/tests/nbody-java/java_lang_Math.c @@ -0,0 +1,1937 @@ +#include "xmlvm.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "java_lang_Integer.h" +#include "java_lang_Long.h" + +#include "java_lang_Math.h" + +#define XMLVM_CURRENT_CLASS_NAME Math +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Math + +__TIB_DEFINITION_java_lang_Math __TIB_java_lang_Math = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Math, // classInitializer + "java.lang.Math", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Math), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Math; +JAVA_OBJECT __CLASS_java_lang_Math_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Math_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Math_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_lang_Math_FLOAT_EXPONENT_BIAS; +static JAVA_INT _STATIC_java_lang_Math_FLOAT_EXPONENT_MASK; +static JAVA_INT _STATIC_java_lang_Math_DOUBLE_NON_MANTISSA_BITS; +static JAVA_INT _STATIC_java_lang_Math_DOUBLE_MANTISSA_BITS; +static JAVA_INT _STATIC_java_lang_Math_FLOAT_NON_MANTISSA_BITS; +static JAVA_INT _STATIC_java_lang_Math_FLOAT_MANTISSA_BITS; +static JAVA_INT _STATIC_java_lang_Math_DOUBLE_EXPONENT_BIAS; +static JAVA_LONG _STATIC_java_lang_Math_DOUBLE_EXPONENT_MASK; +static JAVA_INT _STATIC_java_lang_Math_FLOAT_MANTISSA_MASK; +static JAVA_INT _STATIC_java_lang_Math_FLOAT_SIGN_MASK; +static JAVA_LONG _STATIC_java_lang_Math_DOUBLE_MANTISSA_MASK; +static JAVA_LONG _STATIC_java_lang_Math_DOUBLE_SIGN_MASK; +static JAVA_DOUBLE _STATIC_java_lang_Math_E; +static JAVA_DOUBLE _STATIC_java_lang_Math_PI; +static JAVA_OBJECT _STATIC_java_lang_Math_random; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Math() +{ + staticInitializerLock(&__TIB_java_lang_Math); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Math.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Math.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Math); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Math.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Math.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Math.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Math") + __INIT_IMPL_java_lang_Math(); + } +} + +void __INIT_IMPL_java_lang_Math() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Math.newInstanceFunc = __NEW_INSTANCE_java_lang_Math; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Math.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_Math.numImplementedInterfaces = 0; + __TIB_java_lang_Math.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_Math_FLOAT_EXPONENT_BIAS = 127; + _STATIC_java_lang_Math_FLOAT_EXPONENT_MASK = 2139095040; + _STATIC_java_lang_Math_DOUBLE_NON_MANTISSA_BITS = 12; + _STATIC_java_lang_Math_DOUBLE_MANTISSA_BITS = 52; + _STATIC_java_lang_Math_FLOAT_NON_MANTISSA_BITS = 9; + _STATIC_java_lang_Math_FLOAT_MANTISSA_BITS = 23; + _STATIC_java_lang_Math_DOUBLE_EXPONENT_BIAS = 1023; + _STATIC_java_lang_Math_DOUBLE_EXPONENT_MASK = 9218868437227405312; + _STATIC_java_lang_Math_FLOAT_MANTISSA_MASK = 8388607; + _STATIC_java_lang_Math_FLOAT_SIGN_MASK = -2147483648; + _STATIC_java_lang_Math_DOUBLE_MANTISSA_MASK = 4503599627370495; + _STATIC_java_lang_Math_DOUBLE_SIGN_MASK = -9223372036854775808; + _STATIC_java_lang_Math_E = 2.718281828459045; + _STATIC_java_lang_Math_PI = 3.141592653589793; + _STATIC_java_lang_Math_random = (java_lang_Object*) JAVA_NULL; + + __TIB_java_lang_Math.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Math.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Math.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Math.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Math.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Math.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Math.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Math.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Math = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Math); + __TIB_java_lang_Math.clazz = __CLASS_java_lang_Math; + __TIB_java_lang_Math.baseType = JAVA_NULL; + __CLASS_java_lang_Math_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Math); + __CLASS_java_lang_Math_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Math_1ARRAY); + __CLASS_java_lang_Math_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Math_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Math] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Math.classInitialized = 1; +} + +void __DELETE_java_lang_Math(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Math] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Math(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Math] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Math() +{ XMLVM_CLASS_INIT(java_lang_Math) +java_lang_Math* me = (java_lang_Math*) XMLVM_MALLOC(sizeof(java_lang_Math)); + me->tib = &__TIB_java_lang_Math; + __INIT_INSTANCE_MEMBERS_java_lang_Math(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Math] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Math() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT java_lang_Math_GET_FLOAT_EXPONENT_BIAS() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_FLOAT_EXPONENT_BIAS; +} + +void java_lang_Math_PUT_FLOAT_EXPONENT_BIAS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_FLOAT_EXPONENT_BIAS = v; +} + +JAVA_INT java_lang_Math_GET_FLOAT_EXPONENT_MASK() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_FLOAT_EXPONENT_MASK; +} + +void java_lang_Math_PUT_FLOAT_EXPONENT_MASK(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_FLOAT_EXPONENT_MASK = v; +} + +JAVA_INT java_lang_Math_GET_DOUBLE_NON_MANTISSA_BITS() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_DOUBLE_NON_MANTISSA_BITS; +} + +void java_lang_Math_PUT_DOUBLE_NON_MANTISSA_BITS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_DOUBLE_NON_MANTISSA_BITS = v; +} + +JAVA_INT java_lang_Math_GET_DOUBLE_MANTISSA_BITS() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_DOUBLE_MANTISSA_BITS; +} + +void java_lang_Math_PUT_DOUBLE_MANTISSA_BITS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_DOUBLE_MANTISSA_BITS = v; +} + +JAVA_INT java_lang_Math_GET_FLOAT_NON_MANTISSA_BITS() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_FLOAT_NON_MANTISSA_BITS; +} + +void java_lang_Math_PUT_FLOAT_NON_MANTISSA_BITS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_FLOAT_NON_MANTISSA_BITS = v; +} + +JAVA_INT java_lang_Math_GET_FLOAT_MANTISSA_BITS() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_FLOAT_MANTISSA_BITS; +} + +void java_lang_Math_PUT_FLOAT_MANTISSA_BITS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_FLOAT_MANTISSA_BITS = v; +} + +JAVA_INT java_lang_Math_GET_DOUBLE_EXPONENT_BIAS() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_DOUBLE_EXPONENT_BIAS; +} + +void java_lang_Math_PUT_DOUBLE_EXPONENT_BIAS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_DOUBLE_EXPONENT_BIAS = v; +} + +JAVA_LONG java_lang_Math_GET_DOUBLE_EXPONENT_MASK() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_DOUBLE_EXPONENT_MASK; +} + +void java_lang_Math_PUT_DOUBLE_EXPONENT_MASK(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_DOUBLE_EXPONENT_MASK = v; +} + +JAVA_INT java_lang_Math_GET_FLOAT_MANTISSA_MASK() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_FLOAT_MANTISSA_MASK; +} + +void java_lang_Math_PUT_FLOAT_MANTISSA_MASK(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_FLOAT_MANTISSA_MASK = v; +} + +JAVA_INT java_lang_Math_GET_FLOAT_SIGN_MASK() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_FLOAT_SIGN_MASK; +} + +void java_lang_Math_PUT_FLOAT_SIGN_MASK(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_FLOAT_SIGN_MASK = v; +} + +JAVA_LONG java_lang_Math_GET_DOUBLE_MANTISSA_MASK() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_DOUBLE_MANTISSA_MASK; +} + +void java_lang_Math_PUT_DOUBLE_MANTISSA_MASK(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_DOUBLE_MANTISSA_MASK = v; +} + +JAVA_LONG java_lang_Math_GET_DOUBLE_SIGN_MASK() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_DOUBLE_SIGN_MASK; +} + +void java_lang_Math_PUT_DOUBLE_SIGN_MASK(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_DOUBLE_SIGN_MASK = v; +} + +JAVA_DOUBLE java_lang_Math_GET_E() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_E; +} + +void java_lang_Math_PUT_E(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_E = v; +} + +JAVA_DOUBLE java_lang_Math_GET_PI() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_PI; +} + +void java_lang_Math_PUT_PI(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_PI = v; +} + +JAVA_OBJECT java_lang_Math_GET_random() +{ + XMLVM_CLASS_INIT(java_lang_Math) + return _STATIC_java_lang_Math_random; +} + +void java_lang_Math_PUT_random(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Math) +_STATIC_java_lang_Math_random = v; +} + +void java_lang_Math___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Math___INIT___] + XMLVM_ENTER_METHOD("java.lang.Math", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Math.java", 66) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Math.java", 67) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_abs___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_abs___double] + XMLVM_ENTER_METHOD("java.lang.Math", "abs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.d = n1; + XMLVM_SOURCE_POSITION("Math.java", 85) + _r0.l = java_lang_Double_doubleToLongBits___double(_r4.d); + XMLVM_SOURCE_POSITION("Math.java", 86) + _r2.l = 9223372036854775807; + _r0.l = _r0.l & _r2.l; + XMLVM_SOURCE_POSITION("Math.java", 87) + _r0.d = java_lang_Double_longBitsToDouble___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_abs___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_abs___float] + XMLVM_ENTER_METHOD("java.lang.Math", "abs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.f = n1; + XMLVM_SOURCE_POSITION("Math.java", 107) + _r0.i = java_lang_Float_floatToIntBits___float(_r2.f); + XMLVM_SOURCE_POSITION("Math.java", 108) + _r1.i = 2147483647; + _r0.i = _r0.i & _r1.i; + XMLVM_SOURCE_POSITION("Math.java", 109) + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Math_abs___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_abs___int] + XMLVM_ENTER_METHOD("java.lang.Math", "abs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Math.java", 124) + if (_r1.i < 0) goto label4; + _r0 = _r1; + label3:; + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + _r0.i = -_r1.i; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Math_abs___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_abs___long] + XMLVM_ENTER_METHOD("java.lang.Math", "abs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.l = n1; + XMLVM_SOURCE_POSITION("Math.java", 137) + _r0.l = 0; + _r0.i = _r2.l > _r0.l ? 1 : (_r2.l == _r0.l ? 0 : -1); + if (_r0.i < 0) goto label8; + _r0 = _r2; + label7:; + XMLVM_EXIT_METHOD() + return _r0.l; + label8:; + _r0.l = -_r2.l; + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_acos___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_asin___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_atan___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_atan2___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_cbrt___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_ceil___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_cos___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_cosh___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_exp___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_expm1___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_floor___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_hypot___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_IEEEremainder___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_log___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_log10___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_log1p___double(JAVA_DOUBLE n1)] + +JAVA_DOUBLE java_lang_Math_max___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_max___double_double] + XMLVM_ENTER_METHOD("java.lang.Math", "max", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r4.d = n1; + _r6.d = n2; + XMLVM_SOURCE_POSITION("Math.java", 513) + _r0.i = _r4.d > _r6.d ? 1 : (_r4.d == _r6.d ? 0 : -1); + if (_r0.i <= 0) goto label6; + _r0 = _r4; + label5:; + XMLVM_SOURCE_POSITION("Math.java", 514) + XMLVM_SOURCE_POSITION("Math.java", 528) + XMLVM_EXIT_METHOD() + return _r0.d; + label6:; + XMLVM_SOURCE_POSITION("Math.java", 516) + _r0.i = _r4.d > _r6.d ? 1 : (_r4.d == _r6.d ? 0 : -1); + if (_r0.i >= 0) goto label12; + _r0 = _r6; + XMLVM_SOURCE_POSITION("Math.java", 517) + goto label5; + label12:; + XMLVM_SOURCE_POSITION("Math.java", 520) + _r0.i = _r4.d > _r6.d ? 1 : (_r4.d == _r6.d ? 0 : -1); + if (_r0.i == 0) goto label19; + XMLVM_SOURCE_POSITION("Math.java", 521) + _r0.d = NaN; + goto label5; + label19:; + XMLVM_SOURCE_POSITION("Math.java", 525) + _r0.l = java_lang_Double_doubleToRawLongBits___double(_r4.d); + _r2.l = 0; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i == 0) goto label31; + _r0 = _r6; + XMLVM_SOURCE_POSITION("Math.java", 526) + goto label5; + label31:; + _r0.d = 0.0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_max___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_max___float_float] + XMLVM_ENTER_METHOD("java.lang.Math", "max", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.f = n1; + _r2.f = n2; + XMLVM_SOURCE_POSITION("Math.java", 550) + _r0.i = _r1.f > _r2.f ? 1 : (_r1.f == _r2.f ? 0 : -1); + if (_r0.i <= 0) goto label6; + _r0 = _r1; + label5:; + XMLVM_SOURCE_POSITION("Math.java", 551) + XMLVM_SOURCE_POSITION("Math.java", 565) + XMLVM_EXIT_METHOD() + return _r0.f; + label6:; + XMLVM_SOURCE_POSITION("Math.java", 553) + _r0.i = _r1.f > _r2.f ? 1 : (_r1.f == _r2.f ? 0 : -1); + if (_r0.i >= 0) goto label12; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Math.java", 554) + goto label5; + label12:; + XMLVM_SOURCE_POSITION("Math.java", 557) + _r0.i = _r1.f > _r2.f ? 1 : (_r1.f == _r2.f ? 0 : -1); + if (_r0.i == 0) goto label19; + XMLVM_SOURCE_POSITION("Math.java", 558) + _r0.f = NaN; + goto label5; + label19:; + XMLVM_SOURCE_POSITION("Math.java", 562) + _r0.i = java_lang_Float_floatToRawIntBits___float(_r1.f); + if (_r0.i == 0) goto label27; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Math.java", 563) + goto label5; + label27:; + _r0.f = 0.0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Math_max___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_max___int_int] + XMLVM_ENTER_METHOD("java.lang.Math", "max", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.i = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Math.java", 579) + if (_r1.i <= _r2.i) goto label4; + _r0 = _r1; + label3:; + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + _r0 = _r2; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Math_max___long_long(JAVA_LONG n1, JAVA_LONG n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_max___long_long] + XMLVM_ENTER_METHOD("java.lang.Math", "max", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.l = n1; + _r4.l = n2; + XMLVM_SOURCE_POSITION("Math.java", 593) + _r0.i = _r2.l > _r4.l ? 1 : (_r2.l == _r4.l ? 0 : -1); + if (_r0.i <= 0) goto label6; + _r0 = _r2; + label5:; + XMLVM_EXIT_METHOD() + return _r0.l; + label6:; + _r0 = _r4; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_min___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_min___double_double] + XMLVM_ENTER_METHOD("java.lang.Math", "min", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r4.d = n1; + _r6.d = n2; + XMLVM_SOURCE_POSITION("Math.java", 615) + _r0.i = _r4.d > _r6.d ? 1 : (_r4.d == _r6.d ? 0 : -1); + if (_r0.i <= 0) goto label6; + _r0 = _r6; + label5:; + XMLVM_SOURCE_POSITION("Math.java", 616) + XMLVM_SOURCE_POSITION("Math.java", 630) + XMLVM_EXIT_METHOD() + return _r0.d; + label6:; + XMLVM_SOURCE_POSITION("Math.java", 618) + _r0.i = _r4.d > _r6.d ? 1 : (_r4.d == _r6.d ? 0 : -1); + if (_r0.i >= 0) goto label12; + _r0 = _r4; + XMLVM_SOURCE_POSITION("Math.java", 619) + goto label5; + label12:; + XMLVM_SOURCE_POSITION("Math.java", 622) + _r0.i = _r4.d > _r6.d ? 1 : (_r4.d == _r6.d ? 0 : -1); + if (_r0.i == 0) goto label19; + XMLVM_SOURCE_POSITION("Math.java", 623) + _r0.d = NaN; + goto label5; + label19:; + XMLVM_SOURCE_POSITION("Math.java", 627) + _r0.l = java_lang_Double_doubleToRawLongBits___double(_r4.d); + _r2.l = -9223372036854775808; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i != 0) goto label32; + XMLVM_SOURCE_POSITION("Math.java", 628) + _r0.d = -0.0; + goto label5; + label32:; + _r0 = _r6; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_min___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_min___float_float] + XMLVM_ENTER_METHOD("java.lang.Math", "min", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.f = n1; + _r3.f = n2; + XMLVM_SOURCE_POSITION("Math.java", 652) + _r0.i = _r2.f > _r3.f ? 1 : (_r2.f == _r3.f ? 0 : -1); + if (_r0.i <= 0) goto label6; + _r0 = _r3; + label5:; + XMLVM_SOURCE_POSITION("Math.java", 653) + XMLVM_SOURCE_POSITION("Math.java", 667) + XMLVM_EXIT_METHOD() + return _r0.f; + label6:; + XMLVM_SOURCE_POSITION("Math.java", 655) + _r0.i = _r2.f > _r3.f ? 1 : (_r2.f == _r3.f ? 0 : -1); + if (_r0.i >= 0) goto label12; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Math.java", 656) + goto label5; + label12:; + XMLVM_SOURCE_POSITION("Math.java", 659) + _r0.i = _r2.f > _r3.f ? 1 : (_r2.f == _r3.f ? 0 : -1); + if (_r0.i == 0) goto label19; + XMLVM_SOURCE_POSITION("Math.java", 660) + _r0.f = NaN; + goto label5; + label19:; + XMLVM_SOURCE_POSITION("Math.java", 664) + _r0.i = java_lang_Float_floatToRawIntBits___float(_r2.f); + _r1.i = -2147483648; + if (_r0.i != _r1.i) goto label30; + XMLVM_SOURCE_POSITION("Math.java", 665) + _r0.f = -0.0; + goto label5; + label30:; + _r0 = _r3; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Math_min___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_min___int_int] + XMLVM_ENTER_METHOD("java.lang.Math", "min", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.i = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Math.java", 681) + if (_r1.i >= _r2.i) goto label4; + _r0 = _r1; + label3:; + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + _r0 = _r2; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Math_min___long_long(JAVA_LONG n1, JAVA_LONG n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_min___long_long] + XMLVM_ENTER_METHOD("java.lang.Math", "min", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.l = n1; + _r4.l = n2; + XMLVM_SOURCE_POSITION("Math.java", 695) + _r0.i = _r2.l > _r4.l ? 1 : (_r2.l == _r4.l ? 0 : -1); + if (_r0.i >= 0) goto label6; + _r0 = _r2; + label5:; + XMLVM_EXIT_METHOD() + return _r0.l; + label6:; + _r0 = _r4; + goto label5; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_pow___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_rint___double(JAVA_DOUBLE n1)] + +JAVA_LONG java_lang_Math_round___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_round___double] + XMLVM_ENTER_METHOD("java.lang.Math", "round", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.d = n1; + XMLVM_SOURCE_POSITION("Math.java", 777) + _r0.i = _r2.d > _r2.d ? 1 : (_r2.d == _r2.d ? 0 : -1); + if (_r0.i == 0) goto label7; + XMLVM_SOURCE_POSITION("Math.java", 778) + _r0.l = 0; + label6:; + XMLVM_SOURCE_POSITION("Math.java", 780) + XMLVM_EXIT_METHOD() + return _r0.l; + label7:; + _r0.d = 0.5; + _r0.d = _r0.d + _r2.d; + _r0.d = java_lang_Math_floor___double(_r0.d); + _r0.l = (JAVA_LONG) _r0.d; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Math_round___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_round___float] + XMLVM_ENTER_METHOD("java.lang.Math", "round", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.f = n1; + XMLVM_SOURCE_POSITION("Math.java", 804) + _r0.i = _r2.f > _r2.f ? 1 : (_r2.f == _r2.f ? 0 : -1); + if (_r0.i == 0) goto label6; + XMLVM_SOURCE_POSITION("Math.java", 805) + _r0.i = 0; + label5:; + XMLVM_SOURCE_POSITION("Math.java", 807) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.f = 0.5; + _r0.f = _r0.f + _r2.f; + _r0.d = (JAVA_DOUBLE) _r0.f; + _r0.d = java_lang_Math_floor___double(_r0.d); + _r0.i = (JAVA_INT) _r0.d; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_signum___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_signum___double] + XMLVM_ENTER_METHOD("java.lang.Math", "signum", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.d = n1; + XMLVM_SOURCE_POSITION("Math.java", 830) + + + // Red class access removed: java.lang.StrictMath::signum + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_signum___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_signum___float] + XMLVM_ENTER_METHOD("java.lang.Math", "signum", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.f = n1; + XMLVM_SOURCE_POSITION("Math.java", 853) + + + // Red class access removed: java.lang.StrictMath::signum + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_sin___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_sinh___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_sqrt___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_tan___double(JAVA_DOUBLE n1)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_tanh___double(JAVA_DOUBLE n1)] + +JAVA_DOUBLE java_lang_Math_random__() +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_random__] + XMLVM_ENTER_METHOD("java.lang.Math", "random", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("Math.java", 964) + _r0.o = java_lang_Math_GET_random(); + if (_r0.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("Math.java", 965) + + + // Red class access removed: java.util.Random::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Random:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_lang_Math_PUT_random( _r0.o); + label11:; + XMLVM_SOURCE_POSITION("Math.java", 967) + _r0.o = java_lang_Math_GET_random(); + + + // Red class access removed: java.util.Random::nextDouble + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_toRadians___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_toRadians___double] + XMLVM_ENTER_METHOD("java.lang.Math", "toRadians", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.d = n1; + XMLVM_SOURCE_POSITION("Math.java", 988) + _r0.d = 180.0; + _r0.d = _r4.d / _r0.d; + _r2.d = 3.141592653589793; + _r0.d = _r0.d * _r2.d; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_toDegrees___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_toDegrees___double] + XMLVM_ENTER_METHOD("java.lang.Math", "toDegrees", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.d = n1; + XMLVM_SOURCE_POSITION("Math.java", 1009) + _r0.d = 180.0; + _r0.d = _r0.d * _r4.d; + _r2.d = 3.141592653589793; + _r0.d = _r0.d / _r2.d; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_ulp___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_ulp___double] + XMLVM_ENTER_METHOD("java.lang.Math", "ulp", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.d = n1; + _r2.d = 1.7976931348623157E308; + XMLVM_SOURCE_POSITION("Math.java", 1033) + _r0.i = java_lang_Double_isInfinite___double(_r4.d); + if (_r0.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Math.java", 1034) + _r0.d = Infinity; + label13:; + XMLVM_SOURCE_POSITION("Math.java", 1039) + XMLVM_EXIT_METHOD() + return _r0.d; + label14:; + XMLVM_SOURCE_POSITION("Math.java", 1035) + _r0.i = _r4.d > _r2.d ? 1 : (_r4.d == _r2.d ? 0 : -1); + if (_r0.i == 0) goto label27; + _r0.d = -1.7976931348623157E308; + _r0.i = _r4.d > _r0.d ? 1 : (_r4.d == _r0.d ? 0 : -1); + if (_r0.i != 0) goto label39; + label27:; + XMLVM_SOURCE_POSITION("Math.java", 1036) + _r0.d = 2.0; + _r2.d = 971.0; + _r0.d = java_lang_Math_pow___double_double(_r0.d, _r2.d); + goto label13; + label39:; + XMLVM_SOURCE_POSITION("Math.java", 1038) + _r0.d = java_lang_Math_abs___double(_r4.d); + _r2.d = java_lang_Math_nextafter___double_double(_r0.d, _r2.d); + _r0.d = _r2.d - _r0.d; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_ulp___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_ulp___float] + XMLVM_ENTER_METHOD("java.lang.Math", "ulp", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.f = n1; + _r1.f = 3.4028235E38; + XMLVM_SOURCE_POSITION("Math.java", 1063) + _r0.i = java_lang_Float_isNaN___float(_r4.f); + if (_r0.i == 0) goto label12; + XMLVM_SOURCE_POSITION("Math.java", 1064) + _r0.f = NaN; + label11:; + XMLVM_SOURCE_POSITION("Math.java", 1071) + XMLVM_EXIT_METHOD() + return _r0.f; + label12:; + XMLVM_SOURCE_POSITION("Math.java", 1065) + _r0.i = java_lang_Float_isInfinite___float(_r4.f); + if (_r0.i == 0) goto label21; + XMLVM_SOURCE_POSITION("Math.java", 1066) + _r0.f = Infinity; + goto label11; + label21:; + XMLVM_SOURCE_POSITION("Math.java", 1067) + _r0.i = _r4.f > _r1.f ? 1 : (_r4.f == _r1.f ? 0 : -1); + if (_r0.i == 0) goto label32; + _r0.f = -3.4028235E38; + _r0.i = _r4.f > _r0.f ? 1 : (_r4.f == _r0.f ? 0 : -1); + if (_r0.i != 0) goto label42; + label32:; + XMLVM_SOURCE_POSITION("Math.java", 1068) + _r0.d = 2.0; + _r2.d = 104.0; + _r0.d = java_lang_Math_pow___double_double(_r0.d, _r2.d); + _r0.f = (JAVA_FLOAT) _r0.d; + goto label11; + label42:; + XMLVM_SOURCE_POSITION("Math.java", 1070) + _r0.f = java_lang_Math_abs___float(_r4.f); + _r1.f = java_lang_Math_nextafterf___float_float(_r0.f, _r1.f); + _r0.f = _r1.f - _r0.f; + goto label11; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_Math_nextafter___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2)] + +//XMLVM_NATIVE[JAVA_FLOAT java_lang_Math_nextafterf___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2)] + +JAVA_DOUBLE java_lang_Math_copySign___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_copySign___double_double] + XMLVM_ENTER_METHOD("java.lang.Math", "copySign", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r6.d = n1; + _r8.d = n2; + XMLVM_SOURCE_POSITION("Math.java", 1092) + _r0.l = java_lang_Double_doubleToRawLongBits___double(_r6.d); + XMLVM_SOURCE_POSITION("Math.java", 1093) + _r2.l = java_lang_Double_doubleToRawLongBits___double(_r8.d); + XMLVM_SOURCE_POSITION("Math.java", 1094) + _r4.l = 9223372036854775807; + _r0.l = _r0.l & _r4.l; + _r4.l = -9223372036854775808; + _r2.l = _r2.l & _r4.l; + _r0.l = _r0.l | _r2.l; + _r0.d = java_lang_Double_longBitsToDouble___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_copySign___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_copySign___float_float] + XMLVM_ENTER_METHOD("java.lang.Math", "copySign", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.f = n1; + _r4.f = n2; + XMLVM_SOURCE_POSITION("Math.java", 1112) + _r0.i = java_lang_Float_floatToRawIntBits___float(_r3.f); + XMLVM_SOURCE_POSITION("Math.java", 1113) + _r1.i = java_lang_Float_floatToRawIntBits___float(_r4.f); + XMLVM_SOURCE_POSITION("Math.java", 1114) + _r2.i = 2147483647; + _r0.i = _r0.i & _r2.i; + _r2.i = -2147483648; + _r1.i = _r1.i & _r2.i; + _r0.i = _r0.i | _r1.i; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Math_getExponent___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_getExponent___float] + XMLVM_ENTER_METHOD("java.lang.Math", "getExponent", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.f = n1; + XMLVM_SOURCE_POSITION("Math.java", 1128) + _r0.i = java_lang_Float_floatToRawIntBits___float(_r2.f); + XMLVM_SOURCE_POSITION("Math.java", 1129) + _r1.i = 2139095040; + _r0.i = _r0.i & _r1.i; + _r0.i = _r0.i >> 23; + _r1.i = 127; + _r0.i = _r0.i - _r1.i; + XMLVM_SOURCE_POSITION("Math.java", 1130) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Math_getExponent___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_getExponent___double] + XMLVM_ENTER_METHOD("java.lang.Math", "getExponent", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.d = n1; + XMLVM_SOURCE_POSITION("Math.java", 1143) + _r0.l = java_lang_Double_doubleToRawLongBits___double(_r4.d); + XMLVM_SOURCE_POSITION("Math.java", 1144) + _r2.l = 9218868437227405312; + _r0.l = _r0.l & _r2.l; + _r2.i = 52; + _r0.l = _r0.l >> (0x3f & _r2.l); + _r0.i = (JAVA_INT) _r0.l; + _r1.i = 1023; + _r0.i = _r0.i - _r1.i; + XMLVM_SOURCE_POSITION("Math.java", 1145) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_nextAfter___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_nextAfter___double_double] + XMLVM_ENTER_METHOD("java.lang.Math", "nextAfter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r3.d = n1; + _r5.d = n2; + _r1.d = 0.0; + XMLVM_SOURCE_POSITION("Math.java", 1162) + _r0.i = _r1.d > _r3.d ? 1 : (_r1.d == _r3.d ? 0 : -1); + if (_r0.i != 0) goto label12; + _r0.i = _r1.d > _r5.d ? 1 : (_r1.d == _r5.d ? 0 : -1); + if (_r0.i != 0) goto label12; + _r0 = _r5; + label11:; + XMLVM_SOURCE_POSITION("Math.java", 1163) + XMLVM_SOURCE_POSITION("Math.java", 1165) + XMLVM_EXIT_METHOD() + return _r0.d; + label12:; + _r0.d = java_lang_Math_nextafter___double_double(_r3.d, _r5.d); + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_nextAfter___float_double(JAVA_FLOAT n1, JAVA_DOUBLE n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_nextAfter___float_double] + XMLVM_ENTER_METHOD("java.lang.Math", "nextAfter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r7.f = n1; + _r8.d = n2; + _r6.f = 3.4028235E38; + _r5.f = 1.4E-45; + _r4.f = -3.4028235E38; + _r3.f = -1.4E-45; + _r2.f = 0.0; + XMLVM_SOURCE_POSITION("Math.java", 1183) + _r0.i = java_lang_Float_isNaN___float(_r7.f); + if (_r0.i != 0) goto label23; + _r0.i = java_lang_Double_isNaN___double(_r8.d); + if (_r0.i == 0) goto label26; + label23:; + XMLVM_SOURCE_POSITION("Math.java", 1184) + _r0.f = NaN; + label25:; + XMLVM_SOURCE_POSITION("Math.java", 1219) + XMLVM_EXIT_METHOD() + return _r0.f; + label26:; + XMLVM_SOURCE_POSITION("Math.java", 1186) + _r0.i = _r2.f > _r7.f ? 1 : (_r2.f == _r7.f ? 0 : -1); + if (_r0.i != 0) goto label46; + _r0.d = 0.0; + _r0.i = _r0.d > _r8.d ? 1 : (_r0.d == _r8.d ? 0 : -1); + if (_r0.i != 0) goto label46; + XMLVM_SOURCE_POSITION("Math.java", 1187) + _r0.o = __NEW_java_lang_Float(); + XMLVM_CHECK_NPE(0) + java_lang_Float___INIT____double(_r0.o, _r8.d); + //java_lang_Float_floatValue__[8] + XMLVM_CHECK_NPE(0) + _r0.f = (*(JAVA_FLOAT (*)(JAVA_OBJECT)) ((java_lang_Float*) _r0.o)->tib->vtable[8])(_r0.o); + goto label25; + label46:; + XMLVM_SOURCE_POSITION("Math.java", 1189) + _r0.i = _r7.f > _r5.f ? 1 : (_r7.f == _r5.f ? 0 : -1); + if (_r0.i != 0) goto label55; + _r0.d = (JAVA_DOUBLE) _r7.f; + _r0.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r0.i < 0) goto label64; + label55:; + XMLVM_SOURCE_POSITION("Math.java", 1190) + _r0.i = _r7.f > _r3.f ? 1 : (_r7.f == _r3.f ? 0 : -1); + if (_r0.i != 0) goto label73; + _r0.d = (JAVA_DOUBLE) _r7.f; + _r0.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r0.i <= 0) goto label73; + label64:; + XMLVM_SOURCE_POSITION("Math.java", 1191) + _r0.i = _r7.f > _r2.f ? 1 : (_r7.f == _r2.f ? 0 : -1); + if (_r0.i <= 0) goto label70; + _r0 = _r2; + goto label25; + label70:; + _r0.f = -0.0; + goto label25; + label73:; + XMLVM_SOURCE_POSITION("Math.java", 1193) + _r0.i = java_lang_Float_isInfinite___float(_r7.f); + if (_r0.i == 0) goto label92; + _r0.d = (JAVA_DOUBLE) _r7.f; + _r0.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r0.i == 0) goto label92; + XMLVM_SOURCE_POSITION("Math.java", 1194) + _r0.i = _r7.f > _r2.f ? 1 : (_r7.f == _r2.f ? 0 : -1); + if (_r0.i <= 0) goto label90; + _r0 = _r6; + goto label25; + label90:; + _r0 = _r4; + goto label25; + label92:; + XMLVM_SOURCE_POSITION("Math.java", 1196) + _r0.i = _r7.f > _r6.f ? 1 : (_r7.f == _r6.f ? 0 : -1); + if (_r0.i != 0) goto label101; + _r0.d = (JAVA_DOUBLE) _r7.f; + _r0.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r0.i > 0) goto label110; + label101:; + XMLVM_SOURCE_POSITION("Math.java", 1197) + _r0.i = _r7.f > _r4.f ? 1 : (_r7.f == _r4.f ? 0 : -1); + if (_r0.i != 0) goto label120; + _r0.d = (JAVA_DOUBLE) _r7.f; + _r0.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r0.i >= 0) goto label120; + label110:; + XMLVM_SOURCE_POSITION("Math.java", 1198) + _r0.i = _r7.f > _r2.f ? 1 : (_r7.f == _r2.f ? 0 : -1); + if (_r0.i <= 0) goto label117; + _r0.f = Infinity; + goto label25; + label117:; + XMLVM_SOURCE_POSITION("Math.java", 1199) + _r0.f = -Infinity; + goto label25; + label120:; + XMLVM_SOURCE_POSITION("Math.java", 1201) + _r0.d = (JAVA_DOUBLE) _r7.f; + _r0.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r0.i <= 0) goto label159; + XMLVM_SOURCE_POSITION("Math.java", 1202) + _r0.i = _r7.f > _r2.f ? 1 : (_r7.f == _r2.f ? 0 : -1); + if (_r0.i <= 0) goto label140; + XMLVM_SOURCE_POSITION("Math.java", 1203) + _r0.i = java_lang_Float_floatToIntBits___float(_r7.f); + _r0.i = _r0.i + 1; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label25; + label140:; + XMLVM_SOURCE_POSITION("Math.java", 1205) + _r0.i = _r7.f > _r2.f ? 1 : (_r7.f == _r2.f ? 0 : -1); + if (_r0.i >= 0) goto label156; + XMLVM_SOURCE_POSITION("Math.java", 1206) + _r0.i = java_lang_Float_floatToIntBits___float(_r7.f); + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label25; + label156:; + _r0 = _r5; + XMLVM_SOURCE_POSITION("Math.java", 1208) + goto label25; + label159:; + XMLVM_SOURCE_POSITION("Math.java", 1210) + _r0.d = (JAVA_DOUBLE) _r7.f; + _r0.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r0.i >= 0) goto label199; + XMLVM_SOURCE_POSITION("Math.java", 1211) + _r0.i = _r7.f > _r2.f ? 1 : (_r7.f == _r2.f ? 0 : -1); + if (_r0.i <= 0) goto label180; + XMLVM_SOURCE_POSITION("Math.java", 1212) + _r0.i = java_lang_Float_floatToIntBits___float(_r7.f); + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label25; + label180:; + XMLVM_SOURCE_POSITION("Math.java", 1214) + _r0.i = _r7.f > _r2.f ? 1 : (_r7.f == _r2.f ? 0 : -1); + if (_r0.i >= 0) goto label196; + XMLVM_SOURCE_POSITION("Math.java", 1215) + _r0.i = java_lang_Float_floatToIntBits___float(_r7.f); + _r0.i = _r0.i + 1; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label25; + label196:; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Math.java", 1217) + goto label25; + label199:; + _r0.o = __NEW_java_lang_Float(); + XMLVM_CHECK_NPE(0) + java_lang_Float___INIT____double(_r0.o, _r8.d); + //java_lang_Float_floatValue__[8] + XMLVM_CHECK_NPE(0) + _r0.f = (*(JAVA_FLOAT (*)(JAVA_OBJECT)) ((java_lang_Float*) _r0.o)->tib->vtable[8])(_r0.o); + goto label25; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_nextUp___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_nextUp___double] + XMLVM_ENTER_METHOD("java.lang.Math", "nextUp", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r7.d = n1; + _r5.l = 1; + _r3.d = Infinity; + _r1.d = 0.0; + XMLVM_SOURCE_POSITION("Math.java", 1232) + _r0.i = java_lang_Double_isNaN___double(_r7.d); + if (_r0.i == 0) goto label15; + XMLVM_SOURCE_POSITION("Math.java", 1233) + _r0.d = NaN; + label14:; + XMLVM_SOURCE_POSITION("Math.java", 1243) + XMLVM_EXIT_METHOD() + return _r0.d; + label15:; + XMLVM_SOURCE_POSITION("Math.java", 1235) + _r0.i = _r7.d > _r3.d ? 1 : (_r7.d == _r3.d ? 0 : -1); + if (_r0.i != 0) goto label21; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Math.java", 1236) + goto label14; + label21:; + XMLVM_SOURCE_POSITION("Math.java", 1238) + _r0.i = _r1.d > _r7.d ? 1 : (_r1.d == _r7.d ? 0 : -1); + if (_r0.i != 0) goto label28; + XMLVM_SOURCE_POSITION("Math.java", 1239) + _r0.d = 4.9E-324; + goto label14; + label28:; + XMLVM_SOURCE_POSITION("Math.java", 1240) + _r0.i = _r1.d > _r7.d ? 1 : (_r1.d == _r7.d ? 0 : -1); + if (_r0.i >= 0) goto label42; + XMLVM_SOURCE_POSITION("Math.java", 1241) + _r0.l = java_lang_Double_doubleToLongBits___double(_r7.d); + _r0.l = _r0.l + _r5.l; + _r0.d = java_lang_Double_longBitsToDouble___long(_r0.l); + goto label14; + label42:; + _r0.l = java_lang_Double_doubleToLongBits___double(_r7.d); + _r0.l = _r0.l - _r5.l; + _r0.d = java_lang_Double_longBitsToDouble___long(_r0.l); + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_nextUp___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_nextUp___float] + XMLVM_ENTER_METHOD("java.lang.Math", "nextUp", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.f = n1; + _r2.f = Infinity; + _r1.f = 0.0; + XMLVM_SOURCE_POSITION("Math.java", 1257) + _r0.i = java_lang_Float_isNaN___float(_r3.f); + if (_r0.i == 0) goto label12; + XMLVM_SOURCE_POSITION("Math.java", 1258) + _r0.f = NaN; + label11:; + XMLVM_SOURCE_POSITION("Math.java", 1268) + XMLVM_EXIT_METHOD() + return _r0.f; + label12:; + XMLVM_SOURCE_POSITION("Math.java", 1260) + _r0.i = _r3.f > _r2.f ? 1 : (_r3.f == _r2.f ? 0 : -1); + if (_r0.i != 0) goto label18; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Math.java", 1261) + goto label11; + label18:; + XMLVM_SOURCE_POSITION("Math.java", 1263) + _r0.i = _r1.f > _r3.f ? 1 : (_r1.f == _r3.f ? 0 : -1); + if (_r0.i != 0) goto label24; + XMLVM_SOURCE_POSITION("Math.java", 1264) + _r0.f = 1.4E-45; + goto label11; + label24:; + XMLVM_SOURCE_POSITION("Math.java", 1265) + _r0.i = _r1.f > _r3.f ? 1 : (_r1.f == _r3.f ? 0 : -1); + if (_r0.i >= 0) goto label39; + XMLVM_SOURCE_POSITION("Math.java", 1266) + _r0.i = java_lang_Float_floatToIntBits___float(_r3.f); + _r0.i = _r0.i + 1; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label11; + label39:; + _r0.i = java_lang_Float_floatToIntBits___float(_r3.f); + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Math_scalb___double_int(JAVA_DOUBLE n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_scalb___double_int] + XMLVM_ENTER_METHOD("java.lang.Math", "scalb", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r8.d = n1; + _r10.i = n2; + XMLVM_SOURCE_POSITION("Math.java", 1285) + _r0.i = java_lang_Double_isNaN___double(_r8.d); + if (_r0.i != 0) goto label18; + _r0.i = java_lang_Double_isInfinite___double(_r8.d); + if (_r0.i != 0) goto label18; + _r0.d = 0.0; + _r0.i = _r0.d > _r8.d ? 1 : (_r0.d == _r8.d ? 0 : -1); + if (_r0.i != 0) goto label19; + label18:; + XMLVM_SOURCE_POSITION("Math.java", 1334) + XMLVM_EXIT_METHOD() + return _r8.d; + label19:; + XMLVM_SOURCE_POSITION("Math.java", 1289) + _r0.l = java_lang_Double_doubleToLongBits___double(_r8.d); + XMLVM_SOURCE_POSITION("Math.java", 1291) + _r2.l = -9223372036854775808; + _r2.l = _r2.l & _r0.l; + _r4.l = 9218868437227405312; + _r4.l = _r4.l & _r0.l; + _r6.i = 52; + _r4.l = _r4.l >> (0x3f & _r6.l); + _r6.l = 1023; + _r4.l = _r4.l - _r6.l; + _r6.l = (JAVA_LONG) _r10.i; + _r4.l = _r4.l + _r6.l; + _r6.l = 9223372036854775807; + _r6.l = _r6.l & _r0.l; + XMLVM_SOURCE_POSITION("Math.java", 1297) + _r10.i = java_lang_Long_numberOfLeadingZeros___long(_r6.l); + XMLVM_SOURCE_POSITION("Math.java", 1299) + _r6.i = 12; + _r10.i = _r10.i - _r6.i; + if (_r10.i >= 0) goto label68; + XMLVM_SOURCE_POSITION("Math.java", 1300) + XMLVM_SOURCE_POSITION("Math.java", 1302) + _r10.i = 0; + label53:; + XMLVM_SOURCE_POSITION("Math.java", 1306) + _r6.l = 1023; + _r6.i = _r4.l > _r6.l ? 1 : (_r4.l == _r6.l ? 0 : -1); + if (_r6.i <= 0) goto label74; + XMLVM_SOURCE_POSITION("Math.java", 1307) + _r0.d = 0.0; + _r8.i = _r8.d > _r0.d ? 1 : (_r8.d == _r0.d ? 0 : -1); + if (_r8.i <= 0) goto label71; + _r8.d = Infinity; + goto label18; + label68:; + XMLVM_SOURCE_POSITION("Math.java", 1304) + _r6.l = (JAVA_LONG) _r10.i; + _r4.l = _r4.l - _r6.l; + goto label53; + label71:; + _r8.d = -Infinity; + goto label18; + label74:; + XMLVM_SOURCE_POSITION("Math.java", 1312) + _r6.l = -1023; + _r6.i = _r4.l > _r6.l ? 1 : (_r4.l == _r6.l ? 0 : -1); + if (_r6.i > 0) goto label129; + XMLVM_SOURCE_POSITION("Math.java", 1314) + _r6.l = 1023; + _r4.l = _r4.l + _r6.l; + _r6.l = (JAVA_LONG) _r10.i; + _r4.l = _r4.l + _r6.l; + XMLVM_SOURCE_POSITION("Math.java", 1315) + _r8.d = java_lang_Math_abs___double(_r8.d); + _r6.d = 2.2250738585072014E-308; + _r8.i = _r8.d > _r6.d ? 1 : (_r8.d == _r6.d ? 0 : -1); + if (_r8.i >= 0) goto label111; + XMLVM_SOURCE_POSITION("Math.java", 1317) + _r8.l = 4503599627370495; + _r8.l = _r8.l & _r0.l; + _r8.l = java_lang_Math_shiftLongBits___long_long(_r8.l, _r4.l); + label105:; + _r8.l = _r8.l | _r2.l; + _r8.d = java_lang_Double_longBitsToDouble___long(_r8.l); + goto label18; + label111:; + XMLVM_SOURCE_POSITION("Math.java", 1320) + _r8.l = 4503599627370495; + _r8.l = _r8.l & _r0.l; + _r0.l = 4503599627370496; + _r8.l = _r8.l | _r0.l; + _r0.l = 1; + _r0.l = _r4.l - _r0.l; + _r8.l = java_lang_Math_shiftLongBits___long_long(_r8.l, _r0.l); + goto label105; + label129:; + XMLVM_SOURCE_POSITION("Math.java", 1324) + _r8.d = java_lang_Math_abs___double(_r8.d); + _r6.d = 2.2250738585072014E-308; + _r8.i = _r8.d > _r6.d ? 1 : (_r8.d == _r6.d ? 0 : -1); + if (_r8.i < 0) goto label153; + XMLVM_SOURCE_POSITION("Math.java", 1326) + _r8.l = 1023; + _r8.l = _r8.l + _r4.l; + _r10.i = 52; + _r8.l = _r8.l << (0x3f & _r10.l); + _r4.l = 4503599627370495; + _r0.l = _r0.l & _r4.l; + _r8.l = _r8.l | _r0.l; + goto label105; + label153:; + XMLVM_SOURCE_POSITION("Math.java", 1330) + _r8.l = 1023; + _r8.l = _r8.l + _r4.l; + _r4.i = 52; + _r8.l = _r8.l << (0x3f & _r4.l); + _r10.i = _r10.i + 1; + _r0.l = _r0.l << (0x3f & _r10.l); + _r4.l = 4503599627370495; + _r0.l = _r0.l & _r4.l; + _r8.l = _r8.l | _r0.l; + goto label105; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Math_scalb___float_int(JAVA_FLOAT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_scalb___float_int] + XMLVM_ENTER_METHOD("java.lang.Math", "scalb", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.f = n1; + _r11.i = n2; + _r8.i = 127; + _r7.f = 1.17549435E-38; + _r6.f = 0.0; + _r5.i = 8388607; + XMLVM_SOURCE_POSITION("Math.java", 1349) + _r0.i = java_lang_Float_isNaN___float(_r10.f); + if (_r0.i != 0) goto label24; + _r0.i = java_lang_Float_isInfinite___float(_r10.f); + if (_r0.i != 0) goto label24; + _r0.i = _r6.f > _r10.f ? 1 : (_r6.f == _r10.f ? 0 : -1); + if (_r0.i != 0) goto label26; + label24:; + _r0 = _r10; + label25:; + XMLVM_SOURCE_POSITION("Math.java", 1350) + XMLVM_SOURCE_POSITION("Math.java", 1394) + XMLVM_EXIT_METHOD() + return _r0.f; + label26:; + XMLVM_SOURCE_POSITION("Math.java", 1352) + _r0.i = java_lang_Float_floatToIntBits___float(_r10.f); + XMLVM_SOURCE_POSITION("Math.java", 1353) + _r1.i = -2147483648; + _r1.i = _r1.i & _r0.i; + _r2.i = 2139095040; + _r2.i = _r2.i & _r0.i; + _r2.i = _r2.i >> 23; + _r2.i = _r2.i - _r8.i; + _r2.i = _r2.i + _r11.i; + _r3.i = 2147483647; + _r3.i = _r3.i & _r0.i; + XMLVM_SOURCE_POSITION("Math.java", 1357) + _r3.i = java_lang_Integer_numberOfLeadingZeros___int(_r3.i); + XMLVM_SOURCE_POSITION("Math.java", 1359) + _r4.i = 9; + _r3.i = _r3.i - _r4.i; + if (_r3.i >= 0) goto label66; + XMLVM_SOURCE_POSITION("Math.java", 1360) + XMLVM_SOURCE_POSITION("Math.java", 1362) + _r3.i = 0; + _r9 = _r3; + _r3 = _r2; + _r2 = _r9; + label57:; + XMLVM_SOURCE_POSITION("Math.java", 1366) + if (_r3.i <= _r8.i) goto label74; + XMLVM_SOURCE_POSITION("Math.java", 1367) + _r0.i = _r10.f > _r6.f ? 1 : (_r10.f == _r6.f ? 0 : -1); + if (_r0.i <= 0) goto label71; + _r0.f = Infinity; + goto label25; + label66:; + XMLVM_SOURCE_POSITION("Math.java", 1364) + _r2.i = _r2.i - _r3.i; + _r9 = _r3; + _r3 = _r2; + _r2 = _r9; + goto label57; + label71:; + _r0.f = -Infinity; + goto label25; + label74:; + XMLVM_SOURCE_POSITION("Math.java", 1372) + _r4.i = -127; + if (_r3.i > _r4.i) goto label111; + XMLVM_SOURCE_POSITION("Math.java", 1374) + _r3.i = _r3.i + 127; + _r2.i = _r2.i + _r3.i; + XMLVM_SOURCE_POSITION("Math.java", 1375) + _r3.f = java_lang_Math_abs___float(_r10.f); + _r3.i = _r3.f > _r7.f ? 1 : (_r3.f == _r7.f ? 0 : -1); + if (_r3.i >= 0) goto label100; + XMLVM_SOURCE_POSITION("Math.java", 1377) + _r0.i = _r0.i & _r5.i; + _r0.i = java_lang_Math_shiftIntBits___int_int(_r0.i, _r2.i); + label94:; + _r0.i = _r0.i | _r1.i; + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label25; + label100:; + XMLVM_SOURCE_POSITION("Math.java", 1380) + _r0.i = _r0.i & _r5.i; + _r3.i = 8388608; + _r0.i = _r0.i | _r3.i; + _r3.i = 1; + _r2.i = _r2.i - _r3.i; + _r0.i = java_lang_Math_shiftIntBits___int_int(_r0.i, _r2.i); + goto label94; + label111:; + XMLVM_SOURCE_POSITION("Math.java", 1384) + _r4.f = java_lang_Math_abs___float(_r10.f); + _r4.i = _r4.f > _r7.f ? 1 : (_r4.f == _r7.f ? 0 : -1); + if (_r4.i < 0) goto label126; + XMLVM_SOURCE_POSITION("Math.java", 1386) + _r2.i = _r3.i + 127; + _r2.i = _r2.i << 23; + _r0.i = _r0.i & _r5.i; + _r0.i = _r0.i | _r2.i; + goto label94; + label126:; + XMLVM_SOURCE_POSITION("Math.java", 1390) + _r3.i = _r3.i + 127; + _r3.i = _r3.i << 23; + _r2.i = _r2.i + 1; + _r0.i = _r0.i << _r2.i; + _r0.i = _r0.i & _r5.i; + _r0.i = _r0.i | _r3.i; + goto label94; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Math_shiftIntBits___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_shiftIntBits___int_int] + XMLVM_ENTER_METHOD("java.lang.Math", "shiftIntBits", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.i = n1; + _r6.i = n2; + _r3.i = 0; + _r4.i = 1; + XMLVM_SOURCE_POSITION("Math.java", 1400) + if (_r6.i <= 0) goto label7; + XMLVM_SOURCE_POSITION("Math.java", 1401) + _r0.i = _r5.i << _r6.i; + label6:; + XMLVM_SOURCE_POSITION("Math.java", 1420) + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + XMLVM_SOURCE_POSITION("Math.java", 1404) + _r0.i = -_r6.i; + _r1.i = 2147483647; + _r1.i = _r1.i & _r5.i; + XMLVM_SOURCE_POSITION("Math.java", 1405) + _r1.i = java_lang_Integer_numberOfLeadingZeros___int(_r1.i); + _r2.i = 32; + _r2.i = _r2.i - _r0.i; + if (_r1.i <= _r2.i) goto label23; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Math.java", 1406) + goto label6; + label23:; + XMLVM_SOURCE_POSITION("Math.java", 1408) + _r1.i = _r5.i >> (0x1f & _r0.i); + _r2.i = _r0.i - _r4.i; + _r2.i = _r5.i >> (0x1f & _r2.i); + _r2.i = _r2.i & 1; + if (_r2.i != _r4.i) goto label60; + XMLVM_SOURCE_POSITION("Math.java", 1409) + _r2 = _r4; + label34:; + XMLVM_SOURCE_POSITION("Math.java", 1410) + if (_r2.i == 0) goto label62; + XMLVM_SOURCE_POSITION("Math.java", 1411) + _r2.i = java_lang_Integer_numberOfTrailingZeros___int(_r5.i); + _r3.i = _r0.i - _r4.i; + if (_r2.i >= _r3.i) goto label46; + XMLVM_SOURCE_POSITION("Math.java", 1412) + _r1.i = _r1.i + 1; + label46:; + XMLVM_SOURCE_POSITION("Math.java", 1414) + _r2.i = java_lang_Integer_numberOfTrailingZeros___int(_r5.i); + _r0.i = _r0.i - _r4.i; + if (_r2.i != _r0.i) goto label62; + XMLVM_SOURCE_POSITION("Math.java", 1415) + _r0.i = _r1.i & 1; + if (_r0.i != _r4.i) goto label62; + XMLVM_SOURCE_POSITION("Math.java", 1416) + _r0.i = _r1.i + 1; + goto label6; + label60:; + _r2 = _r3; + goto label34; + label62:; + _r0 = _r1; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Math_shiftLongBits___long_long(JAVA_LONG n1, JAVA_LONG n2) +{ + XMLVM_CLASS_INIT(java_lang_Math) + //XMLVM_BEGIN_WRAPPER[java_lang_Math_shiftLongBits___long_long] + XMLVM_ENTER_METHOD("java.lang.Math", "shiftLongBits", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r10.l = n1; + _r12.l = n2; + _r6.l = 0; + _r8.l = 1; + XMLVM_SOURCE_POSITION("Math.java", 1426) + _r0.i = _r12.l > _r6.l ? 1 : (_r12.l == _r6.l ? 0 : -1); + if (_r0.i <= 0) goto label12; + XMLVM_SOURCE_POSITION("Math.java", 1427) + _r0.i = (JAVA_INT) _r12.l; + _r0.l = _r10.l << (0x3f & _r0.l); + label11:; + XMLVM_SOURCE_POSITION("Math.java", 1448) + XMLVM_EXIT_METHOD() + return _r0.l; + label12:; + XMLVM_SOURCE_POSITION("Math.java", 1430) + _r0.l = -_r12.l; + _r2.l = 9223372036854775807; + _r2.l = _r2.l & _r10.l; + XMLVM_SOURCE_POSITION("Math.java", 1431) + _r2.i = java_lang_Long_numberOfLeadingZeros___long(_r2.l); + _r2.l = (JAVA_LONG) _r2.i; + _r4.l = 64; + _r4.l = _r4.l - _r0.l; + _r2.i = _r2.l > _r4.l ? 1 : (_r2.l == _r4.l ? 0 : -1); + if (_r2.i <= 0) goto label33; + _r0 = _r6; + XMLVM_SOURCE_POSITION("Math.java", 1432) + goto label11; + label33:; + XMLVM_SOURCE_POSITION("Math.java", 1434) + _r2.i = (JAVA_INT) _r0.l; + _r2.l = _r10.l >> (0x3f & _r2.l); + _r4.l = _r0.l - _r8.l; + _r4.i = (JAVA_INT) _r4.l; + _r4.l = _r10.l >> (0x3f & _r4.l); + _r4.l = _r4.l & _r8.l; + _r4.i = _r4.l > _r8.l ? 1 : (_r4.l == _r8.l ? 0 : -1); + if (_r4.i != 0) goto label80; + XMLVM_SOURCE_POSITION("Math.java", 1435) + _r4.i = 1; + label47:; + XMLVM_SOURCE_POSITION("Math.java", 1436) + if (_r4.i == 0) goto label82; + XMLVM_SOURCE_POSITION("Math.java", 1439) + _r4.i = java_lang_Long_numberOfTrailingZeros___long(_r10.l); + _r4.l = (JAVA_LONG) _r4.i; + _r6.l = _r0.l - _r8.l; + _r4.i = _r4.l > _r6.l ? 1 : (_r4.l == _r6.l ? 0 : -1); + if (_r4.i >= 0) goto label61; + XMLVM_SOURCE_POSITION("Math.java", 1440) + _r2.l = _r2.l + _r8.l; + label61:; + XMLVM_SOURCE_POSITION("Math.java", 1442) + _r4.i = java_lang_Long_numberOfTrailingZeros___long(_r10.l); + _r4.l = (JAVA_LONG) _r4.i; + _r0.l = _r0.l - _r8.l; + _r0.i = _r4.l > _r0.l ? 1 : (_r4.l == _r0.l ? 0 : -1); + if (_r0.i != 0) goto label82; + XMLVM_SOURCE_POSITION("Math.java", 1443) + _r0.l = _r2.l & _r8.l; + _r0.i = _r0.l > _r8.l ? 1 : (_r0.l == _r8.l ? 0 : -1); + if (_r0.i != 0) goto label82; + XMLVM_SOURCE_POSITION("Math.java", 1444) + _r0.l = _r2.l + _r8.l; + goto label11; + label80:; + _r4.i = 0; + goto label47; + label82:; + _r0 = _r2; + goto label11; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Math.h b/tests/nbody-java/java_lang_Math.h new file mode 100644 index 0000000000000..2f2b32b6df747 --- /dev/null +++ b/tests/nbody-java/java_lang_Math.h @@ -0,0 +1,155 @@ +#ifndef __JAVA_LANG_MATH__ +#define __JAVA_LANG_MATH__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Math 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +// Class declarations for java.lang.Math +XMLVM_DEFINE_CLASS(java_lang_Math, 6, XMLVM_ITABLE_SIZE_java_lang_Math) + +extern JAVA_OBJECT __CLASS_java_lang_Math; +extern JAVA_OBJECT __CLASS_java_lang_Math_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Math_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Math_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Math +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Math \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Math \ + } java_lang_Math + +struct java_lang_Math { + __TIB_DEFINITION_java_lang_Math* tib; + struct { + __INSTANCE_FIELDS_java_lang_Math; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Math +#define XMLVM_FORWARD_DECL_java_lang_Math +typedef struct java_lang_Math java_lang_Math; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Math 6 + +void __INIT_java_lang_Math(); +void __INIT_IMPL_java_lang_Math(); +void __DELETE_java_lang_Math(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Math(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Math(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Math(); +JAVA_INT java_lang_Math_GET_FLOAT_EXPONENT_BIAS(); +void java_lang_Math_PUT_FLOAT_EXPONENT_BIAS(JAVA_INT v); +JAVA_INT java_lang_Math_GET_FLOAT_EXPONENT_MASK(); +void java_lang_Math_PUT_FLOAT_EXPONENT_MASK(JAVA_INT v); +JAVA_INT java_lang_Math_GET_DOUBLE_NON_MANTISSA_BITS(); +void java_lang_Math_PUT_DOUBLE_NON_MANTISSA_BITS(JAVA_INT v); +JAVA_INT java_lang_Math_GET_DOUBLE_MANTISSA_BITS(); +void java_lang_Math_PUT_DOUBLE_MANTISSA_BITS(JAVA_INT v); +JAVA_INT java_lang_Math_GET_FLOAT_NON_MANTISSA_BITS(); +void java_lang_Math_PUT_FLOAT_NON_MANTISSA_BITS(JAVA_INT v); +JAVA_INT java_lang_Math_GET_FLOAT_MANTISSA_BITS(); +void java_lang_Math_PUT_FLOAT_MANTISSA_BITS(JAVA_INT v); +JAVA_INT java_lang_Math_GET_DOUBLE_EXPONENT_BIAS(); +void java_lang_Math_PUT_DOUBLE_EXPONENT_BIAS(JAVA_INT v); +JAVA_LONG java_lang_Math_GET_DOUBLE_EXPONENT_MASK(); +void java_lang_Math_PUT_DOUBLE_EXPONENT_MASK(JAVA_LONG v); +JAVA_INT java_lang_Math_GET_FLOAT_MANTISSA_MASK(); +void java_lang_Math_PUT_FLOAT_MANTISSA_MASK(JAVA_INT v); +JAVA_INT java_lang_Math_GET_FLOAT_SIGN_MASK(); +void java_lang_Math_PUT_FLOAT_SIGN_MASK(JAVA_INT v); +JAVA_LONG java_lang_Math_GET_DOUBLE_MANTISSA_MASK(); +void java_lang_Math_PUT_DOUBLE_MANTISSA_MASK(JAVA_LONG v); +JAVA_LONG java_lang_Math_GET_DOUBLE_SIGN_MASK(); +void java_lang_Math_PUT_DOUBLE_SIGN_MASK(JAVA_LONG v); +JAVA_DOUBLE java_lang_Math_GET_E(); +void java_lang_Math_PUT_E(JAVA_DOUBLE v); +JAVA_DOUBLE java_lang_Math_GET_PI(); +void java_lang_Math_PUT_PI(JAVA_DOUBLE v); +JAVA_OBJECT java_lang_Math_GET_random(); +void java_lang_Math_PUT_random(JAVA_OBJECT v); +void java_lang_Math___INIT___(JAVA_OBJECT me); +JAVA_DOUBLE java_lang_Math_abs___double(JAVA_DOUBLE n1); +JAVA_FLOAT java_lang_Math_abs___float(JAVA_FLOAT n1); +JAVA_INT java_lang_Math_abs___int(JAVA_INT n1); +JAVA_LONG java_lang_Math_abs___long(JAVA_LONG n1); +JAVA_DOUBLE java_lang_Math_acos___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_asin___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_atan___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_atan2___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_DOUBLE java_lang_Math_cbrt___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_ceil___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_cos___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_cosh___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_exp___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_expm1___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_floor___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_hypot___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_DOUBLE java_lang_Math_IEEEremainder___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_DOUBLE java_lang_Math_log___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_log10___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_log1p___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_max___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_FLOAT java_lang_Math_max___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2); +JAVA_INT java_lang_Math_max___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_LONG java_lang_Math_max___long_long(JAVA_LONG n1, JAVA_LONG n2); +JAVA_DOUBLE java_lang_Math_min___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_FLOAT java_lang_Math_min___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2); +JAVA_INT java_lang_Math_min___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_LONG java_lang_Math_min___long_long(JAVA_LONG n1, JAVA_LONG n2); +JAVA_DOUBLE java_lang_Math_pow___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_DOUBLE java_lang_Math_rint___double(JAVA_DOUBLE n1); +JAVA_LONG java_lang_Math_round___double(JAVA_DOUBLE n1); +JAVA_INT java_lang_Math_round___float(JAVA_FLOAT n1); +JAVA_DOUBLE java_lang_Math_signum___double(JAVA_DOUBLE n1); +JAVA_FLOAT java_lang_Math_signum___float(JAVA_FLOAT n1); +JAVA_DOUBLE java_lang_Math_sin___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_sinh___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_sqrt___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_tan___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_tanh___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_random__(); +JAVA_DOUBLE java_lang_Math_toRadians___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_toDegrees___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_ulp___double(JAVA_DOUBLE n1); +JAVA_FLOAT java_lang_Math_ulp___float(JAVA_FLOAT n1); +JAVA_DOUBLE java_lang_Math_nextafter___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_FLOAT java_lang_Math_nextafterf___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2); +JAVA_DOUBLE java_lang_Math_copySign___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_FLOAT java_lang_Math_copySign___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2); +JAVA_INT java_lang_Math_getExponent___float(JAVA_FLOAT n1); +JAVA_INT java_lang_Math_getExponent___double(JAVA_DOUBLE n1); +JAVA_DOUBLE java_lang_Math_nextAfter___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2); +JAVA_FLOAT java_lang_Math_nextAfter___float_double(JAVA_FLOAT n1, JAVA_DOUBLE n2); +JAVA_DOUBLE java_lang_Math_nextUp___double(JAVA_DOUBLE n1); +JAVA_FLOAT java_lang_Math_nextUp___float(JAVA_FLOAT n1); +JAVA_DOUBLE java_lang_Math_scalb___double_int(JAVA_DOUBLE n1, JAVA_INT n2); +JAVA_FLOAT java_lang_Math_scalb___float_int(JAVA_FLOAT n1, JAVA_INT n2); +JAVA_INT java_lang_Math_shiftIntBits___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_LONG java_lang_Math_shiftLongBits___long_long(JAVA_LONG n1, JAVA_LONG n2); + +#endif diff --git a/tests/nbody-java/java_lang_NoSuchFieldException.c b/tests/nbody-java/java_lang_NoSuchFieldException.c new file mode 100644 index 0000000000000..a4de2085a914e --- /dev/null +++ b/tests/nbody-java/java_lang_NoSuchFieldException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_lang_NoSuchFieldException.h" + +#define XMLVM_CURRENT_CLASS_NAME NoSuchFieldException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_NoSuchFieldException + +__TIB_DEFINITION_java_lang_NoSuchFieldException __TIB_java_lang_NoSuchFieldException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_NoSuchFieldException, // classInitializer + "java.lang.NoSuchFieldException", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Exception, // extends + sizeof(java_lang_NoSuchFieldException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException; +JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_NoSuchFieldException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_NoSuchFieldException() +{ + staticInitializerLock(&__TIB_java_lang_NoSuchFieldException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_NoSuchFieldException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_NoSuchFieldException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_NoSuchFieldException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_NoSuchFieldException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_NoSuchFieldException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_NoSuchFieldException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.NoSuchFieldException") + __INIT_IMPL_java_lang_NoSuchFieldException(); + } +} + +void __INIT_IMPL_java_lang_NoSuchFieldException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Exception) + __TIB_java_lang_NoSuchFieldException.newInstanceFunc = __NEW_INSTANCE_java_lang_NoSuchFieldException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_NoSuchFieldException.vtable, __TIB_java_lang_Exception.vtable, sizeof(__TIB_java_lang_Exception.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_NoSuchFieldException.numImplementedInterfaces = 1; + __TIB_java_lang_NoSuchFieldException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_NoSuchFieldException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_NoSuchFieldException.itableBegin = &__TIB_java_lang_NoSuchFieldException.itable[0]; + + _STATIC_java_lang_NoSuchFieldException_serialVersionUID = -6143714805279938260; + + __TIB_java_lang_NoSuchFieldException.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_NoSuchFieldException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_NoSuchFieldException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_NoSuchFieldException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_NoSuchFieldException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_NoSuchFieldException.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_NoSuchFieldException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_NoSuchFieldException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_NoSuchFieldException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_NoSuchFieldException); + __TIB_java_lang_NoSuchFieldException.clazz = __CLASS_java_lang_NoSuchFieldException; + __TIB_java_lang_NoSuchFieldException.baseType = JAVA_NULL; + __CLASS_java_lang_NoSuchFieldException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_NoSuchFieldException); + __CLASS_java_lang_NoSuchFieldException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_NoSuchFieldException_1ARRAY); + __CLASS_java_lang_NoSuchFieldException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_NoSuchFieldException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_NoSuchFieldException] + //XMLVM_END_WRAPPER + + __TIB_java_lang_NoSuchFieldException.classInitialized = 1; +} + +void __DELETE_java_lang_NoSuchFieldException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_NoSuchFieldException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_NoSuchFieldException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Exception(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_NoSuchFieldException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_NoSuchFieldException() +{ XMLVM_CLASS_INIT(java_lang_NoSuchFieldException) +java_lang_NoSuchFieldException* me = (java_lang_NoSuchFieldException*) XMLVM_MALLOC(sizeof(java_lang_NoSuchFieldException)); + me->tib = &__TIB_java_lang_NoSuchFieldException; + __INIT_INSTANCE_MEMBERS_java_lang_NoSuchFieldException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_NoSuchFieldException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_NoSuchFieldException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_NoSuchFieldException(); + java_lang_NoSuchFieldException___INIT___(me); + return me; +} + +JAVA_LONG java_lang_NoSuchFieldException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_NoSuchFieldException) + return _STATIC_java_lang_NoSuchFieldException_serialVersionUID; +} + +void java_lang_NoSuchFieldException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_NoSuchFieldException) +_STATIC_java_lang_NoSuchFieldException_serialVersionUID = v; +} + +void java_lang_NoSuchFieldException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_NoSuchFieldException___INIT___] + XMLVM_ENTER_METHOD("java.lang.NoSuchFieldException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("NoSuchFieldException.java", 33) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("NoSuchFieldException.java", 34) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_NoSuchFieldException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_NoSuchFieldException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.NoSuchFieldException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("NoSuchFieldException.java", 44) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("NoSuchFieldException.java", 45) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_NoSuchFieldException.h b/tests/nbody-java/java_lang_NoSuchFieldException.h new file mode 100644 index 0000000000000..4dc14ce937f7a --- /dev/null +++ b/tests/nbody-java/java_lang_NoSuchFieldException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_LANG_NOSUCHFIELDEXCEPTION__ +#define __JAVA_LANG_NOSUCHFIELDEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_NoSuchFieldException 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Exception.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.NoSuchFieldException +XMLVM_DEFINE_CLASS(java_lang_NoSuchFieldException, 8, XMLVM_ITABLE_SIZE_java_lang_NoSuchFieldException) + +extern JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException; +extern JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_NoSuchFieldException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_NoSuchFieldException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_NoSuchFieldException \ + __INSTANCE_FIELDS_java_lang_Exception; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_NoSuchFieldException \ + } java_lang_NoSuchFieldException + +struct java_lang_NoSuchFieldException { + __TIB_DEFINITION_java_lang_NoSuchFieldException* tib; + struct { + __INSTANCE_FIELDS_java_lang_NoSuchFieldException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_NoSuchFieldException +#define XMLVM_FORWARD_DECL_java_lang_NoSuchFieldException +typedef struct java_lang_NoSuchFieldException java_lang_NoSuchFieldException; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_NoSuchFieldException 8 + +void __INIT_java_lang_NoSuchFieldException(); +void __INIT_IMPL_java_lang_NoSuchFieldException(); +void __DELETE_java_lang_NoSuchFieldException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_NoSuchFieldException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_NoSuchFieldException(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_NoSuchFieldException(); +JAVA_LONG java_lang_NoSuchFieldException_GET_serialVersionUID(); +void java_lang_NoSuchFieldException_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_NoSuchFieldException___INIT___(JAVA_OBJECT me); +void java_lang_NoSuchFieldException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_NullPointerException.c b/tests/nbody-java/java_lang_NullPointerException.c new file mode 100644 index 0000000000000..979eecb183838 --- /dev/null +++ b/tests/nbody-java/java_lang_NullPointerException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_lang_NullPointerException.h" + +#define XMLVM_CURRENT_CLASS_NAME NullPointerException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_NullPointerException + +__TIB_DEFINITION_java_lang_NullPointerException __TIB_java_lang_NullPointerException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_NullPointerException, // classInitializer + "java.lang.NullPointerException", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_RuntimeException, // extends + sizeof(java_lang_NullPointerException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_NullPointerException; +JAVA_OBJECT __CLASS_java_lang_NullPointerException_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_NullPointerException_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_NullPointerException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_NullPointerException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_NullPointerException() +{ + staticInitializerLock(&__TIB_java_lang_NullPointerException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_NullPointerException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_NullPointerException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_NullPointerException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_NullPointerException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_NullPointerException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_NullPointerException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.NullPointerException") + __INIT_IMPL_java_lang_NullPointerException(); + } +} + +void __INIT_IMPL_java_lang_NullPointerException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_RuntimeException) + __TIB_java_lang_NullPointerException.newInstanceFunc = __NEW_INSTANCE_java_lang_NullPointerException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_NullPointerException.vtable, __TIB_java_lang_RuntimeException.vtable, sizeof(__TIB_java_lang_RuntimeException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_NullPointerException.numImplementedInterfaces = 1; + __TIB_java_lang_NullPointerException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_NullPointerException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_NullPointerException.itableBegin = &__TIB_java_lang_NullPointerException.itable[0]; + + _STATIC_java_lang_NullPointerException_serialVersionUID = 5162710183389028792; + + __TIB_java_lang_NullPointerException.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_NullPointerException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_NullPointerException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_NullPointerException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_NullPointerException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_NullPointerException.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_NullPointerException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_NullPointerException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_NullPointerException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_NullPointerException); + __TIB_java_lang_NullPointerException.clazz = __CLASS_java_lang_NullPointerException; + __TIB_java_lang_NullPointerException.baseType = JAVA_NULL; + __CLASS_java_lang_NullPointerException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_NullPointerException); + __CLASS_java_lang_NullPointerException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_NullPointerException_1ARRAY); + __CLASS_java_lang_NullPointerException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_NullPointerException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_NullPointerException] + //XMLVM_END_WRAPPER + + __TIB_java_lang_NullPointerException.classInitialized = 1; +} + +void __DELETE_java_lang_NullPointerException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_NullPointerException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_NullPointerException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_RuntimeException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_NullPointerException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_NullPointerException() +{ XMLVM_CLASS_INIT(java_lang_NullPointerException) +java_lang_NullPointerException* me = (java_lang_NullPointerException*) XMLVM_MALLOC(sizeof(java_lang_NullPointerException)); + me->tib = &__TIB_java_lang_NullPointerException; + __INIT_INSTANCE_MEMBERS_java_lang_NullPointerException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_NullPointerException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_NullPointerException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_NullPointerException(); + java_lang_NullPointerException___INIT___(me); + return me; +} + +JAVA_LONG java_lang_NullPointerException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_NullPointerException) + return _STATIC_java_lang_NullPointerException_serialVersionUID; +} + +void java_lang_NullPointerException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_NullPointerException) +_STATIC_java_lang_NullPointerException_serialVersionUID = v; +} + +void java_lang_NullPointerException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_NullPointerException___INIT___] + XMLVM_ENTER_METHOD("java.lang.NullPointerException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("NullPointerException.java", 36) + XMLVM_CHECK_NPE(0) + java_lang_RuntimeException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("NullPointerException.java", 37) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_NullPointerException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_NullPointerException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.NullPointerException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("NullPointerException.java", 47) + XMLVM_CHECK_NPE(0) + java_lang_RuntimeException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("NullPointerException.java", 48) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_NullPointerException.h b/tests/nbody-java/java_lang_NullPointerException.h new file mode 100644 index 0000000000000..cdde118fb2268 --- /dev/null +++ b/tests/nbody-java/java_lang_NullPointerException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_LANG_NULLPOINTEREXCEPTION__ +#define __JAVA_LANG_NULLPOINTEREXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_NullPointerException 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_RuntimeException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.NullPointerException +XMLVM_DEFINE_CLASS(java_lang_NullPointerException, 8, XMLVM_ITABLE_SIZE_java_lang_NullPointerException) + +extern JAVA_OBJECT __CLASS_java_lang_NullPointerException; +extern JAVA_OBJECT __CLASS_java_lang_NullPointerException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_NullPointerException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_NullPointerException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_NullPointerException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_NullPointerException \ + __INSTANCE_FIELDS_java_lang_RuntimeException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_NullPointerException \ + } java_lang_NullPointerException + +struct java_lang_NullPointerException { + __TIB_DEFINITION_java_lang_NullPointerException* tib; + struct { + __INSTANCE_FIELDS_java_lang_NullPointerException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +typedef struct java_lang_NullPointerException java_lang_NullPointerException; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_NullPointerException 8 + +void __INIT_java_lang_NullPointerException(); +void __INIT_IMPL_java_lang_NullPointerException(); +void __DELETE_java_lang_NullPointerException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_NullPointerException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_NullPointerException(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_NullPointerException(); +JAVA_LONG java_lang_NullPointerException_GET_serialVersionUID(); +void java_lang_NullPointerException_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_NullPointerException___INIT___(JAVA_OBJECT me); +void java_lang_NullPointerException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_Number.c b/tests/nbody-java/java_lang_Number.c new file mode 100644 index 0000000000000..5571c52b90d0e --- /dev/null +++ b/tests/nbody-java/java_lang_Number.c @@ -0,0 +1,215 @@ +#include "xmlvm.h" + +#include "java_lang_Number.h" + +#define XMLVM_CURRENT_CLASS_NAME Number +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Number + +__TIB_DEFINITION_java_lang_Number __TIB_java_lang_Number = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Number, // classInitializer + "java.lang.Number", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Number), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Number; +JAVA_OBJECT __CLASS_java_lang_Number_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Number_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Number_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Number_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Number() +{ + staticInitializerLock(&__TIB_java_lang_Number); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Number.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Number.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Number); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Number.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Number.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Number.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Number") + __INIT_IMPL_java_lang_Number(); + } +} + +void __INIT_IMPL_java_lang_Number() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Number.newInstanceFunc = __NEW_INSTANCE_java_lang_Number; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Number.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Number.vtable[6] = (VTABLE_PTR) &java_lang_Number_byteValue__; + __TIB_java_lang_Number.vtable[11] = (VTABLE_PTR) &java_lang_Number_shortValue__; + // Initialize interface information + __TIB_java_lang_Number.numImplementedInterfaces = 1; + __TIB_java_lang_Number.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Number.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_Number.itableBegin = &__TIB_java_lang_Number.itable[0]; + + _STATIC_java_lang_Number_serialVersionUID = -8742448824652078965; + + __TIB_java_lang_Number.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Number.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Number.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Number.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Number.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Number.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Number.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Number.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Number = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Number); + __TIB_java_lang_Number.clazz = __CLASS_java_lang_Number; + __TIB_java_lang_Number.baseType = JAVA_NULL; + __CLASS_java_lang_Number_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Number); + __CLASS_java_lang_Number_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Number_1ARRAY); + __CLASS_java_lang_Number_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Number_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Number] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Number.classInitialized = 1; +} + +void __DELETE_java_lang_Number(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Number] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Number(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Number] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Number() +{ XMLVM_CLASS_INIT(java_lang_Number) +java_lang_Number* me = (java_lang_Number*) XMLVM_MALLOC(sizeof(java_lang_Number)); + me->tib = &__TIB_java_lang_Number; + __INIT_INSTANCE_MEMBERS_java_lang_Number(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Number] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Number() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_Number(); + java_lang_Number___INIT___(me); + return me; +} + +JAVA_LONG java_lang_Number_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Number) + return _STATIC_java_lang_Number_serialVersionUID; +} + +void java_lang_Number_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Number) +_STATIC_java_lang_Number_serialVersionUID = v; +} + +void java_lang_Number___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Number___INIT___] + XMLVM_ENTER_METHOD("java.lang.Number", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Number.java", 33) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Number.java", 34) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Number_byteValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Number_byteValue__] + XMLVM_ENTER_METHOD("java.lang.Number", "byteValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Number.java", 43) + //java_lang_Number_intValue__[9] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Number*) _r1.o)->tib->vtable[9])(_r1.o); + _r0.i = (_r0.i << 24) >> 24; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Number_shortValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Number_shortValue__] + XMLVM_ENTER_METHOD("java.lang.Number", "shortValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Number.java", 83) + //java_lang_Number_intValue__[9] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Number*) _r1.o)->tib->vtable[9])(_r1.o); + _r0.i = (_r0.i << 16) >> 16; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Number.h b/tests/nbody-java/java_lang_Number.h new file mode 100644 index 0000000000000..c1b28c5a84b81 --- /dev/null +++ b/tests/nbody-java/java_lang_Number.h @@ -0,0 +1,72 @@ +#ifndef __JAVA_LANG_NUMBER__ +#define __JAVA_LANG_NUMBER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Number 0 +// Implemented interfaces: +#include "java_io_Serializable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +// Class declarations for java.lang.Number +XMLVM_DEFINE_CLASS(java_lang_Number, 12, XMLVM_ITABLE_SIZE_java_lang_Number) + +extern JAVA_OBJECT __CLASS_java_lang_Number; +extern JAVA_OBJECT __CLASS_java_lang_Number_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Number_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Number_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Number +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Number \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Number \ + } java_lang_Number + +struct java_lang_Number { + __TIB_DEFINITION_java_lang_Number* tib; + struct { + __INSTANCE_FIELDS_java_lang_Number; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Number +#define XMLVM_FORWARD_DECL_java_lang_Number +typedef struct java_lang_Number java_lang_Number; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Number 12 +#define XMLVM_VTABLE_IDX_java_lang_Number_byteValue__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Number_doubleValue__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Number_floatValue__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Number_intValue__ 9 +#define XMLVM_VTABLE_IDX_java_lang_Number_longValue__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Number_shortValue__ 11 + +void __INIT_java_lang_Number(); +void __INIT_IMPL_java_lang_Number(); +void __DELETE_java_lang_Number(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Number(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Number(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Number(); +JAVA_LONG java_lang_Number_GET_serialVersionUID(); +void java_lang_Number_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_Number___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_BYTE java_lang_Number_byteValue__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_DOUBLE java_lang_Number_doubleValue__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_FLOAT java_lang_Number_floatValue__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_Number_intValue__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_LONG java_lang_Number_longValue__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_SHORT java_lang_Number_shortValue__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_Object.c b/tests/nbody-java/java_lang_Object.c new file mode 100644 index 0000000000000..fcc876e75a872 --- /dev/null +++ b/tests/nbody-java/java_lang_Object.c @@ -0,0 +1,1079 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Integer.h" +#include "java_lang_Math.h" +#include "java_lang_Object_AddedMembers.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_Thread.h" +#include "java_util_List.h" +#include "org_xmlvm_runtime_Condition.h" +#include "org_xmlvm_runtime_Mutex.h" + +#include "java_lang_Object.h" + +#define XMLVM_CURRENT_CLASS_NAME Object +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Object + +__TIB_DEFINITION_java_lang_Object __TIB_java_lang_Object = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Object, // classInitializer + "java.lang.Object", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) JAVA_NULL, // extends + sizeof(java_lang_Object), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Object; +JAVA_OBJECT __CLASS_java_lang_Object_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Object_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Object_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_Object_staticMutex; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Object() +{ + staticInitializerLock(&__TIB_java_lang_Object); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Object.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Object.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Object); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Object.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Object.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Object.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Object") + __INIT_IMPL_java_lang_Object(); + } +} + +void __INIT_IMPL_java_lang_Object() +{ + // Initialize vtable for this class + __TIB_java_lang_Object.vtable[0] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Object.vtable[1] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Object.vtable[2] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Object.vtable[3] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Object.vtable[4] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_Object.vtable[5] = (VTABLE_PTR) &java_lang_Object_toString__; + xmlvm_init_native_java_lang_Object(); + // Initialize interface information + __TIB_java_lang_Object.numImplementedInterfaces = 0; + __TIB_java_lang_Object.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_Object_staticMutex = (org_xmlvm_runtime_Mutex*) JAVA_NULL; + + __TIB_java_lang_Object.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Object.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Object.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Object.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Object.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Object.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Object.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Object.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Object = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Object); + __TIB_java_lang_Object.clazz = __CLASS_java_lang_Object; + __TIB_java_lang_Object.baseType = JAVA_NULL; + __CLASS_java_lang_Object_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Object); + __CLASS_java_lang_Object_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Object_1ARRAY); + __CLASS_java_lang_Object_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Object_2ARRAY); + java_lang_Object___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Object] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Object.classInitialized = 1; +} + +void __DELETE_java_lang_Object(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Object] + //XMLVM_END_WRAPPER + // Call the finalizer + (*(void (*)(JAVA_OBJECT)) ((java_lang_Object*) me)->tib->vtable[XMLVM_VTABLE_IDX_java_lang_Object_finalize_java_lang_Object__])(me); +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Object(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + ((java_lang_Object*) me)->fields.java_lang_Object.addedMembers_ = (java_lang_Object_AddedMembers*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Object] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Object() +{ XMLVM_CLASS_INIT(java_lang_Object) +java_lang_Object* me = (java_lang_Object*) XMLVM_MALLOC(sizeof(java_lang_Object)); + me->tib = &__TIB_java_lang_Object; + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Object] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Object() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_Object(); + java_lang_Object___INIT___(me); + return me; +} + +JAVA_OBJECT java_lang_Object_GET_staticMutex() +{ + XMLVM_CLASS_INIT(java_lang_Object) + return _STATIC_java_lang_Object_staticMutex; +} + +void java_lang_Object_PUT_staticMutex(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Object) +_STATIC_java_lang_Object_staticMutex = v; +} + +//XMLVM_NATIVE[void java_lang_Object_initNativeLayer__()] + +void java_lang_Object___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object___INIT___] + XMLVM_ENTER_METHOD("java.lang.Object", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Object.java", 58) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Object_clone__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Object_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[void java_lang_Object_finalize_java_lang_Object__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Object_getClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_INT java_lang_Object_hashCode__(JAVA_OBJECT me)] + +void java_lang_Object_notify__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_notify__] + XMLVM_ENTER_METHOD("java.lang.Object", "notify", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Object.java", 185) + XMLVM_CHECK_NPE(0) + java_lang_Object_notify2__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 186) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_notifyAll__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_notifyAll__] + XMLVM_ENTER_METHOD("java.lang.Object", "notifyAll", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Object.java", 216) + XMLVM_CHECK_NPE(0) + java_lang_Object_notifyAll2__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 217) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Object_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_toString__] + XMLVM_ENTER_METHOD("java.lang.Object", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Object.java", 234) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_Class_getName__(_r1.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + _r1.i = 64; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[4])(_r2.o); + _r1.o = java_lang_Integer_toHexString___int(_r1.i); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_wait__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_wait__] + XMLVM_ENTER_METHOD("java.lang.Object", "wait", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Object.java", 266) + XMLVM_CHECK_NPE(0) + java_lang_Object_wait2__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 267) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_wait___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_wait___long] + XMLVM_ENTER_METHOD("java.lang.Object", "wait", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.l = n1; + XMLVM_SOURCE_POSITION("Object.java", 303) + XMLVM_CHECK_NPE(0) + java_lang_Object_wait2___long(_r0.o, _r1.l); + XMLVM_SOURCE_POSITION("Object.java", 304) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Object_wait___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2)] + +void java_lang_Object_establishLock___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_establishLock___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.Object", "establishLock", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 382) + _r0.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_lock__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 384) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Object*) _r1.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(0) + ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.owningThread_ = _r2.o; + XMLVM_SOURCE_POSITION("Object.java", 386) + _r0.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_unlock__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 387) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_prepareForUnlock__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_prepareForUnlock__] + XMLVM_ENTER_METHOD("java.lang.Object", "prepareForUnlock", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Object.java", 393) + _r0.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_lock__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 395) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Object*) _r2.o)->fields.java_lang_Object.addedMembers_; + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(0) + ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.owningThread_ = _r1.o; + XMLVM_SOURCE_POSITION("Object.java", 397) + _r0.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_unlock__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 398) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_syncLock___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_syncLock___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.Object", "syncLock", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 401) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Object*) _r1.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.instanceMutex_; + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_lock__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 402) + XMLVM_CHECK_NPE(1) + java_lang_Object_establishLock___java_lang_Thread(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("Object.java", 403) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_syncUnlock__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_syncUnlock__] + XMLVM_ENTER_METHOD("java.lang.Object", "syncUnlock", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Object.java", 406) + XMLVM_CHECK_NPE(1) + java_lang_Object_prepareForUnlock__(_r1.o); + XMLVM_SOURCE_POSITION("Object.java", 407) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Object*) _r1.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.instanceMutex_; + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_unlock__(_r0.o); + XMLVM_SOURCE_POSITION("Object.java", 408) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Object_acquireLockRecursive__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_acquireLockRecursive__] + XMLVM_ENTER_METHOD("java.lang.Object", "acquireLockRecursive", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("Object.java", 417) + _r0.i = 0; + XMLVM_SOURCE_POSITION("Object.java", 419) + _r1.o = java_lang_Thread_currentThread__(); + XMLVM_SOURCE_POSITION("Object.java", 420) + _r2.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Mutex_lock__(_r2.o); + XMLVM_SOURCE_POSITION("Object.java", 422) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_; + if (_r2.o != JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("Object.java", 423) + _r2.o = __NEW_java_lang_Object_AddedMembers(); + XMLVM_CHECK_NPE(2) + java_lang_Object_AddedMembers___INIT___(_r2.o); + XMLVM_CHECK_NPE(4) + ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_ = _r2.o; + label21:; + XMLVM_SOURCE_POSITION("Object.java", 425) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(2) + _r2.o = ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.owningThread_; + //java_lang_Thread_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Thread*) _r1.o)->tib->vtable[1])(_r1.o, _r2.o); + if (_r2.i != 0) goto label52; + _r2.i = 1; + _r0 = _r2; + label33:; + XMLVM_SOURCE_POSITION("Object.java", 427) + _r2.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Mutex_unlock__(_r2.o); + XMLVM_SOURCE_POSITION("Object.java", 429) + if (_r0.i == 0) goto label43; + XMLVM_SOURCE_POSITION("Object.java", 430) + XMLVM_CHECK_NPE(4) + java_lang_Object_syncLock___java_lang_Thread(_r4.o, _r1.o); + label43:; + XMLVM_SOURCE_POSITION("Object.java", 432) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(2) + _r3.i = ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_; + _r3.i = _r3.i + 1; + XMLVM_CHECK_NPE(2) + ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_ = _r3.i; + XMLVM_SOURCE_POSITION("Object.java", 435) + XMLVM_EXIT_METHOD() + return _r0.i; + label52:; + _r2.i = 0; + _r0 = _r2; + goto label33; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_releaseLockRecursive__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_releaseLockRecursive__] + XMLVM_ENTER_METHOD("java.lang.Object", "releaseLockRecursive", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Object.java", 443) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_Object*) _r3.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(0) + _r1.i = ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_; + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(0) + ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_ = _r1.i; + XMLVM_SOURCE_POSITION("Object.java", 445) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_Object*) _r3.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(0) + _r0.i = ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_; + if (_r0.i != 0) goto label17; + XMLVM_SOURCE_POSITION("Object.java", 446) + XMLVM_CHECK_NPE(3) + java_lang_Object_syncUnlock__(_r3.o); + label17:; + XMLVM_SOURCE_POSITION("Object.java", 448) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Object_enqueueNewCondition__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_enqueueNewCondition__] + XMLVM_ENTER_METHOD("java.lang.Object", "enqueueNewCondition", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Object.java", 462) + _r0.o = __NEW_org_xmlvm_runtime_Condition(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Condition___INIT____java_lang_Object(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("Object.java", 463) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_Object*) _r2.o)->fields.java_lang_Object.addedMembers_; + _r1.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r1.o); + XMLVM_CHECK_NPE(1) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object])(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("Object.java", 464) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_checkSynchronized___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_checkSynchronized___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.Object", "checkSynchronized", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 475) + _r1.i = 0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Object.java", 478) + _r2.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Mutex_lock__(_r2.o); + XMLVM_SOURCE_POSITION("Object.java", 480) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_; + if (_r2.o == JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("Object.java", 481) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.owningThread_; + label15:; + XMLVM_SOURCE_POSITION("Object.java", 484) + _r2.o = java_lang_Object_GET_staticMutex(); + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Mutex_unlock__(_r2.o); + XMLVM_SOURCE_POSITION("Object.java", 486) + //java_lang_Thread_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Thread*) _r5.o)->tib->vtable[1])(_r5.o, _r0.o); + if (_r1.i != 0) goto label34; + XMLVM_SOURCE_POSITION("Object.java", 487) + XMLVM_SOURCE_POSITION("Object.java", 488) + + + // Red class access removed: java.lang.IllegalMonitorStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "the current thread is not the owner of the object's monitor" + _r3.o = xmlvm_create_java_string_from_pool(67); + + + // Red class access removed: java.lang.IllegalMonitorStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r2.o) + label34:; + XMLVM_SOURCE_POSITION("Object.java", 490) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Object_removeThreadNotification___org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_removeThreadNotification___org_xmlvm_runtime_Condition] + XMLVM_ENTER_METHOD("java.lang.Object", "removeThreadNotification", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 500) + _r1.i = 0; + _r0.i = 0; + label2:; + XMLVM_SOURCE_POSITION("Object.java", 501) + XMLVM_SOURCE_POSITION("Object.java", 502) + if (_r0.i != 0) goto label55; + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_Object*) _r3.o)->fields.java_lang_Object.addedMembers_; + _r2.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r2.o); + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r2.o); + if (_r1.i >= _r2.i) goto label55; + XMLVM_SOURCE_POSITION("Object.java", 503) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_Object*) _r3.o)->fields.java_lang_Object.addedMembers_; + _r2.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r2.o); + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r2.o, _r1.i); + if (_r2.o != _r4.o) goto label52; + XMLVM_SOURCE_POSITION("Object.java", 504) + _r0.i = 1; + XMLVM_SOURCE_POSITION("Object.java", 506) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_Object*) _r3.o)->fields.java_lang_Object.addedMembers_; + _r2.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r2.o); + XMLVM_CHECK_NPE(2) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_remove___int])(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("Object.java", 507) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_Object*) _r3.o)->fields.java_lang_Object.addedMembers_; + _r2.i = java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers(_r2.o); + if (_r1.i > _r2.i) goto label2; + XMLVM_SOURCE_POSITION("Object.java", 508) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_Object*) _r3.o)->fields.java_lang_Object.addedMembers_; + java_lang_Object_AddedMembers_access$110___java_lang_Object_AddedMembers(_r2.o); + goto label2; + label52:; + XMLVM_SOURCE_POSITION("Object.java", 511) + _r1.i = _r1.i + 1; + goto label2; + label55:; + XMLVM_SOURCE_POSITION("Object.java", 514) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Object_getRandInclusive___int_int(JAVA_INT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Object) + //XMLVM_BEGIN_WRAPPER[java_lang_Object_getRandInclusive___int_int] + XMLVM_ENTER_METHOD("java.lang.Object", "getRandInclusive", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.i = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("Object.java", 518) + _r0.d = java_lang_Math_random__(); + _r2.i = _r5.i - _r4.i; + _r2.i = _r2.i + 1; + _r2.d = (JAVA_DOUBLE) _r2.i; + _r0.d = _r0.d * _r2.d; + _r0.i = (JAVA_INT) _r0.d; + _r0.i = _r0.i + _r4.i; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Object_preWait___java_lang_Thread_org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_preWait___java_lang_Thread_org_xmlvm_runtime_Condition] + XMLVM_ENTER_METHOD("java.lang.Object", "preWait", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.o = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("Object.java", 529) + XMLVM_CHECK_NPE(5) + java_lang_Thread_setWaitingCondition___org_xmlvm_runtime_Condition(_r5.o, _r6.o); + XMLVM_SOURCE_POSITION("Object.java", 531) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_; + XMLVM_SOURCE_POSITION("Object.java", 532) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_Object*) _r4.o)->fields.java_lang_Object.addedMembers_; + _r3.i = 0; + XMLVM_CHECK_NPE(2) + ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_ = _r3.i; + XMLVM_SOURCE_POSITION("Object.java", 536) + _r0.i = java_lang_Thread_interrupted__(); + XMLVM_SOURCE_POSITION("Object.java", 540) + XMLVM_CHECK_NPE(4) + java_lang_Object_prepareForUnlock__(_r4.o); + XMLVM_SOURCE_POSITION("Object.java", 542) + if (_r0.i == 0) goto label23; + _r2.i = -_r1.i; + label22:; + XMLVM_EXIT_METHOD() + return _r2.i; + label23:; + _r2 = _r1; + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Object_postWait___java_lang_Thread_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_postWait___java_lang_Thread_int] + XMLVM_ENTER_METHOD("java.lang.Object", "postWait", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Object.java", 556) + _r0.i = 0; + XMLVM_SOURCE_POSITION("Object.java", 560) + XMLVM_CHECK_NPE(2) + java_lang_Object_establishLock___java_lang_Thread(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("Object.java", 562) + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(3) + java_lang_Thread_setWaitingCondition___org_xmlvm_runtime_Condition(_r3.o, _r1.o); + XMLVM_SOURCE_POSITION("Object.java", 566) + _r1.i = java_lang_Thread_interrupted__(); + if (_r1.i == 0) goto label15; + XMLVM_SOURCE_POSITION("Object.java", 567) + _r0.i = 1; + label15:; + XMLVM_SOURCE_POSITION("Object.java", 570) + if (_r4.i >= 0) goto label19; + XMLVM_SOURCE_POSITION("Object.java", 572) + _r4.i = -_r4.i; + _r0.i = 1; + label19:; + XMLVM_SOURCE_POSITION("Object.java", 573) + XMLVM_SOURCE_POSITION("Object.java", 577) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_Object*) _r2.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(1) + ((java_lang_Object_AddedMembers*) _r1.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_ = _r4.i; + XMLVM_SOURCE_POSITION("Object.java", 579) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_wait2__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_wait2__] + XMLVM_ENTER_METHOD("java.lang.Object", "wait2", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("Object.java", 583) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_SOURCE_POSITION("Object.java", 584) + XMLVM_CHECK_NPE(5) + java_lang_Object_checkSynchronized___java_lang_Thread(_r5.o, _r0.o); + XMLVM_SOURCE_POSITION("Object.java", 586) + XMLVM_CHECK_NPE(5) + _r2.o = java_lang_Object_enqueueNewCondition__(_r5.o); + XMLVM_SOURCE_POSITION("Object.java", 588) + XMLVM_CHECK_NPE(5) + _r1.i = java_lang_Object_preWait___java_lang_Thread_org_xmlvm_runtime_Condition(_r5.o, _r0.o, _r2.o); + if (_r1.i >= 0) goto label29; + label17:; + XMLVM_SOURCE_POSITION("Object.java", 590) + XMLVM_SOURCE_POSITION("Object.java", 601) + XMLVM_CHECK_NPE(5) + _r3.i = java_lang_Object_postWait___java_lang_Thread_int(_r5.o, _r0.o, _r1.i); + if (_r3.i == 0) goto label37; + XMLVM_SOURCE_POSITION("Object.java", 602) + XMLVM_SOURCE_POSITION("Object.java", 603) + + + // Red class access removed: java.lang.InterruptedException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.InterruptedException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r4.o) + label29:; + XMLVM_SOURCE_POSITION("Object.java", 599) + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_Object*) _r5.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(4) + _r4.o = ((java_lang_Object_AddedMembers*) _r4.o)->fields.java_lang_Object_AddedMembers.instanceMutex_; + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex(_r2.o, _r4.o); + goto label17; + label37:; + XMLVM_SOURCE_POSITION("Object.java", 605) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_wait2___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_wait2___long] + XMLVM_ENTER_METHOD("java.lang.Object", "wait2", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r8.o = me; + _r9.l = n1; + _r6.l = 0; + XMLVM_SOURCE_POSITION("Object.java", 609) + _r5.i = _r9.l > _r6.l ? 1 : (_r9.l == _r6.l ? 0 : -1); + if (_r5.i >= 0) goto label14; + XMLVM_SOURCE_POSITION("Object.java", 610) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "the value of timeout is negative" + _r6.o = xmlvm_create_java_string_from_pool(68); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r5.o) + label14:; + XMLVM_SOURCE_POSITION("Object.java", 611) + _r5.i = _r9.l > _r6.l ? 1 : (_r9.l == _r6.l ? 0 : -1); + if (_r5.i != 0) goto label22; + XMLVM_SOURCE_POSITION("Object.java", 612) + XMLVM_CHECK_NPE(8) + java_lang_Object_wait2__(_r8.o); + label21:; + XMLVM_SOURCE_POSITION("Object.java", 645) + XMLVM_EXIT_METHOD() + return; + label22:; + XMLVM_SOURCE_POSITION("Object.java", 614) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_SOURCE_POSITION("Object.java", 615) + XMLVM_CHECK_NPE(8) + java_lang_Object_checkSynchronized___java_lang_Thread(_r8.o, _r0.o); + XMLVM_SOURCE_POSITION("Object.java", 617) + XMLVM_CHECK_NPE(8) + _r2.o = java_lang_Object_enqueueNewCondition__(_r8.o); + _r3.i = 0; + XMLVM_SOURCE_POSITION("Object.java", 620) + XMLVM_CHECK_NPE(8) + _r1.i = java_lang_Object_preWait___java_lang_Thread_org_xmlvm_runtime_Condition(_r8.o, _r0.o, _r2.o); + if (_r1.i >= 0) goto label57; + label40:; + XMLVM_SOURCE_POSITION("Object.java", 622) + XMLVM_SOURCE_POSITION("Object.java", 633) + XMLVM_CHECK_NPE(8) + _r4.i = java_lang_Object_postWait___java_lang_Thread_int(_r8.o, _r0.o, _r1.i); + if (_r3.i == 0) goto label49; + XMLVM_SOURCE_POSITION("Object.java", 636) + XMLVM_SOURCE_POSITION("Object.java", 638) + XMLVM_CHECK_NPE(8) + java_lang_Object_removeThreadNotification___org_xmlvm_runtime_Condition(_r8.o, _r2.o); + label49:; + XMLVM_SOURCE_POSITION("Object.java", 641) + if (_r4.i == 0) goto label21; + XMLVM_SOURCE_POSITION("Object.java", 642) + + + // Red class access removed: java.lang.InterruptedException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.InterruptedException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r5.o) + label57:; + XMLVM_SOURCE_POSITION("Object.java", 631) + XMLVM_CHECK_NPE(8) + _r5.o = ((java_lang_Object*) _r8.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(5) + _r5.o = ((java_lang_Object_AddedMembers*) _r5.o)->fields.java_lang_Object_AddedMembers.instanceMutex_; + XMLVM_CHECK_NPE(2) + _r3.i = org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long(_r2.o, _r5.o, _r9.l); + goto label40; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_notify2__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_notify2__] + XMLVM_ENTER_METHOD("java.lang.Object", "notify2", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("Object.java", 648) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_SOURCE_POSITION("Object.java", 649) + XMLVM_CHECK_NPE(6) + java_lang_Object_checkSynchronized___java_lang_Thread(_r6.o, _r0.o); + XMLVM_SOURCE_POSITION("Object.java", 653) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r3.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r3.o); + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r3.o); + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r4.i = java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers(_r4.o); + _r4.i = _r4.i + 1; + if (_r3.i <= _r4.i) goto label66; + XMLVM_SOURCE_POSITION("Object.java", 655) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r3.i = java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers(_r3.o); + _r3.i = _r3.i + 1; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r4.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r4.o); + XMLVM_CHECK_NPE(4) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r4.o); + _r5.i = 1; + _r4.i = _r4.i - _r5.i; + _r1.i = java_lang_Object_getRandInclusive___int_int(_r3.i, _r4.i); + XMLVM_SOURCE_POSITION("Object.java", 658) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r3.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r3.o); + XMLVM_CHECK_NPE(3) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_remove___int])(_r3.o, _r1.i); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("Object.java", 663) + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Condition_broadcast__(_r2.o); + label66:; + XMLVM_SOURCE_POSITION("Object.java", 665) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_notifyAll2__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_notifyAll2__] + XMLVM_ENTER_METHOD("java.lang.Object", "notifyAll2", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("Object.java", 668) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_SOURCE_POSITION("Object.java", 669) + XMLVM_CHECK_NPE(6) + java_lang_Object_checkSynchronized___java_lang_Thread(_r6.o, _r0.o); + XMLVM_SOURCE_POSITION("Object.java", 674) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r4.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r4.o); + XMLVM_CHECK_NPE(4) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r4.o); + _r5.i = 1; + _r4.i = _r4.i - _r5.i; + java_lang_Object_AddedMembers_access$102___java_lang_Object_AddedMembers_int(_r3.o, _r4.i); + label24:; + XMLVM_SOURCE_POSITION("Object.java", 676) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r3.i = java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers(_r3.o); + if (_r3.i < 0) goto label64; + XMLVM_SOURCE_POSITION("Object.java", 677) + _r3.i = 0; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r4.i = java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers(_r4.o); + _r1.i = java_lang_Object_getRandInclusive___int_int(_r3.i, _r4.i); + XMLVM_SOURCE_POSITION("Object.java", 680) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + _r3.o = java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(_r3.o); + XMLVM_CHECK_NPE(3) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_remove___int])(_r3.o, _r1.i); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("Object.java", 681) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_Object*) _r6.o)->fields.java_lang_Object.addedMembers_; + java_lang_Object_AddedMembers_access$110___java_lang_Object_AddedMembers(_r3.o); + XMLVM_SOURCE_POSITION("Object.java", 684) + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Condition_broadcast__(_r2.o); + goto label24; + label64:; + XMLVM_SOURCE_POSITION("Object.java", 686) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object_interruptWait___org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_interruptWait___org_xmlvm_runtime_Condition] + XMLVM_ENTER_METHOD("java.lang.Object", "interruptWait", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 696) + XMLVM_CHECK_NPE(1) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("Object.java", 699) + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Object_removeThreadNotification___org_xmlvm_runtime_Condition(_r1.o, _r2.o); + if (_r0.i == 0) goto label12; + XMLVM_SOURCE_POSITION("Object.java", 700) + XMLVM_SOURCE_POSITION("Object.java", 702) + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Condition_broadcast__(_r2.o); + label12:; + XMLVM_SOURCE_POSITION("Object.java", 707) + XMLVM_CHECK_NPE(1) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("Object.java", 708) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Object___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Object", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Object.java", 51) + java_lang_Object_initNativeLayer__(); + XMLVM_SOURCE_POSITION("Object.java", 374) + _r0.o = __NEW_org_xmlvm_runtime_Mutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex___INIT___(_r0.o); + java_lang_Object_PUT_staticMutex( _r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Object.h b/tests/nbody-java/java_lang_Object.h new file mode 100644 index 0000000000000..4882ae7640081 --- /dev/null +++ b/tests/nbody-java/java_lang_Object.h @@ -0,0 +1,135 @@ +#ifndef __JAVA_LANG_OBJECT__ +#define __JAVA_LANG_OBJECT__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Object 0 +// Implemented interfaces: +// Super Class: + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Math +#define XMLVM_FORWARD_DECL_java_lang_Math +XMLVM_FORWARD_DECL(java_lang_Math) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object_AddedMembers +#define XMLVM_FORWARD_DECL_java_lang_Object_AddedMembers +XMLVM_FORWARD_DECL(java_lang_Object_AddedMembers) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_List +#define XMLVM_FORWARD_DECL_java_util_List +XMLVM_FORWARD_DECL(java_util_List) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Condition) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Mutex) +#endif +// Class declarations for java.lang.Object +XMLVM_DEFINE_CLASS(java_lang_Object, 6, XMLVM_ITABLE_SIZE_java_lang_Object) + +extern JAVA_OBJECT __CLASS_java_lang_Object; +extern JAVA_OBJECT __CLASS_java_lang_Object_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Object_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Object_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Object +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Object \ + struct { \ + JAVA_OBJECT addedMembers_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Object \ + } java_lang_Object + +struct java_lang_Object { + __TIB_DEFINITION_java_lang_Object* tib; + struct { + __INSTANCE_FIELDS_java_lang_Object; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +typedef struct java_lang_Object java_lang_Object; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Object 6 +#define XMLVM_VTABLE_IDX_java_lang_Object_clone__ 0 +#define XMLVM_VTABLE_IDX_java_lang_Object_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Object_finalize_java_lang_Object__ 2 +#define XMLVM_VTABLE_IDX_java_lang_Object_getClass__ 3 +#define XMLVM_VTABLE_IDX_java_lang_Object_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Object_toString__ 5 + +void __INIT_java_lang_Object(); +void __INIT_IMPL_java_lang_Object(); +void __DELETE_java_lang_Object(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Object(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Object(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Object(); +void xmlvm_init_native_java_lang_Object(); +JAVA_OBJECT java_lang_Object_GET_staticMutex(); +void java_lang_Object_PUT_staticMutex(JAVA_OBJECT v); +void java_lang_Object_initNativeLayer__(); +void java_lang_Object___INIT___(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_lang_Object_clone__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Object_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 2 +void java_lang_Object_finalize_java_lang_Object__(JAVA_OBJECT me); +// Vtable index: 3 +JAVA_OBJECT java_lang_Object_getClass__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_Object_hashCode__(JAVA_OBJECT me); +void java_lang_Object_notify__(JAVA_OBJECT me); +void java_lang_Object_notifyAll__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Object_toString__(JAVA_OBJECT me); +void java_lang_Object_wait__(JAVA_OBJECT me); +void java_lang_Object_wait___long(JAVA_OBJECT me, JAVA_LONG n1); +void java_lang_Object_wait___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2); +void java_lang_Object_establishLock___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Object_prepareForUnlock__(JAVA_OBJECT me); +void java_lang_Object_syncLock___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Object_syncUnlock__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Object_acquireLockRecursive__(JAVA_OBJECT me); +void java_lang_Object_releaseLockRecursive__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Object_enqueueNewCondition__(JAVA_OBJECT me); +void java_lang_Object_checkSynchronized___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_Object_removeThreadNotification___org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_Object_getRandInclusive___int_int(JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_Object_preWait___java_lang_Thread_org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_lang_Object_postWait___java_lang_Thread_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_Object_wait2__(JAVA_OBJECT me); +void java_lang_Object_wait2___long(JAVA_OBJECT me, JAVA_LONG n1); +void java_lang_Object_notify2__(JAVA_OBJECT me); +void java_lang_Object_notifyAll2__(JAVA_OBJECT me); +void java_lang_Object_interruptWait___org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Object___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_Object_AddedMembers.c b/tests/nbody-java/java_lang_Object_AddedMembers.c new file mode 100644 index 0000000000000..ee6bc2766f8c0 --- /dev/null +++ b/tests/nbody-java/java_lang_Object_AddedMembers.c @@ -0,0 +1,259 @@ +#include "xmlvm.h" +#include "java_lang_Thread.h" +#include "java_util_ArrayList.h" +#include "java_util_List.h" +#include "org_xmlvm_runtime_Mutex.h" + +#include "java_lang_Object_AddedMembers.h" + +#define XMLVM_CURRENT_CLASS_NAME Object_AddedMembers +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Object_AddedMembers + +__TIB_DEFINITION_java_lang_Object_AddedMembers __TIB_java_lang_Object_AddedMembers = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Object_AddedMembers, // classInitializer + "java.lang.Object$AddedMembers", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Object_AddedMembers), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers; +JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Object_AddedMembers() +{ + staticInitializerLock(&__TIB_java_lang_Object_AddedMembers); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Object_AddedMembers.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Object_AddedMembers.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Object_AddedMembers); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Object_AddedMembers.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Object_AddedMembers.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Object_AddedMembers.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Object$AddedMembers") + __INIT_IMPL_java_lang_Object_AddedMembers(); + } +} + +void __INIT_IMPL_java_lang_Object_AddedMembers() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Object_AddedMembers.newInstanceFunc = __NEW_INSTANCE_java_lang_Object_AddedMembers; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Object_AddedMembers.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_Object_AddedMembers.numImplementedInterfaces = 0; + __TIB_java_lang_Object_AddedMembers.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_lang_Object_AddedMembers.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Object_AddedMembers.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Object_AddedMembers.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Object_AddedMembers.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Object_AddedMembers.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Object_AddedMembers.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Object_AddedMembers.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Object_AddedMembers.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Object_AddedMembers = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Object_AddedMembers); + __TIB_java_lang_Object_AddedMembers.clazz = __CLASS_java_lang_Object_AddedMembers; + __TIB_java_lang_Object_AddedMembers.baseType = JAVA_NULL; + __CLASS_java_lang_Object_AddedMembers_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Object_AddedMembers); + __CLASS_java_lang_Object_AddedMembers_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Object_AddedMembers_1ARRAY); + __CLASS_java_lang_Object_AddedMembers_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Object_AddedMembers_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Object_AddedMembers] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Object_AddedMembers.classInitialized = 1; +} + +void __DELETE_java_lang_Object_AddedMembers(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Object_AddedMembers] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Object_AddedMembers(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Object_AddedMembers*) me)->fields.java_lang_Object_AddedMembers.recursiveLocks_ = 0; + ((java_lang_Object_AddedMembers*) me)->fields.java_lang_Object_AddedMembers.owningThread_ = (java_lang_Thread*) JAVA_NULL; + ((java_lang_Object_AddedMembers*) me)->fields.java_lang_Object_AddedMembers.instanceMutex_ = (org_xmlvm_runtime_Mutex*) JAVA_NULL; + ((java_lang_Object_AddedMembers*) me)->fields.java_lang_Object_AddedMembers.waitingConditions_ = (java_util_List*) JAVA_NULL; + ((java_lang_Object_AddedMembers*) me)->fields.java_lang_Object_AddedMembers.notifyAllMaxIndex_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Object_AddedMembers] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Object_AddedMembers() +{ XMLVM_CLASS_INIT(java_lang_Object_AddedMembers) +java_lang_Object_AddedMembers* me = (java_lang_Object_AddedMembers*) XMLVM_MALLOC(sizeof(java_lang_Object_AddedMembers)); + me->tib = &__TIB_java_lang_Object_AddedMembers; + __INIT_INSTANCE_MEMBERS_java_lang_Object_AddedMembers(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Object_AddedMembers] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Object_AddedMembers() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_Object_AddedMembers(); + java_lang_Object_AddedMembers___INIT___(me); + return me; +} + +void java_lang_Object_AddedMembers___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Object_AddedMembers___INIT___] + XMLVM_ENTER_METHOD("java.lang.Object$AddedMembers", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Object.java", 369) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Object.java", 356) + XMLVM_CHECK_NPE(2) + ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.recursiveLocks_ = _r1.i; + XMLVM_SOURCE_POSITION("Object.java", 365) + _r0.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(0) + java_util_ArrayList___INIT____int(_r0.o, _r1.i); + XMLVM_CHECK_NPE(2) + ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.waitingConditions_ = _r0.o; + XMLVM_SOURCE_POSITION("Object.java", 367) + _r0.i = -1; + XMLVM_CHECK_NPE(2) + ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.notifyAllMaxIndex_ = _r0.i; + XMLVM_SOURCE_POSITION("Object.java", 370) + _r0.o = __NEW_org_xmlvm_runtime_Mutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.instanceMutex_ = _r0.o; + XMLVM_SOURCE_POSITION("Object.java", 371) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Object_AddedMembers) + //XMLVM_BEGIN_WRAPPER[java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers] + XMLVM_ENTER_METHOD("java.lang.Object$AddedMembers", "access$000", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 354) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Object_AddedMembers*) _r1.o)->fields.java_lang_Object_AddedMembers.waitingConditions_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Object_AddedMembers) + //XMLVM_BEGIN_WRAPPER[java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers] + XMLVM_ENTER_METHOD("java.lang.Object$AddedMembers", "access$100", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 354) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Object_AddedMembers*) _r1.o)->fields.java_lang_Object_AddedMembers.notifyAllMaxIndex_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Object_AddedMembers_access$110___java_lang_Object_AddedMembers(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Object_AddedMembers) + //XMLVM_BEGIN_WRAPPER[java_lang_Object_AddedMembers_access$110___java_lang_Object_AddedMembers] + XMLVM_ENTER_METHOD("java.lang.Object$AddedMembers", "access$110", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Object.java", 354) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.notifyAllMaxIndex_; + _r1.i = 1; + _r1.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(2) + ((java_lang_Object_AddedMembers*) _r2.o)->fields.java_lang_Object_AddedMembers.notifyAllMaxIndex_ = _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Object_AddedMembers_access$102___java_lang_Object_AddedMembers_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Object_AddedMembers) + //XMLVM_BEGIN_WRAPPER[java_lang_Object_AddedMembers_access$102___java_lang_Object_AddedMembers_int] + XMLVM_ENTER_METHOD("java.lang.Object$AddedMembers", "access$102", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = n1; + _r1.i = n2; + XMLVM_SOURCE_POSITION("Object.java", 354) + XMLVM_CHECK_NPE(0) + ((java_lang_Object_AddedMembers*) _r0.o)->fields.java_lang_Object_AddedMembers.notifyAllMaxIndex_ = _r1.i; + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Object_AddedMembers.h b/tests/nbody-java/java_lang_Object_AddedMembers.h new file mode 100644 index 0000000000000..3aba7b006f747 --- /dev/null +++ b/tests/nbody-java/java_lang_Object_AddedMembers.h @@ -0,0 +1,76 @@ +#ifndef __JAVA_LANG_OBJECT_ADDEDMEMBERS__ +#define __JAVA_LANG_OBJECT_ADDEDMEMBERS__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Object_AddedMembers 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_ArrayList +#define XMLVM_FORWARD_DECL_java_util_ArrayList +XMLVM_FORWARD_DECL(java_util_ArrayList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_List +#define XMLVM_FORWARD_DECL_java_util_List +XMLVM_FORWARD_DECL(java_util_List) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Mutex) +#endif +// Class declarations for java.lang.Object$AddedMembers +XMLVM_DEFINE_CLASS(java_lang_Object_AddedMembers, 6, XMLVM_ITABLE_SIZE_java_lang_Object_AddedMembers) + +extern JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers; +extern JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Object_AddedMembers_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Object_AddedMembers +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Object_AddedMembers \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_INT recursiveLocks_; \ + JAVA_OBJECT owningThread_; \ + JAVA_OBJECT instanceMutex_; \ + JAVA_OBJECT waitingConditions_; \ + JAVA_INT notifyAllMaxIndex_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Object_AddedMembers \ + } java_lang_Object_AddedMembers + +struct java_lang_Object_AddedMembers { + __TIB_DEFINITION_java_lang_Object_AddedMembers* tib; + struct { + __INSTANCE_FIELDS_java_lang_Object_AddedMembers; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Object_AddedMembers +#define XMLVM_FORWARD_DECL_java_lang_Object_AddedMembers +typedef struct java_lang_Object_AddedMembers java_lang_Object_AddedMembers; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Object_AddedMembers 6 + +void __INIT_java_lang_Object_AddedMembers(); +void __INIT_IMPL_java_lang_Object_AddedMembers(); +void __DELETE_java_lang_Object_AddedMembers(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Object_AddedMembers(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Object_AddedMembers(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Object_AddedMembers(); +void java_lang_Object_AddedMembers___INIT___(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Object_AddedMembers_access$000___java_lang_Object_AddedMembers(JAVA_OBJECT n1); +JAVA_INT java_lang_Object_AddedMembers_access$100___java_lang_Object_AddedMembers(JAVA_OBJECT n1); +JAVA_INT java_lang_Object_AddedMembers_access$110___java_lang_Object_AddedMembers(JAVA_OBJECT n1); +JAVA_INT java_lang_Object_AddedMembers_access$102___java_lang_Object_AddedMembers_int(JAVA_OBJECT n1, JAVA_INT n2); + +#endif diff --git a/tests/nbody-java/java_lang_Readable.c b/tests/nbody-java/java_lang_Readable.c new file mode 100644 index 0000000000000..c5d2e1103db3d --- /dev/null +++ b/tests/nbody-java/java_lang_Readable.c @@ -0,0 +1,77 @@ +#include "xmlvm.h" +#include "java_nio_CharBuffer.h" + +#include "java_lang_Readable.h" + +__TIB_DEFINITION_java_lang_Readable __TIB_java_lang_Readable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Readable, // classInitializer + "java.lang.Readable", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_Readable; +JAVA_OBJECT __CLASS_java_lang_Readable_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Readable_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Readable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_Readable() +{ + staticInitializerLock(&__TIB_java_lang_Readable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Readable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Readable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Readable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Readable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Readable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Readable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Readable") + __INIT_IMPL_java_lang_Readable(); + } +} + +void __INIT_IMPL_java_lang_Readable() +{ + __TIB_java_lang_Readable.numInterfaces = 0; + __TIB_java_lang_Readable.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Readable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_Readable.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Readable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Readable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_Readable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Readable); + __TIB_java_lang_Readable.clazz = __CLASS_java_lang_Readable; + __TIB_java_lang_Readable.baseType = JAVA_NULL; + __CLASS_java_lang_Readable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Readable); + __CLASS_java_lang_Readable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Readable_1ARRAY); + __CLASS_java_lang_Readable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Readable_2ARRAY); + + __TIB_java_lang_Readable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_Readable.h b/tests/nbody-java/java_lang_Readable.h new file mode 100644 index 0000000000000..6b527ffaab5e9 --- /dev/null +++ b/tests/nbody-java/java_lang_Readable.h @@ -0,0 +1,32 @@ +#ifndef __JAVA_LANG_READABLE__ +#define __JAVA_LANG_READABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_Readable_read___java_nio_CharBuffer 8 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif + +XMLVM_DEFINE_CLASS(java_lang_Readable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_Readable; +extern JAVA_OBJECT __CLASS_java_lang_Readable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Readable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Readable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_Readable +#define XMLVM_FORWARD_DECL_java_lang_Readable +typedef struct java_lang_Readable java_lang_Readable; +#endif + +void __INIT_java_lang_Readable(); +void __INIT_IMPL_java_lang_Readable(); + +#endif diff --git a/tests/nbody-java/java_lang_Runnable.c b/tests/nbody-java/java_lang_Runnable.c new file mode 100644 index 0000000000000..15042798956c8 --- /dev/null +++ b/tests/nbody-java/java_lang_Runnable.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_lang_Runnable.h" + +__TIB_DEFINITION_java_lang_Runnable __TIB_java_lang_Runnable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Runnable, // classInitializer + "java.lang.Runnable", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_Runnable; +JAVA_OBJECT __CLASS_java_lang_Runnable_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Runnable_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Runnable_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_Runnable() +{ + staticInitializerLock(&__TIB_java_lang_Runnable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Runnable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Runnable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Runnable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Runnable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Runnable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Runnable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Runnable") + __INIT_IMPL_java_lang_Runnable(); + } +} + +void __INIT_IMPL_java_lang_Runnable() +{ + __TIB_java_lang_Runnable.numInterfaces = 0; + __TIB_java_lang_Runnable.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Runnable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_Runnable.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Runnable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Runnable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_Runnable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Runnable); + __TIB_java_lang_Runnable.clazz = __CLASS_java_lang_Runnable; + __TIB_java_lang_Runnable.baseType = JAVA_NULL; + __CLASS_java_lang_Runnable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Runnable); + __CLASS_java_lang_Runnable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Runnable_1ARRAY); + __CLASS_java_lang_Runnable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Runnable_2ARRAY); + + __TIB_java_lang_Runnable.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_Runnable.h b/tests/nbody-java/java_lang_Runnable.h new file mode 100644 index 0000000000000..7b0077c81835d --- /dev/null +++ b/tests/nbody-java/java_lang_Runnable.h @@ -0,0 +1,28 @@ +#ifndef __JAVA_LANG_RUNNABLE__ +#define __JAVA_LANG_RUNNABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_Runnable_run__ 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_lang_Runnable, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_Runnable; +extern JAVA_OBJECT __CLASS_java_lang_Runnable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Runnable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Runnable_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_Runnable +#define XMLVM_FORWARD_DECL_java_lang_Runnable +typedef struct java_lang_Runnable java_lang_Runnable; +#endif + +void __INIT_java_lang_Runnable(); +void __INIT_IMPL_java_lang_Runnable(); + +#endif diff --git a/tests/nbody-java/java_lang_Runtime.c b/tests/nbody-java/java_lang_Runtime.c new file mode 100644 index 0000000000000..5a15f30cf2935 --- /dev/null +++ b/tests/nbody-java/java_lang_Runtime.c @@ -0,0 +1,542 @@ +#include "xmlvm.h" +#include "java_io_File.h" +#include "java_io_OutputStream.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_Thread.h" + +#include "java_lang_Runtime.h" + +#define XMLVM_CURRENT_CLASS_NAME Runtime +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Runtime + +__TIB_DEFINITION_java_lang_Runtime __TIB_java_lang_Runtime = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Runtime, // classInitializer + "java.lang.Runtime", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Runtime), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Runtime; +JAVA_OBJECT __CLASS_java_lang_Runtime_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Runtime_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Runtime_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_Runtime_runtime; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Runtime() +{ + staticInitializerLock(&__TIB_java_lang_Runtime); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Runtime.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Runtime.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Runtime); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Runtime.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Runtime.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Runtime.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Runtime") + __INIT_IMPL_java_lang_Runtime(); + } +} + +void __INIT_IMPL_java_lang_Runtime() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Runtime.newInstanceFunc = __NEW_INSTANCE_java_lang_Runtime; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Runtime.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + xmlvm_init_native_java_lang_Runtime(); + // Initialize interface information + __TIB_java_lang_Runtime.numImplementedInterfaces = 0; + __TIB_java_lang_Runtime.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_Runtime_runtime = (java_lang_Runtime*) JAVA_NULL; + + __TIB_java_lang_Runtime.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Runtime.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Runtime.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Runtime.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Runtime.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Runtime.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Runtime.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Runtime.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Runtime = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Runtime); + __TIB_java_lang_Runtime.clazz = __CLASS_java_lang_Runtime; + __TIB_java_lang_Runtime.baseType = JAVA_NULL; + __CLASS_java_lang_Runtime_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Runtime); + __CLASS_java_lang_Runtime_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Runtime_1ARRAY); + __CLASS_java_lang_Runtime_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Runtime_2ARRAY); + java_lang_Runtime___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Runtime] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Runtime.classInitialized = 1; +} + +void __DELETE_java_lang_Runtime(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Runtime] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Runtime(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Runtime] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Runtime() +{ XMLVM_CLASS_INIT(java_lang_Runtime) +java_lang_Runtime* me = (java_lang_Runtime*) XMLVM_MALLOC(sizeof(java_lang_Runtime)); + me->tib = &__TIB_java_lang_Runtime; + __INIT_INSTANCE_MEMBERS_java_lang_Runtime(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Runtime] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Runtime() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_lang_Runtime_GET_runtime() +{ + XMLVM_CLASS_INIT(java_lang_Runtime) + return _STATIC_java_lang_Runtime_runtime; +} + +void java_lang_Runtime_PUT_runtime(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Runtime) +_STATIC_java_lang_Runtime_runtime = v; +} + +void java_lang_Runtime___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime___INIT___] + XMLVM_ENTER_METHOD("java.lang.Runtime", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Runtime.java", 45) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Runtime.java", 47) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_exec___java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Runtime", "exec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 67) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_1ARRAY_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_exec___java_lang_String_1ARRAY_java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Runtime", "exec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Runtime.java", 92) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_1ARRAY_java_lang_String_1ARRAY_java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_exec___java_lang_String_1ARRAY_java_lang_String_1ARRAY_java_io_File] + XMLVM_ENTER_METHOD("java.lang.Runtime", "exec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.o = n3; + XMLVM_SOURCE_POSITION("Runtime.java", 120) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_exec___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Runtime", "exec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 140) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_exec___java_lang_String_java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Runtime", "exec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Runtime.java", 163) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_java_lang_String_1ARRAY_java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_exec___java_lang_String_java_lang_String_1ARRAY_java_io_File] + XMLVM_ENTER_METHOD("java.lang.Runtime", "exec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.o = n3; + XMLVM_SOURCE_POSITION("Runtime.java", 189) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_exit___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_exit___int] + XMLVM_ENTER_METHOD("java.lang.Runtime", "exit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 207) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_lang_Runtime_freeMemory__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void java_lang_Runtime_gc__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Runtime_getRuntime__() +{ + XMLVM_CLASS_INIT(java_lang_Runtime) + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_getRuntime__] + XMLVM_ENTER_METHOD("java.lang.Runtime", "getRuntime", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Runtime.java", 231) + _r0.o = java_lang_Runtime_GET_runtime(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_load___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_load___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Runtime", "load", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 250) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_loadLibrary___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_loadLibrary___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Runtime", "loadLibrary", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 268) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_runFinalization__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_runFinalization__] + XMLVM_ENTER_METHOD("java.lang.Runtime", "runFinalization", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Runtime.java", 276) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_runFinalizersOnExit___boolean(JAVA_BOOLEAN n1) +{ + XMLVM_CLASS_INIT(java_lang_Runtime) + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_runFinalizersOnExit___boolean] + XMLVM_ENTER_METHOD("java.lang.Runtime", "runFinalizersOnExit", "?") + XMLVMElem _r0; + _r0.i = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 292) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_lang_Runtime_totalMemory__(JAVA_OBJECT me)] + +void java_lang_Runtime_traceInstructions___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_traceInstructions___boolean] + XMLVM_ENTER_METHOD("java.lang.Runtime", "traceInstructions", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 311) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_traceMethodCalls___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_traceMethodCalls___boolean] + XMLVM_ENTER_METHOD("java.lang.Runtime", "traceMethodCalls", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 322) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_getLocalizedInputStream___java_io_InputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_getLocalizedInputStream___java_io_InputStream] + XMLVM_ENTER_METHOD("java.lang.Runtime", "getLocalizedInputStream", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 338) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Runtime_getLocalizedOutputStream___java_io_OutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_getLocalizedOutputStream___java_io_OutputStream] + XMLVM_ENTER_METHOD("java.lang.Runtime", "getLocalizedOutputStream", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 354) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_addShutdownHook___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_addShutdownHook___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.Runtime", "addShutdownHook", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 396) + if (_r3.o != JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("Runtime.java", 397) + _r0.o = __NEW_java_lang_NullPointerException(); + // "null is not allowed here" + _r1.o = xmlvm_create_java_string_from_pool(779); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label10:; + XMLVM_SOURCE_POSITION("Runtime.java", 399) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Runtime_removeShutdownHook___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_removeShutdownHook___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.Runtime", "removeShutdownHook", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 417) + if (_r3.o != JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("Runtime.java", 418) + _r0.o = __NEW_java_lang_NullPointerException(); + // "null is not allowed here" + _r1.o = xmlvm_create_java_string_from_pool(779); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label10:; + XMLVM_SOURCE_POSITION("Runtime.java", 420) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime_halt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_halt___int] + XMLVM_ENTER_METHOD("java.lang.Runtime", "halt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Runtime.java", 439) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Runtime_availableProcessors__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_availableProcessors__] + XMLVM_ENTER_METHOD("java.lang.Runtime", "availableProcessors", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Runtime.java", 448) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Runtime_maxMemory__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime_maxMemory__] + XMLVM_ENTER_METHOD("java.lang.Runtime", "maxMemory", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Runtime.java", 459) + _r0.l = 0; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +void java_lang_Runtime___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Runtime___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Runtime", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Runtime.java", 40) + _r0.o = __NEW_java_lang_Runtime(); + XMLVM_CHECK_NPE(0) + java_lang_Runtime___INIT___(_r0.o); + java_lang_Runtime_PUT_runtime( _r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Runtime.h b/tests/nbody-java/java_lang_Runtime.h new file mode 100644 index 0000000000000..089fcb61559aa --- /dev/null +++ b/tests/nbody-java/java_lang_Runtime.h @@ -0,0 +1,99 @@ +#ifndef __JAVA_LANG_RUNTIME__ +#define __JAVA_LANG_RUNTIME__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Runtime 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_File +#define XMLVM_FORWARD_DECL_java_io_File +XMLVM_FORWARD_DECL(java_io_File) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_OutputStream +#define XMLVM_FORWARD_DECL_java_io_OutputStream +XMLVM_FORWARD_DECL(java_io_OutputStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +// Class declarations for java.lang.Runtime +XMLVM_DEFINE_CLASS(java_lang_Runtime, 6, XMLVM_ITABLE_SIZE_java_lang_Runtime) + +extern JAVA_OBJECT __CLASS_java_lang_Runtime; +extern JAVA_OBJECT __CLASS_java_lang_Runtime_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Runtime_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Runtime_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Runtime +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Runtime \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Runtime \ + } java_lang_Runtime + +struct java_lang_Runtime { + __TIB_DEFINITION_java_lang_Runtime* tib; + struct { + __INSTANCE_FIELDS_java_lang_Runtime; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Runtime +#define XMLVM_FORWARD_DECL_java_lang_Runtime +typedef struct java_lang_Runtime java_lang_Runtime; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Runtime 6 + +void __INIT_java_lang_Runtime(); +void __INIT_IMPL_java_lang_Runtime(); +void __DELETE_java_lang_Runtime(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Runtime(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Runtime(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Runtime(); +void xmlvm_init_native_java_lang_Runtime(); +JAVA_OBJECT java_lang_Runtime_GET_runtime(); +void java_lang_Runtime_PUT_runtime(JAVA_OBJECT v); +void java_lang_Runtime___INIT___(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_1ARRAY_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_1ARRAY_java_lang_String_1ARRAY_java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_Runtime_exec___java_lang_String_java_lang_String_1ARRAY_java_io_File(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +void java_lang_Runtime_exit___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_LONG java_lang_Runtime_freeMemory__(JAVA_OBJECT me); +void java_lang_Runtime_gc__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Runtime_getRuntime__(); +void java_lang_Runtime_load___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Runtime_loadLibrary___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Runtime_runFinalization__(JAVA_OBJECT me); +void java_lang_Runtime_runFinalizersOnExit___boolean(JAVA_BOOLEAN n1); +JAVA_LONG java_lang_Runtime_totalMemory__(JAVA_OBJECT me); +void java_lang_Runtime_traceInstructions___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void java_lang_Runtime_traceMethodCalls___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +JAVA_OBJECT java_lang_Runtime_getLocalizedInputStream___java_io_InputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Runtime_getLocalizedOutputStream___java_io_OutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Runtime_addShutdownHook___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_Runtime_removeShutdownHook___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Runtime_halt___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_lang_Runtime_availableProcessors__(JAVA_OBJECT me); +JAVA_LONG java_lang_Runtime_maxMemory__(JAVA_OBJECT me); +void java_lang_Runtime___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_RuntimeException.c b/tests/nbody-java/java_lang_RuntimeException.c new file mode 100644 index 0000000000000..b5f97459ca923 --- /dev/null +++ b/tests/nbody-java/java_lang_RuntimeException.c @@ -0,0 +1,234 @@ +#include "xmlvm.h" +#include "java_lang_String.h" +#include "java_lang_Throwable.h" + +#include "java_lang_RuntimeException.h" + +#define XMLVM_CURRENT_CLASS_NAME RuntimeException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_RuntimeException + +__TIB_DEFINITION_java_lang_RuntimeException __TIB_java_lang_RuntimeException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_RuntimeException, // classInitializer + "java.lang.RuntimeException", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Exception, // extends + sizeof(java_lang_RuntimeException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_RuntimeException; +JAVA_OBJECT __CLASS_java_lang_RuntimeException_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_RuntimeException_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_RuntimeException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_RuntimeException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_RuntimeException() +{ + staticInitializerLock(&__TIB_java_lang_RuntimeException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_RuntimeException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_RuntimeException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_RuntimeException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_RuntimeException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_RuntimeException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_RuntimeException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.RuntimeException") + __INIT_IMPL_java_lang_RuntimeException(); + } +} + +void __INIT_IMPL_java_lang_RuntimeException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Exception) + __TIB_java_lang_RuntimeException.newInstanceFunc = __NEW_INSTANCE_java_lang_RuntimeException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_RuntimeException.vtable, __TIB_java_lang_Exception.vtable, sizeof(__TIB_java_lang_Exception.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_RuntimeException.numImplementedInterfaces = 1; + __TIB_java_lang_RuntimeException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_RuntimeException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_RuntimeException.itableBegin = &__TIB_java_lang_RuntimeException.itable[0]; + + _STATIC_java_lang_RuntimeException_serialVersionUID = -7034897190745766939; + + __TIB_java_lang_RuntimeException.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_RuntimeException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_RuntimeException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_RuntimeException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_RuntimeException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_RuntimeException.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_RuntimeException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_RuntimeException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_RuntimeException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_RuntimeException); + __TIB_java_lang_RuntimeException.clazz = __CLASS_java_lang_RuntimeException; + __TIB_java_lang_RuntimeException.baseType = JAVA_NULL; + __CLASS_java_lang_RuntimeException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_RuntimeException); + __CLASS_java_lang_RuntimeException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_RuntimeException_1ARRAY); + __CLASS_java_lang_RuntimeException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_RuntimeException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_RuntimeException] + //XMLVM_END_WRAPPER + + __TIB_java_lang_RuntimeException.classInitialized = 1; +} + +void __DELETE_java_lang_RuntimeException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_RuntimeException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_RuntimeException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Exception(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_RuntimeException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_RuntimeException() +{ XMLVM_CLASS_INIT(java_lang_RuntimeException) +java_lang_RuntimeException* me = (java_lang_RuntimeException*) XMLVM_MALLOC(sizeof(java_lang_RuntimeException)); + me->tib = &__TIB_java_lang_RuntimeException; + __INIT_INSTANCE_MEMBERS_java_lang_RuntimeException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_RuntimeException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_RuntimeException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_RuntimeException(); + java_lang_RuntimeException___INIT___(me); + return me; +} + +JAVA_LONG java_lang_RuntimeException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_RuntimeException) + return _STATIC_java_lang_RuntimeException_serialVersionUID; +} + +void java_lang_RuntimeException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimeException) +_STATIC_java_lang_RuntimeException_serialVersionUID = v; +} + +void java_lang_RuntimeException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_RuntimeException___INIT___] + XMLVM_ENTER_METHOD("java.lang.RuntimeException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("RuntimeException.java", 36) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("RuntimeException.java", 37) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_RuntimeException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_RuntimeException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.RuntimeException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("RuntimeException.java", 47) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("RuntimeException.java", 48) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_RuntimeException___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_RuntimeException___INIT____java_lang_String_java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.RuntimeException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("RuntimeException.java", 60) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT____java_lang_String_java_lang_Throwable(_r0.o, _r1.o, _r2.o); + XMLVM_SOURCE_POSITION("RuntimeException.java", 61) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_RuntimeException___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_RuntimeException___INIT____java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.RuntimeException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("RuntimeException.java", 71) + XMLVM_CHECK_NPE(0) + java_lang_Exception___INIT____java_lang_Throwable(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("RuntimeException.java", 72) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_RuntimeException.h b/tests/nbody-java/java_lang_RuntimeException.h new file mode 100644 index 0000000000000..beb0de2469ab6 --- /dev/null +++ b/tests/nbody-java/java_lang_RuntimeException.h @@ -0,0 +1,64 @@ +#ifndef __JAVA_LANG_RUNTIMEEXCEPTION__ +#define __JAVA_LANG_RUNTIMEEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_RuntimeException 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Exception.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +// Class declarations for java.lang.RuntimeException +XMLVM_DEFINE_CLASS(java_lang_RuntimeException, 8, XMLVM_ITABLE_SIZE_java_lang_RuntimeException) + +extern JAVA_OBJECT __CLASS_java_lang_RuntimeException; +extern JAVA_OBJECT __CLASS_java_lang_RuntimeException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_RuntimeException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_RuntimeException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_RuntimeException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_RuntimeException \ + __INSTANCE_FIELDS_java_lang_Exception; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_RuntimeException \ + } java_lang_RuntimeException + +struct java_lang_RuntimeException { + __TIB_DEFINITION_java_lang_RuntimeException* tib; + struct { + __INSTANCE_FIELDS_java_lang_RuntimeException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimeException +#define XMLVM_FORWARD_DECL_java_lang_RuntimeException +typedef struct java_lang_RuntimeException java_lang_RuntimeException; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_RuntimeException 8 + +void __INIT_java_lang_RuntimeException(); +void __INIT_IMPL_java_lang_RuntimeException(); +void __DELETE_java_lang_RuntimeException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_RuntimeException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_RuntimeException(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_RuntimeException(); +JAVA_LONG java_lang_RuntimeException_GET_serialVersionUID(); +void java_lang_RuntimeException_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_RuntimeException___INIT___(JAVA_OBJECT me); +void java_lang_RuntimeException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_RuntimeException___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_RuntimeException___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_RuntimePermission.c b/tests/nbody-java/java_lang_RuntimePermission.c new file mode 100644 index 0000000000000..1572e6e591b26 --- /dev/null +++ b/tests/nbody-java/java_lang_RuntimePermission.c @@ -0,0 +1,547 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_lang_RuntimePermission.h" + +#define XMLVM_CURRENT_CLASS_NAME RuntimePermission +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_RuntimePermission + +__TIB_DEFINITION_java_lang_RuntimePermission __TIB_java_lang_RuntimePermission = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_RuntimePermission, // classInitializer + "java.lang.RuntimePermission", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_security_BasicPermission, // extends + sizeof(java_lang_RuntimePermission), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_RuntimePermission; +JAVA_OBJECT __CLASS_java_lang_RuntimePermission_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_RuntimePermission_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_RuntimePermission_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_RuntimePermission_serialVersionUID; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToSetSecurityManager; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToCreateSecurityManager; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToGetProtectionDomain; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToGetClassLoader; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToCreateClassLoader; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToModifyThread; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToModifyThreadGroup; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToExitVM; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToReadFileDescriptor; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToWriteFileDescriptor; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToQueuePrintJob; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToSetFactory; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToSetIO; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToStopThread; +static JAVA_OBJECT _STATIC_java_lang_RuntimePermission_permissionToSetContextClassLoader; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_RuntimePermission() +{ + staticInitializerLock(&__TIB_java_lang_RuntimePermission); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_RuntimePermission.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_RuntimePermission.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_RuntimePermission); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_RuntimePermission.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_RuntimePermission.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_RuntimePermission.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.RuntimePermission") + __INIT_IMPL_java_lang_RuntimePermission(); + } +} + +void __INIT_IMPL_java_lang_RuntimePermission() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_security_BasicPermission) + __TIB_java_lang_RuntimePermission.newInstanceFunc = __NEW_INSTANCE_java_lang_RuntimePermission; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_RuntimePermission.vtable, __TIB_java_security_BasicPermission.vtable, sizeof(__TIB_java_security_BasicPermission.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_RuntimePermission.numImplementedInterfaces = 2; + __TIB_java_lang_RuntimePermission.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_RuntimePermission.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_security_Guard) + + __TIB_java_lang_RuntimePermission.implementedInterfaces[0][1] = &__TIB_java_security_Guard; + // Initialize itable for this class + __TIB_java_lang_RuntimePermission.itableBegin = &__TIB_java_lang_RuntimePermission.itable[0]; + __TIB_java_lang_RuntimePermission.itable[XMLVM_ITABLE_IDX_java_security_Guard_checkGuard___java_lang_Object] = __TIB_java_lang_RuntimePermission.vtable[6]; + + _STATIC_java_lang_RuntimePermission_serialVersionUID = 7399184964622342223; + _STATIC_java_lang_RuntimePermission_permissionToSetSecurityManager = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToCreateSecurityManager = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToGetProtectionDomain = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToGetClassLoader = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToCreateClassLoader = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToModifyThread = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToModifyThreadGroup = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToExitVM = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToReadFileDescriptor = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToWriteFileDescriptor = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToQueuePrintJob = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToSetFactory = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToSetIO = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToStopThread = (java_lang_RuntimePermission*) JAVA_NULL; + _STATIC_java_lang_RuntimePermission_permissionToSetContextClassLoader = (java_lang_RuntimePermission*) JAVA_NULL; + + __TIB_java_lang_RuntimePermission.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_RuntimePermission.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_RuntimePermission.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_RuntimePermission.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_RuntimePermission.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_RuntimePermission.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_RuntimePermission.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_RuntimePermission.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_RuntimePermission = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_RuntimePermission); + __TIB_java_lang_RuntimePermission.clazz = __CLASS_java_lang_RuntimePermission; + __TIB_java_lang_RuntimePermission.baseType = JAVA_NULL; + __CLASS_java_lang_RuntimePermission_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_RuntimePermission); + __CLASS_java_lang_RuntimePermission_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_RuntimePermission_1ARRAY); + __CLASS_java_lang_RuntimePermission_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_RuntimePermission_2ARRAY); + java_lang_RuntimePermission___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_RuntimePermission] + //XMLVM_END_WRAPPER + + __TIB_java_lang_RuntimePermission.classInitialized = 1; +} + +void __DELETE_java_lang_RuntimePermission(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_RuntimePermission] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_RuntimePermission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_security_BasicPermission(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_RuntimePermission] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_RuntimePermission() +{ XMLVM_CLASS_INIT(java_lang_RuntimePermission) +java_lang_RuntimePermission* me = (java_lang_RuntimePermission*) XMLVM_MALLOC(sizeof(java_lang_RuntimePermission)); + me->tib = &__TIB_java_lang_RuntimePermission; + __INIT_INSTANCE_MEMBERS_java_lang_RuntimePermission(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_RuntimePermission] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_RuntimePermission() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_RuntimePermission_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_serialVersionUID; +} + +void java_lang_RuntimePermission_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_serialVersionUID = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetSecurityManager() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToSetSecurityManager; +} + +void java_lang_RuntimePermission_PUT_permissionToSetSecurityManager(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToSetSecurityManager = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToCreateSecurityManager() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToCreateSecurityManager; +} + +void java_lang_RuntimePermission_PUT_permissionToCreateSecurityManager(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToCreateSecurityManager = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToGetProtectionDomain() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToGetProtectionDomain; +} + +void java_lang_RuntimePermission_PUT_permissionToGetProtectionDomain(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToGetProtectionDomain = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToGetClassLoader() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToGetClassLoader; +} + +void java_lang_RuntimePermission_PUT_permissionToGetClassLoader(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToGetClassLoader = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToCreateClassLoader() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToCreateClassLoader; +} + +void java_lang_RuntimePermission_PUT_permissionToCreateClassLoader(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToCreateClassLoader = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToModifyThread() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToModifyThread; +} + +void java_lang_RuntimePermission_PUT_permissionToModifyThread(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToModifyThread = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToModifyThreadGroup() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToModifyThreadGroup; +} + +void java_lang_RuntimePermission_PUT_permissionToModifyThreadGroup(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToModifyThreadGroup = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToExitVM() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToExitVM; +} + +void java_lang_RuntimePermission_PUT_permissionToExitVM(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToExitVM = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToReadFileDescriptor() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToReadFileDescriptor; +} + +void java_lang_RuntimePermission_PUT_permissionToReadFileDescriptor(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToReadFileDescriptor = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToWriteFileDescriptor() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToWriteFileDescriptor; +} + +void java_lang_RuntimePermission_PUT_permissionToWriteFileDescriptor(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToWriteFileDescriptor = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToQueuePrintJob() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToQueuePrintJob; +} + +void java_lang_RuntimePermission_PUT_permissionToQueuePrintJob(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToQueuePrintJob = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetFactory() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToSetFactory; +} + +void java_lang_RuntimePermission_PUT_permissionToSetFactory(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToSetFactory = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetIO() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToSetIO; +} + +void java_lang_RuntimePermission_PUT_permissionToSetIO(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToSetIO = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToStopThread() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToStopThread; +} + +void java_lang_RuntimePermission_PUT_permissionToStopThread(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToStopThread = v; +} + +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetContextClassLoader() +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + return _STATIC_java_lang_RuntimePermission_permissionToSetContextClassLoader; +} + +void java_lang_RuntimePermission_PUT_permissionToSetContextClassLoader(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_RuntimePermission) +_STATIC_java_lang_RuntimePermission_permissionToSetContextClassLoader = v; +} + +void java_lang_RuntimePermission___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_RuntimePermission___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.RuntimePermission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("RuntimePermission.java", 34) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 35) + // "setSecurityManager" + _r1.o = xmlvm_create_java_string_from_pool(694); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToSetSecurityManager( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 37) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 38) + // "createSecurityManager" + _r1.o = xmlvm_create_java_string_from_pool(695); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToCreateSecurityManager( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 40) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 41) + // "getProtectionDomain" + _r1.o = xmlvm_create_java_string_from_pool(696); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToGetProtectionDomain( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 43) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 44) + // "getClassLoader" + _r1.o = xmlvm_create_java_string_from_pool(697); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToGetClassLoader( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 46) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 47) + // "createClassLoader" + _r1.o = xmlvm_create_java_string_from_pool(698); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToCreateClassLoader( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 49) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 50) + // "modifyThread" + _r1.o = xmlvm_create_java_string_from_pool(699); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToModifyThread( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 52) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 53) + // "modifyThreadGroup" + _r1.o = xmlvm_create_java_string_from_pool(700); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToModifyThreadGroup( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 55) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 56) + // "exitVM" + _r1.o = xmlvm_create_java_string_from_pool(168); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToExitVM( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 58) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 59) + // "readFileDescriptor" + _r1.o = xmlvm_create_java_string_from_pool(701); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToReadFileDescriptor( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 61) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 62) + // "writeFileDescriptor" + _r1.o = xmlvm_create_java_string_from_pool(702); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToWriteFileDescriptor( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 64) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 65) + // "queuePrintJob" + _r1.o = xmlvm_create_java_string_from_pool(703); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToQueuePrintJob( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 67) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 68) + // "setFactory" + _r1.o = xmlvm_create_java_string_from_pool(704); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToSetFactory( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 70) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 71) + // "setIO" + _r1.o = xmlvm_create_java_string_from_pool(705); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToSetIO( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 73) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 74) + // "stopThread" + _r1.o = xmlvm_create_java_string_from_pool(706); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToStopThread( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 76) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 77) + // "setContextClassLoader" + _r1.o = xmlvm_create_java_string_from_pool(707); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_lang_RuntimePermission_PUT_permissionToSetContextClassLoader( _r0.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 27) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_RuntimePermission___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_RuntimePermission___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.RuntimePermission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("RuntimePermission.java", 86) + XMLVM_CHECK_NPE(0) + java_security_BasicPermission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 87) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_RuntimePermission___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_RuntimePermission___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.RuntimePermission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("RuntimePermission.java", 99) + XMLVM_CHECK_NPE(0) + java_security_BasicPermission___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + XMLVM_SOURCE_POSITION("RuntimePermission.java", 100) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_RuntimePermission.h b/tests/nbody-java/java_lang_RuntimePermission.h new file mode 100644 index 0000000000000..98dacb4ee3943 --- /dev/null +++ b/tests/nbody-java/java_lang_RuntimePermission.h @@ -0,0 +1,89 @@ +#ifndef __JAVA_LANG_RUNTIMEPERMISSION__ +#define __JAVA_LANG_RUNTIMEPERMISSION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_RuntimePermission 1 +// Implemented interfaces: +// Super Class: +#include "java_security_BasicPermission.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.RuntimePermission +XMLVM_DEFINE_CLASS(java_lang_RuntimePermission, 10, XMLVM_ITABLE_SIZE_java_lang_RuntimePermission) + +extern JAVA_OBJECT __CLASS_java_lang_RuntimePermission; +extern JAVA_OBJECT __CLASS_java_lang_RuntimePermission_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_RuntimePermission_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_RuntimePermission_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_RuntimePermission +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_RuntimePermission \ + __INSTANCE_FIELDS_java_security_BasicPermission; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_RuntimePermission \ + } java_lang_RuntimePermission + +struct java_lang_RuntimePermission { + __TIB_DEFINITION_java_lang_RuntimePermission* tib; + struct { + __INSTANCE_FIELDS_java_lang_RuntimePermission; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimePermission +#define XMLVM_FORWARD_DECL_java_lang_RuntimePermission +typedef struct java_lang_RuntimePermission java_lang_RuntimePermission; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_RuntimePermission 10 + +void __INIT_java_lang_RuntimePermission(); +void __INIT_IMPL_java_lang_RuntimePermission(); +void __DELETE_java_lang_RuntimePermission(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_RuntimePermission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_RuntimePermission(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_RuntimePermission(); +JAVA_LONG java_lang_RuntimePermission_GET_serialVersionUID(); +void java_lang_RuntimePermission_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetSecurityManager(); +void java_lang_RuntimePermission_PUT_permissionToSetSecurityManager(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToCreateSecurityManager(); +void java_lang_RuntimePermission_PUT_permissionToCreateSecurityManager(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToGetProtectionDomain(); +void java_lang_RuntimePermission_PUT_permissionToGetProtectionDomain(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToGetClassLoader(); +void java_lang_RuntimePermission_PUT_permissionToGetClassLoader(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToCreateClassLoader(); +void java_lang_RuntimePermission_PUT_permissionToCreateClassLoader(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToModifyThread(); +void java_lang_RuntimePermission_PUT_permissionToModifyThread(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToModifyThreadGroup(); +void java_lang_RuntimePermission_PUT_permissionToModifyThreadGroup(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToExitVM(); +void java_lang_RuntimePermission_PUT_permissionToExitVM(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToReadFileDescriptor(); +void java_lang_RuntimePermission_PUT_permissionToReadFileDescriptor(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToWriteFileDescriptor(); +void java_lang_RuntimePermission_PUT_permissionToWriteFileDescriptor(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToQueuePrintJob(); +void java_lang_RuntimePermission_PUT_permissionToQueuePrintJob(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetFactory(); +void java_lang_RuntimePermission_PUT_permissionToSetFactory(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetIO(); +void java_lang_RuntimePermission_PUT_permissionToSetIO(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToStopThread(); +void java_lang_RuntimePermission_PUT_permissionToStopThread(JAVA_OBJECT v); +JAVA_OBJECT java_lang_RuntimePermission_GET_permissionToSetContextClassLoader(); +void java_lang_RuntimePermission_PUT_permissionToSetContextClassLoader(JAVA_OBJECT v); +void java_lang_RuntimePermission___CLINIT_(); +void java_lang_RuntimePermission___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_RuntimePermission___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_lang_SecurityManager.c b/tests/nbody-java/java_lang_SecurityManager.c new file mode 100644 index 0000000000000..426a7304f0234 --- /dev/null +++ b/tests/nbody-java/java_lang_SecurityManager.c @@ -0,0 +1,1722 @@ +#include "xmlvm.h" +#include "java_io_File.h" +#include "java_io_FileDescriptor.h" +#include "java_lang_Class.h" +#include "java_lang_ClassLoader.h" +#include "java_lang_ClassNotFoundException.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_RuntimePermission.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_Thread.h" +#include "java_lang_ThreadGroup.h" +#include "java_lang_reflect_Constructor.h" +#include "java_net_InetAddress.h" +#include "java_security_AccessController.h" +#include "java_security_Permission.h" +#include "java_security_PrivilegedAction.h" +#include "java_util_PropertyPermission.h" +#include "org_apache_harmony_luni_util_PriviAction.h" + +#include "java_lang_SecurityManager.h" + +#define XMLVM_CURRENT_CLASS_NAME SecurityManager +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_SecurityManager + +__TIB_DEFINITION_java_lang_SecurityManager __TIB_java_lang_SecurityManager = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_SecurityManager, // classInitializer + "java.lang.SecurityManager", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_SecurityManager), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_SecurityManager; +JAVA_OBJECT __CLASS_java_lang_SecurityManager_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_SecurityManager_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_SecurityManager_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_SecurityManager_READ_WRITE_ALL_PROPERTIES_PERMISSION; +static JAVA_OBJECT _STATIC_java_lang_SecurityManager_PKG_ACC_KEY; +static JAVA_OBJECT _STATIC_java_lang_SecurityManager_PKG_DEF_KEY; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_SecurityManager() +{ + staticInitializerLock(&__TIB_java_lang_SecurityManager); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_SecurityManager.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_SecurityManager.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_SecurityManager); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_SecurityManager.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_SecurityManager.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_SecurityManager.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.SecurityManager") + __INIT_IMPL_java_lang_SecurityManager(); + } +} + +void __INIT_IMPL_java_lang_SecurityManager() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_SecurityManager.newInstanceFunc = __NEW_INSTANCE_java_lang_SecurityManager; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_SecurityManager.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_SecurityManager.numImplementedInterfaces = 0; + __TIB_java_lang_SecurityManager.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_SecurityManager_READ_WRITE_ALL_PROPERTIES_PERMISSION = (java_util_PropertyPermission*) JAVA_NULL; + _STATIC_java_lang_SecurityManager_PKG_ACC_KEY = (java_lang_String*) xmlvm_create_java_string_from_pool(780); + _STATIC_java_lang_SecurityManager_PKG_DEF_KEY = (java_lang_String*) xmlvm_create_java_string_from_pool(781); + + __TIB_java_lang_SecurityManager.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_SecurityManager.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_SecurityManager.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_SecurityManager.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_SecurityManager.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_SecurityManager.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_SecurityManager.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_SecurityManager.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_SecurityManager = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_SecurityManager); + __TIB_java_lang_SecurityManager.clazz = __CLASS_java_lang_SecurityManager; + __TIB_java_lang_SecurityManager.baseType = JAVA_NULL; + __CLASS_java_lang_SecurityManager_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_SecurityManager); + __CLASS_java_lang_SecurityManager_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_SecurityManager_1ARRAY); + __CLASS_java_lang_SecurityManager_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_SecurityManager_2ARRAY); + java_lang_SecurityManager___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_SecurityManager] + //XMLVM_END_WRAPPER + + __TIB_java_lang_SecurityManager.classInitialized = 1; +} + +void __DELETE_java_lang_SecurityManager(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_SecurityManager] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_SecurityManager(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_SecurityManager*) me)->fields.java_lang_SecurityManager.inCheck_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_SecurityManager] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_SecurityManager() +{ XMLVM_CLASS_INIT(java_lang_SecurityManager) +java_lang_SecurityManager* me = (java_lang_SecurityManager*) XMLVM_MALLOC(sizeof(java_lang_SecurityManager)); + me->tib = &__TIB_java_lang_SecurityManager; + __INIT_INSTANCE_MEMBERS_java_lang_SecurityManager(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_SecurityManager] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_SecurityManager() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_SecurityManager(); + java_lang_SecurityManager___INIT___(me); + return me; +} + +JAVA_OBJECT java_lang_SecurityManager_GET_READ_WRITE_ALL_PROPERTIES_PERMISSION() +{ + XMLVM_CLASS_INIT(java_lang_SecurityManager) + return _STATIC_java_lang_SecurityManager_READ_WRITE_ALL_PROPERTIES_PERMISSION; +} + +void java_lang_SecurityManager_PUT_READ_WRITE_ALL_PROPERTIES_PERMISSION(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_SecurityManager) +_STATIC_java_lang_SecurityManager_READ_WRITE_ALL_PROPERTIES_PERMISSION = v; +} + +JAVA_OBJECT java_lang_SecurityManager_GET_PKG_ACC_KEY() +{ + XMLVM_CLASS_INIT(java_lang_SecurityManager) + return _STATIC_java_lang_SecurityManager_PKG_ACC_KEY; +} + +void java_lang_SecurityManager_PUT_PKG_ACC_KEY(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_SecurityManager) +_STATIC_java_lang_SecurityManager_PKG_ACC_KEY = v; +} + +JAVA_OBJECT java_lang_SecurityManager_GET_PKG_DEF_KEY() +{ + XMLVM_CLASS_INIT(java_lang_SecurityManager) + return _STATIC_java_lang_SecurityManager_PKG_DEF_KEY; +} + +void java_lang_SecurityManager_PUT_PKG_DEF_KEY(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_SecurityManager) +_STATIC_java_lang_SecurityManager_PKG_DEF_KEY = v; +} + +void java_lang_SecurityManager___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager___INIT___] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 71) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 81) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkAccept___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkAccept___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkAccept", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("SecurityManager.java", 98) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 99) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 101) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + _r2.i = 58; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[6])(_r1.o, _r2.i); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r5.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + // "accept" + _r2.o = xmlvm_create_java_string_from_pool(782); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 102) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkAccess___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkAccess___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 119) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkAccess___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkAccess___java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 140) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkConnect___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkConnect___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkConnect", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("SecurityManager.java", 158) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 159) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 161) + if (_r5.i <= 0) goto label44; + XMLVM_SOURCE_POSITION("SecurityManager.java", 162) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + _r2.i = 58; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[6])(_r1.o, _r2.i); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r5.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + // "connect" + _r2.o = xmlvm_create_java_string_from_pool(783); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + label43:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 166) + XMLVM_EXIT_METHOD() + return; + label44:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 164) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "resolve" + _r1.o = xmlvm_create_java_string_from_pool(784); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + goto label43; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkConnect___java_lang_String_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkConnect___java_lang_String_int_java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkConnect", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + _r6.o = n3; + XMLVM_SOURCE_POSITION("SecurityManager.java", 186) + if (_r5.i <= 0) goto label36; + XMLVM_SOURCE_POSITION("SecurityManager.java", 187) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + _r2.i = 58; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[6])(_r1.o, _r2.i); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r5.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + // "connect" + _r2.o = xmlvm_create_java_string_from_pool(783); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission_java_lang_Object(_r3.o, _r0.o, _r6.o); + label35:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 192) + XMLVM_EXIT_METHOD() + return; + label36:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 190) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "resolve" + _r1.o = xmlvm_create_java_string_from_pool(784); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission_java_lang_Object(_r3.o, _r0.o, _r6.o); + goto label35; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkCreateClassLoader__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkCreateClassLoader__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkCreateClassLoader", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 203) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkDelete___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkDelete___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkDelete", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 215) + + + // Red class access removed: java.io.FilePermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "delete" + _r1.o = xmlvm_create_java_string_from_pool(785); + + + // Red class access removed: java.io.FilePermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 216) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkExec___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkExec___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkExec", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 228) + + + // Red class access removed: java.io.FilePermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_io_File(); + XMLVM_CHECK_NPE(1) + java_io_File___INIT____java_lang_String(_r1.o, _r4.o); + XMLVM_CHECK_NPE(1) + _r1.i = java_io_File_isAbsolute__(_r1.o); + if (_r1.i == 0) goto label23; + _r1 = _r4; + label14:; + // "execute" + _r2.o = xmlvm_create_java_string_from_pool(786); + + + // Red class access removed: java.io.FilePermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 230) + XMLVM_EXIT_METHOD() + return; + label23:; + // "<>" + _r1.o = xmlvm_create_java_string_from_pool(787); + goto label14; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkExit___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkExit___int] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkExit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 245) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkLink___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkLink___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkLink", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 257) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 258) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 260) + _r0.o = __NEW_java_lang_RuntimePermission(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "loadLibrary." + _r2.o = xmlvm_create_java_string_from_pool(788); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 261) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkListen___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkListen___int] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkListen", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + // "listen" + _r3.o = xmlvm_create_java_string_from_pool(789); + XMLVM_SOURCE_POSITION("SecurityManager.java", 273) + if (_r5.i != 0) goto label17; + XMLVM_SOURCE_POSITION("SecurityManager.java", 274) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "localhost:1024-" + _r1.o = xmlvm_create_java_string_from_pool(790); + // "listen" + _r2.o = xmlvm_create_java_string_from_pool(789); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r4.o, _r0.o); + label16:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 278) + XMLVM_EXIT_METHOD() + return; + label17:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 276) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "localhost:" + _r2.o = xmlvm_create_java_string_from_pool(791); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r5.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + // "listen" + _r2.o = xmlvm_create_java_string_from_pool(789); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r4.o, _r0.o); + goto label16; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkMemberAccess___java_lang_Class_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkMemberAccess___java_lang_Class_int] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkMemberAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("SecurityManager.java", 300) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 301) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 303) + if (_r4.i != 0) goto label11; + label10:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 322) + XMLVM_EXIT_METHOD() + return; + label11:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 321) + _r0.o = __NEW_java_lang_RuntimePermission(); + // "accessDeclaredMembers" + _r1.o = xmlvm_create_java_string_from_pool(792); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r2.o, _r0.o); + goto label10; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkMulticast___java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkMulticast___java_net_InetAddress] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkMulticast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 334) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + //java_net_InetAddress_getHostAddress__[6] + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_net_InetAddress*) _r4.o)->tib->vtable[6])(_r4.o); + // "accept,connect" + _r2.o = xmlvm_create_java_string_from_pool(793); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 336) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkMulticast___java_net_InetAddress_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkMulticast___java_net_InetAddress_byte] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkMulticast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("SecurityManager.java", 353) + + + // Red class access removed: java.net.SocketPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + //java_net_InetAddress_getHostAddress__[6] + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_net_InetAddress*) _r4.o)->tib->vtable[6])(_r4.o); + // "accept,connect" + _r2.o = xmlvm_create_java_string_from_pool(793); + + + // Red class access removed: java.net.SocketPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 355) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkPackageAccess___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPackageAccess___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPackageAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 368) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 369) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 371) + // "package.access" + _r0.o = xmlvm_create_java_string_from_pool(780); + _r0.i = java_lang_SecurityManager_checkPackageProperty___java_lang_String_java_lang_String(_r0.o, _r4.o); + if (_r0.i == 0) goto label43; + XMLVM_SOURCE_POSITION("SecurityManager.java", 372) + _r0.o = __NEW_java_lang_RuntimePermission(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "accessClassInPackage." + _r2.o = xmlvm_create_java_string_from_pool(794); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + label43:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 375) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkPackageDefinition___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPackageDefinition___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPackageDefinition", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 388) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 389) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 391) + // "package.definition" + _r0.o = xmlvm_create_java_string_from_pool(781); + _r0.i = java_lang_SecurityManager_checkPackageProperty___java_lang_String_java_lang_String(_r0.o, _r4.o); + if (_r0.i == 0) goto label43; + XMLVM_SOURCE_POSITION("SecurityManager.java", 392) + _r0.o = __NEW_java_lang_RuntimePermission(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "defineClassInPackage." + _r2.o = xmlvm_create_java_string_from_pool(795); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r3.o, _r0.o); + label43:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 395) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_SecurityManager_checkPackageProperty___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_SecurityManager) + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPackageProperty___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPackageProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + _r11.o = n1; + _r12.o = n2; + _r10.i = 46; + _r9.i = 1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 403) + _r8.o = org_apache_harmony_luni_util_PriviAction_getSecurityProperty___java_lang_String(_r11.o); + _r3.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r8.o); + _r3.o = _r3.o; + if (_r3.o == JAVA_NULL) goto label93; + XMLVM_SOURCE_POSITION("SecurityManager.java", 405) + XMLVM_SOURCE_POSITION("SecurityManager.java", 406) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 407) + // ", *" + _r8.o = xmlvm_create_java_string_from_pool(796); + XMLVM_CHECK_NPE(3) + _r7.o = java_lang_String_split___java_lang_String(_r3.o, _r8.o); + _r0 = _r7; + XMLVM_SOURCE_POSITION("SecurityManager.java", 408) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r1.i = 0; + label28:; + if (_r1.i >= _r2.i) goto label93; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("SecurityManager.java", 409) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(6) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r6.o)->tib->vtable[8])(_r6.o); + if (_r4.i <= _r5.i) goto label60; + XMLVM_SOURCE_POSITION("SecurityManager.java", 410) + XMLVM_CHECK_NPE(12) + _r8.i = java_lang_String_startsWith___java_lang_String(_r12.o, _r6.o); + if (_r8.i == 0) goto label60; + _r8.i = _r5.i - _r9.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(6) + _r8.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r6.o)->tib->vtable[6])(_r6.o, _r8.i); + if (_r8.i == _r10.i) goto label58; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r8.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r5.i); + if (_r8.i != _r10.i) goto label60; + label58:; + _r8 = _r9; + label59:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 413) + XMLVM_SOURCE_POSITION("SecurityManager.java", 423) + XMLVM_EXIT_METHOD() + return _r8.i; + label60:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 414) + if (_r4.i != _r5.i) goto label70; + XMLVM_CHECK_NPE(6) + _r8.i = java_lang_String_startsWith___java_lang_String(_r6.o, _r12.o); + if (_r8.i == 0) goto label70; + _r8 = _r9; + XMLVM_SOURCE_POSITION("SecurityManager.java", 415) + goto label59; + label70:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 416) + _r8.i = _r4.i + 1; + if (_r8.i != _r5.i) goto label90; + XMLVM_CHECK_NPE(6) + _r8.i = java_lang_String_startsWith___java_lang_String(_r6.o, _r12.o); + if (_r8.i == 0) goto label90; + _r8.i = _r5.i - _r9.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(6) + _r8.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r6.o)->tib->vtable[6])(_r6.o, _r8.i); + if (_r8.i != _r10.i) goto label90; + _r8 = _r9; + XMLVM_SOURCE_POSITION("SecurityManager.java", 418) + goto label59; + label90:; + _r1.i = _r1.i + 1; + goto label28; + label93:; + _r8.i = 0; + goto label59; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkPropertiesAccess__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPropertiesAccess__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPropertiesAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 435) + _r0.o = java_lang_SecurityManager_GET_READ_WRITE_ALL_PROPERTIES_PERMISSION(); + XMLVM_CHECK_NPE(1) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 436) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkPropertyAccess___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPropertyAccess___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPropertyAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 449) + _r0.o = __NEW_java_util_PropertyPermission(); + // "read" + _r1.o = xmlvm_create_java_string_from_pool(670); + XMLVM_CHECK_NPE(0) + java_util_PropertyPermission___INIT____java_lang_String_java_lang_String(_r0.o, _r3.o, _r1.o); + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 450) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkRead___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkRead___java_io_FileDescriptor] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkRead", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 462) + if (_r2.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 463) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 466) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkRead___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkRead___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkRead", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 479) + + + // Red class access removed: java.io.FilePermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "read" + _r1.o = xmlvm_create_java_string_from_pool(670); + + + // Red class access removed: java.io.FilePermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 480) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkRead___java_lang_String_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkRead___java_lang_String_java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkRead", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("SecurityManager.java", 494) + + + // Red class access removed: java.io.FilePermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "read" + _r1.o = xmlvm_create_java_string_from_pool(670); + + + // Red class access removed: java.io.FilePermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkPermission___java_security_Permission_java_lang_Object(_r2.o, _r0.o, _r4.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 495) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkSecurityAccess___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkSecurityAccess___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkSecurityAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 508) + + + // Red class access removed: java.security.SecurityPermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.security.SecurityPermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 509) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkSetFactory__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkSetFactory__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkSetFactory", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 521) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_SecurityManager_checkTopLevelWindow___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkTopLevelWindow___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkTopLevelWindow", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + _r9.o = me; + _r10.o = n1; + _r8.i = 1; + _r7.i = 0; + XMLVM_SOURCE_POSITION("SecurityManager.java", 535) + if (_r10.o != JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("SecurityManager.java", 536) + _r4.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(4) + java_lang_NullPointerException___INIT___(_r4.o); + XMLVM_THROW_CUSTOM(_r4.o) + label10:; + XMLVM_TRY_BEGIN(w5583aaac29b1c12) + // Begin try + XMLVM_SOURCE_POSITION("SecurityManager.java", 539) + // "java.awt.AWTPermission" + _r4.o = xmlvm_create_java_string_from_pool(797); + _r0.o = java_lang_Class_forName___java_lang_String(_r4.o); + _r4.i = 1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 540) + XMLVM_CLASS_INIT(java_lang_Class) + _r4.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Class, _r4.i); + _r5.i = 0; + XMLVM_CLASS_INIT(java_lang_String) + _r6.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r6.o; + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_Class_getConstructor___java_lang_Class_1ARRAY(_r0.o, _r4.o); + _r4.i = 1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 542) + XMLVM_CLASS_INIT(java_lang_Object) + _r4.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r4.i); + _r5.i = 0; + // "showWindowWithoutWarningBanner" + _r6.o = xmlvm_create_java_string_from_pool(798); + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r6.o; + XMLVM_CHECK_NPE(1) + _r3.o = java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY(_r1.o, _r4.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 544) + _r3.o = _r3.o; + XMLVM_CHECK_NPE(9) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r9.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5583aaac29b1c12) + XMLVM_CATCH_SPECIFIC(w5583aaac29b1c12,java_lang_ClassNotFoundException,59) + XMLVM_CATCH_END(w5583aaac29b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w5583aaac29b1c12) + label45:; + _r4 = _r8; + label46:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 553) + XMLVM_EXIT_METHOD() + return _r4.i; + label47:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 550) + java_lang_Thread* curThread_w5583aaac29b1c20 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w5583aaac29b1c20->fields.java_lang_Thread.xmlvmException_; + _r2 = _r4; + _r4 = _r7; + XMLVM_SOURCE_POSITION("SecurityManager.java", 551) + goto label46; + label51:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 549) + java_lang_Thread* curThread_w5583aaac29b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w5583aaac29b1c27->fields.java_lang_Thread.xmlvmException_; + goto label45; + label53:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 548) + java_lang_Thread* curThread_w5583aaac29b1c31 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w5583aaac29b1c31->fields.java_lang_Thread.xmlvmException_; + goto label45; + label55:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 547) + java_lang_Thread* curThread_w5583aaac29b1c35 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w5583aaac29b1c35->fields.java_lang_Thread.xmlvmException_; + goto label45; + label57:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 546) + java_lang_Thread* curThread_w5583aaac29b1c39 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w5583aaac29b1c39->fields.java_lang_Thread.xmlvmException_; + goto label45; + label59:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 545) + java_lang_Thread* curThread_w5583aaac29b1c43 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w5583aaac29b1c43->fields.java_lang_Thread.xmlvmException_; + goto label45; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkSystemClipboardAccess__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkSystemClipboardAccess__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkSystemClipboardAccess", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r6.o = me; + XMLVM_TRY_BEGIN(w5583aaac30b1b2) + // Begin try + XMLVM_SOURCE_POSITION("SecurityManager.java", 566) + // "java.awt.AWTPermission" + _r3.o = xmlvm_create_java_string_from_pool(797); + _r0.o = java_lang_Class_forName___java_lang_String(_r3.o); + _r3.i = 1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 567) + XMLVM_CLASS_INIT(java_lang_Class) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Class, _r3.i); + _r4.i = 0; + XMLVM_CLASS_INIT(java_lang_String) + _r5.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_Class_getConstructor___java_lang_Class_1ARRAY(_r0.o, _r3.o); + _r3.i = 1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 569) + XMLVM_CLASS_INIT(java_lang_Object) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r3.i); + _r4.i = 0; + // "accessClipboard" + _r5.o = xmlvm_create_java_string_from_pool(799); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(1) + _r2.o = java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY(_r1.o, _r3.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 570) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(6) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r6.o, _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5583aaac30b1b2) + XMLVM_CATCH_SPECIFIC(w5583aaac30b1b2,java_lang_ClassNotFoundException,49) + XMLVM_CATCH_END(w5583aaac30b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w5583aaac30b1b2) + XMLVM_SOURCE_POSITION("SecurityManager.java", 571) + XMLVM_EXIT_METHOD() + return; + label36:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 576) + java_lang_Thread* curThread_w5583aaac30b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac30b1b7->fields.java_lang_Thread.xmlvmException_; + label37:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 578) + + + // Red class access removed: java.lang.SecurityException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.SecurityException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + label43:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 575) + java_lang_Thread* curThread_w5583aaac30b1c15 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac30b1c15->fields.java_lang_Thread.xmlvmException_; + goto label37; + label45:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 574) + java_lang_Thread* curThread_w5583aaac30b1c19 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac30b1c19->fields.java_lang_Thread.xmlvmException_; + goto label37; + label47:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 573) + java_lang_Thread* curThread_w5583aaac30b1c23 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac30b1c23->fields.java_lang_Thread.xmlvmException_; + goto label37; + label49:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 572) + java_lang_Thread* curThread_w5583aaac30b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac30b1c27->fields.java_lang_Thread.xmlvmException_; + goto label37; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkAwtEventQueueAccess__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkAwtEventQueueAccess__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkAwtEventQueueAccess", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r6.o = me; + XMLVM_TRY_BEGIN(w5583aaac31b1b2) + // Begin try + XMLVM_SOURCE_POSITION("SecurityManager.java", 591) + // "java.awt.AWTPermission" + _r3.o = xmlvm_create_java_string_from_pool(797); + _r0.o = java_lang_Class_forName___java_lang_String(_r3.o); + _r3.i = 1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 592) + XMLVM_CLASS_INIT(java_lang_Class) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Class, _r3.i); + _r4.i = 0; + XMLVM_CLASS_INIT(java_lang_String) + _r5.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_Class_getConstructor___java_lang_Class_1ARRAY(_r0.o, _r3.o); + _r3.i = 1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 594) + XMLVM_CLASS_INIT(java_lang_Object) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r3.i); + _r4.i = 0; + // "accessEventQueue" + _r5.o = xmlvm_create_java_string_from_pool(800); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(1) + _r2.o = java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY(_r1.o, _r3.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 595) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(6) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r6.o, _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5583aaac31b1b2) + XMLVM_CATCH_SPECIFIC(w5583aaac31b1b2,java_lang_ClassNotFoundException,49) + XMLVM_CATCH_END(w5583aaac31b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w5583aaac31b1b2) + XMLVM_SOURCE_POSITION("SecurityManager.java", 596) + XMLVM_EXIT_METHOD() + return; + label36:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 601) + java_lang_Thread* curThread_w5583aaac31b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac31b1b7->fields.java_lang_Thread.xmlvmException_; + label37:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 603) + + + // Red class access removed: java.lang.SecurityException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.SecurityException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + label43:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 600) + java_lang_Thread* curThread_w5583aaac31b1c15 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac31b1c15->fields.java_lang_Thread.xmlvmException_; + goto label37; + label45:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 599) + java_lang_Thread* curThread_w5583aaac31b1c19 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac31b1c19->fields.java_lang_Thread.xmlvmException_; + goto label37; + label47:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 598) + java_lang_Thread* curThread_w5583aaac31b1c23 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac31b1c23->fields.java_lang_Thread.xmlvmException_; + goto label37; + label49:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 597) + java_lang_Thread* curThread_w5583aaac31b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w5583aaac31b1c27->fields.java_lang_Thread.xmlvmException_; + goto label37; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkPrintJobAccess__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPrintJobAccess__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPrintJobAccess", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 615) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkWrite___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkWrite___java_io_FileDescriptor] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkWrite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 627) + if (_r2.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("SecurityManager.java", 628) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 631) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkWrite___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkWrite___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkWrite", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 644) + + + // Red class access removed: java.io.FilePermission::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "write" + _r1.o = xmlvm_create_java_string_from_pool(671); + + + // Red class access removed: java.io.FilePermission:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("SecurityManager.java", 645) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_SecurityManager_getInCheck__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_getInCheck__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "getInCheck", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 656) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_SecurityManager*) _r1.o)->fields.java_lang_SecurityManager.inCheck_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_SecurityManager_getClassContext__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_getClassContext__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "getClassContext", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 668) + _r0.i = -1; + _r1.i = 0; + _r0.o = java_lang_Class_getStackClasses___int_boolean(_r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_SecurityManager_currentClassLoader__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_currentClassLoader__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "currentClassLoader", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 703) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_SecurityManager_classLoaderDepth__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_classLoaderDepth__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "classLoaderDepth", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 738) + _r0.i = -1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_SecurityManager_currentLoadedClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_currentLoadedClass__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "currentLoadedClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 772) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_SecurityManager_classDepth___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_classDepth___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "classDepth", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = -1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 788) + _r2.i = 0; + _r0.o = java_lang_Class_getStackClasses___int_boolean(_r3.i, _r2.i); + _r1.i = 0; + label7:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 789) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r1.i >= _r2.i) goto label27; + XMLVM_SOURCE_POSITION("SecurityManager.java", 790) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_Class_getName__(_r2.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r5.o); + if (_r2.i == 0) goto label24; + _r2 = _r1; + label23:; + XMLVM_SOURCE_POSITION("SecurityManager.java", 791) + XMLVM_SOURCE_POSITION("SecurityManager.java", 794) + XMLVM_EXIT_METHOD() + return _r2.i; + label24:; + _r1.i = _r1.i + 1; + goto label7; + label27:; + _r2 = _r3; + goto label23; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_SecurityManager_inClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_inClass___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "inClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 809) + XMLVM_CHECK_NPE(2) + _r0.i = java_lang_SecurityManager_classDepth___java_lang_String(_r2.o, _r3.o); + _r1.i = -1; + if (_r0.i == _r1.i) goto label9; + _r0.i = 1; + label8:; + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + _r0.i = 0; + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_SecurityManager_inClassLoader__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_inClassLoader__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "inClassLoader", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 822) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_SecurityManager_currentClassLoader__(_r1.o); + if (_r0.o == JAVA_NULL) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_SecurityManager_getThreadGroup__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_getThreadGroup__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "getThreadGroup", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 833) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Thread_getThreadGroup__(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_SecurityManager_getSecurityContext__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_getSecurityContext__] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "getSecurityContext", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("SecurityManager.java", 845) + _r0.o = java_security_AccessController_getContext__(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkPermission___java_security_Permission(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPermission___java_security_Permission] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPermission", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("SecurityManager.java", 865) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager_checkPermission___java_security_Permission_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager_checkPermission___java_security_Permission_java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "checkPermission", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("SecurityManager.java", 895) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_SecurityManager___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_SecurityManager___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.SecurityManager", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("SecurityManager.java", 50) + _r0.o = __NEW_java_util_PropertyPermission(); + // "*" + _r1.o = xmlvm_create_java_string_from_pool(801); + // "read,write" + _r2.o = xmlvm_create_java_string_from_pool(672); + XMLVM_CHECK_NPE(0) + java_util_PropertyPermission___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + java_lang_SecurityManager_PUT_READ_WRITE_ALL_PROPERTIES_PERMISSION( _r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_SecurityManager.h b/tests/nbody-java/java_lang_SecurityManager.h new file mode 100644 index 0000000000000..7315aa327c7e1 --- /dev/null +++ b/tests/nbody-java/java_lang_SecurityManager.h @@ -0,0 +1,173 @@ +#ifndef __JAVA_LANG_SECURITYMANAGER__ +#define __JAVA_LANG_SECURITYMANAGER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_SecurityManager 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_File +#define XMLVM_FORWARD_DECL_java_io_File +XMLVM_FORWARD_DECL(java_io_File) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_FileDescriptor +#define XMLVM_FORWARD_DECL_java_io_FileDescriptor +XMLVM_FORWARD_DECL(java_io_FileDescriptor) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader +#define XMLVM_FORWARD_DECL_java_lang_ClassLoader +XMLVM_FORWARD_DECL(java_lang_ClassLoader) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassNotFoundException +#define XMLVM_FORWARD_DECL_java_lang_ClassNotFoundException +XMLVM_FORWARD_DECL(java_lang_ClassNotFoundException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimePermission +#define XMLVM_FORWARD_DECL_java_lang_RuntimePermission +XMLVM_FORWARD_DECL(java_lang_RuntimePermission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup +XMLVM_FORWARD_DECL(java_lang_ThreadGroup) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +#define XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +XMLVM_FORWARD_DECL(java_lang_reflect_Constructor) +#endif +#ifndef XMLVM_FORWARD_DECL_java_net_InetAddress +#define XMLVM_FORWARD_DECL_java_net_InetAddress +XMLVM_FORWARD_DECL(java_net_InetAddress) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_Permission +#define XMLVM_FORWARD_DECL_java_security_Permission +XMLVM_FORWARD_DECL(java_security_Permission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_PrivilegedAction +#define XMLVM_FORWARD_DECL_java_security_PrivilegedAction +XMLVM_FORWARD_DECL(java_security_PrivilegedAction) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_PropertyPermission +#define XMLVM_FORWARD_DECL_java_util_PropertyPermission +XMLVM_FORWARD_DECL(java_util_PropertyPermission) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_PriviAction) +#endif +// Class declarations for java.lang.SecurityManager +XMLVM_DEFINE_CLASS(java_lang_SecurityManager, 6, XMLVM_ITABLE_SIZE_java_lang_SecurityManager) + +extern JAVA_OBJECT __CLASS_java_lang_SecurityManager; +extern JAVA_OBJECT __CLASS_java_lang_SecurityManager_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_SecurityManager_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_SecurityManager_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_SecurityManager +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_SecurityManager \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_BOOLEAN inCheck_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_SecurityManager \ + } java_lang_SecurityManager + +struct java_lang_SecurityManager { + __TIB_DEFINITION_java_lang_SecurityManager* tib; + struct { + __INSTANCE_FIELDS_java_lang_SecurityManager; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_SecurityManager +#define XMLVM_FORWARD_DECL_java_lang_SecurityManager +typedef struct java_lang_SecurityManager java_lang_SecurityManager; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_SecurityManager 6 + +void __INIT_java_lang_SecurityManager(); +void __INIT_IMPL_java_lang_SecurityManager(); +void __DELETE_java_lang_SecurityManager(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_SecurityManager(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_SecurityManager(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_SecurityManager(); +JAVA_OBJECT java_lang_SecurityManager_GET_READ_WRITE_ALL_PROPERTIES_PERMISSION(); +void java_lang_SecurityManager_PUT_READ_WRITE_ALL_PROPERTIES_PERMISSION(JAVA_OBJECT v); +JAVA_OBJECT java_lang_SecurityManager_GET_PKG_ACC_KEY(); +void java_lang_SecurityManager_PUT_PKG_ACC_KEY(JAVA_OBJECT v); +JAVA_OBJECT java_lang_SecurityManager_GET_PKG_DEF_KEY(); +void java_lang_SecurityManager_PUT_PKG_DEF_KEY(JAVA_OBJECT v); +void java_lang_SecurityManager___INIT___(JAVA_OBJECT me); +void java_lang_SecurityManager_checkAccept___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_SecurityManager_checkAccess___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkAccess___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkConnect___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_SecurityManager_checkConnect___java_lang_String_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3); +void java_lang_SecurityManager_checkCreateClassLoader__(JAVA_OBJECT me); +void java_lang_SecurityManager_checkDelete___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkExec___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkExit___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_SecurityManager_checkLink___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkListen___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_SecurityManager_checkMemberAccess___java_lang_Class_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_SecurityManager_checkMulticast___java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkMulticast___java_net_InetAddress_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2); +void java_lang_SecurityManager_checkPackageAccess___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkPackageDefinition___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_SecurityManager_checkPackageProperty___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_SecurityManager_checkPropertiesAccess__(JAVA_OBJECT me); +void java_lang_SecurityManager_checkPropertyAccess___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkRead___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkRead___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkRead___java_lang_String_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_SecurityManager_checkSecurityAccess___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkSetFactory__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_SecurityManager_checkTopLevelWindow___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkSystemClipboardAccess__(JAVA_OBJECT me); +void java_lang_SecurityManager_checkAwtEventQueueAccess__(JAVA_OBJECT me); +void java_lang_SecurityManager_checkPrintJobAccess__(JAVA_OBJECT me); +void java_lang_SecurityManager_checkWrite___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkWrite___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_SecurityManager_getInCheck__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_SecurityManager_getClassContext__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_SecurityManager_currentClassLoader__(JAVA_OBJECT me); +JAVA_INT java_lang_SecurityManager_classLoaderDepth__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_SecurityManager_currentLoadedClass__(JAVA_OBJECT me); +JAVA_INT java_lang_SecurityManager_classDepth___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_SecurityManager_inClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_SecurityManager_inClassLoader__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_SecurityManager_getThreadGroup__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_SecurityManager_getSecurityContext__(JAVA_OBJECT me); +void java_lang_SecurityManager_checkPermission___java_security_Permission(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_SecurityManager_checkPermission___java_security_Permission_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_SecurityManager___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_Short.c b/tests/nbody-java/java_lang_Short.c new file mode 100644 index 0000000000000..329dcd1582fc6 --- /dev/null +++ b/tests/nbody-java/java_lang_Short.c @@ -0,0 +1,703 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Integer.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" + +#include "java_lang_Short.h" + +#define XMLVM_CURRENT_CLASS_NAME Short +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Short + +__TIB_DEFINITION_java_lang_Short __TIB_java_lang_Short = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Short, // classInitializer + "java.lang.Short", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Number;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Number, // extends + sizeof(java_lang_Short), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Short; +JAVA_OBJECT __CLASS_java_lang_Short_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Short_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Short_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Short_serialVersionUID; +static JAVA_SHORT _STATIC_java_lang_Short_MAX_VALUE; +static JAVA_SHORT _STATIC_java_lang_Short_MIN_VALUE; +static JAVA_INT _STATIC_java_lang_Short_SIZE; +static JAVA_OBJECT _STATIC_java_lang_Short_TYPE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Short() +{ + staticInitializerLock(&__TIB_java_lang_Short); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Short.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Short.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Short); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Short.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Short.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Short.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Short") + __INIT_IMPL_java_lang_Short(); + } +} + +void __INIT_IMPL_java_lang_Short() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Number) + __TIB_java_lang_Short.newInstanceFunc = __NEW_INSTANCE_java_lang_Short; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Short.vtable, __TIB_java_lang_Number.vtable, sizeof(__TIB_java_lang_Number.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Short.vtable[6] = (VTABLE_PTR) &java_lang_Short_byteValue__; + __TIB_java_lang_Short.vtable[7] = (VTABLE_PTR) &java_lang_Short_doubleValue__; + __TIB_java_lang_Short.vtable[1] = (VTABLE_PTR) &java_lang_Short_equals___java_lang_Object; + __TIB_java_lang_Short.vtable[8] = (VTABLE_PTR) &java_lang_Short_floatValue__; + __TIB_java_lang_Short.vtable[4] = (VTABLE_PTR) &java_lang_Short_hashCode__; + __TIB_java_lang_Short.vtable[9] = (VTABLE_PTR) &java_lang_Short_intValue__; + __TIB_java_lang_Short.vtable[10] = (VTABLE_PTR) &java_lang_Short_longValue__; + __TIB_java_lang_Short.vtable[11] = (VTABLE_PTR) &java_lang_Short_shortValue__; + __TIB_java_lang_Short.vtable[5] = (VTABLE_PTR) &java_lang_Short_toString__; + __TIB_java_lang_Short.vtable[12] = (VTABLE_PTR) &java_lang_Short_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_lang_Short.numImplementedInterfaces = 2; + __TIB_java_lang_Short.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Short.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Short.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Short.itableBegin = &__TIB_java_lang_Short.itable[0]; + __TIB_java_lang_Short.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Short.vtable[12]; + + _STATIC_java_lang_Short_serialVersionUID = 7515723908773894738; + _STATIC_java_lang_Short_MAX_VALUE = 32767; + _STATIC_java_lang_Short_MIN_VALUE = -32768; + _STATIC_java_lang_Short_SIZE = 16; + _STATIC_java_lang_Short_TYPE = (java_lang_Class*) JAVA_NULL; + + __TIB_java_lang_Short.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Short.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Short.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Short.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Short.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Short.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Short.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Short.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Short = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Short); + __TIB_java_lang_Short.clazz = __CLASS_java_lang_Short; + __TIB_java_lang_Short.baseType = JAVA_NULL; + __CLASS_java_lang_Short_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Short); + __CLASS_java_lang_Short_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Short_1ARRAY); + __CLASS_java_lang_Short_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Short_2ARRAY); + java_lang_Short___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Short] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Short.classInitialized = 1; +} + +void __DELETE_java_lang_Short(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Short] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Short(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Number(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Short*) me)->fields.java_lang_Short.value_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Short] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Short() +{ XMLVM_CLASS_INIT(java_lang_Short) +java_lang_Short* me = (java_lang_Short*) XMLVM_MALLOC(sizeof(java_lang_Short)); + me->tib = &__TIB_java_lang_Short; + __INIT_INSTANCE_MEMBERS_java_lang_Short(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Short] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Short() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_Short_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Short) + return _STATIC_java_lang_Short_serialVersionUID; +} + +void java_lang_Short_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Short) +_STATIC_java_lang_Short_serialVersionUID = v; +} + +JAVA_SHORT java_lang_Short_GET_MAX_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Short) + return _STATIC_java_lang_Short_MAX_VALUE; +} + +void java_lang_Short_PUT_MAX_VALUE(JAVA_SHORT v) +{ + XMLVM_CLASS_INIT(java_lang_Short) +_STATIC_java_lang_Short_MAX_VALUE = v; +} + +JAVA_SHORT java_lang_Short_GET_MIN_VALUE() +{ + XMLVM_CLASS_INIT(java_lang_Short) + return _STATIC_java_lang_Short_MIN_VALUE; +} + +void java_lang_Short_PUT_MIN_VALUE(JAVA_SHORT v) +{ + XMLVM_CLASS_INIT(java_lang_Short) +_STATIC_java_lang_Short_MIN_VALUE = v; +} + +JAVA_INT java_lang_Short_GET_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_Short) + return _STATIC_java_lang_Short_SIZE; +} + +void java_lang_Short_PUT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Short) +_STATIC_java_lang_Short_SIZE = v; +} + +JAVA_OBJECT java_lang_Short_GET_TYPE() +{ + XMLVM_CLASS_INIT(java_lang_Short) + return _STATIC_java_lang_Short_TYPE; +} + +void java_lang_Short_PUT_TYPE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Short) +_STATIC_java_lang_Short_TYPE = v; +} + +void java_lang_Short___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Short", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Short.java", 58) + _r0.i = 0; + XMLVM_CLASS_INIT(short) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_short, _r0.i); + XMLVM_SOURCE_POSITION("Short.java", 59) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + java_lang_Short_PUT_TYPE( _r0.o); + XMLVM_SOURCE_POSITION("Short.java", 26) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Short___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Short", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Short.java", 75) + _r0.i = java_lang_Short_parseShort___java_lang_String(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_Short___INIT____short(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("Short.java", 76) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Short___INIT____short(JAVA_OBJECT me, JAVA_SHORT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short___INIT____short] + XMLVM_ENTER_METHOD("java.lang.Short", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Short.java", 84) + XMLVM_CHECK_NPE(0) + java_lang_Number___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Short.java", 85) + XMLVM_CHECK_NPE(0) + ((java_lang_Short*) _r0.o)->fields.java_lang_Short.value_ = _r1.i; + XMLVM_SOURCE_POSITION("Short.java", 86) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_lang_Short_byteValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_byteValue__] + XMLVM_ENTER_METHOD("java.lang.Short", "byteValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Short.java", 90) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Short*) _r1.o)->fields.java_lang_Short.value_; + _r0.i = (_r0.i << 24) >> 24; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Short_compareTo___java_lang_Short(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_compareTo___java_lang_Short] + XMLVM_ENTER_METHOD("java.lang.Short", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Short.java", 109) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Short*) _r2.o)->fields.java_lang_Short.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Short*) _r3.o)->fields.java_lang_Short.value_; + if (_r0.i <= _r1.i) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Short*) _r2.o)->fields.java_lang_Short.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Short*) _r3.o)->fields.java_lang_Short.value_; + if (_r0.i >= _r1.i) goto label16; + _r0.i = -1; + goto label7; + label16:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Short_decode___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_decode___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Short", "decode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Short.java", 126) + _r0.o = java_lang_Integer_decode___java_lang_String(_r2.o); + //java_lang_Integer_intValue__[9] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Integer*) _r0.o)->tib->vtable[9])(_r0.o); + XMLVM_SOURCE_POSITION("Short.java", 127) + _r1.i = (_r0.i << 16) >> 16; + if (_r1.i != _r0.i) goto label16; + XMLVM_SOURCE_POSITION("Short.java", 128) + XMLVM_SOURCE_POSITION("Short.java", 129) + _r0.o = java_lang_Short_valueOf___short(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + label16:; + XMLVM_SOURCE_POSITION("Short.java", 131) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_Short_doubleValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_doubleValue__] + XMLVM_ENTER_METHOD("java.lang.Short", "doubleValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Short.java", 136) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Short*) _r2.o)->fields.java_lang_Short.value_; + _r0.d = (JAVA_DOUBLE) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Short_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Short", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Short.java", 151) + XMLVM_CLASS_INIT(java_lang_Short) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_lang_Short); + if (_r0.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Short.java", 152) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Short*) _r2.o)->fields.java_lang_Short.value_; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Short*) _r3.o)->fields.java_lang_Short.value_; + if (_r0.i != _r1.i) goto label14; + _r0.i = 1; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 0; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_Short_floatValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_floatValue__] + XMLVM_ENTER_METHOD("java.lang.Short", "floatValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Short.java", 157) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Short*) _r1.o)->fields.java_lang_Short.value_; + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Short_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_hashCode__] + XMLVM_ENTER_METHOD("java.lang.Short", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Short.java", 162) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Short*) _r1.o)->fields.java_lang_Short.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Short_intValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_intValue__] + XMLVM_ENTER_METHOD("java.lang.Short", "intValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Short.java", 167) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Short*) _r1.o)->fields.java_lang_Short.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Short_longValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_longValue__] + XMLVM_ENTER_METHOD("java.lang.Short", "longValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Short.java", 172) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Short*) _r2.o)->fields.java_lang_Short.value_; + _r0.l = (JAVA_LONG) _r0.i; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Short_parseShort___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_parseShort___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Short", "parseShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Short.java", 187) + _r0.i = 10; + _r0.i = java_lang_Short_parseShort___java_lang_String_int(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Short_parseShort___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_parseShort___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Short", "parseShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("Short.java", 208) + _r0.i = java_lang_Integer_parseInt___java_lang_String_int(_r2.o, _r3.i); + XMLVM_SOURCE_POSITION("Short.java", 209) + _r1.i = (_r0.i << 16) >> 16; + if (_r1.i != _r0.i) goto label8; + XMLVM_SOURCE_POSITION("Short.java", 210) + XMLVM_SOURCE_POSITION("Short.java", 211) + XMLVM_EXIT_METHOD() + return _r1.i; + label8:; + XMLVM_SOURCE_POSITION("Short.java", 213) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Short_shortValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_shortValue__] + XMLVM_ENTER_METHOD("java.lang.Short", "shortValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Short.java", 223) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Short*) _r1.o)->fields.java_lang_Short.value_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Short_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_toString__] + XMLVM_ENTER_METHOD("java.lang.Short", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Short.java", 228) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Short*) _r1.o)->fields.java_lang_Short.value_; + _r0.o = java_lang_Integer_toString___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Short_toString___short(JAVA_SHORT n1) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_toString___short] + XMLVM_ENTER_METHOD("java.lang.Short", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Short.java", 240) + _r0.o = java_lang_Integer_toString___int(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Short_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Short", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Short.java", 256) + _r0.i = java_lang_Short_parseShort___java_lang_String(_r1.o); + _r0.o = java_lang_Short_valueOf___short(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Short_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_valueOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Short", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Short.java", 278) + _r0.i = java_lang_Short_parseShort___java_lang_String_int(_r1.o, _r2.i); + _r0.o = java_lang_Short_valueOf___short(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_lang_Short_reverseBytes___short(JAVA_SHORT n1) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_reverseBytes___short] + XMLVM_ENTER_METHOD("java.lang.Short", "reverseBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Short.java", 290) + _r0.i = _r2.i >> 8; + _r0.i = _r0.i & 255; + _r1.i = _r2.i & 255; + _r1.i = _r1.i << 8; + _r0.i = _r0.i | _r1.i; + _r0.i = (_r0.i << 16) >> 16; + XMLVM_SOURCE_POSITION("Short.java", 292) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Short_valueOf___short(JAVA_SHORT n1) +{ + XMLVM_CLASS_INIT(java_lang_Short) + //XMLVM_BEGIN_WRAPPER[java_lang_Short_valueOf___short] + XMLVM_ENTER_METHOD("java.lang.Short", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Short.java", 308) + _r0.i = -128; + if (_r2.i < _r0.i) goto label8; + _r0.i = 127; + if (_r2.i <= _r0.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("Short.java", 309) + _r0.o = __NEW_java_lang_Short(); + XMLVM_CHECK_NPE(0) + java_lang_Short___INIT____short(_r0.o, _r2.i); + label13:; + XMLVM_SOURCE_POSITION("Short.java", 311) + XMLVM_EXIT_METHOD() + return _r0.o; + label14:; + + + // Red class access removed: java.lang.Short$valueOfCache::access$0 + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.i = _r2.i + 128; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Short_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Short_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Short", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Short.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_Short_compareTo___java_lang_Short(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Short.h b/tests/nbody-java/java_lang_Short.h new file mode 100644 index 0000000000000..73dc1442118c8 --- /dev/null +++ b/tests/nbody-java/java_lang_Short.h @@ -0,0 +1,120 @@ +#ifndef __JAVA_LANG_SHORT__ +#define __JAVA_LANG_SHORT__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Short 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Number.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.Short +XMLVM_DEFINE_CLASS(java_lang_Short, 13, XMLVM_ITABLE_SIZE_java_lang_Short) + +extern JAVA_OBJECT __CLASS_java_lang_Short; +extern JAVA_OBJECT __CLASS_java_lang_Short_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Short_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Short_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Short +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Short \ + __INSTANCE_FIELDS_java_lang_Number; \ + struct { \ + JAVA_SHORT value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Short \ + } java_lang_Short + +struct java_lang_Short { + __TIB_DEFINITION_java_lang_Short* tib; + struct { + __INSTANCE_FIELDS_java_lang_Short; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Short +#define XMLVM_FORWARD_DECL_java_lang_Short +typedef struct java_lang_Short java_lang_Short; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Short 13 +#define XMLVM_VTABLE_IDX_java_lang_Short_byteValue__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Short_doubleValue__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Short_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Short_floatValue__ 8 +#define XMLVM_VTABLE_IDX_java_lang_Short_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_Short_intValue__ 9 +#define XMLVM_VTABLE_IDX_java_lang_Short_longValue__ 10 +#define XMLVM_VTABLE_IDX_java_lang_Short_shortValue__ 11 +#define XMLVM_VTABLE_IDX_java_lang_Short_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Short_compareTo___java_lang_Object 12 + +void __INIT_java_lang_Short(); +void __INIT_IMPL_java_lang_Short(); +void __DELETE_java_lang_Short(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Short(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Short(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Short(); +JAVA_LONG java_lang_Short_GET_serialVersionUID(); +void java_lang_Short_PUT_serialVersionUID(JAVA_LONG v); +JAVA_SHORT java_lang_Short_GET_MAX_VALUE(); +void java_lang_Short_PUT_MAX_VALUE(JAVA_SHORT v); +JAVA_SHORT java_lang_Short_GET_MIN_VALUE(); +void java_lang_Short_PUT_MIN_VALUE(JAVA_SHORT v); +JAVA_INT java_lang_Short_GET_SIZE(); +void java_lang_Short_PUT_SIZE(JAVA_INT v); +JAVA_OBJECT java_lang_Short_GET_TYPE(); +void java_lang_Short_PUT_TYPE(JAVA_OBJECT v); +void java_lang_Short___CLINIT_(); +void java_lang_Short___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Short___INIT____short(JAVA_OBJECT me, JAVA_SHORT n1); +// Vtable index: 6 +JAVA_BYTE java_lang_Short_byteValue__(JAVA_OBJECT me); +JAVA_INT java_lang_Short_compareTo___java_lang_Short(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Short_decode___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_DOUBLE java_lang_Short_doubleValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Short_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_FLOAT java_lang_Short_floatValue__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_Short_hashCode__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_Short_intValue__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_LONG java_lang_Short_longValue__(JAVA_OBJECT me); +JAVA_SHORT java_lang_Short_parseShort___java_lang_String(JAVA_OBJECT n1); +JAVA_SHORT java_lang_Short_parseShort___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 11 +JAVA_SHORT java_lang_Short_shortValue__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Short_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Short_toString___short(JAVA_SHORT n1); +JAVA_OBJECT java_lang_Short_valueOf___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Short_valueOf___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_SHORT java_lang_Short_reverseBytes___short(JAVA_SHORT n1); +JAVA_OBJECT java_lang_Short_valueOf___short(JAVA_SHORT n1); +// Vtable index: 12 +JAVA_INT java_lang_Short_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_StackTraceElement.c b/tests/nbody-java/java_lang_StackTraceElement.c new file mode 100644 index 0000000000000..d17d76f97eb66 --- /dev/null +++ b/tests/nbody-java/java_lang_StackTraceElement.c @@ -0,0 +1,558 @@ +#include "xmlvm.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "java_lang_StackTraceElement.h" + +#define XMLVM_CURRENT_CLASS_NAME StackTraceElement +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_StackTraceElement + +__TIB_DEFINITION_java_lang_StackTraceElement __TIB_java_lang_StackTraceElement = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_StackTraceElement, // classInitializer + "java.lang.StackTraceElement", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_StackTraceElement), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_StackTraceElement; +JAVA_OBJECT __CLASS_java_lang_StackTraceElement_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_StackTraceElement_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_StackTraceElement_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_StackTraceElement_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_StackTraceElement() +{ + staticInitializerLock(&__TIB_java_lang_StackTraceElement); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_StackTraceElement.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_StackTraceElement.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_StackTraceElement); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_StackTraceElement.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_StackTraceElement.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_StackTraceElement.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.StackTraceElement") + __INIT_IMPL_java_lang_StackTraceElement(); + } +} + +void __INIT_IMPL_java_lang_StackTraceElement() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_StackTraceElement.newInstanceFunc = __NEW_INSTANCE_java_lang_StackTraceElement; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_StackTraceElement.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_StackTraceElement.vtable[1] = (VTABLE_PTR) &java_lang_StackTraceElement_equals___java_lang_Object; + __TIB_java_lang_StackTraceElement.vtable[4] = (VTABLE_PTR) &java_lang_StackTraceElement_hashCode__; + __TIB_java_lang_StackTraceElement.vtable[5] = (VTABLE_PTR) &java_lang_StackTraceElement_toString__; + // Initialize interface information + __TIB_java_lang_StackTraceElement.numImplementedInterfaces = 1; + __TIB_java_lang_StackTraceElement.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_StackTraceElement.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_StackTraceElement.itableBegin = &__TIB_java_lang_StackTraceElement.itable[0]; + + _STATIC_java_lang_StackTraceElement_serialVersionUID = 6992337162326171013; + + __TIB_java_lang_StackTraceElement.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_StackTraceElement.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_StackTraceElement.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_StackTraceElement.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_StackTraceElement.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_StackTraceElement.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_StackTraceElement.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_StackTraceElement.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_StackTraceElement = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_StackTraceElement); + __TIB_java_lang_StackTraceElement.clazz = __CLASS_java_lang_StackTraceElement; + __TIB_java_lang_StackTraceElement.baseType = JAVA_NULL; + __CLASS_java_lang_StackTraceElement_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_StackTraceElement); + __CLASS_java_lang_StackTraceElement_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_StackTraceElement_1ARRAY); + __CLASS_java_lang_StackTraceElement_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_StackTraceElement_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_StackTraceElement] + //XMLVM_END_WRAPPER + + __TIB_java_lang_StackTraceElement.classInitialized = 1; +} + +void __DELETE_java_lang_StackTraceElement(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_StackTraceElement] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_StackTraceElement(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_StackTraceElement*) me)->fields.java_lang_StackTraceElement.declaringClass_ = (java_lang_String*) JAVA_NULL; + ((java_lang_StackTraceElement*) me)->fields.java_lang_StackTraceElement.methodName_ = (java_lang_String*) JAVA_NULL; + ((java_lang_StackTraceElement*) me)->fields.java_lang_StackTraceElement.fileName_ = (java_lang_String*) JAVA_NULL; + ((java_lang_StackTraceElement*) me)->fields.java_lang_StackTraceElement.lineNumber_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_StackTraceElement] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_StackTraceElement() +{ XMLVM_CLASS_INIT(java_lang_StackTraceElement) +java_lang_StackTraceElement* me = (java_lang_StackTraceElement*) XMLVM_MALLOC(sizeof(java_lang_StackTraceElement)); + me->tib = &__TIB_java_lang_StackTraceElement; + __INIT_INSTANCE_MEMBERS_java_lang_StackTraceElement(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_StackTraceElement] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_StackTraceElement() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_StackTraceElement_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_StackTraceElement) + return _STATIC_java_lang_StackTraceElement_serialVersionUID; +} + +void java_lang_StackTraceElement_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_StackTraceElement) +_STATIC_java_lang_StackTraceElement_serialVersionUID = v; +} + +void java_lang_StackTraceElement___INIT____java_lang_String_java_lang_String_java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement___INIT____java_lang_String_java_lang_String_java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.o = n3; + _r5.i = n4; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 63) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 64) + if (_r2.o == JAVA_NULL) goto label7; + if (_r3.o != JAVA_NULL) goto label13; + label7:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 65) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 67) + XMLVM_CHECK_NPE(1) + ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.declaringClass_ = _r2.o; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 68) + XMLVM_CHECK_NPE(1) + ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.methodName_ = _r3.o; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 69) + XMLVM_CHECK_NPE(1) + ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.fileName_ = _r4.o; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 70) + XMLVM_CHECK_NPE(1) + ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.lineNumber_ = _r5.i; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 71) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_StackTraceElement___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement___INIT___] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 79) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 80) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_StackTraceElement_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 102) + XMLVM_CLASS_INIT(java_lang_StackTraceElement) + _r0.i = XMLVM_ISA(_r4.o, __CLASS_java_lang_StackTraceElement); + if (_r0.i != 0) goto label7; + _r0 = _r2; + label6:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 103) + XMLVM_SOURCE_POSITION("StackTraceElement.java", 135) + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 105) + _r4.o = _r4.o; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 111) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_StackTraceElement*) _r3.o)->fields.java_lang_StackTraceElement.methodName_; + if (_r0.o == JAVA_NULL) goto label17; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_lang_StackTraceElement*) _r4.o)->fields.java_lang_StackTraceElement.methodName_; + if (_r0.o != JAVA_NULL) goto label19; + label17:; + _r0 = _r2; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 112) + goto label6; + label19:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 115) + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_StackTraceElement_getMethodName__(_r3.o); + XMLVM_CHECK_NPE(4) + _r1.o = java_lang_StackTraceElement_getMethodName__(_r4.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r0.i != 0) goto label35; + _r0 = _r2; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 116) + goto label6; + label35:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 118) + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_StackTraceElement_getClassName__(_r3.o); + XMLVM_CHECK_NPE(4) + _r1.o = java_lang_StackTraceElement_getClassName__(_r4.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r0.i != 0) goto label51; + _r0 = _r2; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 119) + goto label6; + label51:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 121) + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_StackTraceElement_getFileName__(_r3.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 122) + if (_r0.o != JAVA_NULL) goto label65; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 123) + XMLVM_CHECK_NPE(4) + _r0.o = java_lang_StackTraceElement_getFileName__(_r4.o); + if (_r0.o == JAVA_NULL) goto label77; + _r0 = _r2; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 124) + goto label6; + label65:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 127) + XMLVM_CHECK_NPE(4) + _r1.o = java_lang_StackTraceElement_getFileName__(_r4.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r0.i != 0) goto label77; + _r0 = _r2; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 128) + goto label6; + label77:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 131) + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_StackTraceElement_getLineNumber__(_r3.o); + XMLVM_CHECK_NPE(4) + _r1.i = java_lang_StackTraceElement_getLineNumber__(_r4.o); + if (_r0.i == _r1.i) goto label89; + _r0 = _r2; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 132) + goto label6; + label89:; + _r0.i = 1; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StackTraceElement_getClassName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_getClassName__] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "getClassName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 145) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.declaringClass_; + if (_r0.o != JAVA_NULL) goto label7; + // "" + _r0.o = xmlvm_create_java_string_from_pool(0); + label6:; + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.declaringClass_; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StackTraceElement_getFileName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_getFileName__] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "getFileName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 156) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.fileName_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_StackTraceElement_getLineNumber__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_getLineNumber__] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "getLineNumber", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 167) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.lineNumber_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StackTraceElement_getMethodName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_getMethodName__] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "getMethodName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 178) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.methodName_; + if (_r0.o != JAVA_NULL) goto label7; + // "" + _r0.o = xmlvm_create_java_string_from_pool(1); + label6:; + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_StackTraceElement*) _r1.o)->fields.java_lang_StackTraceElement.methodName_; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_StackTraceElement_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_hashCode__] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 187) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_StackTraceElement*) _r2.o)->fields.java_lang_StackTraceElement.methodName_; + if (_r0.o != JAVA_NULL) goto label6; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 189) + _r0.i = 0; + label5:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 192) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_StackTraceElement*) _r2.o)->fields.java_lang_StackTraceElement.methodName_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[4])(_r0.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_StackTraceElement*) _r2.o)->fields.java_lang_StackTraceElement.declaringClass_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[4])(_r1.o); + _r0.i = _r0.i ^ _r1.i; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_StackTraceElement_isNativeMethod__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_isNativeMethod__] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "isNativeMethod", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 203) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_StackTraceElement*) _r2.o)->fields.java_lang_StackTraceElement.lineNumber_; + _r1.i = -2; + if (_r0.i != _r1.i) goto label7; + _r0.i = 1; + label6:; + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + _r0.i = 0; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StackTraceElement_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StackTraceElement_toString__] + XMLVM_ENTER_METHOD("java.lang.StackTraceElement", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 208) + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.i = 80; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 210) + XMLVM_CHECK_NPE(4) + _r1.o = java_lang_StackTraceElement_getClassName__(_r4.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 211) + _r1.i = 46; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 212) + XMLVM_CHECK_NPE(4) + _r1.o = java_lang_StackTraceElement_getMethodName__(_r4.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 214) + XMLVM_CHECK_NPE(4) + _r1.i = java_lang_StackTraceElement_isNativeMethod__(_r4.o); + if (_r1.i == 0) goto label42; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 215) + // "(Native Method)" + _r1.o = xmlvm_create_java_string_from_pool(2); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label37:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 233) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label42:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 217) + XMLVM_CHECK_NPE(4) + _r1.o = java_lang_StackTraceElement_getFileName__(_r4.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 219) + if (_r1.o != JAVA_NULL) goto label54; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 220) + // "(Unknown Source)" + _r1.o = xmlvm_create_java_string_from_pool(3); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + goto label37; + label54:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 222) + XMLVM_CHECK_NPE(4) + _r2.i = java_lang_StackTraceElement_getLineNumber__(_r4.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 224) + _r3.i = 40; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 225) + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 226) + if (_r2.i < 0) goto label76; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 227) + _r1.i = 58; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StackTraceElement.java", 228) + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___int(_r0.o, _r2.i); + label76:; + XMLVM_SOURCE_POSITION("StackTraceElement.java", 230) + _r1.i = 41; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + goto label37; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_StackTraceElement.h b/tests/nbody-java/java_lang_StackTraceElement.h new file mode 100644 index 0000000000000..86782af1474a9 --- /dev/null +++ b/tests/nbody-java/java_lang_StackTraceElement.h @@ -0,0 +1,85 @@ +#ifndef __JAVA_LANG_STACKTRACEELEMENT__ +#define __JAVA_LANG_STACKTRACEELEMENT__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_StackTraceElement 0 +// Implemented interfaces: +#include "java_io_Serializable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for java.lang.StackTraceElement +XMLVM_DEFINE_CLASS(java_lang_StackTraceElement, 6, XMLVM_ITABLE_SIZE_java_lang_StackTraceElement) + +extern JAVA_OBJECT __CLASS_java_lang_StackTraceElement; +extern JAVA_OBJECT __CLASS_java_lang_StackTraceElement_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_StackTraceElement_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_StackTraceElement_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_StackTraceElement +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_StackTraceElement \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT declaringClass_; \ + JAVA_OBJECT methodName_; \ + JAVA_OBJECT fileName_; \ + JAVA_INT lineNumber_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_StackTraceElement \ + } java_lang_StackTraceElement + +struct java_lang_StackTraceElement { + __TIB_DEFINITION_java_lang_StackTraceElement* tib; + struct { + __INSTANCE_FIELDS_java_lang_StackTraceElement; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_StackTraceElement +#define XMLVM_FORWARD_DECL_java_lang_StackTraceElement +typedef struct java_lang_StackTraceElement java_lang_StackTraceElement; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_StackTraceElement 6 +#define XMLVM_VTABLE_IDX_java_lang_StackTraceElement_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_StackTraceElement_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_StackTraceElement_toString__ 5 + +void __INIT_java_lang_StackTraceElement(); +void __INIT_IMPL_java_lang_StackTraceElement(); +void __DELETE_java_lang_StackTraceElement(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_StackTraceElement(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_StackTraceElement(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_StackTraceElement(); +JAVA_LONG java_lang_StackTraceElement_GET_serialVersionUID(); +void java_lang_StackTraceElement_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_StackTraceElement___INIT____java_lang_String_java_lang_String_java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4); +void java_lang_StackTraceElement___INIT___(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_StackTraceElement_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_StackTraceElement_getClassName__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_StackTraceElement_getFileName__(JAVA_OBJECT me); +JAVA_INT java_lang_StackTraceElement_getLineNumber__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_StackTraceElement_getMethodName__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_StackTraceElement_hashCode__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_StackTraceElement_isNativeMethod__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_StackTraceElement_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_String.c b/tests/nbody-java/java_lang_String.c new file mode 100644 index 0000000000000..902f19a052a89 --- /dev/null +++ b/tests/nbody-java/java_lang_String.c @@ -0,0 +1,5026 @@ +#include "xmlvm.h" +#include "java_lang_Character.h" +#include "java_lang_Class.h" +#include "java_lang_Double.h" +#include "java_lang_Exception.h" +#include "java_lang_Float.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Integer.h" +#include "java_lang_Long.h" +#include "java_lang_Math.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String_CaseInsensitiveComparator.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_lang_Throwable.h" +#include "java_nio_ByteBuffer.h" +#include "java_nio_CharBuffer.h" +#include "java_nio_charset_Charset.h" +#include "java_security_AccessController.h" +#include "java_util_Comparator.h" +#include "java_util_Locale.h" +#include "org_apache_harmony_luni_util_PriviAction.h" +#include "org_apache_harmony_niochar_charset_UTF_8.h" + +#include "java_lang_String.h" + +#define XMLVM_CURRENT_CLASS_NAME String +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_String + +__TIB_DEFINITION_java_lang_String __TIB_java_lang_String = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_String, // classInitializer + "java.lang.String", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable;Ljava/lang/CharSequence;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_String), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_String; +JAVA_OBJECT __CLASS_java_lang_String_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_String_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_String_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_String_serialVersionUID; +static JAVA_OBJECT _STATIC_java_lang_String_CASE_INSENSITIVE_ORDER; +static JAVA_OBJECT _STATIC_java_lang_String_ascii; +static JAVA_OBJECT _STATIC_java_lang_String_DefaultCharset; +static JAVA_OBJECT _STATIC_java_lang_String_lastCharset; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_String() +{ + staticInitializerLock(&__TIB_java_lang_String); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_String.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_String.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_String); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_String.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_String.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_String.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.String") + __INIT_IMPL_java_lang_String(); + } +} + +void __INIT_IMPL_java_lang_String() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_String.newInstanceFunc = __NEW_INSTANCE_java_lang_String; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_String.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_String.vtable[6] = (VTABLE_PTR) &java_lang_String_charAt___int; + __TIB_java_lang_String.vtable[1] = (VTABLE_PTR) &java_lang_String_equals___java_lang_Object; + __TIB_java_lang_String.vtable[4] = (VTABLE_PTR) &java_lang_String_hashCode__; + __TIB_java_lang_String.vtable[8] = (VTABLE_PTR) &java_lang_String_length__; + __TIB_java_lang_String.vtable[5] = (VTABLE_PTR) &java_lang_String_toString__; + __TIB_java_lang_String.vtable[9] = (VTABLE_PTR) &java_lang_String_subSequence___int_int; + __TIB_java_lang_String.vtable[7] = (VTABLE_PTR) &java_lang_String_compareTo___java_lang_Object; + xmlvm_init_native_java_lang_String(); + // Initialize interface information + __TIB_java_lang_String.numImplementedInterfaces = 3; + __TIB_java_lang_String.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_String.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_CharSequence) + + __TIB_java_lang_String.implementedInterfaces[0][1] = &__TIB_java_lang_CharSequence; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_String.implementedInterfaces[0][2] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_String.itableBegin = &__TIB_java_lang_String.itable[0]; + __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int] = __TIB_java_lang_String.vtable[6]; + __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__] = __TIB_java_lang_String.vtable[8]; + __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int] = __TIB_java_lang_String.vtable[9]; + __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__] = __TIB_java_lang_String.vtable[5]; + __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_String.vtable[7]; + + _STATIC_java_lang_String_serialVersionUID = -6849794470754667710; + _STATIC_java_lang_String_CASE_INSENSITIVE_ORDER = (java_util_Comparator*) JAVA_NULL; + _STATIC_java_lang_String_ascii = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_lang_String_DefaultCharset = (java_nio_charset_Charset*) JAVA_NULL; + _STATIC_java_lang_String_lastCharset = (java_nio_charset_Charset*) JAVA_NULL; + + __TIB_java_lang_String.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_String.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_String.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_String.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_String.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_String.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_String.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_String.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_String = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_String); + __TIB_java_lang_String.clazz = __CLASS_java_lang_String; + __TIB_java_lang_String.baseType = JAVA_NULL; + __CLASS_java_lang_String_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String); + __CLASS_java_lang_String_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String_1ARRAY); + __CLASS_java_lang_String_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String_2ARRAY); + java_lang_String___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_String] + //XMLVM_END_WRAPPER + + __TIB_java_lang_String.classInitialized = 1; +} + +void __DELETE_java_lang_String(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_String] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_String(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_String*) me)->fields.java_lang_String.charset_ = (org_apache_harmony_niochar_charset_UTF_8*) JAVA_NULL; + ((java_lang_String*) me)->fields.java_lang_String.charset2_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_String*) me)->fields.java_lang_String.charset3_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_String*) me)->fields.java_lang_String.value_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_String*) me)->fields.java_lang_String.offset_ = 0; + ((java_lang_String*) me)->fields.java_lang_String.count_ = 0; + ((java_lang_String*) me)->fields.java_lang_String.hashCode_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_String] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_String() +{ XMLVM_CLASS_INIT(java_lang_String) +java_lang_String* me = (java_lang_String*) XMLVM_MALLOC(sizeof(java_lang_String)); + me->tib = &__TIB_java_lang_String; + __INIT_INSTANCE_MEMBERS_java_lang_String(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_String] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_String() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_String(); + java_lang_String___INIT___(me); + return me; +} + +JAVA_LONG java_lang_String_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_String) + return _STATIC_java_lang_String_serialVersionUID; +} + +void java_lang_String_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_String) +_STATIC_java_lang_String_serialVersionUID = v; +} + +JAVA_OBJECT java_lang_String_GET_CASE_INSENSITIVE_ORDER() +{ + XMLVM_CLASS_INIT(java_lang_String) + return _STATIC_java_lang_String_CASE_INSENSITIVE_ORDER; +} + +void java_lang_String_PUT_CASE_INSENSITIVE_ORDER(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_String) +_STATIC_java_lang_String_CASE_INSENSITIVE_ORDER = v; +} + +JAVA_OBJECT java_lang_String_GET_ascii() +{ + XMLVM_CLASS_INIT(java_lang_String) + return _STATIC_java_lang_String_ascii; +} + +void java_lang_String_PUT_ascii(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_String) +_STATIC_java_lang_String_ascii = v; +} + +JAVA_OBJECT java_lang_String_GET_DefaultCharset() +{ + XMLVM_CLASS_INIT(java_lang_String) + return _STATIC_java_lang_String_DefaultCharset; +} + +void java_lang_String_PUT_DefaultCharset(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_String) +_STATIC_java_lang_String_DefaultCharset = v; +} + +JAVA_OBJECT java_lang_String_GET_lastCharset() +{ + XMLVM_CLASS_INIT(java_lang_String) + return _STATIC_java_lang_String_lastCharset; +} + +void java_lang_String_PUT_lastCharset(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_String) +_STATIC_java_lang_String_lastCharset = v; +} + +void java_lang_String___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT___] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r0.o = JAVA_NULL; + _r1.i = 0; + XMLVM_SOURCE_POSITION("String.java", 166) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(2) + ((java_lang_String*) _r2.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(2) + ((java_lang_String*) _r2.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(2) + ((java_lang_String*) _r2.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 167) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i); + XMLVM_CHECK_NPE(2) + ((java_lang_String*) _r2.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 168) + XMLVM_CHECK_NPE(2) + ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_ = _r1.i; + XMLVM_SOURCE_POSITION("String.java", 169) + XMLVM_CHECK_NPE(2) + ((java_lang_String*) _r2.o)->fields.java_lang_String.count_ = _r1.i; + XMLVM_SOURCE_POSITION("String.java", 170) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____java_lang_String_char(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_char] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r4.i = 0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 176) + XMLVM_CHECK_NPE(5) + java_lang_Object___INIT___(_r5.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 177) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i; + XMLVM_SOURCE_POSITION("String.java", 178) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + _r0.i = _r0.i + 1; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 179) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 180) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r4.i, _r3.i); + XMLVM_SOURCE_POSITION("String.java", 181) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i; + XMLVM_SOURCE_POSITION("String.java", 182) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("String.java", 194) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____byte_1ARRAY_int_int(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_SOURCE_POSITION("String.java", 195) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("String.java", 212) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____byte_1ARRAY_int_int_int(_r2.o, _r3.o, _r4.i, _r0.i, _r1.i); + XMLVM_SOURCE_POSITION("String.java", 213) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + _r3.o = JAVA_NULL; + _r4.i = 0; + XMLVM_SOURCE_POSITION("String.java", 233) + XMLVM_CHECK_NPE(5) + java_lang_Object___INIT___(_r5.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 235) + if (_r7.i < 0) goto label55; + if (_r8.i < 0) goto label55; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r3.i = _r3.i - _r7.i; + if (_r8.i > _r3.i) goto label55; + XMLVM_SOURCE_POSITION("String.java", 236) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i; + XMLVM_SOURCE_POSITION("String.java", 237) + XMLVM_CHECK_NPE(5) + _r1.o = java_lang_String_defaultCharset__(_r5.o); + XMLVM_SOURCE_POSITION("String.java", 239) + _r3.o = java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(_r6.o, _r7.i, _r8.i); + XMLVM_CHECK_NPE(1) + _r0.o = java_nio_charset_Charset_decode___java_nio_ByteBuffer(_r1.o, _r3.o); + XMLVM_SOURCE_POSITION("String.java", 241) + //java_nio_CharBuffer_length__[22] + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[22])(_r0.o); + if (_r2.i <= 0) goto label48; + XMLVM_SOURCE_POSITION("String.java", 242) + //java_nio_CharBuffer_array__[7] + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[7])(_r0.o); + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 243) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r2.i; + label47:; + XMLVM_SOURCE_POSITION("String.java", 251) + XMLVM_EXIT_METHOD() + return; + label48:; + XMLVM_SOURCE_POSITION("String.java", 245) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r4.i; + XMLVM_SOURCE_POSITION("String.java", 246) + XMLVM_CLASS_INIT(char) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_char, _r4.i); + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r3.o; + goto label47; + label55:; + XMLVM_SOURCE_POSITION("String.java", 249) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r4.o = me; + _r5.o = n1; + _r6.i = n2; + _r7.i = n3; + _r8.i = n4; + _r2.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 274) + XMLVM_CHECK_NPE(4) + java_lang_Object___INIT___(_r4.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(4) + ((java_lang_String*) _r4.o)->fields.java_lang_String.charset_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(4) + ((java_lang_String*) _r4.o)->fields.java_lang_String.charset2_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(4) + ((java_lang_String*) _r4.o)->fields.java_lang_String.charset3_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 277) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r2.i = _r2.i - _r7.i; + if (_r8.i > _r2.i) goto label50; + if (_r7.i < 0) goto label50; + if (_r8.i < 0) goto label50; + XMLVM_SOURCE_POSITION("String.java", 278) + _r2.i = 0; + XMLVM_CHECK_NPE(4) + ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_ = _r2.i; + XMLVM_SOURCE_POSITION("String.java", 279) + XMLVM_CLASS_INIT(char) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_char, _r8.i); + XMLVM_CHECK_NPE(4) + ((java_lang_String*) _r4.o)->fields.java_lang_String.value_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 280) + XMLVM_CHECK_NPE(4) + ((java_lang_String*) _r4.o)->fields.java_lang_String.count_ = _r8.i; + XMLVM_SOURCE_POSITION("String.java", 281) + _r6.i = _r6.i << 8; + _r0.i = 0; + label30:; + XMLVM_SOURCE_POSITION("String.java", 282) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r0.i >= _r2.i) goto label56; + XMLVM_SOURCE_POSITION("String.java", 283) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_; + _r1.i = _r7.i + 1; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r7.i); + _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + _r3.i = _r3.i & 255; + _r3.i = _r3.i + _r6.i; + _r3.i = _r3.i & 0xffff; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + _r0.i = _r0.i + 1; + _r7 = _r1; + goto label30; + label50:; + XMLVM_SOURCE_POSITION("String.java", 286) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r2.o) + label56:; + XMLVM_SOURCE_POSITION("String.java", 288) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + _r6.o = me; + _r7.o = n1; + _r8.i = n2; + _r9.i = n3; + _r10.o = n4; + _r4.o = JAVA_NULL; + _r5.i = 0; + XMLVM_SOURCE_POSITION("String.java", 310) + XMLVM_CHECK_NPE(6) + java_lang_Object___INIT___(_r6.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.charset_ = _r4.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.charset2_ = _r4.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.charset3_ = _r4.o; + XMLVM_SOURCE_POSITION("String.java", 311) + if (_r10.o != JAVA_NULL) goto label19; + XMLVM_SOURCE_POSITION("String.java", 312) + _r4.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(4) + java_lang_NullPointerException___INIT___(_r4.o); + XMLVM_THROW_CUSTOM(_r4.o) + label19:; + XMLVM_SOURCE_POSITION("String.java", 315) + if (_r8.i < 0) goto label76; + if (_r9.i < 0) goto label76; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + _r4.i = _r4.i - _r8.i; + if (_r9.i > _r4.i) goto label76; + XMLVM_SOURCE_POSITION("String.java", 316) + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_ = _r5.i; + XMLVM_SOURCE_POSITION("String.java", 317) + XMLVM_CHECK_NPE(6) + _r1.o = java_lang_String_getCharset___java_lang_String(_r6.o, _r10.o); + XMLVM_TRY_BEGIN(w3113aaac18b1c33) + // Begin try + XMLVM_SOURCE_POSITION("String.java", 322) + _r4.o = java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(_r7.o, _r8.i, _r9.i); + XMLVM_CHECK_NPE(1) + _r0.o = java_nio_charset_Charset_decode___java_nio_ByteBuffer(_r1.o, _r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac18b1c33) + XMLVM_CATCH_SPECIFIC(w3113aaac18b1c33,java_lang_Exception,56) + XMLVM_CATCH_END(w3113aaac18b1c33) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac18b1c33) + label41:; + XMLVM_SOURCE_POSITION("String.java", 328) + //java_nio_CharBuffer_length__[22] + XMLVM_CHECK_NPE(0) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[22])(_r0.o); + if (_r3.i <= 0) goto label69; + XMLVM_SOURCE_POSITION("String.java", 329) + //java_nio_CharBuffer_array__[7] + XMLVM_CHECK_NPE(0) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[7])(_r0.o); + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.value_ = _r4.o; + XMLVM_SOURCE_POSITION("String.java", 330) + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.count_ = _r3.i; + label55:; + XMLVM_SOURCE_POSITION("String.java", 338) + XMLVM_EXIT_METHOD() + return; + label56:; + XMLVM_SOURCE_POSITION("String.java", 323) + java_lang_Thread* curThread_w3113aaac18b1c48 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3113aaac18b1c48->fields.java_lang_Thread.xmlvmException_; + _r2 = _r4; + XMLVM_SOURCE_POSITION("String.java", 326) + // "?" + _r4.o = xmlvm_create_java_string_from_pool(170); + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_String_toCharArray__(_r4.o); + _r0.o = java_nio_CharBuffer_wrap___char_1ARRAY(_r4.o); + goto label41; + label69:; + XMLVM_SOURCE_POSITION("String.java", 332) + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.count_ = _r5.i; + XMLVM_SOURCE_POSITION("String.java", 333) + XMLVM_CLASS_INIT(char) + _r4.o = XMLVMArray_createSingleDimension(__CLASS_char, _r5.i); + XMLVM_CHECK_NPE(6) + ((java_lang_String*) _r6.o)->fields.java_lang_String.value_ = _r4.o; + goto label55; + label76:; + XMLVM_SOURCE_POSITION("String.java", 336) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r4.o) + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____byte_1ARRAY_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("String.java", 353) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String(_r2.o, _r3.o, _r0.i, _r1.i, _r4.o); + XMLVM_SOURCE_POSITION("String.java", 354) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("String.java", 367) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____char_1ARRAY_int_int(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_SOURCE_POSITION("String.java", 368) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + _r6.i = n3; + _r2.i = 0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 387) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 390) + if (_r5.i < 0) goto label35; + if (_r6.i < 0) goto label35; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + _r0.i = _r0.i - _r5.i; + if (_r6.i > _r0.i) goto label35; + XMLVM_SOURCE_POSITION("String.java", 391) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r2.i; + XMLVM_SOURCE_POSITION("String.java", 392) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r6.i); + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 393) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.count_ = _r6.i; + XMLVM_SOURCE_POSITION("String.java", 394) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r5.i, _r0.o, _r2.i, _r1.i); + XMLVM_SOURCE_POSITION("String.java", 398) + XMLVM_EXIT_METHOD() + return; + label35:; + XMLVM_SOURCE_POSITION("String.java", 396) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____int_int_char_1ARRAY(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____int_int_char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + _r4.o = n3; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 404) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 405) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.value_ = _r4.o; + XMLVM_SOURCE_POSITION("String.java", 406) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_ = _r2.i; + XMLVM_SOURCE_POSITION("String.java", 407) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.count_ = _r3.i; + XMLVM_SOURCE_POSITION("String.java", 408) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____char_1ARRAY_int_int_boolean] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + _r6.i = n3; + _r7.i = n4; + _r1.i = 0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 417) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 418) + if (_r5.i >= 0) goto label38; + XMLVM_SOURCE_POSITION("String.java", 419) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "offset: " + _r2.o = xmlvm_create_java_string_from_pool(171); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r5.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label38:; + XMLVM_SOURCE_POSITION("String.java", 420) + if (_r6.i >= 0) goto label65; + XMLVM_SOURCE_POSITION("String.java", 421) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "count: " + _r2.o = xmlvm_create_java_string_from_pool(172); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r6.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label65:; + XMLVM_SOURCE_POSITION("String.java", 423) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + _r0.i = _r0.i - _r5.i; + if (_r0.i >= _r6.i) goto label96; + XMLVM_SOURCE_POSITION("String.java", 424) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + // "offset + count: " + _r2.o = xmlvm_create_java_string_from_pool(173); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + _r2.i = _r5.i + _r6.i; + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r2.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label96:; + XMLVM_SOURCE_POSITION("String.java", 426) + if (_r7.i == 0) goto label105; + XMLVM_SOURCE_POSITION("String.java", 428) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r4.o; + XMLVM_SOURCE_POSITION("String.java", 429) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r5.i; + label102:; + XMLVM_SOURCE_POSITION("String.java", 437) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.count_ = _r6.i; + XMLVM_SOURCE_POSITION("String.java", 438) + XMLVM_EXIT_METHOD() + return; + label105:; + XMLVM_SOURCE_POSITION("String.java", 433) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r6.i); + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 434) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r5.i, _r0.o, _r1.i, _r6.i); + XMLVM_SOURCE_POSITION("String.java", 435) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r1.i; + goto label102; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 446) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 447) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_String*) _r2.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 448) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 449) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 450) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = me; + _r6.o = n1; + _r7.o = n2; + _r4.i = 0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 456) + XMLVM_CHECK_NPE(5) + java_lang_Object___INIT___(_r5.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 457) + if (_r6.o != JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("String.java", 458) + // "null" + _r6.o = xmlvm_create_java_string_from_pool(63); + label15:; + XMLVM_SOURCE_POSITION("String.java", 460) + if (_r7.o != JAVA_NULL) goto label19; + XMLVM_SOURCE_POSITION("String.java", 461) + // "null" + _r7.o = xmlvm_create_java_string_from_pool(63); + label19:; + XMLVM_SOURCE_POSITION("String.java", 463) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(7) + _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 464) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 465) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i; + XMLVM_SOURCE_POSITION("String.java", 466) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r4.i, _r3.i); + XMLVM_SOURCE_POSITION("String.java", 467) + XMLVM_CHECK_NPE(7) + _r0.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(7) + _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(7) + _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("String.java", 468) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.o = n2; + _r8.o = n3; + _r4.i = 0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 474) + XMLVM_CHECK_NPE(5) + java_lang_Object___INIT___(_r5.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 475) + if (_r6.o != JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("String.java", 476) + // "null" + _r6.o = xmlvm_create_java_string_from_pool(63); + label15:; + XMLVM_SOURCE_POSITION("String.java", 478) + if (_r7.o != JAVA_NULL) goto label19; + XMLVM_SOURCE_POSITION("String.java", 479) + // "null" + _r7.o = xmlvm_create_java_string_from_pool(63); + label19:; + XMLVM_SOURCE_POSITION("String.java", 481) + if (_r8.o != JAVA_NULL) goto label23; + XMLVM_SOURCE_POSITION("String.java", 482) + // "null" + _r8.o = xmlvm_create_java_string_from_pool(63); + label23:; + XMLVM_SOURCE_POSITION("String.java", 484) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(7) + _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(8) + _r1.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 485) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 486) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i; + XMLVM_SOURCE_POSITION("String.java", 487) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r4.i, _r3.i); + XMLVM_SOURCE_POSITION("String.java", 488) + XMLVM_CHECK_NPE(7) + _r0.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(7) + _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(7) + _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("String.java", 489) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(8) + _r1.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(7) + _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + _r3.i = _r3.i + _r4.i; + XMLVM_CHECK_NPE(8) + _r4.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("String.java", 491) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_StringBuffer] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 500) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 501) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 502) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w3113aaac27b1c17) + // Begin try + XMLVM_SOURCE_POSITION("String.java", 503) + + + // Red class access removed: java.lang.StringBuffer::getValue + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 504) + + + // Red class access removed: java.lang.StringBuffer::length + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_lang_String*) _r1.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 505) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("String.java", 506) + XMLVM_MEMCPY(curThread_w3113aaac27b1c17->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac27b1c17, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac27b1c17) + XMLVM_CATCH_SPECIFIC(w3113aaac27b1c17,java_lang_Object,28) + XMLVM_CATCH_END(w3113aaac27b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac27b1c17) + label28:; + XMLVM_TRY_BEGIN(w3113aaac27b1c19) + // Begin try + java_lang_Thread* curThread_w3113aaac27b1c19aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3113aaac27b1c19aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac27b1c19) + XMLVM_CATCH_SPECIFIC(w3113aaac27b1c19,java_lang_Object,28) + XMLVM_CATCH_END(w3113aaac27b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac27b1c19) + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____int_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____int_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + _r3.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 529) + XMLVM_CHECK_NPE(5) + java_lang_Object___INIT___(_r5.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 530) + if (_r7.i < 0) goto label18; + if (_r8.i < 0) goto label18; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r3.i = _r3.i - _r8.i; + if (_r7.i <= _r3.i) goto label24; + label18:; + XMLVM_SOURCE_POSITION("String.java", 531) + _r3.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(3) + java_lang_IndexOutOfBoundsException___INIT___(_r3.o); + XMLVM_THROW_CUSTOM(_r3.o) + label24:; + XMLVM_SOURCE_POSITION("String.java", 533) + _r3.i = 0; + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r3.i; + XMLVM_SOURCE_POSITION("String.java", 534) + _r3.i = _r8.i * 2; + XMLVM_CLASS_INIT(char) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i); + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r3.o; + XMLVM_SOURCE_POSITION("String.java", 535) + _r1.i = _r7.i + _r8.i; + _r0.i = 0; + _r2 = _r7; + label37:; + XMLVM_SOURCE_POSITION("String.java", 537) + if (_r2.i >= _r1.i) goto label51; + XMLVM_SOURCE_POSITION("String.java", 538) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r2.i); + _r3.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + _r3.i = java_lang_Character_toChars___int_char_1ARRAY_int(_r3.i, _r4.o, _r0.i); + _r0.i = _r0.i + _r3.i; + _r2.i = _r2.i + 1; + goto label37; + label51:; + XMLVM_SOURCE_POSITION("String.java", 540) + XMLVM_CHECK_NPE(5) + ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 541) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____java_lang_StringBuilder(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_StringBuilder] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r0.o = JAVA_NULL; + _r2.i = 0; + XMLVM_SOURCE_POSITION("String.java", 553) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset2_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.charset3_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 554) + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r2.i; + XMLVM_SOURCE_POSITION("String.java", 555) + XMLVM_CHECK_NPE(4) + _r0.i = java_lang_AbstractStringBuilder_length__(_r4.o); + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 556) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_CHECK_NPE(3) + ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r0.o; + XMLVM_SOURCE_POSITION("String.java", 557) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(4) + java_lang_AbstractStringBuilder_getChars___int_int_char_1ARRAY_int(_r4.o, _r2.i, _r0.i, _r1.o, _r2.i); + XMLVM_SOURCE_POSITION("String.java", 558) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_String___INIT____java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r7.o = me; + _r8.o = n1; + _r9.i = n2; + _r6.i = 0; + _r2.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("String.java", 564) + XMLVM_CHECK_NPE(7) + java_lang_Object___INIT___(_r7.o); + XMLVM_SOURCE_POSITION("String.java", 58) + XMLVM_CHECK_NPE(7) + ((java_lang_String*) _r7.o)->fields.java_lang_String.charset_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 59) + XMLVM_CHECK_NPE(7) + ((java_lang_String*) _r7.o)->fields.java_lang_String.charset2_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 60) + XMLVM_CHECK_NPE(7) + ((java_lang_String*) _r7.o)->fields.java_lang_String.charset3_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 565) + if (_r8.o != JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("String.java", 566) + // "null" + _r8.o = xmlvm_create_java_string_from_pool(63); + label15:; + XMLVM_SOURCE_POSITION("String.java", 568) + _r1.o = java_lang_String_valueOf___int(_r9.i); + XMLVM_SOURCE_POSITION("String.java", 569) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(1) + _r3.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_; + _r0.i = _r2.i + _r3.i; + XMLVM_SOURCE_POSITION("String.java", 570) + XMLVM_CLASS_INIT(char) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_CHECK_NPE(7) + ((java_lang_String*) _r7.o)->fields.java_lang_String.value_ = _r2.o; + XMLVM_SOURCE_POSITION("String.java", 571) + XMLVM_CHECK_NPE(7) + ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_ = _r6.i; + XMLVM_SOURCE_POSITION("String.java", 572) + XMLVM_CHECK_NPE(8) + _r2.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(8) + _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(7) + _r4.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(8) + _r5.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r4.o, _r6.i, _r5.i); + XMLVM_SOURCE_POSITION("String.java", 573) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_lang_String*) _r1.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(1) + _r3.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(7) + _r4.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(8) + _r5.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(1) + _r6.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r4.o, _r5.i, _r6.i); + XMLVM_SOURCE_POSITION("String.java", 574) + XMLVM_CHECK_NPE(7) + ((java_lang_String*) _r7.o)->fields.java_lang_String.count_ = _r0.i; + XMLVM_SOURCE_POSITION("String.java", 575) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_String_charAt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_charAt___int] + XMLVM_ENTER_METHOD("java.lang.String", "charAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("String.java", 587) + if (_r3.i < 0) goto label14; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_; + if (_r3.i >= _r0.i) goto label14; + XMLVM_SOURCE_POSITION("String.java", 588) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_String*) _r2.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_; + _r1.i = _r1.i + _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + XMLVM_SOURCE_POSITION("String.java", 590) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_String_compareValue___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_compareValue___char] + XMLVM_ENTER_METHOD("java.lang.String", "compareValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("String.java", 595) + _r0.i = 128; + if (_r2.i >= _r0.i) goto label18; + XMLVM_SOURCE_POSITION("String.java", 596) + _r0.i = 65; + if (_r0.i > _r2.i) goto label16; + _r0.i = 90; + if (_r2.i > _r0.i) goto label16; + XMLVM_SOURCE_POSITION("String.java", 597) + _r0.i = _r2.i + 32; + _r0.i = _r0.i & 0xffff; + label15:; + XMLVM_SOURCE_POSITION("String.java", 601) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0 = _r2; + XMLVM_SOURCE_POSITION("String.java", 599) + goto label15; + label18:; + _r0.i = java_lang_Character_toUpperCase___char(_r2.i); + _r0.i = java_lang_Character_toLowerCase___char(_r0.i); + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_String_toLowerCase___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toLowerCase___char] + XMLVM_ENTER_METHOD("java.lang.String", "toLowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("String.java", 606) + _r0.i = 128; + if (_r2.i >= _r0.i) goto label18; + XMLVM_SOURCE_POSITION("String.java", 607) + _r0.i = 65; + if (_r0.i > _r2.i) goto label16; + _r0.i = 90; + if (_r2.i > _r0.i) goto label16; + XMLVM_SOURCE_POSITION("String.java", 608) + _r0.i = _r2.i + 32; + _r0.i = _r0.i & 0xffff; + label15:; + XMLVM_SOURCE_POSITION("String.java", 612) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0 = _r2; + XMLVM_SOURCE_POSITION("String.java", 610) + goto label15; + label18:; + _r0.i = java_lang_Character_toLowerCase___char(_r2.i); + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_lang_String_toUpperCase___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toUpperCase___char] + XMLVM_ENTER_METHOD("java.lang.String", "toUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("String.java", 617) + _r0.i = 128; + if (_r2.i >= _r0.i) goto label20; + XMLVM_SOURCE_POSITION("String.java", 618) + _r0.i = 97; + if (_r0.i > _r2.i) goto label18; + _r0.i = 122; + if (_r2.i > _r0.i) goto label18; + XMLVM_SOURCE_POSITION("String.java", 619) + _r0.i = 32; + _r0.i = _r2.i - _r0.i; + _r0.i = _r0.i & 0xffff; + label17:; + XMLVM_SOURCE_POSITION("String.java", 623) + XMLVM_EXIT_METHOD() + return _r0.i; + label18:; + _r0 = _r2; + XMLVM_SOURCE_POSITION("String.java", 621) + goto label17; + label20:; + _r0.i = java_lang_Character_toUpperCase___char(_r2.i); + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_compareTo___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_compareTo___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.o = me; + _r11.o = n1; + XMLVM_SOURCE_POSITION("String.java", 648) + XMLVM_CHECK_NPE(10) + _r1.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(11) + _r3.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_; + XMLVM_SOURCE_POSITION("String.java", 649) + XMLVM_CHECK_NPE(10) + _r7.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(10) + _r8.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(11) + _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + if (_r8.i >= _r9.i) goto label38; + XMLVM_CHECK_NPE(10) + _r8.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_; + label14:; + _r0.i = _r7.i + _r8.i; + XMLVM_SOURCE_POSITION("String.java", 650) + XMLVM_CHECK_NPE(11) + _r6.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_; + _r4 = _r3; + _r2 = _r1; + label20:; + XMLVM_SOURCE_POSITION("String.java", 651) + if (_r2.i >= _r0.i) goto label41; + XMLVM_SOURCE_POSITION("String.java", 652) + XMLVM_CHECK_NPE(10) + _r7.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_; + _r1.i = _r2.i + 1; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r2.i); + _r7.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r3.i = _r4.i + 1; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r4.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r5.i = _r7.i - _r8.i; + if (_r5.i == 0) goto label49; + _r7 = _r5; + label37:; + XMLVM_SOURCE_POSITION("String.java", 653) + XMLVM_SOURCE_POSITION("String.java", 656) + XMLVM_EXIT_METHOD() + return _r7.i; + label38:; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + goto label14; + label41:; + XMLVM_CHECK_NPE(10) + _r7.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + _r7.i = _r7.i - _r8.i; + _r3 = _r4; + _r1 = _r2; + goto label37; + label49:; + _r4 = _r3; + _r2 = _r1; + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_compareToIgnoreCase___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_compareToIgnoreCase___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "compareToIgnoreCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r12.o = me; + _r13.o = n1; + XMLVM_SOURCE_POSITION("String.java", 680) + XMLVM_CHECK_NPE(12) + _r3.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(13) + _r5.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.offset_; + XMLVM_SOURCE_POSITION("String.java", 681) + XMLVM_CHECK_NPE(12) + _r9.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(12) + _r10.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(13) + _r11.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_; + if (_r10.i >= _r11.i) goto label37; + XMLVM_CHECK_NPE(12) + _r10.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + label14:; + _r2.i = _r9.i + _r10.i; + XMLVM_SOURCE_POSITION("String.java", 683) + XMLVM_CHECK_NPE(13) + _r8.o = ((java_lang_String*) _r13.o)->fields.java_lang_String.value_; + _r6 = _r5; + _r4 = _r3; + label20:; + XMLVM_SOURCE_POSITION("String.java", 684) + if (_r4.i >= _r2.i) goto label54; + XMLVM_SOURCE_POSITION("String.java", 685) + XMLVM_CHECK_NPE(12) + _r9.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_; + _r3.i = _r4.i + 1; + XMLVM_CHECK_NPE(9) + XMLVM_CHECK_ARRAY_BOUNDS(_r9.o, _r4.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r9.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r5.i = _r6.i + 1; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r6.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + if (_r0.i != _r1.i) goto label40; + _r6 = _r5; + _r4 = _r3; + XMLVM_SOURCE_POSITION("String.java", 686) + goto label20; + label37:; + XMLVM_CHECK_NPE(13) + _r10.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_; + goto label14; + label40:; + XMLVM_SOURCE_POSITION("String.java", 688) + XMLVM_CHECK_NPE(12) + _r0.i = java_lang_String_compareValue___char(_r12.o, _r0.i); + XMLVM_SOURCE_POSITION("String.java", 689) + XMLVM_CHECK_NPE(12) + _r1.i = java_lang_String_compareValue___char(_r12.o, _r1.i); + _r7.i = _r0.i - _r1.i; + if (_r7.i == 0) goto label62; + XMLVM_SOURCE_POSITION("String.java", 690) + _r9 = _r7; + label53:; + XMLVM_SOURCE_POSITION("String.java", 691) + XMLVM_SOURCE_POSITION("String.java", 694) + XMLVM_EXIT_METHOD() + return _r9.i; + label54:; + XMLVM_CHECK_NPE(12) + _r9.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(13) + _r10.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_; + _r9.i = _r9.i - _r10.i; + _r5 = _r6; + _r3 = _r4; + goto label53; + label62:; + _r6 = _r5; + _r4 = _r3; + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_concat___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_concat___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "concat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 0; + XMLVM_SOURCE_POSITION("String.java", 706) + XMLVM_CHECK_NPE(7) + _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + if (_r1.i != 0) goto label7; + _r1 = _r6; + label6:; + XMLVM_SOURCE_POSITION("String.java", 707) + XMLVM_SOURCE_POSITION("String.java", 716) + XMLVM_EXIT_METHOD() + return _r1.o; + label7:; + XMLVM_SOURCE_POSITION("String.java", 710) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(7) + _r2.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + _r1.i = _r1.i + _r2.i; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i); + XMLVM_SOURCE_POSITION("String.java", 711) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + if (_r1.i <= 0) goto label27; + XMLVM_SOURCE_POSITION("String.java", 712) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r5.i, _r3.i); + label27:; + XMLVM_SOURCE_POSITION("String.java", 714) + XMLVM_CHECK_NPE(7) + _r1.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(7) + _r2.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(7) + _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i); + _r1.o = __NEW_java_lang_String(); + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(1) + java_lang_String___INIT____int_int_char_1ARRAY(_r1.o, _r5.i, _r2.i, _r0.o); + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_copyValueOf___char_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_copyValueOf___char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.String", "copyValueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = n1; + XMLVM_SOURCE_POSITION("String.java", 731) + _r0.o = __NEW_java_lang_String(); + _r1.i = 0; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r3.o, _r1.i, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_copyValueOf___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_copyValueOf___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "copyValueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("String.java", 753) + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_defaultCharset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_defaultCharset__] + XMLVM_ENTER_METHOD("java.lang.String", "defaultCharset", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("String.java", 757) + _r1.o = java_lang_String_GET_DefaultCharset(); + if (_r1.o != JAVA_NULL) goto label37; + XMLVM_SOURCE_POSITION("String.java", 758) + _r1.o = __NEW_org_apache_harmony_luni_util_PriviAction(); + // "file.encoding" + _r2.o = xmlvm_create_java_string_from_pool(174); + // "ISO8859_1" + _r3.o = xmlvm_create_java_string_from_pool(116); + XMLVM_CHECK_NPE(1) + org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String_java_lang_String(_r1.o, _r2.o, _r3.o); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r1.o); + _r0.o = _r0.o; + XMLVM_TRY_BEGIN(w3113aaac40b1c12) + // Begin try + XMLVM_SOURCE_POSITION("String.java", 764) + _r1.o = java_nio_charset_Charset_forName___java_lang_String(_r0.o); + java_lang_String_PUT_DefaultCharset( _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac40b1c12) + XMLVM_CATCH_END(w3113aaac40b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac40b1c12) + label25:; + XMLVM_SOURCE_POSITION("String.java", 771) + _r1.o = java_lang_String_GET_DefaultCharset(); + if (_r1.o != JAVA_NULL) goto label37; + XMLVM_SOURCE_POSITION("String.java", 772) + // "ISO-8859-1" + _r1.o = xmlvm_create_java_string_from_pool(175); + _r1.o = java_nio_charset_Charset_forName___java_lang_String(_r1.o); + java_lang_String_PUT_DefaultCharset( _r1.o); + label37:; + XMLVM_SOURCE_POSITION("String.java", 775) + _r1.o = java_lang_String_GET_DefaultCharset(); + XMLVM_EXIT_METHOD() + return _r1.o; + label40:; + XMLVM_SOURCE_POSITION("String.java", 767) + java_lang_Thread* curThread_w3113aaac40b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w3113aaac40b1c27->fields.java_lang_Thread.xmlvmException_; + goto label25; + label42:; + XMLVM_SOURCE_POSITION("String.java", 765) + java_lang_Thread* curThread_w3113aaac40b1c31 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w3113aaac40b1c31->fields.java_lang_Thread.xmlvmException_; + goto label25; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_endsWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_endsWith___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "endsWith", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("String.java", 790) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + _r0.i = _r0.i - _r1.i; + _r1.i = 0; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r3.o, _r0.i, _r4.o, _r1.i, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.String", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.o = me; + _r11.o = n1; + _r9.i = 1; + _r8.i = 0; + XMLVM_SOURCE_POSITION("String.java", 806) + if (_r11.o != _r10.o) goto label6; + _r5 = _r9; + label5:; + XMLVM_SOURCE_POSITION("String.java", 807) + XMLVM_SOURCE_POSITION("String.java", 823) + XMLVM_EXIT_METHOD() + return _r5.i; + label6:; + XMLVM_SOURCE_POSITION("String.java", 809) + XMLVM_CLASS_INIT(java_lang_String) + _r5.i = XMLVM_ISA(_r11.o, __CLASS_java_lang_String); + if (_r5.i == 0) goto label60; + XMLVM_SOURCE_POSITION("String.java", 810) + _r0 = _r11; + _r0.o = _r0.o; + _r3 = _r0; + XMLVM_SOURCE_POSITION("String.java", 811) + XMLVM_CHECK_NPE(10) + _r1.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.hashCode_; + XMLVM_SOURCE_POSITION("String.java", 812) + XMLVM_CHECK_NPE(3) + _r4.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.hashCode_; + XMLVM_SOURCE_POSITION("String.java", 813) + XMLVM_CHECK_NPE(10) + _r5.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(3) + _r6.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + if (_r5.i != _r6.i) goto label30; + if (_r1.i == _r4.i) goto label32; + if (_r1.i == 0) goto label32; + if (_r4.i == 0) goto label32; + label30:; + _r5 = _r8; + XMLVM_SOURCE_POSITION("String.java", 814) + goto label5; + label32:; + XMLVM_SOURCE_POSITION("String.java", 816) + _r2.i = 0; + label33:; + XMLVM_CHECK_NPE(10) + _r5.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_; + if (_r2.i >= _r5.i) goto label58; + XMLVM_SOURCE_POSITION("String.java", 817) + XMLVM_CHECK_NPE(10) + _r5.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(10) + _r6.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_; + _r6.i = _r6.i + _r2.i; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r6.i); + _r5.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + XMLVM_CHECK_NPE(3) + _r6.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + _r7.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_; + _r7.i = _r7.i + _r2.i; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r7.i); + _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + if (_r5.i == _r6.i) goto label55; + _r5 = _r8; + XMLVM_SOURCE_POSITION("String.java", 818) + goto label5; + label55:; + _r2.i = _r2.i + 1; + goto label33; + label58:; + _r5 = _r9; + XMLVM_SOURCE_POSITION("String.java", 821) + goto label5; + label60:; + _r5 = _r8; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_equalsIgnoreCase___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_equalsIgnoreCase___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "equalsIgnoreCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r12.o = me; + _r13.o = n1; + _r11.i = 1; + _r10.i = 0; + XMLVM_SOURCE_POSITION("String.java", 836) + if (_r13.o != _r12.o) goto label6; + _r8 = _r11; + label5:; + XMLVM_SOURCE_POSITION("String.java", 837) + XMLVM_SOURCE_POSITION("String.java", 855) + XMLVM_EXIT_METHOD() + return _r8.i; + label6:; + XMLVM_SOURCE_POSITION("String.java", 839) + if (_r13.o == JAVA_NULL) goto label14; + XMLVM_CHECK_NPE(12) + _r8.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(13) + _r9.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_; + if (_r8.i == _r9.i) goto label16; + label14:; + _r8 = _r10; + XMLVM_SOURCE_POSITION("String.java", 840) + goto label5; + label16:; + XMLVM_SOURCE_POSITION("String.java", 843) + XMLVM_CHECK_NPE(12) + _r3.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(13) + _r5.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.offset_; + XMLVM_SOURCE_POSITION("String.java", 844) + XMLVM_CHECK_NPE(12) + _r8.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(12) + _r9.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + _r2.i = _r8.i + _r9.i; + XMLVM_SOURCE_POSITION("String.java", 846) + XMLVM_CHECK_NPE(13) + _r7.o = ((java_lang_String*) _r13.o)->fields.java_lang_String.value_; + _r6 = _r5; + _r4 = _r3; + label30:; + XMLVM_SOURCE_POSITION("String.java", 847) + if (_r4.i >= _r2.i) goto label66; + XMLVM_SOURCE_POSITION("String.java", 848) + XMLVM_CHECK_NPE(12) + _r8.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_; + _r3.i = _r4.i + 1; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r4.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r5.i = _r6.i + 1; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + if (_r0.i == _r1.i) goto label68; + XMLVM_CHECK_NPE(12) + _r8.i = java_lang_String_toUpperCase___char(_r12.o, _r0.i); + XMLVM_CHECK_NPE(12) + _r9.i = java_lang_String_toUpperCase___char(_r12.o, _r1.i); + if (_r8.i == _r9.i) goto label68; + XMLVM_CHECK_NPE(12) + _r8.i = java_lang_String_toLowerCase___char(_r12.o, _r0.i); + XMLVM_CHECK_NPE(12) + _r9.i = java_lang_String_toLowerCase___char(_r12.o, _r1.i); + if (_r8.i == _r9.i) goto label68; + _r8 = _r10; + XMLVM_SOURCE_POSITION("String.java", 852) + goto label5; + label66:; + _r8 = _r11; + goto label5; + label68:; + _r6 = _r5; + _r4 = _r3; + goto label30; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_getBytes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes__] + XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("String.java", 867) + XMLVM_CHECK_NPE(6) + _r2.o = java_lang_String_defaultCharset__(_r6.o); + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + _r3.o = java_nio_CharBuffer_wrap___char_1ARRAY_int_int(_r3.o, _r4.i, _r5.i); + XMLVM_CHECK_NPE(2) + _r0.o = java_nio_charset_Charset_encode___java_nio_CharBuffer(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("String.java", 869) + XMLVM_CHECK_NPE(0) + _r2.i = java_nio_Buffer_limit__(_r0.o); + XMLVM_CLASS_INIT(byte) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r2.i); + XMLVM_SOURCE_POSITION("String.java", 870) + XMLVM_CHECK_NPE(0) + java_nio_ByteBuffer_get___byte_1ARRAY(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("String.java", 871) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes___int_int_byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r4.o = me; + _r5.i = n1; + _r6.i = n2; + _r7.o = n3; + _r8.i = n4; + XMLVM_SOURCE_POSITION("String.java", 895) + if (_r5.i < 0) goto label39; + if (_r5.i > _r6.i) goto label39; + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r6.i > _r3.i) goto label39; + XMLVM_SOURCE_POSITION("String.java", 896) + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r6.i = _r6.i + _r3.i; + XMLVM_TRY_BEGIN(w3113aaac45b1c14) + // Begin try + XMLVM_SOURCE_POSITION("String.java", 898) + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r1.i = _r3.i + _r5.i; + _r2 = _r8; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac45b1c14) + XMLVM_CATCH_END(w3113aaac45b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac45b1c14) + label16:; + XMLVM_TRY_BEGIN(w3113aaac45b1c16) + // Begin try + if (_r1.i >= _r6.i) { XMLVM_MEMCPY(curThread_w3113aaac45b1c16->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac45b1c16, sizeof(XMLVM_JMP_BUF)); goto label45; }; + XMLVM_SOURCE_POSITION("String.java", 899) + _r8.i = _r2.i + 1; + XMLVM_CHECK_NPE(4) + _r3.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3.i = (_r3.i << 24) >> 24; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r2.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac45b1c16) + XMLVM_CATCH_END(w3113aaac45b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac45b1c16) + _r1.i = _r1.i + 1; + _r2 = _r8; + goto label16; + label31:; + XMLVM_SOURCE_POSITION("String.java", 901) + java_lang_Thread* curThread_w3113aaac45b1c22 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3113aaac45b1c22->fields.java_lang_Thread.xmlvmException_; + _r0 = _r3; + XMLVM_SOURCE_POSITION("String.java", 902) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + label39:; + XMLVM_SOURCE_POSITION("String.java", 905) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + label45:; + XMLVM_SOURCE_POSITION("String.java", 907) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_getBytes___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("String.java", 919) + XMLVM_CHECK_NPE(6) + _r2.o = java_lang_String_getCharset___java_lang_String(_r6.o, _r7.o); + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + _r3.o = java_nio_CharBuffer_wrap___char_1ARRAY_int_int(_r3.o, _r4.i, _r5.i); + XMLVM_CHECK_NPE(2) + _r0.o = java_nio_charset_Charset_encode___java_nio_CharBuffer(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("String.java", 921) + XMLVM_CHECK_NPE(0) + _r2.i = java_nio_Buffer_limit__(_r0.o); + XMLVM_CLASS_INIT(byte) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r2.i); + XMLVM_SOURCE_POSITION("String.java", 922) + XMLVM_CHECK_NPE(0) + java_nio_ByteBuffer_get___byte_1ARRAY(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("String.java", 923) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_getBytes___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes___java_nio_charset_Charset] + XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("String.java", 945) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + _r2.o = java_nio_CharBuffer_wrap___char_1ARRAY_int_int(_r2.o, _r3.i, _r4.i); + XMLVM_CHECK_NPE(6) + _r0.o = java_nio_charset_Charset_encode___java_nio_CharBuffer(_r6.o, _r2.o); + XMLVM_SOURCE_POSITION("String.java", 947) + XMLVM_CHECK_NPE(0) + _r2.i = java_nio_Buffer_limit__(_r0.o); + XMLVM_CLASS_INIT(byte) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r2.i); + XMLVM_SOURCE_POSITION("String.java", 948) + XMLVM_CHECK_NPE(0) + java_nio_ByteBuffer_get___byte_1ARRAY(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("String.java", 949) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_getCharset___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_getCharset___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "getCharset", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("String.java", 954) + _r0.o = java_lang_String_GET_lastCharset(); + if (_r0.o == JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("String.java", 955) + XMLVM_CHECK_NPE(0) + _r2.o = java_nio_charset_Charset_name__(_r0.o); + XMLVM_CHECK_NPE(4) + _r2.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r4.o, _r2.o); + if (_r2.i != 0) goto label20; + label14:; + XMLVM_TRY_BEGIN(w3113aaac48b1c11) + // Begin try + XMLVM_SOURCE_POSITION("String.java", 957) + _r0.o = java_nio_charset_Charset_forName___java_lang_String(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac48b1c11) + XMLVM_CATCH_END(w3113aaac48b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac48b1c11) + XMLVM_SOURCE_POSITION("String.java", 965) + java_lang_String_PUT_lastCharset( _r0.o); + label20:; + XMLVM_SOURCE_POSITION("String.java", 967) + XMLVM_EXIT_METHOD() + return _r0.o; + label21:; + XMLVM_SOURCE_POSITION("String.java", 958) + java_lang_Thread* curThread_w3113aaac48b1c19 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w3113aaac48b1c19->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("String.java", 959) + + + // Red class access removed: java.io.UnsupportedEncodingException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException::initCause + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + label36:; + XMLVM_SOURCE_POSITION("String.java", 961) + java_lang_Thread* curThread_w3113aaac48b1c29 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w3113aaac48b1c29->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("String.java", 962) + + + // Red class access removed: java.io.UnsupportedEncodingException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException::initCause + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.UnsupportedEncodingException::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_getChars___int_int_char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.lang.String", "getChars", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = me; + _r4.i = n1; + _r5.i = n2; + _r6.o = n3; + _r7.i = n4; + XMLVM_SOURCE_POSITION("String.java", 992) + if (_r4.i < 0) goto label19; + if (_r4.i > _r5.i) goto label19; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + if (_r5.i > _r0.i) goto label19; + XMLVM_SOURCE_POSITION("String.java", 993) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_; + _r1.i = _r1.i + _r4.i; + _r2.i = _r5.i - _r4.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r6.o, _r7.i, _r2.i); + XMLVM_SOURCE_POSITION("String.java", 997) + XMLVM_EXIT_METHOD() + return; + label19:; + XMLVM_SOURCE_POSITION("String.java", 995) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_hashCode__] + XMLVM_ENTER_METHOD("java.lang.String", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("String.java", 1001) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.hashCode_; + if (_r2.i != 0) goto label34; + XMLVM_SOURCE_POSITION("String.java", 1002) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r2.i != 0) goto label10; + XMLVM_SOURCE_POSITION("String.java", 1003) + _r2.i = 0; + label9:; + XMLVM_SOURCE_POSITION("String.java", 1011) + XMLVM_EXIT_METHOD() + return _r2.i; + label10:; + XMLVM_SOURCE_POSITION("String.java", 1005) + _r0.i = 0; + XMLVM_SOURCE_POSITION("String.java", 1006) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + label13:; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r2.i = _r2.i + _r3.i; + if (_r1.i >= _r2.i) goto label32; + XMLVM_SOURCE_POSITION("String.java", 1007) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3.i = _r0.i << 5; + _r3.i = _r3.i - _r0.i; + _r0.i = _r2.i + _r3.i; + _r1.i = _r1.i + 1; + goto label13; + label32:; + XMLVM_SOURCE_POSITION("String.java", 1009) + XMLVM_CHECK_NPE(4) + ((java_lang_String*) _r4.o)->fields.java_lang_String.hashCode_ = _r0.i; + label34:; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.hashCode_; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_indexOf___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___int] + XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("String.java", 1025) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_indexOf___int_int(_r1.o, _r2.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_indexOf___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___int_int] + XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.i = n2; + _r3.i = 65535; + XMLVM_SOURCE_POSITION("String.java", 1041) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r6.i >= _r2.i) goto label68; + XMLVM_SOURCE_POSITION("String.java", 1042) + if (_r6.i >= 0) goto label10; + XMLVM_SOURCE_POSITION("String.java", 1043) + _r6.i = 0; + label10:; + XMLVM_SOURCE_POSITION("String.java", 1045) + if (_r5.i < 0) goto label39; + if (_r5.i > _r3.i) goto label39; + XMLVM_SOURCE_POSITION("String.java", 1046) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r1.i = _r2.i + _r6.i; + label18:; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + _r2.i = _r2.i + _r3.i; + if (_r1.i >= _r2.i) goto label68; + XMLVM_SOURCE_POSITION("String.java", 1047) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r2.i != _r5.i) goto label36; + XMLVM_SOURCE_POSITION("String.java", 1048) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r2.i = _r1.i - _r2.i; + label35:; + XMLVM_SOURCE_POSITION("String.java", 1062) + XMLVM_EXIT_METHOD() + return _r2.i; + label36:; + _r1.i = _r1.i + 1; + goto label18; + label39:; + XMLVM_SOURCE_POSITION("String.java", 1051) + if (_r5.i <= _r3.i) goto label68; + _r2.i = 1114111; + if (_r5.i > _r2.i) goto label68; + XMLVM_SOURCE_POSITION("String.java", 1052) + _r1 = _r6; + label47:; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r1.i >= _r2.i) goto label68; + XMLVM_SOURCE_POSITION("String.java", 1053) + XMLVM_CHECK_NPE(4) + _r0.i = java_lang_String_codePointAt___int(_r4.o, _r1.i); + if (_r0.i != _r5.i) goto label59; + XMLVM_SOURCE_POSITION("String.java", 1054) + _r2 = _r1; + XMLVM_SOURCE_POSITION("String.java", 1055) + goto label35; + label59:; + XMLVM_SOURCE_POSITION("String.java", 1056) + _r2.i = 65536; + if (_r0.i < _r2.i) goto label65; + XMLVM_SOURCE_POSITION("String.java", 1057) + _r1.i = _r1.i + 1; + label65:; + _r1.i = _r1.i + 1; + goto label47; + label68:; + _r2.i = -1; + goto label35; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_indexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1078) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_indexOf___java_lang_String_int(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_indexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r11.o = me; + _r12.o = n1; + _r13.i = n2; + _r10.i = -1; + XMLVM_SOURCE_POSITION("String.java", 1096) + if (_r13.i >= 0) goto label4; + XMLVM_SOURCE_POSITION("String.java", 1097) + _r13.i = 0; + label4:; + XMLVM_SOURCE_POSITION("String.java", 1099) + XMLVM_CHECK_NPE(12) + _r5.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + if (_r5.i <= 0) goto label64; + XMLVM_SOURCE_POSITION("String.java", 1100) + XMLVM_SOURCE_POSITION("String.java", 1101) + _r8.i = _r5.i + _r13.i; + XMLVM_CHECK_NPE(11) + _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + if (_r8.i <= _r9.i) goto label16; + _r8 = _r10; + label15:; + XMLVM_SOURCE_POSITION("String.java", 1102) + XMLVM_SOURCE_POSITION("String.java", 1123) + XMLVM_EXIT_METHOD() + return _r8.i; + label16:; + XMLVM_SOURCE_POSITION("String.java", 1104) + XMLVM_CHECK_NPE(12) + _r7.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_; + XMLVM_SOURCE_POSITION("String.java", 1105) + XMLVM_CHECK_NPE(12) + _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_; + XMLVM_SOURCE_POSITION("String.java", 1106) + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r0.i = _r6.i + _r5.i; + label24:; + XMLVM_SOURCE_POSITION("String.java", 1107) + XMLVM_SOURCE_POSITION("String.java", 1109) + XMLVM_CHECK_NPE(11) + _r2.i = java_lang_String_indexOf___int_int(_r11.o, _r1.i, _r13.i); + if (_r2.i == _r10.i) goto label36; + XMLVM_SOURCE_POSITION("String.java", 1110) + _r8.i = _r5.i + _r2.i; + XMLVM_CHECK_NPE(11) + _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + if (_r8.i <= _r9.i) goto label38; + label36:; + _r8 = _r10; + XMLVM_SOURCE_POSITION("String.java", 1111) + goto label15; + label38:; + XMLVM_SOURCE_POSITION("String.java", 1113) + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_; + _r3.i = _r8.i + _r2.i; + _r4 = _r6; + label43:; + XMLVM_SOURCE_POSITION("String.java", 1114) + _r4.i = _r4.i + 1; + if (_r4.i >= _r0.i) goto label57; + XMLVM_CHECK_NPE(11) + _r8.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_; + _r3.i = _r3.i + 1; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r3.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r4.i); + _r9.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + if (_r8.i == _r9.i) goto label43; + label57:; + XMLVM_SOURCE_POSITION("String.java", 1117) + if (_r4.i != _r0.i) goto label61; + _r8 = _r2; + XMLVM_SOURCE_POSITION("String.java", 1118) + goto label15; + label61:; + XMLVM_SOURCE_POSITION("String.java", 1120) + _r13.i = _r2.i + 1; + XMLVM_SOURCE_POSITION("String.java", 1121) + goto label24; + label64:; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + if (_r13.i >= _r8.i) goto label70; + _r8 = _r13; + goto label15; + label70:; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_intern__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_intern__] + XMLVM_ENTER_METHOD("java.lang.String", "intern", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("String.java", 1136) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_lastIndexOf___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___int] + XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("String.java", 1150) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_; + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(2) + _r0.i = java_lang_String_lastIndexOf___int_int(_r2.o, _r3.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_lastIndexOf___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___int_int] + XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = me; + _r6.i = n1; + _r7.i = n2; + _r4.i = 65535; + XMLVM_SOURCE_POSITION("String.java", 1166) + if (_r7.i < 0) goto label67; + XMLVM_SOURCE_POSITION("String.java", 1167) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + if (_r7.i < _r2.i) goto label14; + XMLVM_SOURCE_POSITION("String.java", 1168) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + _r3.i = 1; + _r7.i = _r2.i - _r3.i; + label14:; + XMLVM_SOURCE_POSITION("String.java", 1170) + if (_r6.i < 0) goto label40; + if (_r6.i > _r4.i) goto label40; + XMLVM_SOURCE_POSITION("String.java", 1171) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + _r1.i = _r2.i + _r7.i; + label22:; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + if (_r1.i < _r2.i) goto label67; + XMLVM_SOURCE_POSITION("String.java", 1172) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r2.i != _r6.i) goto label37; + XMLVM_SOURCE_POSITION("String.java", 1173) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + _r2.i = _r1.i - _r2.i; + label36:; + XMLVM_SOURCE_POSITION("String.java", 1187) + XMLVM_EXIT_METHOD() + return _r2.i; + label37:; + _r1.i = _r1.i + -1; + goto label22; + label40:; + XMLVM_SOURCE_POSITION("String.java", 1176) + if (_r6.i <= _r4.i) goto label67; + _r2.i = 1114111; + if (_r6.i > _r2.i) goto label67; + XMLVM_SOURCE_POSITION("String.java", 1177) + _r1 = _r7; + label48:; + if (_r1.i < 0) goto label67; + XMLVM_SOURCE_POSITION("String.java", 1178) + XMLVM_CHECK_NPE(5) + _r0.i = java_lang_String_codePointAt___int(_r5.o, _r1.i); + if (_r0.i != _r6.i) goto label58; + XMLVM_SOURCE_POSITION("String.java", 1179) + _r2 = _r1; + XMLVM_SOURCE_POSITION("String.java", 1180) + goto label36; + label58:; + XMLVM_SOURCE_POSITION("String.java", 1181) + _r2.i = 65536; + if (_r0.i < _r2.i) goto label64; + XMLVM_SOURCE_POSITION("String.java", 1182) + _r1.i = _r1.i + -1; + label64:; + _r1.i = _r1.i + -1; + goto label48; + label67:; + _r2.i = -1; + goto label36; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_lastIndexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1204) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_lastIndexOf___java_lang_String_int(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_lastIndexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r11.o = me; + _r12.o = n1; + _r13.i = n2; + _r10.i = -1; + XMLVM_SOURCE_POSITION("String.java", 1222) + XMLVM_CHECK_NPE(12) + _r5.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + XMLVM_SOURCE_POSITION("String.java", 1223) + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + if (_r5.i > _r8.i) goto label72; + if (_r13.i < 0) goto label72; + XMLVM_SOURCE_POSITION("String.java", 1224) + if (_r5.i <= 0) goto label63; + XMLVM_SOURCE_POSITION("String.java", 1225) + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + _r8.i = _r8.i - _r5.i; + if (_r13.i <= _r8.i) goto label20; + XMLVM_SOURCE_POSITION("String.java", 1226) + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + _r13.i = _r8.i - _r5.i; + label20:; + XMLVM_SOURCE_POSITION("String.java", 1229) + XMLVM_CHECK_NPE(12) + _r7.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_; + XMLVM_SOURCE_POSITION("String.java", 1230) + XMLVM_CHECK_NPE(12) + _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_; + XMLVM_SOURCE_POSITION("String.java", 1231) + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r0.i = _r6.i + _r5.i; + label28:; + XMLVM_SOURCE_POSITION("String.java", 1232) + XMLVM_SOURCE_POSITION("String.java", 1234) + XMLVM_CHECK_NPE(11) + _r2.i = java_lang_String_lastIndexOf___int_int(_r11.o, _r1.i, _r13.i); + if (_r2.i != _r10.i) goto label36; + XMLVM_SOURCE_POSITION("String.java", 1235) + _r8 = _r10; + label35:; + XMLVM_SOURCE_POSITION("String.java", 1236) + XMLVM_SOURCE_POSITION("String.java", 1250) + XMLVM_EXIT_METHOD() + return _r8.i; + label36:; + XMLVM_SOURCE_POSITION("String.java", 1238) + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_; + _r3.i = _r8.i + _r2.i; + _r4 = _r6; + label41:; + XMLVM_SOURCE_POSITION("String.java", 1239) + _r4.i = _r4.i + 1; + if (_r4.i >= _r0.i) goto label55; + XMLVM_CHECK_NPE(11) + _r8.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_; + _r3.i = _r3.i + 1; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r3.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r4.i); + _r9.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + if (_r8.i == _r9.i) goto label41; + label55:; + XMLVM_SOURCE_POSITION("String.java", 1242) + if (_r4.i != _r0.i) goto label59; + _r8 = _r2; + XMLVM_SOURCE_POSITION("String.java", 1243) + goto label35; + label59:; + XMLVM_SOURCE_POSITION("String.java", 1245) + _r8.i = 1; + _r13.i = _r2.i - _r8.i; + XMLVM_SOURCE_POSITION("String.java", 1246) + goto label28; + label63:; + XMLVM_SOURCE_POSITION("String.java", 1248) + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + if (_r13.i >= _r8.i) goto label69; + _r8 = _r13; + goto label35; + label69:; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + goto label35; + label72:; + _r8 = _r10; + goto label35; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_length__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_length__] + XMLVM_ENTER_METHOD("java.lang.String", "length", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("String.java", 1259) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_regionMatches___int_java_lang_String_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "regionMatches", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + _r8.o = me; + _r9.i = n1; + _r10.o = n2; + _r11.i = n3; + _r12.i = n4; + _r7.i = 1; + _r6.i = 0; + XMLVM_SOURCE_POSITION("String.java", 1281) + XMLVM_CHECK_NPE(10) + _r3.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_; + _r3.i = _r3.i - _r11.i; + if (_r3.i < _r12.i) goto label9; + if (_r11.i >= 0) goto label11; + label9:; + _r3 = _r6; + label10:; + XMLVM_SOURCE_POSITION("String.java", 1282) + XMLVM_SOURCE_POSITION("String.java", 1296) + XMLVM_EXIT_METHOD() + return _r3.i; + label11:; + XMLVM_SOURCE_POSITION("String.java", 1284) + if (_r9.i < 0) goto label18; + XMLVM_CHECK_NPE(8) + _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + _r3.i = _r3.i - _r9.i; + if (_r3.i >= _r12.i) goto label20; + label18:; + _r3 = _r6; + XMLVM_SOURCE_POSITION("String.java", 1285) + goto label10; + label20:; + XMLVM_SOURCE_POSITION("String.java", 1287) + if (_r12.i > 0) goto label24; + _r3 = _r7; + XMLVM_SOURCE_POSITION("String.java", 1288) + goto label10; + label24:; + XMLVM_SOURCE_POSITION("String.java", 1290) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_; + _r1.i = _r3.i + _r9.i; + XMLVM_CHECK_NPE(10) + _r3.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_; + _r2.i = _r3.i + _r11.i; + _r0.i = 0; + label33:; + XMLVM_SOURCE_POSITION("String.java", 1291) + if (_r0.i >= _r12.i) goto label54; + XMLVM_SOURCE_POSITION("String.java", 1292) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_; + _r4.i = _r1.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_CHECK_NPE(10) + _r4.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_; + _r5.i = _r2.i + _r0.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r4.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + if (_r3.i == _r4.i) goto label51; + _r3 = _r6; + XMLVM_SOURCE_POSITION("String.java", 1293) + goto label10; + label51:; + _r0.i = _r0.i + 1; + goto label33; + label54:; + _r3 = _r7; + goto label10; + //XMLVM_END_WRAPPER +} + +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) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_regionMatches___boolean_int_java_lang_String_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "regionMatches", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + _r9.o = me; + _r10.i = n1; + _r11.i = n2; + _r12.o = n3; + _r13.i = n4; + _r14.i = n5; + _r8.i = 0; + XMLVM_SOURCE_POSITION("String.java", 1321) + if (_r10.i != 0) goto label8; + XMLVM_SOURCE_POSITION("String.java", 1322) + XMLVM_CHECK_NPE(9) + _r6.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r9.o, _r11.i, _r12.o, _r13.i, _r14.i); + label7:; + XMLVM_SOURCE_POSITION("String.java", 1346) + XMLVM_EXIT_METHOD() + return _r6.i; + label8:; + XMLVM_SOURCE_POSITION("String.java", 1325) + if (_r12.o == JAVA_NULL) goto label80; + XMLVM_SOURCE_POSITION("String.java", 1326) + if (_r11.i < 0) goto label17; + XMLVM_CHECK_NPE(9) + _r6.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.count_; + _r6.i = _r6.i - _r11.i; + if (_r14.i <= _r6.i) goto label19; + label17:; + _r6 = _r8; + XMLVM_SOURCE_POSITION("String.java", 1327) + goto label7; + label19:; + XMLVM_SOURCE_POSITION("String.java", 1329) + if (_r13.i < 0) goto label26; + XMLVM_CHECK_NPE(12) + _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_; + _r6.i = _r6.i - _r13.i; + if (_r14.i <= _r6.i) goto label28; + label26:; + _r6 = _r8; + XMLVM_SOURCE_POSITION("String.java", 1330) + goto label7; + label28:; + XMLVM_SOURCE_POSITION("String.java", 1333) + XMLVM_CHECK_NPE(9) + _r6.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.offset_; + _r11.i = _r11.i + _r6.i; + XMLVM_SOURCE_POSITION("String.java", 1334) + XMLVM_CHECK_NPE(12) + _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_; + _r13.i = _r13.i + _r6.i; + _r2.i = _r11.i + _r14.i; + XMLVM_SOURCE_POSITION("String.java", 1337) + XMLVM_CHECK_NPE(12) + _r4.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_; + _r3 = _r13; + _r5 = _r11; + label40:; + XMLVM_SOURCE_POSITION("String.java", 1338) + if (_r5.i >= _r2.i) goto label76; + XMLVM_SOURCE_POSITION("String.java", 1339) + XMLVM_CHECK_NPE(9) + _r6.o = ((java_lang_String*) _r9.o)->fields.java_lang_String.value_; + _r11.i = _r5.i + 1; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r5.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + _r13.i = _r3.i + 1; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + if (_r0.i == _r1.i) goto label86; + XMLVM_CHECK_NPE(9) + _r6.i = java_lang_String_toUpperCase___char(_r9.o, _r0.i); + XMLVM_CHECK_NPE(9) + _r7.i = java_lang_String_toUpperCase___char(_r9.o, _r1.i); + if (_r6.i == _r7.i) goto label86; + XMLVM_CHECK_NPE(9) + _r6.i = java_lang_String_toLowerCase___char(_r9.o, _r0.i); + XMLVM_CHECK_NPE(9) + _r7.i = java_lang_String_toLowerCase___char(_r9.o, _r1.i); + if (_r6.i == _r7.i) goto label86; + _r6 = _r8; + XMLVM_SOURCE_POSITION("String.java", 1343) + goto label7; + label76:; + _r6.i = 1; + _r13 = _r3; + _r11 = _r5; + goto label7; + label80:; + XMLVM_SOURCE_POSITION("String.java", 1348) + _r6.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(6) + java_lang_NullPointerException___INIT___(_r6.o); + XMLVM_THROW_CUSTOM(_r6.o) + label86:; + _r3 = _r13; + _r5 = _r11; + goto label40; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_replace___char_char(JAVA_OBJECT me, JAVA_CHAR n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_replace___char_char] + XMLVM_ENTER_METHOD("java.lang.String", "replace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r8.o = me; + _r9.i = n1; + _r10.i = n2; + _r7.i = -1; + _r6.i = 0; + XMLVM_SOURCE_POSITION("String.java", 1362) + XMLVM_CHECK_NPE(8) + _r1.i = java_lang_String_indexOf___int_int(_r8.o, _r9.i, _r6.i); + if (_r1.i != _r7.i) goto label10; + XMLVM_SOURCE_POSITION("String.java", 1363) + _r3 = _r8; + label9:; + XMLVM_SOURCE_POSITION("String.java", 1364) + XMLVM_SOURCE_POSITION("String.java", 1372) + XMLVM_EXIT_METHOD() + return _r3.o; + label10:; + XMLVM_SOURCE_POSITION("String.java", 1367) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i); + XMLVM_SOURCE_POSITION("String.java", 1368) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(8) + _r4.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(8) + _r5.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r4.i, _r0.o, _r6.i, _r5.i); + label23:; + XMLVM_SOURCE_POSITION("String.java", 1370) + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r10.i; + XMLVM_SOURCE_POSITION("String.java", 1371) + XMLVM_CHECK_NPE(8) + _r1.i = java_lang_String_indexOf___int_int(_r8.o, _r9.i, _r2.i); + if (_r1.i != _r7.i) goto label23; + _r3.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(8) + _r4.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(3) + java_lang_String___INIT____int_int_char_1ARRAY(_r3.o, _r6.i, _r4.i, _r0.o); + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_replace___java_lang_CharSequence_java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_replace___java_lang_CharSequence_java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.lang.String", "replace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r11.o = me; + _r12.o = n1; + _r13.o = n2; + _r10.i = -1; + XMLVM_SOURCE_POSITION("String.java", 1389) + if (_r12.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("String.java", 1390) + _r7.o = __NEW_java_lang_NullPointerException(); + // "target should not be null" + _r8.o = xmlvm_create_java_string_from_pool(176); + XMLVM_CHECK_NPE(7) + java_lang_NullPointerException___INIT____java_lang_String(_r7.o, _r8.o); + XMLVM_THROW_CUSTOM(_r7.o) + label11:; + XMLVM_SOURCE_POSITION("String.java", 1392) + if (_r13.o != JAVA_NULL) goto label21; + XMLVM_SOURCE_POSITION("String.java", 1393) + _r7.o = __NEW_java_lang_NullPointerException(); + // "replacement should not be null" + _r8.o = xmlvm_create_java_string_from_pool(177); + XMLVM_CHECK_NPE(7) + java_lang_NullPointerException___INIT____java_lang_String(_r7.o, _r8.o); + XMLVM_THROW_CUSTOM(_r7.o) + label21:; + XMLVM_SOURCE_POSITION("String.java", 1395) + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(12) + _r6.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r12.o)->tib->vtable[5])(_r12.o); + _r7.i = 0; + XMLVM_SOURCE_POSITION("String.java", 1396) + XMLVM_CHECK_NPE(11) + _r2.i = java_lang_String_indexOf___java_lang_String_int(_r11.o, _r6.o, _r7.i); + if (_r2.i != _r10.i) goto label34; + XMLVM_SOURCE_POSITION("String.java", 1398) + _r7 = _r11; + label33:; + XMLVM_SOURCE_POSITION("String.java", 1399) + XMLVM_SOURCE_POSITION("String.java", 1426) + XMLVM_EXIT_METHOD() + return _r7.o; + label34:; + XMLVM_SOURCE_POSITION("String.java", 1401) + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(13) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r13.o)->tib->vtable[5])(_r13.o); + XMLVM_SOURCE_POSITION("String.java", 1405) + // "" + _r7.o = xmlvm_create_java_string_from_pool(21); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r7.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r6.o); + if (_r7.i == 0) goto label92; + XMLVM_SOURCE_POSITION("String.java", 1406) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(11) + _r7.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r8.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + XMLVM_CHECK_NPE(11) + _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + _r9.i = _r9.i + 1; + _r8.i = _r8.i * _r9.i; + _r7.i = _r7.i + _r8.i; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r7.i); + XMLVM_SOURCE_POSITION("String.java", 1407) + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o); + XMLVM_SOURCE_POSITION("String.java", 1408) + _r1.i = 0; + label67:; + XMLVM_CHECK_NPE(11) + _r7.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + if (_r1.i >= _r7.i) goto label87; + XMLVM_SOURCE_POSITION("String.java", 1409) + XMLVM_CHECK_NPE(11) + _r7.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_; + _r8.i = _r8.i + _r1.i; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r8.i); + _r7.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r7.i); + XMLVM_SOURCE_POSITION("String.java", 1410) + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o); + _r1.i = _r1.i + 1; + goto label67; + label87:; + XMLVM_SOURCE_POSITION("String.java", 1412) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r7.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label33; + label92:; + XMLVM_SOURCE_POSITION("String.java", 1415) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(11) + _r7.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r8.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + _r7.i = _r7.i + _r8.i; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r7.i); + XMLVM_SOURCE_POSITION("String.java", 1416) + XMLVM_CHECK_NPE(12) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r12.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r12.o); + _r4.i = 0; + label109:; + XMLVM_SOURCE_POSITION("String.java", 1417) + XMLVM_SOURCE_POSITION("String.java", 1419) + XMLVM_CHECK_NPE(11) + _r7.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_; + _r8.i = _r8.i + _r4.i; + _r9.i = _r2.i - _r4.i; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___char_1ARRAY_int_int(_r0.o, _r7.o, _r8.i, _r9.i); + XMLVM_SOURCE_POSITION("String.java", 1420) + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o); + XMLVM_SOURCE_POSITION("String.java", 1421) + _r4.i = _r2.i + _r5.i; + XMLVM_SOURCE_POSITION("String.java", 1422) + XMLVM_CHECK_NPE(11) + _r2.i = java_lang_String_indexOf___java_lang_String_int(_r11.o, _r6.o, _r4.i); + if (_r2.i != _r10.i) goto label109; + XMLVM_SOURCE_POSITION("String.java", 1424) + XMLVM_CHECK_NPE(11) + _r7.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(11) + _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_; + _r8.i = _r8.i + _r4.i; + XMLVM_CHECK_NPE(11) + _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_; + _r9.i = _r9.i - _r4.i; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___char_1ARRAY_int_int(_r0.o, _r7.o, _r8.i, _r9.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r7.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_startsWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_startsWith___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "startsWith", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1441) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_startsWith___java_lang_String_int(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_startsWith___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_startsWith___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.String", "startsWith", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("String.java", 1458) + _r0.i = 0; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + XMLVM_CHECK_NPE(2) + _r0.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r2.o, _r4.i, _r3.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_substring___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_substring___int] + XMLVM_ENTER_METHOD("java.lang.String", "substring", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("String.java", 1472) + if (_r5.i != 0) goto label4; + _r0 = _r4; + label3:; + XMLVM_SOURCE_POSITION("String.java", 1473) + XMLVM_SOURCE_POSITION("String.java", 1476) + XMLVM_EXIT_METHOD() + return _r0.o; + label4:; + XMLVM_SOURCE_POSITION("String.java", 1475) + if (_r5.i < 0) goto label24; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r5.i > _r0.i) goto label24; + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r1.i = _r1.i + _r5.i; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + _r2.i = _r2.i - _r5.i; + XMLVM_CHECK_NPE(4) + _r3.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r1.i, _r2.i, _r3.o); + goto label3; + label24:; + XMLVM_SOURCE_POSITION("String.java", 1478) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_substring___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_substring___int_int] + XMLVM_ENTER_METHOD("java.lang.String", "substring", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("String.java", 1494) + if (_r5.i != 0) goto label8; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r6.i != _r0.i) goto label8; + _r0 = _r4; + label7:; + XMLVM_SOURCE_POSITION("String.java", 1495) + XMLVM_SOURCE_POSITION("String.java", 1505) + XMLVM_EXIT_METHOD() + return _r0.o; + label8:; + XMLVM_SOURCE_POSITION("String.java", 1497) + if (_r5.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("String.java", 1498) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("String.java", 1499) + if (_r5.i <= _r6.i) goto label26; + XMLVM_SOURCE_POSITION("String.java", 1500) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.i = _r6.i - _r5.i; + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label26:; + XMLVM_SOURCE_POSITION("String.java", 1501) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r6.i <= _r0.i) goto label36; + XMLVM_SOURCE_POSITION("String.java", 1502) + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.StringIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label36:; + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r1.i = _r1.i + _r5.i; + _r2.i = _r6.i - _r5.i; + XMLVM_CHECK_NPE(4) + _r3.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r1.i, _r2.i, _r3.o); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_toCharArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toCharArray__] + XMLVM_ENTER_METHOD("java.lang.String", "toCharArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("String.java", 1514) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i); + XMLVM_SOURCE_POSITION("String.java", 1515) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + _r3.i = 0; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("String.java", 1516) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_toLowerCase__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toLowerCase__] + XMLVM_ENTER_METHOD("java.lang.String", "toLowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("String.java", 1527) + _r0.o = java_util_Locale_getDefault__(); + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_toLowerCase___java_util_Locale(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_toLowerCase___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toLowerCase___java_util_Locale] + XMLVM_ENTER_METHOD("java.lang.String", "toLowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1541) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("String.java", 1542) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + label7:; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + _r3.i = _r3.i + _r4.i; + if (_r1.i >= _r3.i) goto label29; + XMLVM_SOURCE_POSITION("String.java", 1543) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(5) + _r3.i = java_lang_String_toLowerCaseImpl___int(_r5.o, _r3.i); + _r3.i = _r3.i & 0xffff; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + _r1.i = _r1.i + 1; + goto label7; + label29:; + XMLVM_SOURCE_POSITION("String.java", 1546) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_SOURCE_POSITION("String.java", 1547) + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o); + if (_r3.i == 0) goto label41; + _r3 = _r5; + label40:; + XMLVM_SOURCE_POSITION("String.java", 1548) + XMLVM_SOURCE_POSITION("String.java", 1550) + XMLVM_EXIT_METHOD() + return _r3.o; + label41:; + _r3 = _r2; + goto label40; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_lang_String_toLowerCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1)] + +JAVA_OBJECT java_lang_String_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toString__] + XMLVM_ENTER_METHOD("java.lang.String", "toString", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("String.java", 1563) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_toUpperCase__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toUpperCase__] + XMLVM_ENTER_METHOD("java.lang.String", "toUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("String.java", 1574) + _r0.o = java_util_Locale_getDefault__(); + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_toUpperCase___java_util_Locale(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_toUpperCase___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_toUpperCase___java_util_Locale] + XMLVM_ENTER_METHOD("java.lang.String", "toUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1588) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("String.java", 1589) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + label7:; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + _r3.i = _r3.i + _r4.i; + if (_r1.i >= _r3.i) goto label29; + XMLVM_SOURCE_POSITION("String.java", 1590) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(5) + _r3.i = java_lang_String_toUpperCaseImpl___int(_r5.o, _r3.i); + _r3.i = _r3.i & 0xffff; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + _r1.i = _r1.i + 1; + goto label7; + label29:; + XMLVM_SOURCE_POSITION("String.java", 1593) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_SOURCE_POSITION("String.java", 1594) + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o); + if (_r3.i == 0) goto label41; + _r3 = _r5; + label40:; + XMLVM_SOURCE_POSITION("String.java", 1595) + XMLVM_SOURCE_POSITION("String.java", 1597) + XMLVM_EXIT_METHOD() + return _r3.o; + label41:; + _r3 = _r2; + goto label40; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_lang_String_toUpperCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1)] + +JAVA_OBJECT java_lang_String_trim__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_trim__] + XMLVM_ENTER_METHOD("java.lang.String", "trim", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + _r5.i = 32; + XMLVM_SOURCE_POSITION("String.java", 1611) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_; + _r3.i = _r3.i + _r4.i; + _r4.i = 1; + _r1.i = _r3.i - _r4.i; + _r0 = _r1; + label13:; + XMLVM_SOURCE_POSITION("String.java", 1612) + XMLVM_SOURCE_POSITION("String.java", 1613) + if (_r2.i > _r0.i) goto label24; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + if (_r3.i > _r5.i) goto label24; + XMLVM_SOURCE_POSITION("String.java", 1614) + _r2.i = _r2.i + 1; + goto label13; + label24:; + XMLVM_SOURCE_POSITION("String.java", 1616) + if (_r0.i < _r2.i) goto label35; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r3.i > _r5.i) goto label35; + XMLVM_SOURCE_POSITION("String.java", 1617) + _r0.i = _r0.i + -1; + goto label24; + label35:; + XMLVM_SOURCE_POSITION("String.java", 1619) + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_; + if (_r2.i != _r3.i) goto label43; + if (_r0.i != _r1.i) goto label43; + _r3 = _r6; + label42:; + XMLVM_SOURCE_POSITION("String.java", 1620) + XMLVM_SOURCE_POSITION("String.java", 1622) + XMLVM_EXIT_METHOD() + return _r3.o; + label43:; + _r3.o = __NEW_java_lang_String(); + _r4.i = _r0.i - _r2.i; + _r4.i = _r4.i + 1; + XMLVM_CHECK_NPE(6) + _r5.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(3) + java_lang_String___INIT____int_int_char_1ARRAY(_r3.o, _r2.i, _r4.i, _r5.o); + goto label42; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___char_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1637) + _r0.o = __NEW_java_lang_String(); + _r1.i = 0; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r3.o, _r1.i, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("String.java", 1659) + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___char] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.i = n1; + _r3.i = 0; + _r2.i = 1; + XMLVM_SOURCE_POSITION("String.java", 1671) + _r1.i = 128; + if (_r4.i >= _r1.i) goto label16; + XMLVM_SOURCE_POSITION("String.java", 1672) + _r0.o = __NEW_java_lang_String(); + _r1.o = java_lang_String_GET_ascii(); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r4.i, _r2.i, _r1.o); + label13:; + XMLVM_SOURCE_POSITION("String.java", 1676) + XMLVM_CHECK_NPE(0) + ((java_lang_String*) _r0.o)->fields.java_lang_String.hashCode_ = _r4.i; + XMLVM_SOURCE_POSITION("String.java", 1677) + XMLVM_EXIT_METHOD() + return _r0.o; + label16:; + XMLVM_SOURCE_POSITION("String.java", 1674) + _r0.o = __NEW_java_lang_String(); + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r2.i); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.i; + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r3.i, _r2.i, _r1.o); + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___double] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.d = n1; + XMLVM_SOURCE_POSITION("String.java", 1688) + _r0.o = java_lang_Double_toString___double(_r1.d); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___float] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.f = n1; + XMLVM_SOURCE_POSITION("String.java", 1699) + _r0.o = java_lang_Float_toString___float(_r1.f); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___int] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("String.java", 1710) + _r0.o = java_lang_Integer_toString___int(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___long] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.l = n1; + XMLVM_SOURCE_POSITION("String.java", 1721) + _r0.o = java_lang_Long_toString___long(_r1.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___java_lang_Object(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1734) + if (_r1.o == JAVA_NULL) goto label7; + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[5])(_r1.o); + label6:; + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_valueOf___boolean(JAVA_BOOLEAN n1) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___boolean] + XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("String.java", 1747) + if (_r1.i == 0) goto label5; + // "true" + _r0.o = xmlvm_create_java_string_from_pool(4); + label4:; + XMLVM_EXIT_METHOD() + return _r0.o; + label5:; + // "false" + _r0.o = xmlvm_create_java_string_from_pool(178); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_contentEquals___java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_contentEquals___java_lang_StringBuffer] + XMLVM_ENTER_METHOD("java.lang.String", "contentEquals", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("String.java", 1764) + java_lang_Object_acquireLockRecursive__(_r6.o); + XMLVM_TRY_BEGIN(w3113aaac87b1b6) + // Begin try + XMLVM_SOURCE_POSITION("String.java", 1765) + + + // Red class access removed: java.lang.StringBuffer::length + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("String.java", 1766) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + if (_r1.i == _r0.i) { XMLVM_MEMCPY(curThread_w3113aaac87b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac87b1b6, sizeof(XMLVM_JMP_BUF)); goto label13; }; + XMLVM_SOURCE_POSITION("String.java", 1767) + java_lang_Object_releaseLockRecursive__(_r6.o); + _r1 = _r2; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac87b1b6) + XMLVM_CATCH_SPECIFIC(w3113aaac87b1b6,java_lang_Object,31) + XMLVM_CATCH_END(w3113aaac87b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1b6) + label12:; + XMLVM_TRY_BEGIN(w3113aaac87b1b8) + // Begin try + XMLVM_SOURCE_POSITION("String.java", 1769) + XMLVM_MEMCPY(curThread_w3113aaac87b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac87b1b8, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac87b1b8) + XMLVM_CATCH_SPECIFIC(w3113aaac87b1b8,java_lang_Object,31) + XMLVM_CATCH_END(w3113aaac87b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1b8) + label13:; + XMLVM_TRY_BEGIN(w3113aaac87b1c10) + // Begin try + _r1.i = 0; + _r2.o = __NEW_java_lang_String(); + _r3.i = 0; + + + // Red class access removed: java.lang.StringBuffer::getValue + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____int_int_char_1ARRAY(_r2.o, _r3.i, _r0.i, _r4.o); + _r3.i = 0; + XMLVM_CHECK_NPE(5) + _r1.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r5.o, _r1.i, _r2.o, _r3.i, _r0.i); + java_lang_Object_releaseLockRecursive__(_r6.o); + { XMLVM_MEMCPY(curThread_w3113aaac87b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac87b1c10, sizeof(XMLVM_JMP_BUF)); goto label12; }; + XMLVM_SOURCE_POSITION("String.java", 1771) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac87b1c10) + XMLVM_CATCH_SPECIFIC(w3113aaac87b1c10,java_lang_Object,31) + XMLVM_CATCH_END(w3113aaac87b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1c10) + label31:; + XMLVM_TRY_BEGIN(w3113aaac87b1c12) + // Begin try + java_lang_Thread* curThread_w3113aaac87b1c12aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w3113aaac87b1c12aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3113aaac87b1c12) + XMLVM_CATCH_SPECIFIC(w3113aaac87b1c12,java_lang_Object,31) + XMLVM_CATCH_END(w3113aaac87b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1c12) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_contentEquals___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_contentEquals___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.lang.String", "contentEquals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("String.java", 1784) + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r4.o); + XMLVM_SOURCE_POSITION("String.java", 1786) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + if (_r0.i == _r1.i) goto label11; + _r1 = _r2; + label10:; + XMLVM_SOURCE_POSITION("String.java", 1787) + XMLVM_SOURCE_POSITION("String.java", 1794) + XMLVM_EXIT_METHOD() + return _r1.i; + label11:; + XMLVM_SOURCE_POSITION("String.java", 1790) + if (_r0.i != 0) goto label19; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + if (_r1.i != 0) goto label19; + XMLVM_SOURCE_POSITION("String.java", 1791) + _r1.i = 1; + goto label10; + label19:; + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[5])(_r4.o); + XMLVM_CHECK_NPE(3) + _r1.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r3.o, _r2.i, _r1.o, _r2.i, _r0.i); + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_matches___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_matches___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "matches", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1811) + + + // Red class access removed: java.util.regex.Pattern::matches + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_replaceAll___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_replaceAll___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "replaceAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("String.java", 1830) + + + // Red class access removed: java.util.regex.Pattern::compile + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.regex.Pattern::matcher + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.regex.Matcher::replaceAll + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_replaceFirst___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_replaceFirst___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "replaceFirst", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("String.java", 1851) + + + // Red class access removed: java.util.regex.Pattern::compile + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.regex.Pattern::matcher + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.regex.Matcher::replaceFirst + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_split___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_split___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String", "split", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1870) + + + // Red class access removed: java.util.regex.Pattern::compile + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.regex.Pattern::split + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_split___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_split___java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.String", "split", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("String.java", 1893) + + + // Red class access removed: java.util.regex.Pattern::compile + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.regex.Pattern::split + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_subSequence___int_int] + XMLVM_ENTER_METHOD("java.lang.String", "subSequence", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("String.java", 1912) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_substring___int_int(_r1.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_codePointAt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_codePointAt___int] + XMLVM_ENTER_METHOD("java.lang.String", "codePointAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("String.java", 1929) + if (_r5.i < 0) goto label6; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + if (_r5.i < _r1.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("String.java", 1930) + _r1.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(1) + java_lang_IndexOutOfBoundsException___INIT___(_r1.o); + XMLVM_THROW_CUSTOM(_r1.o) + label12:; + XMLVM_SOURCE_POSITION("String.java", 1932) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + _r0.i = _r5.i + _r1.i; + XMLVM_SOURCE_POSITION("String.java", 1933) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_; + _r2.i = _r2.i + _r3.i; + _r1.i = java_lang_Character_codePointAt___char_1ARRAY_int_int(_r1.o, _r0.i, _r2.i); + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_codePointBefore___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_codePointBefore___int] + XMLVM_ENTER_METHOD("java.lang.String", "codePointBefore", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("String.java", 1950) + _r1.i = 1; + if (_r3.i < _r1.i) goto label7; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_; + if (_r3.i <= _r1.i) goto label13; + label7:; + XMLVM_SOURCE_POSITION("String.java", 1951) + _r1.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(1) + java_lang_IndexOutOfBoundsException___INIT___(_r1.o); + XMLVM_THROW_CUSTOM(_r1.o) + label13:; + XMLVM_SOURCE_POSITION("String.java", 1953) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_; + _r0.i = _r3.i + _r1.i; + XMLVM_SOURCE_POSITION("String.java", 1954) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_String*) _r2.o)->fields.java_lang_String.value_; + _r1.i = java_lang_Character_codePointBefore___char_1ARRAY_int(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_codePointCount___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_codePointCount___int_int] + XMLVM_ENTER_METHOD("java.lang.String", "codePointCount", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.i = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("String.java", 1974) + if (_r4.i < 0) goto label8; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_; + if (_r5.i > _r1.i) goto label8; + if (_r4.i <= _r5.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("String.java", 1975) + _r1.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(1) + java_lang_IndexOutOfBoundsException___INIT___(_r1.o); + XMLVM_THROW_CUSTOM(_r1.o) + label14:; + XMLVM_SOURCE_POSITION("String.java", 1977) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_; + _r0.i = _r4.i + _r1.i; + XMLVM_SOURCE_POSITION("String.java", 1978) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_; + _r2.i = _r5.i - _r4.i; + _r1.i = java_lang_Character_codePointCount___char_1ARRAY_int_int(_r1.o, _r0.i, _r2.i); + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_contains___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_contains___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.lang.String", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("String.java", 1992) + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_indexOf___java_lang_String(_r1.o, _r0.o); + if (_r0.i < 0) goto label12; + _r0.i = 1; + label11:; + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + _r0.i = 0; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_offsetByCodePoints___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_offsetByCodePoints___int_int] + XMLVM_ENTER_METHOD("java.lang.String", "offsetByCodePoints", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = me; + _r6.i = n1; + _r7.i = n2; + XMLVM_SOURCE_POSITION("String.java", 2011) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + _r1.i = _r6.i + _r2.i; + XMLVM_SOURCE_POSITION("String.java", 2012) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_; + _r0.i = java_lang_Character_offsetByCodePoints___char_1ARRAY_int_int_int_int(_r2.o, _r3.i, _r4.i, _r1.i, _r7.i); + XMLVM_SOURCE_POSITION("String.java", 2014) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_; + _r2.i = _r0.i - _r2.i; + XMLVM_EXIT_METHOD() + return _r2.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_format___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_format___java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.String", "format", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("String.java", 2034) + _r0.o = java_util_Locale_getDefault__(); + _r0.o = java_lang_String_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(_r0.o, _r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +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) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.String", "format", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = n1; + _r5.o = n2; + _r6.o = n3; + XMLVM_SOURCE_POSITION("String.java", 2063) + if (_r5.o != JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("String.java", 2064) + _r2.o = __NEW_java_lang_NullPointerException(); + // "null format argument" + _r3.o = xmlvm_create_java_string_from_pool(179); + XMLVM_CHECK_NPE(2) + java_lang_NullPointerException___INIT____java_lang_String(_r2.o, _r3.o); + XMLVM_THROW_CUSTOM(_r2.o) + label10:; + XMLVM_SOURCE_POSITION("String.java", 2066) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + if (_r6.o != JAVA_NULL) goto label38; + _r3.i = 0; + label17:; + _r0.i = _r2.i + _r3.i; + XMLVM_SOURCE_POSITION("String.java", 2068) + + + // Red class access removed: java.util.Formatter::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r2.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT____int(_r2.o, _r0.i); + + + // Red class access removed: java.util.Formatter:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("String.java", 2069) + + + // Red class access removed: java.util.Formatter::format + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Formatter::toString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r2.o; + label38:; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r3.i = _r3.i * 10; + goto label17; + //XMLVM_END_WRAPPER +} + +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) +{ + XMLVM_CLASS_INIT(java_lang_String) + //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___java_lang_String_java_lang_String_int_int_char] + XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r9.o = n1; + _r10.o = n2; + _r11.i = n3; + _r12.i = n4; + _r13.i = n5; + XMLVM_SOURCE_POSITION("String.java", 2084) + XMLVM_CHECK_NPE(9) + _r0.o = ((java_lang_String*) _r9.o)->fields.java_lang_String.value_; + XMLVM_SOURCE_POSITION("String.java", 2085) + XMLVM_CHECK_NPE(9) + _r1.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.offset_; + XMLVM_SOURCE_POSITION("String.java", 2086) + XMLVM_CHECK_NPE(9) + _r9.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.count_; + XMLVM_SOURCE_POSITION("String.java", 2087) + XMLVM_CHECK_NPE(10) + _r3.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_; + XMLVM_SOURCE_POSITION("String.java", 2088) + XMLVM_CHECK_NPE(10) + _r5.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_; + XMLVM_SOURCE_POSITION("String.java", 2089) + XMLVM_CHECK_NPE(10) + _r10.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_; + _r2.i = 1; + _r4.i = _r10.i - _r2.i; + _r9.i = _r9.i + _r1.i; + _r10.i = _r1.i + _r4.i; + label18:; + XMLVM_SOURCE_POSITION("String.java", 2092) + if (_r10.i >= _r9.i) goto label71; + XMLVM_SOURCE_POSITION("String.java", 2093) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r10.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i]; + if (_r13.i != _r2.i) goto label60; + XMLVM_SOURCE_POSITION("String.java", 2094) + _r2.i = 0; + label25:; + if (_r2.i >= _r4.i) goto label56; + XMLVM_SOURCE_POSITION("String.java", 2095) + _r6.i = _r2.i + _r5.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r7.i = _r10.i + _r2.i; + _r7.i = _r7.i - _r4.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i); + _r7.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + if (_r6.i == _r7.i) goto label53; + XMLVM_SOURCE_POSITION("String.java", 2097) + _r6.i = 1; + _r7.i = 1; + XMLVM_SOURCE_POSITION("String.java", 2098) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r10.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i]; + _r7.i = _r7.i << _r8.i; + _r7.i = _r7.i & _r11.i; + if (_r7.i != 0) goto label73; + XMLVM_SOURCE_POSITION("String.java", 2099) + _r2.i = _r2.i + _r6.i; + label47:; + XMLVM_SOURCE_POSITION("String.java", 2101) + _r2.i = java_lang_Math_max___int_int(_r12.i, _r2.i); + _r10.i = _r10.i + _r2.i; + XMLVM_SOURCE_POSITION("String.java", 2102) + goto label18; + label53:; + _r2.i = _r2.i + 1; + goto label25; + label56:; + XMLVM_SOURCE_POSITION("String.java", 2105) + _r9.i = _r10.i - _r4.i; + _r9.i = _r9.i - _r1.i; + label59:; + XMLVM_SOURCE_POSITION("String.java", 2113) + XMLVM_EXIT_METHOD() + return _r9.i; + label60:; + XMLVM_SOURCE_POSITION("String.java", 2108) + _r2.i = 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r10.i); + _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i]; + _r2.i = _r2.i << _r6.i; + _r2.i = _r2.i & _r11.i; + if (_r2.i != 0) goto label68; + XMLVM_SOURCE_POSITION("String.java", 2109) + _r10.i = _r10.i + _r4.i; + label68:; + XMLVM_SOURCE_POSITION("String.java", 2111) + _r10.i = _r10.i + 1; + goto label18; + label71:; + _r9.i = -1; + goto label59; + label73:; + _r2 = _r6; + goto label47; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_String_getValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_getValue__] + XMLVM_ENTER_METHOD("java.lang.String", "getValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("String.java", 2120) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_String*) _r1.o)->fields.java_lang_String.value_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_String_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_isEmpty__] + XMLVM_ENTER_METHOD("java.lang.String", "isEmpty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("String.java", 2124) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r0.i != 0) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.String", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("String.java", 53) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_compareTo___java_lang_String(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_String___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.String", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("String.java", 140) + _r1.o = __NEW_java_lang_String_CaseInsensitiveComparator(); + _r2.o = JAVA_NULL; + XMLVM_CHECK_NPE(1) + java_lang_String_CaseInsensitiveComparator___INIT____java_lang_String_1(_r1.o, _r2.o); + java_lang_String_PUT_CASE_INSENSITIVE_ORDER( _r1.o); + XMLVM_SOURCE_POSITION("String.java", 157) + _r1.i = 128; + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i); + java_lang_String_PUT_ascii( _r1.o); + XMLVM_SOURCE_POSITION("String.java", 158) + _r0.i = 0; + label15:; + _r1.o = java_lang_String_GET_ascii(); + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i >= _r1.i) goto label28; + XMLVM_SOURCE_POSITION("String.java", 159) + _r1.o = java_lang_String_GET_ascii(); + _r2.i = _r0.i & 0xffff; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.i; + _r0.i = _r0.i + 1; + goto label15; + label28:; + XMLVM_SOURCE_POSITION("String.java", 161) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_String.h b/tests/nbody-java/java_lang_String.h new file mode 100644 index 0000000000000..7bdebaf5af35b --- /dev/null +++ b/tests/nbody-java/java_lang_String.h @@ -0,0 +1,268 @@ +#ifndef __JAVA_LANG_STRING__ +#define __JAVA_LANG_STRING__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_String 8 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_CharSequence.h" +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Exception +#define XMLVM_FORWARD_DECL_java_lang_Exception +XMLVM_FORWARD_DECL(java_lang_Exception) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Math +#define XMLVM_FORWARD_DECL_java_lang_Math +XMLVM_FORWARD_DECL(java_lang_Math) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String_CaseInsensitiveComparator +#define XMLVM_FORWARD_DECL_java_lang_String_CaseInsensitiveComparator +XMLVM_FORWARD_DECL(java_lang_String_CaseInsensitiveComparator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Comparator +#define XMLVM_FORWARD_DECL_java_util_Comparator +XMLVM_FORWARD_DECL(java_util_Comparator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Locale +#define XMLVM_FORWARD_DECL_java_util_Locale +XMLVM_FORWARD_DECL(java_util_Locale) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_PriviAction) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_charset_UTF_8) +#endif +// Class declarations for java.lang.String +XMLVM_DEFINE_CLASS(java_lang_String, 10, XMLVM_ITABLE_SIZE_java_lang_String) + +extern JAVA_OBJECT __CLASS_java_lang_String; +extern JAVA_OBJECT __CLASS_java_lang_String_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_String_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_String_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_String +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_String \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT charset_; \ + JAVA_OBJECT charset2_; \ + JAVA_OBJECT charset3_; \ + JAVA_OBJECT value_; \ + JAVA_INT offset_; \ + JAVA_INT count_; \ + JAVA_INT hashCode_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_String \ + } java_lang_String + +struct java_lang_String { + __TIB_DEFINITION_java_lang_String* tib; + struct { + __INSTANCE_FIELDS_java_lang_String; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +typedef struct java_lang_String java_lang_String; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_String 10 +#define XMLVM_VTABLE_IDX_java_lang_String_charAt___int 6 +#define XMLVM_VTABLE_IDX_java_lang_String_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_String_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_String_length__ 8 +#define XMLVM_VTABLE_IDX_java_lang_String_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_String_subSequence___int_int 9 +#define XMLVM_VTABLE_IDX_java_lang_String_compareTo___java_lang_Object 7 + +void __INIT_java_lang_String(); +void __INIT_IMPL_java_lang_String(); +void __DELETE_java_lang_String(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_String(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_String(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_String(); +void xmlvm_init_native_java_lang_String(); +JAVA_LONG java_lang_String_GET_serialVersionUID(); +void java_lang_String_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_lang_String_GET_CASE_INSENSITIVE_ORDER(); +void java_lang_String_PUT_CASE_INSENSITIVE_ORDER(JAVA_OBJECT v); +JAVA_OBJECT java_lang_String_GET_ascii(); +void java_lang_String_PUT_ascii(JAVA_OBJECT v); +JAVA_OBJECT java_lang_String_GET_DefaultCharset(); +void java_lang_String_PUT_DefaultCharset(JAVA_OBJECT v); +JAVA_OBJECT java_lang_String_GET_lastCharset(); +void java_lang_String_PUT_lastCharset(JAVA_OBJECT v); +void java_lang_String___INIT___(JAVA_OBJECT me); +void java_lang_String___INIT____java_lang_String_char(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_CHAR n2); +void java_lang_String___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_String___INIT____byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_String___INIT____byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +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); +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); +void java_lang_String___INIT____byte_1ARRAY_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_String___INIT____char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_String___INIT____char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +void java_lang_String___INIT____int_int_char_1ARRAY(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3); +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); +void java_lang_String___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_String___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +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); +void java_lang_String___INIT____java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_String___INIT____int_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +void java_lang_String___INIT____java_lang_StringBuilder(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_String___INIT____java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 6 +JAVA_CHAR java_lang_String_charAt___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_CHAR java_lang_String_compareValue___char(JAVA_OBJECT me, JAVA_CHAR n1); +JAVA_CHAR java_lang_String_toLowerCase___char(JAVA_OBJECT me, JAVA_CHAR n1); +JAVA_CHAR java_lang_String_toUpperCase___char(JAVA_OBJECT me, JAVA_CHAR n1); +JAVA_INT java_lang_String_compareTo___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_String_compareToIgnoreCase___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_concat___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_copyValueOf___char_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_copyValueOf___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_lang_String_defaultCharset__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_String_endsWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_String_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_String_equalsIgnoreCase___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_getBytes__(JAVA_OBJECT me); +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); +JAVA_OBJECT java_lang_String_getBytes___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_getBytes___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_getCharset___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +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); +// Vtable index: 4 +JAVA_INT java_lang_String_hashCode__(JAVA_OBJECT me); +JAVA_INT java_lang_String_indexOf___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_lang_String_indexOf___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_String_indexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_String_indexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_String_intern__(JAVA_OBJECT me); +JAVA_INT java_lang_String_lastIndexOf___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_lang_String_lastIndexOf___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_String_lastIndexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_String_lastIndexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 8 +JAVA_INT java_lang_String_length__(JAVA_OBJECT me); +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); +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); +JAVA_OBJECT java_lang_String_replace___char_char(JAVA_OBJECT me, JAVA_CHAR n1, JAVA_CHAR n2); +JAVA_OBJECT java_lang_String_replace___java_lang_CharSequence_java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_lang_String_startsWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_String_startsWith___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_String_substring___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_String_substring___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_String_toCharArray__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_String_toLowerCase__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_String_toLowerCase___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_String_toLowerCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 5 +JAVA_OBJECT java_lang_String_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_String_toUpperCase__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_String_toUpperCase___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_String_toUpperCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_String_trim__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_String_valueOf___char_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_valueOf___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_lang_String_valueOf___char(JAVA_CHAR n1); +JAVA_OBJECT java_lang_String_valueOf___double(JAVA_DOUBLE n1); +JAVA_OBJECT java_lang_String_valueOf___float(JAVA_FLOAT n1); +JAVA_OBJECT java_lang_String_valueOf___int(JAVA_INT n1); +JAVA_OBJECT java_lang_String_valueOf___long(JAVA_LONG n1); +JAVA_OBJECT java_lang_String_valueOf___java_lang_Object(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_valueOf___boolean(JAVA_BOOLEAN n1); +JAVA_BOOLEAN java_lang_String_contentEquals___java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_String_contentEquals___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_String_matches___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_replaceAll___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_String_replaceFirst___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_String_split___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_String_split___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 9 +JAVA_OBJECT java_lang_String_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_INT java_lang_String_codePointAt___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_lang_String_codePointBefore___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_lang_String_codePointCount___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_BOOLEAN java_lang_String_contains___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_String_offsetByCodePoints___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_String_format___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +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); +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); +JAVA_OBJECT java_lang_String_getValue__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_String_isEmpty__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_INT java_lang_String_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_String___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_StringBuilder.c b/tests/nbody-java/java_lang_StringBuilder.c new file mode 100644 index 0000000000000..605524d1545bc --- /dev/null +++ b/tests/nbody-java/java_lang_StringBuilder.c @@ -0,0 +1,999 @@ +#include "xmlvm.h" +#include "java_lang_Character.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "java_lang_Integer.h" +#include "java_lang_Long.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" + +#include "java_lang_StringBuilder.h" + +#define XMLVM_CURRENT_CLASS_NAME StringBuilder +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_StringBuilder + +__TIB_DEFINITION_java_lang_StringBuilder __TIB_java_lang_StringBuilder = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_StringBuilder, // classInitializer + "java.lang.StringBuilder", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_AbstractStringBuilder, // extends + sizeof(java_lang_StringBuilder), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_StringBuilder; +JAVA_OBJECT __CLASS_java_lang_StringBuilder_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_StringBuilder_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_StringBuilder_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_StringBuilder_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_StringBuilder() +{ + staticInitializerLock(&__TIB_java_lang_StringBuilder); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_StringBuilder.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_StringBuilder.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_StringBuilder); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_StringBuilder.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_StringBuilder.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_StringBuilder.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.StringBuilder") + __INIT_IMPL_java_lang_StringBuilder(); + } +} + +void __INIT_IMPL_java_lang_StringBuilder() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_AbstractStringBuilder) + __TIB_java_lang_StringBuilder.newInstanceFunc = __NEW_INSTANCE_java_lang_StringBuilder; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_StringBuilder.vtable, __TIB_java_lang_AbstractStringBuilder.vtable, sizeof(__TIB_java_lang_AbstractStringBuilder.vtable)); + // Initialize vtable for this class + __TIB_java_lang_StringBuilder.vtable[6] = (VTABLE_PTR) &java_lang_StringBuilder_append___char; + __TIB_java_lang_StringBuilder.vtable[7] = (VTABLE_PTR) &java_lang_StringBuilder_append___java_lang_CharSequence; + __TIB_java_lang_StringBuilder.vtable[8] = (VTABLE_PTR) &java_lang_StringBuilder_append___java_lang_CharSequence_int_int; + __TIB_java_lang_StringBuilder.vtable[5] = (VTABLE_PTR) &java_lang_StringBuilder_toString__; + // Initialize interface information + __TIB_java_lang_StringBuilder.numImplementedInterfaces = 3; + __TIB_java_lang_StringBuilder.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_StringBuilder.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Appendable) + + __TIB_java_lang_StringBuilder.implementedInterfaces[0][1] = &__TIB_java_lang_Appendable; + + XMLVM_CLASS_INIT(java_lang_CharSequence) + + __TIB_java_lang_StringBuilder.implementedInterfaces[0][2] = &__TIB_java_lang_CharSequence; + // Initialize itable for this class + __TIB_java_lang_StringBuilder.itableBegin = &__TIB_java_lang_StringBuilder.itable[0]; + __TIB_java_lang_StringBuilder.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___char] = __TIB_java_lang_StringBuilder.vtable[6]; + __TIB_java_lang_StringBuilder.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence] = __TIB_java_lang_StringBuilder.vtable[7]; + __TIB_java_lang_StringBuilder.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence_int_int] = __TIB_java_lang_StringBuilder.vtable[8]; + __TIB_java_lang_StringBuilder.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__] = __TIB_java_lang_StringBuilder.vtable[5]; + __TIB_java_lang_StringBuilder.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int] = (VTABLE_PTR) &java_lang_AbstractStringBuilder_charAt___int; + __TIB_java_lang_StringBuilder.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__] = (VTABLE_PTR) &java_lang_AbstractStringBuilder_length__; + __TIB_java_lang_StringBuilder.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int] = (VTABLE_PTR) &java_lang_AbstractStringBuilder_subSequence___int_int; + + _STATIC_java_lang_StringBuilder_serialVersionUID = 4383685877147921099; + + __TIB_java_lang_StringBuilder.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_StringBuilder.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_StringBuilder.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_StringBuilder.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_StringBuilder.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_StringBuilder.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_StringBuilder.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_StringBuilder.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_StringBuilder = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_StringBuilder); + __TIB_java_lang_StringBuilder.clazz = __CLASS_java_lang_StringBuilder; + __TIB_java_lang_StringBuilder.baseType = JAVA_NULL; + __CLASS_java_lang_StringBuilder_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_StringBuilder); + __CLASS_java_lang_StringBuilder_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_StringBuilder_1ARRAY); + __CLASS_java_lang_StringBuilder_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_StringBuilder_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_StringBuilder] + //XMLVM_END_WRAPPER + + __TIB_java_lang_StringBuilder.classInitialized = 1; +} + +void __DELETE_java_lang_StringBuilder(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_StringBuilder] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_StringBuilder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_AbstractStringBuilder(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_StringBuilder] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_StringBuilder() +{ XMLVM_CLASS_INIT(java_lang_StringBuilder) +java_lang_StringBuilder* me = (java_lang_StringBuilder*) XMLVM_MALLOC(sizeof(java_lang_StringBuilder)); + me->tib = &__TIB_java_lang_StringBuilder; + __INIT_INSTANCE_MEMBERS_java_lang_StringBuilder(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_StringBuilder] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_StringBuilder() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_StringBuilder(); + java_lang_StringBuilder___INIT___(me); + return me; +} + +JAVA_LONG java_lang_StringBuilder_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_StringBuilder) + return _STATIC_java_lang_StringBuilder_serialVersionUID; +} + +void java_lang_StringBuilder_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_StringBuilder) +_STATIC_java_lang_StringBuilder_serialVersionUID = v; +} + +void java_lang_StringBuilder___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder___INIT___] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("StringBuilder.java", 54) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 55) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_StringBuilder___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder___INIT____int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 67) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 68) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_StringBuilder___INIT____java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder___INIT____java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 81) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__])(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder___INIT____java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 82) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_StringBuilder___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 95) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 96) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___boolean] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 109) + if (_r2.i == 0) goto label8; + // "true" + _r0.o = xmlvm_create_java_string_from_pool(4); + label4:; + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 110) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + // "false" + _r0.o = xmlvm_create_java_string_from_pool(178); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___char] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 124) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_append0___char(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 125) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 139) + _r0.o = java_lang_Integer_toString___int(_r2.i); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 140) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___long] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.l = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 154) + _r0.o = java_lang_Long_toString___long(_r2.l); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 155) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___float(JAVA_OBJECT me, JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___float] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.f = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 169) + _r0.o = java_lang_Float_toString___float(_r2.f); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 170) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___double] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.d = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 184) + _r0.o = java_lang_Double_toString___double(_r2.d); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 185) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 199) + if (_r2.o != JAVA_NULL) goto label6; + XMLVM_SOURCE_POSITION("StringBuilder.java", 200) + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_appendNull__(_r1.o); + label5:; + XMLVM_SOURCE_POSITION("StringBuilder.java", 204) + XMLVM_EXIT_METHOD() + return _r1.o; + label6:; + XMLVM_SOURCE_POSITION("StringBuilder.java", 202) + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r1.o, _r0.o); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 216) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 217) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___java_lang_StringBuffer] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 230) + if (_r4.o != JAVA_NULL) goto label6; + XMLVM_SOURCE_POSITION("StringBuilder.java", 231) + XMLVM_CHECK_NPE(3) + java_lang_AbstractStringBuilder_appendNull__(_r3.o); + label5:; + XMLVM_SOURCE_POSITION("StringBuilder.java", 235) + XMLVM_EXIT_METHOD() + return _r3.o; + label6:; + XMLVM_SOURCE_POSITION("StringBuilder.java", 233) + + + // Red class access removed: java.lang.StringBuffer::getValue + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.i = 0; + + + // Red class access removed: java.lang.StringBuffer::length + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_lang_AbstractStringBuilder_append0___char_1ARRAY_int_int(_r3.o, _r0.o, _r1.i, _r2.i); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 249) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_append0___char_1ARRAY(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 250) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("StringBuilder.java", 271) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_append0___char_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 272) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 285) + if (_r2.o != JAVA_NULL) goto label6; + XMLVM_SOURCE_POSITION("StringBuilder.java", 286) + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_appendNull__(_r1.o); + label5:; + XMLVM_SOURCE_POSITION("StringBuilder.java", 290) + XMLVM_EXIT_METHOD() + return _r1.o; + label6:; + XMLVM_SOURCE_POSITION("StringBuilder.java", 288) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__])(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___java_lang_String(_r1.o, _r0.o); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_append___java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("StringBuilder.java", 311) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_append0___java_lang_CharSequence_int_int(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 312) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_appendCodePoint___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_appendCodePoint___int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "appendCodePoint", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 325) + _r0.o = java_lang_Character_toChars___int(_r2.i); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_append0___char_1ARRAY(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 326) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_delete___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_delete___int_int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "delete", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.i = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 343) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_delete0___int_int(_r0.o, _r1.i, _r2.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 344) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_deleteCharAt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_deleteCharAt___int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "deleteCharAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 359) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_deleteCharAt0___int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 360) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_boolean(JAVA_OBJECT me, JAVA_INT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_boolean] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 380) + if (_r3.i == 0) goto label8; + // "true" + _r0.o = xmlvm_create_java_string_from_pool(4); + label4:; + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 381) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + // "false" + _r0.o = xmlvm_create_java_string_from_pool(178); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_char] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.i = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 400) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_insert0___int_char(_r0.o, _r1.i, _r2.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 401) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 420) + _r0.o = java_lang_Integer_toString___int(_r3.i); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 421) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_long] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.i = n1; + _r3.l = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 440) + _r0.o = java_lang_Long_toString___long(_r3.l); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 441) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_float] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.f = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 460) + _r0.o = java_lang_Float_toString___float(_r3.f); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 461) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_double(JAVA_OBJECT me, JAVA_INT n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_double] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.i = n1; + _r3.d = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 481) + _r0.o = java_lang_Double_toString___double(_r3.d); + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 482) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 501) + if (_r3.o != JAVA_NULL) goto label8; + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + label4:; + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 502) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[5])(_r3.o); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.i = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 519) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r0.o, _r1.i, _r2.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 520) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_char_1ARRAY(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_char_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.i = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 539) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY(_r0.o, _r1.i, _r2.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 540) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r0.o = me; + _r1.i = n1; + _r2.o = n2; + _r3.i = n3; + _r4.i = n4; + XMLVM_SOURCE_POSITION("StringBuilder.java", 566) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_insert0___int_char_1ARRAY_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 567) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_CharSequence(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("StringBuilder.java", 587) + if (_r3.o != JAVA_NULL) goto label8; + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + label4:; + XMLVM_CHECK_NPE(1) + java_lang_AbstractStringBuilder_insert0___int_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 588) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__])(_r3.o); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_insert___int_java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "insert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r0.o = me; + _r1.i = n1; + _r2.o = n2; + _r3.i = n3; + _r4.i = n4; + XMLVM_SOURCE_POSITION("StringBuilder.java", 615) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_insert0___int_java_lang_CharSequence_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 616) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_replace___int_int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_replace___int_int_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "replace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.i = n1; + _r2.i = n2; + _r3.o = n3; + XMLVM_SOURCE_POSITION("StringBuilder.java", 637) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_replace0___int_int_java_lang_String(_r0.o, _r1.i, _r2.i, _r3.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 638) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_reverse__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_reverse__] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "reverse", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("StringBuilder.java", 647) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_reverse0__(_r0.o); + XMLVM_SOURCE_POSITION("StringBuilder.java", 648) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_StringBuilder_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_toString__] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("StringBuilder.java", 663) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_AbstractStringBuilder_toString__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_StringBuilder_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 679) + + + // Red class access removed: java.io.ObjectInputStream::defaultReadObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("StringBuilder.java", 680) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("StringBuilder.java", 681) + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("StringBuilder.java", 682) + XMLVM_CHECK_NPE(2) + java_lang_AbstractStringBuilder_set___char_1ARRAY_int(_r2.o, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StringBuilder.java", 683) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_StringBuilder_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_StringBuilder_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.lang.StringBuilder", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("StringBuilder.java", 697) + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("StringBuilder.java", 698) + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_AbstractStringBuilder_length__(_r1.o); + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("StringBuilder.java", 699) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_AbstractStringBuilder_getValue__(_r1.o); + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("StringBuilder.java", 700) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_StringBuilder.h b/tests/nbody-java/java_lang_StringBuilder.h new file mode 100644 index 0000000000000..4a92b845590fe --- /dev/null +++ b/tests/nbody-java/java_lang_StringBuilder.h @@ -0,0 +1,128 @@ +#ifndef __JAVA_LANG_STRINGBUILDER__ +#define __JAVA_LANG_STRINGBUILDER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_StringBuilder 7 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Appendable.h" +#include "java_lang_CharSequence.h" +// Super Class: +#include "java_lang_AbstractStringBuilder.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.StringBuilder +XMLVM_DEFINE_CLASS(java_lang_StringBuilder, 9, XMLVM_ITABLE_SIZE_java_lang_StringBuilder) + +extern JAVA_OBJECT __CLASS_java_lang_StringBuilder; +extern JAVA_OBJECT __CLASS_java_lang_StringBuilder_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_StringBuilder_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_StringBuilder_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_StringBuilder +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_StringBuilder \ + __INSTANCE_FIELDS_java_lang_AbstractStringBuilder; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_StringBuilder \ + } java_lang_StringBuilder + +struct java_lang_StringBuilder { + __TIB_DEFINITION_java_lang_StringBuilder* tib; + struct { + __INSTANCE_FIELDS_java_lang_StringBuilder; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +typedef struct java_lang_StringBuilder java_lang_StringBuilder; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_StringBuilder 9 +#define XMLVM_VTABLE_IDX_java_lang_StringBuilder_append___char 6 +#define XMLVM_VTABLE_IDX_java_lang_StringBuilder_append___java_lang_CharSequence 7 +#define XMLVM_VTABLE_IDX_java_lang_StringBuilder_append___java_lang_CharSequence_int_int 8 +#define XMLVM_VTABLE_IDX_java_lang_StringBuilder_toString__ 5 + +void __INIT_java_lang_StringBuilder(); +void __INIT_IMPL_java_lang_StringBuilder(); +void __DELETE_java_lang_StringBuilder(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_StringBuilder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_StringBuilder(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_StringBuilder(); +JAVA_LONG java_lang_StringBuilder_GET_serialVersionUID(); +void java_lang_StringBuilder_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_StringBuilder___INIT___(JAVA_OBJECT me); +void java_lang_StringBuilder___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_StringBuilder___INIT____java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_StringBuilder___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_StringBuilder_append___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +// Vtable index: 6 +JAVA_OBJECT java_lang_StringBuilder_append___char(JAVA_OBJECT me, JAVA_CHAR n1); +JAVA_OBJECT java_lang_StringBuilder_append___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_StringBuilder_append___long(JAVA_OBJECT me, JAVA_LONG n1); +JAVA_OBJECT java_lang_StringBuilder_append___float(JAVA_OBJECT me, JAVA_FLOAT n1); +JAVA_OBJECT java_lang_StringBuilder_append___double(JAVA_OBJECT me, JAVA_DOUBLE n1); +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_StringBuilder_append___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_StringBuilder_append___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 7 +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_OBJECT java_lang_StringBuilder_append___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_lang_StringBuilder_appendCodePoint___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_StringBuilder_delete___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_StringBuilder_deleteCharAt___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_StringBuilder_insert___int_boolean(JAVA_OBJECT me, JAVA_INT n1, JAVA_BOOLEAN n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_double(JAVA_OBJECT me, JAVA_INT n1, JAVA_DOUBLE n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_char_1ARRAY(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_CharSequence(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_StringBuilder_insert___int_java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +JAVA_OBJECT java_lang_StringBuilder_replace___int_int_java_lang_String(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_lang_StringBuilder_reverse__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_StringBuilder_toString__(JAVA_OBJECT me); +void java_lang_StringBuilder_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_StringBuilder_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_String_CaseInsensitiveComparator.c b/tests/nbody-java/java_lang_String_CaseInsensitiveComparator.c new file mode 100644 index 0000000000000..28339b9d54df2 --- /dev/null +++ b/tests/nbody-java/java_lang_String_CaseInsensitiveComparator.c @@ -0,0 +1,240 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_lang_String_CaseInsensitiveComparator.h" + +#define XMLVM_CURRENT_CLASS_NAME String_CaseInsensitiveComparator +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_String_CaseInsensitiveComparator + +__TIB_DEFINITION_java_lang_String_CaseInsensitiveComparator __TIB_java_lang_String_CaseInsensitiveComparator = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_String_CaseInsensitiveComparator, // classInitializer + "java.lang.String$CaseInsensitiveComparator", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Comparator;Ljava/io/Serializable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_String_CaseInsensitiveComparator), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator; +JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_String_CaseInsensitiveComparator_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_String_CaseInsensitiveComparator() +{ + staticInitializerLock(&__TIB_java_lang_String_CaseInsensitiveComparator); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_String_CaseInsensitiveComparator.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_String_CaseInsensitiveComparator.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_String_CaseInsensitiveComparator); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_String_CaseInsensitiveComparator.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_String_CaseInsensitiveComparator.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_String_CaseInsensitiveComparator.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.String$CaseInsensitiveComparator") + __INIT_IMPL_java_lang_String_CaseInsensitiveComparator(); + } +} + +void __INIT_IMPL_java_lang_String_CaseInsensitiveComparator() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_String_CaseInsensitiveComparator.newInstanceFunc = __NEW_INSTANCE_java_lang_String_CaseInsensitiveComparator; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_String_CaseInsensitiveComparator.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_String_CaseInsensitiveComparator.vtable[6] = (VTABLE_PTR) &java_lang_String_CaseInsensitiveComparator_compare___java_lang_Object_java_lang_Object; + // Initialize interface information + __TIB_java_lang_String_CaseInsensitiveComparator.numImplementedInterfaces = 2; + __TIB_java_lang_String_CaseInsensitiveComparator.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_String_CaseInsensitiveComparator.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_util_Comparator) + + __TIB_java_lang_String_CaseInsensitiveComparator.implementedInterfaces[0][1] = &__TIB_java_util_Comparator; + // Initialize itable for this class + __TIB_java_lang_String_CaseInsensitiveComparator.itableBegin = &__TIB_java_lang_String_CaseInsensitiveComparator.itable[0]; + __TIB_java_lang_String_CaseInsensitiveComparator.itable[XMLVM_ITABLE_IDX_java_util_Comparator_compare___java_lang_Object_java_lang_Object] = __TIB_java_lang_String_CaseInsensitiveComparator.vtable[6]; + __TIB_java_lang_String_CaseInsensitiveComparator.itable[XMLVM_ITABLE_IDX_java_util_Comparator_equals___java_lang_Object] = __TIB_java_lang_String_CaseInsensitiveComparator.vtable[1]; + + _STATIC_java_lang_String_CaseInsensitiveComparator_serialVersionUID = 8575799808933029326; + + __TIB_java_lang_String_CaseInsensitiveComparator.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_String_CaseInsensitiveComparator.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_String_CaseInsensitiveComparator.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_String_CaseInsensitiveComparator.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_String_CaseInsensitiveComparator.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_String_CaseInsensitiveComparator.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_String_CaseInsensitiveComparator.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_String_CaseInsensitiveComparator.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_String_CaseInsensitiveComparator = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_String_CaseInsensitiveComparator); + __TIB_java_lang_String_CaseInsensitiveComparator.clazz = __CLASS_java_lang_String_CaseInsensitiveComparator; + __TIB_java_lang_String_CaseInsensitiveComparator.baseType = JAVA_NULL; + __CLASS_java_lang_String_CaseInsensitiveComparator_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String_CaseInsensitiveComparator); + __CLASS_java_lang_String_CaseInsensitiveComparator_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String_CaseInsensitiveComparator_1ARRAY); + __CLASS_java_lang_String_CaseInsensitiveComparator_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String_CaseInsensitiveComparator_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_String_CaseInsensitiveComparator] + //XMLVM_END_WRAPPER + + __TIB_java_lang_String_CaseInsensitiveComparator.classInitialized = 1; +} + +void __DELETE_java_lang_String_CaseInsensitiveComparator(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_String_CaseInsensitiveComparator] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_String_CaseInsensitiveComparator(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_String_CaseInsensitiveComparator] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_String_CaseInsensitiveComparator() +{ XMLVM_CLASS_INIT(java_lang_String_CaseInsensitiveComparator) +java_lang_String_CaseInsensitiveComparator* me = (java_lang_String_CaseInsensitiveComparator*) XMLVM_MALLOC(sizeof(java_lang_String_CaseInsensitiveComparator)); + me->tib = &__TIB_java_lang_String_CaseInsensitiveComparator; + __INIT_INSTANCE_MEMBERS_java_lang_String_CaseInsensitiveComparator(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_String_CaseInsensitiveComparator] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_String_CaseInsensitiveComparator() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_lang_String_CaseInsensitiveComparator_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_String_CaseInsensitiveComparator) + return _STATIC_java_lang_String_CaseInsensitiveComparator_serialVersionUID; +} + +void java_lang_String_CaseInsensitiveComparator_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_String_CaseInsensitiveComparator) +_STATIC_java_lang_String_CaseInsensitiveComparator_serialVersionUID = v; +} + +void java_lang_String_CaseInsensitiveComparator___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_CaseInsensitiveComparator___INIT___] + XMLVM_ENTER_METHOD("java.lang.String$CaseInsensitiveComparator", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("String.java", 115) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_CaseInsensitiveComparator_compare___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_CaseInsensitiveComparator_compare___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.String$CaseInsensitiveComparator", "compare", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("String.java", 133) + XMLVM_CHECK_NPE(2) + _r0.i = java_lang_String_compareToIgnoreCase___java_lang_String(_r2.o, _r3.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_String_CaseInsensitiveComparator_compare___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_CaseInsensitiveComparator_compare___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.String$CaseInsensitiveComparator", "compare", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("String.java", 115) + _r2.o = _r2.o; + _r3.o = _r3.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_String_CaseInsensitiveComparator_compare___java_lang_String_java_lang_String(_r1.o, _r2.o, _r3.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_String_CaseInsensitiveComparator___INIT____java_lang_String_1(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_String_CaseInsensitiveComparator___INIT____java_lang_String_1] + XMLVM_ENTER_METHOD("java.lang.String$CaseInsensitiveComparator", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("String.java", 115) + XMLVM_CHECK_NPE(0) + java_lang_String_CaseInsensitiveComparator___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_String_CaseInsensitiveComparator.h b/tests/nbody-java/java_lang_String_CaseInsensitiveComparator.h new file mode 100644 index 0000000000000..633c20f951261 --- /dev/null +++ b/tests/nbody-java/java_lang_String_CaseInsensitiveComparator.h @@ -0,0 +1,64 @@ +#ifndef __JAVA_LANG_STRING_CASEINSENSITIVECOMPARATOR__ +#define __JAVA_LANG_STRING_CASEINSENSITIVECOMPARATOR__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_String_CaseInsensitiveComparator 2 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_util_Comparator.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.String$CaseInsensitiveComparator +XMLVM_DEFINE_CLASS(java_lang_String_CaseInsensitiveComparator, 7, XMLVM_ITABLE_SIZE_java_lang_String_CaseInsensitiveComparator) + +extern JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator; +extern JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_String_CaseInsensitiveComparator_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_String_CaseInsensitiveComparator +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_String_CaseInsensitiveComparator \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_String_CaseInsensitiveComparator \ + } java_lang_String_CaseInsensitiveComparator + +struct java_lang_String_CaseInsensitiveComparator { + __TIB_DEFINITION_java_lang_String_CaseInsensitiveComparator* tib; + struct { + __INSTANCE_FIELDS_java_lang_String_CaseInsensitiveComparator; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_String_CaseInsensitiveComparator +#define XMLVM_FORWARD_DECL_java_lang_String_CaseInsensitiveComparator +typedef struct java_lang_String_CaseInsensitiveComparator java_lang_String_CaseInsensitiveComparator; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_String_CaseInsensitiveComparator 7 +#define XMLVM_VTABLE_IDX_java_lang_String_CaseInsensitiveComparator_compare___java_lang_Object_java_lang_Object 6 + +void __INIT_java_lang_String_CaseInsensitiveComparator(); +void __INIT_IMPL_java_lang_String_CaseInsensitiveComparator(); +void __DELETE_java_lang_String_CaseInsensitiveComparator(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_String_CaseInsensitiveComparator(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_String_CaseInsensitiveComparator(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_String_CaseInsensitiveComparator(); +JAVA_LONG java_lang_String_CaseInsensitiveComparator_GET_serialVersionUID(); +void java_lang_String_CaseInsensitiveComparator_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_String_CaseInsensitiveComparator___INIT___(JAVA_OBJECT me); +JAVA_INT java_lang_String_CaseInsensitiveComparator_compare___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_INT java_lang_String_CaseInsensitiveComparator_compare___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_String_CaseInsensitiveComparator___INIT____java_lang_String_1(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_System.c b/tests/nbody-java/java_lang_System.c new file mode 100644 index 0000000000000..2c2e7a622fc57 --- /dev/null +++ b/tests/nbody-java/java_lang_System.c @@ -0,0 +1,2057 @@ +#include "xmlvm.h" +#include "java_io_PrintStream.h" +#include "java_lang_Boolean.h" +#include "java_lang_Byte.h" +#include "java_lang_Character.h" +#include "java_lang_Class.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "java_lang_Integer.h" +#include "java_lang_Long.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Runtime.h" +#include "java_lang_RuntimePermission.h" +#include "java_lang_SecurityManager.h" +#include "java_lang_Short.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_util_Map.h" +#include "java_util_Properties.h" +#include "java_util_PropertyPermission.h" +#include "org_xmlvm_runtime_XMLVMUtil.h" + +#include "java_lang_System.h" + +#define XMLVM_CURRENT_CLASS_NAME System +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_System + +__TIB_DEFINITION_java_lang_System __TIB_java_lang_System = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_System, // classInitializer + "java.lang.System", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_System), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_System; +JAVA_OBJECT __CLASS_java_lang_System_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_System_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_System_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_System_in; +static JAVA_OBJECT _STATIC_java_lang_System_out; +static JAVA_OBJECT _STATIC_java_lang_System_err; +static JAVA_OBJECT _STATIC_java_lang_System_RUNTIME; +static JAVA_OBJECT _STATIC_java_lang_System_systemProperties; +static JAVA_OBJECT _STATIC_java_lang_System_security; +static JAVA_INT _STATIC_java_lang_System_InitLocale; +static JAVA_INT _STATIC_java_lang_System_PlatformEncoding; +static JAVA_INT _STATIC_java_lang_System_FileEncoding; +static JAVA_INT _STATIC_java_lang_System_OSEncoding; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_System() +{ + staticInitializerLock(&__TIB_java_lang_System); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_System.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_System.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_System); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_System.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_System.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_System.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.System") + __INIT_IMPL_java_lang_System(); + } +} + +void __INIT_IMPL_java_lang_System() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_System.newInstanceFunc = __NEW_INSTANCE_java_lang_System; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_System.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_System.numImplementedInterfaces = 0; + __TIB_java_lang_System.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_System_in = (java_lang_Object*) JAVA_NULL; + _STATIC_java_lang_System_out = (java_io_PrintStream*) JAVA_NULL; + _STATIC_java_lang_System_err = (java_io_PrintStream*) JAVA_NULL; + _STATIC_java_lang_System_RUNTIME = (java_lang_Runtime*) JAVA_NULL; + _STATIC_java_lang_System_systemProperties = (java_util_Properties*) JAVA_NULL; + _STATIC_java_lang_System_security = (java_lang_SecurityManager*) JAVA_NULL; + _STATIC_java_lang_System_InitLocale = 0; + _STATIC_java_lang_System_PlatformEncoding = 1; + _STATIC_java_lang_System_FileEncoding = 2; + _STATIC_java_lang_System_OSEncoding = 3; + + __TIB_java_lang_System.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_System.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_System.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_System.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_System.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_System.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_System.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_System.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_System = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_System); + __TIB_java_lang_System.clazz = __CLASS_java_lang_System; + __TIB_java_lang_System.baseType = JAVA_NULL; + __CLASS_java_lang_System_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_System); + __CLASS_java_lang_System_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_System_1ARRAY); + __CLASS_java_lang_System_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_System_2ARRAY); + java_lang_System___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_System] + //XMLVM_END_WRAPPER + + __TIB_java_lang_System.classInitialized = 1; +} + +void __DELETE_java_lang_System(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_System] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_System(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_System] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_System() +{ XMLVM_CLASS_INIT(java_lang_System) +java_lang_System* me = (java_lang_System*) XMLVM_MALLOC(sizeof(java_lang_System)); + me->tib = &__TIB_java_lang_System; + __INIT_INSTANCE_MEMBERS_java_lang_System(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_System] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_System() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_lang_System_GET_in() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_in; +} + +void java_lang_System_PUT_in(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_in = v; +} + +JAVA_OBJECT java_lang_System_GET_out() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_out; +} + +void java_lang_System_PUT_out(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_out = v; +} + +JAVA_OBJECT java_lang_System_GET_err() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_err; +} + +void java_lang_System_PUT_err(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_err = v; +} + +JAVA_OBJECT java_lang_System_GET_RUNTIME() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_RUNTIME; +} + +void java_lang_System_PUT_RUNTIME(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_RUNTIME = v; +} + +JAVA_OBJECT java_lang_System_GET_systemProperties() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_systemProperties; +} + +void java_lang_System_PUT_systemProperties(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_systemProperties = v; +} + +JAVA_OBJECT java_lang_System_GET_security() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_security; +} + +void java_lang_System_PUT_security(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_security = v; +} + +JAVA_INT java_lang_System_GET_InitLocale() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_InitLocale; +} + +void java_lang_System_PUT_InitLocale(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_InitLocale = v; +} + +JAVA_INT java_lang_System_GET_PlatformEncoding() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_PlatformEncoding; +} + +void java_lang_System_PUT_PlatformEncoding(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_PlatformEncoding = v; +} + +JAVA_INT java_lang_System_GET_FileEncoding() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_FileEncoding; +} + +void java_lang_System_PUT_FileEncoding(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_FileEncoding = v; +} + +JAVA_INT java_lang_System_GET_OSEncoding() +{ + XMLVM_CLASS_INIT(java_lang_System) + return _STATIC_java_lang_System_OSEncoding; +} + +void java_lang_System_PUT_OSEncoding(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_System) +_STATIC_java_lang_System_OSEncoding = v; +} + +//XMLVM_NATIVE[void java_lang_System_initNativeLayer__()] + +void java_lang_System_setIn___java_io_InputStream(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_setIn___java_io_InputStream] + XMLVM_ENTER_METHOD("java.lang.System", "setIn", "?") + XMLVMElem _r0; + _r0.o = n1; + XMLVM_SOURCE_POSITION("System.java", 108) + java_lang_System_PUT_in( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 109) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_setOut___java_io_PrintStream(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_setOut___java_io_PrintStream] + XMLVM_ENTER_METHOD("java.lang.System", "setOut", "?") + XMLVMElem _r0; + _r0.o = n1; + XMLVM_SOURCE_POSITION("System.java", 126) + java_lang_System_PUT_out( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 127) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_setErr___java_io_PrintStream(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_setErr___java_io_PrintStream] + XMLVM_ENTER_METHOD("java.lang.System", "setErr", "?") + XMLVMElem _r0; + _r0.o = n1; + XMLVM_SOURCE_POSITION("System.java", 144) + java_lang_System_PUT_err( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 145) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_System___INIT___] + XMLVM_ENTER_METHOD("java.lang.System", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("System.java", 150) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("System.java", 151) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r5.o = n1; + _r6.i = n2; + _r7.o = n3; + _r8.i = n4; + _r9.i = n5; + XMLVM_SOURCE_POSITION("System.java", 173) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[3])(_r5.o); + XMLVM_SOURCE_POSITION("System.java", 174) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(7) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[3])(_r7.o); + XMLVM_SOURCE_POSITION("System.java", 175) + XMLVM_CHECK_NPE(2) + _r4.i = java_lang_Class_isArray__(_r2.o); + if (_r4.i == 0) goto label20; + XMLVM_CHECK_NPE(3) + _r4.i = java_lang_Class_isArray__(_r3.o); + if (_r4.i != 0) goto label26; + label20:; + XMLVM_SOURCE_POSITION("System.java", 176) + + + // Red class access removed: java.lang.ArrayStoreException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayStoreException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r4.o) + label26:; + XMLVM_SOURCE_POSITION("System.java", 178) + XMLVM_CHECK_NPE(2) + _r0.o = java_lang_Class_getComponentType__(_r2.o); + XMLVM_SOURCE_POSITION("System.java", 179) + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_Class_getComponentType__(_r3.o); + XMLVM_SOURCE_POSITION("System.java", 180) + XMLVM_CHECK_NPE(0) + _r4.i = java_lang_Class_isPrimitive__(_r0.o); + if (_r4.i != 0) goto label64; + XMLVM_SOURCE_POSITION("System.java", 181) + XMLVM_CHECK_NPE(1) + _r4.i = java_lang_Class_isPrimitive__(_r1.o); + if (_r4.i == 0) goto label52; + XMLVM_SOURCE_POSITION("System.java", 182) + + + // Red class access removed: java.lang.ArrayStoreException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayStoreException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r4.o) + label52:; + XMLVM_SOURCE_POSITION("System.java", 184) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___java_lang_Object_1ARRAY_int_java_lang_Object_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + label63:; + XMLVM_SOURCE_POSITION("System.java", 207) + XMLVM_EXIT_METHOD() + return; + label64:; + XMLVM_SOURCE_POSITION("System.java", 186) + if (_r1.o == _r0.o) goto label72; + XMLVM_SOURCE_POSITION("System.java", 187) + + + // Red class access removed: java.lang.ArrayStoreException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayStoreException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r4.o) + label72:; + XMLVM_SOURCE_POSITION("System.java", 189) + _r4.o = java_lang_Integer_GET_TYPE(); + if (_r0.o != _r4.o) goto label88; + XMLVM_SOURCE_POSITION("System.java", 190) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___int_1ARRAY_int_int_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + label88:; + XMLVM_SOURCE_POSITION("System.java", 191) + _r4.o = java_lang_Byte_GET_TYPE(); + if (_r0.o != _r4.o) goto label104; + XMLVM_SOURCE_POSITION("System.java", 192) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___byte_1ARRAY_int_byte_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + label104:; + XMLVM_SOURCE_POSITION("System.java", 193) + _r4.o = java_lang_Long_GET_TYPE(); + if (_r0.o != _r4.o) goto label120; + XMLVM_SOURCE_POSITION("System.java", 194) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___long_1ARRAY_int_long_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + label120:; + XMLVM_SOURCE_POSITION("System.java", 195) + _r4.o = java_lang_Short_GET_TYPE(); + if (_r0.o != _r4.o) goto label136; + XMLVM_SOURCE_POSITION("System.java", 196) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___short_1ARRAY_int_short_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + label136:; + XMLVM_SOURCE_POSITION("System.java", 197) + _r4.o = java_lang_Character_GET_TYPE(); + if (_r0.o != _r4.o) goto label152; + XMLVM_SOURCE_POSITION("System.java", 198) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___char_1ARRAY_int_char_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + label152:; + XMLVM_SOURCE_POSITION("System.java", 199) + _r4.o = java_lang_Boolean_GET_TYPE(); + if (_r0.o != _r4.o) goto label168; + XMLVM_SOURCE_POSITION("System.java", 200) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___boolean_1ARRAY_int_boolean_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + label168:; + XMLVM_SOURCE_POSITION("System.java", 201) + _r4.o = java_lang_Double_GET_TYPE(); + if (_r0.o != _r4.o) goto label184; + XMLVM_SOURCE_POSITION("System.java", 202) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___double_1ARRAY_int_double_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + label184:; + XMLVM_SOURCE_POSITION("System.java", 203) + _r4.o = java_lang_Float_GET_TYPE(); + if (_r0.o != _r4.o) goto label63; + XMLVM_SOURCE_POSITION("System.java", 204) + _r5.o = _r5.o; + _r5.o = _r5.o; + _r7.o = _r7.o; + _r7.o = _r7.o; + java_lang_System_arraycopy___float_1ARRAY_int_float_1ARRAY_int_int(_r5.o, _r6.i, _r7.o, _r8.i, _r9.i); + goto label63; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___java_lang_Object_1ARRAY_int_java_lang_Object_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___java_lang_Object_1ARRAY_int_java_lang_Object_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + _r7.i = n5; + XMLVM_SOURCE_POSITION("System.java", 214) + if (_r4.i < 0) goto label52; + if (_r6.i < 0) goto label52; + if (_r7.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r7.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1.i = _r1.i - _r6.i; + if (_r7.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 217) + if (_r3.o != _r5.o) goto label22; + if (_r4.i > _r6.i) goto label22; + _r1.i = _r4.i + _r7.i; + if (_r1.i > _r6.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 218) + _r0.i = 0; + label23:; + if (_r0.i >= _r7.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 219) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 222) + _r1.i = 1; + _r0.i = _r7.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 223) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 227) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 229) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___int_1ARRAY_int_int_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___int_1ARRAY_int_int_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + _r7.i = n5; + XMLVM_SOURCE_POSITION("System.java", 243) + if (_r4.i < 0) goto label52; + if (_r6.i < 0) goto label52; + if (_r7.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r7.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1.i = _r1.i - _r6.i; + if (_r7.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 246) + if (_r3.o != _r5.o) goto label22; + if (_r4.i > _r6.i) goto label22; + _r1.i = _r4.i + _r7.i; + if (_r1.i > _r6.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 247) + _r0.i = 0; + label23:; + if (_r0.i >= _r7.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 248) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 251) + _r1.i = 1; + _r0.i = _r7.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 252) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 256) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 258) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___byte_1ARRAY_int_byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___byte_1ARRAY_int_byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + _r7.i = n5; + XMLVM_SOURCE_POSITION("System.java", 272) + if (_r4.i < 0) goto label52; + if (_r6.i < 0) goto label52; + if (_r7.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r7.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1.i = _r1.i - _r6.i; + if (_r7.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 275) + if (_r3.o != _r5.o) goto label22; + if (_r4.i > _r6.i) goto label22; + _r1.i = _r4.i + _r7.i; + if (_r1.i > _r6.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 276) + _r0.i = 0; + label23:; + if (_r0.i >= _r7.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 277) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 280) + _r1.i = 1; + _r0.i = _r7.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 281) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 285) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 287) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___short_1ARRAY_int_short_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___short_1ARRAY_int_short_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + _r7.i = n5; + XMLVM_SOURCE_POSITION("System.java", 301) + if (_r4.i < 0) goto label52; + if (_r6.i < 0) goto label52; + if (_r7.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r7.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1.i = _r1.i - _r6.i; + if (_r7.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 304) + if (_r3.o != _r5.o) goto label22; + if (_r4.i > _r6.i) goto label22; + _r1.i = _r4.i + _r7.i; + if (_r1.i > _r6.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 305) + _r0.i = 0; + label23:; + if (_r0.i >= _r7.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 306) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_SHORT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_SHORT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 309) + _r1.i = 1; + _r0.i = _r7.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 310) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_SHORT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_SHORT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 314) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 316) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___long_1ARRAY_int_long_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___long_1ARRAY_int_long_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r4.o = n1; + _r5.i = n2; + _r6.o = n3; + _r7.i = n4; + _r8.i = n5; + XMLVM_SOURCE_POSITION("System.java", 330) + if (_r5.i < 0) goto label52; + if (_r7.i < 0) goto label52; + if (_r8.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + _r1.i = _r1.i - _r5.i; + if (_r8.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r1.i = _r1.i - _r7.i; + if (_r8.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 333) + if (_r4.o != _r6.o) goto label22; + if (_r5.i > _r7.i) goto label22; + _r1.i = _r5.i + _r8.i; + if (_r1.i > _r7.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 334) + _r0.i = 0; + label23:; + if (_r0.i >= _r8.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 335) + _r1.i = _r7.i + _r0.i; + _r2.i = _r5.i + _r0.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r2.l = ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.l; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 338) + _r1.i = 1; + _r0.i = _r8.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 339) + _r1.i = _r7.i + _r0.i; + _r2.i = _r5.i + _r0.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r2.l = ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.l; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 343) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 345) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___char_1ARRAY_int_char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___char_1ARRAY_int_char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + _r7.i = n5; + XMLVM_SOURCE_POSITION("System.java", 359) + if (_r4.i < 0) goto label52; + if (_r6.i < 0) goto label52; + if (_r7.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r7.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1.i = _r1.i - _r6.i; + if (_r7.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 362) + if (_r3.o != _r5.o) goto label22; + if (_r4.i > _r6.i) goto label22; + _r1.i = _r4.i + _r7.i; + if (_r1.i > _r6.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 363) + _r0.i = 0; + label23:; + if (_r0.i >= _r7.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 364) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 367) + _r1.i = 1; + _r0.i = _r7.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 368) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 372) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 374) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___boolean_1ARRAY_int_boolean_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___boolean_1ARRAY_int_boolean_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + _r7.i = n5; + XMLVM_SOURCE_POSITION("System.java", 389) + if (_r4.i < 0) goto label52; + if (_r6.i < 0) goto label52; + if (_r7.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r7.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1.i = _r1.i - _r6.i; + if (_r7.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 392) + if (_r3.o != _r5.o) goto label22; + if (_r4.i > _r6.i) goto label22; + _r1.i = _r4.i + _r7.i; + if (_r1.i > _r6.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 393) + _r0.i = 0; + label23:; + if (_r0.i >= _r7.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 394) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BOOLEAN*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_BOOLEAN*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 397) + _r1.i = 1; + _r0.i = _r7.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 398) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BOOLEAN*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_BOOLEAN*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 402) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 404) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___double_1ARRAY_int_double_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___double_1ARRAY_int_double_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r4.o = n1; + _r5.i = n2; + _r6.o = n3; + _r7.i = n4; + _r8.i = n5; + XMLVM_SOURCE_POSITION("System.java", 418) + if (_r5.i < 0) goto label52; + if (_r7.i < 0) goto label52; + if (_r8.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + _r1.i = _r1.i - _r5.i; + if (_r8.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r1.i = _r1.i - _r7.i; + if (_r8.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 421) + if (_r4.o != _r6.o) goto label22; + if (_r5.i > _r7.i) goto label22; + _r1.i = _r5.i + _r8.i; + if (_r1.i > _r7.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 422) + _r0.i = 0; + label23:; + if (_r0.i >= _r8.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 423) + _r1.i = _r7.i + _r0.i; + _r2.i = _r5.i + _r0.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r2.d = ((JAVA_ARRAY_DOUBLE*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + ((JAVA_ARRAY_DOUBLE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.d; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 426) + _r1.i = 1; + _r0.i = _r8.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 427) + _r1.i = _r7.i + _r0.i; + _r2.i = _r5.i + _r0.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r2.d = ((JAVA_ARRAY_DOUBLE*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + ((JAVA_ARRAY_DOUBLE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.d; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 431) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 433) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_arraycopy___float_1ARRAY_int_float_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_arraycopy___float_1ARRAY_int_float_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.lang.System", "arraycopy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + _r6.i = n4; + _r7.i = n5; + XMLVM_SOURCE_POSITION("System.java", 447) + if (_r4.i < 0) goto label52; + if (_r6.i < 0) goto label52; + if (_r7.i < 0) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = _r1.i - _r4.i; + if (_r7.i > _r1.i) goto label52; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1.i = _r1.i - _r6.i; + if (_r7.i > _r1.i) goto label52; + XMLVM_SOURCE_POSITION("System.java", 450) + if (_r3.o != _r5.o) goto label22; + if (_r4.i > _r6.i) goto label22; + _r1.i = _r4.i + _r7.i; + if (_r1.i > _r6.i) goto label36; + label22:; + XMLVM_SOURCE_POSITION("System.java", 451) + _r0.i = 0; + label23:; + if (_r0.i >= _r7.i) goto label58; + XMLVM_SOURCE_POSITION("System.java", 452) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.f = ((JAVA_ARRAY_FLOAT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_FLOAT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.f; + _r0.i = _r0.i + 1; + goto label23; + label36:; + XMLVM_SOURCE_POSITION("System.java", 455) + _r1.i = 1; + _r0.i = _r7.i - _r1.i; + label39:; + if (_r0.i < 0) goto label58; + XMLVM_SOURCE_POSITION("System.java", 456) + _r1.i = _r6.i + _r0.i; + _r2.i = _r4.i + _r0.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.f = ((JAVA_ARRAY_FLOAT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + ((JAVA_ARRAY_FLOAT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.f; + _r0.i = _r0.i + -1; + goto label39; + label52:; + XMLVM_SOURCE_POSITION("System.java", 460) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label58:; + XMLVM_SOURCE_POSITION("System.java", 462) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_lang_System_currentTimeMillis__()] + +//XMLVM_NATIVE[JAVA_LONG java_lang_System_nanoTime__()] + +void java_lang_System_ensureProperties__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_ensureProperties__] + XMLVM_ENTER_METHOD("java.lang.System", "ensureProperties", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r12.i = 1; + // "console.encoding" + _r13.o = xmlvm_create_java_string_from_pool(673); + XMLVM_SOURCE_POSITION("System.java", 497) + _r9.o = __NEW_java_util_Properties(); + XMLVM_CHECK_NPE(9) + java_util_Properties___INIT___(_r9.o); + java_lang_System_PUT_systemProperties( _r9.o); + XMLVM_SOURCE_POSITION("System.java", 499) + _r8.o = JAVA_NULL; + _r7.o = JAVA_NULL; + _r9.i = 2; + XMLVM_SOURCE_POSITION("System.java", 501) + _r1.o = java_lang_System_getEncoding___int(_r9.i); + _r9.i = 3; + XMLVM_SOURCE_POSITION("System.java", 502) + _r2.o = java_lang_System_getEncoding___int(_r9.i); + if (_r1.o == JAVA_NULL) goto label149; + XMLVM_SOURCE_POSITION("System.java", 503) + XMLVM_SOURCE_POSITION("System.java", 504) + _r3 = _r1; + if (_r2.o != JAVA_NULL) goto label144; + XMLVM_SOURCE_POSITION("System.java", 508) + XMLVM_SOURCE_POSITION("System.java", 509) + _r8.o = java_lang_System_getEncoding___int(_r12.i); + _r7 = _r8; + label32:; + XMLVM_SOURCE_POSITION("System.java", 510) + XMLVM_SOURCE_POSITION("System.java", 519) + if (_r7.o != JAVA_NULL) goto label35; + XMLVM_SOURCE_POSITION("System.java", 520) + _r7 = _r2; + label35:; + XMLVM_SOURCE_POSITION("System.java", 522) + if (_r7.o == JAVA_NULL) goto label44; + XMLVM_SOURCE_POSITION("System.java", 523) + _r9.o = java_lang_System_GET_systemProperties(); + // "os.encoding" + _r10.o = xmlvm_create_java_string_from_pool(674); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r7.o); + label44:; + XMLVM_SOURCE_POSITION("System.java", 526) + _r9.o = java_lang_System_GET_systemProperties(); + // "file.encoding" + _r10.o = xmlvm_create_java_string_from_pool(174); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r3.o); + XMLVM_SOURCE_POSITION("System.java", 528) + _r9.o = java_lang_System_GET_systemProperties(); + // "java.version" + _r10.o = xmlvm_create_java_string_from_pool(675); + // "1.5 subset" + _r11.o = xmlvm_create_java_string_from_pool(676); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r11.o); + XMLVM_SOURCE_POSITION("System.java", 529) + _r9.o = java_lang_System_GET_systemProperties(); + // "java.specification.version" + _r10.o = xmlvm_create_java_string_from_pool(677); + // "1.5" + _r11.o = xmlvm_create_java_string_from_pool(678); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r11.o); + XMLVM_SOURCE_POSITION("System.java", 531) + _r9.o = java_lang_System_GET_systemProperties(); + // "java.specification.vendor" + _r10.o = xmlvm_create_java_string_from_pool(679); + // "Sun Microsystems Inc." + _r11.o = xmlvm_create_java_string_from_pool(680); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r11.o); + XMLVM_SOURCE_POSITION("System.java", 532) + _r9.o = java_lang_System_GET_systemProperties(); + // "java.specification.name" + _r10.o = xmlvm_create_java_string_from_pool(681); + // "Java Platform API Specification" + _r11.o = xmlvm_create_java_string_from_pool(682); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r11.o); + XMLVM_SOURCE_POSITION("System.java", 534) + _r9.o = java_lang_System_GET_systemProperties(); + // "com.ibm.oti.configuration" + _r10.o = xmlvm_create_java_string_from_pool(683); + // "clear" + _r11.o = xmlvm_create_java_string_from_pool(684); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r11.o); + XMLVM_SOURCE_POSITION("System.java", 535) + _r9.o = java_lang_System_GET_systemProperties(); + // "com.ibm.oti.configuration.dir" + _r10.o = xmlvm_create_java_string_from_pool(685); + // "jclClear" + _r11.o = xmlvm_create_java_string_from_pool(686); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r10.o, _r11.o); + XMLVM_SOURCE_POSITION("System.java", 537) + _r6.o = java_lang_System_getPropertyList__(); + _r4.i = 0; + label110:; + XMLVM_SOURCE_POSITION("System.java", 538) + _r9.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + if (_r4.i >= _r9.i) goto label117; + XMLVM_SOURCE_POSITION("System.java", 539) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r4.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + if (_r5.o != JAVA_NULL) goto label155; + label117:; + XMLVM_SOURCE_POSITION("System.java", 540) + XMLVM_SOURCE_POSITION("System.java", 546) + _r9.o = java_lang_System_GET_systemProperties(); + // "console.encoding" + _r10.o = xmlvm_create_java_string_from_pool(673); + //java_util_Properties_get___java_lang_Object[7] + XMLVM_CHECK_NPE(9) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[7])(_r9.o, _r13.o); + _r0.o = _r0.o; + if (_r0.o != JAVA_NULL) goto label143; + XMLVM_SOURCE_POSITION("System.java", 547) + XMLVM_SOURCE_POSITION("System.java", 548) + if (_r8.o != JAVA_NULL) goto label135; + XMLVM_SOURCE_POSITION("System.java", 549) + _r8.o = java_lang_System_getEncoding___int(_r12.i); + label135:; + XMLVM_SOURCE_POSITION("System.java", 551) + _r0 = _r8; + XMLVM_SOURCE_POSITION("System.java", 552) + _r9.o = java_lang_System_GET_systemProperties(); + // "console.encoding" + _r10.o = xmlvm_create_java_string_from_pool(673); + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r13.o, _r0.o); + label143:; + XMLVM_SOURCE_POSITION("System.java", 555) + XMLVM_EXIT_METHOD() + return; + label144:; + XMLVM_SOURCE_POSITION("System.java", 512) + _r9.i = 0; + java_lang_System_getEncoding___int(_r9.i); + goto label32; + label149:; + XMLVM_SOURCE_POSITION("System.java", 515) + _r8.o = java_lang_System_getEncoding___int(_r12.i); + _r3 = _r8; + XMLVM_SOURCE_POSITION("System.java", 516) + goto label32; + label155:; + XMLVM_SOURCE_POSITION("System.java", 543) + _r9.o = java_lang_System_GET_systemProperties(); + _r10.i = _r4.i + 1; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r10.i); + _r10.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i]; + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(9) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r9.o)->tib->vtable[10])(_r9.o, _r5.o, _r10.o); + _r4.i = _r4.i + 2; + goto label110; + //XMLVM_END_WRAPPER +} + +void java_lang_System_exit___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_exit___int] + XMLVM_ENTER_METHOD("java.lang.System", "exit", "?") + XMLVMElem _r0; + _r0.i = n1; + XMLVM_SOURCE_POSITION("System.java", 572) + java_lang_System_nativeExit___int(_r0.i); + XMLVM_SOURCE_POSITION("System.java", 573) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_System_nativeExit___int(JAVA_INT n1)] + +void java_lang_System_gc__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_gc__] + XMLVM_ENTER_METHOD("java.lang.System", "gc", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("System.java", 589) + _r0.o = java_lang_Runtime_getRuntime__(); + XMLVM_CHECK_NPE(0) + java_lang_Runtime_gc__(_r0.o); + XMLVM_SOURCE_POSITION("System.java", 590) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_getenv___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_getenv___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.System", "getenv", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = n1; + XMLVM_SOURCE_POSITION("System.java", 606) + if (_r4.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("System.java", 607) + _r1.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(1) + java_lang_NullPointerException___INIT___(_r1.o); + XMLVM_THROW_CUSTOM(_r1.o) + label8:; + XMLVM_SOURCE_POSITION("System.java", 609) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label41; + XMLVM_SOURCE_POSITION("System.java", 610) + XMLVM_SOURCE_POSITION("System.java", 611) + _r1.o = __NEW_java_lang_RuntimePermission(); + _r2.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT___(_r2.o); + // "getenv." + _r3.o = xmlvm_create_java_string_from_pool(687); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_CHECK_NPE(1) + java_lang_RuntimePermission___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + label41:; + XMLVM_SOURCE_POSITION("System.java", 613) + + + // Red class access removed: java.lang.Error::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.Error:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_getenv__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_getenv__] + XMLVM_ENTER_METHOD("java.lang.System", "getenv", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("System.java", 626) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label16; + XMLVM_SOURCE_POSITION("System.java", 627) + XMLVM_SOURCE_POSITION("System.java", 628) + _r1.o = __NEW_java_lang_RuntimePermission(); + // "getenv.*" + _r2.o = xmlvm_create_java_string_from_pool(688); + XMLVM_CHECK_NPE(1) + java_lang_RuntimePermission___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + label16:; + XMLVM_SOURCE_POSITION("System.java", 630) + + + // Red class access removed: java.lang.Error::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.Error:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_inheritedChannel__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_inheritedChannel__] + XMLVM_ENTER_METHOD("java.lang.System", "inheritedChannel", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("System.java", 644) + + + // Red class access removed: java.nio.channels.spi.SelectorProvider::provider + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.channels.spi.SelectorProvider::inheritedChannel + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_getProperties__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_getProperties__] + XMLVM_ENTER_METHOD("java.lang.System", "getProperties", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("System.java", 658) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("System.java", 659) + XMLVM_SOURCE_POSITION("System.java", 660) + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPropertiesAccess__(_r0.o); + label9:; + XMLVM_SOURCE_POSITION("System.java", 662) + _r1.o = java_lang_System_GET_systemProperties(); + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_internalGetProperties__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_internalGetProperties__] + XMLVM_ENTER_METHOD("java.lang.System", "internalGetProperties", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("System.java", 672) + _r0.o = java_lang_System_GET_systemProperties(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_getProperty___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_getProperty___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.System", "getProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("System.java", 709) + _r0.o = JAVA_NULL; + _r0.o = java_lang_System_getProperty___java_lang_String_java_lang_String(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_getProperty___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_getProperty___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.System", "getProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("System.java", 728) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r1.i != 0) goto label12; + XMLVM_SOURCE_POSITION("System.java", 729) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label12:; + XMLVM_SOURCE_POSITION("System.java", 731) + // "file.separator" + _r1.o = xmlvm_create_java_string_from_pool(689); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r1.o); + if (_r1.i == 0) goto label23; + XMLVM_SOURCE_POSITION("System.java", 732) + // "/" + _r1.o = xmlvm_create_java_string_from_pool(54); + label22:; + XMLVM_SOURCE_POSITION("System.java", 747) + XMLVM_EXIT_METHOD() + return _r1.o; + label23:; + XMLVM_SOURCE_POSITION("System.java", 734) + // "path.separator" + _r1.o = xmlvm_create_java_string_from_pool(690); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r1.o); + if (_r1.i == 0) goto label34; + XMLVM_SOURCE_POSITION("System.java", 735) + // ":" + _r1.o = xmlvm_create_java_string_from_pool(79); + goto label22; + label34:; + XMLVM_SOURCE_POSITION("System.java", 737) + // "user.dir" + _r1.o = xmlvm_create_java_string_from_pool(691); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r1.o); + if (_r1.i == 0) goto label47; + XMLVM_SOURCE_POSITION("System.java", 738) + _r1.o = org_xmlvm_runtime_XMLVMUtil_getCurrentWorkingDirectory__(); + goto label22; + label47:; + XMLVM_SOURCE_POSITION("System.java", 740) + // "javax.xml.parsers.DocumentBuilderFactory" + _r1.o = xmlvm_create_java_string_from_pool(692); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r1.o); + if (_r1.i == 0) goto label57; + XMLVM_SOURCE_POSITION("System.java", 741) + _r1.o = JAVA_NULL; + goto label22; + label57:; + XMLVM_SOURCE_POSITION("System.java", 743) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label66; + XMLVM_SOURCE_POSITION("System.java", 744) + XMLVM_SOURCE_POSITION("System.java", 745) + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPropertyAccess___java_lang_String(_r0.o, _r2.o); + label66:; + _r1.o = java_lang_System_GET_systemProperties(); + XMLVM_CHECK_NPE(1) + _r1.o = java_util_Properties_getProperty___java_lang_String_java_lang_String(_r1.o, _r2.o, _r3.o); + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_setProperty___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_setProperty___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.System", "setProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("System.java", 764) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + if (_r1.i != 0) goto label12; + XMLVM_SOURCE_POSITION("System.java", 765) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label12:; + XMLVM_SOURCE_POSITION("System.java", 767) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label28; + XMLVM_SOURCE_POSITION("System.java", 768) + XMLVM_SOURCE_POSITION("System.java", 769) + _r1.o = __NEW_java_util_PropertyPermission(); + // "write" + _r2.o = xmlvm_create_java_string_from_pool(671); + XMLVM_CHECK_NPE(1) + java_util_PropertyPermission___INIT____java_lang_String_java_lang_String(_r1.o, _r3.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + label28:; + XMLVM_SOURCE_POSITION("System.java", 771) + _r1.o = java_lang_System_GET_systemProperties(); + XMLVM_CHECK_NPE(1) + _r3.o = java_util_Properties_setProperty___java_lang_String_java_lang_String(_r1.o, _r3.o, _r4.o); + _r3.o = _r3.o; + XMLVM_EXIT_METHOD() + return _r3.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_System_clearProperty___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_clearProperty___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.System", "clearProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = n1; + XMLVM_SOURCE_POSITION("System.java", 790) + if (_r3.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("System.java", 791) + _r1.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(1) + java_lang_NullPointerException___INIT___(_r1.o); + XMLVM_THROW_CUSTOM(_r1.o) + label8:; + XMLVM_SOURCE_POSITION("System.java", 793) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + if (_r1.i != 0) goto label20; + XMLVM_SOURCE_POSITION("System.java", 794) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label20:; + XMLVM_SOURCE_POSITION("System.java", 797) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label36; + XMLVM_SOURCE_POSITION("System.java", 798) + XMLVM_SOURCE_POSITION("System.java", 799) + _r1.o = __NEW_java_util_PropertyPermission(); + // "write" + _r2.o = xmlvm_create_java_string_from_pool(671); + XMLVM_CHECK_NPE(1) + java_util_PropertyPermission___INIT____java_lang_String_java_lang_String(_r1.o, _r3.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + label36:; + XMLVM_SOURCE_POSITION("System.java", 801) + _r1.o = java_lang_System_GET_systemProperties(); + //java_util_Properties_remove___java_lang_Object[11] + XMLVM_CHECK_NPE(1) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r1.o)->tib->vtable[11])(_r1.o, _r3.o); + _r3.o = _r3.o; + XMLVM_EXIT_METHOD() + return _r3.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_System_getPropertyList__()] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_System_getEncoding___int(JAVA_INT n1)] + +JAVA_OBJECT java_lang_System_getSecurityManager__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_getSecurityManager__] + XMLVM_ENTER_METHOD("java.lang.System", "getSecurityManager", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("System.java", 826) + _r0.o = java_lang_System_GET_security(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_lang_System_identityHashCode___java_lang_Object(JAVA_OBJECT n1)] + +void java_lang_System_loadLibrary___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_loadLibrary___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.System", "loadLibrary", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = n1; + XMLVM_SOURCE_POSITION("System.java", 871) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT___(_r1.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r3.o); + // " couldn't be loaded. Library loading is not yet implemented" + _r2.o = xmlvm_create_java_string_from_pool(693); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_lang_System_runFinalization__() +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_runFinalization__] + XMLVM_ENTER_METHOD("java.lang.System", "runFinalization", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("System.java", 880) + _r0.o = java_lang_System_GET_RUNTIME(); + XMLVM_CHECK_NPE(0) + java_lang_Runtime_runFinalization__(_r0.o); + XMLVM_SOURCE_POSITION("System.java", 881) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_runFinalizersOnExit___boolean(JAVA_BOOLEAN n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_runFinalizersOnExit___boolean] + XMLVM_ENTER_METHOD("java.lang.System", "runFinalizersOnExit", "?") + XMLVMElem _r0; + _r0.i = n1; + XMLVM_SOURCE_POSITION("System.java", 895) + java_lang_Runtime_runFinalizersOnExit___boolean(_r0.i); + XMLVM_SOURCE_POSITION("System.java", 896) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System_setProperties___java_util_Properties(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_setProperties___java_util_Properties] + XMLVM_ENTER_METHOD("java.lang.System", "setProperties", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("System.java", 910) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("System.java", 911) + XMLVM_SOURCE_POSITION("System.java", 912) + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPropertiesAccess__(_r0.o); + label9:; + XMLVM_SOURCE_POSITION("System.java", 914) + if (_r1.o != JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("System.java", 915) + java_lang_System_ensureProperties__(); + label14:; + XMLVM_SOURCE_POSITION("System.java", 919) + XMLVM_EXIT_METHOD() + return; + label15:; + XMLVM_SOURCE_POSITION("System.java", 917) + java_lang_System_PUT_systemProperties( _r1.o); + goto label14; + //XMLVM_END_WRAPPER +} + +void java_lang_System_setSecurityManager___java_lang_SecurityManager(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_System) + //XMLVM_BEGIN_WRAPPER[java_lang_System_setSecurityManager___java_lang_SecurityManager] + XMLVM_ENTER_METHOD("java.lang.System", "setSecurityManager", "?") + XMLVMElem _r0; + _r0.o = n1; + XMLVM_SOURCE_POSITION("System.java", 945) + java_lang_System_PUT_security( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 946) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_System___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_System___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.System", "", "?") + XMLVMElem _r0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("System.java", 48) + java_lang_System_PUT_in( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 53) + java_lang_System_PUT_out( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 58) + java_lang_System_PUT_err( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 61) + _r0.o = java_lang_Runtime_getRuntime__(); + java_lang_System_PUT_RUNTIME( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 79) + java_lang_System_initNativeLayer__(); + XMLVM_SOURCE_POSITION("System.java", 81) + java_lang_System_ensureProperties__(); + XMLVM_SOURCE_POSITION("System.java", 83) + _r0.o = __NEW_java_lang_SecurityManager(); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager___INIT___(_r0.o); + java_lang_System_PUT_security( _r0.o); + XMLVM_SOURCE_POSITION("System.java", 91) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_System.h b/tests/nbody-java/java_lang_System.h new file mode 100644 index 0000000000000..3c55f3a18e96e --- /dev/null +++ b/tests/nbody-java/java_lang_System.h @@ -0,0 +1,190 @@ +#ifndef __JAVA_LANG_SYSTEM__ +#define __JAVA_LANG_SYSTEM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_System 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +XMLVM_FORWARD_DECL(java_io_PrintStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Boolean +#define XMLVM_FORWARD_DECL_java_lang_Boolean +XMLVM_FORWARD_DECL(java_lang_Boolean) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Byte +#define XMLVM_FORWARD_DECL_java_lang_Byte +XMLVM_FORWARD_DECL(java_lang_Byte) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Runtime +#define XMLVM_FORWARD_DECL_java_lang_Runtime +XMLVM_FORWARD_DECL(java_lang_Runtime) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimePermission +#define XMLVM_FORWARD_DECL_java_lang_RuntimePermission +XMLVM_FORWARD_DECL(java_lang_RuntimePermission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_SecurityManager +#define XMLVM_FORWARD_DECL_java_lang_SecurityManager +XMLVM_FORWARD_DECL(java_lang_SecurityManager) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Short +#define XMLVM_FORWARD_DECL_java_lang_Short +XMLVM_FORWARD_DECL(java_lang_Short) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map +#define XMLVM_FORWARD_DECL_java_util_Map +XMLVM_FORWARD_DECL(java_util_Map) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Properties +#define XMLVM_FORWARD_DECL_java_util_Properties +XMLVM_FORWARD_DECL(java_util_Properties) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_PropertyPermission +#define XMLVM_FORWARD_DECL_java_util_PropertyPermission +XMLVM_FORWARD_DECL(java_util_PropertyPermission) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMUtil +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMUtil +XMLVM_FORWARD_DECL(org_xmlvm_runtime_XMLVMUtil) +#endif +// Class declarations for java.lang.System +XMLVM_DEFINE_CLASS(java_lang_System, 6, XMLVM_ITABLE_SIZE_java_lang_System) + +extern JAVA_OBJECT __CLASS_java_lang_System; +extern JAVA_OBJECT __CLASS_java_lang_System_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_System_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_System_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_System +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_System \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_System \ + } java_lang_System + +struct java_lang_System { + __TIB_DEFINITION_java_lang_System* tib; + struct { + __INSTANCE_FIELDS_java_lang_System; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +typedef struct java_lang_System java_lang_System; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_System 6 + +void __INIT_java_lang_System(); +void __INIT_IMPL_java_lang_System(); +void __DELETE_java_lang_System(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_System(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_System(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_System(); +JAVA_OBJECT java_lang_System_GET_in(); +void java_lang_System_PUT_in(JAVA_OBJECT v); +JAVA_OBJECT java_lang_System_GET_out(); +void java_lang_System_PUT_out(JAVA_OBJECT v); +JAVA_OBJECT java_lang_System_GET_err(); +void java_lang_System_PUT_err(JAVA_OBJECT v); +JAVA_OBJECT java_lang_System_GET_RUNTIME(); +void java_lang_System_PUT_RUNTIME(JAVA_OBJECT v); +JAVA_OBJECT java_lang_System_GET_systemProperties(); +void java_lang_System_PUT_systemProperties(JAVA_OBJECT v); +JAVA_OBJECT java_lang_System_GET_security(); +void java_lang_System_PUT_security(JAVA_OBJECT v); +JAVA_INT java_lang_System_GET_InitLocale(); +void java_lang_System_PUT_InitLocale(JAVA_INT v); +JAVA_INT java_lang_System_GET_PlatformEncoding(); +void java_lang_System_PUT_PlatformEncoding(JAVA_INT v); +JAVA_INT java_lang_System_GET_FileEncoding(); +void java_lang_System_PUT_FileEncoding(JAVA_INT v); +JAVA_INT java_lang_System_GET_OSEncoding(); +void java_lang_System_PUT_OSEncoding(JAVA_INT v); +void java_lang_System_initNativeLayer__(); +void java_lang_System_setIn___java_io_InputStream(JAVA_OBJECT n1); +void java_lang_System_setOut___java_io_PrintStream(JAVA_OBJECT n1); +void java_lang_System_setErr___java_io_PrintStream(JAVA_OBJECT n1); +void java_lang_System___INIT___(JAVA_OBJECT me); +void java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___java_lang_Object_1ARRAY_int_java_lang_Object_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___int_1ARRAY_int_int_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___byte_1ARRAY_int_byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___short_1ARRAY_int_short_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___long_1ARRAY_int_long_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___char_1ARRAY_int_char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___boolean_1ARRAY_int_boolean_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___double_1ARRAY_int_double_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +void java_lang_System_arraycopy___float_1ARRAY_int_float_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5); +JAVA_LONG java_lang_System_currentTimeMillis__(); +JAVA_LONG java_lang_System_nanoTime__(); +void java_lang_System_ensureProperties__(); +void java_lang_System_exit___int(JAVA_INT n1); +void java_lang_System_nativeExit___int(JAVA_INT n1); +void java_lang_System_gc__(); +JAVA_OBJECT java_lang_System_getenv___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_System_getenv__(); +JAVA_OBJECT java_lang_System_inheritedChannel__(); +JAVA_OBJECT java_lang_System_getProperties__(); +JAVA_OBJECT java_lang_System_internalGetProperties__(); +JAVA_OBJECT java_lang_System_getProperty___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_System_getProperty___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_System_setProperty___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_System_clearProperty___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_System_getPropertyList__(); +JAVA_OBJECT java_lang_System_getEncoding___int(JAVA_INT n1); +JAVA_OBJECT java_lang_System_getSecurityManager__(); +JAVA_INT java_lang_System_identityHashCode___java_lang_Object(JAVA_OBJECT n1); +void java_lang_System_loadLibrary___java_lang_String(JAVA_OBJECT n1); +void java_lang_System_runFinalization__(); +void java_lang_System_runFinalizersOnExit___boolean(JAVA_BOOLEAN n1); +void java_lang_System_setProperties___java_util_Properties(JAVA_OBJECT n1); +void java_lang_System_setSecurityManager___java_lang_SecurityManager(JAVA_OBJECT n1); +void java_lang_System___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_Thread.c b/tests/nbody-java/java_lang_Thread.c new file mode 100644 index 0000000000000..a2a0fa67e5c55 --- /dev/null +++ b/tests/nbody-java/java_lang_Thread.c @@ -0,0 +1,2378 @@ +#include "xmlvm.h" +#include "java_io_PrintStream.h" +#include "java_lang_Class.h" +#include "java_lang_ClassLoader.h" +#include "java_lang_Long.h" +#include "java_lang_StackTraceElement.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_lang_Thread_State.h" +#include "java_lang_Thread_UncaughtExceptionHandler.h" +#include "java_lang_ThreadGroup.h" +#include "java_lang_Throwable.h" +#include "java_util_HashMap.h" +#include "java_util_Map.h" +#include "org_xmlvm_runtime_Condition.h" +#include "org_xmlvm_runtime_Mutex.h" + +#include "java_lang_Thread.h" + +#define XMLVM_CURRENT_CLASS_NAME Thread +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Thread + +__TIB_DEFINITION_java_lang_Thread __TIB_java_lang_Thread = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Thread, // classInitializer + "java.lang.Thread", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Thread), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Thread; +JAVA_OBJECT __CLASS_java_lang_Thread_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Thread_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Thread_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_Thread_threadSafetyMutex; +static JAVA_LONG _STATIC_java_lang_Thread_nextThreadId; +static JAVA_INT _STATIC_java_lang_Thread_numberOfActiveNonDaemonThreads; +static JAVA_OBJECT _STATIC_java_lang_Thread_threadMap; +static JAVA_OBJECT _STATIC_java_lang_Thread_mainThreadGroup; +static JAVA_INT _STATIC_java_lang_Thread_MAX_PRIORITY; +static JAVA_INT _STATIC_java_lang_Thread_MIN_PRIORITY; +static JAVA_INT _STATIC_java_lang_Thread_NORM_PRIORITY; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Thread() +{ + staticInitializerLock(&__TIB_java_lang_Thread); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Thread.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Thread.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Thread); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Thread.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Thread.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Thread.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Thread") + __INIT_IMPL_java_lang_Thread(); + } +} + +void __INIT_IMPL_java_lang_Thread() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Thread.newInstanceFunc = __NEW_INSTANCE_java_lang_Thread; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Thread.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Thread.vtable[1] = (VTABLE_PTR) &java_lang_Thread_equals___java_lang_Object; + __TIB_java_lang_Thread.vtable[6] = (VTABLE_PTR) &java_lang_Thread_run__; + __TIB_java_lang_Thread.vtable[5] = (VTABLE_PTR) &java_lang_Thread_toString__; + xmlvm_init_native_java_lang_Thread(); + // Initialize interface information + __TIB_java_lang_Thread.numImplementedInterfaces = 1; + __TIB_java_lang_Thread.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Runnable) + + __TIB_java_lang_Thread.implementedInterfaces[0][0] = &__TIB_java_lang_Runnable; + // Initialize itable for this class + __TIB_java_lang_Thread.itableBegin = &__TIB_java_lang_Thread.itable[0]; + __TIB_java_lang_Thread.itable[XMLVM_ITABLE_IDX_java_lang_Runnable_run__] = __TIB_java_lang_Thread.vtable[6]; + + _STATIC_java_lang_Thread_threadSafetyMutex = (org_xmlvm_runtime_Mutex*) JAVA_NULL; + _STATIC_java_lang_Thread_nextThreadId = 0; + _STATIC_java_lang_Thread_numberOfActiveNonDaemonThreads = 0; + _STATIC_java_lang_Thread_threadMap = (java_util_Map*) JAVA_NULL; + _STATIC_java_lang_Thread_mainThreadGroup = (java_lang_ThreadGroup*) JAVA_NULL; + _STATIC_java_lang_Thread_MAX_PRIORITY = 10; + _STATIC_java_lang_Thread_MIN_PRIORITY = 1; + _STATIC_java_lang_Thread_NORM_PRIORITY = 5; + + __TIB_java_lang_Thread.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Thread.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Thread.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Thread.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Thread.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Thread.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Thread.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Thread.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Thread = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Thread); + __TIB_java_lang_Thread.clazz = __CLASS_java_lang_Thread; + __TIB_java_lang_Thread.baseType = JAVA_NULL; + __CLASS_java_lang_Thread_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread); + __CLASS_java_lang_Thread_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_1ARRAY); + __CLASS_java_lang_Thread_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_2ARRAY); + java_lang_Thread___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Thread] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Thread.classInitialized = 1; +} + +void __DELETE_java_lang_Thread(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Thread] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Thread(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Thread*) me)->fields.java_lang_Thread.xmlvmExceptionEnv_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.xmlvmException_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.ptBuffers_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.threadId_ = 0; + ((java_lang_Thread*) me)->fields.java_lang_Thread.threadName_ = (java_lang_String*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.priority_ = 0; + ((java_lang_Thread*) me)->fields.java_lang_Thread.daemon_ = 0; + ((java_lang_Thread*) me)->fields.java_lang_Thread.alive_ = 0; + ((java_lang_Thread*) me)->fields.java_lang_Thread.targetRunnable_ = (java_lang_Runnable*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.threadGroup_ = (java_lang_ThreadGroup*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.threadState_ = (java_lang_Thread_State*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.interrupted_ = 0; + ((java_lang_Thread*) me)->fields.java_lang_Thread.waitingCondition_ = (org_xmlvm_runtime_Condition*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.threadLocalMap_ = (java_util_Map*) JAVA_NULL; + ((java_lang_Thread*) me)->fields.java_lang_Thread.nativeThreadId_ = 0; + ((java_lang_Thread*) me)->fields.java_lang_Thread.action_ = (java_lang_Runnable*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Thread] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Thread() +{ XMLVM_CLASS_INIT(java_lang_Thread) +java_lang_Thread* me = (java_lang_Thread*) XMLVM_MALLOC(sizeof(java_lang_Thread)); + me->tib = &__TIB_java_lang_Thread; + __INIT_INSTANCE_MEMBERS_java_lang_Thread(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Thread] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Thread() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_Thread(); + java_lang_Thread___INIT___(me); + return me; +} + +JAVA_OBJECT java_lang_Thread_GET_threadSafetyMutex() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_threadSafetyMutex; +} + +void java_lang_Thread_PUT_threadSafetyMutex(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_threadSafetyMutex = v; +} + +JAVA_LONG java_lang_Thread_GET_nextThreadId() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_nextThreadId; +} + +void java_lang_Thread_PUT_nextThreadId(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_nextThreadId = v; +} + +JAVA_INT java_lang_Thread_GET_numberOfActiveNonDaemonThreads() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_numberOfActiveNonDaemonThreads; +} + +void java_lang_Thread_PUT_numberOfActiveNonDaemonThreads(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_numberOfActiveNonDaemonThreads = v; +} + +JAVA_OBJECT java_lang_Thread_GET_threadMap() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_threadMap; +} + +void java_lang_Thread_PUT_threadMap(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_threadMap = v; +} + +JAVA_OBJECT java_lang_Thread_GET_mainThreadGroup() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_mainThreadGroup; +} + +void java_lang_Thread_PUT_mainThreadGroup(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_mainThreadGroup = v; +} + +JAVA_INT java_lang_Thread_GET_MAX_PRIORITY() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_MAX_PRIORITY; +} + +void java_lang_Thread_PUT_MAX_PRIORITY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_MAX_PRIORITY = v; +} + +JAVA_INT java_lang_Thread_GET_MIN_PRIORITY() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_MIN_PRIORITY; +} + +void java_lang_Thread_PUT_MIN_PRIORITY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_MIN_PRIORITY = v; +} + +JAVA_INT java_lang_Thread_GET_NORM_PRIORITY() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + return _STATIC_java_lang_Thread_NORM_PRIORITY; +} + +void java_lang_Thread_PUT_NORM_PRIORITY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread) +_STATIC_java_lang_Thread_NORM_PRIORITY = v; +} + +JAVA_LONG java_lang_Thread_getNextThreadId__() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getNextThreadId__] + XMLVM_ENTER_METHOD("java.lang.Thread", "getNextThreadId", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVM_SOURCE_POSITION("Thread.java", 120) + _r2.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Mutex_lock__(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 121) + _r0.l = java_lang_Thread_GET_nextThreadId(); + _r2.l = 1; + _r2.l = _r2.l + _r0.l; + java_lang_Thread_PUT_nextThreadId( _r2.l); + XMLVM_SOURCE_POSITION("Thread.java", 122) + _r2.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(2) + org_xmlvm_runtime_Mutex_unlock__(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 123) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_addSelfToMap__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_addSelfToMap__] + XMLVM_ENTER_METHOD("java.lang.Thread", "addSelfToMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 159) + _r0.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_lock__(_r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 161) + _r0.o = java_lang_Thread_GET_threadMap(); + XMLVM_CHECK_NPE(3) + _r1.l = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.nativeThreadId_; + _r1.o = java_lang_Long_valueOf___long(_r1.l); + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object])(_r0.o, _r1.o, _r3.o); + XMLVM_SOURCE_POSITION("Thread.java", 163) + _r0.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_unlock__(_r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 164) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_removeSelfFromMap__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_removeSelfFromMap__] + XMLVM_ENTER_METHOD("java.lang.Thread", "removeSelfFromMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 167) + _r0.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_lock__(_r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 169) + _r0.o = java_lang_Thread_GET_threadMap(); + XMLVM_CHECK_NPE(3) + _r1.l = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.nativeThreadId_; + _r1.o = java_lang_Long_valueOf___long(_r1.l); + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object])(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Thread.java", 171) + _r0.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_unlock__(_r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 172) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_Thread_getNativeThreadId__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getNativeThreadId__] + XMLVM_ENTER_METHOD("java.lang.Thread", "getNativeThreadId", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 177) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.nativeThreadId_; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____long] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.l = n1; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 186) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 187) + XMLVM_CHECK_NPE(2) + java_lang_Thread_initMainThread__(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 189) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.nativeThreadId_ = _r3.l; + XMLVM_SOURCE_POSITION("Thread.java", 192) + XMLVM_CHECK_NPE(2) + java_lang_Thread_addSelfToMap__(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 194) + _r0.l = 1; + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadId_ = _r0.l; + XMLVM_SOURCE_POSITION("Thread.java", 195) + // "main" + _r0.o = xmlvm_create_java_string_from_pool(663); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadName_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 197) + _r0.o = java_lang_Thread_GET_mainThreadGroup(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadGroup_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 198) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadGroup_; + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_add___java_lang_Thread(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 199) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_initMainThread__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Thread_getThread___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Thread) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getThread___long] + XMLVM_ENTER_METHOD("java.lang.Thread", "getThread", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.l = n1; + XMLVM_SOURCE_POSITION("Thread.java", 211) + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Thread.java", 212) + _r1.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_Mutex_lock__(_r1.o); + XMLVM_SOURCE_POSITION("Thread.java", 214) + _r1.o = java_lang_Thread_GET_threadMap(); + _r2.o = java_lang_Long_valueOf___long(_r3.l); + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object])(_r1.o, _r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 216) + _r1.o = java_lang_Thread_GET_threadSafetyMutex(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_Mutex_unlock__(_r1.o); + XMLVM_SOURCE_POSITION("Thread.java", 218) + if (_r0.o != JAVA_NULL) goto label30; + XMLVM_SOURCE_POSITION("Thread.java", 221) + _r0.o = __NEW_java_lang_Thread(); + XMLVM_CHECK_NPE(0) + java_lang_Thread___INIT____long(_r0.o, _r3.l); + label30:; + XMLVM_SOURCE_POSITION("Thread.java", 223) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Thread_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Thread", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r7.o = me; + _r8.o = n1; + XMLVM_SOURCE_POSITION("Thread.java", 227) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 228) + XMLVM_CLASS_INIT(java_lang_Thread) + _r3.i = XMLVM_ISA(_r8.o, __CLASS_java_lang_Thread); + if (_r3.i == 0) goto label19; + XMLVM_SOURCE_POSITION("Thread.java", 229) + _r0 = _r8; + _r0.o = _r0.o; + _r2 = _r0; + XMLVM_SOURCE_POSITION("Thread.java", 230) + XMLVM_CHECK_NPE(7) + _r3.l = ((java_lang_Thread*) _r7.o)->fields.java_lang_Thread.nativeThreadId_; + XMLVM_CHECK_NPE(2) + _r5.l = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.nativeThreadId_; + _r3.i = _r3.l > _r5.l ? 1 : (_r3.l == _r5.l ? 0 : -1); + if (_r3.i != 0) goto label20; + _r3.i = 1; + _r1 = _r3; + label19:; + XMLVM_SOURCE_POSITION("Thread.java", 232) + XMLVM_EXIT_METHOD() + return _r1.i; + label20:; + _r3.i = 0; + _r1 = _r3; + goto label19; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Thread", "initThread", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r3.o = me; + _r4.o = n1; + _r5.o = n2; + _r6.o = n3; + XMLVM_SOURCE_POSITION("Thread.java", 259) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.targetRunnable_ = _r5.o; + XMLVM_SOURCE_POSITION("Thread.java", 260) + _r0.l = java_lang_Thread_getNextThreadId__(); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadId_ = _r0.l; + XMLVM_SOURCE_POSITION("Thread.java", 262) + if (_r6.o != JAVA_NULL) goto label46; + XMLVM_SOURCE_POSITION("Thread.java", 263) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + // "Thread-" + _r1.o = xmlvm_create_java_string_from_pool(802); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(3) + _r1.l = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadId_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___long(_r0.o, _r1.l); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadName_ = _r0.o; + label33:; + XMLVM_SOURCE_POSITION("Thread.java", 268) + if (_r4.o != JAVA_NULL) goto label49; + XMLVM_SOURCE_POSITION("Thread.java", 270) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Thread_getThreadGroup__(_r0.o); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadGroup_ = _r0.o; + label45:; + XMLVM_SOURCE_POSITION("Thread.java", 274) + XMLVM_EXIT_METHOD() + return; + label46:; + XMLVM_SOURCE_POSITION("Thread.java", 265) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadName_ = _r6.o; + goto label33; + label49:; + XMLVM_SOURCE_POSITION("Thread.java", 272) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadGroup_ = _r4.o; + goto label45; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT___] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + _r2.i = 0; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Thread.java", 283) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.daemon_ = _r2.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.alive_ = _r2.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 284) + XMLVM_CHECK_NPE(3) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r3.o, _r1.o, _r1.o, _r1.o); + XMLVM_SOURCE_POSITION("Thread.java", 285) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____java_lang_Runnable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____java_lang_Runnable] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.o = JAVA_NULL; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 297) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 298) + XMLVM_CHECK_NPE(3) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r3.o, _r2.o, _r4.o, _r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 299) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____java_lang_Runnable_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____java_lang_Runnable_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 312) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 313) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(2) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r2.o, _r0.o, _r3.o, _r4.o); + XMLVM_SOURCE_POSITION("Thread.java", 314) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.o = JAVA_NULL; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 325) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 326) + XMLVM_CHECK_NPE(3) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r3.o, _r2.o, _r2.o, _r4.o); + XMLVM_SOURCE_POSITION("Thread.java", 327) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 345) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 346) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(2) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r2.o, _r3.o, _r4.o, _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 347) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable_java_lang_String_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_LONG n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable_java_lang_String_long] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r5.o = n3; + _r6.l = n4; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 367) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 368) + XMLVM_CHECK_NPE(2) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r2.o, _r3.o, _r4.o, _r5.o); + XMLVM_SOURCE_POSITION("Thread.java", 369) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r5.o = n3; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 388) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 389) + XMLVM_CHECK_NPE(2) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r2.o, _r3.o, _r4.o, _r5.o); + XMLVM_SOURCE_POSITION("Thread.java", 390) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 406) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 131) + _r0.i = 5; + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.priority_ = _r0.i; + XMLVM_SOURCE_POSITION("Thread.java", 132) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 133) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 137) + _r0.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 143) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadLocalMap_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 407) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(2) + java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(_r2.o, _r3.o, _r0.o, _r4.o); + XMLVM_SOURCE_POSITION("Thread.java", 408) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_setInterruptAction___java_lang_Runnable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_setInterruptAction___java_lang_Runnable] + XMLVM_ENTER_METHOD("java.lang.Thread", "setInterruptAction", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Thread.java", 423) + XMLVM_CHECK_NPE(0) + ((java_lang_Thread*) _r0.o)->fields.java_lang_Thread.action_ = _r1.o; + XMLVM_SOURCE_POSITION("Thread.java", 424) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_lang_Thread_activeCount__()] + +//XMLVM_NATIVE[void java_lang_Thread_checkAccess__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_INT java_lang_Thread_countStackFrames__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Thread_currentThread__() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_currentThread__] + XMLVM_ENTER_METHOD("java.lang.Thread", "currentThread", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("Thread.java", 466) + _r0.l = java_lang_Thread_getCurrentThreadNativeId__(); + _r0.o = java_lang_Thread_getThread___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG java_lang_Thread_getCurrentThreadNativeId__()] + +//XMLVM_NATIVE[void java_lang_Thread_destroy__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void java_lang_Thread_dumpStack__()] + +//XMLVM_NATIVE[JAVA_INT java_lang_Thread_enumerate___java_lang_Thread_1ARRAY(JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Thread_getAllStackTraces__()] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Thread_getContextClassLoader__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Thread_getDefaultUncaughtExceptionHandler__()] + +JAVA_LONG java_lang_Thread_getId__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getId__] + XMLVM_ENTER_METHOD("java.lang.Thread", "getId", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 566) + XMLVM_CHECK_NPE(2) + _r0.l = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadId_; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Thread_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getName__] + XMLVM_ENTER_METHOD("java.lang.Thread", "getName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 575) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.threadName_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Thread_getPriority__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getPriority__] + XMLVM_ENTER_METHOD("java.lang.Thread", "getPriority", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 585) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.priority_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Thread_getStackTrace__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Thread_getState__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getState__] + XMLVM_ENTER_METHOD("java.lang.Thread", "getState", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 612) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w5666aaac57b1b4) + // Begin try + _r0.o = java_lang_System_GET_out(); + // "Thread.getState() is not fully implemented. Specifically, you will not currently find BLOCKED, WAITING and TIMED_WAITING." + _r1.o = xmlvm_create_java_string_from_pool(803); + XMLVM_CHECK_NPE(0) + java_io_PrintStream_println___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Thread.java", 613) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac57b1b4) + XMLVM_CATCH_SPECIFIC(w5666aaac57b1b4,java_lang_Object,12) + XMLVM_CATCH_END(w5666aaac57b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac57b1b4) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label12:; + java_lang_Thread* curThread_w5666aaac57b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5666aaac57b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Thread_getThreadGroup__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getThreadGroup__] + XMLVM_ENTER_METHOD("java.lang.Thread", "getThreadGroup", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 622) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.threadGroup_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Thread_getThreadLocal___java_lang_ThreadLocal(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_getThreadLocal___java_lang_ThreadLocal] + XMLVM_ENTER_METHOD("java.lang.Thread", "getThreadLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Thread.java", 636) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.threadLocalMap_; + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object])(_r0.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Thread_getUncaughtExceptionHandler__(JAVA_OBJECT me)] + +void java_lang_Thread_interrupt__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_interrupt__] + XMLVM_ENTER_METHOD("java.lang.Thread", "interrupt", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 680) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.action_; + if (_r1.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("Thread.java", 681) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.action_; + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_Runnable_run__])(_r1.o); + label9:; + XMLVM_SOURCE_POSITION("Thread.java", 684) + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Thread.java", 685) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 686) + _r1.i = 1; + XMLVM_TRY_BEGIN(w5666aaac61b1c15) + // Begin try + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.interrupted_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 688) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.waitingCondition_; + if (_r1.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w5666aaac61b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac61b1c15, sizeof(XMLVM_JMP_BUF)); goto label20; }; + XMLVM_SOURCE_POSITION("Thread.java", 689) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.waitingCondition_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac61b1c15) + XMLVM_CATCH_SPECIFIC(w5666aaac61b1c15,java_lang_Object,31) + XMLVM_CATCH_END(w5666aaac61b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac61b1c15) + label20:; + XMLVM_TRY_BEGIN(w5666aaac61b1c17) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 691) + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac61b1c17) + XMLVM_CATCH_SPECIFIC(w5666aaac61b1c17,java_lang_Object,31) + XMLVM_CATCH_END(w5666aaac61b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac61b1c17) + XMLVM_SOURCE_POSITION("Thread.java", 695) + if (_r0.o == JAVA_NULL) goto label30; + XMLVM_SOURCE_POSITION("Thread.java", 696) + XMLVM_CHECK_NPE(0) + _r1.o = org_xmlvm_runtime_Condition_getSynchronizedObject__(_r0.o); + XMLVM_CHECK_NPE(1) + java_lang_Object_interruptWait___org_xmlvm_runtime_Condition(_r1.o, _r0.o); + label30:; + XMLVM_SOURCE_POSITION("Thread.java", 698) + XMLVM_EXIT_METHOD() + return; + label31:; + java_lang_Thread* curThread_w5666aaac61b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac61b1c27->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w5666aaac61b1c28) + // Begin try + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac61b1c28) + XMLVM_CATCH_SPECIFIC(w5666aaac61b1c28,java_lang_Object,31) + XMLVM_CATCH_END(w5666aaac61b1c28) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac61b1c28) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Thread_interrupted__() +{ + XMLVM_CLASS_INIT(java_lang_Thread) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_interrupted__] + XMLVM_ENTER_METHOD("java.lang.Thread", "interrupted", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + XMLVM_SOURCE_POSITION("Thread.java", 712) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 713) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_SOURCE_POSITION("Thread.java", 714) + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w5666aaac62b1b7) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 715) + XMLVM_CHECK_NPE(0) + _r1.i = java_lang_Thread_isInterrupted__(_r0.o); + _r2.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 716) + XMLVM_CHECK_NPE(0) + ((java_lang_Thread*) _r0.o)->fields.java_lang_Thread.interrupted_ = _r2.i; + XMLVM_SOURCE_POSITION("Thread.java", 717) + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 718) + XMLVM_MEMCPY(curThread_w5666aaac62b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac62b1b7, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac62b1b7) + XMLVM_CATCH_SPECIFIC(w5666aaac62b1b7,java_lang_Object,15) + XMLVM_CATCH_END(w5666aaac62b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac62b1b7) + label15:; + XMLVM_TRY_BEGIN(w5666aaac62b1b9) + // Begin try + java_lang_Thread* curThread_w5666aaac62b1b9aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w5666aaac62b1b9aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac62b1b9) + XMLVM_CATCH_SPECIFIC(w5666aaac62b1b9,java_lang_Object,15) + XMLVM_CATCH_END(w5666aaac62b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac62b1b9) + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Thread_isAlive__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_isAlive__] + XMLVM_ENTER_METHOD("java.lang.Thread", "isAlive", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 731) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w5666aaac63b1b4) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.alive_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac63b1b4) + XMLVM_CATCH_SPECIFIC(w5666aaac63b1b4,java_lang_Object,5) + XMLVM_CATCH_END(w5666aaac63b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac63b1b4) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label5:; + java_lang_Thread* curThread_w5666aaac63b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5666aaac63b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Thread_isDaemon__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_isDaemon__] + XMLVM_ENTER_METHOD("java.lang.Thread", "isDaemon", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 745) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w5666aaac64b1b4) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.daemon_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac64b1b4) + XMLVM_CATCH_SPECIFIC(w5666aaac64b1b4,java_lang_Object,5) + XMLVM_CATCH_END(w5666aaac64b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac64b1b4) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label5:; + java_lang_Thread* curThread_w5666aaac64b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5666aaac64b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_Thread_isInterrupted__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_isInterrupted__] + XMLVM_ENTER_METHOD("java.lang.Thread", "isInterrupted", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 758) + _r0.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 759) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w5666aaac65b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 760) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.interrupted_; + XMLVM_SOURCE_POSITION("Thread.java", 761) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 762) + XMLVM_MEMCPY(curThread_w5666aaac65b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac65b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r0.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac65b1b6) + XMLVM_CATCH_SPECIFIC(w5666aaac65b1b6,java_lang_Object,6) + XMLVM_CATCH_END(w5666aaac65b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac65b1b6) + label6:; + XMLVM_TRY_BEGIN(w5666aaac65b1b8) + // Begin try + java_lang_Thread* curThread_w5666aaac65b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac65b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac65b1b8) + XMLVM_CATCH_SPECIFIC(w5666aaac65b1b8,java_lang_Object,6) + XMLVM_CATCH_END(w5666aaac65b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac65b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_join__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_join__] + XMLVM_ENTER_METHOD("java.lang.Thread", "join", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 775) + _r0.l = 0; + XMLVM_CHECK_NPE(2) + java_lang_Thread_join___long(_r2.o, _r0.l); + XMLVM_SOURCE_POSITION("Thread.java", 776) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_join___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_join___long] + XMLVM_ENTER_METHOD("java.lang.Thread", "join", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + volatile XMLVMElem _r12; + volatile XMLVMElem _r13; + _r11.o = me; + _r12.l = n1; + _r9.l = 0; + XMLVM_SOURCE_POSITION("Thread.java", 790) + java_lang_Object_acquireLockRecursive__(_r11.o); + XMLVM_TRY_BEGIN(w5666aaac67b1b6) + // Begin try + _r0.l = java_lang_System_currentTimeMillis__(); + _r5.l = 0; + _r7.i = _r12.l > _r9.l ? 1 : (_r12.l == _r9.l ? 0 : -1); + if (_r7.i >= 0) { XMLVM_MEMCPY(curThread_w5666aaac67b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac67b1b6, sizeof(XMLVM_JMP_BUF)); goto label24; }; + XMLVM_SOURCE_POSITION("Thread.java", 793) + XMLVM_SOURCE_POSITION("Thread.java", 794) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "timeout value is negative" + _r8.o = xmlvm_create_java_string_from_pool(804); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac67b1b6) + XMLVM_CATCH_SPECIFIC(w5666aaac67b1b6,java_lang_Object,21) + XMLVM_CATCH_END(w5666aaac67b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac67b1b6) + label21:; + java_lang_Thread* curThread_w5666aaac67b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r7.o = curThread_w5666aaac67b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r11.o); + XMLVM_THROW_CUSTOM(_r7.o) + label24:; + XMLVM_SOURCE_POSITION("Thread.java", 797) + _r7.i = _r12.l > _r9.l ? 1 : (_r12.l == _r9.l ? 0 : -1); + if (_r7.i != 0) goto label38; + label28:; + XMLVM_TRY_BEGIN(w5666aaac67b1c16) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 798) + XMLVM_CHECK_NPE(11) + _r7.i = java_lang_Thread_isAlive__(_r11.o); + if (_r7.i == 0) { XMLVM_MEMCPY(curThread_w5666aaac67b1c16->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac67b1c16, sizeof(XMLVM_JMP_BUF)); goto label65; }; + XMLVM_SOURCE_POSITION("Thread.java", 800) + XMLVM_CHECK_NPE(11) + java_lang_Object_wait__(_r11.o); + { XMLVM_MEMCPY(curThread_w5666aaac67b1c16->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac67b1c16, sizeof(XMLVM_JMP_BUF)); goto label28; }; + XMLVM_SOURCE_POSITION("Thread.java", 803) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac67b1c16) + XMLVM_CATCH_SPECIFIC(w5666aaac67b1c16,java_lang_Object,21) + XMLVM_CATCH_END(w5666aaac67b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac67b1c16) + label38:; + XMLVM_TRY_BEGIN(w5666aaac67b1c18) + // Begin try + _r4.i = 0; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac67b1c18) + XMLVM_CATCH_SPECIFIC(w5666aaac67b1c18,java_lang_Object,21) + XMLVM_CATCH_END(w5666aaac67b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac67b1c18) + label39:; + XMLVM_TRY_BEGIN(w5666aaac67b1c20) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 804) + if (_r4.i != 0) { XMLVM_MEMCPY(curThread_w5666aaac67b1c20->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac67b1c20, sizeof(XMLVM_JMP_BUF)); goto label65; }; + XMLVM_CHECK_NPE(11) + _r7.i = java_lang_Thread_isAlive__(_r11.o); + if (_r7.i == 0) { XMLVM_MEMCPY(curThread_w5666aaac67b1c20->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac67b1c20, sizeof(XMLVM_JMP_BUF)); goto label65; }; + XMLVM_SOURCE_POSITION("Thread.java", 805) + _r2.l = _r12.l - _r5.l; + _r7.i = _r2.l > _r9.l ? 1 : (_r2.l == _r9.l ? 0 : -1); + if (_r7.i > 0) { XMLVM_MEMCPY(curThread_w5666aaac67b1c20->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac67b1c20, sizeof(XMLVM_JMP_BUF)); goto label55; }; + XMLVM_SOURCE_POSITION("Thread.java", 806) + XMLVM_SOURCE_POSITION("Thread.java", 807) + _r4.i = 1; + { XMLVM_MEMCPY(curThread_w5666aaac67b1c20->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac67b1c20, sizeof(XMLVM_JMP_BUF)); goto label39; }; + XMLVM_SOURCE_POSITION("Thread.java", 810) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac67b1c20) + XMLVM_CATCH_SPECIFIC(w5666aaac67b1c20,java_lang_Object,21) + XMLVM_CATCH_END(w5666aaac67b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac67b1c20) + label55:; + XMLVM_TRY_BEGIN(w5666aaac67b1c22) + // Begin try + XMLVM_CHECK_NPE(11) + java_lang_Object_wait___long(_r11.o, _r2.l); + XMLVM_SOURCE_POSITION("Thread.java", 811) + _r7.l = java_lang_System_currentTimeMillis__(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac67b1c22) + XMLVM_CATCH_SPECIFIC(w5666aaac67b1c22,java_lang_Object,21) + XMLVM_CATCH_END(w5666aaac67b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac67b1c22) + _r5.l = _r7.l - _r0.l; + goto label39; + label65:; + XMLVM_SOURCE_POSITION("Thread.java", 815) + java_lang_Object_releaseLockRecursive__(_r11.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_join___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2)] + +//XMLVM_NATIVE[void java_lang_Thread_resume__(JAVA_OBJECT me)] + +void java_lang_Thread_run0___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_run0___long] + XMLVM_ENTER_METHOD("java.lang.Thread", "run0", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r6.o = me; + _r7.l = n1; + // "Exception in thread \042" + _r5.o = xmlvm_create_java_string_from_pool(805); + // "\042 " + _r4.o = xmlvm_create_java_string_from_pool(806); + XMLVM_SOURCE_POSITION("Thread.java", 854) + XMLVM_CHECK_NPE(6) + ((java_lang_Thread*) _r6.o)->fields.java_lang_Thread.nativeThreadId_ = _r7.l; + XMLVM_SOURCE_POSITION("Thread.java", 855) + XMLVM_CHECK_NPE(6) + java_lang_Thread_addSelfToMap__(_r6.o); + XMLVM_SOURCE_POSITION("Thread.java", 857) + java_lang_Object_acquireLockRecursive__(_r6.o); + XMLVM_SOURCE_POSITION("Thread.java", 858) + _r1.i = 1; + XMLVM_TRY_BEGIN(w5666aaac70b1c13) + // Begin try + XMLVM_CHECK_NPE(6) + ((java_lang_Thread*) _r6.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 859) + java_lang_Object_releaseLockRecursive__(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac70b1c13) + XMLVM_CATCH_SPECIFIC(w5666aaac70b1c13,java_lang_Object,41) + XMLVM_CATCH_END(w5666aaac70b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac70b1c13) + XMLVM_TRY_BEGIN(w5666aaac70b1c14) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 862) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_Thread*) _r6.o)->fields.java_lang_Thread.targetRunnable_; + if (_r1.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w5666aaac70b1c14->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac70b1c14, sizeof(XMLVM_JMP_BUF)); goto label44; }; + XMLVM_SOURCE_POSITION("Thread.java", 863) + //java_lang_Thread_run__[6] + XMLVM_CHECK_NPE(6) + (*(void (*)(JAVA_OBJECT)) ((java_lang_Thread*) _r6.o)->tib->vtable[6])(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac70b1c14) + XMLVM_CATCH_SPECIFIC(w5666aaac70b1c14,java_lang_Throwable,50) + XMLVM_CATCH_END(w5666aaac70b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac70b1c14) + label21:; + XMLVM_SOURCE_POSITION("Thread.java", 877) + java_lang_Object_acquireLockRecursive__(_r6.o); + XMLVM_SOURCE_POSITION("Thread.java", 878) + _r1.i = 0; + XMLVM_TRY_BEGIN(w5666aaac70b1c20) + // Begin try + XMLVM_CHECK_NPE(6) + ((java_lang_Thread*) _r6.o)->fields.java_lang_Thread.alive_ = _r1.i; + XMLVM_SOURCE_POSITION("Thread.java", 881) + XMLVM_CHECK_NPE(6) + java_lang_Object_notifyAll__(_r6.o); + XMLVM_SOURCE_POSITION("Thread.java", 882) + java_lang_Object_releaseLockRecursive__(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac70b1c20) + XMLVM_CATCH_SPECIFIC(w5666aaac70b1c20,java_lang_Object,158) + XMLVM_CATCH_END(w5666aaac70b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac70b1c20) + XMLVM_SOURCE_POSITION("Thread.java", 884) + XMLVM_CHECK_NPE(6) + java_lang_Thread_removeSelfFromMap__(_r6.o); + XMLVM_SOURCE_POSITION("Thread.java", 886) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_Thread*) _r6.o)->fields.java_lang_Thread.threadGroup_; + XMLVM_CHECK_NPE(1) + java_lang_ThreadGroup_remove___java_lang_Thread(_r1.o, _r6.o); + XMLVM_SOURCE_POSITION("Thread.java", 888) + XMLVM_CHECK_NPE(6) + java_lang_Thread_threadTerminating__(_r6.o); + XMLVM_SOURCE_POSITION("Thread.java", 889) + XMLVM_EXIT_METHOD() + return; + label41:; + java_lang_Thread* curThread_w5666aaac70b1c31 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac70b1c31->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w5666aaac70b1c32) + // Begin try + java_lang_Object_releaseLockRecursive__(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac70b1c32) + XMLVM_CATCH_SPECIFIC(w5666aaac70b1c32,java_lang_Object,41) + XMLVM_CATCH_END(w5666aaac70b1c32) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac70b1c32) + XMLVM_THROW_CUSTOM(_r1.o) + label44:; + XMLVM_TRY_BEGIN(w5666aaac70b1c35) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 865) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_Thread*) _r6.o)->fields.java_lang_Thread.targetRunnable_; + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_Runnable_run__])(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac70b1c35) + XMLVM_CATCH_SPECIFIC(w5666aaac70b1c35,java_lang_Throwable,50) + XMLVM_CATCH_END(w5666aaac70b1c35) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac70b1c35) + goto label21; + label50:; + XMLVM_SOURCE_POSITION("Thread.java", 867) + java_lang_Thread* curThread_w5666aaac70b1c39 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac70b1c39->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Thread.java", 868) + _r1.i = java_lang_Thread_stackTracesEnabled__(); + if (_r1.i == 0) goto label96; + XMLVM_SOURCE_POSITION("Thread.java", 869) + _r1.o = java_lang_System_GET_out(); + _r2.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT___(_r2.o); + // "Exception in thread \042" + _r3.o = xmlvm_create_java_string_from_pool(805); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r5.o); + XMLVM_CHECK_NPE(6) + _r3.o = java_lang_Thread_getName__(_r6.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + // "\042 " + _r3.o = xmlvm_create_java_string_from_pool(806); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_print___java_lang_String(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 870) + XMLVM_CHECK_NPE(0) + java_lang_Throwable_printStackTrace__(_r0.o); + goto label21; + label96:; + XMLVM_SOURCE_POSITION("Thread.java", 872) + _r1.o = java_lang_System_GET_out(); + _r2.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT___(_r2.o); + // "Exception in thread \042" + _r3.o = xmlvm_create_java_string_from_pool(805); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r5.o); + XMLVM_CHECK_NPE(6) + _r3.o = java_lang_Thread_getName__(_r6.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + // "\042 " + _r3.o = xmlvm_create_java_string_from_pool(806); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r4.o); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[3])(_r0.o); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_Class_getName__(_r3.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + // ": " + _r3.o = xmlvm_create_java_string_from_pool(49); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + //java_lang_Throwable_getMessage__[7] + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r0.o)->tib->vtable[7])(_r0.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_CHECK_NPE(1) + java_io_PrintStream_println___java_lang_String(_r1.o, _r2.o); + goto label21; + label158:; + java_lang_Thread* curThread_w5666aaac70b1c81 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac70b1c81->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w5666aaac70b1c82) + // Begin try + java_lang_Object_releaseLockRecursive__(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac70b1c82) + XMLVM_CATCH_SPECIFIC(w5666aaac70b1c82,java_lang_Object,158) + XMLVM_CATCH_END(w5666aaac70b1c82) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac70b1c82) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Thread_stackTracesEnabled__()] + +void java_lang_Thread_threadTerminating__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_threadTerminating__] + XMLVM_ENTER_METHOD("java.lang.Thread", "threadTerminating", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 894) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w5666aaac72b1b4) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 895) + _r0.o = java_lang_Thread_State_GET_TERMINATED(); + XMLVM_CHECK_NPE(3) + ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadState_ = _r0.o; + XMLVM_SOURCE_POSITION("Thread.java", 896) + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac72b1b4) + XMLVM_CATCH_SPECIFIC(w5666aaac72b1b4,java_lang_Object,29) + XMLVM_CATCH_END(w5666aaac72b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac72b1b4) + XMLVM_SOURCE_POSITION("Thread.java", 900) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.daemon_; + if (_r0.i != 0) goto label28; + XMLVM_SOURCE_POSITION("Thread.java", 901) + XMLVM_CLASS_INIT(java_lang_Thread) + _r0.o = __CLASS_java_lang_Thread; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w5666aaac72b1c11) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 902) + _r1.i = java_lang_Thread_GET_numberOfActiveNonDaemonThreads(); + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + java_lang_Thread_PUT_numberOfActiveNonDaemonThreads( _r1.i); + XMLVM_SOURCE_POSITION("Thread.java", 904) + _r1.i = java_lang_Thread_GET_numberOfActiveNonDaemonThreads(); + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w5666aaac72b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac72b1c11, sizeof(XMLVM_JMP_BUF)); goto label27; }; + XMLVM_SOURCE_POSITION("Thread.java", 905) + _r1.i = 0; + java_lang_System_exit___int(_r1.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac72b1c11) + XMLVM_CATCH_SPECIFIC(w5666aaac72b1c11,java_lang_Object,32) + XMLVM_CATCH_END(w5666aaac72b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac72b1c11) + label27:; + XMLVM_TRY_BEGIN(w5666aaac72b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 907) + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac72b1c13) + XMLVM_CATCH_SPECIFIC(w5666aaac72b1c13,java_lang_Object,32) + XMLVM_CATCH_END(w5666aaac72b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac72b1c13) + label28:; + XMLVM_SOURCE_POSITION("Thread.java", 909) + XMLVM_EXIT_METHOD() + return; + label29:; + java_lang_Thread* curThread_w5666aaac72b1c18 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5666aaac72b1c18->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w5666aaac72b1c19) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac72b1c19) + XMLVM_CATCH_SPECIFIC(w5666aaac72b1c19,java_lang_Object,29) + XMLVM_CATCH_END(w5666aaac72b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac72b1c19) + XMLVM_THROW_CUSTOM(_r0.o) + label32:; + java_lang_Thread* curThread_w5666aaac72b1c22 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac72b1c22->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w5666aaac72b1c23) + // Begin try + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac72b1c23) + XMLVM_CATCH_SPECIFIC(w5666aaac72b1c23,java_lang_Object,32) + XMLVM_CATCH_END(w5666aaac72b1c23) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac72b1c23) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_run__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_run__] + XMLVM_ENTER_METHOD("java.lang.Thread", "run", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 919) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_setContextClassLoader___java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1)] + +void java_lang_Thread_setDaemon___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_setDaemon___boolean] + XMLVM_ENTER_METHOD("java.lang.Thread", "setDaemon", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("Thread.java", 946) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w5666aaac75b1b5) + // Begin try + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_; + _r1.o = java_lang_Thread_State_GET_NEW(); + if (_r0.o == _r1.o) { XMLVM_MEMCPY(curThread_w5666aaac75b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac75b1b5, sizeof(XMLVM_JMP_BUF)); goto label16; }; + XMLVM_SOURCE_POSITION("Thread.java", 947) + + + // Red class access removed: java.lang.IllegalThreadStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalThreadStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac75b1b5) + XMLVM_CATCH_SPECIFIC(w5666aaac75b1b5,java_lang_Object,13) + XMLVM_CATCH_END(w5666aaac75b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac75b1b5) + label13:; + java_lang_Thread* curThread_w5666aaac75b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5666aaac75b1b7->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_TRY_BEGIN(w5666aaac75b1c11) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 949) + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_ = _r3.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac75b1c11) + XMLVM_CATCH_SPECIFIC(w5666aaac75b1c11,java_lang_Object,13) + XMLVM_CATCH_END(w5666aaac75b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac75b1c11) + XMLVM_SOURCE_POSITION("Thread.java", 950) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_setDefaultUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler(JAVA_OBJECT n1)] + +void java_lang_Thread_setName___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_setName___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Thread", "setName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Thread.java", 977) + XMLVM_CHECK_NPE(0) + ((java_lang_Thread*) _r0.o)->fields.java_lang_Thread.threadName_ = _r1.o; + XMLVM_SOURCE_POSITION("Thread.java", 978) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_setPriority___int(JAVA_OBJECT me, JAVA_INT n1)] + +void java_lang_Thread_setThreadLocal___java_lang_ThreadLocal_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_setThreadLocal___java_lang_ThreadLocal_java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.Thread", "setThreadLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Thread.java", 1008) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.threadLocalMap_; + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object])(_r0.o, _r2.o, _r3.o); + XMLVM_SOURCE_POSITION("Thread.java", 1009) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_setUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler(JAVA_OBJECT me, JAVA_OBJECT n1)] + +void java_lang_Thread_sleep___long(JAVA_LONG n1) +{ + XMLVM_CLASS_INIT(java_lang_Thread) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_sleep___long] + XMLVM_ENTER_METHOD("java.lang.Thread", "sleep", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.l = n1; + XMLVM_SOURCE_POSITION("Thread.java", 1037) + _r1.l = 0; + _r1.i = _r3.l > _r1.l ? 1 : (_r3.l == _r1.l ? 0 : -1); + if (_r1.i == 0) goto label16; + XMLVM_SOURCE_POSITION("Thread.java", 1038) + _r0.o = __NEW_java_lang_Object(); + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 1039) + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w5666aaac81b1c11) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 1040) + XMLVM_CHECK_NPE(0) + java_lang_Object_wait___long(_r0.o, _r3.l); + XMLVM_SOURCE_POSITION("Thread.java", 1041) + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac81b1c11) + XMLVM_CATCH_SPECIFIC(w5666aaac81b1c11,java_lang_Object,17) + XMLVM_CATCH_END(w5666aaac81b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac81b1c11) + label16:; + XMLVM_TRY_BEGIN(w5666aaac81b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 1043) + XMLVM_MEMCPY(curThread_w5666aaac81b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac81b1c13, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac81b1c13) + XMLVM_CATCH_SPECIFIC(w5666aaac81b1c13,java_lang_Object,17) + XMLVM_CATCH_END(w5666aaac81b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac81b1c13) + label17:; + XMLVM_TRY_BEGIN(w5666aaac81b1c15) + // Begin try + java_lang_Thread* curThread_w5666aaac81b1c15aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac81b1c15aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac81b1c15) + XMLVM_CATCH_SPECIFIC(w5666aaac81b1c15,java_lang_Object,17) + XMLVM_CATCH_END(w5666aaac81b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac81b1c15) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_sleep___long_int(JAVA_LONG n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_lang_Thread) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_sleep___long_int] + XMLVM_ENTER_METHOD("java.lang.Thread", "sleep", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.l = n1; + _r7.i = n2; + _r3.l = 1; + _r1.l = 0; + XMLVM_SOURCE_POSITION("Thread.java", 1060) + _r0.i = _r5.l > _r1.l ? 1 : (_r5.l == _r1.l ? 0 : -1); + if (_r0.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("Thread.java", 1061) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "sleep milliseconds must be greater than or equal to zero" + _r1.o = xmlvm_create_java_string_from_pool(807); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("Thread.java", 1062) + if (_r7.i < 0) goto label23; + _r0.i = 1000000; + if (_r7.i < _r0.i) goto label31; + label23:; + XMLVM_SOURCE_POSITION("Thread.java", 1063) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "sleep nanoseconds must be greater than or equal to zero and less than 1000000" + _r1.o = xmlvm_create_java_string_from_pool(808); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + XMLVM_SOURCE_POSITION("Thread.java", 1066) + _r0.i = _r5.l > _r1.l ? 1 : (_r5.l == _r1.l ? 0 : -1); + if (_r0.i != 0) goto label41; + if (_r7.i == 0) goto label41; + XMLVM_SOURCE_POSITION("Thread.java", 1067) + java_lang_Thread_sleep___long(_r3.l); + label40:; + XMLVM_SOURCE_POSITION("Thread.java", 1074) + XMLVM_EXIT_METHOD() + return; + label41:; + XMLVM_SOURCE_POSITION("Thread.java", 1069) + _r0.i = 500000; + if (_r7.i < _r0.i) goto label47; + XMLVM_SOURCE_POSITION("Thread.java", 1070) + _r5.l = _r5.l + _r3.l; + label47:; + XMLVM_SOURCE_POSITION("Thread.java", 1072) + java_lang_Thread_sleep___long(_r5.l); + goto label40; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_start__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_start__] + XMLVM_ENTER_METHOD("java.lang.Thread", "start", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Thread.java", 1085) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w5666aaac83b1b4) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 1086) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_; + _r1.o = java_lang_Thread_State_GET_NEW(); + if (_r0.o == _r1.o) { XMLVM_MEMCPY(curThread_w5666aaac83b1b4->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac83b1b4, sizeof(XMLVM_JMP_BUF)); goto label16; }; + XMLVM_SOURCE_POSITION("Thread.java", 1087) + + + // Red class access removed: java.lang.IllegalThreadStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalThreadStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac83b1b4) + XMLVM_CATCH_SPECIFIC(w5666aaac83b1b4,java_lang_Object,13) + XMLVM_CATCH_END(w5666aaac83b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac83b1b4) + label13:; + XMLVM_TRY_BEGIN(w5666aaac83b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 1090) + java_lang_Thread* curThread_w5666aaac83b1b6ab1 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5666aaac83b1b6ab1->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac83b1b6) + XMLVM_CATCH_SPECIFIC(w5666aaac83b1b6,java_lang_Object,13) + XMLVM_CATCH_END(w5666aaac83b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac83b1b6) + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_TRY_BEGIN(w5666aaac83b1b9) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 1089) + _r0.o = java_lang_Thread_State_GET_RUNNABLE(); + XMLVM_CHECK_NPE(2) + ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadState_ = _r0.o; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac83b1b9) + XMLVM_CATCH_SPECIFIC(w5666aaac83b1b9,java_lang_Object,13) + XMLVM_CATCH_END(w5666aaac83b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac83b1b9) + XMLVM_SOURCE_POSITION("Thread.java", 1094) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.daemon_; + if (_r0.i != 0) goto label35; + XMLVM_SOURCE_POSITION("Thread.java", 1095) + XMLVM_CLASS_INIT(java_lang_Thread) + _r0.o = __CLASS_java_lang_Thread; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w5666aaac83b1c16) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 1096) + _r1.i = java_lang_Thread_GET_numberOfActiveNonDaemonThreads(); + _r1.i = _r1.i + 1; + java_lang_Thread_PUT_numberOfActiveNonDaemonThreads( _r1.i); + XMLVM_SOURCE_POSITION("Thread.java", 1097) + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac83b1c16) + XMLVM_CATCH_SPECIFIC(w5666aaac83b1c16,java_lang_Object,44) + XMLVM_CATCH_END(w5666aaac83b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac83b1c16) + label35:; + XMLVM_SOURCE_POSITION("Thread.java", 1099) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Thread*) _r2.o)->fields.java_lang_Thread.threadGroup_; + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_add___java_lang_Thread(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 1100) + XMLVM_CHECK_NPE(2) + java_lang_Thread_start0__(_r2.o); + XMLVM_SOURCE_POSITION("Thread.java", 1101) + XMLVM_EXIT_METHOD() + return; + label44:; + java_lang_Thread* curThread_w5666aaac83b1c26 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5666aaac83b1c26->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w5666aaac83b1c27) + // Begin try + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac83b1c27) + XMLVM_CATCH_SPECIFIC(w5666aaac83b1c27,java_lang_Object,44) + XMLVM_CATCH_END(w5666aaac83b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac83b1c27) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_start0__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void java_lang_Thread_stop__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void java_lang_Thread_stop___java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[void java_lang_Thread_suspend__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Thread_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_toString__] + XMLVM_ENTER_METHOD("java.lang.Thread", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + // "," + _r2.o = xmlvm_create_java_string_from_pool(24); + XMLVM_SOURCE_POSITION("Thread.java", 1158) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + // "Thread[" + _r1.o = xmlvm_create_java_string_from_pool(809); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadName_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "," + _r1.o = xmlvm_create_java_string_from_pool(24); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.priority_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___int(_r0.o, _r1.i); + // "," + _r1.o = xmlvm_create_java_string_from_pool(24); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadGroup_; + if (_r1.o != JAVA_NULL) goto label58; + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + label43:; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "]" + _r1.o = xmlvm_create_java_string_from_pool(183); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label58:; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_Thread*) _r3.o)->fields.java_lang_Thread.threadGroup_; + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_ThreadGroup_getName__(_r1.o); + goto label43; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_Thread_yield__()] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Thread_holdsLock___java_lang_Object(JAVA_OBJECT n1)] + +void java_lang_Thread_setWaitingCondition___org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_setWaitingCondition___org_xmlvm_runtime_Condition] + XMLVM_ENTER_METHOD("java.lang.Thread", "setWaitingCondition", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Thread.java", 1201) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w5666aaac91b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Thread.java", 1202) + XMLVM_CHECK_NPE(1) + ((java_lang_Thread*) _r1.o)->fields.java_lang_Thread.waitingCondition_ = _r2.o; + XMLVM_SOURCE_POSITION("Thread.java", 1203) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("Thread.java", 1204) + XMLVM_MEMCPY(curThread_w5666aaac91b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w5666aaac91b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac91b1b5) + XMLVM_CATCH_SPECIFIC(w5666aaac91b1b5,java_lang_Object,5) + XMLVM_CATCH_END(w5666aaac91b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac91b1b5) + label5:; + XMLVM_TRY_BEGIN(w5666aaac91b1b7) + // Begin try + java_lang_Thread* curThread_w5666aaac91b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5666aaac91b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5666aaac91b1b7) + XMLVM_CATCH_SPECIFIC(w5666aaac91b1b7,java_lang_Object,5) + XMLVM_CATCH_END(w5666aaac91b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w5666aaac91b1b7) + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_lang_Thread___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Thread", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("Thread.java", 115) + _r0.o = __NEW_org_xmlvm_runtime_Mutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex___INIT___(_r0.o); + java_lang_Thread_PUT_threadSafetyMutex( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 118) + _r0.l = 2; + java_lang_Thread_PUT_nextThreadId( _r0.l); + XMLVM_SOURCE_POSITION("Thread.java", 127) + _r0.i = 1; + java_lang_Thread_PUT_numberOfActiveNonDaemonThreads( _r0.i); + XMLVM_SOURCE_POSITION("Thread.java", 148) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + java_lang_Thread_PUT_threadMap( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 153) + _r1.o = __NEW_java_lang_ThreadGroup(); + _r0.o = JAVA_NULL; + _r0.o = _r0.o; + XMLVM_CHECK_NPE(1) + java_lang_ThreadGroup___INIT____java_lang_ThreadGroup(_r1.o, _r0.o); + java_lang_Thread_PUT_mainThreadGroup( _r1.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Thread.h b/tests/nbody-java/java_lang_Thread.h new file mode 100644 index 0000000000000..c650168d13fe0 --- /dev/null +++ b/tests/nbody-java/java_lang_Thread.h @@ -0,0 +1,223 @@ +#ifndef __JAVA_LANG_THREAD__ +#define __JAVA_LANG_THREAD__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Thread 1 +// Implemented interfaces: +#include "java_lang_Runnable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +XMLVM_FORWARD_DECL(java_io_PrintStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader +#define XMLVM_FORWARD_DECL_java_lang_ClassLoader +XMLVM_FORWARD_DECL(java_lang_ClassLoader) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StackTraceElement +#define XMLVM_FORWARD_DECL_java_lang_StackTraceElement +XMLVM_FORWARD_DECL(java_lang_StackTraceElement) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread_State +#define XMLVM_FORWARD_DECL_java_lang_Thread_State +XMLVM_FORWARD_DECL(java_lang_Thread_State) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread_UncaughtExceptionHandler +#define XMLVM_FORWARD_DECL_java_lang_Thread_UncaughtExceptionHandler +XMLVM_FORWARD_DECL(java_lang_Thread_UncaughtExceptionHandler) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup +XMLVM_FORWARD_DECL(java_lang_ThreadGroup) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap +#define XMLVM_FORWARD_DECL_java_util_HashMap +XMLVM_FORWARD_DECL(java_util_HashMap) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map +#define XMLVM_FORWARD_DECL_java_util_Map +XMLVM_FORWARD_DECL(java_util_Map) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Condition) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Mutex) +#endif +// Class declarations for java.lang.Thread +XMLVM_DEFINE_CLASS(java_lang_Thread, 7, XMLVM_ITABLE_SIZE_java_lang_Thread) + +extern JAVA_OBJECT __CLASS_java_lang_Thread; +extern JAVA_OBJECT __CLASS_java_lang_Thread_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Thread_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Thread_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Thread +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Thread \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT xmlvmExceptionEnv_; \ + JAVA_OBJECT xmlvmException_; \ + JAVA_OBJECT ptBuffers_; \ + JAVA_LONG threadId_; \ + JAVA_OBJECT threadName_; \ + JAVA_INT priority_; \ + JAVA_BOOLEAN daemon_; \ + JAVA_BOOLEAN alive_; \ + JAVA_OBJECT targetRunnable_; \ + JAVA_OBJECT threadGroup_; \ + JAVA_OBJECT threadState_; \ + JAVA_BOOLEAN interrupted_; \ + JAVA_OBJECT waitingCondition_; \ + JAVA_OBJECT threadLocalMap_; \ + JAVA_LONG nativeThreadId_; \ + JAVA_OBJECT action_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Thread \ + } java_lang_Thread + +struct java_lang_Thread { + __TIB_DEFINITION_java_lang_Thread* tib; + struct { + __INSTANCE_FIELDS_java_lang_Thread; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +typedef struct java_lang_Thread java_lang_Thread; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Thread 7 +#define XMLVM_VTABLE_IDX_java_lang_Thread_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_Thread_run__ 6 +#define XMLVM_VTABLE_IDX_java_lang_Thread_toString__ 5 + +void __INIT_java_lang_Thread(); +void __INIT_IMPL_java_lang_Thread(); +void __DELETE_java_lang_Thread(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Thread(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Thread(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Thread(); +void xmlvm_init_native_java_lang_Thread(); +JAVA_OBJECT java_lang_Thread_GET_threadSafetyMutex(); +void java_lang_Thread_PUT_threadSafetyMutex(JAVA_OBJECT v); +JAVA_LONG java_lang_Thread_GET_nextThreadId(); +void java_lang_Thread_PUT_nextThreadId(JAVA_LONG v); +JAVA_INT java_lang_Thread_GET_numberOfActiveNonDaemonThreads(); +void java_lang_Thread_PUT_numberOfActiveNonDaemonThreads(JAVA_INT v); +JAVA_OBJECT java_lang_Thread_GET_threadMap(); +void java_lang_Thread_PUT_threadMap(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_GET_mainThreadGroup(); +void java_lang_Thread_PUT_mainThreadGroup(JAVA_OBJECT v); +JAVA_INT java_lang_Thread_GET_MAX_PRIORITY(); +void java_lang_Thread_PUT_MAX_PRIORITY(JAVA_INT v); +JAVA_INT java_lang_Thread_GET_MIN_PRIORITY(); +void java_lang_Thread_PUT_MIN_PRIORITY(JAVA_INT v); +JAVA_INT java_lang_Thread_GET_NORM_PRIORITY(); +void java_lang_Thread_PUT_NORM_PRIORITY(JAVA_INT v); +JAVA_LONG java_lang_Thread_getNextThreadId__(); +void java_lang_Thread_addSelfToMap__(JAVA_OBJECT me); +void java_lang_Thread_removeSelfFromMap__(JAVA_OBJECT me); +JAVA_LONG java_lang_Thread_getNativeThreadId__(JAVA_OBJECT me); +void java_lang_Thread___INIT____long(JAVA_OBJECT me, JAVA_LONG n1); +void java_lang_Thread_initMainThread__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_getThread___long(JAVA_LONG n1); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_Thread_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread_initThread___java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +void java_lang_Thread___INIT___(JAVA_OBJECT me); +void java_lang_Thread___INIT____java_lang_Runnable(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread___INIT____java_lang_Runnable_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_Thread___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable_java_lang_String_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_LONG n4); +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_Runnable_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +void java_lang_Thread___INIT____java_lang_ThreadGroup_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_Thread_setInterruptAction___java_lang_Runnable(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_Thread_activeCount__(); +void java_lang_Thread_checkAccess__(JAVA_OBJECT me); +JAVA_INT java_lang_Thread_countStackFrames__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_currentThread__(); +JAVA_LONG java_lang_Thread_getCurrentThreadNativeId__(); +void java_lang_Thread_destroy__(JAVA_OBJECT me); +void java_lang_Thread_dumpStack__(); +JAVA_INT java_lang_Thread_enumerate___java_lang_Thread_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Thread_getAllStackTraces__(); +JAVA_OBJECT java_lang_Thread_getContextClassLoader__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_getDefaultUncaughtExceptionHandler__(); +JAVA_LONG java_lang_Thread_getId__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_getName__(JAVA_OBJECT me); +JAVA_INT java_lang_Thread_getPriority__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_getStackTrace__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_getState__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_getThreadGroup__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Thread_getThreadLocal___java_lang_ThreadLocal(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Thread_getUncaughtExceptionHandler__(JAVA_OBJECT me); +void java_lang_Thread_interrupt__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Thread_interrupted__(); +JAVA_BOOLEAN java_lang_Thread_isAlive__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Thread_isDaemon__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_Thread_isInterrupted__(JAVA_OBJECT me); +void java_lang_Thread_join__(JAVA_OBJECT me); +void java_lang_Thread_join___long(JAVA_OBJECT me, JAVA_LONG n1); +void java_lang_Thread_join___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2); +void java_lang_Thread_resume__(JAVA_OBJECT me); +void java_lang_Thread_run0___long(JAVA_OBJECT me, JAVA_LONG n1); +JAVA_BOOLEAN java_lang_Thread_stackTracesEnabled__(); +void java_lang_Thread_threadTerminating__(JAVA_OBJECT me); +// Vtable index: 6 +void java_lang_Thread_run__(JAVA_OBJECT me); +void java_lang_Thread_setContextClassLoader___java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread_setDaemon___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void java_lang_Thread_setDefaultUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler(JAVA_OBJECT n1); +void java_lang_Thread_setName___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread_setPriority___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_Thread_setThreadLocal___java_lang_ThreadLocal_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_Thread_setUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread_sleep___long(JAVA_LONG n1); +void java_lang_Thread_sleep___long_int(JAVA_LONG n1, JAVA_INT n2); +void java_lang_Thread_start__(JAVA_OBJECT me); +void java_lang_Thread_start0__(JAVA_OBJECT me); +void java_lang_Thread_stop__(JAVA_OBJECT me); +void java_lang_Thread_stop___java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread_suspend__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_Thread_toString__(JAVA_OBJECT me); +void java_lang_Thread_yield__(); +JAVA_BOOLEAN java_lang_Thread_holdsLock___java_lang_Object(JAVA_OBJECT n1); +void java_lang_Thread_setWaitingCondition___org_xmlvm_runtime_Condition(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Thread___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_ThreadGroup.c b/tests/nbody-java/java_lang_ThreadGroup.c new file mode 100644 index 0000000000000..a2114c92e987a --- /dev/null +++ b/tests/nbody-java/java_lang_ThreadGroup.c @@ -0,0 +1,2821 @@ +#include "xmlvm.h" +#include "java_io_PrintStream.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_SecurityManager.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_lang_Thread.h" +#include "java_lang_ThreadGroup_ChildrenGroupsLock.h" +#include "java_lang_ThreadGroup_ChildrenThreadsLock.h" +#include "java_lang_Throwable.h" + +#include "java_lang_ThreadGroup.h" + +#define XMLVM_CURRENT_CLASS_NAME ThreadGroup +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ThreadGroup + +__TIB_DEFINITION_java_lang_ThreadGroup __TIB_java_lang_ThreadGroup = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ThreadGroup, // classInitializer + "java.lang.ThreadGroup", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_ThreadGroup), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ThreadGroup; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ThreadGroup() +{ + staticInitializerLock(&__TIB_java_lang_ThreadGroup); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ThreadGroup.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ThreadGroup.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ThreadGroup); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ThreadGroup.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ThreadGroup.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ThreadGroup.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ThreadGroup") + __INIT_IMPL_java_lang_ThreadGroup(); + } +} + +void __INIT_IMPL_java_lang_ThreadGroup() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_ThreadGroup.newInstanceFunc = __NEW_INSTANCE_java_lang_ThreadGroup; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ThreadGroup.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_ThreadGroup.vtable[5] = (VTABLE_PTR) &java_lang_ThreadGroup_toString__; + __TIB_java_lang_ThreadGroup.vtable[6] = (VTABLE_PTR) &java_lang_ThreadGroup_uncaughtException___java_lang_Thread_java_lang_Throwable; + // Initialize interface information + __TIB_java_lang_ThreadGroup.numImplementedInterfaces = 1; + __TIB_java_lang_ThreadGroup.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Thread_UncaughtExceptionHandler) + + __TIB_java_lang_ThreadGroup.implementedInterfaces[0][0] = &__TIB_java_lang_Thread_UncaughtExceptionHandler; + // Initialize itable for this class + __TIB_java_lang_ThreadGroup.itableBegin = &__TIB_java_lang_ThreadGroup.itable[0]; + __TIB_java_lang_ThreadGroup.itable[XMLVM_ITABLE_IDX_java_lang_Thread_UncaughtExceptionHandler_uncaughtException___java_lang_Thread_java_lang_Throwable] = __TIB_java_lang_ThreadGroup.vtable[6]; + + + __TIB_java_lang_ThreadGroup.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ThreadGroup.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ThreadGroup.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ThreadGroup.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ThreadGroup.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ThreadGroup.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ThreadGroup.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ThreadGroup.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ThreadGroup = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ThreadGroup); + __TIB_java_lang_ThreadGroup.clazz = __CLASS_java_lang_ThreadGroup; + __TIB_java_lang_ThreadGroup.baseType = JAVA_NULL; + __CLASS_java_lang_ThreadGroup_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup); + __CLASS_java_lang_ThreadGroup_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_1ARRAY); + __CLASS_java_lang_ThreadGroup_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ThreadGroup] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ThreadGroup.classInitialized = 1; +} + +void __DELETE_java_lang_ThreadGroup(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ThreadGroup] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.name_ = (java_lang_String*) JAVA_NULL; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.maxPriority_ = 0; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.parent_ = (java_lang_ThreadGroup*) JAVA_NULL; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.numThreads_ = 0; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.childrenThreads_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.numGroups_ = 0; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.childrenGroups_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.childrenGroupsLock_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.childrenThreadsLock_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.isDaemon_ = 0; + ((java_lang_ThreadGroup*) me)->fields.java_lang_ThreadGroup.isDestroyed_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ThreadGroup() +{ XMLVM_CLASS_INIT(java_lang_ThreadGroup) +java_lang_ThreadGroup* me = (java_lang_ThreadGroup*) XMLVM_MALLOC(sizeof(java_lang_ThreadGroup)); + me->tib = &__TIB_java_lang_ThreadGroup; + __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ThreadGroup] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ThreadGroup() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_ThreadGroup___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup___INIT___] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 84) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 50) + _r0.i = 10; + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.maxPriority_ = _r0.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 58) + _r0.i = 5; + XMLVM_CLASS_INIT(java_lang_Thread) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Thread, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenThreads_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 64) + _r0.i = 3; + XMLVM_CLASS_INIT(java_lang_ThreadGroup) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_ThreadGroup, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenGroups_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 68) + _r0.o = __NEW_java_lang_ThreadGroup_ChildrenGroupsLock(); + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(_r0.o, _r2.o, _r1.o); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 72) + _r0.o = __NEW_java_lang_ThreadGroup_ChildrenThreadsLock(); + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(_r0.o, _r2.o, _r1.o); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 85) + // "system" + _r0.o = xmlvm_create_java_string_from_pool(662); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.name_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 86) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 102) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Thread_getThreadGroup__(_r0.o); + XMLVM_CHECK_NPE(1) + java_lang_ThreadGroup___INIT____java_lang_ThreadGroup_java_lang_String(_r1.o, _r0.o, _r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 103) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup___INIT____java_lang_ThreadGroup_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup___INIT____java_lang_ThreadGroup_java_lang_String] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 120) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 50) + _r0.i = 10; + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.maxPriority_ = _r0.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 58) + _r0.i = 5; + XMLVM_CLASS_INIT(java_lang_Thread) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Thread, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenThreads_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 64) + _r0.i = 3; + XMLVM_CLASS_INIT(java_lang_ThreadGroup) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_ThreadGroup, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenGroups_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 68) + _r0.o = __NEW_java_lang_ThreadGroup_ChildrenGroupsLock(); + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(_r0.o, _r2.o, _r1.o); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 72) + _r0.o = __NEW_java_lang_ThreadGroup_ChildrenThreadsLock(); + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(_r0.o, _r2.o, _r1.o); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 121) + _r0.o = java_lang_Thread_currentThread__(); + if (_r0.o == JAVA_NULL) goto label49; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 124) + if (_r3.o != JAVA_NULL) goto label46; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 130) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label46:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 132) + XMLVM_CHECK_NPE(3) + java_lang_ThreadGroup_checkAccess__(_r3.o); + label49:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 136) + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.name_ = _r4.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 137) + XMLVM_CHECK_NPE(2) + java_lang_ThreadGroup_setParent___java_lang_ThreadGroup(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 138) + if (_r3.o == JAVA_NULL) goto label73; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 139) + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_ThreadGroup_getMaxPriority__(_r3.o); + XMLVM_CHECK_NPE(2) + java_lang_ThreadGroup_setMaxPriority___int(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 140) + XMLVM_CHECK_NPE(3) + _r0.i = java_lang_ThreadGroup_isDaemon__(_r3.o); + if (_r0.i == 0) goto label73; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 141) + _r0.i = 1; + XMLVM_CHECK_NPE(2) + java_lang_ThreadGroup_setDaemon___boolean(_r2.o, _r0.i); + label73:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 144) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup___INIT____java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup___INIT____java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 149) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 50) + _r0.i = 10; + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.maxPriority_ = _r0.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 58) + _r0.i = 5; + XMLVM_CLASS_INIT(java_lang_Thread) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Thread, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenThreads_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 64) + _r0.i = 3; + XMLVM_CLASS_INIT(java_lang_ThreadGroup) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_ThreadGroup, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenGroups_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 68) + _r0.o = __NEW_java_lang_ThreadGroup_ChildrenGroupsLock(); + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(_r0.o, _r2.o, _r1.o); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 72) + _r0.o = __NEW_java_lang_ThreadGroup_ChildrenThreadsLock(); + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(_r0.o, _r2.o, _r1.o); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 150) + // "main" + _r0.o = xmlvm_create_java_string_from_pool(663); + XMLVM_CHECK_NPE(2) + ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.name_ = _r0.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 151) + XMLVM_CHECK_NPE(2) + java_lang_ThreadGroup_setParent___java_lang_ThreadGroup(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 152) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_activeCount__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_activeCount__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "activeCount", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 161) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.numThreads_; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 163) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 164) + _r1.i = 0; + label6:; + XMLVM_TRY_BEGIN(w3933aaac15b1c10) + // Begin try + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r1.i >= _r3.i) { XMLVM_MEMCPY(curThread_w3933aaac15b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac15b1c10, sizeof(XMLVM_JMP_BUF)); goto label22; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 165) + XMLVM_CHECK_NPE(4) + _r3.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(3) + _r3.i = java_lang_ThreadGroup_activeCount__(_r3.o); + _r0.i = _r0.i + _r3.i; + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac15b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac15b1c10, sizeof(XMLVM_JMP_BUF)); goto label6; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 167) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac15b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac15b1c10,java_lang_Object,24) + XMLVM_CATCH_END(w3933aaac15b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac15b1c10) + label22:; + XMLVM_TRY_BEGIN(w3933aaac15b1c12) + // Begin try + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 168) + XMLVM_MEMCPY(curThread_w3933aaac15b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac15b1c12, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r0.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac15b1c12) + XMLVM_CATCH_SPECIFIC(w3933aaac15b1c12,java_lang_Object,24) + XMLVM_CATCH_END(w3933aaac15b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac15b1c12) + label24:; + XMLVM_TRY_BEGIN(w3933aaac15b1c14) + // Begin try + java_lang_Thread* curThread_w3933aaac15b1c14aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3933aaac15b1c14aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac15b1c14) + XMLVM_CATCH_SPECIFIC(w3933aaac15b1c14,java_lang_Object,24) + XMLVM_CATCH_END(w3933aaac15b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac15b1c14) + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_activeGroupCount__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_activeGroupCount__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "activeGroupCount", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 178) + _r0.i = 0; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 180) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 181) + _r1.i = 0; + label5:; + XMLVM_TRY_BEGIN(w3933aaac16b1c10) + // Begin try + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r1.i >= _r3.i) { XMLVM_MEMCPY(curThread_w3933aaac16b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac16b1c10, sizeof(XMLVM_JMP_BUF)); goto label23; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 183) + XMLVM_CHECK_NPE(4) + _r3.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(3) + _r3.i = java_lang_ThreadGroup_activeGroupCount__(_r3.o); + _r3.i = _r3.i + 1; + _r0.i = _r0.i + _r3.i; + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac16b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac16b1c10, sizeof(XMLVM_JMP_BUF)); goto label5; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 185) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac16b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac16b1c10,java_lang_Object,25) + XMLVM_CATCH_END(w3933aaac16b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac16b1c10) + label23:; + XMLVM_TRY_BEGIN(w3933aaac16b1c12) + // Begin try + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 186) + XMLVM_MEMCPY(curThread_w3933aaac16b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac16b1c12, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r0.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac16b1c12) + XMLVM_CATCH_SPECIFIC(w3933aaac16b1c12,java_lang_Object,25) + XMLVM_CATCH_END(w3933aaac16b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac16b1c12) + label25:; + XMLVM_TRY_BEGIN(w3933aaac16b1c14) + // Begin try + java_lang_Thread* curThread_w3933aaac16b1c14aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3933aaac16b1c14aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac16b1c14) + XMLVM_CATCH_SPECIFIC(w3933aaac16b1c14,java_lang_Object,25) + XMLVM_CATCH_END(w3933aaac16b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac16b1c14) + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_add___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_add___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "add", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 202) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w3933aaac17b1b6) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 203) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.isDestroyed_; + if (_r2.i != 0) { XMLVM_MEMCPY(curThread_w3933aaac17b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac17b1b6, sizeof(XMLVM_JMP_BUF)); goto label56; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 204) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r2.i != _r3.i) { XMLVM_MEMCPY(curThread_w3933aaac17b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac17b1b6, sizeof(XMLVM_JMP_BUF)); goto label42; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 205) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r2.i = _r2.i * 2; + XMLVM_CLASS_INIT(java_lang_Thread) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Thread, _r2.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 206) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + _r3.i = 0; + _r4.i = 0; + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r0.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 207) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_ = _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r7.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 208) + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_ = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac17b1b6) + XMLVM_CATCH_SPECIFIC(w3933aaac17b1b6,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac17b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac17b1b6) + label40:; + XMLVM_TRY_BEGIN(w3933aaac17b1b8) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 215) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 216) + XMLVM_MEMCPY(curThread_w3933aaac17b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac17b1b8, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac17b1b8) + XMLVM_CATCH_SPECIFIC(w3933aaac17b1b8,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac17b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac17b1b8) + label42:; + XMLVM_TRY_BEGIN(w3933aaac17b1c10) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 210) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + _r4.i = _r3.i + 1; + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_ = _r4.i; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r7.o; + { XMLVM_MEMCPY(curThread_w3933aaac17b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac17b1c10, sizeof(XMLVM_JMP_BUF)); goto label40; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac17b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac17b1c10,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac17b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac17b1c10) + label53:; + XMLVM_TRY_BEGIN(w3933aaac17b1c12) + // Begin try + java_lang_Thread* curThread_w3933aaac17b1c12aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac17b1c12aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac17b1c12) + XMLVM_CATCH_SPECIFIC(w3933aaac17b1c12,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac17b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac17b1c12) + XMLVM_THROW_CUSTOM(_r2.o) + label56:; + XMLVM_TRY_BEGIN(w3933aaac17b1c15) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 213) + + + // Red class access removed: java.lang.IllegalThreadStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalThreadStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r2.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac17b1c15) + XMLVM_CATCH_SPECIFIC(w3933aaac17b1c15,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac17b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac17b1c15) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_add___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_add___java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "add", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 227) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w3933aaac18b1b6) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 228) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.isDestroyed_; + if (_r2.i != 0) { XMLVM_MEMCPY(curThread_w3933aaac18b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac18b1b6, sizeof(XMLVM_JMP_BUF)); goto label56; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 229) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r2.i != _r3.i) { XMLVM_MEMCPY(curThread_w3933aaac18b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac18b1b6, sizeof(XMLVM_JMP_BUF)); goto label42; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 230) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r2.i = _r2.i * 2; + XMLVM_CLASS_INIT(java_lang_ThreadGroup) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_ThreadGroup, _r2.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 231) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + _r3.i = 0; + _r4.i = 0; + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r0.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 232) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_ = _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r7.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 233) + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_ = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac18b1b6) + XMLVM_CATCH_SPECIFIC(w3933aaac18b1b6,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac18b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac18b1b6) + label40:; + XMLVM_TRY_BEGIN(w3933aaac18b1b8) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 240) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 241) + XMLVM_MEMCPY(curThread_w3933aaac18b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac18b1b8, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac18b1b8) + XMLVM_CATCH_SPECIFIC(w3933aaac18b1b8,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac18b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac18b1b8) + label42:; + XMLVM_TRY_BEGIN(w3933aaac18b1c10) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 235) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + _r4.i = _r3.i + 1; + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_ = _r4.i; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r7.o; + { XMLVM_MEMCPY(curThread_w3933aaac18b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac18b1c10, sizeof(XMLVM_JMP_BUF)); goto label40; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac18b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac18b1c10,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac18b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac18b1c10) + label53:; + XMLVM_TRY_BEGIN(w3933aaac18b1c12) + // Begin try + java_lang_Thread* curThread_w3933aaac18b1c12aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac18b1c12aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac18b1c12) + XMLVM_CATCH_SPECIFIC(w3933aaac18b1c12,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac18b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac18b1c12) + XMLVM_THROW_CUSTOM(_r2.o) + label56:; + XMLVM_TRY_BEGIN(w3933aaac18b1c15) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 238) + + + // Red class access removed: java.lang.IllegalThreadStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalThreadStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r2.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac18b1c15) + XMLVM_CATCH_SPECIFIC(w3933aaac18b1c15,java_lang_Object,53) + XMLVM_CATCH_END(w3933aaac18b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac18b1c15) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ThreadGroup_allowThreadSuspension___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_allowThreadSuspension___boolean] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "allowThreadSuspension", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 256) + _r0.i = 1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_checkAccess__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_checkAccess__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "checkAccess", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 268) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 269) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 270) + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkAccess___java_lang_ThreadGroup(_r0.o, _r1.o); + label9:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 272) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_destroy__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_destroy__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "destroy", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 288) + XMLVM_CHECK_NPE(6) + java_lang_ThreadGroup_checkAccess__(_r6.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 291) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w3933aaac21b1b7) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 292) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1b7) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1b7,java_lang_Object,43) + XMLVM_CATCH_END(w3933aaac21b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1b7) + XMLVM_TRY_BEGIN(w3933aaac21b1b8) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 293) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + _r0.i = 0; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1b8) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1b8,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac21b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1b8) + label12:; + XMLVM_TRY_BEGIN(w3933aaac21b1c10) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 295) + if (_r0.i >= _r1.i) { XMLVM_MEMCPY(curThread_w3933aaac21b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac21b1c10, sizeof(XMLVM_JMP_BUF)); goto label25; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 299) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + _r5.i = 0; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + XMLVM_CHECK_NPE(4) + java_lang_ThreadGroup_destroy__(_r4.o); + _r0.i = _r0.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac21b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac21b1c10, sizeof(XMLVM_JMP_BUF)); goto label12; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 302) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1c10,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac21b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1c10) + label25:; + XMLVM_TRY_BEGIN(w3933aaac21b1c12) + // Begin try + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.parent_; + if (_r4.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w3933aaac21b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac21b1c12, sizeof(XMLVM_JMP_BUF)); goto label34; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 303) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.parent_; + XMLVM_CHECK_NPE(4) + java_lang_ThreadGroup_remove___java_lang_ThreadGroup(_r4.o, _r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1c12) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1c12,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac21b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1c12) + label34:; + XMLVM_TRY_BEGIN(w3933aaac21b1c14) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 308) + _r4.i = 1; + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.isDestroyed_ = _r4.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 309) + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1c14) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1c14,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac21b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1c14) + XMLVM_TRY_BEGIN(w3933aaac21b1c15) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 310) + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1c15) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1c15,java_lang_Object,43) + XMLVM_CATCH_END(w3933aaac21b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1c15) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 311) + XMLVM_EXIT_METHOD() + return; + label40:; + java_lang_Thread* curThread_w3933aaac21b1c19 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3933aaac21b1c19->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3933aaac21b1c20) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1c20) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1c20,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac21b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1c20) + XMLVM_TRY_BEGIN(w3933aaac21b1c21) + // Begin try + XMLVM_THROW_CUSTOM(_r4.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1c21) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1c21,java_lang_Object,43) + XMLVM_CATCH_END(w3933aaac21b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1c21) + label43:; + XMLVM_TRY_BEGIN(w3933aaac21b1c23) + // Begin try + java_lang_Thread* curThread_w3933aaac21b1c23aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3933aaac21b1c23aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac21b1c23) + XMLVM_CATCH_SPECIFIC(w3933aaac21b1c23,java_lang_Object,43) + XMLVM_CATCH_END(w3933aaac21b1c23) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac21b1c23) + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_destroyIfEmptyDaemon__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_destroyIfEmptyDaemon__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "destroyIfEmptyDaemon", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 323) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w3933aaac22b1b5) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 324) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.isDaemon_; + if (_r1.i == 0) { XMLVM_MEMCPY(curThread_w3933aaac22b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac22b1b5, sizeof(XMLVM_JMP_BUF)); goto label26; }; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.isDestroyed_; + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w3933aaac22b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac22b1b5, sizeof(XMLVM_JMP_BUF)); goto label26; }; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w3933aaac22b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac22b1b5, sizeof(XMLVM_JMP_BUF)); goto label26; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 325) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac22b1b5) + XMLVM_CATCH_SPECIFIC(w3933aaac22b1b5,java_lang_Object,31) + XMLVM_CATCH_END(w3933aaac22b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac22b1b5) + XMLVM_TRY_BEGIN(w3933aaac22b1b6) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 326) + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r2.i != 0) { XMLVM_MEMCPY(curThread_w3933aaac22b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac22b1b6, sizeof(XMLVM_JMP_BUF)); goto label25; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 327) + XMLVM_CHECK_NPE(3) + java_lang_ThreadGroup_destroy__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac22b1b6) + XMLVM_CATCH_SPECIFIC(w3933aaac22b1b6,java_lang_Object,28) + XMLVM_CATCH_END(w3933aaac22b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac22b1b6) + label25:; + XMLVM_TRY_BEGIN(w3933aaac22b1b8) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 329) + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac22b1b8) + XMLVM_CATCH_SPECIFIC(w3933aaac22b1b8,java_lang_Object,28) + XMLVM_CATCH_END(w3933aaac22b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac22b1b8) + label26:; + XMLVM_TRY_BEGIN(w3933aaac22b1c10) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 331) + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac22b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac22b1c10,java_lang_Object,31) + XMLVM_CATCH_END(w3933aaac22b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac22b1c10) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 332) + XMLVM_EXIT_METHOD() + return; + label28:; + java_lang_Thread* curThread_w3933aaac22b1c14 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac22b1c14->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3933aaac22b1c15) + // Begin try + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac22b1c15) + XMLVM_CATCH_SPECIFIC(w3933aaac22b1c15,java_lang_Object,28) + XMLVM_CATCH_END(w3933aaac22b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac22b1c15) + XMLVM_TRY_BEGIN(w3933aaac22b1c16) + // Begin try + XMLVM_THROW_CUSTOM(_r2.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac22b1c16) + XMLVM_CATCH_SPECIFIC(w3933aaac22b1c16,java_lang_Object,31) + XMLVM_CATCH_END(w3933aaac22b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac22b1c16) + label31:; + XMLVM_TRY_BEGIN(w3933aaac22b1c18) + // Begin try + java_lang_Thread* curThread_w3933aaac22b1c18aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w3933aaac22b1c18aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac22b1c18) + XMLVM_CATCH_SPECIFIC(w3933aaac22b1c18,java_lang_Object,31) + XMLVM_CATCH_END(w3933aaac22b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac22b1c18) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_Thread_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_enumerate___java_lang_Thread_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "enumerate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 343) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_ThreadGroup_enumerate___java_lang_Thread_1ARRAY_boolean(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_Thread_1ARRAY_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_enumerate___java_lang_Thread_1ARRAY_boolean] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "enumerate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 357) + _r0.i = 0; + _r1.i = 1; + XMLVM_CHECK_NPE(2) + _r0.i = java_lang_ThreadGroup_enumerateGeneric___java_lang_Object_1ARRAY_boolean_int_boolean(_r2.o, _r3.o, _r4.i, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_ThreadGroup_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_enumerate___java_lang_ThreadGroup_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "enumerate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 370) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_ThreadGroup_enumerate___java_lang_ThreadGroup_1ARRAY_boolean(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_ThreadGroup_1ARRAY_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_enumerate___java_lang_ThreadGroup_1ARRAY_boolean] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "enumerate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + _r0.i = 0; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 385) + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_ThreadGroup_enumerateGeneric___java_lang_Object_1ARRAY_boolean_int_boolean(_r1.o, _r2.o, _r3.i, _r0.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_enumerateGeneric___java_lang_Object_1ARRAY_boolean_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_INT n3, JAVA_BOOLEAN n4) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_enumerateGeneric___java_lang_Object_1ARRAY_boolean_int_boolean] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "enumerateGeneric", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + _r6.o = me; + _r7.o = n1; + _r8.i = n2; + _r9.i = n3; + _r10.i = n4; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 407) + XMLVM_CHECK_NPE(6) + java_lang_ThreadGroup_checkAccess__(_r6.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 409) + if (_r10.i == 0) goto label44; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + _r4.o = _r4.o; + _r2 = _r4; + label10:; + if (_r10.i == 0) goto label50; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 411) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + _r3 = _r4; + label15:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 413) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 414) + if (_r10.i == 0) goto label54; + XMLVM_TRY_BEGIN(w3933aaac27b1c23) + // Begin try + XMLVM_CHECK_NPE(6) + _r4.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c23) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c23,java_lang_Object,84) + XMLVM_CATCH_END(w3933aaac27b1c23) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c23) + _r1 = _r4; + label21:; + _r0 = _r9; + label22:; + _r1.i = _r1.i + -1; + if (_r1.i < 0) goto label66; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 415) + if (_r10.i == 0) goto label38; + XMLVM_TRY_BEGIN(w3933aaac27b1c32) + // Begin try + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r4.o = _r4.o; + XMLVM_CHECK_NPE(4) + _r4.i = java_lang_Thread_isAlive__(_r4.o); + if (_r4.i == 0) { XMLVM_MEMCPY(curThread_w3933aaac27b1c32->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac27b1c32, sizeof(XMLVM_JMP_BUF)); goto label22; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c32) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c32,java_lang_Object,104) + XMLVM_CATCH_END(w3933aaac27b1c32) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c32) + label38:; + XMLVM_TRY_BEGIN(w3933aaac27b1c34) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 416) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + if (_r0.i < _r4.i) { XMLVM_MEMCPY(curThread_w3933aaac27b1c34->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac27b1c34, sizeof(XMLVM_JMP_BUF)); goto label58; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 417) + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c34) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c34,java_lang_Object,104) + XMLVM_CATCH_END(w3933aaac27b1c34) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c34) + _r9 = _r0; + label43:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 435) + XMLVM_EXIT_METHOD() + return _r0.i; + label44:; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + _r4.o = _r4.o; + _r2 = _r4; + goto label10; + label50:; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + _r3 = _r4; + goto label15; + label54:; + XMLVM_TRY_BEGIN(w3933aaac27b1c49) + // Begin try + XMLVM_CHECK_NPE(6) + _r4.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + _r1 = _r4; + { XMLVM_MEMCPY(curThread_w3933aaac27b1c49->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac27b1c49, sizeof(XMLVM_JMP_BUF)); goto label21; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 419) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c49) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c49,java_lang_Object,84) + XMLVM_CATCH_END(w3933aaac27b1c49) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c49) + label58:; + XMLVM_TRY_BEGIN(w3933aaac27b1c51) + // Begin try + _r9.i = _r0.i + 1; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r4.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c51) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c51,java_lang_Object,84) + XMLVM_CATCH_END(w3933aaac27b1c51) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c51) + _r0 = _r9; + goto label22; + label66:; + XMLVM_TRY_BEGIN(w3933aaac27b1c55) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 422) + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c55) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c55,java_lang_Object,104) + XMLVM_CATCH_END(w3933aaac27b1c55) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c55) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 424) + if (_r8.i == 0) goto label107; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 425) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r4.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 426) + _r1.i = 0; + _r9 = _r0; + label74:; + XMLVM_TRY_BEGIN(w3933aaac27b1c65) + // Begin try + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r1.i >= _r5.i) { XMLVM_MEMCPY(curThread_w3933aaac27b1c65->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac27b1c65, sizeof(XMLVM_JMP_BUF)); goto label98; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 427) + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + if (_r9.i < _r5.i) { XMLVM_MEMCPY(curThread_w3933aaac27b1c65->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac27b1c65, sizeof(XMLVM_JMP_BUF)); goto label87; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 428) + java_lang_Object_releaseLockRecursive__(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c65) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c65,java_lang_Object,101) + XMLVM_CATCH_END(w3933aaac27b1c65) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c65) + _r0 = _r9; + goto label43; + label84:; + java_lang_Thread* curThread_w3933aaac27b1c69 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3933aaac27b1c69->fields.java_lang_Thread.xmlvmException_; + label85:; + XMLVM_TRY_BEGIN(w3933aaac27b1c71) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c71) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c71,java_lang_Object,84) + XMLVM_CATCH_END(w3933aaac27b1c71) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c71) + XMLVM_THROW_CUSTOM(_r4.o) + label87:; + XMLVM_TRY_BEGIN(w3933aaac27b1c74) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 430) + XMLVM_CHECK_NPE(6) + _r5.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(5) + _r9.i = java_lang_ThreadGroup_enumerateGeneric___java_lang_Object_1ARRAY_boolean_int_boolean(_r5.o, _r7.o, _r8.i, _r9.i, _r10.i); + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac27b1c74->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac27b1c74, sizeof(XMLVM_JMP_BUF)); goto label74; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 433) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c74) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c74,java_lang_Object,101) + XMLVM_CATCH_END(w3933aaac27b1c74) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c74) + label98:; + XMLVM_TRY_BEGIN(w3933aaac27b1c76) + // Begin try + java_lang_Object_releaseLockRecursive__(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c76) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c76,java_lang_Object,101) + XMLVM_CATCH_END(w3933aaac27b1c76) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c76) + label99:; + XMLVM_TRY_BEGIN(w3933aaac27b1c78) + // Begin try + _r0 = _r9; + { XMLVM_MEMCPY(curThread_w3933aaac27b1c78->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac27b1c78, sizeof(XMLVM_JMP_BUF)); goto label43; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c78) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c78,java_lang_Object,101) + XMLVM_CATCH_END(w3933aaac27b1c78) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c78) + label101:; + XMLVM_TRY_BEGIN(w3933aaac27b1c80) + // Begin try + java_lang_Thread* curThread_w3933aaac27b1c80aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r5.o = curThread_w3933aaac27b1c80aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac27b1c80) + XMLVM_CATCH_SPECIFIC(w3933aaac27b1c80,java_lang_Object,101) + XMLVM_CATCH_END(w3933aaac27b1c80) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac27b1c80) + XMLVM_THROW_CUSTOM(_r5.o) + label104:; + java_lang_Thread* curThread_w3933aaac27b1c83 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3933aaac27b1c83->fields.java_lang_Thread.xmlvmException_; + _r9 = _r0; + goto label85; + label107:; + _r9 = _r0; + goto label99; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_ThreadGroup_getMaxPriority__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_getMaxPriority__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "getMaxPriority", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 446) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.maxPriority_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ThreadGroup_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_getName__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "getName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 455) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.name_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ThreadGroup_getParent__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_getParent__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "getParent", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 466) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.parent_; + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 467) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.parent_; + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_checkAccess__(_r0.o); + label9:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 469) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.parent_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_interrupt__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_interrupt__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "interrupt", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 482) + XMLVM_CHECK_NPE(3) + java_lang_ThreadGroup_checkAccess__(_r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 484) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 485) + _r0.i = 0; + label7:; + XMLVM_TRY_BEGIN(w3933aaac31b1c10) + // Begin try + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r0.i >= _r2.i) { XMLVM_MEMCPY(curThread_w3933aaac31b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac31b1c10, sizeof(XMLVM_JMP_BUF)); goto label21; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 486) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(2) + java_lang_Thread_interrupt__(_r2.o); + _r0.i = _r0.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac31b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac31b1c10, sizeof(XMLVM_JMP_BUF)); goto label7; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 488) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac31b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac31b1c10,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac31b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac31b1c10) + label21:; + XMLVM_TRY_BEGIN(w3933aaac31b1c12) + // Begin try + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac31b1c12) + XMLVM_CATCH_SPECIFIC(w3933aaac31b1c12,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac31b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac31b1c12) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 490) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 491) + _r0.i = 0; + label26:; + XMLVM_TRY_BEGIN(w3933aaac31b1c19) + // Begin try + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r0.i >= _r2.i) { XMLVM_MEMCPY(curThread_w3933aaac31b1c19->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac31b1c19, sizeof(XMLVM_JMP_BUF)); goto label43; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 492) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(2) + java_lang_ThreadGroup_interrupt__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac31b1c19) + XMLVM_CATCH_SPECIFIC(w3933aaac31b1c19,java_lang_Object,45) + XMLVM_CATCH_END(w3933aaac31b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac31b1c19) + _r0.i = _r0.i + 1; + goto label26; + label40:; + java_lang_Thread* curThread_w3933aaac31b1c23 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac31b1c23->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3933aaac31b1c24) + // Begin try + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac31b1c24) + XMLVM_CATCH_SPECIFIC(w3933aaac31b1c24,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac31b1c24) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac31b1c24) + XMLVM_THROW_CUSTOM(_r2.o) + label43:; + XMLVM_TRY_BEGIN(w3933aaac31b1c27) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 494) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 495) + XMLVM_MEMCPY(curThread_w3933aaac31b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac31b1c27, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac31b1c27) + XMLVM_CATCH_SPECIFIC(w3933aaac31b1c27,java_lang_Object,45) + XMLVM_CATCH_END(w3933aaac31b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac31b1c27) + label45:; + XMLVM_TRY_BEGIN(w3933aaac31b1c29) + // Begin try + java_lang_Thread* curThread_w3933aaac31b1c29aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac31b1c29aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac31b1c29) + XMLVM_CATCH_SPECIFIC(w3933aaac31b1c29,java_lang_Object,45) + XMLVM_CATCH_END(w3933aaac31b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac31b1c29) + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ThreadGroup_isDaemon__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_isDaemon__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "isDaemon", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 506) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.isDaemon_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ThreadGroup_isDestroyed__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_isDestroyed__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "isDestroyed", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 517) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.isDestroyed_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_list__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_list__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "list", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 528) + _r0.o = java_lang_System_GET_out(); + XMLVM_CHECK_NPE(0) + java_io_PrintStream_println__(_r0.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 529) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + java_lang_ThreadGroup_list___int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 530) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_list___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_list___int] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "list", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r5.o = me; + _r6.i = n1; + // " " + _r4.o = xmlvm_create_java_string_from_pool(664); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 541) + _r0.i = 0; + label3:; + if (_r0.i >= _r6.i) goto label15; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 542) + _r2.o = java_lang_System_GET_out(); + // " " + _r3.o = xmlvm_create_java_string_from_pool(664); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_print___java_lang_String(_r2.o, _r4.o); + _r0.i = _r0.i + 1; + goto label3; + label15:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 546) + _r2.o = java_lang_System_GET_out(); + //java_lang_ThreadGroup_toString__[5] + XMLVM_CHECK_NPE(5) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_ThreadGroup*) _r5.o)->tib->vtable[5])(_r5.o); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 549) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 550) + _r0.i = 0; + label28:; + XMLVM_TRY_BEGIN(w3933aaac35b1c25) + // Begin try + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r0.i >= _r3.i) { XMLVM_MEMCPY(curThread_w3933aaac35b1c25->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac35b1c25, sizeof(XMLVM_JMP_BUF)); goto label57; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 552) + _r1.i = 0; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c25) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c25,java_lang_Object,78) + XMLVM_CATCH_END(w3933aaac35b1c25) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c25) + label33:; + XMLVM_TRY_BEGIN(w3933aaac35b1c27) + // Begin try + if (_r1.i > _r6.i) { XMLVM_MEMCPY(curThread_w3933aaac35b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac35b1c27, sizeof(XMLVM_JMP_BUF)); goto label45; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 553) + _r3.o = java_lang_System_GET_out(); + // " " + _r4.o = xmlvm_create_java_string_from_pool(664); + XMLVM_CHECK_NPE(3) + java_io_PrintStream_print___java_lang_String(_r3.o, _r4.o); + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac35b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac35b1c27, sizeof(XMLVM_JMP_BUF)); goto label33; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 555) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c27) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c27,java_lang_Object,78) + XMLVM_CATCH_END(w3933aaac35b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c27) + label45:; + XMLVM_TRY_BEGIN(w3933aaac35b1c29) + // Begin try + _r3.o = java_lang_System_GET_out(); + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r0.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(3) + java_io_PrintStream_println___java_lang_Object(_r3.o, _r4.o); + _r0.i = _r0.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac35b1c29->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac35b1c29, sizeof(XMLVM_JMP_BUF)); goto label28; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 557) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c29) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c29,java_lang_Object,78) + XMLVM_CATCH_END(w3933aaac35b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c29) + label57:; + XMLVM_TRY_BEGIN(w3933aaac35b1c31) + // Begin try + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c31) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c31,java_lang_Object,78) + XMLVM_CATCH_END(w3933aaac35b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c31) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 558) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 559) + _r0.i = 0; + label62:; + XMLVM_TRY_BEGIN(w3933aaac35b1c38) + // Begin try + XMLVM_CHECK_NPE(5) + _r3.i = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r0.i >= _r3.i) { XMLVM_MEMCPY(curThread_w3933aaac35b1c38->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac35b1c38, sizeof(XMLVM_JMP_BUF)); goto label81; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 560) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r4.i = _r6.i + 1; + XMLVM_CHECK_NPE(3) + java_lang_ThreadGroup_list___int(_r3.o, _r4.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c38) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c38,java_lang_Object,83) + XMLVM_CATCH_END(w3933aaac35b1c38) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c38) + _r0.i = _r0.i + 1; + goto label62; + label78:; + java_lang_Thread* curThread_w3933aaac35b1c42 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3933aaac35b1c42->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3933aaac35b1c43) + // Begin try + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c43) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c43,java_lang_Object,78) + XMLVM_CATCH_END(w3933aaac35b1c43) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c43) + XMLVM_THROW_CUSTOM(_r3.o) + label81:; + XMLVM_TRY_BEGIN(w3933aaac35b1c46) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 562) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 563) + XMLVM_MEMCPY(curThread_w3933aaac35b1c46->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac35b1c46, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c46) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c46,java_lang_Object,83) + XMLVM_CATCH_END(w3933aaac35b1c46) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c46) + label83:; + XMLVM_TRY_BEGIN(w3933aaac35b1c48) + // Begin try + java_lang_Thread* curThread_w3933aaac35b1c48aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3933aaac35b1c48aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac35b1c48) + XMLVM_CATCH_SPECIFIC(w3933aaac35b1c48,java_lang_Object,83) + XMLVM_CATCH_END(w3933aaac35b1c48) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac35b1c48) + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ThreadGroup_parentOf___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_parentOf___java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "parentOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + label0:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 575) + if (_r2.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 576) + if (_r1.o != _r2.o) goto label6; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 577) + _r0.i = 1; + label5:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 581) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 579) + XMLVM_CHECK_NPE(2) + _r2.o = ((java_lang_ThreadGroup*) _r2.o)->fields.java_lang_ThreadGroup.parent_; + goto label0; + label9:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_remove___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_remove___java_lang_Thread] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "remove", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 593) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 594) + _r0.i = 0; + label4:; + XMLVM_TRY_BEGIN(w3933aaac37b1b9) + // Begin try + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r0.i >= _r2.i) { XMLVM_MEMCPY(curThread_w3933aaac37b1b9->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac37b1b9, sizeof(XMLVM_JMP_BUF)); goto label43; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 595) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_lang_Thread_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Thread*) _r2.o)->tib->vtable[1])(_r2.o, _r7.o); + if (_r2.i == 0) { XMLVM_MEMCPY(curThread_w3933aaac37b1b9->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac37b1b9, sizeof(XMLVM_JMP_BUF)); goto label48; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 596) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + _r3.i = 1; + _r2.i = _r2.i - _r3.i; + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_ = _r2.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 597) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + _r3.i = _r0.i + 1; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + _r5.i = _r5.i - _r0.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r4.o, _r0.i, _r5.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 600) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numThreads_; + _r4.o = JAVA_NULL; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac37b1b9) + XMLVM_CATCH_SPECIFIC(w3933aaac37b1b9,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac37b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac37b1b9) + label43:; + XMLVM_TRY_BEGIN(w3933aaac37b1c11) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 604) + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac37b1c11) + XMLVM_CATCH_SPECIFIC(w3933aaac37b1c11,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac37b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac37b1c11) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 605) + XMLVM_CHECK_NPE(6) + java_lang_ThreadGroup_destroyIfEmptyDaemon__(_r6.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 606) + XMLVM_EXIT_METHOD() + return; + label48:; + _r0.i = _r0.i + 1; + goto label4; + label51:; + java_lang_Thread* curThread_w3933aaac37b1c20 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac37b1c20->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3933aaac37b1c21) + // Begin try + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac37b1c21) + XMLVM_CATCH_SPECIFIC(w3933aaac37b1c21,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac37b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac37b1c21) + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_remove___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_remove___java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "remove", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 617) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 618) + _r0.i = 0; + label4:; + XMLVM_TRY_BEGIN(w3933aaac38b1b9) + // Begin try + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r0.i >= _r2.i) { XMLVM_MEMCPY(curThread_w3933aaac38b1b9->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac38b1b9, sizeof(XMLVM_JMP_BUF)); goto label43; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 619) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[1])(_r2.o, _r7.o); + if (_r2.i == 0) { XMLVM_MEMCPY(curThread_w3933aaac38b1b9->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac38b1b9, sizeof(XMLVM_JMP_BUF)); goto label48; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 620) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + _r3.i = 1; + _r2.i = _r2.i - _r3.i; + XMLVM_CHECK_NPE(6) + ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_ = _r2.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 621) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + _r3.i = _r0.i + 1; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + _r5.i = _r5.i - _r0.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r4.o, _r0.i, _r5.i); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 622) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_lang_ThreadGroup*) _r6.o)->fields.java_lang_ThreadGroup.numGroups_; + _r4.o = JAVA_NULL; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac38b1b9) + XMLVM_CATCH_SPECIFIC(w3933aaac38b1b9,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac38b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac38b1b9) + label43:; + XMLVM_TRY_BEGIN(w3933aaac38b1c11) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 626) + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac38b1c11) + XMLVM_CATCH_SPECIFIC(w3933aaac38b1c11,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac38b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac38b1c11) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 627) + XMLVM_CHECK_NPE(6) + java_lang_ThreadGroup_destroyIfEmptyDaemon__(_r6.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 628) + XMLVM_EXIT_METHOD() + return; + label48:; + _r0.i = _r0.i + 1; + goto label4; + label51:; + java_lang_Thread* curThread_w3933aaac38b1c20 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac38b1c20->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3933aaac38b1c21) + // Begin try + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac38b1c21) + XMLVM_CATCH_SPECIFIC(w3933aaac38b1c21,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac38b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac38b1c21) + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_resume__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_resume__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "resume", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 645) + XMLVM_CHECK_NPE(3) + java_lang_ThreadGroup_checkAccess__(_r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 647) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 648) + _r0.i = 0; + label7:; + XMLVM_TRY_BEGIN(w3933aaac39b1c10) + // Begin try + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r0.i >= _r2.i) { XMLVM_MEMCPY(curThread_w3933aaac39b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac39b1c10, sizeof(XMLVM_JMP_BUF)); goto label21; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 649) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(2) + java_lang_Thread_resume__(_r2.o); + _r0.i = _r0.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac39b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac39b1c10, sizeof(XMLVM_JMP_BUF)); goto label7; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 651) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac39b1c10) + XMLVM_CATCH_SPECIFIC(w3933aaac39b1c10,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac39b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac39b1c10) + label21:; + XMLVM_TRY_BEGIN(w3933aaac39b1c12) + // Begin try + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac39b1c12) + XMLVM_CATCH_SPECIFIC(w3933aaac39b1c12,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac39b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac39b1c12) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 653) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 654) + _r0.i = 0; + label26:; + XMLVM_TRY_BEGIN(w3933aaac39b1c19) + // Begin try + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r0.i >= _r2.i) { XMLVM_MEMCPY(curThread_w3933aaac39b1c19->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac39b1c19, sizeof(XMLVM_JMP_BUF)); goto label43; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 655) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_ThreadGroup*) _r3.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(2) + java_lang_ThreadGroup_resume__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac39b1c19) + XMLVM_CATCH_SPECIFIC(w3933aaac39b1c19,java_lang_Object,45) + XMLVM_CATCH_END(w3933aaac39b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac39b1c19) + _r0.i = _r0.i + 1; + goto label26; + label40:; + java_lang_Thread* curThread_w3933aaac39b1c23 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac39b1c23->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3933aaac39b1c24) + // Begin try + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac39b1c24) + XMLVM_CATCH_SPECIFIC(w3933aaac39b1c24,java_lang_Object,40) + XMLVM_CATCH_END(w3933aaac39b1c24) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac39b1c24) + XMLVM_THROW_CUSTOM(_r2.o) + label43:; + XMLVM_TRY_BEGIN(w3933aaac39b1c27) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 657) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 658) + XMLVM_MEMCPY(curThread_w3933aaac39b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac39b1c27, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac39b1c27) + XMLVM_CATCH_SPECIFIC(w3933aaac39b1c27,java_lang_Object,45) + XMLVM_CATCH_END(w3933aaac39b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac39b1c27) + label45:; + XMLVM_TRY_BEGIN(w3933aaac39b1c29) + // Begin try + java_lang_Thread* curThread_w3933aaac39b1c29aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w3933aaac39b1c29aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac39b1c29) + XMLVM_CATCH_SPECIFIC(w3933aaac39b1c29,java_lang_Object,45) + XMLVM_CATCH_END(w3933aaac39b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac39b1c29) + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_setDaemon___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_setDaemon___boolean] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "setDaemon", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 674) + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_checkAccess__(_r0.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 675) + XMLVM_CHECK_NPE(0) + ((java_lang_ThreadGroup*) _r0.o)->fields.java_lang_ThreadGroup.isDaemon_ = _r1.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 676) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_setMaxPriority___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_setMaxPriority___int] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "setMaxPriority", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 696) + XMLVM_CHECK_NPE(4) + java_lang_ThreadGroup_checkAccess__(_r4.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 698) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.maxPriority_; + if (_r5.i > _r2.i) goto label50; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 699) + _r2.i = 1; + if (_r5.i >= _r2.i) goto label11; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 700) + _r5.i = 1; + label11:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 703) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.parent_; + if (_r2.o != JAVA_NULL) goto label39; + _r1 = _r5; + label16:; + if (_r1.i > _r5.i) goto label47; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 704) + _r2 = _r1; + label19:; + XMLVM_CHECK_NPE(4) + ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.maxPriority_ = _r2.i; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 706) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 708) + _r0.i = 0; + label25:; + XMLVM_TRY_BEGIN(w3933aaac41b1c30) + // Begin try + XMLVM_CHECK_NPE(4) + _r3.i = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r0.i >= _r3.i) { XMLVM_MEMCPY(curThread_w3933aaac41b1c30->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac41b1c30, sizeof(XMLVM_JMP_BUF)); goto label49; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 709) + XMLVM_CHECK_NPE(4) + _r3.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(3) + java_lang_ThreadGroup_setMaxPriority___int(_r3.o, _r5.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac41b1c30) + XMLVM_CATCH_SPECIFIC(w3933aaac41b1c30,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac41b1c30) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac41b1c30) + _r0.i = _r0.i + 1; + goto label25; + label39:; + XMLVM_CHECK_NPE(4) + _r2.o = ((java_lang_ThreadGroup*) _r4.o)->fields.java_lang_ThreadGroup.parent_; + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_ThreadGroup_getMaxPriority__(_r2.o); + _r1 = _r2; + goto label16; + label47:; + _r2 = _r5; + goto label19; + label49:; + XMLVM_TRY_BEGIN(w3933aaac41b1c42) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 711) + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac41b1c42) + XMLVM_CATCH_SPECIFIC(w3933aaac41b1c42,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac41b1c42) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac41b1c42) + label50:; + XMLVM_TRY_BEGIN(w3933aaac41b1c44) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 713) + XMLVM_MEMCPY(curThread_w3933aaac41b1c44->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac41b1c44, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac41b1c44) + XMLVM_CATCH_SPECIFIC(w3933aaac41b1c44,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac41b1c44) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac41b1c44) + label51:; + XMLVM_TRY_BEGIN(w3933aaac41b1c46) + // Begin try + java_lang_Thread* curThread_w3933aaac41b1c46aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3933aaac41b1c46aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac41b1c46) + XMLVM_CATCH_SPECIFIC(w3933aaac41b1c46,java_lang_Object,51) + XMLVM_CATCH_END(w3933aaac41b1c46) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac41b1c46) + XMLVM_THROW_CUSTOM(_r3.o) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_setParent___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_setParent___java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "setParent", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 727) + if (_r1.o == JAVA_NULL) goto label5; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 728) + XMLVM_CHECK_NPE(1) + java_lang_ThreadGroup_add___java_lang_ThreadGroup(_r1.o, _r0.o); + label5:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 730) + XMLVM_CHECK_NPE(0) + ((java_lang_ThreadGroup*) _r0.o)->fields.java_lang_ThreadGroup.parent_ = _r1.o; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 731) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_stop__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_stop__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "stop", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 748) + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_ThreadGroup_stopHelper__(_r1.o); + if (_r0.i == 0) goto label13; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 749) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_CHECK_NPE(0) + java_lang_Thread_stop__(_r0.o); + label13:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 751) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ThreadGroup_stopHelper__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_stopHelper__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "stopHelper", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 759) + XMLVM_CHECK_NPE(5) + java_lang_ThreadGroup_checkAccess__(_r5.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 761) + _r2.i = 0; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 763) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w3933aaac44b1b9) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 764) + _r0.o = java_lang_Thread_currentThread__(); + _r1.i = 0; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1b9) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1b9,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac44b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1b9) + label12:; + XMLVM_TRY_BEGIN(w3933aaac44b1c11) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 765) + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r1.i >= _r4.i) { XMLVM_MEMCPY(curThread_w3933aaac44b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac44b1c11, sizeof(XMLVM_JMP_BUF)); goto label37; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 766) + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r4.o != _r0.o) { XMLVM_MEMCPY(curThread_w3933aaac44b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac44b1c11, sizeof(XMLVM_JMP_BUF)); goto label26; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 767) + _r2.i = 1; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c11) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c11,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac44b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c11) + label23:; + XMLVM_TRY_BEGIN(w3933aaac44b1c13) + // Begin try + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac44b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac44b1c13, sizeof(XMLVM_JMP_BUF)); goto label12; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 769) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c13) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c13,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac44b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c13) + label26:; + XMLVM_TRY_BEGIN(w3933aaac44b1c15) + // Begin try + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(4) + java_lang_Thread_stop__(_r4.o); + { XMLVM_MEMCPY(curThread_w3933aaac44b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac44b1c15, sizeof(XMLVM_JMP_BUF)); goto label23; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 772) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c15) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c15,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac44b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c15) + label34:; + XMLVM_TRY_BEGIN(w3933aaac44b1c17) + // Begin try + java_lang_Thread* curThread_w3933aaac44b1c17aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3933aaac44b1c17aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c17) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c17,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac44b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c17) + XMLVM_THROW_CUSTOM(_r4.o) + label37:; + XMLVM_TRY_BEGIN(w3933aaac44b1c20) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c20) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c20,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac44b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c20) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 774) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 775) + _r1.i = 0; + label42:; + XMLVM_TRY_BEGIN(w3933aaac44b1c27) + // Begin try + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r1.i >= _r4.i) { XMLVM_MEMCPY(curThread_w3933aaac44b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac44b1c27, sizeof(XMLVM_JMP_BUF)); goto label58; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 776) + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(4) + _r4.i = java_lang_ThreadGroup_stopHelper__(_r4.o); + _r2.i = _r2.i | _r4.i; + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac44b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac44b1c27, sizeof(XMLVM_JMP_BUF)); goto label42; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 778) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c27) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c27,java_lang_Object,60) + XMLVM_CATCH_END(w3933aaac44b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c27) + label58:; + XMLVM_TRY_BEGIN(w3933aaac44b1c29) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 779) + XMLVM_MEMCPY(curThread_w3933aaac44b1c29->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac44b1c29, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r2.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c29) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c29,java_lang_Object,60) + XMLVM_CATCH_END(w3933aaac44b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c29) + label60:; + XMLVM_TRY_BEGIN(w3933aaac44b1c31) + // Begin try + java_lang_Thread* curThread_w3933aaac44b1c31aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3933aaac44b1c31aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac44b1c31) + XMLVM_CATCH_SPECIFIC(w3933aaac44b1c31,java_lang_Object,60) + XMLVM_CATCH_END(w3933aaac44b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac44b1c31) + XMLVM_THROW_CUSTOM(_r4.o) + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_suspend__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_suspend__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "suspend", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 797) + XMLVM_CHECK_NPE(1) + _r0.i = java_lang_ThreadGroup_suspendHelper__(_r1.o); + if (_r0.i == 0) goto label13; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 798) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_CHECK_NPE(0) + java_lang_Thread_suspend__(_r0.o); + label13:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 800) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ThreadGroup_suspendHelper__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_suspendHelper__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "suspendHelper", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 808) + XMLVM_CHECK_NPE(5) + java_lang_ThreadGroup_checkAccess__(_r5.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 810) + _r2.i = 0; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 812) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreadsLock_; + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w3933aaac46b1b9) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 813) + _r0.o = java_lang_Thread_currentThread__(); + _r1.i = 0; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1b9) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1b9,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac46b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1b9) + label12:; + XMLVM_TRY_BEGIN(w3933aaac46b1c11) + // Begin try + XMLVM_SOURCE_POSITION("ThreadGroup.java", 814) + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.numThreads_; + if (_r1.i >= _r4.i) { XMLVM_MEMCPY(curThread_w3933aaac46b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac46b1c11, sizeof(XMLVM_JMP_BUF)); goto label37; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 815) + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r4.o != _r0.o) { XMLVM_MEMCPY(curThread_w3933aaac46b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac46b1c11, sizeof(XMLVM_JMP_BUF)); goto label26; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 816) + _r2.i = 1; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c11) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c11,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac46b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c11) + label23:; + XMLVM_TRY_BEGIN(w3933aaac46b1c13) + // Begin try + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac46b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac46b1c13, sizeof(XMLVM_JMP_BUF)); goto label12; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 818) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c13) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c13,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac46b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c13) + label26:; + XMLVM_TRY_BEGIN(w3933aaac46b1c15) + // Begin try + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenThreads_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(4) + java_lang_Thread_suspend__(_r4.o); + { XMLVM_MEMCPY(curThread_w3933aaac46b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac46b1c15, sizeof(XMLVM_JMP_BUF)); goto label23; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 821) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c15) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c15,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac46b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c15) + label34:; + XMLVM_TRY_BEGIN(w3933aaac46b1c17) + // Begin try + java_lang_Thread* curThread_w3933aaac46b1c17aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3933aaac46b1c17aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c17) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c17,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac46b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c17) + XMLVM_THROW_CUSTOM(_r4.o) + label37:; + XMLVM_TRY_BEGIN(w3933aaac46b1c20) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c20) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c20,java_lang_Object,34) + XMLVM_CATCH_END(w3933aaac46b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c20) + XMLVM_SOURCE_POSITION("ThreadGroup.java", 823) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenGroupsLock_; + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 824) + _r1.i = 0; + label42:; + XMLVM_TRY_BEGIN(w3933aaac46b1c27) + // Begin try + XMLVM_CHECK_NPE(5) + _r4.i = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.numGroups_; + if (_r1.i >= _r4.i) { XMLVM_MEMCPY(curThread_w3933aaac46b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac46b1c27, sizeof(XMLVM_JMP_BUF)); goto label58; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 825) + XMLVM_CHECK_NPE(5) + _r4.o = ((java_lang_ThreadGroup*) _r5.o)->fields.java_lang_ThreadGroup.childrenGroups_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(4) + _r4.i = java_lang_ThreadGroup_suspendHelper__(_r4.o); + _r2.i = _r2.i | _r4.i; + _r1.i = _r1.i + 1; + { XMLVM_MEMCPY(curThread_w3933aaac46b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac46b1c27, sizeof(XMLVM_JMP_BUF)); goto label42; }; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 827) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c27) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c27,java_lang_Object,60) + XMLVM_CATCH_END(w3933aaac46b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c27) + label58:; + XMLVM_TRY_BEGIN(w3933aaac46b1c29) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_SOURCE_POSITION("ThreadGroup.java", 828) + XMLVM_MEMCPY(curThread_w3933aaac46b1c29->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3933aaac46b1c29, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r2.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c29) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c29,java_lang_Object,60) + XMLVM_CATCH_END(w3933aaac46b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c29) + label60:; + XMLVM_TRY_BEGIN(w3933aaac46b1c31) + // Begin try + java_lang_Thread* curThread_w3933aaac46b1c31aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w3933aaac46b1c31aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3933aaac46b1c31) + XMLVM_CATCH_SPECIFIC(w3933aaac46b1c31,java_lang_Object,60) + XMLVM_CATCH_END(w3933aaac46b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w3933aaac46b1c31) + XMLVM_THROW_CUSTOM(_r4.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ThreadGroup_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_toString__] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 839) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_Class_getName__(_r1.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "[name=" + _r1.o = xmlvm_create_java_string_from_pool(665); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_ThreadGroup_getName__(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // ",maxpri=" + _r1.o = xmlvm_create_java_string_from_pool(666); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + _r1.i = java_lang_ThreadGroup_getMaxPriority__(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___int(_r0.o, _r1.i); + // "]" + _r1.o = xmlvm_create_java_string_from_pool(183); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_uncaughtException___java_lang_Thread_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_uncaughtException___java_lang_Thread_java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup", "uncaughtException", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 858) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.parent_; + if (_r0.o == JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 859) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ThreadGroup*) _r1.o)->fields.java_lang_ThreadGroup.parent_; + //java_lang_ThreadGroup_uncaughtException___java_lang_Thread_java_lang_Throwable[6] + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_ThreadGroup*) _r0.o)->tib->vtable[6])(_r0.o, _r2.o, _r3.o); + label9:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 864) + XMLVM_EXIT_METHOD() + return; + label10:; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 860) + + + // Red class access removed: java.lang.ThreadDeath::instance-of + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i != 0) goto label9; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 862) + _r0.o = java_lang_System_GET_err(); + XMLVM_CHECK_NPE(3) + java_lang_Throwable_printStackTrace___java_io_PrintStream(_r3.o, _r0.o); + goto label9; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ThreadGroup.h b/tests/nbody-java/java_lang_ThreadGroup.h new file mode 100644 index 0000000000000..2047efd98a63a --- /dev/null +++ b/tests/nbody-java/java_lang_ThreadGroup.h @@ -0,0 +1,148 @@ +#ifndef __JAVA_LANG_THREADGROUP__ +#define __JAVA_LANG_THREADGROUP__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ThreadGroup 1 +// Implemented interfaces: +#include "java_lang_Thread_UncaughtExceptionHandler.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +XMLVM_FORWARD_DECL(java_io_PrintStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_SecurityManager +#define XMLVM_FORWARD_DECL_java_lang_SecurityManager +XMLVM_FORWARD_DECL(java_lang_SecurityManager) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenGroupsLock +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenGroupsLock +XMLVM_FORWARD_DECL(java_lang_ThreadGroup_ChildrenGroupsLock) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenThreadsLock +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenThreadsLock +XMLVM_FORWARD_DECL(java_lang_ThreadGroup_ChildrenThreadsLock) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +// Class declarations for java.lang.ThreadGroup +XMLVM_DEFINE_CLASS(java_lang_ThreadGroup, 7, XMLVM_ITABLE_SIZE_java_lang_ThreadGroup) + +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ThreadGroup +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ThreadGroup \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT name_; \ + JAVA_INT maxPriority_; \ + JAVA_OBJECT parent_; \ + JAVA_INT numThreads_; \ + JAVA_OBJECT childrenThreads_; \ + JAVA_INT numGroups_; \ + JAVA_OBJECT childrenGroups_; \ + JAVA_OBJECT childrenGroupsLock_; \ + JAVA_OBJECT childrenThreadsLock_; \ + JAVA_BOOLEAN isDaemon_; \ + JAVA_BOOLEAN isDestroyed_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ThreadGroup \ + } java_lang_ThreadGroup + +struct java_lang_ThreadGroup { + __TIB_DEFINITION_java_lang_ThreadGroup* tib; + struct { + __INSTANCE_FIELDS_java_lang_ThreadGroup; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup +typedef struct java_lang_ThreadGroup java_lang_ThreadGroup; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ThreadGroup 7 +#define XMLVM_VTABLE_IDX_java_lang_ThreadGroup_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_ThreadGroup_uncaughtException___java_lang_Thread_java_lang_Throwable 6 + +void __INIT_java_lang_ThreadGroup(); +void __INIT_IMPL_java_lang_ThreadGroup(); +void __DELETE_java_lang_ThreadGroup(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ThreadGroup(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ThreadGroup(); +void java_lang_ThreadGroup___INIT___(JAVA_OBJECT me); +void java_lang_ThreadGroup___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup___INIT____java_lang_ThreadGroup_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_ThreadGroup___INIT____java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_ThreadGroup_activeCount__(JAVA_OBJECT me); +JAVA_INT java_lang_ThreadGroup_activeGroupCount__(JAVA_OBJECT me); +void java_lang_ThreadGroup_add___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup_add___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_ThreadGroup_allowThreadSuspension___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void java_lang_ThreadGroup_checkAccess__(JAVA_OBJECT me); +void java_lang_ThreadGroup_destroy__(JAVA_OBJECT me); +void java_lang_ThreadGroup_destroyIfEmptyDaemon__(JAVA_OBJECT me); +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_Thread_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_Thread_1ARRAY_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_ThreadGroup_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_ThreadGroup_enumerate___java_lang_ThreadGroup_1ARRAY_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +JAVA_INT java_lang_ThreadGroup_enumerateGeneric___java_lang_Object_1ARRAY_boolean_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_INT n3, JAVA_BOOLEAN n4); +JAVA_INT java_lang_ThreadGroup_getMaxPriority__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ThreadGroup_getName__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ThreadGroup_getParent__(JAVA_OBJECT me); +void java_lang_ThreadGroup_interrupt__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ThreadGroup_isDaemon__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ThreadGroup_isDestroyed__(JAVA_OBJECT me); +void java_lang_ThreadGroup_list__(JAVA_OBJECT me); +void java_lang_ThreadGroup_list___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_BOOLEAN java_lang_ThreadGroup_parentOf___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup_remove___java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup_remove___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup_resume__(JAVA_OBJECT me); +void java_lang_ThreadGroup_setDaemon___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void java_lang_ThreadGroup_setMaxPriority___int(JAVA_OBJECT me, JAVA_INT n1); +void java_lang_ThreadGroup_setParent___java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup_stop__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ThreadGroup_stopHelper__(JAVA_OBJECT me); +void java_lang_ThreadGroup_suspend__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ThreadGroup_suspendHelper__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_lang_ThreadGroup_toString__(JAVA_OBJECT me); +// Vtable index: 6 +void java_lang_ThreadGroup_uncaughtException___java_lang_Thread_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.c b/tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.c new file mode 100644 index 0000000000000..6c19e8d0058dd --- /dev/null +++ b/tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.c @@ -0,0 +1,179 @@ +#include "xmlvm.h" +#include "java_lang_ThreadGroup.h" + +#include "java_lang_ThreadGroup_ChildrenGroupsLock.h" + +#define XMLVM_CURRENT_CLASS_NAME ThreadGroup_ChildrenGroupsLock +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ThreadGroup_ChildrenGroupsLock + +__TIB_DEFINITION_java_lang_ThreadGroup_ChildrenGroupsLock __TIB_java_lang_ThreadGroup_ChildrenGroupsLock = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ThreadGroup_ChildrenGroupsLock, // classInitializer + "java.lang.ThreadGroup$ChildrenGroupsLock", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_ThreadGroup_ChildrenGroupsLock), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ThreadGroup_ChildrenGroupsLock() +{ + staticInitializerLock(&__TIB_java_lang_ThreadGroup_ChildrenGroupsLock); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ThreadGroup_ChildrenGroupsLock); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ThreadGroup_ChildrenGroupsLock.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ThreadGroup_ChildrenGroupsLock.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ThreadGroup$ChildrenGroupsLock") + __INIT_IMPL_java_lang_ThreadGroup_ChildrenGroupsLock(); + } +} + +void __INIT_IMPL_java_lang_ThreadGroup_ChildrenGroupsLock() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.newInstanceFunc = __NEW_INSTANCE_java_lang_ThreadGroup_ChildrenGroupsLock; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ThreadGroup_ChildrenGroupsLock.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.numImplementedInterfaces = 0; + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ThreadGroup_ChildrenGroupsLock); + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.clazz = __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock; + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.baseType = JAVA_NULL; + __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_ChildrenGroupsLock); + __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_1ARRAY); + __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ThreadGroup_ChildrenGroupsLock] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ThreadGroup_ChildrenGroupsLock.classInitialized = 1; +} + +void __DELETE_java_lang_ThreadGroup_ChildrenGroupsLock(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ThreadGroup_ChildrenGroupsLock] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenGroupsLock(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_ThreadGroup_ChildrenGroupsLock*) me)->fields.java_lang_ThreadGroup_ChildrenGroupsLock.this_0_ = (java_lang_ThreadGroup*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenGroupsLock] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ThreadGroup_ChildrenGroupsLock() +{ XMLVM_CLASS_INIT(java_lang_ThreadGroup_ChildrenGroupsLock) +java_lang_ThreadGroup_ChildrenGroupsLock* me = (java_lang_ThreadGroup_ChildrenGroupsLock*) XMLVM_MALLOC(sizeof(java_lang_ThreadGroup_ChildrenGroupsLock)); + me->tib = &__TIB_java_lang_ThreadGroup_ChildrenGroupsLock; + __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenGroupsLock(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ThreadGroup_ChildrenGroupsLock] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ThreadGroup_ChildrenGroupsLock() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup$ChildrenGroupsLock", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 67) + XMLVM_CHECK_NPE(0) + ((java_lang_ThreadGroup_ChildrenGroupsLock*) _r0.o)->fields.java_lang_ThreadGroup_ChildrenGroupsLock.this_0_ = _r1.o; + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup$ChildrenGroupsLock", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 67) + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.h b/tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.h new file mode 100644 index 0000000000000..7ca27ec9cc32d --- /dev/null +++ b/tests/nbody-java/java_lang_ThreadGroup_ChildrenGroupsLock.h @@ -0,0 +1,57 @@ +#ifndef __JAVA_LANG_THREADGROUP_CHILDRENGROUPSLOCK__ +#define __JAVA_LANG_THREADGROUP_CHILDRENGROUPSLOCK__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ThreadGroup_ChildrenGroupsLock 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup +XMLVM_FORWARD_DECL(java_lang_ThreadGroup) +#endif +// Class declarations for java.lang.ThreadGroup$ChildrenGroupsLock +XMLVM_DEFINE_CLASS(java_lang_ThreadGroup_ChildrenGroupsLock, 6, XMLVM_ITABLE_SIZE_java_lang_ThreadGroup_ChildrenGroupsLock) + +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenGroupsLock_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenGroupsLock +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenGroupsLock \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT this_0_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenGroupsLock \ + } java_lang_ThreadGroup_ChildrenGroupsLock + +struct java_lang_ThreadGroup_ChildrenGroupsLock { + __TIB_DEFINITION_java_lang_ThreadGroup_ChildrenGroupsLock* tib; + struct { + __INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenGroupsLock; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenGroupsLock +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenGroupsLock +typedef struct java_lang_ThreadGroup_ChildrenGroupsLock java_lang_ThreadGroup_ChildrenGroupsLock; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ThreadGroup_ChildrenGroupsLock 6 + +void __INIT_java_lang_ThreadGroup_ChildrenGroupsLock(); +void __INIT_IMPL_java_lang_ThreadGroup_ChildrenGroupsLock(); +void __DELETE_java_lang_ThreadGroup_ChildrenGroupsLock(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenGroupsLock(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ThreadGroup_ChildrenGroupsLock(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ThreadGroup_ChildrenGroupsLock(); +void java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup_ChildrenGroupsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.c b/tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.c new file mode 100644 index 0000000000000..c2e797578b7a1 --- /dev/null +++ b/tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.c @@ -0,0 +1,179 @@ +#include "xmlvm.h" +#include "java_lang_ThreadGroup.h" + +#include "java_lang_ThreadGroup_ChildrenThreadsLock.h" + +#define XMLVM_CURRENT_CLASS_NAME ThreadGroup_ChildrenThreadsLock +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ThreadGroup_ChildrenThreadsLock + +__TIB_DEFINITION_java_lang_ThreadGroup_ChildrenThreadsLock __TIB_java_lang_ThreadGroup_ChildrenThreadsLock = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ThreadGroup_ChildrenThreadsLock, // classInitializer + "java.lang.ThreadGroup$ChildrenThreadsLock", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_ThreadGroup_ChildrenThreadsLock), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ThreadGroup_ChildrenThreadsLock() +{ + staticInitializerLock(&__TIB_java_lang_ThreadGroup_ChildrenThreadsLock); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ThreadGroup_ChildrenThreadsLock); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ThreadGroup_ChildrenThreadsLock.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ThreadGroup_ChildrenThreadsLock.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ThreadGroup$ChildrenThreadsLock") + __INIT_IMPL_java_lang_ThreadGroup_ChildrenThreadsLock(); + } +} + +void __INIT_IMPL_java_lang_ThreadGroup_ChildrenThreadsLock() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.newInstanceFunc = __NEW_INSTANCE_java_lang_ThreadGroup_ChildrenThreadsLock; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ThreadGroup_ChildrenThreadsLock.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.numImplementedInterfaces = 0; + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ThreadGroup_ChildrenThreadsLock); + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.clazz = __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock; + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.baseType = JAVA_NULL; + __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_ChildrenThreadsLock); + __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_1ARRAY); + __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ThreadGroup_ChildrenThreadsLock] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ThreadGroup_ChildrenThreadsLock.classInitialized = 1; +} + +void __DELETE_java_lang_ThreadGroup_ChildrenThreadsLock(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ThreadGroup_ChildrenThreadsLock] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenThreadsLock(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_ThreadGroup_ChildrenThreadsLock*) me)->fields.java_lang_ThreadGroup_ChildrenThreadsLock.this_0_ = (java_lang_ThreadGroup*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenThreadsLock] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ThreadGroup_ChildrenThreadsLock() +{ XMLVM_CLASS_INIT(java_lang_ThreadGroup_ChildrenThreadsLock) +java_lang_ThreadGroup_ChildrenThreadsLock* me = (java_lang_ThreadGroup_ChildrenThreadsLock*) XMLVM_MALLOC(sizeof(java_lang_ThreadGroup_ChildrenThreadsLock)); + me->tib = &__TIB_java_lang_ThreadGroup_ChildrenThreadsLock; + __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenThreadsLock(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ThreadGroup_ChildrenThreadsLock] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ThreadGroup_ChildrenThreadsLock() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup$ChildrenThreadsLock", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 71) + XMLVM_CHECK_NPE(0) + ((java_lang_ThreadGroup_ChildrenThreadsLock*) _r0.o)->fields.java_lang_ThreadGroup_ChildrenThreadsLock.this_0_ = _r1.o; + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1] + XMLVM_ENTER_METHOD("java.lang.ThreadGroup$ChildrenThreadsLock", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("ThreadGroup.java", 71) + XMLVM_CHECK_NPE(0) + java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.h b/tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.h new file mode 100644 index 0000000000000..813c47bfc868c --- /dev/null +++ b/tests/nbody-java/java_lang_ThreadGroup_ChildrenThreadsLock.h @@ -0,0 +1,57 @@ +#ifndef __JAVA_LANG_THREADGROUP_CHILDRENTHREADSLOCK__ +#define __JAVA_LANG_THREADGROUP_CHILDRENTHREADSLOCK__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ThreadGroup_ChildrenThreadsLock 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup +XMLVM_FORWARD_DECL(java_lang_ThreadGroup) +#endif +// Class declarations for java.lang.ThreadGroup$ChildrenThreadsLock +XMLVM_DEFINE_CLASS(java_lang_ThreadGroup_ChildrenThreadsLock, 6, XMLVM_ITABLE_SIZE_java_lang_ThreadGroup_ChildrenThreadsLock) + +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ThreadGroup_ChildrenThreadsLock_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenThreadsLock +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenThreadsLock \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT this_0_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenThreadsLock \ + } java_lang_ThreadGroup_ChildrenThreadsLock + +struct java_lang_ThreadGroup_ChildrenThreadsLock { + __TIB_DEFINITION_java_lang_ThreadGroup_ChildrenThreadsLock* tib; + struct { + __INSTANCE_FIELDS_java_lang_ThreadGroup_ChildrenThreadsLock; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenThreadsLock +#define XMLVM_FORWARD_DECL_java_lang_ThreadGroup_ChildrenThreadsLock +typedef struct java_lang_ThreadGroup_ChildrenThreadsLock java_lang_ThreadGroup_ChildrenThreadsLock; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ThreadGroup_ChildrenThreadsLock 6 + +void __INIT_java_lang_ThreadGroup_ChildrenThreadsLock(); +void __INIT_IMPL_java_lang_ThreadGroup_ChildrenThreadsLock(); +void __DELETE_java_lang_ThreadGroup_ChildrenThreadsLock(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ThreadGroup_ChildrenThreadsLock(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ThreadGroup_ChildrenThreadsLock(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ThreadGroup_ChildrenThreadsLock(); +void java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ThreadGroup_ChildrenThreadsLock___INIT____java_lang_ThreadGroup_java_lang_ThreadGroup_1(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_lang_Thread_State.c b/tests/nbody-java/java_lang_Thread_State.c new file mode 100644 index 0000000000000..d782031039833 --- /dev/null +++ b/tests/nbody-java/java_lang_Thread_State.c @@ -0,0 +1,403 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" + +#include "java_lang_Thread_State.h" + +#define XMLVM_CURRENT_CLASS_NAME Thread_State +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Thread_State + +__TIB_DEFINITION_java_lang_Thread_State __TIB_java_lang_Thread_State = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Thread_State, // classInitializer + "java.lang.Thread$State", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Enum;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Enum, // extends + sizeof(java_lang_Thread_State), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Thread_State; +JAVA_OBJECT __CLASS_java_lang_Thread_State_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Thread_State_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Thread_State_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_Thread_State_NEW; +static JAVA_OBJECT _STATIC_java_lang_Thread_State_RUNNABLE; +static JAVA_OBJECT _STATIC_java_lang_Thread_State_BLOCKED; +static JAVA_OBJECT _STATIC_java_lang_Thread_State_WAITING; +static JAVA_OBJECT _STATIC_java_lang_Thread_State_TIMED_WAITING; +static JAVA_OBJECT _STATIC_java_lang_Thread_State_TERMINATED; +static JAVA_OBJECT _STATIC_java_lang_Thread_State__VALUES; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Thread_State() +{ + staticInitializerLock(&__TIB_java_lang_Thread_State); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Thread_State.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Thread_State.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Thread_State); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Thread_State.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Thread_State.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Thread_State.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Thread$State") + __INIT_IMPL_java_lang_Thread_State(); + } +} + +void __INIT_IMPL_java_lang_Thread_State() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Enum) + __TIB_java_lang_Thread_State.newInstanceFunc = __NEW_INSTANCE_java_lang_Thread_State; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Thread_State.vtable, __TIB_java_lang_Enum.vtable, sizeof(__TIB_java_lang_Enum.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_Thread_State.numImplementedInterfaces = 2; + __TIB_java_lang_Thread_State.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Thread_State.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_lang_Thread_State.implementedInterfaces[0][1] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_lang_Thread_State.itableBegin = &__TIB_java_lang_Thread_State.itable[0]; + __TIB_java_lang_Thread_State.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_Thread_State.vtable[6]; + + _STATIC_java_lang_Thread_State_NEW = (java_lang_Thread_State*) JAVA_NULL; + _STATIC_java_lang_Thread_State_RUNNABLE = (java_lang_Thread_State*) JAVA_NULL; + _STATIC_java_lang_Thread_State_BLOCKED = (java_lang_Thread_State*) JAVA_NULL; + _STATIC_java_lang_Thread_State_WAITING = (java_lang_Thread_State*) JAVA_NULL; + _STATIC_java_lang_Thread_State_TIMED_WAITING = (java_lang_Thread_State*) JAVA_NULL; + _STATIC_java_lang_Thread_State_TERMINATED = (java_lang_Thread_State*) JAVA_NULL; + _STATIC_java_lang_Thread_State__VALUES = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_lang_Thread_State.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Thread_State.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Thread_State.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Thread_State.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Thread_State.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Thread_State.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Thread_State.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Thread_State.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Thread_State = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Thread_State); + __TIB_java_lang_Thread_State.clazz = __CLASS_java_lang_Thread_State; + __TIB_java_lang_Thread_State.baseType = JAVA_NULL; + __CLASS_java_lang_Thread_State_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_State); + __CLASS_java_lang_Thread_State_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_State_1ARRAY); + __CLASS_java_lang_Thread_State_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_State_2ARRAY); + java_lang_Thread_State___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Thread_State] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Thread_State.classInitialized = 1; +} + +void __DELETE_java_lang_Thread_State(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Thread_State] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Thread_State(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Enum(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Thread_State] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Thread_State() +{ XMLVM_CLASS_INIT(java_lang_Thread_State) +java_lang_Thread_State* me = (java_lang_Thread_State*) XMLVM_MALLOC(sizeof(java_lang_Thread_State)); + me->tib = &__TIB_java_lang_Thread_State; + __INIT_INSTANCE_MEMBERS_java_lang_Thread_State(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Thread_State] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Thread_State() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_lang_Thread_State_GET_NEW() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + return _STATIC_java_lang_Thread_State_NEW; +} + +void java_lang_Thread_State_PUT_NEW(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) +_STATIC_java_lang_Thread_State_NEW = v; +} + +JAVA_OBJECT java_lang_Thread_State_GET_RUNNABLE() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + return _STATIC_java_lang_Thread_State_RUNNABLE; +} + +void java_lang_Thread_State_PUT_RUNNABLE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) +_STATIC_java_lang_Thread_State_RUNNABLE = v; +} + +JAVA_OBJECT java_lang_Thread_State_GET_BLOCKED() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + return _STATIC_java_lang_Thread_State_BLOCKED; +} + +void java_lang_Thread_State_PUT_BLOCKED(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) +_STATIC_java_lang_Thread_State_BLOCKED = v; +} + +JAVA_OBJECT java_lang_Thread_State_GET_WAITING() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + return _STATIC_java_lang_Thread_State_WAITING; +} + +void java_lang_Thread_State_PUT_WAITING(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) +_STATIC_java_lang_Thread_State_WAITING = v; +} + +JAVA_OBJECT java_lang_Thread_State_GET_TIMED_WAITING() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + return _STATIC_java_lang_Thread_State_TIMED_WAITING; +} + +void java_lang_Thread_State_PUT_TIMED_WAITING(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) +_STATIC_java_lang_Thread_State_TIMED_WAITING = v; +} + +JAVA_OBJECT java_lang_Thread_State_GET_TERMINATED() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + return _STATIC_java_lang_Thread_State_TERMINATED; +} + +void java_lang_Thread_State_PUT_TERMINATED(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) +_STATIC_java_lang_Thread_State_TERMINATED = v; +} + +JAVA_OBJECT java_lang_Thread_State_GET__VALUES() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + return _STATIC_java_lang_Thread_State__VALUES; +} + +void java_lang_Thread_State_PUT__VALUES(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) +_STATIC_java_lang_Thread_State__VALUES = v; +} + +JAVA_OBJECT java_lang_Thread_State_values__() +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_State_values__] + XMLVM_ENTER_METHOD("java.lang.Thread$State", "values", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Thread.java", 74) + _r0.o = java_lang_Thread_State_GET__VALUES(); + //java_lang_Thread_State_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->tib->vtable[0])(_r0.o); + _r0.o = _r0.o; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Thread_State_valueOf___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_lang_Thread_State) + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_State_valueOf___java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Thread$State", "valueOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Thread.java", 74) + XMLVM_CLASS_INIT(java_lang_Thread_State) + _r0.o = __CLASS_java_lang_Thread_State; + _r1.o = java_lang_Enum_valueOf___java_lang_Class_java_lang_String(_r0.o, _r1.o); + _r1.o = _r1.o; + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_State___INIT____java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_State___INIT____java_lang_String_int] + XMLVM_ENTER_METHOD("java.lang.Thread$State", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Thread.java", 74) + XMLVM_CHECK_NPE(0) + java_lang_Enum___INIT____java_lang_String_int(_r0.o, _r1.o, _r2.i); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Thread_State___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Thread_State___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.Thread$State", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.i = 4; + _r6.i = 3; + _r5.i = 2; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Thread.java", 78) + _r0.o = __NEW_java_lang_Thread_State(); + // "NEW" + _r1.o = xmlvm_create_java_string_from_pool(814); + XMLVM_CHECK_NPE(0) + java_lang_Thread_State___INIT____java_lang_String_int(_r0.o, _r1.o, _r3.i); + java_lang_Thread_State_PUT_NEW( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 82) + _r0.o = __NEW_java_lang_Thread_State(); + // "RUNNABLE" + _r1.o = xmlvm_create_java_string_from_pool(815); + XMLVM_CHECK_NPE(0) + java_lang_Thread_State___INIT____java_lang_String_int(_r0.o, _r1.o, _r4.i); + java_lang_Thread_State_PUT_RUNNABLE( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 86) + _r0.o = __NEW_java_lang_Thread_State(); + // "BLOCKED" + _r1.o = xmlvm_create_java_string_from_pool(816); + XMLVM_CHECK_NPE(0) + java_lang_Thread_State___INIT____java_lang_String_int(_r0.o, _r1.o, _r5.i); + java_lang_Thread_State_PUT_BLOCKED( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 90) + _r0.o = __NEW_java_lang_Thread_State(); + // "WAITING" + _r1.o = xmlvm_create_java_string_from_pool(817); + XMLVM_CHECK_NPE(0) + java_lang_Thread_State___INIT____java_lang_String_int(_r0.o, _r1.o, _r6.i); + java_lang_Thread_State_PUT_WAITING( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 94) + _r0.o = __NEW_java_lang_Thread_State(); + // "TIMED_WAITING" + _r1.o = xmlvm_create_java_string_from_pool(818); + XMLVM_CHECK_NPE(0) + java_lang_Thread_State___INIT____java_lang_String_int(_r0.o, _r1.o, _r7.i); + java_lang_Thread_State_PUT_TIMED_WAITING( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 98) + _r0.o = __NEW_java_lang_Thread_State(); + // "TERMINATED" + _r1.o = xmlvm_create_java_string_from_pool(819); + _r2.i = 5; + XMLVM_CHECK_NPE(0) + java_lang_Thread_State___INIT____java_lang_String_int(_r0.o, _r1.o, _r2.i); + java_lang_Thread_State_PUT_TERMINATED( _r0.o); + XMLVM_SOURCE_POSITION("Thread.java", 74) + _r0.i = 6; + XMLVM_CLASS_INIT(java_lang_Thread_State) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Thread_State, _r0.i); + _r1.o = java_lang_Thread_State_GET_NEW(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r1.o; + _r1.o = java_lang_Thread_State_GET_RUNNABLE(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r1.o; + _r1.o = java_lang_Thread_State_GET_BLOCKED(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r1.o; + _r1.o = java_lang_Thread_State_GET_WAITING(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r1.o; + _r1.o = java_lang_Thread_State_GET_TIMED_WAITING(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r1.o; + _r1.i = 5; + _r2.o = java_lang_Thread_State_GET_TERMINATED(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + java_lang_Thread_State_PUT__VALUES( _r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Thread_State.h b/tests/nbody-java/java_lang_Thread_State.h new file mode 100644 index 0000000000000..17af69c366dba --- /dev/null +++ b/tests/nbody-java/java_lang_Thread_State.h @@ -0,0 +1,80 @@ +#ifndef __JAVA_LANG_THREAD_STATE__ +#define __JAVA_LANG_THREAD_STATE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Thread_State 8 +// Implemented interfaces: +// Super Class: +#include "java_lang_Enum.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.Thread$State +XMLVM_DEFINE_CLASS(java_lang_Thread_State, 7, XMLVM_ITABLE_SIZE_java_lang_Thread_State) + +extern JAVA_OBJECT __CLASS_java_lang_Thread_State; +extern JAVA_OBJECT __CLASS_java_lang_Thread_State_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Thread_State_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Thread_State_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Thread_State +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Thread_State \ + __INSTANCE_FIELDS_java_lang_Enum; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Thread_State \ + } java_lang_Thread_State + +struct java_lang_Thread_State { + __TIB_DEFINITION_java_lang_Thread_State* tib; + struct { + __INSTANCE_FIELDS_java_lang_Thread_State; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread_State +#define XMLVM_FORWARD_DECL_java_lang_Thread_State +typedef struct java_lang_Thread_State java_lang_Thread_State; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Thread_State 7 + +void __INIT_java_lang_Thread_State(); +void __INIT_IMPL_java_lang_Thread_State(); +void __DELETE_java_lang_Thread_State(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Thread_State(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Thread_State(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Thread_State(); +JAVA_OBJECT java_lang_Thread_State_GET_NEW(); +void java_lang_Thread_State_PUT_NEW(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_State_GET_RUNNABLE(); +void java_lang_Thread_State_PUT_RUNNABLE(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_State_GET_BLOCKED(); +void java_lang_Thread_State_PUT_BLOCKED(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_State_GET_WAITING(); +void java_lang_Thread_State_PUT_WAITING(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_State_GET_TIMED_WAITING(); +void java_lang_Thread_State_PUT_TIMED_WAITING(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_State_GET_TERMINATED(); +void java_lang_Thread_State_PUT_TERMINATED(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_State_GET__VALUES(); +void java_lang_Thread_State_PUT__VALUES(JAVA_OBJECT v); +JAVA_OBJECT java_lang_Thread_State_values__(); +JAVA_OBJECT java_lang_Thread_State_valueOf___java_lang_String(JAVA_OBJECT n1); +void java_lang_Thread_State___INIT____java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_Thread_State___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.c b/tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.c new file mode 100644 index 0000000000000..d3255b9ff7058 --- /dev/null +++ b/tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.c @@ -0,0 +1,78 @@ +#include "xmlvm.h" +#include "java_lang_Thread.h" +#include "java_lang_Throwable.h" + +#include "java_lang_Thread_UncaughtExceptionHandler.h" + +__TIB_DEFINITION_java_lang_Thread_UncaughtExceptionHandler __TIB_java_lang_Thread_UncaughtExceptionHandler = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Thread_UncaughtExceptionHandler, // classInitializer + "java.lang.Thread$UncaughtExceptionHandler", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler; +JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_Thread_UncaughtExceptionHandler() +{ + staticInitializerLock(&__TIB_java_lang_Thread_UncaughtExceptionHandler); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Thread_UncaughtExceptionHandler.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Thread_UncaughtExceptionHandler.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Thread_UncaughtExceptionHandler); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Thread_UncaughtExceptionHandler.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Thread_UncaughtExceptionHandler.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Thread_UncaughtExceptionHandler.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Thread$UncaughtExceptionHandler") + __INIT_IMPL_java_lang_Thread_UncaughtExceptionHandler(); + } +} + +void __INIT_IMPL_java_lang_Thread_UncaughtExceptionHandler() +{ + __TIB_java_lang_Thread_UncaughtExceptionHandler.numInterfaces = 0; + __TIB_java_lang_Thread_UncaughtExceptionHandler.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Thread_UncaughtExceptionHandler.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_Thread_UncaughtExceptionHandler.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Thread_UncaughtExceptionHandler.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Thread_UncaughtExceptionHandler.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_Thread_UncaughtExceptionHandler = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Thread_UncaughtExceptionHandler); + __TIB_java_lang_Thread_UncaughtExceptionHandler.clazz = __CLASS_java_lang_Thread_UncaughtExceptionHandler; + __TIB_java_lang_Thread_UncaughtExceptionHandler.baseType = JAVA_NULL; + __CLASS_java_lang_Thread_UncaughtExceptionHandler_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_UncaughtExceptionHandler); + __CLASS_java_lang_Thread_UncaughtExceptionHandler_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_UncaughtExceptionHandler_1ARRAY); + __CLASS_java_lang_Thread_UncaughtExceptionHandler_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Thread_UncaughtExceptionHandler_2ARRAY); + + __TIB_java_lang_Thread_UncaughtExceptionHandler.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.h b/tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.h new file mode 100644 index 0000000000000..1cb41feef51dd --- /dev/null +++ b/tests/nbody-java/java_lang_Thread_UncaughtExceptionHandler.h @@ -0,0 +1,36 @@ +#ifndef __JAVA_LANG_THREAD_UNCAUGHTEXCEPTIONHANDLER__ +#define __JAVA_LANG_THREAD_UNCAUGHTEXCEPTIONHANDLER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_Thread_UncaughtExceptionHandler_uncaughtException___java_lang_Thread_java_lang_Throwable 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif + +XMLVM_DEFINE_CLASS(java_lang_Thread_UncaughtExceptionHandler, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler; +extern JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Thread_UncaughtExceptionHandler_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread_UncaughtExceptionHandler +#define XMLVM_FORWARD_DECL_java_lang_Thread_UncaughtExceptionHandler +typedef struct java_lang_Thread_UncaughtExceptionHandler java_lang_Thread_UncaughtExceptionHandler; +#endif + +void __INIT_java_lang_Thread_UncaughtExceptionHandler(); +void __INIT_IMPL_java_lang_Thread_UncaughtExceptionHandler(); + +#endif diff --git a/tests/nbody-java/java_lang_Throwable.c b/tests/nbody-java/java_lang_Throwable.c new file mode 100644 index 0000000000000..c0a79c829fff2 --- /dev/null +++ b/tests/nbody-java/java_lang_Throwable.c @@ -0,0 +1,933 @@ +#include "xmlvm.h" +#include "java_io_PrintStream.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_StackTraceElement.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" + +#include "java_lang_Throwable.h" + +#define XMLVM_CURRENT_CLASS_NAME Throwable +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Throwable + +__TIB_DEFINITION_java_lang_Throwable __TIB_java_lang_Throwable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_Throwable, // classInitializer + "java.lang.Throwable", // className + "java.lang", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_Throwable), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_Throwable; +JAVA_OBJECT __CLASS_java_lang_Throwable_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_Throwable_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_Throwable_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_lang_Throwable_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_Throwable() +{ + staticInitializerLock(&__TIB_java_lang_Throwable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_Throwable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_Throwable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_Throwable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_Throwable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_Throwable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_Throwable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.Throwable") + __INIT_IMPL_java_lang_Throwable(); + } +} + +void __INIT_IMPL_java_lang_Throwable() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_Throwable.newInstanceFunc = __NEW_INSTANCE_java_lang_Throwable; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_Throwable.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_Throwable.vtable[7] = (VTABLE_PTR) &java_lang_Throwable_getMessage__; + __TIB_java_lang_Throwable.vtable[5] = (VTABLE_PTR) &java_lang_Throwable_toString__; + __TIB_java_lang_Throwable.vtable[6] = (VTABLE_PTR) &java_lang_Throwable_getCause__; + xmlvm_init_native_java_lang_Throwable(); + // Initialize interface information + __TIB_java_lang_Throwable.numImplementedInterfaces = 1; + __TIB_java_lang_Throwable.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_lang_Throwable.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_lang_Throwable.itableBegin = &__TIB_java_lang_Throwable.itable[0]; + + _STATIC_java_lang_Throwable_serialVersionUID = -3042686055658047285; + + __TIB_java_lang_Throwable.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_Throwable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_Throwable.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_Throwable.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_Throwable.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_Throwable.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_Throwable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_Throwable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_Throwable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Throwable); + __TIB_java_lang_Throwable.clazz = __CLASS_java_lang_Throwable; + __TIB_java_lang_Throwable.baseType = JAVA_NULL; + __CLASS_java_lang_Throwable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Throwable); + __CLASS_java_lang_Throwable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Throwable_1ARRAY); + __CLASS_java_lang_Throwable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Throwable_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Throwable] + //XMLVM_END_WRAPPER + + __TIB_java_lang_Throwable.classInitialized = 1; +} + +void __DELETE_java_lang_Throwable(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Throwable] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_Throwable(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_Throwable*) me)->fields.java_lang_Throwable.detailMessage_ = (java_lang_String*) JAVA_NULL; + ((java_lang_Throwable*) me)->fields.java_lang_Throwable.cause_ = (java_lang_Throwable*) JAVA_NULL; + ((java_lang_Throwable*) me)->fields.java_lang_Throwable.stackTrace_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Throwable] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_Throwable() +{ XMLVM_CLASS_INIT(java_lang_Throwable) +java_lang_Throwable* me = (java_lang_Throwable*) XMLVM_MALLOC(sizeof(java_lang_Throwable)); + me->tib = &__TIB_java_lang_Throwable; + __INIT_INSTANCE_MEMBERS_java_lang_Throwable(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Throwable] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_Throwable() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_Throwable(); + java_lang_Throwable___INIT___(me); + return me; +} + +JAVA_LONG java_lang_Throwable_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_lang_Throwable) + return _STATIC_java_lang_Throwable_serialVersionUID; +} + +void java_lang_Throwable_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_lang_Throwable) +_STATIC_java_lang_Throwable_serialVersionUID = v; +} + +void java_lang_Throwable___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable___INIT___] + XMLVM_ENTER_METHOD("java.lang.Throwable", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 73) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 62) + XMLVM_CHECK_NPE(0) + ((java_lang_Throwable*) _r0.o)->fields.java_lang_Throwable.cause_ = _r0.o; + XMLVM_SOURCE_POSITION("Throwable.java", 74) + XMLVM_CHECK_NPE(0) + java_lang_Throwable_fillInStackTrace__(_r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 75) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.lang.Throwable", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Throwable.java", 85) + XMLVM_CHECK_NPE(0) + java_lang_Throwable___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 86) + XMLVM_CHECK_NPE(0) + ((java_lang_Throwable*) _r0.o)->fields.java_lang_Throwable.detailMessage_ = _r1.o; + XMLVM_SOURCE_POSITION("Throwable.java", 87) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable___INIT____java_lang_String_java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.Throwable", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Throwable.java", 99) + XMLVM_CHECK_NPE(0) + java_lang_Throwable___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 100) + XMLVM_CHECK_NPE(0) + ((java_lang_Throwable*) _r0.o)->fields.java_lang_Throwable.detailMessage_ = _r1.o; + XMLVM_SOURCE_POSITION("Throwable.java", 101) + XMLVM_CHECK_NPE(0) + ((java_lang_Throwable*) _r0.o)->fields.java_lang_Throwable.cause_ = _r2.o; + XMLVM_SOURCE_POSITION("Throwable.java", 102) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable___INIT____java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.Throwable", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Throwable.java", 112) + XMLVM_CHECK_NPE(1) + java_lang_Throwable___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Throwable.java", 113) + if (_r2.o != JAVA_NULL) goto label11; + _r0.o = JAVA_NULL; + label6:; + XMLVM_CHECK_NPE(1) + ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.detailMessage_ = _r0.o; + XMLVM_SOURCE_POSITION("Throwable.java", 114) + XMLVM_CHECK_NPE(1) + ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.cause_ = _r2.o; + XMLVM_SOURCE_POSITION("Throwable.java", 115) + XMLVM_EXIT_METHOD() + return; + label11:; + //java_lang_Throwable_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r2.o)->tib->vtable[5])(_r2.o); + goto label6; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Throwable_fillInStackTrace__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Throwable_getMessage__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_getMessage__] + XMLVM_ENTER_METHOD("java.lang.Throwable", "getMessage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 139) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.detailMessage_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Throwable_getLocalizedMessage__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_getLocalizedMessage__] + XMLVM_ENTER_METHOD("java.lang.Throwable", "getLocalizedMessage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 152) + //java_lang_Throwable_getMessage__[7] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r1.o)->tib->vtable[7])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_Throwable_getStackTraceImpl__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_Throwable_getStackTrace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_getStackTrace__] + XMLVM_ENTER_METHOD("java.lang.Throwable", "getStackTrace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 179) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_Throwable_getInternalStackTrace__(_r1.o); + //java_lang_StackTraceElement_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->tib->vtable[0])(_r0.o); + _r1.o = _r1.o; + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable_setStackTrace___java_lang_StackTraceElement_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_setStackTrace___java_lang_StackTraceElement_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Throwable", "setStackTrace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Throwable.java", 198) + //java_lang_StackTraceElement_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r5.o)->tib->vtable[0])(_r5.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Throwable.java", 199) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r2.i = 0; + label8:; + if (_r2.i < _r1.i) goto label13; + XMLVM_SOURCE_POSITION("Throwable.java", 204) + XMLVM_CHECK_NPE(4) + ((java_lang_Throwable*) _r4.o)->fields.java_lang_Throwable.stackTrace_ = _r0.o; + XMLVM_SOURCE_POSITION("Throwable.java", 205) + XMLVM_EXIT_METHOD() + return; + label13:; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("Throwable.java", 200) + if (_r3.o != JAVA_NULL) goto label23; + XMLVM_SOURCE_POSITION("Throwable.java", 201) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label23:; + _r2.i = _r2.i + 1; + goto label8; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable_printStackTrace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_printStackTrace__] + XMLVM_ENTER_METHOD("java.lang.Throwable", "printStackTrace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 212) + _r0.o = java_lang_System_GET_err(); + XMLVM_CHECK_NPE(1) + java_lang_Throwable_printStackTrace___java_io_PrintStream(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 213) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_Throwable_countDuplicates___java_lang_StackTraceElement_1ARRAY_java_lang_StackTraceElement_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_Throwable) + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_countDuplicates___java_lang_StackTraceElement_1ARRAY_java_lang_StackTraceElement_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.Throwable", "countDuplicates", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = n1; + _r7.o = n2; + XMLVM_SOURCE_POSITION("Throwable.java", 226) + _r0.i = 0; + XMLVM_SOURCE_POSITION("Throwable.java", 227) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + XMLVM_SOURCE_POSITION("Throwable.java", 228) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r5 = _r2; + _r2 = _r0; + _r0 = _r5; + label6:; + _r0.i = _r0.i + -1; + if (_r0.i < 0) goto label14; + _r1.i = _r1.i + -1; + if (_r1.i >= 0) goto label15; + label14:; + XMLVM_SOURCE_POSITION("Throwable.java", 236) + XMLVM_EXIT_METHOD() + return _r2.i; + label15:; + XMLVM_SOURCE_POSITION("Throwable.java", 229) + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r1.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("Throwable.java", 230) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_lang_StackTraceElement_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_StackTraceElement*) _r3.o)->tib->vtable[1])(_r3.o, _r4.o); + if (_r3.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Throwable.java", 231) + _r2.i = _r2.i + 1; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Throwable_getInternalStackTrace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_getInternalStackTrace__] + XMLVM_ENTER_METHOD("java.lang.Throwable", "getInternalStackTrace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 247) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.stackTrace_; + if (_r0.o != JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("Throwable.java", 248) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_Throwable_getStackTraceImpl__(_r1.o); + XMLVM_CHECK_NPE(1) + ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.stackTrace_ = _r0.o; + label10:; + XMLVM_SOURCE_POSITION("Throwable.java", 250) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.stackTrace_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable_printStackTrace___java_io_PrintStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_printStackTrace___java_io_PrintStream] + XMLVM_ENTER_METHOD("java.lang.Throwable", "printStackTrace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r9.o = me; + _r10.o = n1; + _r6.i = 0; + // "\011at " + _r7.o = xmlvm_create_java_string_from_pool(45); + XMLVM_SOURCE_POSITION("Throwable.java", 263) + //java_lang_Throwable_toString__[5] + XMLVM_CHECK_NPE(9) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r9.o)->tib->vtable[5])(_r9.o); + XMLVM_CHECK_NPE(10) + java_io_PrintStream_println___java_lang_String(_r10.o, _r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 266) + XMLVM_CHECK_NPE(9) + _r0.o = java_lang_Throwable_getInternalStackTrace__(_r9.o); + XMLVM_SOURCE_POSITION("Throwable.java", 267) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r2 = _r6; + label16:; + if (_r2.i < _r1.i) goto label28; + XMLVM_SOURCE_POSITION("Throwable.java", 272) + //java_lang_Throwable_getCause__[6] + XMLVM_CHECK_NPE(9) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r9.o)->tib->vtable[6])(_r9.o); + _r8 = _r1; + _r1 = _r0; + _r0 = _r8; + label25:; + XMLVM_SOURCE_POSITION("Throwable.java", 273) + if (_r0.o != JAVA_NULL) goto label51; + XMLVM_SOURCE_POSITION("Throwable.java", 287) + XMLVM_EXIT_METHOD() + return; + label28:; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("Throwable.java", 268) + _r4.o = __NEW_java_lang_StringBuilder(); + // "\011at " + _r5.o = xmlvm_create_java_string_from_pool(45); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT____java_lang_String(_r4.o, _r7.o); + XMLVM_CHECK_NPE(4) + _r3.o = java_lang_StringBuilder_append___java_lang_Object(_r4.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + XMLVM_CHECK_NPE(10) + java_io_PrintStream_println___java_lang_String(_r10.o, _r3.o); + _r2.i = _r2.i + 1; + goto label16; + label51:; + XMLVM_SOURCE_POSITION("Throwable.java", 274) + // "Caused by: " + _r2.o = xmlvm_create_java_string_from_pool(46); + XMLVM_CHECK_NPE(10) + java_io_PrintStream_print___java_lang_String(_r10.o, _r2.o); + XMLVM_SOURCE_POSITION("Throwable.java", 275) + XMLVM_CHECK_NPE(10) + java_io_PrintStream_println___java_lang_Object(_r10.o, _r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 276) + XMLVM_CHECK_NPE(0) + _r2.o = java_lang_Throwable_getInternalStackTrace__(_r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 277) + _r1.i = java_lang_Throwable_countDuplicates___java_lang_StackTraceElement_1ARRAY_java_lang_StackTraceElement_1ARRAY(_r2.o, _r1.o); + _r3 = _r6; + label68:; + XMLVM_SOURCE_POSITION("Throwable.java", 278) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r4.i = _r4.i - _r1.i; + if (_r3.i < _r4.i) goto label104; + XMLVM_SOURCE_POSITION("Throwable.java", 281) + if (_r1.i <= 0) goto label98; + XMLVM_SOURCE_POSITION("Throwable.java", 282) + _r3.o = __NEW_java_lang_StringBuilder(); + // "\011... " + _r4.o = xmlvm_create_java_string_from_pool(47); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT____java_lang_String(_r3.o, _r4.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_StringBuilder_append___int(_r3.o, _r1.i); + // " more" + _r3.o = xmlvm_create_java_string_from_pool(48); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + XMLVM_CHECK_NPE(10) + java_io_PrintStream_println___java_lang_String(_r10.o, _r1.o); + label98:; + XMLVM_SOURCE_POSITION("Throwable.java", 285) + //java_lang_Throwable_getCause__[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r0.o)->tib->vtable[6])(_r0.o); + _r1 = _r2; + goto label25; + label104:; + XMLVM_SOURCE_POSITION("Throwable.java", 279) + _r4.o = __NEW_java_lang_StringBuilder(); + // "\011at " + _r5.o = xmlvm_create_java_string_from_pool(45); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT____java_lang_String(_r4.o, _r7.o); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_Object(_r4.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + XMLVM_CHECK_NPE(10) + java_io_PrintStream_println___java_lang_String(_r10.o, _r4.o); + _r3.i = _r3.i + 1; + goto label68; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable_printStackTrace___java_io_PrintWriter(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_printStackTrace___java_io_PrintWriter] + XMLVM_ENTER_METHOD("java.lang.Throwable", "printStackTrace", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r9.o = me; + _r10.o = n1; + _r6.i = 0; + // "\011at " + _r7.o = xmlvm_create_java_string_from_pool(45); + XMLVM_SOURCE_POSITION("Throwable.java", 299) + //java_lang_Throwable_toString__[5] + XMLVM_CHECK_NPE(9) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r9.o)->tib->vtable[5])(_r9.o); + + + // Red class access removed: java.io.PrintWriter::println + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Throwable.java", 302) + XMLVM_CHECK_NPE(9) + _r0.o = java_lang_Throwable_getInternalStackTrace__(_r9.o); + XMLVM_SOURCE_POSITION("Throwable.java", 303) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r2 = _r6; + label16:; + if (_r2.i < _r1.i) goto label28; + XMLVM_SOURCE_POSITION("Throwable.java", 308) + //java_lang_Throwable_getCause__[6] + XMLVM_CHECK_NPE(9) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r9.o)->tib->vtable[6])(_r9.o); + _r8 = _r1; + _r1 = _r0; + _r0 = _r8; + label25:; + XMLVM_SOURCE_POSITION("Throwable.java", 309) + if (_r0.o != JAVA_NULL) goto label51; + XMLVM_SOURCE_POSITION("Throwable.java", 323) + XMLVM_EXIT_METHOD() + return; + label28:; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("Throwable.java", 304) + _r4.o = __NEW_java_lang_StringBuilder(); + // "\011at " + _r5.o = xmlvm_create_java_string_from_pool(45); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT____java_lang_String(_r4.o, _r7.o); + XMLVM_CHECK_NPE(4) + _r3.o = java_lang_StringBuilder_append___java_lang_Object(_r4.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + + + // Red class access removed: java.io.PrintWriter::println + XMLVM_RED_CLASS_DEPENDENCY(); + _r2.i = _r2.i + 1; + goto label16; + label51:; + XMLVM_SOURCE_POSITION("Throwable.java", 310) + // "Caused by: " + _r2.o = xmlvm_create_java_string_from_pool(46); + + + // Red class access removed: java.io.PrintWriter::print + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Throwable.java", 311) + + + // Red class access removed: java.io.PrintWriter::println + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Throwable.java", 312) + XMLVM_CHECK_NPE(0) + _r2.o = java_lang_Throwable_getInternalStackTrace__(_r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 313) + _r1.i = java_lang_Throwable_countDuplicates___java_lang_StackTraceElement_1ARRAY_java_lang_StackTraceElement_1ARRAY(_r2.o, _r1.o); + _r3 = _r6; + label68:; + XMLVM_SOURCE_POSITION("Throwable.java", 314) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r4.i = _r4.i - _r1.i; + if (_r3.i < _r4.i) goto label104; + XMLVM_SOURCE_POSITION("Throwable.java", 317) + if (_r1.i <= 0) goto label98; + XMLVM_SOURCE_POSITION("Throwable.java", 318) + _r3.o = __NEW_java_lang_StringBuilder(); + // "\011... " + _r4.o = xmlvm_create_java_string_from_pool(47); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT____java_lang_String(_r3.o, _r4.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_lang_StringBuilder_append___int(_r3.o, _r1.i); + // " more" + _r3.o = xmlvm_create_java_string_from_pool(48); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + + + // Red class access removed: java.io.PrintWriter::println + XMLVM_RED_CLASS_DEPENDENCY(); + label98:; + XMLVM_SOURCE_POSITION("Throwable.java", 321) + //java_lang_Throwable_getCause__[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Throwable*) _r0.o)->tib->vtable[6])(_r0.o); + _r1 = _r2; + goto label25; + label104:; + XMLVM_SOURCE_POSITION("Throwable.java", 315) + _r4.o = __NEW_java_lang_StringBuilder(); + // "\011at " + _r5.o = xmlvm_create_java_string_from_pool(45); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT____java_lang_String(_r4.o, _r7.o); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(4) + _r4.o = java_lang_StringBuilder_append___java_lang_Object(_r4.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(4) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o); + + + // Red class access removed: java.io.PrintWriter::println + XMLVM_RED_CLASS_DEPENDENCY(); + _r3.i = _r3.i + 1; + goto label68; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Throwable_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_toString__] + XMLVM_ENTER_METHOD("java.lang.Throwable", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 327) + XMLVM_CHECK_NPE(5) + _r0.o = java_lang_Throwable_getLocalizedMessage__(_r5.o); + XMLVM_SOURCE_POSITION("Throwable.java", 328) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(5) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[3])(_r5.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_Class_getName__(_r1.o); + XMLVM_SOURCE_POSITION("Throwable.java", 329) + if (_r0.o != JAVA_NULL) goto label16; + _r0 = _r1; + label15:; + XMLVM_SOURCE_POSITION("Throwable.java", 330) + XMLVM_SOURCE_POSITION("Throwable.java", 332) + XMLVM_EXIT_METHOD() + return _r0.o; + label16:; + _r2.o = __NEW_java_lang_StringBuilder(); + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + _r3.i = _r3.i + 2; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + _r3.i = _r3.i + _r4.i; + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT____int(_r2.o, _r3.i); + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r1.o); + // ": " + _r2.o = xmlvm_create_java_string_from_pool(49); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("Throwable.java", 333) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r0.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Throwable_initCause___java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_initCause___java_lang_Throwable] + XMLVM_ENTER_METHOD("java.lang.Throwable", "initCause", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Throwable.java", 349) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w497aaac20b1b5) + // Begin try + XMLVM_CHECK_NPE(2) + _r0.o = ((java_lang_Throwable*) _r2.o)->fields.java_lang_Throwable.cause_; + if (_r0.o != _r2.o) { XMLVM_MEMCPY(curThread_w497aaac20b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w497aaac20b1b5, sizeof(XMLVM_JMP_BUF)); goto label22; }; + XMLVM_SOURCE_POSITION("Throwable.java", 350) + if (_r3.o == _r2.o) { XMLVM_MEMCPY(curThread_w497aaac20b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w497aaac20b1b5, sizeof(XMLVM_JMP_BUF)); goto label11; }; + XMLVM_SOURCE_POSITION("Throwable.java", 351) + XMLVM_CHECK_NPE(2) + ((java_lang_Throwable*) _r2.o)->fields.java_lang_Throwable.cause_ = _r3.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w497aaac20b1b5) + XMLVM_CATCH_SPECIFIC(w497aaac20b1b5,java_lang_Object,19) + XMLVM_CATCH_END(w497aaac20b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w497aaac20b1b5) + XMLVM_SOURCE_POSITION("Throwable.java", 352) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return _r2.o; + label11:; + XMLVM_TRY_BEGIN(w497aaac20b1c10) + // Begin try + XMLVM_SOURCE_POSITION("Throwable.java", 354) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "Cause cannot be the receiver" + _r1.o = xmlvm_create_java_string_from_pool(50); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w497aaac20b1c10) + XMLVM_CATCH_SPECIFIC(w497aaac20b1c10,java_lang_Object,19) + XMLVM_CATCH_END(w497aaac20b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w497aaac20b1c10) + label19:; + java_lang_Thread* curThread_w497aaac20b1c12 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w497aaac20b1c12->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_TRY_BEGIN(w497aaac20b1c16) + // Begin try + XMLVM_SOURCE_POSITION("Throwable.java", 356) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "Cause already initialized" + _r1.o = xmlvm_create_java_string_from_pool(51); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w497aaac20b1c16) + XMLVM_CATCH_SPECIFIC(w497aaac20b1c16,java_lang_Object,19) + XMLVM_CATCH_END(w497aaac20b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w497aaac20b1c16) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_Throwable_getCause__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_getCause__] + XMLVM_ENTER_METHOD("java.lang.Throwable", "getCause", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Throwable.java", 366) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.cause_; + if (_r0.o != _r1.o) goto label6; + XMLVM_SOURCE_POSITION("Throwable.java", 367) + _r0.o = JAVA_NULL; + label5:; + XMLVM_SOURCE_POSITION("Throwable.java", 369) + XMLVM_EXIT_METHOD() + return _r0.o; + label6:; + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_Throwable*) _r1.o)->fields.java_lang_Throwable.cause_; + goto label5; + //XMLVM_END_WRAPPER +} + +void java_lang_Throwable_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_Throwable_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.lang.Throwable", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Throwable.java", 374) + XMLVM_CHECK_NPE(0) + java_lang_Throwable_getInternalStackTrace__(_r0.o); + XMLVM_SOURCE_POSITION("Throwable.java", 375) + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Throwable.java", 376) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_Throwable.h b/tests/nbody-java/java_lang_Throwable.h new file mode 100644 index 0000000000000..d2db13ae352f7 --- /dev/null +++ b/tests/nbody-java/java_lang_Throwable.h @@ -0,0 +1,110 @@ +#ifndef __JAVA_LANG_THROWABLE__ +#define __JAVA_LANG_THROWABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_Throwable 0 +// Implemented interfaces: +#include "java_io_Serializable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +XMLVM_FORWARD_DECL(java_io_PrintStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StackTraceElement +#define XMLVM_FORWARD_DECL_java_lang_StackTraceElement +XMLVM_FORWARD_DECL(java_lang_StackTraceElement) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +// Class declarations for java.lang.Throwable +XMLVM_DEFINE_CLASS(java_lang_Throwable, 8, XMLVM_ITABLE_SIZE_java_lang_Throwable) + +extern JAVA_OBJECT __CLASS_java_lang_Throwable; +extern JAVA_OBJECT __CLASS_java_lang_Throwable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Throwable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_Throwable_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Throwable +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_Throwable \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT detailMessage_; \ + JAVA_OBJECT cause_; \ + JAVA_OBJECT stackTrace_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_Throwable \ + } java_lang_Throwable + +struct java_lang_Throwable { + __TIB_DEFINITION_java_lang_Throwable* tib; + struct { + __INSTANCE_FIELDS_java_lang_Throwable; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +typedef struct java_lang_Throwable java_lang_Throwable; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_Throwable 8 +#define XMLVM_VTABLE_IDX_java_lang_Throwable_getMessage__ 7 +#define XMLVM_VTABLE_IDX_java_lang_Throwable_toString__ 5 +#define XMLVM_VTABLE_IDX_java_lang_Throwable_getCause__ 6 + +void __INIT_java_lang_Throwable(); +void __INIT_IMPL_java_lang_Throwable(); +void __DELETE_java_lang_Throwable(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_Throwable(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_Throwable(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_Throwable(); +void xmlvm_init_native_java_lang_Throwable(); +JAVA_LONG java_lang_Throwable_GET_serialVersionUID(); +void java_lang_Throwable_PUT_serialVersionUID(JAVA_LONG v); +void java_lang_Throwable___INIT___(JAVA_OBJECT me); +void java_lang_Throwable___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Throwable___INIT____java_lang_String_java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_Throwable___INIT____java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_Throwable_fillInStackTrace__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_lang_Throwable_getMessage__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Throwable_getLocalizedMessage__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Throwable_getStackTraceImpl__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Throwable_getStackTrace__(JAVA_OBJECT me); +void java_lang_Throwable_setStackTrace___java_lang_StackTraceElement_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Throwable_printStackTrace__(JAVA_OBJECT me); +JAVA_INT java_lang_Throwable_countDuplicates___java_lang_StackTraceElement_1ARRAY_java_lang_StackTraceElement_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_Throwable_getInternalStackTrace__(JAVA_OBJECT me); +void java_lang_Throwable_printStackTrace___java_io_PrintStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_Throwable_printStackTrace___java_io_PrintWriter(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT java_lang_Throwable_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_Throwable_initCause___java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_OBJECT java_lang_Throwable_getCause__(JAVA_OBJECT me); +void java_lang_Throwable_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_ref_Reference.c b/tests/nbody-java/java_lang_ref_Reference.c new file mode 100644 index 0000000000000..31b785eb85a76 --- /dev/null +++ b/tests/nbody-java/java_lang_ref_Reference.c @@ -0,0 +1,277 @@ +#include "xmlvm.h" +#include "java_lang_ref_ReferenceQueue.h" + +#include "java_lang_ref_Reference.h" + +#define XMLVM_CURRENT_CLASS_NAME Reference +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ref_Reference + +__TIB_DEFINITION_java_lang_ref_Reference __TIB_java_lang_ref_Reference = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ref_Reference, // classInitializer + "java.lang.ref.Reference", // className + "java.lang.ref", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_ref_Reference), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ref_Reference; +JAVA_OBJECT __CLASS_java_lang_ref_Reference_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ref_Reference_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ref_Reference_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ref_Reference() +{ + staticInitializerLock(&__TIB_java_lang_ref_Reference); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ref_Reference.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ref_Reference.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ref_Reference); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ref_Reference.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ref_Reference.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ref_Reference.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ref.Reference") + __INIT_IMPL_java_lang_ref_Reference(); + } +} + +void __INIT_IMPL_java_lang_ref_Reference() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_ref_Reference.newInstanceFunc = __NEW_INSTANCE_java_lang_ref_Reference; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ref_Reference.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_ref_Reference.numImplementedInterfaces = 0; + __TIB_java_lang_ref_Reference.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_lang_ref_Reference.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ref_Reference.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ref_Reference.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ref_Reference.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ref_Reference.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ref_Reference.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ref_Reference.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ref_Reference.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ref_Reference = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ref_Reference); + __TIB_java_lang_ref_Reference.clazz = __CLASS_java_lang_ref_Reference; + __TIB_java_lang_ref_Reference.baseType = JAVA_NULL; + __CLASS_java_lang_ref_Reference_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_Reference); + __CLASS_java_lang_ref_Reference_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_Reference_1ARRAY); + __CLASS_java_lang_ref_Reference_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_Reference_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ref_Reference] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ref_Reference.classInitialized = 1; +} + +void __DELETE_java_lang_ref_Reference(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ref_Reference] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ref_Reference(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_ref_Reference*) me)->fields.java_lang_ref_Reference.obj_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ref_Reference] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ref_Reference() +{ XMLVM_CLASS_INIT(java_lang_ref_Reference) +java_lang_ref_Reference* me = (java_lang_ref_Reference*) XMLVM_MALLOC(sizeof(java_lang_ref_Reference)); + me->tib = &__TIB_java_lang_ref_Reference; + __INIT_INSTANCE_MEMBERS_java_lang_ref_Reference(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ref_Reference] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ref_Reference() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_ref_Reference(); + java_lang_ref_Reference___INIT___(me); + return me; +} + +void java_lang_ref_Reference___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference___INIT___] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Reference.java", 48) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Reference.java", 49) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ref_Reference_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_clear__] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "clear", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Reference.java", 56) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ref_Reference_enqueue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_enqueue__] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "enqueue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Reference.java", 67) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ref_Reference_get__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_get__] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Reference.java", 77) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_ref_Reference*) _r1.o)->fields.java_lang_ref_Reference.obj_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ref_Reference_isEnqueued__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_isEnqueued__] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "isEnqueued", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Reference.java", 87) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_ref_Reference_initReference___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_initReference___java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "initReference", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Reference.java", 98) + XMLVM_CHECK_NPE(0) + ((java_lang_ref_Reference*) _r0.o)->fields.java_lang_ref_Reference.obj_ = _r1.o; + XMLVM_SOURCE_POSITION("Reference.java", 99) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ref_Reference_initReference___java_lang_Object_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_initReference___java_lang_Object_java_lang_ref_ReferenceQueue] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "initReference", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Reference.java", 110) + XMLVM_CHECK_NPE(0) + ((java_lang_ref_Reference*) _r0.o)->fields.java_lang_ref_Reference.obj_ = _r1.o; + XMLVM_SOURCE_POSITION("Reference.java", 111) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ref_Reference_enqueueImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_enqueueImpl__] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "enqueueImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Reference.java", 120) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_ref_Reference_dequeue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_Reference_dequeue__] + XMLVM_ENTER_METHOD("java.lang.ref.Reference", "dequeue", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Reference.java", 128) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ref_Reference.h b/tests/nbody-java/java_lang_ref_Reference.h new file mode 100644 index 0000000000000..10e09c116158b --- /dev/null +++ b/tests/nbody-java/java_lang_ref_Reference.h @@ -0,0 +1,64 @@ +#ifndef __JAVA_LANG_REF_REFERENCE__ +#define __JAVA_LANG_REF_REFERENCE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ref_Reference 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +#define XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +XMLVM_FORWARD_DECL(java_lang_ref_ReferenceQueue) +#endif +// Class declarations for java.lang.ref.Reference +XMLVM_DEFINE_CLASS(java_lang_ref_Reference, 6, XMLVM_ITABLE_SIZE_java_lang_ref_Reference) + +extern JAVA_OBJECT __CLASS_java_lang_ref_Reference; +extern JAVA_OBJECT __CLASS_java_lang_ref_Reference_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ref_Reference_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ref_Reference_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ref_Reference +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ref_Reference \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT obj_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ref_Reference \ + } java_lang_ref_Reference + +struct java_lang_ref_Reference { + __TIB_DEFINITION_java_lang_ref_Reference* tib; + struct { + __INSTANCE_FIELDS_java_lang_ref_Reference; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_Reference +#define XMLVM_FORWARD_DECL_java_lang_ref_Reference +typedef struct java_lang_ref_Reference java_lang_ref_Reference; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ref_Reference 6 + +void __INIT_java_lang_ref_Reference(); +void __INIT_IMPL_java_lang_ref_Reference(); +void __DELETE_java_lang_ref_Reference(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ref_Reference(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ref_Reference(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ref_Reference(); +void java_lang_ref_Reference___INIT___(JAVA_OBJECT me); +void java_lang_ref_Reference_clear__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ref_Reference_enqueue__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ref_Reference_get__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_ref_Reference_isEnqueued__(JAVA_OBJECT me); +void java_lang_ref_Reference_initReference___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ref_Reference_initReference___java_lang_Object_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_lang_ref_Reference_enqueueImpl__(JAVA_OBJECT me); +void java_lang_ref_Reference_dequeue__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_ref_ReferenceQueue.c b/tests/nbody-java/java_lang_ref_ReferenceQueue.c new file mode 100644 index 0000000000000..6082dbc47b079 --- /dev/null +++ b/tests/nbody-java/java_lang_ref_ReferenceQueue.c @@ -0,0 +1,673 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_System.h" +#include "java_lang_ref_Reference.h" + +#include "java_lang_ref_ReferenceQueue.h" + +#define XMLVM_CURRENT_CLASS_NAME ReferenceQueue +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ref_ReferenceQueue + +__TIB_DEFINITION_java_lang_ref_ReferenceQueue __TIB_java_lang_ref_ReferenceQueue = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ref_ReferenceQueue, // classInitializer + "java.lang.ref.ReferenceQueue", // className + "java.lang.ref", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_ref_ReferenceQueue), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue; +JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_lang_ref_ReferenceQueue_DEFAULT_QUEUE_SIZE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ref_ReferenceQueue() +{ + staticInitializerLock(&__TIB_java_lang_ref_ReferenceQueue); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ref_ReferenceQueue.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ref_ReferenceQueue.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ref_ReferenceQueue); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ref_ReferenceQueue.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ref_ReferenceQueue.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ref_ReferenceQueue.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ref.ReferenceQueue") + __INIT_IMPL_java_lang_ref_ReferenceQueue(); + } +} + +void __INIT_IMPL_java_lang_ref_ReferenceQueue() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_ref_ReferenceQueue.newInstanceFunc = __NEW_INSTANCE_java_lang_ref_ReferenceQueue; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ref_ReferenceQueue.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_ref_ReferenceQueue.numImplementedInterfaces = 0; + __TIB_java_lang_ref_ReferenceQueue.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_ref_ReferenceQueue_DEFAULT_QUEUE_SIZE = 128; + + __TIB_java_lang_ref_ReferenceQueue.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ref_ReferenceQueue.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ref_ReferenceQueue.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ref_ReferenceQueue.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ref_ReferenceQueue.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ref_ReferenceQueue.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ref_ReferenceQueue.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ref_ReferenceQueue.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ref_ReferenceQueue = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ref_ReferenceQueue); + __TIB_java_lang_ref_ReferenceQueue.clazz = __CLASS_java_lang_ref_ReferenceQueue; + __TIB_java_lang_ref_ReferenceQueue.baseType = JAVA_NULL; + __CLASS_java_lang_ref_ReferenceQueue_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_ReferenceQueue); + __CLASS_java_lang_ref_ReferenceQueue_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_ReferenceQueue_1ARRAY); + __CLASS_java_lang_ref_ReferenceQueue_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_ReferenceQueue_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ref_ReferenceQueue] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ref_ReferenceQueue.classInitialized = 1; +} + +void __DELETE_java_lang_ref_ReferenceQueue(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ref_ReferenceQueue] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_ref_ReferenceQueue*) me)->fields.java_lang_ref_ReferenceQueue.references_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_ref_ReferenceQueue*) me)->fields.java_lang_ref_ReferenceQueue.head_ = 0; + ((java_lang_ref_ReferenceQueue*) me)->fields.java_lang_ref_ReferenceQueue.tail_ = 0; + ((java_lang_ref_ReferenceQueue*) me)->fields.java_lang_ref_ReferenceQueue.empty_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ref_ReferenceQueue] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ref_ReferenceQueue() +{ XMLVM_CLASS_INIT(java_lang_ref_ReferenceQueue) +java_lang_ref_ReferenceQueue* me = (java_lang_ref_ReferenceQueue*) XMLVM_MALLOC(sizeof(java_lang_ref_ReferenceQueue)); + me->tib = &__TIB_java_lang_ref_ReferenceQueue; + __INIT_INSTANCE_MEMBERS_java_lang_ref_ReferenceQueue(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ref_ReferenceQueue] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ref_ReferenceQueue() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_ref_ReferenceQueue(); + java_lang_ref_ReferenceQueue___INIT___(me); + return me; +} + +JAVA_INT java_lang_ref_ReferenceQueue_GET_DEFAULT_QUEUE_SIZE() +{ + XMLVM_CLASS_INIT(java_lang_ref_ReferenceQueue) + return _STATIC_java_lang_ref_ReferenceQueue_DEFAULT_QUEUE_SIZE; +} + +void java_lang_ref_ReferenceQueue_PUT_DEFAULT_QUEUE_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_ref_ReferenceQueue) +_STATIC_java_lang_ref_ReferenceQueue_DEFAULT_QUEUE_SIZE = v; +} + +void java_lang_ref_ReferenceQueue___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_ReferenceQueue___INIT___] + XMLVM_ENTER_METHOD("java.lang.ref.ReferenceQueue", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r1.i = 0; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 43) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 44) + _r0.i = 128; + XMLVM_CHECK_NPE(2) + _r0.o = java_lang_ref_ReferenceQueue_newArray___int(_r2.o, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_lang_ref_ReferenceQueue*) _r2.o)->fields.java_lang_ref_ReferenceQueue.references_ = _r0.o; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 45) + XMLVM_CHECK_NPE(2) + ((java_lang_ref_ReferenceQueue*) _r2.o)->fields.java_lang_ref_ReferenceQueue.head_ = _r1.i; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 46) + XMLVM_CHECK_NPE(2) + ((java_lang_ref_ReferenceQueue*) _r2.o)->fields.java_lang_ref_ReferenceQueue.tail_ = _r1.i; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 47) + _r0.i = 1; + XMLVM_CHECK_NPE(2) + ((java_lang_ref_ReferenceQueue*) _r2.o)->fields.java_lang_ref_ReferenceQueue.empty_ = _r0.i; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 48) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ref_ReferenceQueue_newArray___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_ReferenceQueue_newArray___int] + XMLVM_ENTER_METHOD("java.lang.ref.ReferenceQueue", "newArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 52) + XMLVM_CLASS_INIT(java_lang_ref_Reference) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_ref_Reference, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ref_ReferenceQueue_poll__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_ReferenceQueue_poll__] + XMLVM_ENTER_METHOD("java.lang.ref.ReferenceQueue", "poll", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 65) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w1725aaab7b1b4) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 66) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.empty_; + if (_r0.i == 0) { XMLVM_MEMCPY(curThread_w1725aaab7b1b4->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab7b1b4, sizeof(XMLVM_JMP_BUF)); goto label8; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 67) + java_lang_Object_releaseLockRecursive__(_r3.o); + _r0.o = JAVA_NULL; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab7b1b4) + XMLVM_CATCH_SPECIFIC(w1725aaab7b1b4,java_lang_Object,42) + XMLVM_CATCH_END(w1725aaab7b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab7b1b4) + label7:; + XMLVM_TRY_BEGIN(w1725aaab7b1b6) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 78) + XMLVM_MEMCPY(curThread_w1725aaab7b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab7b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab7b1b6) + XMLVM_CATCH_SPECIFIC(w1725aaab7b1b6,java_lang_Object,42) + XMLVM_CATCH_END(w1725aaab7b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab7b1b6) + label8:; + XMLVM_TRY_BEGIN(w1725aaab7b1b8) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 69) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.references_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 70) + XMLVM_CHECK_NPE(0) + java_lang_ref_Reference_dequeue__(_r0.o); + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 71) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_; + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r1.i != _r2.i) { XMLVM_MEMCPY(curThread_w1725aaab7b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab7b1b8, sizeof(XMLVM_JMP_BUF)); goto label31; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 72) + _r1.i = 0; + XMLVM_CHECK_NPE(3) + ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_ = _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab7b1b8) + XMLVM_CATCH_SPECIFIC(w1725aaab7b1b8,java_lang_Object,42) + XMLVM_CATCH_END(w1725aaab7b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab7b1b8) + label31:; + XMLVM_TRY_BEGIN(w1725aaab7b1c10) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 74) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.tail_; + if (_r1.i != _r2.i) { XMLVM_MEMCPY(curThread_w1725aaab7b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab7b1c10, sizeof(XMLVM_JMP_BUF)); goto label40; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 75) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.empty_ = _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab7b1c10) + XMLVM_CATCH_SPECIFIC(w1725aaab7b1c10,java_lang_Object,42) + XMLVM_CATCH_END(w1725aaab7b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab7b1c10) + label40:; + XMLVM_TRY_BEGIN(w1725aaab7b1c12) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + { XMLVM_MEMCPY(curThread_w1725aaab7b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab7b1c12, sizeof(XMLVM_JMP_BUF)); goto label7; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab7b1c12) + XMLVM_CATCH_SPECIFIC(w1725aaab7b1c12,java_lang_Object,42) + XMLVM_CATCH_END(w1725aaab7b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab7b1c12) + label42:; + XMLVM_TRY_BEGIN(w1725aaab7b1c14) + // Begin try + java_lang_Thread* curThread_w1725aaab7b1c14aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1725aaab7b1c14aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab7b1c14) + XMLVM_CATCH_SPECIFIC(w1725aaab7b1c14,java_lang_Object,42) + XMLVM_CATCH_END(w1725aaab7b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab7b1c14) + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ref_ReferenceQueue_remove__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_ReferenceQueue_remove__] + XMLVM_ENTER_METHOD("java.lang.ref.ReferenceQueue", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 91) + _r0.l = 0; + XMLVM_CHECK_NPE(2) + _r0.o = java_lang_ref_ReferenceQueue_remove___long(_r2.o, _r0.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_ref_ReferenceQueue_remove___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_ReferenceQueue_remove___long] + XMLVM_ENTER_METHOD("java.lang.ref.ReferenceQueue", "remove", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r3.o = me; + _r4.l = n1; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 112) + _r0.l = 0; + _r0.i = _r4.l > _r0.l ? 1 : (_r4.l == _r0.l ? 0 : -1); + if (_r0.i >= 0) goto label12; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 113) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 117) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w1725aaab9b1c14) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 118) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.empty_; + if (_r0.i == 0) { XMLVM_MEMCPY(curThread_w1725aaab9b1c14->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab9b1c14, sizeof(XMLVM_JMP_BUF)); goto label27; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 119) + XMLVM_CHECK_NPE(3) + java_lang_Object_wait___long(_r3.o, _r4.l); + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 120) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.empty_; + if (_r0.i == 0) { XMLVM_MEMCPY(curThread_w1725aaab9b1c14->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab9b1c14, sizeof(XMLVM_JMP_BUF)); goto label27; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 121) + java_lang_Object_releaseLockRecursive__(_r3.o); + _r0.o = JAVA_NULL; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab9b1c14) + XMLVM_CATCH_SPECIFIC(w1725aaab9b1c14,java_lang_Object,61) + XMLVM_CATCH_END(w1725aaab9b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab9b1c14) + label26:; + XMLVM_TRY_BEGIN(w1725aaab9b1c16) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 135) + XMLVM_MEMCPY(curThread_w1725aaab9b1c16->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab9b1c16, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab9b1c16) + XMLVM_CATCH_SPECIFIC(w1725aaab9b1c16,java_lang_Object,61) + XMLVM_CATCH_END(w1725aaab9b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab9b1c16) + label27:; + XMLVM_TRY_BEGIN(w1725aaab9b1c18) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 124) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.references_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 125) + XMLVM_CHECK_NPE(0) + java_lang_ref_Reference_dequeue__(_r0.o); + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 126) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_; + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r1.i != _r2.i) { XMLVM_MEMCPY(curThread_w1725aaab9b1c18->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab9b1c18, sizeof(XMLVM_JMP_BUF)); goto label50; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 127) + _r1.i = 0; + XMLVM_CHECK_NPE(3) + ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_ = _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab9b1c18) + XMLVM_CATCH_SPECIFIC(w1725aaab9b1c18,java_lang_Object,61) + XMLVM_CATCH_END(w1725aaab9b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab9b1c18) + label50:; + XMLVM_TRY_BEGIN(w1725aaab9b1c20) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 129) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.head_; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.tail_; + if (_r1.i != _r2.i) { XMLVM_MEMCPY(curThread_w1725aaab9b1c20->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab9b1c20, sizeof(XMLVM_JMP_BUF)); goto label64; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 130) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + ((java_lang_ref_ReferenceQueue*) _r3.o)->fields.java_lang_ref_ReferenceQueue.empty_ = _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab9b1c20) + XMLVM_CATCH_SPECIFIC(w1725aaab9b1c20,java_lang_Object,61) + XMLVM_CATCH_END(w1725aaab9b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab9b1c20) + label59:; + XMLVM_TRY_BEGIN(w1725aaab9b1c22) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + { XMLVM_MEMCPY(curThread_w1725aaab9b1c22->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaab9b1c22, sizeof(XMLVM_JMP_BUF)); goto label26; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab9b1c22) + XMLVM_CATCH_SPECIFIC(w1725aaab9b1c22,java_lang_Object,61) + XMLVM_CATCH_END(w1725aaab9b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab9b1c22) + label61:; + XMLVM_TRY_BEGIN(w1725aaab9b1c24) + // Begin try + java_lang_Thread* curThread_w1725aaab9b1c24aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1725aaab9b1c24aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab9b1c24) + XMLVM_CATCH_SPECIFIC(w1725aaab9b1c24,java_lang_Object,61) + XMLVM_CATCH_END(w1725aaab9b1c24) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab9b1c24) + XMLVM_THROW_CUSTOM(_r0.o) + label64:; + XMLVM_TRY_BEGIN(w1725aaab9b1c27) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 132) + XMLVM_CHECK_NPE(3) + java_lang_Object_notifyAll__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaab9b1c27) + XMLVM_CATCH_SPECIFIC(w1725aaab9b1c27,java_lang_Object,61) + XMLVM_CATCH_END(w1725aaab9b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaab9b1c27) + goto label59; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_ref_ReferenceQueue_enqueue___java_lang_ref_Reference(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_ReferenceQueue_enqueue___java_lang_ref_Reference] + XMLVM_ENTER_METHOD("java.lang.ref.ReferenceQueue", "enqueue", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 147) + java_lang_Object_acquireLockRecursive__(_r6.o); + XMLVM_TRY_BEGIN(w1725aaac10b1b5) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 148) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.empty_; + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w1725aaac10b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaac10b1b5, sizeof(XMLVM_JMP_BUF)); goto label68; }; + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.head_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_; + if (_r0.i != _r1.i) { XMLVM_MEMCPY(curThread_w1725aaac10b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaac10b1b5, sizeof(XMLVM_JMP_BUF)); goto label68; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 150) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.d = (JAVA_DOUBLE) _r0.i; + _r2.d = 1.1; + _r0.d = _r0.d * _r2.d; + _r0.i = (JAVA_INT) _r0.d; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 151) + XMLVM_CHECK_NPE(6) + _r0.o = java_lang_ref_ReferenceQueue_newArray___int(_r6.o, _r0.i); + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 152) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.head_; + _r3.i = 0; + XMLVM_CHECK_NPE(6) + _r4.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + XMLVM_CHECK_NPE(6) + _r5.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.head_; + _r4.i = _r4.i - _r5.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 153) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_; + if (_r1.i <= 0) { XMLVM_MEMCPY(curThread_w1725aaac10b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaac10b1b5, sizeof(XMLVM_JMP_BUF)); goto label58; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 154) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r2.i = 0; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + XMLVM_CHECK_NPE(6) + _r4.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.head_; + _r3.i = _r3.i - _r4.i; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaac10b1b5) + XMLVM_CATCH_SPECIFIC(w1725aaac10b1b5,java_lang_Object,97) + XMLVM_CATCH_END(w1725aaac10b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaac10b1b5) + label58:; + XMLVM_TRY_BEGIN(w1725aaac10b1b7) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 156) + _r1.i = 0; + XMLVM_CHECK_NPE(6) + ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.head_ = _r1.i; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 157) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(6) + ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_ = _r1.i; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 158) + XMLVM_CHECK_NPE(6) + ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_ = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaac10b1b7) + XMLVM_CATCH_SPECIFIC(w1725aaac10b1b7,java_lang_Object,97) + XMLVM_CATCH_END(w1725aaac10b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaac10b1b7) + label68:; + XMLVM_TRY_BEGIN(w1725aaac10b1b9) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 160) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(6) + ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.o; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 161) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_; + XMLVM_CHECK_NPE(6) + _r1.o = ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.references_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i != _r1.i) { XMLVM_MEMCPY(curThread_w1725aaac10b1b9->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaac10b1b9, sizeof(XMLVM_JMP_BUF)); goto label88; }; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 162) + _r0.i = 0; + XMLVM_CHECK_NPE(6) + ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.tail_ = _r0.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaac10b1b9) + XMLVM_CATCH_SPECIFIC(w1725aaac10b1b9,java_lang_Object,97) + XMLVM_CATCH_END(w1725aaac10b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaac10b1b9) + label88:; + XMLVM_TRY_BEGIN(w1725aaac10b1c11) + // Begin try + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 164) + _r0.i = 0; + XMLVM_CHECK_NPE(6) + ((java_lang_ref_ReferenceQueue*) _r6.o)->fields.java_lang_ref_ReferenceQueue.empty_ = _r0.i; + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 165) + XMLVM_CHECK_NPE(6) + java_lang_Object_notifyAll__(_r6.o); + java_lang_Object_releaseLockRecursive__(_r6.o); + XMLVM_SOURCE_POSITION("ReferenceQueue.java", 167) + _r0.i = 1; + XMLVM_MEMCPY(curThread_w1725aaac10b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1725aaac10b1c11, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r0.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaac10b1c11) + XMLVM_CATCH_SPECIFIC(w1725aaac10b1c11,java_lang_Object,97) + XMLVM_CATCH_END(w1725aaac10b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaac10b1c11) + label97:; + XMLVM_TRY_BEGIN(w1725aaac10b1c13) + // Begin try + java_lang_Thread* curThread_w1725aaac10b1c13aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1725aaac10b1c13aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1725aaac10b1c13) + XMLVM_CATCH_SPECIFIC(w1725aaac10b1c13,java_lang_Object,97) + XMLVM_CATCH_END(w1725aaac10b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w1725aaac10b1c13) + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ref_ReferenceQueue.h b/tests/nbody-java/java_lang_ref_ReferenceQueue.h new file mode 100644 index 0000000000000..79a77ffc2bc65 --- /dev/null +++ b/tests/nbody-java/java_lang_ref_ReferenceQueue.h @@ -0,0 +1,74 @@ +#ifndef __JAVA_LANG_REF_REFERENCEQUEUE__ +#define __JAVA_LANG_REF_REFERENCEQUEUE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ref_ReferenceQueue 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_Reference +#define XMLVM_FORWARD_DECL_java_lang_ref_Reference +XMLVM_FORWARD_DECL(java_lang_ref_Reference) +#endif +// Class declarations for java.lang.ref.ReferenceQueue +XMLVM_DEFINE_CLASS(java_lang_ref_ReferenceQueue, 6, XMLVM_ITABLE_SIZE_java_lang_ref_ReferenceQueue) + +extern JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue; +extern JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ref_ReferenceQueue_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ref_ReferenceQueue +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ref_ReferenceQueue \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT references_; \ + JAVA_INT head_; \ + JAVA_INT tail_; \ + JAVA_BOOLEAN empty_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ref_ReferenceQueue \ + } java_lang_ref_ReferenceQueue + +struct java_lang_ref_ReferenceQueue { + __TIB_DEFINITION_java_lang_ref_ReferenceQueue* tib; + struct { + __INSTANCE_FIELDS_java_lang_ref_ReferenceQueue; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +#define XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +typedef struct java_lang_ref_ReferenceQueue java_lang_ref_ReferenceQueue; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ref_ReferenceQueue 6 + +void __INIT_java_lang_ref_ReferenceQueue(); +void __INIT_IMPL_java_lang_ref_ReferenceQueue(); +void __DELETE_java_lang_ref_ReferenceQueue(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ref_ReferenceQueue(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ref_ReferenceQueue(); +JAVA_INT java_lang_ref_ReferenceQueue_GET_DEFAULT_QUEUE_SIZE(); +void java_lang_ref_ReferenceQueue_PUT_DEFAULT_QUEUE_SIZE(JAVA_INT v); +void java_lang_ref_ReferenceQueue___INIT___(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ref_ReferenceQueue_newArray___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_lang_ref_ReferenceQueue_poll__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ref_ReferenceQueue_remove__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_ref_ReferenceQueue_remove___long(JAVA_OBJECT me, JAVA_LONG n1); +JAVA_BOOLEAN java_lang_ref_ReferenceQueue_enqueue___java_lang_ref_Reference(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_lang_ref_WeakReference.c b/tests/nbody-java/java_lang_ref_WeakReference.c new file mode 100644 index 0000000000000..3cf580d8f8d25 --- /dev/null +++ b/tests/nbody-java/java_lang_ref_WeakReference.c @@ -0,0 +1,185 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_lang_ref_ReferenceQueue.h" + +#include "java_lang_ref_WeakReference.h" + +#define XMLVM_CURRENT_CLASS_NAME WeakReference +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_ref_WeakReference + +__TIB_DEFINITION_java_lang_ref_WeakReference __TIB_java_lang_ref_WeakReference = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_ref_WeakReference, // classInitializer + "java.lang.ref.WeakReference", // className + "java.lang.ref", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/ref/Reference;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_ref_Reference, // extends + sizeof(java_lang_ref_WeakReference), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_ref_WeakReference; +JAVA_OBJECT __CLASS_java_lang_ref_WeakReference_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_ref_WeakReference_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_ref_WeakReference_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_ref_WeakReference() +{ + staticInitializerLock(&__TIB_java_lang_ref_WeakReference); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_ref_WeakReference.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_ref_WeakReference.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_ref_WeakReference); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_ref_WeakReference.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_ref_WeakReference.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_ref_WeakReference.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.ref.WeakReference") + __INIT_IMPL_java_lang_ref_WeakReference(); + } +} + +void __INIT_IMPL_java_lang_ref_WeakReference() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_ref_Reference) + __TIB_java_lang_ref_WeakReference.newInstanceFunc = __NEW_INSTANCE_java_lang_ref_WeakReference; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_ref_WeakReference.vtable, __TIB_java_lang_ref_Reference.vtable, sizeof(__TIB_java_lang_ref_Reference.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_ref_WeakReference.numImplementedInterfaces = 0; + __TIB_java_lang_ref_WeakReference.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_lang_ref_WeakReference.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_ref_WeakReference.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_ref_WeakReference.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_ref_WeakReference.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_ref_WeakReference.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_ref_WeakReference.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_ref_WeakReference.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_ref_WeakReference.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_ref_WeakReference = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_ref_WeakReference); + __TIB_java_lang_ref_WeakReference.clazz = __CLASS_java_lang_ref_WeakReference; + __TIB_java_lang_ref_WeakReference.baseType = JAVA_NULL; + __CLASS_java_lang_ref_WeakReference_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_WeakReference); + __CLASS_java_lang_ref_WeakReference_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_WeakReference_1ARRAY); + __CLASS_java_lang_ref_WeakReference_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_ref_WeakReference_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_ref_WeakReference] + //XMLVM_END_WRAPPER + + __TIB_java_lang_ref_WeakReference.classInitialized = 1; +} + +void __DELETE_java_lang_ref_WeakReference(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_ref_WeakReference] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_ref_WeakReference(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_ref_Reference(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_ref_WeakReference] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_ref_WeakReference() +{ XMLVM_CLASS_INIT(java_lang_ref_WeakReference) +java_lang_ref_WeakReference* me = (java_lang_ref_WeakReference*) XMLVM_MALLOC(sizeof(java_lang_ref_WeakReference)); + me->tib = &__TIB_java_lang_ref_WeakReference; + __INIT_INSTANCE_MEMBERS_java_lang_ref_WeakReference(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_ref_WeakReference] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_ref_WeakReference() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_ref_WeakReference___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_WeakReference___INIT____java_lang_Object] + XMLVM_ENTER_METHOD("java.lang.ref.WeakReference", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("WeakReference.java", 82) + XMLVM_CHECK_NPE(0) + java_lang_ref_Reference___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("WeakReference.java", 83) + XMLVM_CHECK_NPE(0) + java_lang_ref_Reference_initReference___java_lang_Object(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("WeakReference.java", 84) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_ref_WeakReference___INIT____java_lang_Object_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_ref_WeakReference___INIT____java_lang_Object_java_lang_ref_ReferenceQueue] + XMLVM_ENTER_METHOD("java.lang.ref.WeakReference", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("WeakReference.java", 96) + XMLVM_CHECK_NPE(0) + java_lang_ref_Reference___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("WeakReference.java", 97) + XMLVM_CHECK_NPE(0) + java_lang_ref_Reference_initReference___java_lang_Object_java_lang_ref_ReferenceQueue(_r0.o, _r1.o, _r2.o); + XMLVM_SOURCE_POSITION("WeakReference.java", 98) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_ref_WeakReference.h b/tests/nbody-java/java_lang_ref_WeakReference.h new file mode 100644 index 0000000000000..5e763d619d45b --- /dev/null +++ b/tests/nbody-java/java_lang_ref_WeakReference.h @@ -0,0 +1,60 @@ +#ifndef __JAVA_LANG_REF_WEAKREFERENCE__ +#define __JAVA_LANG_REF_WEAKREFERENCE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_ref_WeakReference 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_ref_Reference.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +#define XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +XMLVM_FORWARD_DECL(java_lang_ref_ReferenceQueue) +#endif +// Class declarations for java.lang.ref.WeakReference +XMLVM_DEFINE_CLASS(java_lang_ref_WeakReference, 6, XMLVM_ITABLE_SIZE_java_lang_ref_WeakReference) + +extern JAVA_OBJECT __CLASS_java_lang_ref_WeakReference; +extern JAVA_OBJECT __CLASS_java_lang_ref_WeakReference_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ref_WeakReference_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_ref_WeakReference_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_ref_WeakReference +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_ref_WeakReference \ + __INSTANCE_FIELDS_java_lang_ref_Reference; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_ref_WeakReference \ + } java_lang_ref_WeakReference + +struct java_lang_ref_WeakReference { + __TIB_DEFINITION_java_lang_ref_WeakReference* tib; + struct { + __INSTANCE_FIELDS_java_lang_ref_WeakReference; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_WeakReference +#define XMLVM_FORWARD_DECL_java_lang_ref_WeakReference +typedef struct java_lang_ref_WeakReference java_lang_ref_WeakReference; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_ref_WeakReference 6 + +void __INIT_java_lang_ref_WeakReference(); +void __INIT_IMPL_java_lang_ref_WeakReference(); +void __DELETE_java_lang_ref_WeakReference(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_ref_WeakReference(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_ref_WeakReference(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_ref_WeakReference(); +void java_lang_ref_WeakReference___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_ref_WeakReference___INIT____java_lang_Object_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_AccessibleObject.c b/tests/nbody-java/java_lang_reflect_AccessibleObject.c new file mode 100644 index 0000000000000..851b8ada30124 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_AccessibleObject.c @@ -0,0 +1,459 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" + +#include "java_lang_reflect_AccessibleObject.h" + +#define XMLVM_CURRENT_CLASS_NAME AccessibleObject +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_reflect_AccessibleObject + +__TIB_DEFINITION_java_lang_reflect_AccessibleObject __TIB_java_lang_reflect_AccessibleObject = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_AccessibleObject, // classInitializer + "java.lang.reflect.AccessibleObject", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_reflect_AccessibleObject), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject; +JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_lang_reflect_AccessibleObject_emptyArgs; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_reflect_AccessibleObject() +{ + staticInitializerLock(&__TIB_java_lang_reflect_AccessibleObject); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_AccessibleObject.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_AccessibleObject.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_AccessibleObject); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_AccessibleObject.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_AccessibleObject.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_AccessibleObject.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.AccessibleObject") + __INIT_IMPL_java_lang_reflect_AccessibleObject(); + } +} + +void __INIT_IMPL_java_lang_reflect_AccessibleObject() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_reflect_AccessibleObject.newInstanceFunc = __NEW_INSTANCE_java_lang_reflect_AccessibleObject; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_reflect_AccessibleObject.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_lang_reflect_AccessibleObject.vtable[9] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_AccessibleObject.vtable[10] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_AccessibleObject.vtable[11] = (VTABLE_PTR) &java_lang_reflect_AccessibleObject_isAnnotationPresent___java_lang_Class; + __TIB_java_lang_reflect_AccessibleObject.vtable[8] = (VTABLE_PTR) &java_lang_reflect_AccessibleObject_getDeclaredAnnotations__; + __TIB_java_lang_reflect_AccessibleObject.vtable[7] = (VTABLE_PTR) &java_lang_reflect_AccessibleObject_getAnnotations__; + __TIB_java_lang_reflect_AccessibleObject.vtable[6] = (VTABLE_PTR) &java_lang_reflect_AccessibleObject_getAnnotation___java_lang_Class; + xmlvm_init_native_java_lang_reflect_AccessibleObject(); + // Initialize interface information + __TIB_java_lang_reflect_AccessibleObject.numImplementedInterfaces = 1; + __TIB_java_lang_reflect_AccessibleObject.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_reflect_AnnotatedElement) + + __TIB_java_lang_reflect_AccessibleObject.implementedInterfaces[0][0] = &__TIB_java_lang_reflect_AnnotatedElement; + // Initialize itable for this class + __TIB_java_lang_reflect_AccessibleObject.itableBegin = &__TIB_java_lang_reflect_AccessibleObject.itable[0]; + __TIB_java_lang_reflect_AccessibleObject.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotation___java_lang_Class] = __TIB_java_lang_reflect_AccessibleObject.vtable[6]; + __TIB_java_lang_reflect_AccessibleObject.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotations__] = __TIB_java_lang_reflect_AccessibleObject.vtable[7]; + __TIB_java_lang_reflect_AccessibleObject.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getDeclaredAnnotations__] = __TIB_java_lang_reflect_AccessibleObject.vtable[8]; + __TIB_java_lang_reflect_AccessibleObject.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_isAnnotationPresent___java_lang_Class] = __TIB_java_lang_reflect_AccessibleObject.vtable[11]; + + _STATIC_java_lang_reflect_AccessibleObject_emptyArgs = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_lang_reflect_AccessibleObject.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_AccessibleObject.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_reflect_AccessibleObject.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_reflect_AccessibleObject.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_reflect_AccessibleObject.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_reflect_AccessibleObject.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_AccessibleObject.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_AccessibleObject.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_reflect_AccessibleObject = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_AccessibleObject); + __TIB_java_lang_reflect_AccessibleObject.clazz = __CLASS_java_lang_reflect_AccessibleObject; + __TIB_java_lang_reflect_AccessibleObject.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_AccessibleObject_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_AccessibleObject); + __CLASS_java_lang_reflect_AccessibleObject_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_AccessibleObject_1ARRAY); + __CLASS_java_lang_reflect_AccessibleObject_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_AccessibleObject_2ARRAY); + java_lang_reflect_AccessibleObject___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_reflect_AccessibleObject] + //XMLVM_END_WRAPPER + + __TIB_java_lang_reflect_AccessibleObject.classInitialized = 1; +} + +void __DELETE_java_lang_reflect_AccessibleObject(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_reflect_AccessibleObject] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_AccessibleObject(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_reflect_AccessibleObject] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_reflect_AccessibleObject() +{ XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) +java_lang_reflect_AccessibleObject* me = (java_lang_reflect_AccessibleObject*) XMLVM_MALLOC(sizeof(java_lang_reflect_AccessibleObject)); + me->tib = &__TIB_java_lang_reflect_AccessibleObject; + __INIT_INSTANCE_MEMBERS_java_lang_reflect_AccessibleObject(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_reflect_AccessibleObject] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_AccessibleObject() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_reflect_AccessibleObject(); + java_lang_reflect_AccessibleObject___INIT___(me); + return me; +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_GET_emptyArgs() +{ + XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) + return _STATIC_java_lang_reflect_AccessibleObject_emptyArgs; +} + +void java_lang_reflect_AccessibleObject_PUT_emptyArgs(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) +_STATIC_java_lang_reflect_AccessibleObject_emptyArgs = v; +} + +void java_lang_reflect_AccessibleObject___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject___CLINIT___] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 48) + _r0.i = 0; + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + java_lang_reflect_AccessibleObject_PUT_emptyArgs( _r0.o); + XMLVM_SOURCE_POSITION("AccessibleObject.java", 39) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_reflect_AccessibleObject_setAccessible___java_lang_reflect_AccessibleObject_1ARRAY_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_setAccessible___java_lang_reflect_AccessibleObject_1ARRAY_boolean] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "setAccessible", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = n1; + _r1.i = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 68) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_marshallArguments___java_lang_Class_1ARRAY_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_marshallArguments___java_lang_Class_1ARRAY_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "marshallArguments", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 83) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void java_lang_reflect_AccessibleObject_initializeClass___java_lang_Class(JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_AccessibleObject_getStackClass___int(JAVA_INT n1)] + +void java_lang_reflect_AccessibleObject___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject___INIT___] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 108) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("AccessibleObject.java", 109) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_AccessibleObject_getParameterTypesImpl__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_AccessibleObject_getModifiers__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_AccessibleObject_getExceptionTypesImpl__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_AccessibleObject_getSignature__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_AccessibleObject_checkAccessibility___java_lang_Class_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)] + +JAVA_BOOLEAN java_lang_reflect_AccessibleObject_isAccessible__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_isAccessible__] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "isAccessible", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 166) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_lang_reflect_AccessibleObject_setAccessible___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_setAccessible___boolean] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "setAccessible", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 180) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_AccessibleObject_isAnnotationPresent___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_isAnnotationPresent___java_lang_Class] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "isAnnotationPresent", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 184) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_getDeclaredAnnotations__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_getDeclaredAnnotations__] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "getDeclaredAnnotations", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 188) + _r0.i = 0; + + + // Red class access removed: java.lang.annotation.Annotation[]::new-array + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_getAnnotations__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_getAnnotations__] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "getAnnotations", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 192) + _r0.i = 0; + + + // Red class access removed: java.lang.annotation.Annotation[]::new-array + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_getAnnotation___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_getAnnotation___java_lang_Class] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "getAnnotation", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 196) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_lang_reflect_AccessibleObject_invokeV___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_invokeV___java_lang_Object_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "invokeV", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 209) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_invokeL___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_invokeL___java_lang_Object_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "invokeL", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 223) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_lang_reflect_AccessibleObject_invokeI___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_invokeI___java_lang_Object_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "invokeI", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 237) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_lang_reflect_AccessibleObject_invokeJ___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_invokeJ___java_lang_Object_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "invokeJ", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 251) + _r0.l = 0; + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_lang_reflect_AccessibleObject_invokeF___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_invokeF___java_lang_Object_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "invokeF", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 265) + _r0.f = 0.0; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_lang_reflect_AccessibleObject_invokeD___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_AccessibleObject_invokeD___java_lang_Object_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.AccessibleObject", "invokeD", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("AccessibleObject.java", 279) + _r0.d = 0.0; + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_reflect_AccessibleObject.h b/tests/nbody-java/java_lang_reflect_AccessibleObject.h new file mode 100644 index 0000000000000..eb0f1f31998d4 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_AccessibleObject.h @@ -0,0 +1,97 @@ +#ifndef __JAVA_LANG_REFLECT_ACCESSIBLEOBJECT__ +#define __JAVA_LANG_REFLECT_ACCESSIBLEOBJECT__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_reflect_AccessibleObject 4 +// Implemented interfaces: +#include "java_lang_reflect_AnnotatedElement.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.lang.reflect.AccessibleObject +XMLVM_DEFINE_CLASS(java_lang_reflect_AccessibleObject, 12, XMLVM_ITABLE_SIZE_java_lang_reflect_AccessibleObject) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject; +extern JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_AccessibleObject_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_AccessibleObject +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_reflect_AccessibleObject \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_AccessibleObject \ + } java_lang_reflect_AccessibleObject + +struct java_lang_reflect_AccessibleObject { + __TIB_DEFINITION_java_lang_reflect_AccessibleObject* tib; + struct { + __INSTANCE_FIELDS_java_lang_reflect_AccessibleObject; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_AccessibleObject +#define XMLVM_FORWARD_DECL_java_lang_reflect_AccessibleObject +typedef struct java_lang_reflect_AccessibleObject java_lang_reflect_AccessibleObject; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_reflect_AccessibleObject 12 +#define XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getModifiers__ 9 +#define XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getSignature__ 10 +#define XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_isAnnotationPresent___java_lang_Class 11 +#define XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getDeclaredAnnotations__ 8 +#define XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getAnnotations__ 7 +#define XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getAnnotation___java_lang_Class 6 + +void __INIT_java_lang_reflect_AccessibleObject(); +void __INIT_IMPL_java_lang_reflect_AccessibleObject(); +void __DELETE_java_lang_reflect_AccessibleObject(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_AccessibleObject(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_reflect_AccessibleObject(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_AccessibleObject(); +void xmlvm_init_native_java_lang_reflect_AccessibleObject(); +JAVA_OBJECT java_lang_reflect_AccessibleObject_GET_emptyArgs(); +void java_lang_reflect_AccessibleObject_PUT_emptyArgs(JAVA_OBJECT v); +void java_lang_reflect_AccessibleObject___CLINIT_(); +void java_lang_reflect_AccessibleObject_setAccessible___java_lang_reflect_AccessibleObject_1ARRAY_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2); +JAVA_OBJECT java_lang_reflect_AccessibleObject_marshallArguments___java_lang_Class_1ARRAY_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_reflect_AccessibleObject_initializeClass___java_lang_Class(JAVA_OBJECT n1); +JAVA_OBJECT java_lang_reflect_AccessibleObject_getStackClass___int(JAVA_INT n1); +void java_lang_reflect_AccessibleObject___INIT___(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_AccessibleObject_getParameterTypesImpl__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_reflect_AccessibleObject_getModifiers__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_AccessibleObject_getExceptionTypesImpl__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_OBJECT java_lang_reflect_AccessibleObject_getSignature__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_reflect_AccessibleObject_checkAccessibility___java_lang_Class_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_lang_reflect_AccessibleObject_isAccessible__(JAVA_OBJECT me); +void java_lang_reflect_AccessibleObject_setAccessible___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +// Vtable index: 11 +JAVA_BOOLEAN java_lang_reflect_AccessibleObject_isAnnotationPresent___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_OBJECT java_lang_reflect_AccessibleObject_getDeclaredAnnotations__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_lang_reflect_AccessibleObject_getAnnotations__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT java_lang_reflect_AccessibleObject_getAnnotation___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_lang_reflect_AccessibleObject_invokeV___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_reflect_AccessibleObject_invokeL___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_INT java_lang_reflect_AccessibleObject_invokeI___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_LONG java_lang_reflect_AccessibleObject_invokeJ___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_FLOAT java_lang_reflect_AccessibleObject_invokeF___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_DOUBLE java_lang_reflect_AccessibleObject_invokeD___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_AnnotatedElement.c b/tests/nbody-java/java_lang_reflect_AnnotatedElement.c new file mode 100644 index 0000000000000..f46750834d7a2 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_AnnotatedElement.c @@ -0,0 +1,77 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" + +#include "java_lang_reflect_AnnotatedElement.h" + +__TIB_DEFINITION_java_lang_reflect_AnnotatedElement __TIB_java_lang_reflect_AnnotatedElement = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_AnnotatedElement, // classInitializer + "java.lang.reflect.AnnotatedElement", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement; +JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_reflect_AnnotatedElement() +{ + staticInitializerLock(&__TIB_java_lang_reflect_AnnotatedElement); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_AnnotatedElement.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_AnnotatedElement.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_AnnotatedElement); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_AnnotatedElement.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_AnnotatedElement.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_AnnotatedElement.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.AnnotatedElement") + __INIT_IMPL_java_lang_reflect_AnnotatedElement(); + } +} + +void __INIT_IMPL_java_lang_reflect_AnnotatedElement() +{ + __TIB_java_lang_reflect_AnnotatedElement.numInterfaces = 0; + __TIB_java_lang_reflect_AnnotatedElement.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_AnnotatedElement.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_reflect_AnnotatedElement.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_AnnotatedElement.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_AnnotatedElement.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_reflect_AnnotatedElement = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_AnnotatedElement); + __TIB_java_lang_reflect_AnnotatedElement.clazz = __CLASS_java_lang_reflect_AnnotatedElement; + __TIB_java_lang_reflect_AnnotatedElement.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_AnnotatedElement_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_AnnotatedElement); + __CLASS_java_lang_reflect_AnnotatedElement_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_AnnotatedElement_1ARRAY); + __CLASS_java_lang_reflect_AnnotatedElement_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_AnnotatedElement_2ARRAY); + + __TIB_java_lang_reflect_AnnotatedElement.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_reflect_AnnotatedElement.h b/tests/nbody-java/java_lang_reflect_AnnotatedElement.h new file mode 100644 index 0000000000000..3c406d8733621 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_AnnotatedElement.h @@ -0,0 +1,35 @@ +#ifndef __JAVA_LANG_REFLECT_ANNOTATEDELEMENT__ +#define __JAVA_LANG_REFLECT_ANNOTATEDELEMENT__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotation___java_lang_Class 0 +#define XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotations__ 1 +#define XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getDeclaredAnnotations__ 2 +#define XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_isAnnotationPresent___java_lang_Class 3 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif + +XMLVM_DEFINE_CLASS(java_lang_reflect_AnnotatedElement, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement; +extern JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_AnnotatedElement_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_AnnotatedElement +#define XMLVM_FORWARD_DECL_java_lang_reflect_AnnotatedElement +typedef struct java_lang_reflect_AnnotatedElement java_lang_reflect_AnnotatedElement; +#endif + +void __INIT_java_lang_reflect_AnnotatedElement(); +void __INIT_IMPL_java_lang_reflect_AnnotatedElement(); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_Array.c b/tests/nbody-java/java_lang_reflect_Array.c new file mode 100644 index 0000000000000..40a3455b5135c --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Array.c @@ -0,0 +1,203 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" + +#include "java_lang_reflect_Array.h" + +#define XMLVM_CURRENT_CLASS_NAME Array +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_reflect_Array + +__TIB_DEFINITION_java_lang_reflect_Array __TIB_java_lang_reflect_Array = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_Array, // classInitializer + "java.lang.reflect.Array", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_reflect_Array), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_reflect_Array; +JAVA_OBJECT __CLASS_java_lang_reflect_Array_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Array_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Array_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_reflect_Array() +{ + staticInitializerLock(&__TIB_java_lang_reflect_Array); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_Array.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_Array.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_Array); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_Array.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_Array.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_Array.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.Array") + __INIT_IMPL_java_lang_reflect_Array(); + } +} + +void __INIT_IMPL_java_lang_reflect_Array() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_reflect_Array.newInstanceFunc = __NEW_INSTANCE_java_lang_reflect_Array; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_reflect_Array.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_reflect_Array.numImplementedInterfaces = 0; + __TIB_java_lang_reflect_Array.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_lang_reflect_Array.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_Array.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_reflect_Array.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_reflect_Array.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_reflect_Array.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_reflect_Array.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_Array.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_Array.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_reflect_Array = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_Array); + __TIB_java_lang_reflect_Array.clazz = __CLASS_java_lang_reflect_Array; + __TIB_java_lang_reflect_Array.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_Array_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Array); + __CLASS_java_lang_reflect_Array_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Array_1ARRAY); + __CLASS_java_lang_reflect_Array_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Array_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_reflect_Array] + //XMLVM_END_WRAPPER + + __TIB_java_lang_reflect_Array.classInitialized = 1; +} + +void __DELETE_java_lang_reflect_Array(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_reflect_Array] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Array(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_reflect_Array] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_reflect_Array() +{ XMLVM_CLASS_INIT(java_lang_reflect_Array) +java_lang_reflect_Array* me = (java_lang_reflect_Array*) XMLVM_MALLOC(sizeof(java_lang_reflect_Array)); + me->tib = &__TIB_java_lang_reflect_Array; + __INIT_INSTANCE_MEMBERS_java_lang_reflect_Array(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_reflect_Array] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Array() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_reflect_Array___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Array___INIT___] + XMLVM_ENTER_METHOD("java.lang.reflect.Array", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Array.java", 28) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Array.java", 30) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Array_multiNewArrayImpl___java_lang_Class_int_int_1ARRAY(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Array_newArrayImpl___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Array_get___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Array_getBoolean___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_BYTE java_lang_reflect_Array_getByte___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_CHAR java_lang_reflect_Array_getChar___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_reflect_Array_getDouble___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_FLOAT java_lang_reflect_Array_getFloat___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_Array_getInt___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_Array_getLength___java_lang_Object(JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_LONG java_lang_reflect_Array_getLong___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_SHORT java_lang_reflect_Array_getShort___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Array_newInstance___java_lang_Class_int_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Array_newInstance___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_set___java_lang_Object_int_java_lang_Object(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setBoolean___java_lang_Object_int_boolean(JAVA_OBJECT n1, JAVA_INT n2, JAVA_BOOLEAN n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setByte___java_lang_Object_int_byte(JAVA_OBJECT n1, JAVA_INT n2, JAVA_BYTE n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setChar___java_lang_Object_int_char(JAVA_OBJECT n1, JAVA_INT n2, JAVA_CHAR n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setDouble___java_lang_Object_int_double(JAVA_OBJECT n1, JAVA_INT n2, JAVA_DOUBLE n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setFloat___java_lang_Object_int_float(JAVA_OBJECT n1, JAVA_INT n2, JAVA_FLOAT n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setInt___java_lang_Object_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setLong___java_lang_Object_int_long(JAVA_OBJECT n1, JAVA_INT n2, JAVA_LONG n3)] + +//XMLVM_NATIVE[void java_lang_reflect_Array_setShort___java_lang_Object_int_short(JAVA_OBJECT n1, JAVA_INT n2, JAVA_SHORT n3)] + diff --git a/tests/nbody-java/java_lang_reflect_Array.h b/tests/nbody-java/java_lang_reflect_Array.h new file mode 100644 index 0000000000000..f2f225368d1c5 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Array.h @@ -0,0 +1,78 @@ +#ifndef __JAVA_LANG_REFLECT_ARRAY__ +#define __JAVA_LANG_REFLECT_ARRAY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_reflect_Array 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +// Class declarations for java.lang.reflect.Array +XMLVM_DEFINE_CLASS(java_lang_reflect_Array, 6, XMLVM_ITABLE_SIZE_java_lang_reflect_Array) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_Array; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Array_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Array_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Array_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Array +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_reflect_Array \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Array \ + } java_lang_reflect_Array + +struct java_lang_reflect_Array { + __TIB_DEFINITION_java_lang_reflect_Array* tib; + struct { + __INSTANCE_FIELDS_java_lang_reflect_Array; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Array +#define XMLVM_FORWARD_DECL_java_lang_reflect_Array +typedef struct java_lang_reflect_Array java_lang_reflect_Array; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_reflect_Array 6 + +void __INIT_java_lang_reflect_Array(); +void __INIT_IMPL_java_lang_reflect_Array(); +void __DELETE_java_lang_reflect_Array(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Array(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_reflect_Array(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Array(); +void java_lang_reflect_Array___INIT___(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Array_multiNewArrayImpl___java_lang_Class_int_int_1ARRAY(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_lang_reflect_Array_newArrayImpl___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_reflect_Array_get___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_BOOLEAN java_lang_reflect_Array_getBoolean___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_BYTE java_lang_reflect_Array_getByte___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_CHAR java_lang_reflect_Array_getChar___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_DOUBLE java_lang_reflect_Array_getDouble___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_FLOAT java_lang_reflect_Array_getFloat___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_reflect_Array_getInt___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_lang_reflect_Array_getLength___java_lang_Object(JAVA_OBJECT n1); +JAVA_LONG java_lang_reflect_Array_getLong___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_SHORT java_lang_reflect_Array_getShort___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_lang_reflect_Array_newInstance___java_lang_Class_int_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_lang_reflect_Array_newInstance___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_reflect_Array_set___java_lang_Object_int_java_lang_Object(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3); +void java_lang_reflect_Array_setBoolean___java_lang_Object_int_boolean(JAVA_OBJECT n1, JAVA_INT n2, JAVA_BOOLEAN n3); +void java_lang_reflect_Array_setByte___java_lang_Object_int_byte(JAVA_OBJECT n1, JAVA_INT n2, JAVA_BYTE n3); +void java_lang_reflect_Array_setChar___java_lang_Object_int_char(JAVA_OBJECT n1, JAVA_INT n2, JAVA_CHAR n3); +void java_lang_reflect_Array_setDouble___java_lang_Object_int_double(JAVA_OBJECT n1, JAVA_INT n2, JAVA_DOUBLE n3); +void java_lang_reflect_Array_setFloat___java_lang_Object_int_float(JAVA_OBJECT n1, JAVA_INT n2, JAVA_FLOAT n3); +void java_lang_reflect_Array_setInt___java_lang_Object_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +void java_lang_reflect_Array_setLong___java_lang_Object_int_long(JAVA_OBJECT n1, JAVA_INT n2, JAVA_LONG n3); +void java_lang_reflect_Array_setShort___java_lang_Object_int_short(JAVA_OBJECT n1, JAVA_INT n2, JAVA_SHORT n3); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_Constructor.c b/tests/nbody-java/java_lang_reflect_Constructor.c new file mode 100644 index 0000000000000..3531d9b74279f --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Constructor.c @@ -0,0 +1,294 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_reflect_Type.h" + +#include "java_lang_reflect_Constructor.h" + +#define XMLVM_CURRENT_CLASS_NAME Constructor +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_reflect_Constructor + +__TIB_DEFINITION_java_lang_reflect_Constructor __TIB_java_lang_reflect_Constructor = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_Constructor, // classInitializer + "java.lang.reflect.Constructor", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/reflect/AccessibleObject;Ljava/lang/reflect/GenericDeclaration;Ljava/lang/reflect/Member;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_reflect_AccessibleObject, // extends + sizeof(java_lang_reflect_Constructor), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_reflect_Constructor; +JAVA_OBJECT __CLASS_java_lang_reflect_Constructor_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Constructor_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Constructor_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_reflect_Constructor() +{ + staticInitializerLock(&__TIB_java_lang_reflect_Constructor); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_Constructor.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_Constructor.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_Constructor); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_Constructor.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_Constructor.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_Constructor.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.Constructor") + __INIT_IMPL_java_lang_reflect_Constructor(); + } +} + +void __INIT_IMPL_java_lang_reflect_Constructor() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) + __TIB_java_lang_reflect_Constructor.newInstanceFunc = __NEW_INSTANCE_java_lang_reflect_Constructor; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_reflect_Constructor.vtable, __TIB_java_lang_reflect_AccessibleObject.vtable, sizeof(__TIB_java_lang_reflect_AccessibleObject.vtable)); + // Initialize vtable for this class + __TIB_java_lang_reflect_Constructor.vtable[14] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Constructor.vtable[15] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Constructor.vtable[1] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Constructor.vtable[12] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Constructor.vtable[9] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Constructor.vtable[13] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Constructor.vtable[4] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Constructor.vtable[5] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + xmlvm_init_native_java_lang_reflect_Constructor(); + // Initialize interface information + __TIB_java_lang_reflect_Constructor.numImplementedInterfaces = 3; + __TIB_java_lang_reflect_Constructor.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_reflect_AnnotatedElement) + + __TIB_java_lang_reflect_Constructor.implementedInterfaces[0][0] = &__TIB_java_lang_reflect_AnnotatedElement; + + XMLVM_CLASS_INIT(java_lang_reflect_GenericDeclaration) + + __TIB_java_lang_reflect_Constructor.implementedInterfaces[0][1] = &__TIB_java_lang_reflect_GenericDeclaration; + + XMLVM_CLASS_INIT(java_lang_reflect_Member) + + __TIB_java_lang_reflect_Constructor.implementedInterfaces[0][2] = &__TIB_java_lang_reflect_Member; + // Initialize itable for this class + __TIB_java_lang_reflect_Constructor.itableBegin = &__TIB_java_lang_reflect_Constructor.itable[0]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotation___java_lang_Class] = __TIB_java_lang_reflect_Constructor.vtable[6]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotations__] = __TIB_java_lang_reflect_Constructor.vtable[7]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getDeclaredAnnotations__] = __TIB_java_lang_reflect_Constructor.vtable[8]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_isAnnotationPresent___java_lang_Class] = __TIB_java_lang_reflect_Constructor.vtable[11]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_GenericDeclaration_getTypeParameters__] = __TIB_java_lang_reflect_Constructor.vtable[14]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getDeclaringClass__] = __TIB_java_lang_reflect_Constructor.vtable[12]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getModifiers__] = __TIB_java_lang_reflect_Constructor.vtable[9]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getName__] = __TIB_java_lang_reflect_Constructor.vtable[13]; + __TIB_java_lang_reflect_Constructor.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_isSynthetic__] = __TIB_java_lang_reflect_Constructor.vtable[15]; + + + __TIB_java_lang_reflect_Constructor.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_Constructor.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_reflect_Constructor.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_reflect_Constructor.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_reflect_Constructor.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_reflect_Constructor.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_Constructor.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_Constructor.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_reflect_Constructor = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_Constructor); + __TIB_java_lang_reflect_Constructor.clazz = __CLASS_java_lang_reflect_Constructor; + __TIB_java_lang_reflect_Constructor.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_Constructor_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Constructor); + __CLASS_java_lang_reflect_Constructor_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Constructor_1ARRAY); + __CLASS_java_lang_reflect_Constructor_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Constructor_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_reflect_Constructor] + //XMLVM_END_WRAPPER + + __TIB_java_lang_reflect_Constructor.classInitialized = 1; +} + +void __DELETE_java_lang_reflect_Constructor(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_reflect_Constructor] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Constructor(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_reflect_AccessibleObject(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.clazz_ = (java_lang_Class*) JAVA_NULL; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.address_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.slot_ = 0; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.parameterTypes_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.exceptionTypes_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.modifiers_ = 0; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.signature_ = (java_lang_String*) JAVA_NULL; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.annotations_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_reflect_Constructor*) me)->fields.java_lang_reflect_Constructor.parameterAnnotations_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_reflect_Constructor] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_reflect_Constructor() +{ XMLVM_CLASS_INIT(java_lang_reflect_Constructor) +java_lang_reflect_Constructor* me = (java_lang_reflect_Constructor*) XMLVM_MALLOC(sizeof(java_lang_reflect_Constructor)); + me->tib = &__TIB_java_lang_reflect_Constructor; + __INIT_INSTANCE_MEMBERS_java_lang_reflect_Constructor(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_reflect_Constructor] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Constructor() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_reflect_Constructor___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Constructor___INIT___] + XMLVM_ENTER_METHOD("java.lang.reflect.Constructor", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Constructor.java", 51) + XMLVM_CHECK_NPE(0) + java_lang_reflect_AccessibleObject___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Constructor.java", 53) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_reflect_Constructor___INIT____java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_OBJECT n5, JAVA_INT n6, JAVA_OBJECT n7, JAVA_OBJECT n8, JAVA_OBJECT n9) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Constructor___INIT____java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.Constructor", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + _r4.i = n4; + _r5.o = n5; + _r6.i = n6; + _r7.o = n7; + _r8.o = n8; + _r9.o = n9; + XMLVM_SOURCE_POSITION("Constructor.java", 57) + XMLVM_CHECK_NPE(0) + java_lang_reflect_AccessibleObject___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Constructor.java", 58) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.clazz_ = _r1.o; + XMLVM_SOURCE_POSITION("Constructor.java", 59) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.parameterTypes_ = _r2.o; + XMLVM_SOURCE_POSITION("Constructor.java", 60) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.exceptionTypes_ = _r3.o; + XMLVM_SOURCE_POSITION("Constructor.java", 61) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.modifiers_ = _r4.i; + XMLVM_SOURCE_POSITION("Constructor.java", 62) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.address_ = _r5.o; + XMLVM_SOURCE_POSITION("Constructor.java", 63) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.slot_ = _r6.i; + XMLVM_SOURCE_POSITION("Constructor.java", 64) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.signature_ = _r7.o; + XMLVM_SOURCE_POSITION("Constructor.java", 65) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.annotations_ = _r8.o; + XMLVM_SOURCE_POSITION("Constructor.java", 66) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Constructor*) _r0.o)->fields.java_lang_reflect_Constructor.parameterAnnotations_ = _r9.o; + XMLVM_SOURCE_POSITION("Constructor.java", 67) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getTypeParameters__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_toGenericString__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getGenericParameterTypes__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getGenericExceptionTypes__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getParameterAnnotations__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Constructor_isVarArgs__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Constructor_isSynthetic__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Constructor_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getDeclaringClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getExceptionTypes__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_Constructor_getModifiers__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getName__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_getParameterTypes__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_Constructor_hashCode__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Constructor_toString__(JAVA_OBJECT me)] + diff --git a/tests/nbody-java/java_lang_reflect_Constructor.h b/tests/nbody-java/java_lang_reflect_Constructor.h new file mode 100644 index 0000000000000..ba116903c94ff --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Constructor.h @@ -0,0 +1,112 @@ +#ifndef __JAVA_LANG_REFLECT_CONSTRUCTOR__ +#define __JAVA_LANG_REFLECT_CONSTRUCTOR__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_reflect_Constructor 9 +// Implemented interfaces: +#include "java_lang_reflect_GenericDeclaration.h" +#include "java_lang_reflect_Member.h" +// Super Class: +#include "java_lang_reflect_AccessibleObject.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Type +#define XMLVM_FORWARD_DECL_java_lang_reflect_Type +XMLVM_FORWARD_DECL(java_lang_reflect_Type) +#endif +// Class declarations for java.lang.reflect.Constructor +XMLVM_DEFINE_CLASS(java_lang_reflect_Constructor, 16, XMLVM_ITABLE_SIZE_java_lang_reflect_Constructor) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_Constructor; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Constructor_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Constructor_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Constructor_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Constructor +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_reflect_Constructor \ + __INSTANCE_FIELDS_java_lang_reflect_AccessibleObject; \ + struct { \ + JAVA_OBJECT clazz_; \ + JAVA_OBJECT address_; \ + JAVA_INT slot_; \ + JAVA_OBJECT parameterTypes_; \ + JAVA_OBJECT exceptionTypes_; \ + JAVA_INT modifiers_; \ + JAVA_OBJECT signature_; \ + JAVA_OBJECT annotations_; \ + JAVA_OBJECT parameterAnnotations_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Constructor \ + } java_lang_reflect_Constructor + +struct java_lang_reflect_Constructor { + __TIB_DEFINITION_java_lang_reflect_Constructor* tib; + struct { + __INSTANCE_FIELDS_java_lang_reflect_Constructor; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +#define XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +typedef struct java_lang_reflect_Constructor java_lang_reflect_Constructor; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_reflect_Constructor 16 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getTypeParameters__ 14 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_isSynthetic__ 15 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getDeclaringClass__ 12 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getModifiers__ 9 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getName__ 13 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_toString__ 5 + +void __INIT_java_lang_reflect_Constructor(); +void __INIT_IMPL_java_lang_reflect_Constructor(); +void __DELETE_java_lang_reflect_Constructor(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Constructor(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_reflect_Constructor(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Constructor(); +void xmlvm_init_native_java_lang_reflect_Constructor(); +void java_lang_reflect_Constructor___INIT___(JAVA_OBJECT me); +void java_lang_reflect_Constructor___INIT____java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_OBJECT n5, JAVA_INT n6, JAVA_OBJECT n7, JAVA_OBJECT n8, JAVA_OBJECT n9); +// Vtable index: 14 +JAVA_OBJECT java_lang_reflect_Constructor_getTypeParameters__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Constructor_toGenericString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Constructor_getGenericParameterTypes__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Constructor_getGenericExceptionTypes__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Constructor_getParameterAnnotations__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_reflect_Constructor_isVarArgs__(JAVA_OBJECT me); +// Vtable index: 15 +JAVA_BOOLEAN java_lang_reflect_Constructor_isSynthetic__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_reflect_Constructor_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 12 +JAVA_OBJECT java_lang_reflect_Constructor_getDeclaringClass__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Constructor_getExceptionTypes__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_reflect_Constructor_getModifiers__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_OBJECT java_lang_reflect_Constructor_getName__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Constructor_getParameterTypes__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_reflect_Constructor_hashCode__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT java_lang_reflect_Constructor_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_Field.c b/tests/nbody-java/java_lang_reflect_Field.c new file mode 100644 index 0000000000000..5a69ec20eb09f --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Field.c @@ -0,0 +1,324 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_reflect_Type.h" + +#include "java_lang_reflect_Field.h" + +#define XMLVM_CURRENT_CLASS_NAME Field +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_reflect_Field + +__TIB_DEFINITION_java_lang_reflect_Field __TIB_java_lang_reflect_Field = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_Field, // classInitializer + "java.lang.reflect.Field", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_reflect_AccessibleObject, // extends + sizeof(java_lang_reflect_Field), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_reflect_Field; +JAVA_OBJECT __CLASS_java_lang_reflect_Field_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Field_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Field_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_reflect_Field() +{ + staticInitializerLock(&__TIB_java_lang_reflect_Field); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_Field.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_Field.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_Field); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_Field.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_Field.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_Field.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.Field") + __INIT_IMPL_java_lang_reflect_Field(); + } +} + +void __INIT_IMPL_java_lang_reflect_Field() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) + __TIB_java_lang_reflect_Field.newInstanceFunc = __NEW_INSTANCE_java_lang_reflect_Field; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_reflect_Field.vtable, __TIB_java_lang_reflect_AccessibleObject.vtable, sizeof(__TIB_java_lang_reflect_AccessibleObject.vtable)); + // Initialize vtable for this class + __TIB_java_lang_reflect_Field.vtable[10] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Field.vtable[14] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Field.vtable[1] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Field.vtable[12] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Field.vtable[9] = (VTABLE_PTR) &java_lang_reflect_Field_getModifiers__; + __TIB_java_lang_reflect_Field.vtable[13] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Field.vtable[4] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Field.vtable[5] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + xmlvm_init_native_java_lang_reflect_Field(); + // Initialize interface information + __TIB_java_lang_reflect_Field.numImplementedInterfaces = 2; + __TIB_java_lang_reflect_Field.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_reflect_AnnotatedElement) + + __TIB_java_lang_reflect_Field.implementedInterfaces[0][0] = &__TIB_java_lang_reflect_AnnotatedElement; + + XMLVM_CLASS_INIT(java_lang_reflect_Member) + + __TIB_java_lang_reflect_Field.implementedInterfaces[0][1] = &__TIB_java_lang_reflect_Member; + // Initialize itable for this class + __TIB_java_lang_reflect_Field.itableBegin = &__TIB_java_lang_reflect_Field.itable[0]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotation___java_lang_Class] = __TIB_java_lang_reflect_Field.vtable[6]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotations__] = __TIB_java_lang_reflect_Field.vtable[7]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getDeclaredAnnotations__] = __TIB_java_lang_reflect_Field.vtable[8]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_isAnnotationPresent___java_lang_Class] = __TIB_java_lang_reflect_Field.vtable[11]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getDeclaringClass__] = __TIB_java_lang_reflect_Field.vtable[12]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getModifiers__] = __TIB_java_lang_reflect_Field.vtable[9]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getName__] = __TIB_java_lang_reflect_Field.vtable[13]; + __TIB_java_lang_reflect_Field.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_isSynthetic__] = __TIB_java_lang_reflect_Field.vtable[14]; + + + __TIB_java_lang_reflect_Field.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_Field.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_reflect_Field.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_reflect_Field.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_reflect_Field.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_reflect_Field.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_Field.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_Field.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_reflect_Field = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_Field); + __TIB_java_lang_reflect_Field.clazz = __CLASS_java_lang_reflect_Field; + __TIB_java_lang_reflect_Field.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_Field_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Field); + __CLASS_java_lang_reflect_Field_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Field_1ARRAY); + __CLASS_java_lang_reflect_Field_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Field_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_reflect_Field] + //XMLVM_END_WRAPPER + + __TIB_java_lang_reflect_Field.classInitialized = 1; +} + +void __DELETE_java_lang_reflect_Field(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_reflect_Field] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Field(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_reflect_AccessibleObject(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.clazz_ = (java_lang_Class*) JAVA_NULL; + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.offset_ = 0; + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.address_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.name_ = (java_lang_String*) JAVA_NULL; + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.type_ = (java_lang_Class*) JAVA_NULL; + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.modifiers_ = 0; + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.signature_ = (java_lang_String*) JAVA_NULL; + ((java_lang_reflect_Field*) me)->fields.java_lang_reflect_Field.annotations_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_reflect_Field] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_reflect_Field() +{ XMLVM_CLASS_INIT(java_lang_reflect_Field) +java_lang_reflect_Field* me = (java_lang_reflect_Field*) XMLVM_MALLOC(sizeof(java_lang_reflect_Field)); + me->tib = &__TIB_java_lang_reflect_Field; + __INIT_INSTANCE_MEMBERS_java_lang_reflect_Field(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_reflect_Field] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Field() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_reflect_Field___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Field___INIT___] + XMLVM_ENTER_METHOD("java.lang.reflect.Field", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Field.java", 46) + XMLVM_CHECK_NPE(0) + java_lang_reflect_AccessibleObject___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Field.java", 48) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_reflect_Field___INIT____java_lang_Class_java_lang_String_java_lang_Class_int_int_java_lang_Object_java_lang_String_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_OBJECT n6, JAVA_OBJECT n7, JAVA_OBJECT n8) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Field___INIT____java_lang_Class_java_lang_String_java_lang_Class_int_int_java_lang_Object_java_lang_String_byte_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.Field", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + _r4.i = n4; + _r5.i = n5; + _r6.o = n6; + _r7.o = n7; + _r8.o = n8; + XMLVM_SOURCE_POSITION("Field.java", 51) + XMLVM_CHECK_NPE(0) + java_lang_reflect_AccessibleObject___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Field.java", 52) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.clazz_ = _r1.o; + XMLVM_SOURCE_POSITION("Field.java", 53) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.name_ = _r2.o; + XMLVM_SOURCE_POSITION("Field.java", 54) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.type_ = _r3.o; + XMLVM_SOURCE_POSITION("Field.java", 55) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.modifiers_ = _r4.i; + XMLVM_SOURCE_POSITION("Field.java", 56) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.offset_ = _r5.i; + XMLVM_SOURCE_POSITION("Field.java", 57) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.address_ = _r6.o; + XMLVM_SOURCE_POSITION("Field.java", 58) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.signature_ = _r7.o; + XMLVM_SOURCE_POSITION("Field.java", 59) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Field*) _r0.o)->fields.java_lang_reflect_Field.annotations_ = _r8.o; + XMLVM_SOURCE_POSITION("Field.java", 60) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_getSignature__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Field_isSynthetic__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_toGenericString__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Field_isEnumConstant__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_getGenericType__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Field_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Field_getBoolean___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BYTE java_lang_reflect_Field_getByte___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_CHAR java_lang_reflect_Field_getChar___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_getDeclaringClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_DOUBLE java_lang_reflect_Field_getDouble___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_FLOAT java_lang_reflect_Field_getFloat___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_Field_getInt___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_LONG java_lang_reflect_Field_getLong___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_INT java_lang_reflect_Field_getModifiers__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Field_getModifiers__] + XMLVM_ENTER_METHOD("java.lang.reflect.Field", "getModifiers", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Field.java", 349) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_reflect_Field*) _r1.o)->fields.java_lang_reflect_Field.modifiers_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_getName__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_SHORT java_lang_reflect_Field_getShort___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_getType__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_Field_hashCode__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_set___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setBoolean___java_lang_Object_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setByte___java_lang_Object_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setChar___java_lang_Object_char(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_CHAR n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setDouble___java_lang_Object_double(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_DOUBLE n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setFloat___java_lang_Object_float(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setInt___java_lang_Object_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setLong___java_lang_Object_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2)] + +//XMLVM_NATIVE[void java_lang_reflect_Field_setShort___java_lang_Object_short(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_SHORT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Field_toString__(JAVA_OBJECT me)] + diff --git a/tests/nbody-java/java_lang_reflect_Field.h b/tests/nbody-java/java_lang_reflect_Field.h new file mode 100644 index 0000000000000..5d7361c258750 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Field.h @@ -0,0 +1,124 @@ +#ifndef __JAVA_LANG_REFLECT_FIELD__ +#define __JAVA_LANG_REFLECT_FIELD__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_reflect_Field 9 +// Implemented interfaces: +#include "java_lang_reflect_Member.h" +// Super Class: +#include "java_lang_reflect_AccessibleObject.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Type +#define XMLVM_FORWARD_DECL_java_lang_reflect_Type +XMLVM_FORWARD_DECL(java_lang_reflect_Type) +#endif +// Class declarations for java.lang.reflect.Field +XMLVM_DEFINE_CLASS(java_lang_reflect_Field, 15, XMLVM_ITABLE_SIZE_java_lang_reflect_Field) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_Field; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Field_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Field_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Field_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Field +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_reflect_Field \ + __INSTANCE_FIELDS_java_lang_reflect_AccessibleObject; \ + struct { \ + JAVA_OBJECT clazz_; \ + JAVA_INT offset_; \ + JAVA_OBJECT address_; \ + JAVA_OBJECT name_; \ + JAVA_OBJECT type_; \ + JAVA_INT modifiers_; \ + JAVA_OBJECT signature_; \ + JAVA_OBJECT annotations_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Field \ + } java_lang_reflect_Field + +struct java_lang_reflect_Field { + __TIB_DEFINITION_java_lang_reflect_Field* tib; + struct { + __INSTANCE_FIELDS_java_lang_reflect_Field; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Field +#define XMLVM_FORWARD_DECL_java_lang_reflect_Field +typedef struct java_lang_reflect_Field java_lang_reflect_Field; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_reflect_Field 15 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_getSignature__ 10 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_isSynthetic__ 14 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_getDeclaringClass__ 12 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_getModifiers__ 9 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_getName__ 13 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Field_toString__ 5 + +void __INIT_java_lang_reflect_Field(); +void __INIT_IMPL_java_lang_reflect_Field(); +void __DELETE_java_lang_reflect_Field(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Field(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_reflect_Field(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Field(); +void xmlvm_init_native_java_lang_reflect_Field(); +void java_lang_reflect_Field___INIT___(JAVA_OBJECT me); +void java_lang_reflect_Field___INIT____java_lang_Class_java_lang_String_java_lang_Class_int_int_java_lang_Object_java_lang_String_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_OBJECT n6, JAVA_OBJECT n7, JAVA_OBJECT n8); +// Vtable index: 10 +JAVA_OBJECT java_lang_reflect_Field_getSignature__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_BOOLEAN java_lang_reflect_Field_isSynthetic__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Field_toGenericString__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_reflect_Field_isEnumConstant__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Field_getGenericType__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_reflect_Field_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_reflect_Field_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_lang_reflect_Field_getBoolean___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BYTE java_lang_reflect_Field_getByte___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_CHAR java_lang_reflect_Field_getChar___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 12 +JAVA_OBJECT java_lang_reflect_Field_getDeclaringClass__(JAVA_OBJECT me); +JAVA_DOUBLE java_lang_reflect_Field_getDouble___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_FLOAT java_lang_reflect_Field_getFloat___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_lang_reflect_Field_getInt___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_LONG java_lang_reflect_Field_getLong___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_INT java_lang_reflect_Field_getModifiers__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_OBJECT java_lang_reflect_Field_getName__(JAVA_OBJECT me); +JAVA_SHORT java_lang_reflect_Field_getShort___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_lang_reflect_Field_getType__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_reflect_Field_hashCode__(JAVA_OBJECT me); +void java_lang_reflect_Field_set___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_lang_reflect_Field_setBoolean___java_lang_Object_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +void java_lang_reflect_Field_setByte___java_lang_Object_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2); +void java_lang_reflect_Field_setChar___java_lang_Object_char(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_CHAR n2); +void java_lang_reflect_Field_setDouble___java_lang_Object_double(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_DOUBLE n2); +void java_lang_reflect_Field_setFloat___java_lang_Object_float(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2); +void java_lang_reflect_Field_setInt___java_lang_Object_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_lang_reflect_Field_setLong___java_lang_Object_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2); +void java_lang_reflect_Field_setShort___java_lang_Object_short(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_SHORT n2); +// Vtable index: 5 +JAVA_OBJECT java_lang_reflect_Field_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_GenericDeclaration.c b/tests/nbody-java/java_lang_reflect_GenericDeclaration.c new file mode 100644 index 0000000000000..d711c5260fc4b --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_GenericDeclaration.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_lang_reflect_GenericDeclaration.h" + +__TIB_DEFINITION_java_lang_reflect_GenericDeclaration __TIB_java_lang_reflect_GenericDeclaration = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_GenericDeclaration, // classInitializer + "java.lang.reflect.GenericDeclaration", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration; +JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_reflect_GenericDeclaration() +{ + staticInitializerLock(&__TIB_java_lang_reflect_GenericDeclaration); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_GenericDeclaration.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_GenericDeclaration.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_GenericDeclaration); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_GenericDeclaration.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_GenericDeclaration.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_GenericDeclaration.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.GenericDeclaration") + __INIT_IMPL_java_lang_reflect_GenericDeclaration(); + } +} + +void __INIT_IMPL_java_lang_reflect_GenericDeclaration() +{ + __TIB_java_lang_reflect_GenericDeclaration.numInterfaces = 0; + __TIB_java_lang_reflect_GenericDeclaration.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_GenericDeclaration.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_reflect_GenericDeclaration.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_GenericDeclaration.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_GenericDeclaration.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_reflect_GenericDeclaration = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_GenericDeclaration); + __TIB_java_lang_reflect_GenericDeclaration.clazz = __CLASS_java_lang_reflect_GenericDeclaration; + __TIB_java_lang_reflect_GenericDeclaration.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_GenericDeclaration_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_GenericDeclaration); + __CLASS_java_lang_reflect_GenericDeclaration_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_GenericDeclaration_1ARRAY); + __CLASS_java_lang_reflect_GenericDeclaration_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_GenericDeclaration_2ARRAY); + + __TIB_java_lang_reflect_GenericDeclaration.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_reflect_GenericDeclaration.h b/tests/nbody-java/java_lang_reflect_GenericDeclaration.h new file mode 100644 index 0000000000000..d17b0a992668c --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_GenericDeclaration.h @@ -0,0 +1,28 @@ +#ifndef __JAVA_LANG_REFLECT_GENERICDECLARATION__ +#define __JAVA_LANG_REFLECT_GENERICDECLARATION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_reflect_GenericDeclaration_getTypeParameters__ 4 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_lang_reflect_GenericDeclaration, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration; +extern JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_GenericDeclaration_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_GenericDeclaration +#define XMLVM_FORWARD_DECL_java_lang_reflect_GenericDeclaration +typedef struct java_lang_reflect_GenericDeclaration java_lang_reflect_GenericDeclaration; +#endif + +void __INIT_java_lang_reflect_GenericDeclaration(); +void __INIT_IMPL_java_lang_reflect_GenericDeclaration(); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_InvocationHandler.c b/tests/nbody-java/java_lang_reflect_InvocationHandler.c new file mode 100644 index 0000000000000..dfbe990c4cbfb --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_InvocationHandler.c @@ -0,0 +1,77 @@ +#include "xmlvm.h" +#include "java_lang_reflect_Method.h" + +#include "java_lang_reflect_InvocationHandler.h" + +__TIB_DEFINITION_java_lang_reflect_InvocationHandler __TIB_java_lang_reflect_InvocationHandler = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_InvocationHandler, // classInitializer + "java.lang.reflect.InvocationHandler", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler; +JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_reflect_InvocationHandler() +{ + staticInitializerLock(&__TIB_java_lang_reflect_InvocationHandler); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_InvocationHandler.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_InvocationHandler.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_InvocationHandler); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_InvocationHandler.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_InvocationHandler.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_InvocationHandler.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.InvocationHandler") + __INIT_IMPL_java_lang_reflect_InvocationHandler(); + } +} + +void __INIT_IMPL_java_lang_reflect_InvocationHandler() +{ + __TIB_java_lang_reflect_InvocationHandler.numInterfaces = 0; + __TIB_java_lang_reflect_InvocationHandler.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_InvocationHandler.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_reflect_InvocationHandler.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_InvocationHandler.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_InvocationHandler.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_reflect_InvocationHandler = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_InvocationHandler); + __TIB_java_lang_reflect_InvocationHandler.clazz = __CLASS_java_lang_reflect_InvocationHandler; + __TIB_java_lang_reflect_InvocationHandler.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_InvocationHandler_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_InvocationHandler); + __CLASS_java_lang_reflect_InvocationHandler_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_InvocationHandler_1ARRAY); + __CLASS_java_lang_reflect_InvocationHandler_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_InvocationHandler_2ARRAY); + + __TIB_java_lang_reflect_InvocationHandler.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_reflect_InvocationHandler.h b/tests/nbody-java/java_lang_reflect_InvocationHandler.h new file mode 100644 index 0000000000000..42bb8da45de18 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_InvocationHandler.h @@ -0,0 +1,32 @@ +#ifndef __JAVA_LANG_REFLECT_INVOCATIONHANDLER__ +#define __JAVA_LANG_REFLECT_INVOCATIONHANDLER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_reflect_InvocationHandler_invoke___java_lang_Object_java_lang_reflect_Method_java_lang_Object_1ARRAY 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Method +#define XMLVM_FORWARD_DECL_java_lang_reflect_Method +XMLVM_FORWARD_DECL(java_lang_reflect_Method) +#endif + +XMLVM_DEFINE_CLASS(java_lang_reflect_InvocationHandler, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler; +extern JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_InvocationHandler_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_InvocationHandler +#define XMLVM_FORWARD_DECL_java_lang_reflect_InvocationHandler +typedef struct java_lang_reflect_InvocationHandler java_lang_reflect_InvocationHandler; +#endif + +void __INIT_java_lang_reflect_InvocationHandler(); +void __INIT_IMPL_java_lang_reflect_InvocationHandler(); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_Member.c b/tests/nbody-java/java_lang_reflect_Member.c new file mode 100644 index 0000000000000..f9cff8f13a36c --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Member.c @@ -0,0 +1,104 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" + +#include "java_lang_reflect_Member.h" + +__TIB_DEFINITION_java_lang_reflect_Member __TIB_java_lang_reflect_Member = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_Member, // classInitializer + "java.lang.reflect.Member", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_reflect_Member; +JAVA_OBJECT __CLASS_java_lang_reflect_Member_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Member_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Member_3ARRAY; +static JAVA_INT _STATIC_java_lang_reflect_Member_PUBLIC; +static JAVA_INT _STATIC_java_lang_reflect_Member_DECLARED; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_reflect_Member() +{ + staticInitializerLock(&__TIB_java_lang_reflect_Member); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_Member.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_Member.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_Member); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_Member.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_Member.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_Member.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.Member") + __INIT_IMPL_java_lang_reflect_Member(); + } +} + +void __INIT_IMPL_java_lang_reflect_Member() +{ + __TIB_java_lang_reflect_Member.numInterfaces = 0; + _STATIC_java_lang_reflect_Member_PUBLIC = 0; + _STATIC_java_lang_reflect_Member_DECLARED = 1; + __TIB_java_lang_reflect_Member.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_Member.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_reflect_Member.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_Member.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_Member.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_reflect_Member = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_Member); + __TIB_java_lang_reflect_Member.clazz = __CLASS_java_lang_reflect_Member; + __TIB_java_lang_reflect_Member.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_Member_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Member); + __CLASS_java_lang_reflect_Member_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Member_1ARRAY); + __CLASS_java_lang_reflect_Member_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Member_2ARRAY); + + __TIB_java_lang_reflect_Member.classInitialized = 1; +} + +JAVA_INT java_lang_reflect_Member_GET_PUBLIC() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Member) + return _STATIC_java_lang_reflect_Member_PUBLIC; +} + +void java_lang_reflect_Member_PUT_PUBLIC(JAVA_INT v) +{ + _STATIC_java_lang_reflect_Member_PUBLIC = v; +} + +JAVA_INT java_lang_reflect_Member_GET_DECLARED() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Member) + return _STATIC_java_lang_reflect_Member_DECLARED; +} + +void java_lang_reflect_Member_PUT_DECLARED(JAVA_INT v) +{ + _STATIC_java_lang_reflect_Member_DECLARED = v; +} + diff --git a/tests/nbody-java/java_lang_reflect_Member.h b/tests/nbody-java/java_lang_reflect_Member.h new file mode 100644 index 0000000000000..2738523b2672c --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Member.h @@ -0,0 +1,43 @@ +#ifndef __JAVA_LANG_REFLECT_MEMBER__ +#define __JAVA_LANG_REFLECT_MEMBER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_lang_reflect_Member_getDeclaringClass__ 5 +#define XMLVM_ITABLE_IDX_java_lang_reflect_Member_getModifiers__ 6 +#define XMLVM_ITABLE_IDX_java_lang_reflect_Member_getName__ 7 +#define XMLVM_ITABLE_IDX_java_lang_reflect_Member_isSynthetic__ 8 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif + +XMLVM_DEFINE_CLASS(java_lang_reflect_Member, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_Member; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Member_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Member_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Member_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Member +#define XMLVM_FORWARD_DECL_java_lang_reflect_Member +typedef struct java_lang_reflect_Member java_lang_reflect_Member; +#endif + +void __INIT_java_lang_reflect_Member(); +void __INIT_IMPL_java_lang_reflect_Member(); +JAVA_INT java_lang_reflect_Member_GET_PUBLIC(); +void java_lang_reflect_Member_PUT_PUBLIC(JAVA_INT v); +JAVA_INT java_lang_reflect_Member_GET_DECLARED(); +void java_lang_reflect_Member_PUT_DECLARED(JAVA_INT v); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_Method.c b/tests/nbody-java/java_lang_reflect_Method.c new file mode 100644 index 0000000000000..0ec7f96bec00f --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Method.c @@ -0,0 +1,376 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_reflect_Type.h" + +#include "java_lang_reflect_Method.h" + +#define XMLVM_CURRENT_CLASS_NAME Method +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_reflect_Method + +__TIB_DEFINITION_java_lang_reflect_Method __TIB_java_lang_reflect_Method = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_Method, // classInitializer + "java.lang.reflect.Method", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/reflect/AccessibleObject;Ljava/lang/reflect/GenericDeclaration;Ljava/lang/reflect/Member;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_reflect_AccessibleObject, // extends + sizeof(java_lang_reflect_Method), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_reflect_Method; +JAVA_OBJECT __CLASS_java_lang_reflect_Method_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Method_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Method_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_reflect_Method() +{ + staticInitializerLock(&__TIB_java_lang_reflect_Method); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_Method.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_Method.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_Method); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_Method.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_Method.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_Method.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.Method") + __INIT_IMPL_java_lang_reflect_Method(); + } +} + +void __INIT_IMPL_java_lang_reflect_Method() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_reflect_AccessibleObject) + __TIB_java_lang_reflect_Method.newInstanceFunc = __NEW_INSTANCE_java_lang_reflect_Method; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_reflect_Method.vtable, __TIB_java_lang_reflect_AccessibleObject.vtable, sizeof(__TIB_java_lang_reflect_AccessibleObject.vtable)); + // Initialize vtable for this class + __TIB_java_lang_reflect_Method.vtable[14] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Method.vtable[16] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Method.vtable[1] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Method.vtable[12] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Method.vtable[9] = (VTABLE_PTR) &java_lang_reflect_Method_getModifiers__; + __TIB_java_lang_reflect_Method.vtable[13] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Method.vtable[4] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Method.vtable[15] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_java_lang_reflect_Method.vtable[5] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + xmlvm_init_native_java_lang_reflect_Method(); + // Initialize interface information + __TIB_java_lang_reflect_Method.numImplementedInterfaces = 3; + __TIB_java_lang_reflect_Method.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_reflect_AnnotatedElement) + + __TIB_java_lang_reflect_Method.implementedInterfaces[0][0] = &__TIB_java_lang_reflect_AnnotatedElement; + + XMLVM_CLASS_INIT(java_lang_reflect_GenericDeclaration) + + __TIB_java_lang_reflect_Method.implementedInterfaces[0][1] = &__TIB_java_lang_reflect_GenericDeclaration; + + XMLVM_CLASS_INIT(java_lang_reflect_Member) + + __TIB_java_lang_reflect_Method.implementedInterfaces[0][2] = &__TIB_java_lang_reflect_Member; + // Initialize itable for this class + __TIB_java_lang_reflect_Method.itableBegin = &__TIB_java_lang_reflect_Method.itable[0]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotation___java_lang_Class] = __TIB_java_lang_reflect_Method.vtable[6]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotations__] = __TIB_java_lang_reflect_Method.vtable[7]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getDeclaredAnnotations__] = __TIB_java_lang_reflect_Method.vtable[8]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_isAnnotationPresent___java_lang_Class] = __TIB_java_lang_reflect_Method.vtable[11]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_GenericDeclaration_getTypeParameters__] = __TIB_java_lang_reflect_Method.vtable[14]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getDeclaringClass__] = __TIB_java_lang_reflect_Method.vtable[12]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getModifiers__] = __TIB_java_lang_reflect_Method.vtable[9]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_getName__] = __TIB_java_lang_reflect_Method.vtable[13]; + __TIB_java_lang_reflect_Method.itable[XMLVM_ITABLE_IDX_java_lang_reflect_Member_isSynthetic__] = __TIB_java_lang_reflect_Method.vtable[16]; + + + __TIB_java_lang_reflect_Method.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_Method.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_reflect_Method.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_reflect_Method.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_reflect_Method.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_reflect_Method.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_Method.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_Method.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_reflect_Method = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_Method); + __TIB_java_lang_reflect_Method.clazz = __CLASS_java_lang_reflect_Method; + __TIB_java_lang_reflect_Method.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_Method_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Method); + __CLASS_java_lang_reflect_Method_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Method_1ARRAY); + __CLASS_java_lang_reflect_Method_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Method_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_reflect_Method] + //XMLVM_END_WRAPPER + + __TIB_java_lang_reflect_Method.classInitialized = 1; +} + +void __DELETE_java_lang_reflect_Method(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_reflect_Method] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Method(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_reflect_AccessibleObject(me, 0 || derivedClassWillRegisterFinalizer); + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.name_ = (java_lang_String*) JAVA_NULL; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.clazz_ = (java_lang_Class*) JAVA_NULL; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.address_ = (java_lang_Object*) JAVA_NULL; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.slot_ = 0; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.parameterTypes_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.exceptionTypes_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.modifiers_ = 0; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.signature_ = (java_lang_String*) JAVA_NULL; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.annotations_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_lang_reflect_Method*) me)->fields.java_lang_reflect_Method.parameterAnnotations_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_reflect_Method] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_reflect_Method() +{ XMLVM_CLASS_INIT(java_lang_reflect_Method) +java_lang_reflect_Method* me = (java_lang_reflect_Method*) XMLVM_MALLOC(sizeof(java_lang_reflect_Method)); + me->tib = &__TIB_java_lang_reflect_Method; + __INIT_INSTANCE_MEMBERS_java_lang_reflect_Method(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_reflect_Method] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Method() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_lang_reflect_Method___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Method___INIT___] + XMLVM_ENTER_METHOD("java.lang.reflect.Method", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Method.java", 49) + XMLVM_CHECK_NPE(0) + java_lang_reflect_AccessibleObject___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Method.java", 51) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_lang_reflect_Method___INIT____java_lang_String_java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5, JAVA_OBJECT n6, JAVA_INT n7, JAVA_OBJECT n8, JAVA_OBJECT n9, JAVA_OBJECT n10) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Method___INIT____java_lang_String_java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY] + XMLVM_ENTER_METHOD("java.lang.reflect.Method", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + _r4.o = n4; + _r5.i = n5; + _r6.o = n6; + _r7.i = n7; + _r8.o = n8; + _r9.o = n9; + _r10.o = n10; + XMLVM_SOURCE_POSITION("Method.java", 55) + XMLVM_CHECK_NPE(0) + java_lang_reflect_AccessibleObject___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Method.java", 56) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.name_ = _r1.o; + XMLVM_SOURCE_POSITION("Method.java", 57) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.clazz_ = _r2.o; + XMLVM_SOURCE_POSITION("Method.java", 58) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.parameterTypes_ = _r3.o; + XMLVM_SOURCE_POSITION("Method.java", 59) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.exceptionTypes_ = _r4.o; + XMLVM_SOURCE_POSITION("Method.java", 60) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.modifiers_ = _r5.i; + XMLVM_SOURCE_POSITION("Method.java", 61) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.address_ = _r6.o; + XMLVM_SOURCE_POSITION("Method.java", 62) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.slot_ = _r7.i; + XMLVM_SOURCE_POSITION("Method.java", 63) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.signature_ = _r8.o; + XMLVM_SOURCE_POSITION("Method.java", 64) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.annotations_ = _r9.o; + XMLVM_SOURCE_POSITION("Method.java", 65) + XMLVM_CHECK_NPE(0) + ((java_lang_reflect_Method*) _r0.o)->fields.java_lang_reflect_Method.parameterAnnotations_ = _r10.o; + XMLVM_SOURCE_POSITION("Method.java", 66) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getTypeParameters__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_toGenericString__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getGenericParameterTypes__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getGenericExceptionTypes__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getGenericReturnType__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getParameterAnnotations__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Method_isVarArgs__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Method_isBridge__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Method_isSynthetic__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getDefaultValue__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_reflect_Method_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getDeclaringClass__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getExceptionTypes__(JAVA_OBJECT me)] + +JAVA_INT java_lang_reflect_Method_getModifiers__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Method_getModifiers__] + XMLVM_ENTER_METHOD("java.lang.reflect.Method", "getModifiers", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Method.java", 216) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_lang_reflect_Method*) _r1.o)->fields.java_lang_reflect_Method.modifiers_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_getName__(JAVA_OBJECT me)] + +JAVA_OBJECT java_lang_reflect_Method_getParameterTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Method_getParameterTypes__] + XMLVM_ENTER_METHOD("java.lang.reflect.Method", "getParameterTypes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Method.java", 235) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_lang_reflect_Method*) _r1.o)->fields.java_lang_reflect_Method.parameterTypes_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_reflect_Method_getReturnType__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Method_getReturnType__] + XMLVM_ENTER_METHOD("java.lang.reflect.Method", "getReturnType", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Method.java", 245) + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Method.java", 246) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_lang_reflect_Method*) _r3.o)->fields.java_lang_reflect_Method.signature_; + XMLVM_CHECK_NPE(3) + _r2.o = ((java_lang_reflect_Method*) _r3.o)->fields.java_lang_reflect_Method.exceptionTypes_; + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::parseForMethod + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Method.java", 247) + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser,java.lang.reflect.Type::returnType + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: org.apache.harmony.luni.lang.reflect.Types::getType + XMLVM_RED_CLASS_DEPENDENCY(); + _r3.o = _r3.o; + XMLVM_EXIT_METHOD() + return _r3.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_lang_reflect_Method_hashCode__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT java_lang_reflect_Method_toString__(JAVA_OBJECT me)] + diff --git a/tests/nbody-java/java_lang_reflect_Method.h b/tests/nbody-java/java_lang_reflect_Method.h new file mode 100644 index 0000000000000..9849c77ee7ab9 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Method.h @@ -0,0 +1,119 @@ +#ifndef __JAVA_LANG_REFLECT_METHOD__ +#define __JAVA_LANG_REFLECT_METHOD__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_reflect_Method 9 +// Implemented interfaces: +#include "java_lang_reflect_GenericDeclaration.h" +#include "java_lang_reflect_Member.h" +// Super Class: +#include "java_lang_reflect_AccessibleObject.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Type +#define XMLVM_FORWARD_DECL_java_lang_reflect_Type +XMLVM_FORWARD_DECL(java_lang_reflect_Type) +#endif +// Class declarations for java.lang.reflect.Method +XMLVM_DEFINE_CLASS(java_lang_reflect_Method, 17, XMLVM_ITABLE_SIZE_java_lang_reflect_Method) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_Method; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Method_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Method_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Method_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Method +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_reflect_Method \ + __INSTANCE_FIELDS_java_lang_reflect_AccessibleObject; \ + struct { \ + JAVA_OBJECT name_; \ + JAVA_OBJECT clazz_; \ + JAVA_OBJECT address_; \ + JAVA_INT slot_; \ + JAVA_OBJECT parameterTypes_; \ + JAVA_OBJECT exceptionTypes_; \ + JAVA_INT modifiers_; \ + JAVA_OBJECT signature_; \ + JAVA_OBJECT annotations_; \ + JAVA_OBJECT parameterAnnotations_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Method \ + } java_lang_reflect_Method + +struct java_lang_reflect_Method { + __TIB_DEFINITION_java_lang_reflect_Method* tib; + struct { + __INSTANCE_FIELDS_java_lang_reflect_Method; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Method +#define XMLVM_FORWARD_DECL_java_lang_reflect_Method +typedef struct java_lang_reflect_Method java_lang_reflect_Method; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_reflect_Method 17 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_getTypeParameters__ 14 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_isSynthetic__ 16 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_getDeclaringClass__ 12 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_getModifiers__ 9 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_getName__ 13 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY 15 +#define XMLVM_VTABLE_IDX_java_lang_reflect_Method_toString__ 5 + +void __INIT_java_lang_reflect_Method(); +void __INIT_IMPL_java_lang_reflect_Method(); +void __DELETE_java_lang_reflect_Method(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Method(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_reflect_Method(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Method(); +void xmlvm_init_native_java_lang_reflect_Method(); +void java_lang_reflect_Method___INIT___(JAVA_OBJECT me); +void java_lang_reflect_Method___INIT____java_lang_String_java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5, JAVA_OBJECT n6, JAVA_INT n7, JAVA_OBJECT n8, JAVA_OBJECT n9, JAVA_OBJECT n10); +// Vtable index: 14 +JAVA_OBJECT java_lang_reflect_Method_getTypeParameters__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_toGenericString__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getGenericParameterTypes__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getGenericExceptionTypes__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getGenericReturnType__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getParameterAnnotations__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_reflect_Method_isVarArgs__(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_reflect_Method_isBridge__(JAVA_OBJECT me); +// Vtable index: 16 +JAVA_BOOLEAN java_lang_reflect_Method_isSynthetic__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getDefaultValue__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_lang_reflect_Method_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 12 +JAVA_OBJECT java_lang_reflect_Method_getDeclaringClass__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getExceptionTypes__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_INT java_lang_reflect_Method_getModifiers__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_OBJECT java_lang_reflect_Method_getName__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getParameterTypes__(JAVA_OBJECT me); +JAVA_OBJECT java_lang_reflect_Method_getReturnType__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_lang_reflect_Method_hashCode__(JAVA_OBJECT me); +// Vtable index: 15 +JAVA_OBJECT java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 5 +JAVA_OBJECT java_lang_reflect_Method_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_Modifier.c b/tests/nbody-java/java_lang_reflect_Modifier.c new file mode 100644 index 0000000000000..c76f3346f0233 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Modifier.c @@ -0,0 +1,798 @@ +#include "xmlvm.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "java_lang_reflect_Modifier.h" + +#define XMLVM_CURRENT_CLASS_NAME Modifier +#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_reflect_Modifier + +__TIB_DEFINITION_java_lang_reflect_Modifier __TIB_java_lang_reflect_Modifier = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_Modifier, // classInitializer + "java.lang.reflect.Modifier", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_lang_reflect_Modifier), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_lang_reflect_Modifier; +JAVA_OBJECT __CLASS_java_lang_reflect_Modifier_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Modifier_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Modifier_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_lang_reflect_Modifier_PUBLIC; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_PRIVATE; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_PROTECTED; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_STATIC; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_FINAL; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_SYNCHRONIZED; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_VOLATILE; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_TRANSIENT; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_NATIVE; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_INTERFACE; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_ABSTRACT; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_STRICT; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_BRIDGE; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_VARARGS; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_SYNTHETIC; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_ANNOTATION; +static JAVA_INT _STATIC_java_lang_reflect_Modifier_ENUM; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_lang_reflect_Modifier() +{ + staticInitializerLock(&__TIB_java_lang_reflect_Modifier); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_Modifier.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_Modifier.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_Modifier); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_Modifier.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_Modifier.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_Modifier.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.Modifier") + __INIT_IMPL_java_lang_reflect_Modifier(); + } +} + +void __INIT_IMPL_java_lang_reflect_Modifier() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_lang_reflect_Modifier.newInstanceFunc = __NEW_INSTANCE_java_lang_reflect_Modifier; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_lang_reflect_Modifier.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_lang_reflect_Modifier.numImplementedInterfaces = 0; + __TIB_java_lang_reflect_Modifier.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_lang_reflect_Modifier_PUBLIC = 1; + _STATIC_java_lang_reflect_Modifier_PRIVATE = 2; + _STATIC_java_lang_reflect_Modifier_PROTECTED = 4; + _STATIC_java_lang_reflect_Modifier_STATIC = 8; + _STATIC_java_lang_reflect_Modifier_FINAL = 16; + _STATIC_java_lang_reflect_Modifier_SYNCHRONIZED = 32; + _STATIC_java_lang_reflect_Modifier_VOLATILE = 64; + _STATIC_java_lang_reflect_Modifier_TRANSIENT = 128; + _STATIC_java_lang_reflect_Modifier_NATIVE = 256; + _STATIC_java_lang_reflect_Modifier_INTERFACE = 512; + _STATIC_java_lang_reflect_Modifier_ABSTRACT = 1024; + _STATIC_java_lang_reflect_Modifier_STRICT = 2048; + _STATIC_java_lang_reflect_Modifier_BRIDGE = 64; + _STATIC_java_lang_reflect_Modifier_VARARGS = 128; + _STATIC_java_lang_reflect_Modifier_SYNTHETIC = 4096; + _STATIC_java_lang_reflect_Modifier_ANNOTATION = 8192; + _STATIC_java_lang_reflect_Modifier_ENUM = 16384; + + __TIB_java_lang_reflect_Modifier.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_Modifier.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_lang_reflect_Modifier.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_lang_reflect_Modifier.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_lang_reflect_Modifier.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_lang_reflect_Modifier.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_Modifier.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_Modifier.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_lang_reflect_Modifier = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_Modifier); + __TIB_java_lang_reflect_Modifier.clazz = __CLASS_java_lang_reflect_Modifier; + __TIB_java_lang_reflect_Modifier.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_Modifier_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Modifier); + __CLASS_java_lang_reflect_Modifier_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Modifier_1ARRAY); + __CLASS_java_lang_reflect_Modifier_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Modifier_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_reflect_Modifier] + //XMLVM_END_WRAPPER + + __TIB_java_lang_reflect_Modifier.classInitialized = 1; +} + +void __DELETE_java_lang_reflect_Modifier(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_reflect_Modifier] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Modifier(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_reflect_Modifier] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_lang_reflect_Modifier() +{ XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +java_lang_reflect_Modifier* me = (java_lang_reflect_Modifier*) XMLVM_MALLOC(sizeof(java_lang_reflect_Modifier)); + me->tib = &__TIB_java_lang_reflect_Modifier; + __INIT_INSTANCE_MEMBERS_java_lang_reflect_Modifier(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_reflect_Modifier] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Modifier() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_lang_reflect_Modifier(); + java_lang_reflect_Modifier___INIT___(me); + return me; +} + +JAVA_INT java_lang_reflect_Modifier_GET_PUBLIC() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_PUBLIC; +} + +void java_lang_reflect_Modifier_PUT_PUBLIC(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_PUBLIC = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_PRIVATE() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_PRIVATE; +} + +void java_lang_reflect_Modifier_PUT_PRIVATE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_PRIVATE = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_PROTECTED() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_PROTECTED; +} + +void java_lang_reflect_Modifier_PUT_PROTECTED(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_PROTECTED = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_STATIC() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_STATIC; +} + +void java_lang_reflect_Modifier_PUT_STATIC(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_STATIC = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_FINAL() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_FINAL; +} + +void java_lang_reflect_Modifier_PUT_FINAL(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_FINAL = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_SYNCHRONIZED() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_SYNCHRONIZED; +} + +void java_lang_reflect_Modifier_PUT_SYNCHRONIZED(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_SYNCHRONIZED = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_VOLATILE() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_VOLATILE; +} + +void java_lang_reflect_Modifier_PUT_VOLATILE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_VOLATILE = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_TRANSIENT() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_TRANSIENT; +} + +void java_lang_reflect_Modifier_PUT_TRANSIENT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_TRANSIENT = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_NATIVE() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_NATIVE; +} + +void java_lang_reflect_Modifier_PUT_NATIVE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_NATIVE = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_INTERFACE() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_INTERFACE; +} + +void java_lang_reflect_Modifier_PUT_INTERFACE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_INTERFACE = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_ABSTRACT() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_ABSTRACT; +} + +void java_lang_reflect_Modifier_PUT_ABSTRACT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_ABSTRACT = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_STRICT() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_STRICT; +} + +void java_lang_reflect_Modifier_PUT_STRICT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_STRICT = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_BRIDGE() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_BRIDGE; +} + +void java_lang_reflect_Modifier_PUT_BRIDGE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_BRIDGE = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_VARARGS() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_VARARGS; +} + +void java_lang_reflect_Modifier_PUT_VARARGS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_VARARGS = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_SYNTHETIC() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_SYNTHETIC; +} + +void java_lang_reflect_Modifier_PUT_SYNTHETIC(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_SYNTHETIC = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_ANNOTATION() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_ANNOTATION; +} + +void java_lang_reflect_Modifier_PUT_ANNOTATION(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_ANNOTATION = v; +} + +JAVA_INT java_lang_reflect_Modifier_GET_ENUM() +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + return _STATIC_java_lang_reflect_Modifier_ENUM; +} + +void java_lang_reflect_Modifier_PUT_ENUM(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) +_STATIC_java_lang_reflect_Modifier_ENUM = v; +} + +void java_lang_reflect_Modifier___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier___INIT___] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Modifier.java", 110) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Modifier.java", 111) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isAbstract___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isAbstract___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isAbstract", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 123) + _r0.i = _r1.i & 1024; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isFinal___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isFinal___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isFinal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 136) + _r0.i = _r1.i & 16; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isInterface___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isInterface___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isInterface", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 149) + _r0.i = _r1.i & 512; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isNative___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isNative___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isNative", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 162) + _r0.i = _r1.i & 256; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isPrivate___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isPrivate___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isPrivate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 175) + _r0.i = _r1.i & 2; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isProtected___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isProtected___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isProtected", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 188) + _r0.i = _r1.i & 4; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isPublic___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isPublic___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isPublic", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 201) + _r0.i = _r1.i & 1; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isStatic___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isStatic___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isStatic", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 214) + _r0.i = _r1.i & 8; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isStrict___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isStrict___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isStrict", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 227) + _r0.i = _r1.i & 2048; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isSynchronized___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isSynchronized___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isSynchronized", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 240) + _r0.i = _r1.i & 32; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isTransient___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isTransient___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isTransient", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 253) + _r0.i = _r1.i & 128; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_lang_reflect_Modifier_isVolatile___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_isVolatile___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "isVolatile", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 266) + _r0.i = _r1.i & 64; + if (_r0.i == 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_lang_reflect_Modifier_toString___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_lang_reflect_Modifier) + //XMLVM_BEGIN_WRAPPER[java_lang_reflect_Modifier_toString___int] + XMLVM_ENTER_METHOD("java.lang.reflect.Modifier", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = n1; + XMLVM_SOURCE_POSITION("Modifier.java", 282) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Modifier.java", 284) + _r1.i = java_lang_reflect_Modifier_isPublic___int(_r3.i); + if (_r1.i == 0) goto label16; + XMLVM_SOURCE_POSITION("Modifier.java", 285) + // "public " + _r1.o = xmlvm_create_java_string_from_pool(650); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label16:; + XMLVM_SOURCE_POSITION("Modifier.java", 287) + _r1.i = java_lang_reflect_Modifier_isProtected___int(_r3.i); + if (_r1.i == 0) goto label27; + XMLVM_SOURCE_POSITION("Modifier.java", 288) + // "protected " + _r1.o = xmlvm_create_java_string_from_pool(651); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label27:; + XMLVM_SOURCE_POSITION("Modifier.java", 290) + _r1.i = java_lang_reflect_Modifier_isPrivate___int(_r3.i); + if (_r1.i == 0) goto label38; + XMLVM_SOURCE_POSITION("Modifier.java", 291) + // "private " + _r1.o = xmlvm_create_java_string_from_pool(652); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label38:; + XMLVM_SOURCE_POSITION("Modifier.java", 293) + _r1.i = java_lang_reflect_Modifier_isAbstract___int(_r3.i); + if (_r1.i == 0) goto label49; + XMLVM_SOURCE_POSITION("Modifier.java", 294) + // "abstract " + _r1.o = xmlvm_create_java_string_from_pool(653); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label49:; + XMLVM_SOURCE_POSITION("Modifier.java", 296) + _r1.i = java_lang_reflect_Modifier_isStatic___int(_r3.i); + if (_r1.i == 0) goto label60; + XMLVM_SOURCE_POSITION("Modifier.java", 297) + // "static " + _r1.o = xmlvm_create_java_string_from_pool(654); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label60:; + XMLVM_SOURCE_POSITION("Modifier.java", 299) + _r1.i = java_lang_reflect_Modifier_isFinal___int(_r3.i); + if (_r1.i == 0) goto label71; + XMLVM_SOURCE_POSITION("Modifier.java", 300) + // "final " + _r1.o = xmlvm_create_java_string_from_pool(655); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label71:; + XMLVM_SOURCE_POSITION("Modifier.java", 302) + _r1.i = java_lang_reflect_Modifier_isTransient___int(_r3.i); + if (_r1.i == 0) goto label82; + XMLVM_SOURCE_POSITION("Modifier.java", 303) + // "transient " + _r1.o = xmlvm_create_java_string_from_pool(656); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label82:; + XMLVM_SOURCE_POSITION("Modifier.java", 305) + _r1.i = java_lang_reflect_Modifier_isVolatile___int(_r3.i); + if (_r1.i == 0) goto label93; + XMLVM_SOURCE_POSITION("Modifier.java", 306) + // "volatile " + _r1.o = xmlvm_create_java_string_from_pool(657); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label93:; + XMLVM_SOURCE_POSITION("Modifier.java", 308) + _r1.i = java_lang_reflect_Modifier_isSynchronized___int(_r3.i); + if (_r1.i == 0) goto label104; + XMLVM_SOURCE_POSITION("Modifier.java", 309) + // "synchronized " + _r1.o = xmlvm_create_java_string_from_pool(658); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label104:; + XMLVM_SOURCE_POSITION("Modifier.java", 311) + _r1.i = java_lang_reflect_Modifier_isNative___int(_r3.i); + if (_r1.i == 0) goto label115; + XMLVM_SOURCE_POSITION("Modifier.java", 312) + // "native " + _r1.o = xmlvm_create_java_string_from_pool(659); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label115:; + XMLVM_SOURCE_POSITION("Modifier.java", 314) + _r1.i = java_lang_reflect_Modifier_isStrict___int(_r3.i); + if (_r1.i == 0) goto label126; + XMLVM_SOURCE_POSITION("Modifier.java", 315) + // "strictfp " + _r1.o = xmlvm_create_java_string_from_pool(660); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label126:; + XMLVM_SOURCE_POSITION("Modifier.java", 317) + _r1.i = java_lang_reflect_Modifier_isInterface___int(_r3.i); + if (_r1.i == 0) goto label137; + XMLVM_SOURCE_POSITION("Modifier.java", 318) + // "interface " + _r1.o = xmlvm_create_java_string_from_pool(661); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label137:; + XMLVM_SOURCE_POSITION("Modifier.java", 320) + XMLVM_CHECK_NPE(0) + _r1.i = java_lang_AbstractStringBuilder_length__(_r0.o); + if (_r1.i != 0) goto label146; + XMLVM_SOURCE_POSITION("Modifier.java", 321) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + label145:; + XMLVM_SOURCE_POSITION("Modifier.java", 324) + XMLVM_EXIT_METHOD() + return _r0.o; + label146:; + XMLVM_SOURCE_POSITION("Modifier.java", 323) + XMLVM_CHECK_NPE(0) + _r1.i = java_lang_AbstractStringBuilder_length__(_r0.o); + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_setLength___int(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label145; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_lang_reflect_Modifier.h b/tests/nbody-java/java_lang_reflect_Modifier.h new file mode 100644 index 0000000000000..fed59777337b3 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Modifier.h @@ -0,0 +1,106 @@ +#ifndef __JAVA_LANG_REFLECT_MODIFIER__ +#define __JAVA_LANG_REFLECT_MODIFIER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_lang_reflect_Modifier 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for java.lang.reflect.Modifier +XMLVM_DEFINE_CLASS(java_lang_reflect_Modifier, 6, XMLVM_ITABLE_SIZE_java_lang_reflect_Modifier) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_Modifier; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Modifier_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Modifier_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Modifier_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Modifier +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_lang_reflect_Modifier \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_lang_reflect_Modifier \ + } java_lang_reflect_Modifier + +struct java_lang_reflect_Modifier { + __TIB_DEFINITION_java_lang_reflect_Modifier* tib; + struct { + __INSTANCE_FIELDS_java_lang_reflect_Modifier; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Modifier +#define XMLVM_FORWARD_DECL_java_lang_reflect_Modifier +typedef struct java_lang_reflect_Modifier java_lang_reflect_Modifier; +#endif + +#define XMLVM_VTABLE_SIZE_java_lang_reflect_Modifier 6 + +void __INIT_java_lang_reflect_Modifier(); +void __INIT_IMPL_java_lang_reflect_Modifier(); +void __DELETE_java_lang_reflect_Modifier(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_lang_reflect_Modifier(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_lang_reflect_Modifier(); +JAVA_OBJECT __NEW_INSTANCE_java_lang_reflect_Modifier(); +JAVA_INT java_lang_reflect_Modifier_GET_PUBLIC(); +void java_lang_reflect_Modifier_PUT_PUBLIC(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_PRIVATE(); +void java_lang_reflect_Modifier_PUT_PRIVATE(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_PROTECTED(); +void java_lang_reflect_Modifier_PUT_PROTECTED(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_STATIC(); +void java_lang_reflect_Modifier_PUT_STATIC(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_FINAL(); +void java_lang_reflect_Modifier_PUT_FINAL(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_SYNCHRONIZED(); +void java_lang_reflect_Modifier_PUT_SYNCHRONIZED(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_VOLATILE(); +void java_lang_reflect_Modifier_PUT_VOLATILE(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_TRANSIENT(); +void java_lang_reflect_Modifier_PUT_TRANSIENT(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_NATIVE(); +void java_lang_reflect_Modifier_PUT_NATIVE(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_INTERFACE(); +void java_lang_reflect_Modifier_PUT_INTERFACE(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_ABSTRACT(); +void java_lang_reflect_Modifier_PUT_ABSTRACT(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_STRICT(); +void java_lang_reflect_Modifier_PUT_STRICT(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_BRIDGE(); +void java_lang_reflect_Modifier_PUT_BRIDGE(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_VARARGS(); +void java_lang_reflect_Modifier_PUT_VARARGS(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_SYNTHETIC(); +void java_lang_reflect_Modifier_PUT_SYNTHETIC(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_ANNOTATION(); +void java_lang_reflect_Modifier_PUT_ANNOTATION(JAVA_INT v); +JAVA_INT java_lang_reflect_Modifier_GET_ENUM(); +void java_lang_reflect_Modifier_PUT_ENUM(JAVA_INT v); +void java_lang_reflect_Modifier___INIT___(JAVA_OBJECT me); +JAVA_BOOLEAN java_lang_reflect_Modifier_isAbstract___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isFinal___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isInterface___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isNative___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isPrivate___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isProtected___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isPublic___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isStatic___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isStrict___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isSynchronized___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isTransient___int(JAVA_INT n1); +JAVA_BOOLEAN java_lang_reflect_Modifier_isVolatile___int(JAVA_INT n1); +JAVA_OBJECT java_lang_reflect_Modifier_toString___int(JAVA_INT n1); + +#endif diff --git a/tests/nbody-java/java_lang_reflect_Type.c b/tests/nbody-java/java_lang_reflect_Type.c new file mode 100644 index 0000000000000..02e2e5b9cadc2 --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Type.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_lang_reflect_Type.h" + +__TIB_DEFINITION_java_lang_reflect_Type __TIB_java_lang_reflect_Type = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_lang_reflect_Type, // classInitializer + "java.lang.reflect.Type", // className + "java.lang.reflect", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_lang_reflect_Type; +JAVA_OBJECT __CLASS_java_lang_reflect_Type_1ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Type_2ARRAY; +JAVA_OBJECT __CLASS_java_lang_reflect_Type_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_lang_reflect_Type() +{ + staticInitializerLock(&__TIB_java_lang_reflect_Type); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_lang_reflect_Type.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_lang_reflect_Type.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_lang_reflect_Type); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_lang_reflect_Type.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_lang_reflect_Type.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_lang_reflect_Type.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.lang.reflect.Type") + __INIT_IMPL_java_lang_reflect_Type(); + } +} + +void __INIT_IMPL_java_lang_reflect_Type() +{ + __TIB_java_lang_reflect_Type.numInterfaces = 0; + __TIB_java_lang_reflect_Type.declaredFields = &__field_reflection_data[0]; + __TIB_java_lang_reflect_Type.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_lang_reflect_Type.methodDispatcherFunc = method_dispatcher; + __TIB_java_lang_reflect_Type.declaredMethods = &__method_reflection_data[0]; + __TIB_java_lang_reflect_Type.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_lang_reflect_Type = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_reflect_Type); + __TIB_java_lang_reflect_Type.clazz = __CLASS_java_lang_reflect_Type; + __TIB_java_lang_reflect_Type.baseType = JAVA_NULL; + __CLASS_java_lang_reflect_Type_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Type); + __CLASS_java_lang_reflect_Type_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Type_1ARRAY); + __CLASS_java_lang_reflect_Type_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_reflect_Type_2ARRAY); + + __TIB_java_lang_reflect_Type.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_lang_reflect_Type.h b/tests/nbody-java/java_lang_reflect_Type.h new file mode 100644 index 0000000000000..8062ec7f7e84a --- /dev/null +++ b/tests/nbody-java/java_lang_reflect_Type.h @@ -0,0 +1,27 @@ +#ifndef __JAVA_LANG_REFLECT_TYPE__ +#define __JAVA_LANG_REFLECT_TYPE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_lang_reflect_Type, 0, 0) + +extern JAVA_OBJECT __CLASS_java_lang_reflect_Type; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Type_1ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Type_2ARRAY; +extern JAVA_OBJECT __CLASS_java_lang_reflect_Type_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Type +#define XMLVM_FORWARD_DECL_java_lang_reflect_Type +typedef struct java_lang_reflect_Type java_lang_reflect_Type; +#endif + +void __INIT_java_lang_reflect_Type(); +void __INIT_IMPL_java_lang_reflect_Type(); + +#endif diff --git a/tests/nbody-java/java_net_BindException.c b/tests/nbody-java/java_net_BindException.c new file mode 100644 index 0000000000000..8e77f70bb5ac4 --- /dev/null +++ b/tests/nbody-java/java_net_BindException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_net_BindException.h" + +#define XMLVM_CURRENT_CLASS_NAME BindException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_net_BindException + +__TIB_DEFINITION_java_net_BindException __TIB_java_net_BindException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_net_BindException, // classInitializer + "java.net.BindException", // className + "java.net", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_net_SocketException, // extends + sizeof(java_net_BindException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_net_BindException; +JAVA_OBJECT __CLASS_java_net_BindException_1ARRAY; +JAVA_OBJECT __CLASS_java_net_BindException_2ARRAY; +JAVA_OBJECT __CLASS_java_net_BindException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_net_BindException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_net_BindException() +{ + staticInitializerLock(&__TIB_java_net_BindException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_net_BindException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_net_BindException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_net_BindException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_net_BindException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_net_BindException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_net_BindException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.net.BindException") + __INIT_IMPL_java_net_BindException(); + } +} + +void __INIT_IMPL_java_net_BindException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_net_SocketException) + __TIB_java_net_BindException.newInstanceFunc = __NEW_INSTANCE_java_net_BindException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_net_BindException.vtable, __TIB_java_net_SocketException.vtable, sizeof(__TIB_java_net_SocketException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_net_BindException.numImplementedInterfaces = 1; + __TIB_java_net_BindException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_net_BindException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_net_BindException.itableBegin = &__TIB_java_net_BindException.itable[0]; + + _STATIC_java_net_BindException_serialVersionUID = -5945005768251722951; + + __TIB_java_net_BindException.declaredFields = &__field_reflection_data[0]; + __TIB_java_net_BindException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_net_BindException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_net_BindException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_net_BindException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_net_BindException.methodDispatcherFunc = method_dispatcher; + __TIB_java_net_BindException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_net_BindException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_net_BindException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_net_BindException); + __TIB_java_net_BindException.clazz = __CLASS_java_net_BindException; + __TIB_java_net_BindException.baseType = JAVA_NULL; + __CLASS_java_net_BindException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_BindException); + __CLASS_java_net_BindException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_BindException_1ARRAY); + __CLASS_java_net_BindException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_BindException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_net_BindException] + //XMLVM_END_WRAPPER + + __TIB_java_net_BindException.classInitialized = 1; +} + +void __DELETE_java_net_BindException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_net_BindException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_net_BindException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_net_SocketException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_net_BindException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_net_BindException() +{ XMLVM_CLASS_INIT(java_net_BindException) +java_net_BindException* me = (java_net_BindException*) XMLVM_MALLOC(sizeof(java_net_BindException)); + me->tib = &__TIB_java_net_BindException; + __INIT_INSTANCE_MEMBERS_java_net_BindException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_net_BindException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_net_BindException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_net_BindException(); + java_net_BindException___INIT___(me); + return me; +} + +JAVA_LONG java_net_BindException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_net_BindException) + return _STATIC_java_net_BindException_serialVersionUID; +} + +void java_net_BindException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_net_BindException) +_STATIC_java_net_BindException_serialVersionUID = v; +} + +void java_net_BindException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_BindException___INIT___] + XMLVM_ENTER_METHOD("java.net.BindException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("BindException.java", 32) + XMLVM_CHECK_NPE(0) + java_net_SocketException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("BindException.java", 33) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_BindException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_BindException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.net.BindException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BindException.java", 42) + XMLVM_CHECK_NPE(0) + java_net_SocketException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("BindException.java", 43) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_net_BindException.h b/tests/nbody-java/java_net_BindException.h new file mode 100644 index 0000000000000..e41d7df4fec18 --- /dev/null +++ b/tests/nbody-java/java_net_BindException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_NET_BINDEXCEPTION__ +#define __JAVA_NET_BINDEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_net_BindException 0 +// Implemented interfaces: +// Super Class: +#include "java_net_SocketException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.net.BindException +XMLVM_DEFINE_CLASS(java_net_BindException, 8, XMLVM_ITABLE_SIZE_java_net_BindException) + +extern JAVA_OBJECT __CLASS_java_net_BindException; +extern JAVA_OBJECT __CLASS_java_net_BindException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_net_BindException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_net_BindException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_net_BindException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_net_BindException \ + __INSTANCE_FIELDS_java_net_SocketException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_net_BindException \ + } java_net_BindException + +struct java_net_BindException { + __TIB_DEFINITION_java_net_BindException* tib; + struct { + __INSTANCE_FIELDS_java_net_BindException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_net_BindException +#define XMLVM_FORWARD_DECL_java_net_BindException +typedef struct java_net_BindException java_net_BindException; +#endif + +#define XMLVM_VTABLE_SIZE_java_net_BindException 8 + +void __INIT_java_net_BindException(); +void __INIT_IMPL_java_net_BindException(); +void __DELETE_java_net_BindException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_net_BindException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_net_BindException(); +JAVA_OBJECT __NEW_INSTANCE_java_net_BindException(); +JAVA_LONG java_net_BindException_GET_serialVersionUID(); +void java_net_BindException_PUT_serialVersionUID(JAVA_LONG v); +void java_net_BindException___INIT___(JAVA_OBJECT me); +void java_net_BindException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_net_ConnectException.c b/tests/nbody-java/java_net_ConnectException.c new file mode 100644 index 0000000000000..b0a8b4872a7db --- /dev/null +++ b/tests/nbody-java/java_net_ConnectException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_net_ConnectException.h" + +#define XMLVM_CURRENT_CLASS_NAME ConnectException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_net_ConnectException + +__TIB_DEFINITION_java_net_ConnectException __TIB_java_net_ConnectException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_net_ConnectException, // classInitializer + "java.net.ConnectException", // className + "java.net", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_net_SocketException, // extends + sizeof(java_net_ConnectException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_net_ConnectException; +JAVA_OBJECT __CLASS_java_net_ConnectException_1ARRAY; +JAVA_OBJECT __CLASS_java_net_ConnectException_2ARRAY; +JAVA_OBJECT __CLASS_java_net_ConnectException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_net_ConnectException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_net_ConnectException() +{ + staticInitializerLock(&__TIB_java_net_ConnectException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_net_ConnectException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_net_ConnectException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_net_ConnectException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_net_ConnectException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_net_ConnectException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_net_ConnectException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.net.ConnectException") + __INIT_IMPL_java_net_ConnectException(); + } +} + +void __INIT_IMPL_java_net_ConnectException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_net_SocketException) + __TIB_java_net_ConnectException.newInstanceFunc = __NEW_INSTANCE_java_net_ConnectException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_net_ConnectException.vtable, __TIB_java_net_SocketException.vtable, sizeof(__TIB_java_net_SocketException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_net_ConnectException.numImplementedInterfaces = 1; + __TIB_java_net_ConnectException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_net_ConnectException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_net_ConnectException.itableBegin = &__TIB_java_net_ConnectException.itable[0]; + + _STATIC_java_net_ConnectException_serialVersionUID = 3831404271622369215; + + __TIB_java_net_ConnectException.declaredFields = &__field_reflection_data[0]; + __TIB_java_net_ConnectException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_net_ConnectException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_net_ConnectException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_net_ConnectException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_net_ConnectException.methodDispatcherFunc = method_dispatcher; + __TIB_java_net_ConnectException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_net_ConnectException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_net_ConnectException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_net_ConnectException); + __TIB_java_net_ConnectException.clazz = __CLASS_java_net_ConnectException; + __TIB_java_net_ConnectException.baseType = JAVA_NULL; + __CLASS_java_net_ConnectException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_ConnectException); + __CLASS_java_net_ConnectException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_ConnectException_1ARRAY); + __CLASS_java_net_ConnectException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_ConnectException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_net_ConnectException] + //XMLVM_END_WRAPPER + + __TIB_java_net_ConnectException.classInitialized = 1; +} + +void __DELETE_java_net_ConnectException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_net_ConnectException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_net_ConnectException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_net_SocketException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_net_ConnectException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_net_ConnectException() +{ XMLVM_CLASS_INIT(java_net_ConnectException) +java_net_ConnectException* me = (java_net_ConnectException*) XMLVM_MALLOC(sizeof(java_net_ConnectException)); + me->tib = &__TIB_java_net_ConnectException; + __INIT_INSTANCE_MEMBERS_java_net_ConnectException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_net_ConnectException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_net_ConnectException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_net_ConnectException(); + java_net_ConnectException___INIT___(me); + return me; +} + +JAVA_LONG java_net_ConnectException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_net_ConnectException) + return _STATIC_java_net_ConnectException_serialVersionUID; +} + +void java_net_ConnectException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_net_ConnectException) +_STATIC_java_net_ConnectException_serialVersionUID = v; +} + +void java_net_ConnectException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_ConnectException___INIT___] + XMLVM_ENTER_METHOD("java.net.ConnectException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("ConnectException.java", 32) + XMLVM_CHECK_NPE(0) + java_net_SocketException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("ConnectException.java", 33) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_ConnectException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_ConnectException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.net.ConnectException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ConnectException.java", 42) + XMLVM_CHECK_NPE(0) + java_net_SocketException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ConnectException.java", 43) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_net_ConnectException.h b/tests/nbody-java/java_net_ConnectException.h new file mode 100644 index 0000000000000..d2a207798deb3 --- /dev/null +++ b/tests/nbody-java/java_net_ConnectException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_NET_CONNECTEXCEPTION__ +#define __JAVA_NET_CONNECTEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_net_ConnectException 0 +// Implemented interfaces: +// Super Class: +#include "java_net_SocketException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.net.ConnectException +XMLVM_DEFINE_CLASS(java_net_ConnectException, 8, XMLVM_ITABLE_SIZE_java_net_ConnectException) + +extern JAVA_OBJECT __CLASS_java_net_ConnectException; +extern JAVA_OBJECT __CLASS_java_net_ConnectException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_net_ConnectException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_net_ConnectException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_net_ConnectException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_net_ConnectException \ + __INSTANCE_FIELDS_java_net_SocketException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_net_ConnectException \ + } java_net_ConnectException + +struct java_net_ConnectException { + __TIB_DEFINITION_java_net_ConnectException* tib; + struct { + __INSTANCE_FIELDS_java_net_ConnectException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_net_ConnectException +#define XMLVM_FORWARD_DECL_java_net_ConnectException +typedef struct java_net_ConnectException java_net_ConnectException; +#endif + +#define XMLVM_VTABLE_SIZE_java_net_ConnectException 8 + +void __INIT_java_net_ConnectException(); +void __INIT_IMPL_java_net_ConnectException(); +void __DELETE_java_net_ConnectException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_net_ConnectException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_net_ConnectException(); +JAVA_OBJECT __NEW_INSTANCE_java_net_ConnectException(); +JAVA_LONG java_net_ConnectException_GET_serialVersionUID(); +void java_net_ConnectException_PUT_serialVersionUID(JAVA_LONG v); +void java_net_ConnectException___INIT___(JAVA_OBJECT me); +void java_net_ConnectException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_net_Inet6Address.c b/tests/nbody-java/java_net_Inet6Address.c new file mode 100644 index 0000000000000..e0e3b1b8d3cf2 --- /dev/null +++ b/tests/nbody-java/java_net_Inet6Address.c @@ -0,0 +1,1455 @@ +#include "xmlvm.h" +#include "java_io_ObjectStreamField.h" +#include "java_lang_Boolean.h" +#include "java_lang_Class.h" +#include "java_lang_Integer.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_net_UnknownHostException.h" +#include "java_util_Enumeration.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_net_Inet6Address.h" + +#define XMLVM_CURRENT_CLASS_NAME Inet6Address +#define XMLVM_CURRENT_PKG_CLASS_NAME java_net_Inet6Address + +__TIB_DEFINITION_java_net_Inet6Address __TIB_java_net_Inet6Address = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_net_Inet6Address, // classInitializer + "java.net.Inet6Address", // className + "java.net", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_net_InetAddress, // extends + sizeof(java_net_Inet6Address), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_net_Inet6Address; +JAVA_OBJECT __CLASS_java_net_Inet6Address_1ARRAY; +JAVA_OBJECT __CLASS_java_net_Inet6Address_2ARRAY; +JAVA_OBJECT __CLASS_java_net_Inet6Address_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_net_Inet6Address_serialVersionUID; +static JAVA_OBJECT _STATIC_java_net_Inet6Address_any_bytes; +static JAVA_OBJECT _STATIC_java_net_Inet6Address_localhost_bytes; +static JAVA_OBJECT _STATIC_java_net_Inet6Address_ANY; +static JAVA_OBJECT _STATIC_java_net_Inet6Address_LOOPBACK; +static JAVA_OBJECT _STATIC_java_net_Inet6Address_serialPersistentFields; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_net_Inet6Address() +{ + staticInitializerLock(&__TIB_java_net_Inet6Address); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_net_Inet6Address.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_net_Inet6Address.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_net_Inet6Address); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_net_Inet6Address.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_net_Inet6Address.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_net_Inet6Address.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.net.Inet6Address") + __INIT_IMPL_java_net_Inet6Address(); + } +} + +void __INIT_IMPL_java_net_Inet6Address() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_net_InetAddress) + __TIB_java_net_Inet6Address.newInstanceFunc = __NEW_INSTANCE_java_net_Inet6Address; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_net_Inet6Address.vtable, __TIB_java_net_InetAddress.vtable, sizeof(__TIB_java_net_InetAddress.vtable)); + // Initialize vtable for this class + __TIB_java_net_Inet6Address.vtable[15] = (VTABLE_PTR) &java_net_Inet6Address_isMulticastAddress__; + __TIB_java_net_Inet6Address.vtable[7] = (VTABLE_PTR) &java_net_Inet6Address_isAnyLocalAddress__; + __TIB_java_net_Inet6Address.vtable[9] = (VTABLE_PTR) &java_net_Inet6Address_isLoopbackAddress__; + __TIB_java_net_Inet6Address.vtable[8] = (VTABLE_PTR) &java_net_Inet6Address_isLinkLocalAddress__; + __TIB_java_net_Inet6Address.vtable[16] = (VTABLE_PTR) &java_net_Inet6Address_isSiteLocalAddress__; + __TIB_java_net_Inet6Address.vtable[10] = (VTABLE_PTR) &java_net_Inet6Address_isMCGlobal__; + __TIB_java_net_Inet6Address.vtable[12] = (VTABLE_PTR) &java_net_Inet6Address_isMCNodeLocal__; + __TIB_java_net_Inet6Address.vtable[11] = (VTABLE_PTR) &java_net_Inet6Address_isMCLinkLocal__; + __TIB_java_net_Inet6Address.vtable[14] = (VTABLE_PTR) &java_net_Inet6Address_isMCSiteLocal__; + __TIB_java_net_Inet6Address.vtable[13] = (VTABLE_PTR) &java_net_Inet6Address_isMCOrgLocal__; + __TIB_java_net_Inet6Address.vtable[6] = (VTABLE_PTR) &java_net_Inet6Address_getHostAddress__; + __TIB_java_net_Inet6Address.vtable[4] = (VTABLE_PTR) &java_net_Inet6Address_hashCode__; + __TIB_java_net_Inet6Address.vtable[1] = (VTABLE_PTR) &java_net_Inet6Address_equals___java_lang_Object; + __TIB_java_net_Inet6Address.vtable[5] = (VTABLE_PTR) &java_net_Inet6Address_toString__; + // Initialize interface information + __TIB_java_net_Inet6Address.numImplementedInterfaces = 1; + __TIB_java_net_Inet6Address.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_net_Inet6Address.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_net_Inet6Address.itableBegin = &__TIB_java_net_Inet6Address.itable[0]; + + _STATIC_java_net_Inet6Address_serialVersionUID = 6880410070516793377; + _STATIC_java_net_Inet6Address_any_bytes = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_net_Inet6Address_localhost_bytes = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_net_Inet6Address_ANY = (java_net_InetAddress*) JAVA_NULL; + _STATIC_java_net_Inet6Address_LOOPBACK = (java_net_InetAddress*) JAVA_NULL; + _STATIC_java_net_Inet6Address_serialPersistentFields = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_net_Inet6Address.declaredFields = &__field_reflection_data[0]; + __TIB_java_net_Inet6Address.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_net_Inet6Address.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_net_Inet6Address.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_net_Inet6Address.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_net_Inet6Address.methodDispatcherFunc = method_dispatcher; + __TIB_java_net_Inet6Address.declaredMethods = &__method_reflection_data[0]; + __TIB_java_net_Inet6Address.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_net_Inet6Address = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_net_Inet6Address); + __TIB_java_net_Inet6Address.clazz = __CLASS_java_net_Inet6Address; + __TIB_java_net_Inet6Address.baseType = JAVA_NULL; + __CLASS_java_net_Inet6Address_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_Inet6Address); + __CLASS_java_net_Inet6Address_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_Inet6Address_1ARRAY); + __CLASS_java_net_Inet6Address_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_Inet6Address_2ARRAY); + java_net_Inet6Address___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_net_Inet6Address] + //XMLVM_END_WRAPPER + + __TIB_java_net_Inet6Address.classInitialized = 1; +} + +void __DELETE_java_net_Inet6Address(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_net_Inet6Address] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_net_Inet6Address(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_net_InetAddress(me, 0 || derivedClassWillRegisterFinalizer); + ((java_net_Inet6Address*) me)->fields.java_net_Inet6Address.scope_id_ = 0; + ((java_net_Inet6Address*) me)->fields.java_net_Inet6Address.scope_id_set_ = 0; + ((java_net_Inet6Address*) me)->fields.java_net_Inet6Address.scope_ifname_set_ = 0; + ((java_net_Inet6Address*) me)->fields.java_net_Inet6Address.ifname_ = (java_lang_String*) JAVA_NULL; + ((java_net_Inet6Address*) me)->fields.java_net_Inet6Address.scopedIf_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_net_Inet6Address] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_net_Inet6Address() +{ XMLVM_CLASS_INIT(java_net_Inet6Address) +java_net_Inet6Address* me = (java_net_Inet6Address*) XMLVM_MALLOC(sizeof(java_net_Inet6Address)); + me->tib = &__TIB_java_net_Inet6Address; + __INIT_INSTANCE_MEMBERS_java_net_Inet6Address(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_net_Inet6Address] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_net_Inet6Address() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_net_Inet6Address_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + return _STATIC_java_net_Inet6Address_serialVersionUID; +} + +void java_net_Inet6Address_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) +_STATIC_java_net_Inet6Address_serialVersionUID = v; +} + +JAVA_OBJECT java_net_Inet6Address_GET_any_bytes() +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + return _STATIC_java_net_Inet6Address_any_bytes; +} + +void java_net_Inet6Address_PUT_any_bytes(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) +_STATIC_java_net_Inet6Address_any_bytes = v; +} + +JAVA_OBJECT java_net_Inet6Address_GET_localhost_bytes() +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + return _STATIC_java_net_Inet6Address_localhost_bytes; +} + +void java_net_Inet6Address_PUT_localhost_bytes(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) +_STATIC_java_net_Inet6Address_localhost_bytes = v; +} + +JAVA_OBJECT java_net_Inet6Address_GET_ANY() +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + return _STATIC_java_net_Inet6Address_ANY; +} + +void java_net_Inet6Address_PUT_ANY(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) +_STATIC_java_net_Inet6Address_ANY = v; +} + +JAVA_OBJECT java_net_Inet6Address_GET_LOOPBACK() +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + return _STATIC_java_net_Inet6Address_LOOPBACK; +} + +void java_net_Inet6Address_PUT_LOOPBACK(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) +_STATIC_java_net_Inet6Address_LOOPBACK = v; +} + +JAVA_OBJECT java_net_Inet6Address_GET_serialPersistentFields() +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + return _STATIC_java_net_Inet6Address_serialPersistentFields; +} + +void java_net_Inet6Address_PUT_serialPersistentFields(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) +_STATIC_java_net_Inet6Address_serialPersistentFields = v; +} + +void java_net_Inet6Address___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address___INIT____byte_1ARRAY] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Inet6Address.java", 60) + XMLVM_CHECK_NPE(1) + java_net_InetAddress___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 61) + XMLVM_CHECK_NPE(1) + ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.ipaddress_ = _r2.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 62) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_ = _r0.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 63) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Inet6Address.java", 65) + XMLVM_CHECK_NPE(1) + java_net_InetAddress___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 66) + XMLVM_CHECK_NPE(1) + ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.hostName_ = _r3.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 67) + XMLVM_CHECK_NPE(1) + ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.ipaddress_ = _r2.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 68) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_ = _r0.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 69) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String_int] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("Inet6Address.java", 82) + XMLVM_CHECK_NPE(1) + java_net_InetAddress___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 83) + XMLVM_CHECK_NPE(1) + ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.hostName_ = _r3.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 84) + XMLVM_CHECK_NPE(1) + ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.ipaddress_ = _r2.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 85) + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_ = _r4.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 86) + if (_r4.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Inet6Address.java", 87) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_set_ = _r0.i; + label14:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 89) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_Inet6Address_getByAddress___java_lang_String_byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_getByAddress___java_lang_String_byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "getByAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = n1; + _r3.o = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("Inet6Address.java", 107) + if (_r3.o == JAVA_NULL) goto label7; + _r0.i = 16; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r0.i == _r1.i) goto label19; + label7:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 109) + _r0.o = __NEW_java_net_UnknownHostException(); + // "luni.62" + _r1.o = xmlvm_create_java_string_from_pool(821); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r1.o); + XMLVM_CHECK_NPE(0) + java_net_UnknownHostException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 111) + if (_r4.i >= 0) goto label22; + XMLVM_SOURCE_POSITION("Inet6Address.java", 112) + _r4.i = 0; + label22:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 114) + _r0.o = __NEW_java_net_Inet6Address(); + XMLVM_CHECK_NPE(0) + java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String_int(_r0.o, _r3.o, _r2.o, _r4.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_Inet6Address_getByAddress___java_lang_String_byte_1ARRAY_java_net_NetworkInterface(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_net_Inet6Address) + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_getByAddress___java_lang_String_byte_1ARRAY_java_net_NetworkInterface] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "getByAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r9.o = n1; + _r10.o = n2; + _r11.o = n3; + _r8.i = 1; + XMLVM_SOURCE_POSITION("Inet6Address.java", 138) + _r6.i = 0; + _r1.o = java_net_Inet6Address_getByAddress___java_lang_String_byte_1ARRAY_int(_r9.o, _r10.o, _r6.i); + if (_r11.o != JAVA_NULL) goto label9; + label8:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 141) + XMLVM_SOURCE_POSITION("Inet6Address.java", 169) + XMLVM_EXIT_METHOD() + return _r1.o; + label9:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 147) + + + // Red class access removed: java.net.NetworkInterface::getInetAddresses + XMLVM_RED_CLASS_DEPENDENCY(); + label13:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 148) + XMLVM_CHECK_NPE(2) + _r6.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r2.o); + if (_r6.i == 0) goto label60; + XMLVM_SOURCE_POSITION("Inet6Address.java", 149) + XMLVM_CHECK_NPE(2) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r2.o); + _r3.o = _r3.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 150) + XMLVM_CHECK_NPE(3) + _r6.o = java_net_InetAddress_getAddress__(_r3.o); + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r7.i = 16; + if (_r6.i != _r7.i) goto label13; + XMLVM_SOURCE_POSITION("Inet6Address.java", 151) + _r0 = _r3; + _r0.o = _r0.o; + _r5 = _r0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 152) + XMLVM_CHECK_NPE(5) + _r4.i = java_net_Inet6Address_compareLocalType___java_net_Inet6Address(_r5.o, _r1.o); + if (_r4.i == 0) goto label13; + XMLVM_SOURCE_POSITION("Inet6Address.java", 153) + XMLVM_SOURCE_POSITION("Inet6Address.java", 154) + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_set_ = _r8.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 155) + XMLVM_CHECK_NPE(5) + _r6.i = ((java_net_Inet6Address*) _r5.o)->fields.java_net_Inet6Address.scope_id_; + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_ = _r6.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 156) + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_ifname_set_ = _r8.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 157) + + + // Red class access removed: java.net.NetworkInterface::getName + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.ifname_ = _r6.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 158) + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scopedIf_ = _r11.o; + label60:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 165) + XMLVM_CHECK_NPE(1) + _r6.i = ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_set_; + if (_r6.i != 0) goto label8; + XMLVM_SOURCE_POSITION("Inet6Address.java", 167) + _r6.o = __NEW_java_net_UnknownHostException(); + // "luni.63" + _r7.o = xmlvm_create_java_string_from_pool(822); + _r7.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r7.o); + XMLVM_CHECK_NPE(6) + java_net_UnknownHostException___INIT____java_lang_String(_r6.o, _r7.o); + XMLVM_THROW_CUSTOM(_r6.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_compareLocalType___java_net_Inet6Address(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_compareLocalType___java_net_Inet6Address] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "compareLocalType", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + _r1.i = 1; + XMLVM_SOURCE_POSITION("Inet6Address.java", 182) + //java_net_Inet6Address_isSiteLocalAddress__[16] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_net_Inet6Address*) _r3.o)->tib->vtable[16])(_r3.o); + if (_r0.i == 0) goto label15; + //java_net_Inet6Address_isSiteLocalAddress__[16] + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_net_Inet6Address*) _r2.o)->tib->vtable[16])(_r2.o); + if (_r0.i == 0) goto label15; + _r0 = _r1; + label14:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 183) + XMLVM_SOURCE_POSITION("Inet6Address.java", 191) + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 185) + //java_net_Inet6Address_isLinkLocalAddress__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_net_Inet6Address*) _r3.o)->tib->vtable[8])(_r3.o); + if (_r0.i == 0) goto label29; + //java_net_Inet6Address_isLinkLocalAddress__[8] + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_net_Inet6Address*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r0.i == 0) goto label29; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Inet6Address.java", 186) + goto label14; + label29:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 188) + //java_net_Inet6Address_isSiteLocalAddress__[16] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_net_Inet6Address*) _r3.o)->tib->vtable[16])(_r3.o); + if (_r0.i != 0) goto label43; + //java_net_Inet6Address_isLinkLocalAddress__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_net_Inet6Address*) _r3.o)->tib->vtable[8])(_r3.o); + if (_r0.i != 0) goto label43; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Inet6Address.java", 189) + goto label14; + label43:; + _r0.i = 0; + goto label14; + //XMLVM_END_WRAPPER +} + +void java_net_Inet6Address___INIT____byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address___INIT____byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("Inet6Address.java", 203) + XMLVM_CHECK_NPE(1) + java_net_InetAddress___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 204) + XMLVM_CHECK_NPE(1) + ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.ipaddress_ = _r2.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 205) + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_ = _r3.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 206) + if (_r3.i == 0) goto label12; + XMLVM_SOURCE_POSITION("Inet6Address.java", 207) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_set_ = _r0.i; + label12:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 209) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isMulticastAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isMulticastAddress__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isMulticastAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 221) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_net_InetAddress*) _r3.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = -1; + if (_r0.i != _r1.i) goto label10; + _r0.i = 1; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0 = _r2; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isAnyLocalAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isAnyLocalAddress__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isAnyLocalAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Inet6Address.java", 233) + _r0.i = 0; + label1:; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i >= _r1.i) goto label17; + XMLVM_SOURCE_POSITION("Inet6Address.java", 234) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r1.i == 0) goto label14; + XMLVM_SOURCE_POSITION("Inet6Address.java", 235) + _r1.i = 0; + label13:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 238) + XMLVM_EXIT_METHOD() + return _r1.i; + label14:; + _r0.i = _r0.i + 1; + goto label1; + label17:; + _r1.i = 1; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isLoopbackAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isLoopbackAddress__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isLoopbackAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + _r4.i = 15; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 252) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_net_InetAddress*) _r5.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + if (_r1.i == _r3.i) goto label12; + _r1 = _r2; + label11:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 253) + XMLVM_SOURCE_POSITION("Inet6Address.java", 263) + XMLVM_EXIT_METHOD() + return _r1.i; + label12:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 257) + _r0.i = 0; + label13:; + if (_r0.i >= _r4.i) goto label26; + XMLVM_SOURCE_POSITION("Inet6Address.java", 258) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_net_InetAddress*) _r5.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r1.i == 0) goto label23; + _r1 = _r2; + XMLVM_SOURCE_POSITION("Inet6Address.java", 259) + goto label11; + label23:; + _r0.i = _r0.i + 1; + goto label13; + label26:; + _r1 = _r3; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isLinkLocalAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isLinkLocalAddress__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isLinkLocalAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 277) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = -2; + if (_r0.i != _r1.i) goto label22; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r0.i = _r0.i & 255; + _r0.i = ((JAVA_UINT) _r0.i) >> (0x1f & ((JAVA_UINT) 6)); + _r1.i = 2; + if (_r0.i != _r1.i) goto label22; + _r0 = _r3; + label21:; + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + _r0 = _r2; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isSiteLocalAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isSiteLocalAddress__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isSiteLocalAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 291) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = -2; + if (_r0.i != _r1.i) goto label22; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r0.i = _r0.i & 255; + _r0.i = ((JAVA_UINT) _r0.i) >> (0x1f & ((JAVA_UINT) 6)); + _r1.i = 3; + if (_r0.i != _r1.i) goto label22; + _r0 = _r3; + label21:; + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + _r0 = _r2; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isMCGlobal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isMCGlobal__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isMCGlobal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 305) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = -1; + if (_r0.i != _r1.i) goto label21; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r0.i = _r0.i & 15; + _r1.i = 14; + if (_r0.i != _r1.i) goto label21; + _r0 = _r3; + label20:; + XMLVM_EXIT_METHOD() + return _r0.i; + label21:; + _r0 = _r2; + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isMCNodeLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isMCNodeLocal__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isMCNodeLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 0; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Inet6Address.java", 320) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r1.i = -1; + if (_r0.i != _r1.i) goto label19; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r0.i = _r0.i & 15; + if (_r0.i != _r2.i) goto label19; + _r0 = _r2; + label18:; + XMLVM_EXIT_METHOD() + return _r0.i; + label19:; + _r0 = _r3; + goto label18; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isMCLinkLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isMCLinkLocal__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isMCLinkLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 335) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = -1; + if (_r0.i != _r1.i) goto label20; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r0.i = _r0.i & 15; + _r1.i = 2; + if (_r0.i != _r1.i) goto label20; + _r0 = _r3; + label19:; + XMLVM_EXIT_METHOD() + return _r0.i; + label20:; + _r0 = _r2; + goto label19; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isMCSiteLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isMCSiteLocal__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isMCSiteLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 350) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = -1; + if (_r0.i != _r1.i) goto label20; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r0.i = _r0.i & 15; + _r1.i = 5; + if (_r0.i != _r1.i) goto label20; + _r0 = _r3; + label19:; + XMLVM_EXIT_METHOD() + return _r0.i; + label20:; + _r0 = _r2; + goto label19; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isMCOrgLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isMCOrgLocal__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isMCOrgLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 365) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = -1; + if (_r0.i != _r1.i) goto label21; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r0.i = _r0.i & 15; + _r1.i = 8; + if (_r0.i != _r1.i) goto label21; + _r0 = _r3; + label20:; + XMLVM_EXIT_METHOD() + return _r0.i; + label21:; + _r0 = _r2; + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_Inet6Address_getHostAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_getHostAddress__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "getHostAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Inet6Address.java", 375) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.ipaddress_; + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::createIPAddrStringFromByteArray + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_net_Inet6Address_getScopeId__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_getScopeId__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "getScopeId", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Inet6Address.java", 386) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_set_; + if (_r0.i == 0) goto label7; + XMLVM_SOURCE_POSITION("Inet6Address.java", 387) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_id_; + label6:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 389) + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + _r0.i = 0; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_Inet6Address_getScopedInterface__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_getScopedInterface__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "getScopedInterface", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Inet6Address.java", 399) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scope_ifname_set_; + if (_r0.i == 0) goto label7; + XMLVM_SOURCE_POSITION("Inet6Address.java", 400) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_net_Inet6Address*) _r1.o)->fields.java_net_Inet6Address.scopedIf_; + label6:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 402) + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + _r0.o = JAVA_NULL; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_net_Inet6Address_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_hashCode__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Inet6Address.java", 413) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_; + _r1.i = 12; + _r0.i = java_net_InetAddress_bytesToInt___byte_1ARRAY_int(_r0.o, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Inet6Address.java", 428) + XMLVM_CHECK_NPE(1) + _r0.i = java_net_InetAddress_equals___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_Inet6Address_isIPv4CompatibleAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_isIPv4CompatibleAddress__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "isIPv4CompatibleAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Inet6Address.java", 440) + _r0.i = 0; + label1:; + _r1.i = 12; + if (_r0.i >= _r1.i) goto label16; + XMLVM_SOURCE_POSITION("Inet6Address.java", 441) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r1.i == 0) goto label13; + XMLVM_SOURCE_POSITION("Inet6Address.java", 442) + _r1.i = 0; + label12:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 445) + XMLVM_EXIT_METHOD() + return _r1.i; + label13:; + _r0.i = _r0.i + 1; + goto label1; + label16:; + _r1.i = 1; + goto label12; + //XMLVM_END_WRAPPER +} + +void java_net_Inet6Address_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + // "ipaddress" + _r2.o = xmlvm_create_java_string_from_pool(823); + XMLVM_SOURCE_POSITION("Inet6Address.java", 456) + + + // Red class access removed: java.io.ObjectOutputStream::putFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Inet6Address.java", 457) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_net_InetAddress*) _r3.o)->fields.java_net_InetAddress.ipaddress_; + if (_r1.o != JAVA_NULL) goto label48; + XMLVM_SOURCE_POSITION("Inet6Address.java", 458) + // "ipaddress" + _r1.o = xmlvm_create_java_string_from_pool(823); + _r1.o = JAVA_NULL; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + label16:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 463) + // "scope_id" + _r1.o = xmlvm_create_java_string_from_pool(824); + XMLVM_CHECK_NPE(3) + _r2.i = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.scope_id_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Inet6Address.java", 464) + // "scope_id_set" + _r1.o = xmlvm_create_java_string_from_pool(825); + XMLVM_CHECK_NPE(3) + _r2.i = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.scope_id_set_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Inet6Address.java", 465) + // "scope_ifname_set" + _r1.o = xmlvm_create_java_string_from_pool(826); + XMLVM_CHECK_NPE(3) + _r2.i = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.scope_ifname_set_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Inet6Address.java", 466) + // "ifname" + _r1.o = xmlvm_create_java_string_from_pool(827); + XMLVM_CHECK_NPE(3) + _r2.o = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.ifname_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Inet6Address.java", 467) + + + // Red class access removed: java.io.ObjectOutputStream::writeFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Inet6Address.java", 468) + XMLVM_EXIT_METHOD() + return; + label48:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 460) + // "ipaddress" + _r1.o = xmlvm_create_java_string_from_pool(823); + XMLVM_CHECK_NPE(3) + _r1.o = ((java_net_InetAddress*) _r3.o)->fields.java_net_InetAddress.ipaddress_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + goto label16; + //XMLVM_END_WRAPPER +} + +void java_net_Inet6Address_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.o = JAVA_NULL; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 472) + + + // Red class access removed: java.io.ObjectInputStream::readFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Inet6Address.java", 473) + // "ipaddress" + _r1.o = xmlvm_create_java_string_from_pool(823); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = _r1.o; + _r1.o = _r1.o; + XMLVM_CHECK_NPE(4) + ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_ = _r1.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 474) + // "scope_id" + _r1.o = xmlvm_create_java_string_from_pool(824); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.scope_id_ = _r1.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 475) + // "scope_id_set" + _r1.o = xmlvm_create_java_string_from_pool(825); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.scope_id_set_ = _r1.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 476) + // "ifname" + _r1.o = xmlvm_create_java_string_from_pool(827); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = _r1.o; + XMLVM_CHECK_NPE(4) + ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.ifname_ = _r1.o; + XMLVM_SOURCE_POSITION("Inet6Address.java", 477) + // "scope_ifname_set" + _r1.o = xmlvm_create_java_string_from_pool(826); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.scope_ifname_set_ = _r1.i; + XMLVM_SOURCE_POSITION("Inet6Address.java", 478) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.scope_ifname_set_; + if (_r1.i == 0) goto label68; + XMLVM_CHECK_NPE(4) + _r1.o = ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.ifname_; + if (_r1.o == JAVA_NULL) goto label68; + XMLVM_SOURCE_POSITION("Inet6Address.java", 479) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.ifname_; + + + // Red class access removed: java.net.NetworkInterface::getByName + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + ((java_net_Inet6Address*) _r4.o)->fields.java_net_Inet6Address.scopedIf_ = _r1.o; + label68:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 481) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_Inet6Address_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address_toString__] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + // "%" + _r2.o = xmlvm_create_java_string_from_pool(80); + XMLVM_SOURCE_POSITION("Inet6Address.java", 491) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.ifname_; + if (_r0.o == JAVA_NULL) goto label36; + XMLVM_SOURCE_POSITION("Inet6Address.java", 492) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_net_InetAddress_toString__(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "%" + _r1.o = xmlvm_create_java_string_from_pool(80); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + XMLVM_CHECK_NPE(3) + _r1.o = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.ifname_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + label35:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 497) + XMLVM_EXIT_METHOD() + return _r0.o; + label36:; + XMLVM_SOURCE_POSITION("Inet6Address.java", 494) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.scope_id_; + if (_r0.i == 0) goto label70; + XMLVM_SOURCE_POSITION("Inet6Address.java", 495) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_CHECK_NPE(3) + _r1.o = java_net_InetAddress_toString__(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "%" + _r1.o = xmlvm_create_java_string_from_pool(80); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + XMLVM_CHECK_NPE(3) + _r1.i = ((java_net_Inet6Address*) _r3.o)->fields.java_net_Inet6Address.scope_id_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___int(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label35; + label70:; + XMLVM_CHECK_NPE(3) + _r0.o = java_net_InetAddress_toString__(_r3.o); + goto label35; + //XMLVM_END_WRAPPER +} + +void java_net_Inet6Address___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_net_Inet6Address___CLINIT___] + XMLVM_ENTER_METHOD("java.net.Inet6Address", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.i = 16; + _r4.i = 0; + XMLVM_SOURCE_POSITION("Inet6Address.java", 36) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r1.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_BYTE[]){0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }); + java_net_Inet6Address_PUT_any_bytes( _r0.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 39) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r1.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_BYTE[]){0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, }); + java_net_Inet6Address_PUT_localhost_bytes( _r0.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 42) + _r0.o = __NEW_java_net_Inet6Address(); + _r1.o = java_net_Inet6Address_GET_any_bytes(); + XMLVM_CHECK_NPE(0) + java_net_Inet6Address___INIT____byte_1ARRAY(_r0.o, _r1.o); + java_net_Inet6Address_PUT_ANY( _r0.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 44) + _r0.o = __NEW_java_net_Inet6Address(); + _r1.o = java_net_Inet6Address_GET_localhost_bytes(); + // "localhost" + _r2.o = xmlvm_create_java_string_from_pool(71); + XMLVM_CHECK_NPE(0) + java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String(_r0.o, _r1.o, _r2.o); + java_net_Inet6Address_PUT_LOOPBACK( _r0.o); + XMLVM_SOURCE_POSITION("Inet6Address.java", 448) + _r0.i = 5; + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_io_ObjectStreamField, _r0.i); + _r1.o = __NEW_java_io_ObjectStreamField(); + // "ipaddress" + _r2.o = xmlvm_create_java_string_from_pool(823); + XMLVM_CLASS_INIT(byte) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r4.i); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[3])(_r3.o); + XMLVM_CHECK_NPE(1) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r1.o; + _r1.i = 1; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "scope_id" + _r3.o = xmlvm_create_java_string_from_pool(824); + _r4.o = java_lang_Integer_GET_TYPE(); + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 2; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "scope_id_set" + _r3.o = xmlvm_create_java_string_from_pool(825); + _r4.o = java_lang_Boolean_GET_TYPE(); + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 3; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "scope_ifname_set" + _r3.o = xmlvm_create_java_string_from_pool(826); + _r4.o = java_lang_Boolean_GET_TYPE(); + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 4; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "ifname" + _r3.o = xmlvm_create_java_string_from_pool(827); + XMLVM_CLASS_INIT(java_lang_String) + _r4.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + java_net_Inet6Address_PUT_serialPersistentFields( _r0.o); + XMLVM_EXIT_METHOD() + return; + label106:; + label118:; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_net_Inet6Address.h b/tests/nbody-java/java_net_Inet6Address.h new file mode 100644 index 0000000000000..0361995088f35 --- /dev/null +++ b/tests/nbody-java/java_net_Inet6Address.h @@ -0,0 +1,162 @@ +#ifndef __JAVA_NET_INET6ADDRESS__ +#define __JAVA_NET_INET6ADDRESS__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_net_Inet6Address 0 +// Implemented interfaces: +// Super Class: +#include "java_net_InetAddress.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_ObjectStreamField +#define XMLVM_FORWARD_DECL_java_io_ObjectStreamField +XMLVM_FORWARD_DECL(java_io_ObjectStreamField) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Boolean +#define XMLVM_FORWARD_DECL_java_lang_Boolean +XMLVM_FORWARD_DECL(java_lang_Boolean) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_net_UnknownHostException +#define XMLVM_FORWARD_DECL_java_net_UnknownHostException +XMLVM_FORWARD_DECL(java_net_UnknownHostException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.net.Inet6Address +XMLVM_DEFINE_CLASS(java_net_Inet6Address, 17, XMLVM_ITABLE_SIZE_java_net_Inet6Address) + +extern JAVA_OBJECT __CLASS_java_net_Inet6Address; +extern JAVA_OBJECT __CLASS_java_net_Inet6Address_1ARRAY; +extern JAVA_OBJECT __CLASS_java_net_Inet6Address_2ARRAY; +extern JAVA_OBJECT __CLASS_java_net_Inet6Address_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_net_Inet6Address +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_net_Inet6Address \ + __INSTANCE_FIELDS_java_net_InetAddress; \ + struct { \ + JAVA_INT scope_id_; \ + JAVA_BOOLEAN scope_id_set_; \ + JAVA_BOOLEAN scope_ifname_set_; \ + JAVA_OBJECT ifname_; \ + JAVA_OBJECT scopedIf_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_net_Inet6Address \ + } java_net_Inet6Address + +struct java_net_Inet6Address { + __TIB_DEFINITION_java_net_Inet6Address* tib; + struct { + __INSTANCE_FIELDS_java_net_Inet6Address; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_net_Inet6Address +#define XMLVM_FORWARD_DECL_java_net_Inet6Address +typedef struct java_net_Inet6Address java_net_Inet6Address; +#endif + +#define XMLVM_VTABLE_SIZE_java_net_Inet6Address 17 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isMulticastAddress__ 15 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isAnyLocalAddress__ 7 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isLoopbackAddress__ 9 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isLinkLocalAddress__ 8 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isSiteLocalAddress__ 16 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isMCGlobal__ 10 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isMCNodeLocal__ 12 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isMCLinkLocal__ 11 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isMCSiteLocal__ 14 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_isMCOrgLocal__ 13 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_getHostAddress__ 6 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_net_Inet6Address_toString__ 5 + +void __INIT_java_net_Inet6Address(); +void __INIT_IMPL_java_net_Inet6Address(); +void __DELETE_java_net_Inet6Address(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_net_Inet6Address(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_net_Inet6Address(); +JAVA_OBJECT __NEW_INSTANCE_java_net_Inet6Address(); +JAVA_LONG java_net_Inet6Address_GET_serialVersionUID(); +void java_net_Inet6Address_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_net_Inet6Address_GET_any_bytes(); +void java_net_Inet6Address_PUT_any_bytes(JAVA_OBJECT v); +JAVA_OBJECT java_net_Inet6Address_GET_localhost_bytes(); +void java_net_Inet6Address_PUT_localhost_bytes(JAVA_OBJECT v); +JAVA_OBJECT java_net_Inet6Address_GET_ANY(); +void java_net_Inet6Address_PUT_ANY(JAVA_OBJECT v); +JAVA_OBJECT java_net_Inet6Address_GET_LOOPBACK(); +void java_net_Inet6Address_PUT_LOOPBACK(JAVA_OBJECT v); +JAVA_OBJECT java_net_Inet6Address_GET_serialPersistentFields(); +void java_net_Inet6Address_PUT_serialPersistentFields(JAVA_OBJECT v); +void java_net_Inet6Address___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3); +JAVA_OBJECT java_net_Inet6Address_getByAddress___java_lang_String_byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3); +JAVA_OBJECT java_net_Inet6Address_getByAddress___java_lang_String_byte_1ARRAY_java_net_NetworkInterface(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_BOOLEAN java_net_Inet6Address_compareLocalType___java_net_Inet6Address(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_net_Inet6Address___INIT____byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 15 +JAVA_BOOLEAN java_net_Inet6Address_isMulticastAddress__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_net_Inet6Address_isAnyLocalAddress__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_BOOLEAN java_net_Inet6Address_isLoopbackAddress__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_BOOLEAN java_net_Inet6Address_isLinkLocalAddress__(JAVA_OBJECT me); +// Vtable index: 16 +JAVA_BOOLEAN java_net_Inet6Address_isSiteLocalAddress__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_net_Inet6Address_isMCGlobal__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_BOOLEAN java_net_Inet6Address_isMCNodeLocal__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_BOOLEAN java_net_Inet6Address_isMCLinkLocal__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_BOOLEAN java_net_Inet6Address_isMCSiteLocal__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_BOOLEAN java_net_Inet6Address_isMCOrgLocal__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT java_net_Inet6Address_getHostAddress__(JAVA_OBJECT me); +JAVA_INT java_net_Inet6Address_getScopeId__(JAVA_OBJECT me); +JAVA_OBJECT java_net_Inet6Address_getScopedInterface__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_net_Inet6Address_hashCode__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_net_Inet6Address_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_net_Inet6Address_isIPv4CompatibleAddress__(JAVA_OBJECT me); +void java_net_Inet6Address_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_net_Inet6Address_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT java_net_Inet6Address_toString__(JAVA_OBJECT me); +void java_net_Inet6Address___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_net_InetAddress.c b/tests/nbody-java/java_net_InetAddress.c new file mode 100644 index 0000000000000..d26b9d52138d4 --- /dev/null +++ b/tests/nbody-java/java_net_InetAddress.c @@ -0,0 +1,3509 @@ +#include "xmlvm.h" +#include "java_io_FileDescriptor.h" +#include "java_io_IOException.h" +#include "java_io_ObjectStreamField.h" +#include "java_lang_Class.h" +#include "java_lang_Exception.h" +#include "java_lang_Integer.h" +#include "java_lang_Long.h" +#include "java_lang_SecurityManager.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_lang_Throwable.h" +#include "java_net_Inet6Address.h" +#include "java_net_UnknownHostException.h" +#include "java_security_AccessController.h" +#include "java_util_ArrayList.h" +#include "java_util_Enumeration.h" +#include "java_util_StringTokenizer.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" +#include "org_apache_harmony_luni_platform_INetworkSystem.h" +#include "org_apache_harmony_luni_util_PriviAction.h" + +#include "java_net_InetAddress.h" + +#define XMLVM_CURRENT_CLASS_NAME InetAddress +#define XMLVM_CURRENT_PKG_CLASS_NAME java_net_InetAddress + +__TIB_DEFINITION_java_net_InetAddress __TIB_java_net_InetAddress = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_net_InetAddress, // classInitializer + "java.net.InetAddress", // className + "java.net", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_net_InetAddress), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_net_InetAddress; +JAVA_OBJECT __CLASS_java_net_InetAddress_1ARRAY; +JAVA_OBJECT __CLASS_java_net_InetAddress_2ARRAY; +JAVA_OBJECT __CLASS_java_net_InetAddress_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_net_InetAddress_any_bytes; +static JAVA_OBJECT _STATIC_java_net_InetAddress_localhost_bytes; +static JAVA_OBJECT _STATIC_java_net_InetAddress_ANY; +static JAVA_OBJECT _STATIC_java_net_InetAddress_NETIMPL; +static JAVA_OBJECT _STATIC_java_net_InetAddress_LOOPBACK; +static JAVA_OBJECT _STATIC_java_net_InetAddress_ERRMSG_CONNECTION_REFUSED; +static JAVA_LONG _STATIC_java_net_InetAddress_serialVersionUID; +static JAVA_OBJECT _STATIC_java_net_InetAddress_serialPersistentFields; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_net_InetAddress() +{ + staticInitializerLock(&__TIB_java_net_InetAddress); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_net_InetAddress.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_net_InetAddress.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_net_InetAddress); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_net_InetAddress.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_net_InetAddress.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_net_InetAddress.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.net.InetAddress") + __INIT_IMPL_java_net_InetAddress(); + } +} + +void __INIT_IMPL_java_net_InetAddress() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_net_InetAddress.newInstanceFunc = __NEW_INSTANCE_java_net_InetAddress; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_net_InetAddress.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_net_InetAddress.vtable[1] = (VTABLE_PTR) &java_net_InetAddress_equals___java_lang_Object; + __TIB_java_net_InetAddress.vtable[6] = (VTABLE_PTR) &java_net_InetAddress_getHostAddress__; + __TIB_java_net_InetAddress.vtable[4] = (VTABLE_PTR) &java_net_InetAddress_hashCode__; + __TIB_java_net_InetAddress.vtable[15] = (VTABLE_PTR) &java_net_InetAddress_isMulticastAddress__; + __TIB_java_net_InetAddress.vtable[5] = (VTABLE_PTR) &java_net_InetAddress_toString__; + __TIB_java_net_InetAddress.vtable[9] = (VTABLE_PTR) &java_net_InetAddress_isLoopbackAddress__; + __TIB_java_net_InetAddress.vtable[8] = (VTABLE_PTR) &java_net_InetAddress_isLinkLocalAddress__; + __TIB_java_net_InetAddress.vtable[16] = (VTABLE_PTR) &java_net_InetAddress_isSiteLocalAddress__; + __TIB_java_net_InetAddress.vtable[10] = (VTABLE_PTR) &java_net_InetAddress_isMCGlobal__; + __TIB_java_net_InetAddress.vtable[12] = (VTABLE_PTR) &java_net_InetAddress_isMCNodeLocal__; + __TIB_java_net_InetAddress.vtable[11] = (VTABLE_PTR) &java_net_InetAddress_isMCLinkLocal__; + __TIB_java_net_InetAddress.vtable[14] = (VTABLE_PTR) &java_net_InetAddress_isMCSiteLocal__; + __TIB_java_net_InetAddress.vtable[13] = (VTABLE_PTR) &java_net_InetAddress_isMCOrgLocal__; + __TIB_java_net_InetAddress.vtable[7] = (VTABLE_PTR) &java_net_InetAddress_isAnyLocalAddress__; + // Initialize interface information + __TIB_java_net_InetAddress.numImplementedInterfaces = 1; + __TIB_java_net_InetAddress.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_net_InetAddress.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_net_InetAddress.itableBegin = &__TIB_java_net_InetAddress.itable[0]; + + _STATIC_java_net_InetAddress_any_bytes = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_net_InetAddress_localhost_bytes = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_java_net_InetAddress_ANY = (java_net_InetAddress*) JAVA_NULL; + _STATIC_java_net_InetAddress_NETIMPL = (org_apache_harmony_luni_platform_INetworkSystem*) JAVA_NULL; + _STATIC_java_net_InetAddress_LOOPBACK = (java_net_InetAddress*) JAVA_NULL; + _STATIC_java_net_InetAddress_ERRMSG_CONNECTION_REFUSED = (java_lang_String*) xmlvm_create_java_string_from_pool(69); + _STATIC_java_net_InetAddress_serialVersionUID = 3286316764910316507; + _STATIC_java_net_InetAddress_serialPersistentFields = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_net_InetAddress.declaredFields = &__field_reflection_data[0]; + __TIB_java_net_InetAddress.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_net_InetAddress.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_net_InetAddress.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_net_InetAddress.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_net_InetAddress.methodDispatcherFunc = method_dispatcher; + __TIB_java_net_InetAddress.declaredMethods = &__method_reflection_data[0]; + __TIB_java_net_InetAddress.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_net_InetAddress = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_net_InetAddress); + __TIB_java_net_InetAddress.clazz = __CLASS_java_net_InetAddress; + __TIB_java_net_InetAddress.baseType = JAVA_NULL; + __CLASS_java_net_InetAddress_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_InetAddress); + __CLASS_java_net_InetAddress_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_InetAddress_1ARRAY); + __CLASS_java_net_InetAddress_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_InetAddress_2ARRAY); + java_net_InetAddress___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_net_InetAddress] + //XMLVM_END_WRAPPER + + __TIB_java_net_InetAddress.classInitialized = 1; +} + +void __DELETE_java_net_InetAddress(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_net_InetAddress] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_net_InetAddress(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_net_InetAddress*) me)->fields.java_net_InetAddress.hostName_ = (java_lang_String*) JAVA_NULL; + ((java_net_InetAddress*) me)->fields.java_net_InetAddress.waitReachable_ = (java_lang_Object*) JAVA_NULL; + ((java_net_InetAddress*) me)->fields.java_net_InetAddress.reached_ = 0; + ((java_net_InetAddress*) me)->fields.java_net_InetAddress.addrCount_ = 0; + ((java_net_InetAddress*) me)->fields.java_net_InetAddress.family_ = 0; + ((java_net_InetAddress*) me)->fields.java_net_InetAddress.ipaddress_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_net_InetAddress] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_net_InetAddress() +{ XMLVM_CLASS_INIT(java_net_InetAddress) +java_net_InetAddress* me = (java_net_InetAddress*) XMLVM_MALLOC(sizeof(java_net_InetAddress)); + me->tib = &__TIB_java_net_InetAddress; + __INIT_INSTANCE_MEMBERS_java_net_InetAddress(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_net_InetAddress] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_net_InetAddress() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_net_InetAddress(); + java_net_InetAddress___INIT___(me); + return me; +} + +JAVA_OBJECT java_net_InetAddress_GET_any_bytes() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_any_bytes; +} + +void java_net_InetAddress_PUT_any_bytes(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_any_bytes = v; +} + +JAVA_OBJECT java_net_InetAddress_GET_localhost_bytes() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_localhost_bytes; +} + +void java_net_InetAddress_PUT_localhost_bytes(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_localhost_bytes = v; +} + +JAVA_OBJECT java_net_InetAddress_GET_ANY() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_ANY; +} + +void java_net_InetAddress_PUT_ANY(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_ANY = v; +} + +JAVA_OBJECT java_net_InetAddress_GET_NETIMPL() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_NETIMPL; +} + +void java_net_InetAddress_PUT_NETIMPL(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_NETIMPL = v; +} + +JAVA_OBJECT java_net_InetAddress_GET_LOOPBACK() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_LOOPBACK; +} + +void java_net_InetAddress_PUT_LOOPBACK(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_LOOPBACK = v; +} + +JAVA_OBJECT java_net_InetAddress_GET_ERRMSG_CONNECTION_REFUSED() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_ERRMSG_CONNECTION_REFUSED; +} + +void java_net_InetAddress_PUT_ERRMSG_CONNECTION_REFUSED(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_ERRMSG_CONNECTION_REFUSED = v; +} + +JAVA_LONG java_net_InetAddress_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_serialVersionUID; +} + +void java_net_InetAddress_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_serialVersionUID = v; +} + +JAVA_OBJECT java_net_InetAddress_GET_serialPersistentFields() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + return _STATIC_java_net_InetAddress_serialPersistentFields; +} + +void java_net_InetAddress_PUT_serialPersistentFields(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) +_STATIC_java_net_InetAddress_serialPersistentFields = v; +} + +//XMLVM_NATIVE[void java_net_InetAddress_oneTimeInitialization___boolean(JAVA_BOOLEAN n1)] + +void java_net_InetAddress___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress___INIT___] + XMLVM_ENTER_METHOD("java.net.InetAddress", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 88) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 67) + + + // Red class access removed: java.net.InetAddress$WaitReachable::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: java.net.InetAddress$WaitReachable:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.waitReachable_ = _r0.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 73) + _r0.i = 2; + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.family_ = _r0.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 89) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_InetAddress___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress___INIT____byte_1ARRAY] + XMLVM_ENTER_METHOD("java.net.InetAddress", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 99) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 67) + + + // Red class access removed: java.net.InetAddress$WaitReachable::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: java.net.InetAddress$WaitReachable:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.waitReachable_ = _r0.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 73) + _r0.i = 2; + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.family_ = _r0.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 100) + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_ = _r3.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 101) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_InetAddress___INIT____byte_1ARRAY_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress___INIT____byte_1ARRAY_java_lang_String] + XMLVM_ENTER_METHOD("java.net.InetAddress", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("InetAddress.java", 111) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 67) + + + // Red class access removed: java.net.InetAddress$WaitReachable::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = JAVA_NULL; + + + // Red class access removed: java.net.InetAddress$WaitReachable:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.waitReachable_ = _r0.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 73) + _r0.i = 2; + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.family_ = _r0.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 112) + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_ = _r3.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 113) + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.hostName_ = _r4.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 114) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_cacheElement__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_cacheElement__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "cacheElement", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 117) + + + // Red class access removed: java.net.InetAddress$CacheElement::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.InetAddress$CacheElement:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.net.InetAddress", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 131) + if (_r6.o != JAVA_NULL) goto label5; + _r2 = _r4; + label4:; + XMLVM_SOURCE_POSITION("InetAddress.java", 132) + XMLVM_SOURCE_POSITION("InetAddress.java", 145) + XMLVM_EXIT_METHOD() + return _r2.i; + label5:; + XMLVM_SOURCE_POSITION("InetAddress.java", 134) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r6.o)->tib->vtable[3])(_r6.o); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(5) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[3])(_r5.o); + if (_r2.o == _r3.o) goto label17; + _r2 = _r4; + XMLVM_SOURCE_POSITION("InetAddress.java", 135) + goto label4; + label17:; + XMLVM_SOURCE_POSITION("InetAddress.java", 139) + _r6.o = _r6.o; + XMLVM_CHECK_NPE(6) + _r1.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r0.i = 0; + label22:; + XMLVM_SOURCE_POSITION("InetAddress.java", 140) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i >= _r2.i) goto label38; + XMLVM_SOURCE_POSITION("InetAddress.java", 141) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(5) + _r3.o = ((java_net_InetAddress*) _r5.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r2.i == _r3.i) goto label35; + _r2 = _r4; + XMLVM_SOURCE_POSITION("InetAddress.java", 142) + goto label4; + label35:; + _r0.i = _r0.i + 1; + goto label22; + label38:; + _r2.i = 1; + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getAddress__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 156) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.ipaddress_; + //byte_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->tib->vtable[0])(_r0.o); + _r1.o = _r1.o; + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getAllByName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getAllByName___java_lang_String] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getAllByName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r10.o = n1; + _r9.i = 1; + _r8.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 175) + if (_r10.o == JAVA_NULL) goto label10; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(10) + _r6.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r10.o)->tib->vtable[8])(_r10.o); + if (_r6.i != 0) goto label26; + label10:; + XMLVM_SOURCE_POSITION("InetAddress.java", 176) + XMLVM_CLASS_INIT(java_net_InetAddress) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_java_net_InetAddress, _r9.i); + _r7.i = java_net_InetAddress_preferIPv6Addresses__(); + if (_r7.i == 0) goto label23; + _r7.o = java_net_Inet6Address_GET_LOOPBACK(); + label20:; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r7.o; + label22:; + XMLVM_SOURCE_POSITION("InetAddress.java", 234) + XMLVM_EXIT_METHOD() + return _r6.o; + label23:; + _r7.o = java_net_InetAddress_GET_LOOPBACK(); + goto label20; + label26:; + XMLVM_SOURCE_POSITION("InetAddress.java", 180) + _r6.i = java_net_InetAddress_isHostName___java_lang_String(_r10.o); + if (_r6.i == 0) goto label148; + XMLVM_SOURCE_POSITION("InetAddress.java", 181) + _r5.o = java_lang_System_getSecurityManager__(); + if (_r5.o == JAVA_NULL) goto label42; + XMLVM_SOURCE_POSITION("InetAddress.java", 182) + XMLVM_SOURCE_POSITION("InetAddress.java", 183) + _r6.i = -1; + XMLVM_CHECK_NPE(5) + java_lang_SecurityManager_checkConnect___java_lang_String_int(_r5.o, _r10.o, _r6.i); + label42:; + XMLVM_SOURCE_POSITION("InetAddress.java", 185) + + + // Red class access removed: java.net.Socket::preferIPv4Stack + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.i == 0) goto label53; + XMLVM_SOURCE_POSITION("InetAddress.java", 186) + _r6.o = java_net_InetAddress_getAliasesByNameImpl___java_lang_String(_r10.o); + goto label22; + label53:; + XMLVM_SOURCE_POSITION("InetAddress.java", 191) + _r4.o = java_net_InetAddress_getAliasesByNameImpl___java_lang_String(_r10.o); + _r3.o = JAVA_NULL; + if (_r4.o == JAVA_NULL) goto label146; + XMLVM_SOURCE_POSITION("InetAddress.java", 193) + XMLVM_SOURCE_POSITION("InetAddress.java", 194) + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + XMLVM_CLASS_INIT(java_net_InetAddress) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_net_InetAddress, _r6.i); + _r0.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 196) + _r6.i = java_net_InetAddress_preferIPv6Addresses__(); + if (_r6.i == 0) goto label108; + XMLVM_SOURCE_POSITION("InetAddress.java", 197) + _r2.i = 0; + label71:; + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r2.i >= _r6.i) goto label89; + XMLVM_SOURCE_POSITION("InetAddress.java", 198) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CLASS_INIT(java_net_Inet6Address) + _r6.i = XMLVM_ISA(_r6.o, __CLASS_java_net_Inet6Address); + if (_r6.i == 0) goto label86; + XMLVM_SOURCE_POSITION("InetAddress.java", 199) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r6.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 200) + _r0.i = _r0.i + 1; + label86:; + _r2.i = _r2.i + 1; + goto label71; + label89:; + XMLVM_SOURCE_POSITION("InetAddress.java", 203) + _r2.i = 0; + label90:; + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r2.i >= _r6.i) goto label146; + XMLVM_SOURCE_POSITION("InetAddress.java", 204) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + + + // Red class access removed: java.net.Inet4Address::instance-of + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.i == 0) goto label105; + XMLVM_SOURCE_POSITION("InetAddress.java", 205) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r6.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 206) + _r0.i = _r0.i + 1; + label105:; + _r2.i = _r2.i + 1; + goto label90; + label108:; + XMLVM_SOURCE_POSITION("InetAddress.java", 210) + _r2.i = 0; + label109:; + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r2.i >= _r6.i) goto label127; + XMLVM_SOURCE_POSITION("InetAddress.java", 211) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + + + // Red class access removed: java.net.Inet4Address::instance-of + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.i == 0) goto label124; + XMLVM_SOURCE_POSITION("InetAddress.java", 212) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r6.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 213) + _r0.i = _r0.i + 1; + label124:; + _r2.i = _r2.i + 1; + goto label109; + label127:; + XMLVM_SOURCE_POSITION("InetAddress.java", 216) + _r2.i = 0; + label128:; + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r2.i >= _r6.i) goto label146; + XMLVM_SOURCE_POSITION("InetAddress.java", 217) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CLASS_INIT(java_net_Inet6Address) + _r6.i = XMLVM_ISA(_r6.o, __CLASS_java_net_Inet6Address); + if (_r6.i == 0) goto label143; + XMLVM_SOURCE_POSITION("InetAddress.java", 218) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r6.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 219) + _r0.i = _r0.i + 1; + label143:; + _r2.i = _r2.i + 1; + goto label128; + label146:; + _r6 = _r3; + XMLVM_SOURCE_POSITION("InetAddress.java", 224) + goto label22; + label148:; + XMLVM_SOURCE_POSITION("InetAddress.java", 227) + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::createByteArrayFromIPAddressString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 228) + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r7.i = 4; + if (_r6.i != _r7.i) goto label167; + XMLVM_SOURCE_POSITION("InetAddress.java", 229) + XMLVM_CLASS_INIT(java_net_InetAddress) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_java_net_InetAddress, _r9.i); + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r7.o; + goto label22; + label167:; + XMLVM_SOURCE_POSITION("InetAddress.java", 230) + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r7.i = 16; + if (_r6.i != _r7.i) goto label183; + XMLVM_SOURCE_POSITION("InetAddress.java", 231) + XMLVM_CLASS_INIT(java_net_InetAddress) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_java_net_InetAddress, _r9.i); + _r7.o = __NEW_java_net_Inet6Address(); + XMLVM_CHECK_NPE(7) + java_net_Inet6Address___INIT____byte_1ARRAY(_r7.o, _r1.o); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r7.o; + goto label22; + label183:; + XMLVM_CLASS_INIT(java_net_InetAddress) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_java_net_InetAddress, _r9.i); + _r7.o = __NEW_java_net_InetAddress(); + XMLVM_CHECK_NPE(7) + java_net_InetAddress___INIT____byte_1ARRAY(_r7.o, _r1.o); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r7.o; + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getByName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getByName___java_lang_String] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getByName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 252) + if (_r2.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r1.i != 0) goto label11; + label8:; + XMLVM_SOURCE_POSITION("InetAddress.java", 253) + _r1.o = java_net_InetAddress_GET_LOOPBACK(); + label10:; + XMLVM_SOURCE_POSITION("InetAddress.java", 267) + XMLVM_EXIT_METHOD() + return _r1.o; + label11:; + XMLVM_SOURCE_POSITION("InetAddress.java", 255) + // "0" + _r1.o = xmlvm_create_java_string_from_pool(70); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r1.o); + if (_r1.i == 0) goto label22; + XMLVM_SOURCE_POSITION("InetAddress.java", 256) + _r1.o = java_net_InetAddress_GET_ANY(); + goto label10; + label22:; + XMLVM_SOURCE_POSITION("InetAddress.java", 259) + _r1.i = java_net_InetAddress_isHostName___java_lang_String(_r2.o); + if (_r1.i == 0) goto label43; + XMLVM_SOURCE_POSITION("InetAddress.java", 260) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label38; + XMLVM_SOURCE_POSITION("InetAddress.java", 261) + XMLVM_SOURCE_POSITION("InetAddress.java", 262) + _r1.i = -1; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkConnect___java_lang_String_int(_r0.o, _r2.o, _r1.i); + label38:; + XMLVM_SOURCE_POSITION("InetAddress.java", 264) + _r1.o = java_net_InetAddress_lookupHostByName___java_lang_String(_r2.o); + goto label10; + label43:; + _r1.o = java_net_InetAddress_createHostNameFromIPAddress___java_lang_String(_r2.o); + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getHostAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getHostAddress__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getHostAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 277) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_; + _r1.i = 0; + _r0.i = java_net_InetAddress_bytesToInt___byte_1ARRAY_int(_r0.o, _r1.i); + _r0.o = java_net_InetAddress_inetNtoaImpl___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getHostName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getHostName__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getHostName", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r6.o = me; + _r5.i = 4; + XMLVM_TRY_BEGIN(w1175aaac24b1b3) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 289) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_; + if (_r3.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w1175aaac24b1b3->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1b3, sizeof(XMLVM_JMP_BUF)); goto label75; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 290) + _r0.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 291) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r3.i != _r5.i) { XMLVM_MEMCPY(curThread_w1175aaac24b1b3->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1b3, sizeof(XMLVM_JMP_BUF)); goto label27; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 292) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r4.i = 0; + _r0.i = java_net_InetAddress_bytesToInt___byte_1ARRAY_int(_r3.o, _r4.i); + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w1175aaac24b1b3->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1b3, sizeof(XMLVM_JMP_BUF)); goto label27; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 293) + XMLVM_SOURCE_POSITION("InetAddress.java", 294) + _r3.o = java_net_InetAddress_inetNtoaImpl___int(_r0.i); + XMLVM_CHECK_NPE(6) + ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_ = _r3.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac24b1b3) + XMLVM_CATCH_SPECIFIC(w1175aaac24b1b3,java_net_UnknownHostException,64) + XMLVM_CATCH_END(w1175aaac24b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac24b1b3) + label26:; + XMLVM_TRY_BEGIN(w1175aaac24b1b5) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 316) + XMLVM_MEMCPY(curThread_w1175aaac24b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r3.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac24b1b5) + XMLVM_CATCH_SPECIFIC(w1175aaac24b1b5,java_net_UnknownHostException,64) + XMLVM_CATCH_END(w1175aaac24b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac24b1b5) + label27:; + XMLVM_TRY_BEGIN(w1175aaac24b1b7) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 297) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r3.o = java_net_InetAddress_getHostByAddrImpl___byte_1ARRAY(_r3.o); + XMLVM_CHECK_NPE(3) + _r3.o = ((java_net_InetAddress*) _r3.o)->fields.java_net_InetAddress.hostName_; + XMLVM_CHECK_NPE(6) + ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_ = _r3.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 298) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_; + // "localhost" + _r4.o = xmlvm_create_java_string_from_pool(71); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[1])(_r3.o, _r4.o); + if (_r3.i == 0) { XMLVM_MEMCPY(curThread_w1175aaac24b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1b7, sizeof(XMLVM_JMP_BUF)); goto label75; }; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r3.i != _r5.i) { XMLVM_MEMCPY(curThread_w1175aaac24b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1b7, sizeof(XMLVM_JMP_BUF)); goto label75; }; + _r3.i = 2130706433; + if (_r0.i == _r3.i) { XMLVM_MEMCPY(curThread_w1175aaac24b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1b7, sizeof(XMLVM_JMP_BUF)); goto label75; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 300) + _r3.o = java_net_InetAddress_inetNtoaImpl___int(_r0.i); + XMLVM_CHECK_NPE(6) + ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_ = _r3.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac24b1b7) + XMLVM_CATCH_SPECIFIC(w1175aaac24b1b7,java_net_UnknownHostException,64) + XMLVM_CATCH_END(w1175aaac24b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac24b1b7) + goto label26; + label64:; + XMLVM_SOURCE_POSITION("InetAddress.java", 303) + java_lang_Thread* curThread_w1175aaac24b1c11 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w1175aaac24b1c11->fields.java_lang_Thread.xmlvmException_; + _r1 = _r3; + XMLVM_SOURCE_POSITION("InetAddress.java", 304) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::createIPAddrStringFromByteArray + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(6) + ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_ = _r3.o; + goto label26; + label75:; + XMLVM_SOURCE_POSITION("InetAddress.java", 307) + _r2.o = java_lang_System_getSecurityManager__(); + XMLVM_SOURCE_POSITION("InetAddress.java", 310) + if (_r2.o == JAVA_NULL) goto label95; + XMLVM_TRY_BEGIN(w1175aaac24b1c23) + // Begin try + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_; + _r3.i = java_net_InetAddress_isHostName___java_lang_String(_r3.o); + if (_r3.i == 0) { XMLVM_MEMCPY(curThread_w1175aaac24b1c23->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac24b1c23, sizeof(XMLVM_JMP_BUF)); goto label95; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 311) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_; + _r4.i = -1; + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkConnect___java_lang_String_int(_r2.o, _r3.o, _r4.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac24b1c23) + XMLVM_CATCH_END(w1175aaac24b1c23) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac24b1c23) + label95:; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.hostName_; + goto label26; + label98:; + XMLVM_SOURCE_POSITION("InetAddress.java", 313) + java_lang_Thread* curThread_w1175aaac24b1c29 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w1175aaac24b1c29->fields.java_lang_Thread.xmlvmException_; + _r1 = _r3; + XMLVM_SOURCE_POSITION("InetAddress.java", 314) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::createIPAddrStringFromByteArray + XMLVM_RED_CLASS_DEPENDENCY(); + goto label26; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getCanonicalHostName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getCanonicalHostName__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getCanonicalHostName", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 330) + _r0.i = 0; + XMLVM_TRY_BEGIN(w1175aaac25b1b4) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 331) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + _r5.i = 4; + if (_r4.i != _r5.i) { XMLVM_MEMCPY(curThread_w1175aaac25b1b4->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac25b1b4, sizeof(XMLVM_JMP_BUF)); goto label21; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 332) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r5.i = 0; + _r0.i = java_net_InetAddress_bytesToInt___byte_1ARRAY_int(_r4.o, _r5.i); + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w1175aaac25b1b4->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac25b1b4, sizeof(XMLVM_JMP_BUF)); goto label21; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 333) + XMLVM_SOURCE_POSITION("InetAddress.java", 334) + _r4.o = java_net_InetAddress_inetNtoaImpl___int(_r0.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac25b1b4) + XMLVM_CATCH_SPECIFIC(w1175aaac25b1b4,java_net_UnknownHostException,47) + XMLVM_CATCH_END(w1175aaac25b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac25b1b4) + label20:; + XMLVM_TRY_BEGIN(w1175aaac25b1b6) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 350) + XMLVM_MEMCPY(curThread_w1175aaac25b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac25b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r4.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac25b1b6) + XMLVM_CATCH_SPECIFIC(w1175aaac25b1b6,java_net_UnknownHostException,47) + XMLVM_CATCH_END(w1175aaac25b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac25b1b6) + label21:; + XMLVM_TRY_BEGIN(w1175aaac25b1b8) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 337) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + _r4.o = java_net_InetAddress_getHostByAddrImpl___byte_1ARRAY(_r4.o); + XMLVM_CHECK_NPE(4) + _r1.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.hostName_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac25b1b8) + XMLVM_CATCH_SPECIFIC(w1175aaac25b1b8,java_net_UnknownHostException,47) + XMLVM_CATCH_END(w1175aaac25b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac25b1b8) + XMLVM_SOURCE_POSITION("InetAddress.java", 341) + _r3.o = java_lang_System_getSecurityManager__(); + XMLVM_SOURCE_POSITION("InetAddress.java", 344) + if (_r3.o == JAVA_NULL) goto label45; + XMLVM_TRY_BEGIN(w1175aaac25b1c13) + // Begin try + _r4.i = java_net_InetAddress_isHostName___java_lang_String(_r1.o); + if (_r4.i == 0) { XMLVM_MEMCPY(curThread_w1175aaac25b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac25b1c13, sizeof(XMLVM_JMP_BUF)); goto label45; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 345) + _r4.i = -1; + XMLVM_CHECK_NPE(3) + java_lang_SecurityManager_checkConnect___java_lang_String_int(_r3.o, _r1.o, _r4.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac25b1c13) + XMLVM_CATCH_END(w1175aaac25b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac25b1c13) + label45:; + _r4 = _r1; + goto label20; + label47:; + XMLVM_SOURCE_POSITION("InetAddress.java", 338) + java_lang_Thread* curThread_w1175aaac25b1c19 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w1175aaac25b1c19->fields.java_lang_Thread.xmlvmException_; + _r2 = _r4; + XMLVM_SOURCE_POSITION("InetAddress.java", 339) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::createIPAddrStringFromByteArray + XMLVM_RED_CLASS_DEPENDENCY(); + goto label20; + label56:; + XMLVM_SOURCE_POSITION("InetAddress.java", 347) + java_lang_Thread* curThread_w1175aaac25b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r4.o = curThread_w1175aaac25b1c27->fields.java_lang_Thread.xmlvmException_; + _r2 = _r4; + XMLVM_SOURCE_POSITION("InetAddress.java", 348) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_net_InetAddress*) _r6.o)->fields.java_net_InetAddress.ipaddress_; + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::createIPAddrStringFromByteArray + XMLVM_RED_CLASS_DEPENDENCY(); + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getLocalHost__() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getLocalHost__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getLocalHost", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + XMLVM_SOURCE_POSITION("InetAddress.java", 363) + _r1.o = java_net_InetAddress_getHostNameImpl__(); + XMLVM_SOURCE_POSITION("InetAddress.java", 364) + _r2.o = java_lang_System_getSecurityManager__(); + XMLVM_SOURCE_POSITION("InetAddress.java", 366) + if (_r2.o == JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("InetAddress.java", 367) + _r3.i = -1; + XMLVM_TRY_BEGIN(w1175aaac26b1b9) + // Begin try + XMLVM_CHECK_NPE(2) + java_lang_SecurityManager_checkConnect___java_lang_String_int(_r2.o, _r1.o, _r3.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac26b1b9) + XMLVM_CATCH_END(w1175aaac26b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac26b1b9) + label14:; + XMLVM_SOURCE_POSITION("InetAddress.java", 372) + _r3.o = java_net_InetAddress_lookupHostByName___java_lang_String(_r1.o); + label18:; + XMLVM_EXIT_METHOD() + return _r3.o; + label19:; + XMLVM_SOURCE_POSITION("InetAddress.java", 369) + java_lang_Thread* curThread_w1175aaac26b1c17 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1175aaac26b1c17->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("InetAddress.java", 370) + _r3.o = java_net_InetAddress_GET_LOOPBACK(); + goto label18; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_net_InetAddress_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_hashCode__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 382) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.ipaddress_; + _r1.i = 0; + _r0.i = java_net_InetAddress_bytesToInt___byte_1ARRAY_int(_r0.o, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isMulticastAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isMulticastAddress__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isMulticastAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + _r2.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 392) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_net_InetAddress*) _r3.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r0.i = _r0.i & 255; + _r0.i = ((JAVA_UINT) _r0.i) >> (0x1f & ((JAVA_UINT) 4)); + _r1.i = 14; + if (_r0.i != _r1.i) goto label15; + _r0.i = 1; + label14:; + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + _r0 = _r2; + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_lookupHostByName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_lookupHostByName___java_lang_String] + XMLVM_ENTER_METHOD("java.net.InetAddress", "lookupHostByName", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + _r11.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 397) + XMLVM_CLASS_INIT(java_net_InetAddress) + _r6.o = __CLASS_java_net_InetAddress; + java_lang_Object_acquireLockRecursive__(_r6.o); + _r4.i = -1; + XMLVM_TRY_BEGIN(w1175aaac29b1b6) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 399) + _r7.o = __NEW_org_apache_harmony_luni_util_PriviAction(); + // "networkaddress.cache.ttl" + _r8.o = xmlvm_create_java_string_from_pool(72); + XMLVM_CHECK_NPE(7) + org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String(_r7.o, _r8.o); + _r5.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r7.o); + _r5.o = _r5.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1b6) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1b6,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1b6) + XMLVM_SOURCE_POSITION("InetAddress.java", 403) + if (_r5.o == JAVA_NULL) goto label27; + XMLVM_TRY_BEGIN(w1175aaac29b1b9) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 404) + _r7.o = java_lang_Integer_decode___java_lang_String(_r5.o); + //java_lang_Integer_intValue__[9] + XMLVM_CHECK_NPE(7) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Integer*) _r7.o)->tib->vtable[9])(_r7.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1b9) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1b9,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1b9) + label27:; + XMLVM_SOURCE_POSITION("InetAddress.java", 409) + _r2.o = JAVA_NULL; + if (_r4.i != 0) goto label41; + XMLVM_TRY_BEGIN(w1175aaac29b1c14) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 410) + XMLVM_SOURCE_POSITION("InetAddress.java", 411) + + + // Red class access removed: java.net.InetAddress$Cache::clear + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1c14) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c14,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1c14) + label33:; + XMLVM_TRY_BEGIN(w1175aaac29b1c16) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 421) + if (_r2.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w1175aaac29b1c16->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac29b1c16, sizeof(XMLVM_JMP_BUF)); goto label65; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 422) + + + // Red class access removed: java.net.InetAddress$CacheElement::inetAddress + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1c16) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c16,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1c16) + label39:; + XMLVM_SOURCE_POSITION("InetAddress.java", 444) + java_lang_Object_releaseLockRecursive__(_r6.o); + XMLVM_EXIT_METHOD() + return _r7.o; + label41:; + XMLVM_TRY_BEGIN(w1175aaac29b1c22) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 413) + + + // Red class access removed: java.net.InetAddress$Cache::get + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r2.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w1175aaac29b1c22->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac29b1c22, sizeof(XMLVM_JMP_BUF)); goto label33; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 414) + if (_r4.i <= 0) { XMLVM_MEMCPY(curThread_w1175aaac29b1c22->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac29b1c22, sizeof(XMLVM_JMP_BUF)); goto label33; }; + + + // Red class access removed: java.net.InetAddress$CacheElement,long::timeAdded + XMLVM_RED_CLASS_DEPENDENCY(); + _r9.i = _r4.i * 1000; + _r9.l = (JAVA_LONG) _r9.i; + _r7.l = _r7.l + _r9.l; + _r9.l = java_lang_System_currentTimeMillis__(); + _r7.i = _r7.l > _r9.l ? 1 : (_r7.l == _r9.l ? 0 : -1); + if (_r7.i >= 0) { XMLVM_MEMCPY(curThread_w1175aaac29b1c22->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac29b1c22, sizeof(XMLVM_JMP_BUF)); goto label33; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 418) + _r2.o = JAVA_NULL; + { XMLVM_MEMCPY(curThread_w1175aaac29b1c22->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac29b1c22, sizeof(XMLVM_JMP_BUF)); goto label33; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 428) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1c22) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c22,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1c22) + label65:; + XMLVM_TRY_BEGIN(w1175aaac29b1c24) + // Begin try + + + // Red class access removed: java.net.NegativeCache::getFailedMessage + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r3.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w1175aaac29b1c24->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac29b1c24, sizeof(XMLVM_JMP_BUF)); goto label80; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 429) + XMLVM_SOURCE_POSITION("InetAddress.java", 430) + _r7.o = __NEW_java_net_UnknownHostException(); + XMLVM_CHECK_NPE(7) + java_net_UnknownHostException___INIT____java_lang_String(_r7.o, _r11.o); + XMLVM_THROW_CUSTOM(_r7.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1c24) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c24,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1c24) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1c24) + label77:; + java_lang_Thread* curThread_w1175aaac29b1c26 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r7.o = curThread_w1175aaac29b1c26->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r6.o); + XMLVM_THROW_CUSTOM(_r7.o) + label80:; + XMLVM_TRY_BEGIN(w1175aaac29b1c30) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 435) + _r7.i = java_net_InetAddress_preferIPv6Addresses__(); + _r0.o = java_net_InetAddress_getHostByNameImpl___java_lang_String_boolean(_r11.o, _r7.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1c30) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c30,java_net_UnknownHostException,93) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c30,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1c30) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1c30) + XMLVM_TRY_BEGIN(w1175aaac29b1c31) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 443) + + + // Red class access removed: java.net.InetAddress$Cache::add + XMLVM_RED_CLASS_DEPENDENCY(); + _r7 = _r0; + { XMLVM_MEMCPY(curThread_w1175aaac29b1c31->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac29b1c31, sizeof(XMLVM_JMP_BUF)); goto label39; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 436) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1c31) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c31,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1c31) + label93:; + XMLVM_TRY_BEGIN(w1175aaac29b1c33) + // Begin try + java_lang_Thread* curThread_w1175aaac29b1c33aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r7.o = curThread_w1175aaac29b1c33aa->fields.java_lang_Thread.xmlvmException_; + _r1 = _r7; + XMLVM_SOURCE_POSITION("InetAddress.java", 438) + //java_net_UnknownHostException_getMessage__[7] + XMLVM_CHECK_NPE(1) + _r7.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_net_UnknownHostException*) _r1.o)->tib->vtable[7])(_r1.o); + + + // Red class access removed: java.net.NegativeCache::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 440) + _r7.o = __NEW_java_net_UnknownHostException(); + XMLVM_CHECK_NPE(7) + java_net_UnknownHostException___INIT____java_lang_String(_r7.o, _r11.o); + XMLVM_CHECK_NPE(7) + _r11.o = java_lang_Throwable_initCause___java_lang_Throwable(_r7.o, _r1.o); + _r11.o = _r11.o; + XMLVM_THROW_CUSTOM(_r11.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac29b1c33) + XMLVM_CATCH_SPECIFIC(w1175aaac29b1c33,java_lang_Object,77) + XMLVM_CATCH_END(w1175aaac29b1c33) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac29b1c33) + label114:; + XMLVM_SOURCE_POSITION("InetAddress.java", 406) + java_lang_Thread* curThread_w1175aaac29b1c36 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r7.o = curThread_w1175aaac29b1c36->fields.java_lang_Thread.xmlvmException_; + goto label27; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT java_net_InetAddress_getAliasesByNameImpl___java_lang_String(JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_net_InetAddress_getHostByAddrImpl___byte_1ARRAY(JAVA_OBJECT n1)] + +JAVA_INT java_net_InetAddress_inetAddr___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_inetAddr___java_lang_String] + XMLVM_ENTER_METHOD("java.net.InetAddress", "inetAddr", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 471) + // "255.255.255.255" + _r0.o = xmlvm_create_java_string_from_pool(73); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[1])(_r1.o, _r0.o); + if (_r0.i == 0) goto label10; + _r0.i = -1; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = java_net_InetAddress_inetAddrImpl___java_lang_String(_r1.o); + goto label9; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT java_net_InetAddress_inetAddrImpl___java_lang_String(JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_net_InetAddress_inetNtoaImpl___int(JAVA_INT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT java_net_InetAddress_getHostByNameImpl___java_lang_String_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[JAVA_OBJECT java_net_InetAddress_getHostNameImpl__()] + +JAVA_OBJECT java_net_InetAddress_getHostNameInternal___java_lang_String_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getHostNameInternal___java_lang_String_boolean] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getHostNameInternal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("InetAddress.java", 511) + if (_r2.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r1.i != 0) goto label15; + label8:; + XMLVM_SOURCE_POSITION("InetAddress.java", 512) + _r1.o = java_net_InetAddress_GET_LOOPBACK(); + //java_net_InetAddress_getHostAddress__[6] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_net_InetAddress*) _r1.o)->tib->vtable[6])(_r1.o); + label14:; + XMLVM_SOURCE_POSITION("InetAddress.java", 523) + XMLVM_EXIT_METHOD() + return _r1.o; + label15:; + XMLVM_SOURCE_POSITION("InetAddress.java", 514) + _r1.i = java_net_InetAddress_isHostName___java_lang_String(_r2.o); + if (_r1.i == 0) goto label42; + XMLVM_SOURCE_POSITION("InetAddress.java", 515) + if (_r3.i == 0) goto label33; + XMLVM_SOURCE_POSITION("InetAddress.java", 516) + _r0.o = java_lang_System_getSecurityManager__(); + if (_r0.o == JAVA_NULL) goto label33; + XMLVM_SOURCE_POSITION("InetAddress.java", 517) + XMLVM_SOURCE_POSITION("InetAddress.java", 518) + _r1.i = -1; + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkConnect___java_lang_String_int(_r0.o, _r2.o, _r1.i); + label33:; + XMLVM_SOURCE_POSITION("InetAddress.java", 521) + _r1.o = java_net_InetAddress_lookupHostByName___java_lang_String(_r2.o); + //java_net_InetAddress_getHostAddress__[6] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_net_InetAddress*) _r1.o)->tib->vtable[6])(_r1.o); + goto label14; + label42:; + _r1 = _r2; + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_toString__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 534) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.hostName_; + if (_r1.o != JAVA_NULL) goto label34; + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + label11:; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "/" + _r1.o = xmlvm_create_java_string_from_pool(54); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_net_InetAddress_getHostAddress__[6] + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_net_InetAddress*) _r2.o)->tib->vtable[6])(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label34:; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.hostName_; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isHostName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isHostName___java_lang_String] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isHostName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 627) + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::isValidIPV4Address + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i != 0) goto label14; + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::isValidIP6Address + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i != 0) goto label14; + _r0.i = 1; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + _r0.i = 0; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isLoopbackAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isLoopbackAddress__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isLoopbackAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 640) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isLinkLocalAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isLinkLocalAddress__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isLinkLocalAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 656) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isSiteLocalAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isSiteLocalAddress__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isSiteLocalAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 672) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isMCGlobal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isMCGlobal__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isMCGlobal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 690) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isMCNodeLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isMCNodeLocal__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isMCNodeLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 707) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isMCLinkLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isMCLinkLocal__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isMCLinkLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 724) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isMCSiteLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isMCSiteLocal__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isMCSiteLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 742) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isMCOrgLocal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isMCOrgLocal__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isMCOrgLocal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 760) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isAnyLocalAddress__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isAnyLocalAddress__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isAnyLocalAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 771) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isReachable___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isReachable___int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isReachable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 790) + _r0.o = JAVA_NULL; + _r1.i = 0; + XMLVM_CHECK_NPE(2) + _r0.i = java_net_InetAddress_isReachable___java_net_NetworkInterface_int_int(_r2.o, _r0.o, _r1.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isReachable___java_net_NetworkInterface_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isReachable___java_net_NetworkInterface_int_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isReachable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r3.o = me; + _r4.o = n1; + _r5.i = n2; + _r6.i = n3; + _r2.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("InetAddress.java", 815) + if (_r5.i < 0) goto label5; + if (_r6.i >= 0) goto label17; + label5:; + XMLVM_SOURCE_POSITION("InetAddress.java", 816) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.61" + _r2.o = xmlvm_create_java_string_from_pool(74); + _r2.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r2.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label17:; + XMLVM_SOURCE_POSITION("InetAddress.java", 818) + _r0.i = 0; + if (_r4.o != JAVA_NULL) goto label34; + XMLVM_SOURCE_POSITION("InetAddress.java", 819) + XMLVM_SOURCE_POSITION("InetAddress.java", 821) + _r1.o = java_net_InetAddress_GET_NETIMPL(); + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int])(_r1.o, _r3.o, _r2.o, _r5.i, _r6.i); + if (_r0.i != 0) goto label32; + XMLVM_SOURCE_POSITION("InetAddress.java", 822) + XMLVM_SOURCE_POSITION("InetAddress.java", 823) + XMLVM_CHECK_NPE(3) + _r0.i = java_net_InetAddress_isReachableByTCP___java_net_InetAddress_java_net_InetAddress_int(_r3.o, _r3.o, _r2.o, _r6.i); + label32:; + _r1 = _r0; + label33:; + XMLVM_SOURCE_POSITION("InetAddress.java", 838) + XMLVM_EXIT_METHOD() + return _r1.i; + label34:; + XMLVM_SOURCE_POSITION("InetAddress.java", 827) + + + // Red class access removed: java.net.NetworkInterface,java.net.InetAddress[]::addresses + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.o != JAVA_NULL) goto label40; + XMLVM_SOURCE_POSITION("InetAddress.java", 828) + _r1.i = 0; + goto label33; + label40:; + XMLVM_SOURCE_POSITION("InetAddress.java", 832) + XMLVM_CHECK_NPE(3) + _r0.i = java_net_InetAddress_isReachableByICMPUseMultiThread___java_net_NetworkInterface_int_int(_r3.o, _r4.o, _r5.i, _r6.i); + if (_r0.i != 0) goto label32; + XMLVM_SOURCE_POSITION("InetAddress.java", 833) + XMLVM_SOURCE_POSITION("InetAddress.java", 835) + XMLVM_CHECK_NPE(3) + _r0.i = java_net_InetAddress_isReachableByTCPUseMultiThread___java_net_NetworkInterface_int_int(_r3.o, _r4.o, _r5.i, _r6.i); + goto label32; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isReachableByMultiThread___java_net_NetworkInterface_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_BOOLEAN n4) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isReachableByMultiThread___java_net_NetworkInterface_int_int_boolean] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isReachableByMultiThread", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + volatile XMLVMElem _r12; + volatile XMLVMElem _r13; + volatile XMLVMElem _r14; + volatile XMLVMElem _r15; + _r11.o = me; + _r12.o = n1; + _r13.i = n2; + _r14.i = n3; + _r15.i = n4; + XMLVM_SOURCE_POSITION("InetAddress.java", 848) + + + // Red class access removed: java.net.NetworkInterface,java.net.InetAddress[]::addresses + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.o != JAVA_NULL) goto label6; + XMLVM_SOURCE_POSITION("InetAddress.java", 849) + _r0.i = 0; + label5:; + XMLVM_SOURCE_POSITION("InetAddress.java", 938) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("InetAddress.java", 851) + + + // Red class access removed: java.net.NetworkInterface::getInetAddresses + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 852) + XMLVM_CHECK_NPE(11) + ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.reached_ = _r0.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 853) + + + // Red class access removed: java.net.NetworkInterface,java.net.InetAddress[]::addresses + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(11) + ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.addrCount_ = _r0.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 854) + _r9.i = 0; + label19:; + XMLVM_SOURCE_POSITION("InetAddress.java", 855) + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r7.o); + if (_r0.i == 0) goto label112; + XMLVM_SOURCE_POSITION("InetAddress.java", 856) + XMLVM_CHECK_NPE(7) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r7.o); + _r3.o = _r3.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 859) + //java_net_InetAddress_isLoopbackAddress__[9] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_net_InetAddress*) _r3.o)->tib->vtable[9])(_r3.o); + if (_r0.i == 0) goto label98; + XMLVM_SOURCE_POSITION("InetAddress.java", 860) + + + // Red class access removed: java.net.NetworkInterface::getNetworkInterfaces + XMLVM_RED_CLASS_DEPENDENCY(); + label41:; + XMLVM_SOURCE_POSITION("InetAddress.java", 862) + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r6.o); + if (_r0.i == 0) goto label75; + XMLVM_SOURCE_POSITION("InetAddress.java", 863) + XMLVM_CHECK_NPE(6) + _r10.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r6.o); + + + // Red class access removed: java.net.NetworkInterface::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 865) + + + // Red class access removed: java.net.NetworkInterface::getInetAddresses + XMLVM_RED_CLASS_DEPENDENCY(); + label57:; + XMLVM_SOURCE_POSITION("InetAddress.java", 867) + XMLVM_CHECK_NPE(8) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r8.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r8.o); + if (_r0.i == 0) goto label41; + XMLVM_SOURCE_POSITION("InetAddress.java", 868) + XMLVM_CHECK_NPE(8) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r8.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r8.o); + //java_net_InetAddress_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(11) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_net_InetAddress*) _r11.o)->tib->vtable[1])(_r11.o, _r0.o); + if (_r0.i == 0) goto label57; + XMLVM_SOURCE_POSITION("InetAddress.java", 870) + _r0.i = 1; + goto label5; + label75:; + XMLVM_SOURCE_POSITION("InetAddress.java", 875) + XMLVM_CHECK_NPE(11) + _r0.o = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.waitReachable_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w1175aaac51b1c62) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 876) + XMLVM_CHECK_NPE(11) + _r1.i = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.addrCount_; + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(11) + ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.addrCount_ = _r1.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 878) + XMLVM_CHECK_NPE(11) + _r1.i = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.addrCount_; + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w1175aaac51b1c62->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac51b1c62, sizeof(XMLVM_JMP_BUF)); goto label93; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 881) + XMLVM_CHECK_NPE(11) + _r1.o = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.waitReachable_; + XMLVM_CHECK_NPE(1) + java_lang_Object_notifyAll__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac51b1c62) + XMLVM_CATCH_SPECIFIC(w1175aaac51b1c62,java_lang_Object,95) + XMLVM_CATCH_END(w1175aaac51b1c62) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac51b1c62) + label93:; + XMLVM_TRY_BEGIN(w1175aaac51b1c64) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 883) + java_lang_Object_releaseLockRecursive__(_r0.o); + { XMLVM_MEMCPY(curThread_w1175aaac51b1c64->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac51b1c64, sizeof(XMLVM_JMP_BUF)); goto label19; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac51b1c64) + XMLVM_CATCH_SPECIFIC(w1175aaac51b1c64,java_lang_Object,95) + XMLVM_CATCH_END(w1175aaac51b1c64) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac51b1c64) + label95:; + XMLVM_TRY_BEGIN(w1175aaac51b1c66) + // Begin try + java_lang_Thread* curThread_w1175aaac51b1c66aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w1175aaac51b1c66aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac51b1c66) + XMLVM_CATCH_SPECIFIC(w1175aaac51b1c66,java_lang_Object,95) + XMLVM_CATCH_END(w1175aaac51b1c66) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac51b1c66) + XMLVM_THROW_CUSTOM(_r1.o) + label98:; + XMLVM_SOURCE_POSITION("InetAddress.java", 887) + _r9.i = 1; + XMLVM_SOURCE_POSITION("InetAddress.java", 888) + + + // Red class access removed: java.net.InetAddress$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1 = _r11; + _r2 = _r15; + _r4 = _r13; + _r5 = _r14; + + + // Red class access removed: java.net.InetAddress$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.InetAddress$1::start + XMLVM_RED_CLASS_DEPENDENCY(); + goto label19; + label112:; + XMLVM_SOURCE_POSITION("InetAddress.java", 924) + if (_r9.i == 0) goto label143; + XMLVM_SOURCE_POSITION("InetAddress.java", 925) + XMLVM_CHECK_NPE(11) + _r0.o = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.waitReachable_; + java_lang_Object_acquireLockRecursive__(_r0.o); + label117:; + XMLVM_TRY_BEGIN(w1175aaac51b1c87) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 927) + XMLVM_CHECK_NPE(11) + _r1.i = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.reached_; + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w1175aaac51b1c87->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac51b1c87, sizeof(XMLVM_JMP_BUF)); goto label134; }; + XMLVM_CHECK_NPE(11) + _r1.i = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.addrCount_; + if (_r1.i == 0) { XMLVM_MEMCPY(curThread_w1175aaac51b1c87->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac51b1c87, sizeof(XMLVM_JMP_BUF)); goto label134; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 929) + XMLVM_CHECK_NPE(11) + _r1.o = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.waitReachable_; + _r2.l = 1000; + XMLVM_CHECK_NPE(1) + java_lang_Object_wait___long(_r1.o, _r2.l); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac51b1c87) + XMLVM_CATCH_SPECIFIC(w1175aaac51b1c87,java_lang_Object,140) + XMLVM_CATCH_END(w1175aaac51b1c87) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac51b1c87) + goto label117; + label133:; + XMLVM_SOURCE_POSITION("InetAddress.java", 931) + java_lang_Thread* curThread_w1175aaac51b1c91 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w1175aaac51b1c91->fields.java_lang_Thread.xmlvmException_; + label134:; + XMLVM_TRY_BEGIN(w1175aaac51b1c93) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 934) + XMLVM_CHECK_NPE(11) + _r1.i = ((java_net_InetAddress*) _r11.o)->fields.java_net_InetAddress.reached_; + java_lang_Object_releaseLockRecursive__(_r0.o); + _r0 = _r1; + { XMLVM_MEMCPY(curThread_w1175aaac51b1c93->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1175aaac51b1c93, sizeof(XMLVM_JMP_BUF)); goto label5; }; + XMLVM_SOURCE_POSITION("InetAddress.java", 935) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac51b1c93) + XMLVM_CATCH_SPECIFIC(w1175aaac51b1c93,java_lang_Object,140) + XMLVM_CATCH_END(w1175aaac51b1c93) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac51b1c93) + label140:; + XMLVM_TRY_BEGIN(w1175aaac51b1c95) + // Begin try + java_lang_Thread* curThread_w1175aaac51b1c95aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w1175aaac51b1c95aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac51b1c95) + XMLVM_CATCH_SPECIFIC(w1175aaac51b1c95,java_lang_Object,140) + XMLVM_CATCH_END(w1175aaac51b1c95) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac51b1c95) + XMLVM_THROW_CUSTOM(_r1.o) + label143:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isReachableByICMPUseMultiThread___java_net_NetworkInterface_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isReachableByICMPUseMultiThread___java_net_NetworkInterface_int_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isReachableByICMPUseMultiThread", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("InetAddress.java", 943) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + _r0.i = java_net_InetAddress_isReachableByMultiThread___java_net_NetworkInterface_int_int_boolean(_r1.o, _r2.o, _r3.i, _r4.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isReachableByTCPUseMultiThread___java_net_NetworkInterface_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isReachableByTCPUseMultiThread___java_net_NetworkInterface_int_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isReachableByTCPUseMultiThread", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("InetAddress.java", 948) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + _r0.i = java_net_InetAddress_isReachableByMultiThread___java_net_NetworkInterface_int_int_boolean(_r1.o, _r2.o, _r3.i, _r4.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isReachableByTCP___java_net_InetAddress_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isReachableByTCP___java_net_InetAddress_java_net_InetAddress_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isReachableByTCP", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + _r8.o = me; + _r9.o = n1; + _r10.o = n2; + _r11.i = n3; + XMLVM_SOURCE_POSITION("InetAddress.java", 953) + _r1.o = __NEW_java_io_FileDescriptor(); + XMLVM_CHECK_NPE(1) + java_io_FileDescriptor___INIT___(_r1.o); + _r4.i = 0; + _r7.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 957) + _r0.o = java_net_InetAddress_GET_NETIMPL(); + + + // Red class access removed: org.apache.harmony.luni.net.NetUtil::preferIPv4Stack + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_BOOLEAN)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean])(_r0.o, _r1.o, _r2.i); + XMLVM_SOURCE_POSITION("InetAddress.java", 959) + if (_r10.o == JAVA_NULL) goto label24; + XMLVM_TRY_BEGIN(w1175aaac54b1c16) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 960) + _r0.o = java_net_InetAddress_GET_NETIMPL(); + _r2.i = 0; + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int])(_r0.o, _r1.o, _r10.o, _r2.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac54b1c16) + XMLVM_CATCH_SPECIFIC(w1175aaac54b1c16,java_io_IOException,39) + XMLVM_CATCH_END(w1175aaac54b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac54b1c16) + label24:; + XMLVM_TRY_BEGIN(w1175aaac54b1c18) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 962) + _r0.o = java_net_InetAddress_GET_NETIMPL(); + _r2.i = 7; + _r3 = _r11; + _r5 = _r9; + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress])(_r0.o, _r1.o, _r2.i, _r3.i, _r4.i, _r5.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac54b1c18) + XMLVM_CATCH_SPECIFIC(w1175aaac54b1c18,java_io_IOException,39) + XMLVM_CATCH_END(w1175aaac54b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac54b1c18) + XMLVM_SOURCE_POSITION("InetAddress.java", 964) + _r7.i = 1; + label33:; + XMLVM_SOURCE_POSITION("InetAddress.java", 972) + _r0.o = java_net_InetAddress_GET_NETIMPL(); + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_socketClose___java_io_FileDescriptor])(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 974) + XMLVM_EXIT_METHOD() + return _r7.i; + label39:; + XMLVM_SOURCE_POSITION("InetAddress.java", 965) + java_lang_Thread* curThread_w1175aaac54b1c29 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1175aaac54b1c29->fields.java_lang_Thread.xmlvmException_; + _r6 = _r0; + XMLVM_SOURCE_POSITION("InetAddress.java", 966) + // "Connection refused" + _r0.o = xmlvm_create_java_string_from_pool(69); + //java_io_IOException_getMessage__[7] + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_io_IOException*) _r6.o)->tib->vtable[7])(_r6.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r2.o); + if (_r0.i == 0) goto label33; + XMLVM_SOURCE_POSITION("InetAddress.java", 968) + _r7.i = 1; + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getByAddress___byte_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getByAddress___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getByAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 997) + _r0.i = 0; + _r0.o = java_net_InetAddress_getByAddress___byte_1ARRAY_int(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getByAddress___byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getByAddress___byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getByAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = n1; + _r6.i = n2; + _r4.i = 4; + XMLVM_SOURCE_POSITION("InetAddress.java", 1018) + if (_r5.o == JAVA_NULL) goto label24; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r2.i != _r4.i) goto label24; + XMLVM_SOURCE_POSITION("InetAddress.java", 1019) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r4.i); + _r1.i = 0; + label9:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1020) + if (_r1.i >= _r4.i) goto label18; + XMLVM_SOURCE_POSITION("InetAddress.java", 1021) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = _r1.i + 1; + goto label9; + label18:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1023) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + label23:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1038) + XMLVM_EXIT_METHOD() + return _r2.o; + label24:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1026) + if (_r5.o == JAVA_NULL) goto label69; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r3.i = 16; + if (_r2.i != _r3.i) goto label69; + XMLVM_SOURCE_POSITION("InetAddress.java", 1030) + _r2.i = java_net_InetAddress_isIPv4MappedAddress___byte_1ARRAY(_r5.o); + if (_r2.i == 0) goto label57; + XMLVM_SOURCE_POSITION("InetAddress.java", 1031) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r4.i); + _r1.i = 0; + label40:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1032) + if (_r1.i >= _r4.i) goto label51; + XMLVM_SOURCE_POSITION("InetAddress.java", 1033) + _r2.i = _r1.i + 12; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = _r1.i + 1; + goto label40; + label51:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1035) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label23; + label57:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1037) + //byte_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r5.o)->tib->vtable[0])(_r5.o); + _r0.o = _r0.o; + _r2.o = __NEW_java_net_Inet6Address(); + XMLVM_CHECK_NPE(2) + java_net_Inet6Address___INIT____byte_1ARRAY_int(_r2.o, _r0.o, _r6.i); + goto label23; + label69:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1042) + _r2.o = __NEW_java_net_UnknownHostException(); + // "luni.64" + _r3.o = xmlvm_create_java_string_from_pool(75); + _r3.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r3.o); + XMLVM_CHECK_NPE(2) + java_net_UnknownHostException___INIT____java_lang_String(_r2.o, _r3.o); + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_isIPv4MappedAddress___byte_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_isIPv4MappedAddress___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.net.InetAddress", "isIPv4MappedAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = n1; + _r4.i = 10; + _r3.i = 0; + _r2.i = -1; + XMLVM_SOURCE_POSITION("InetAddress.java", 1049) + _r0.i = 0; + label5:; + if (_r0.i >= _r4.i) goto label16; + XMLVM_SOURCE_POSITION("InetAddress.java", 1050) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r0.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r1.i == 0) goto label13; + _r1 = _r3; + label12:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1051) + XMLVM_SOURCE_POSITION("InetAddress.java", 1059) + XMLVM_EXIT_METHOD() + return _r1.i; + label13:; + _r0.i = _r0.i + 1; + goto label5; + label16:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1055) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r4.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + if (_r1.i != _r2.i) goto label26; + _r1.i = 11; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r1.i == _r2.i) goto label28; + label26:; + _r1 = _r3; + XMLVM_SOURCE_POSITION("InetAddress.java", 1056) + goto label12; + label28:; + _r1.i = 1; + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getByAddress___java_lang_String_byte_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getByAddress___java_lang_String_byte_1ARRAY] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getByAddress", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("InetAddress.java", 1088) + _r0.i = 0; + _r0.o = java_net_InetAddress_getByAddressInternal___java_lang_String_byte_1ARRAY_int(_r1.o, _r2.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_getByAddressInternal___java_lang_String_byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_getByAddressInternal___java_lang_String_byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "getByAddressInternal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = n1; + _r6.o = n2; + _r7.i = n3; + _r4.i = 16; + _r3.i = 4; + XMLVM_SOURCE_POSITION("InetAddress.java", 1112) + if (_r6.o == JAVA_NULL) goto label26; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + if (_r2.i != _r3.i) goto label26; + XMLVM_SOURCE_POSITION("InetAddress.java", 1113) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r3.i); + _r1.i = 0; + label11:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1114) + if (_r1.i >= _r3.i) goto label20; + XMLVM_SOURCE_POSITION("InetAddress.java", 1115) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = _r1.i + 1; + goto label11; + label20:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1117) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + label25:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1137) + XMLVM_EXIT_METHOD() + return _r2.o; + label26:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1120) + if (_r6.o == JAVA_NULL) goto label75; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + if (_r2.i != _r4.i) goto label75; + XMLVM_SOURCE_POSITION("InetAddress.java", 1124) + _r2.i = java_net_InetAddress_isIPv4MappedAddress___byte_1ARRAY(_r6.o); + if (_r2.i == 0) goto label57; + XMLVM_SOURCE_POSITION("InetAddress.java", 1125) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r3.i); + _r1.i = 0; + label40:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1126) + if (_r1.i >= _r3.i) goto label51; + XMLVM_SOURCE_POSITION("InetAddress.java", 1127) + _r2.i = _r1.i + 12; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = _r1.i + 1; + goto label40; + label51:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1129) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label25; + label57:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1132) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r4.i); + _r1.i = 0; + label60:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1133) + if (_r1.i >= _r4.i) goto label69; + XMLVM_SOURCE_POSITION("InetAddress.java", 1134) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = _r1.i + 1; + goto label60; + label69:; + _r2.o = __NEW_java_net_Inet6Address(); + XMLVM_CHECK_NPE(2) + java_net_Inet6Address___INIT____byte_1ARRAY_java_lang_String_int(_r2.o, _r6.o, _r5.o, _r7.i); + goto label25; + label75:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1140) + _r2.o = __NEW_java_net_UnknownHostException(); + // "luni.65" + _r3.o = xmlvm_create_java_string_from_pool(76); + _r3.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r3.o, _r5.o); + XMLVM_CHECK_NPE(2) + java_net_UnknownHostException___INIT____java_lang_String(_r2.o, _r3.o); + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +void java_net_InetAddress_intToBytes___int_byte_1ARRAY_int(JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_intToBytes___int_byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "intToBytes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.i = n1; + _r3.o = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("InetAddress.java", 1151) + _r0.i = _r2.i >> 24; + _r0.i = _r0.i & 255; + _r0.i = (_r0.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r0.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1152) + _r0.i = _r4.i + 1; + _r1.i = _r2.i >> 16; + _r1.i = _r1.i & 255; + _r1.i = (_r1.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1153) + _r0.i = _r4.i + 2; + _r1.i = _r2.i >> 8; + _r1.i = _r1.i & 255; + _r1.i = (_r1.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1154) + _r0.i = _r4.i + 3; + _r1.i = _r2.i & 255; + _r1.i = (_r1.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1155) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_net_InetAddress_bytesToInt___byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_bytesToInt___byte_1ARRAY_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "bytesToInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("InetAddress.java", 1169) + _r1.i = _r4.i + 3; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r1.i = _r1.i & 255; + _r2.i = _r4.i + 2; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r2.i = _r2.i & 255; + _r2.i = _r2.i << 8; + _r1.i = _r1.i | _r2.i; + _r2.i = _r4.i + 1; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r2.i = _r2.i & 255; + _r2.i = _r2.i << 16; + _r1.i = _r1.i | _r2.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r2.i = _r2.i & 255; + _r2.i = _r2.i << 24; + _r0.i = _r1.i | _r2.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1173) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_createHostNameFromIPAddress___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_createHostNameFromIPAddress___java_lang_String] + XMLVM_ENTER_METHOD("java.net.InetAddress", "createHostNameFromIPAddress", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + _r11.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 1183) + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("InetAddress.java", 1185) + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::isValidIPV4Address + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i == 0) goto label91; + XMLVM_SOURCE_POSITION("InetAddress.java", 1186) + _r0.i = 4; + XMLVM_CLASS_INIT(byte) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + XMLVM_SOURCE_POSITION("InetAddress.java", 1187) + // "\134." + _r0.o = xmlvm_create_java_string_from_pool(77); + XMLVM_CHECK_NPE(11) + _r3.o = java_lang_String_split___java_lang_String(_r11.o, _r0.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 1188) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r0.i = 1; + if (_r2.i != _r0.i) goto label44; + XMLVM_SOURCE_POSITION("InetAddress.java", 1189) + XMLVM_SOURCE_POSITION("InetAddress.java", 1190) + _r0.i = 0; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r3.l = java_lang_Long_parseLong___java_lang_String(_r0.o); + _r0.i = 0; + label28:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1191) + _r5.i = 4; + if (_r0.i >= _r5.i) goto label59; + XMLVM_SOURCE_POSITION("InetAddress.java", 1192) + _r5.i = 3; + _r5.i = _r5.i - _r0.i; + _r5.i = _r5.i * 8; + _r5.l = _r3.l >> (0x3f & _r5.l); + _r5.i = (JAVA_INT) _r5.l; + _r5.i = (_r5.i << 24) >> 24; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r5.i; + _r0.i = _r0.i + 1; + goto label28; + label44:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1195) + _r0.i = 0; + label45:; + if (_r0.i >= _r2.i) goto label59; + XMLVM_SOURCE_POSITION("InetAddress.java", 1196) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r4.i = java_lang_Integer_parseInt___java_lang_String(_r4.o); + _r4.i = (_r4.i << 24) >> 24; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r4.i; + _r0.i = _r0.i + 1; + goto label45; + label59:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1201) + _r0.i = 2; + if (_r2.i != _r0.i) goto label72; + XMLVM_SOURCE_POSITION("InetAddress.java", 1202) + _r0.i = 3; + _r3.i = 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1203) + _r0.i = 1; + _r3.i = 0; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + label72:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1205) + _r0.i = 3; + if (_r2.i != _r0.i) goto label85; + XMLVM_SOURCE_POSITION("InetAddress.java", 1206) + _r0.i = 3; + _r2.i = 2; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1207) + _r0.i = 2; + _r2.i = 0; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.i; + label85:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1210) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + label90:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1211) + XMLVM_SOURCE_POSITION("InetAddress.java", 1341) + XMLVM_EXIT_METHOD() + return _r0.o; + label91:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1213) + _r0.i = 0; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(11) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r11.o)->tib->vtable[6])(_r11.o, _r0.i); + _r1.i = 91; + if (_r0.i != _r1.i) goto label111; + XMLVM_SOURCE_POSITION("InetAddress.java", 1214) + _r0.i = 1; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(11) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r11.o)->tib->vtable[8])(_r11.o); + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(11) + _r11.o = java_lang_String_substring___int_int(_r11.o, _r0.i, _r1.i); + label111:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1218) + _r8.o = __NEW_java_util_StringTokenizer(); + // ":.%" + _r0.o = xmlvm_create_java_string_from_pool(78); + _r1.i = 1; + XMLVM_CHECK_NPE(8) + java_util_StringTokenizer___INIT____java_lang_String_java_lang_String_boolean(_r8.o, _r11.o, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("InetAddress.java", 1220) + _r3.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(3) + java_util_ArrayList___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 1221) + _r1.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(1) + java_util_ArrayList___INIT___(_r1.o); + _r5.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("InetAddress.java", 1223) + // "" + _r6.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("InetAddress.java", 1224) + // "" + _r4.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("InetAddress.java", 1225) + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + _r0.i = -1; + _r9 = _r0; + _r0 = _r2; + _r2 = _r9; + _r10 = _r6; + _r6 = _r5; + _r5 = _r10; + label143:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1226) + XMLVM_SOURCE_POSITION("InetAddress.java", 1234) + XMLVM_CHECK_NPE(8) + _r0.i = java_util_StringTokenizer_hasMoreTokens__(_r8.o); + if (_r0.i == 0) goto label286; + XMLVM_SOURCE_POSITION("InetAddress.java", 1235) + _r4 = _r4; + _r5 = _r5; + XMLVM_SOURCE_POSITION("InetAddress.java", 1237) + XMLVM_CHECK_NPE(8) + _r7.o = java_util_StringTokenizer_nextToken__(_r8.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 1239) + // ":" + _r0.o = xmlvm_create_java_string_from_pool(79); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r0.o); + if (_r0.i == 0) goto label195; + XMLVM_SOURCE_POSITION("InetAddress.java", 1240) + // ":" + _r0.o = xmlvm_create_java_string_from_pool(79); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r0.o); + if (_r0.i == 0) goto label180; + XMLVM_SOURCE_POSITION("InetAddress.java", 1241) + //java_util_ArrayList_size__[16] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[16])(_r3.o); + _r2 = _r0; + _r0 = _r4; + _r4 = _r5; + _r5 = _r7; + goto label143; + label180:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1242) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r0.o); + if (_r0.i != 0) goto label476; + XMLVM_SOURCE_POSITION("InetAddress.java", 1243) + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(3) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[7])(_r3.o, _r5.o); + _r0 = _r4; + _r4 = _r5; + _r5 = _r7; + goto label143; + label195:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1245) + // "." + _r0.o = xmlvm_create_java_string_from_pool(52); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r0.o); + if (_r0.i == 0) goto label210; + XMLVM_SOURCE_POSITION("InetAddress.java", 1246) + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(1) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[7])(_r1.o, _r5.o); + _r0 = _r4; + _r4 = _r5; + _r5 = _r7; + goto label143; + label210:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1247) + // "%" + _r0.o = xmlvm_create_java_string_from_pool(80); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r0.o); + if (_r0.i == 0) goto label476; + XMLVM_SOURCE_POSITION("InetAddress.java", 1249) + // ":" + _r0.o = xmlvm_create_java_string_from_pool(79); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r0.o); + if (_r0.i != 0) goto label245; + // "." + _r0.o = xmlvm_create_java_string_from_pool(52); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r0.o); + if (_r0.i != 0) goto label245; + XMLVM_SOURCE_POSITION("InetAddress.java", 1250) + // ":" + _r0.o = xmlvm_create_java_string_from_pool(79); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[1])(_r4.o, _r0.o); + if (_r0.i == 0) goto label264; + XMLVM_SOURCE_POSITION("InetAddress.java", 1251) + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(3) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[7])(_r3.o, _r5.o); + label245:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1258) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + label250:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1259) + XMLVM_CHECK_NPE(8) + _r6.i = java_util_StringTokenizer_hasMoreTokens__(_r8.o); + if (_r6.i == 0) goto label276; + XMLVM_SOURCE_POSITION("InetAddress.java", 1260) + XMLVM_CHECK_NPE(8) + _r6.o = java_util_StringTokenizer_nextToken__(_r8.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r6.o); + goto label250; + label264:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1252) + // "." + _r0.o = xmlvm_create_java_string_from_pool(52); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[1])(_r4.o, _r0.o); + if (_r0.i == 0) goto label245; + XMLVM_SOURCE_POSITION("InetAddress.java", 1253) + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(1) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[7])(_r1.o, _r5.o); + goto label245; + label276:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1262) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + _r6 = _r0; + _r0 = _r4; + _r4 = _r5; + _r5 = _r7; + XMLVM_SOURCE_POSITION("InetAddress.java", 1263) + goto label143; + label286:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1266) + // ":" + _r0.o = xmlvm_create_java_string_from_pool(79); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[1])(_r4.o, _r0.o); + if (_r0.i == 0) goto label341; + XMLVM_SOURCE_POSITION("InetAddress.java", 1267) + // ":" + _r0.o = xmlvm_create_java_string_from_pool(79); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r0.o); + if (_r0.i == 0) goto label336; + XMLVM_SOURCE_POSITION("InetAddress.java", 1268) + //java_util_ArrayList_size__[16] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[16])(_r3.o); + label306:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1278) + _r2.i = 8; + XMLVM_SOURCE_POSITION("InetAddress.java", 1282) + //java_util_ArrayList_size__[16] + XMLVM_CHECK_NPE(1) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[16])(_r1.o); + if (_r4.i <= 0) goto label316; + XMLVM_SOURCE_POSITION("InetAddress.java", 1283) + _r2.i = _r2.i + -2; + label316:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1287) + _r4.i = -1; + if (_r0.i == _r4.i) goto label354; + XMLVM_SOURCE_POSITION("InetAddress.java", 1288) + //java_util_ArrayList_size__[16] + XMLVM_CHECK_NPE(3) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[16])(_r3.o); + _r4.i = _r2.i - _r4.i; + _r2.i = 0; + label326:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1289) + if (_r2.i >= _r4.i) goto label354; + XMLVM_SOURCE_POSITION("InetAddress.java", 1290) + // "0" + _r5.o = xmlvm_create_java_string_from_pool(70); + //java_util_ArrayList_add___int_java_lang_Object[20] + XMLVM_CHECK_NPE(3) + (*(void (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[20])(_r3.o, _r0.i, _r5.o); + _r2.i = _r2.i + 1; + goto label326; + label336:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1270) + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(3) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[7])(_r3.o, _r5.o); + _r0 = _r2; + goto label306; + label341:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1272) + // "." + _r0.o = xmlvm_create_java_string_from_pool(52); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[1])(_r4.o, _r0.o); + if (_r0.i == 0) goto label352; + XMLVM_SOURCE_POSITION("InetAddress.java", 1273) + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(1) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[7])(_r1.o, _r5.o); + label352:; + _r0 = _r2; + goto label306; + label354:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1294) + _r0.i = 16; + XMLVM_CLASS_INIT(byte) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + _r0.i = 0; + label359:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1297) + //java_util_ArrayList_size__[16] + XMLVM_CHECK_NPE(3) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[16])(_r3.o); + if (_r0.i >= _r4.i) goto label379; + XMLVM_SOURCE_POSITION("InetAddress.java", 1298) + //java_util_ArrayList_get___int[21] + XMLVM_CHECK_NPE(3) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[21])(_r3.o, _r0.i); + _r4.o = _r4.o; + _r5.i = _r0.i * 2; + + + // Red class access removed: org.apache.harmony.luni.util.Inet6Util::convertToBytes + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.i = _r0.i + 1; + goto label359; + label379:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1302) + _r0.i = 0; + label380:; + //java_util_ArrayList_size__[16] + XMLVM_CHECK_NPE(1) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[16])(_r1.o); + if (_r0.i >= _r3.i) goto label406; + XMLVM_SOURCE_POSITION("InetAddress.java", 1303) + _r4.i = _r0.i + 12; + //java_util_ArrayList_get___int[21] + XMLVM_CHECK_NPE(1) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[21])(_r1.o, _r0.i); + _r3.o = _r3.o; + _r3.i = java_lang_Integer_parseInt___java_lang_String(_r3.o); + _r3.i = _r3.i & 255; + _r3.i = (_r3.i << 24) >> 24; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r4.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r3.i; + _r0.i = _r0.i + 1; + goto label380; + label406:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1309) + _r1.i = 1; + _r0.i = 0; + label408:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1310) + _r3.i = 10; + if (_r0.i >= _r3.i) goto label474; + XMLVM_SOURCE_POSITION("InetAddress.java", 1311) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r3.i == 0) goto label450; + XMLVM_SOURCE_POSITION("InetAddress.java", 1312) + _r0.i = 0; + label417:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1313) + XMLVM_SOURCE_POSITION("InetAddress.java", 1317) + _r1.i = 10; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3.i = -1; + if (_r1.i != _r3.i) goto label431; + _r1.i = 11; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3.i = -1; + if (_r1.i == _r3.i) goto label432; + label431:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1318) + _r0.i = 0; + label432:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1321) + if (_r0.i == 0) goto label459; + XMLVM_SOURCE_POSITION("InetAddress.java", 1322) + _r0.i = 4; + XMLVM_CLASS_INIT(byte) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + _r0.i = 0; + label438:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1323) + _r3.i = 4; + if (_r0.i >= _r3.i) goto label453; + XMLVM_SOURCE_POSITION("InetAddress.java", 1324) + _r3.i = _r0.i + 12; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i; + _r0.i = _r0.i + 1; + goto label438; + label450:; + _r0.i = _r0.i + 1; + goto label408; + label453:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1326) + _r0.o = java_net_InetAddress_getByAddress___byte_1ARRAY(_r1.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 1327) + goto label90; + label459:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1328) + _r0.i = 0; + if (_r6.o == JAVA_NULL) goto label466; + XMLVM_TRY_BEGIN(w1175aaac62b1d353) + // Begin try + XMLVM_SOURCE_POSITION("InetAddress.java", 1329) + XMLVM_SOURCE_POSITION("InetAddress.java", 1331) + _r0.i = java_lang_Integer_parseInt___java_lang_String(_r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1175aaac62b1d353) + XMLVM_CATCH_SPECIFIC(w1175aaac62b1d353,java_lang_Exception,472) + XMLVM_CATCH_END(w1175aaac62b1d353) + XMLVM_RESTORE_EXCEPTION_ENV(w1175aaac62b1d353) + label466:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1337) + _r0.o = java_net_InetAddress_getByAddress___byte_1ARRAY_int(_r2.o, _r0.i); + goto label90; + label472:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1332) + java_lang_Thread* curThread_w1175aaac62b1d360 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w1175aaac62b1d360->fields.java_lang_Thread.xmlvmException_; + goto label466; + label474:; + _r0 = _r1; + goto label417; + label476:; + _r0 = _r4; + _r4 = _r5; + _r5 = _r7; + goto label143; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_preferIPv6Addresses__() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_preferIPv6Addresses__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "preferIPv6Addresses", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("InetAddress.java", 1345) + + + // Red class access removed: org.apache.harmony.luni.net.NetUtil::preferIPv6Addresses + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_net_InetAddress_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.net.InetAddress", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r2.i = 0; + // "address" + _r3.o = xmlvm_create_java_string_from_pool(81); + XMLVM_SOURCE_POSITION("InetAddress.java", 1354) + + + // Red class access removed: java.io.ObjectOutputStream::putFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 1355) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + if (_r1.o != JAVA_NULL) goto label34; + XMLVM_SOURCE_POSITION("InetAddress.java", 1356) + // "address" + _r1.o = xmlvm_create_java_string_from_pool(81); + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + label16:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1360) + // "family" + _r1.o = xmlvm_create_java_string_from_pool(82); + XMLVM_CHECK_NPE(4) + _r2.i = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.family_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 1361) + // "hostName" + _r1.o = xmlvm_create_java_string_from_pool(83); + XMLVM_CHECK_NPE(4) + _r2.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.hostName_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 1363) + + + // Red class access removed: java.io.ObjectOutputStream::writeFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 1364) + XMLVM_EXIT_METHOD() + return; + label34:; + XMLVM_SOURCE_POSITION("InetAddress.java", 1358) + // "address" + _r1.o = xmlvm_create_java_string_from_pool(81); + XMLVM_CHECK_NPE(4) + _r1.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + _r1.i = java_net_InetAddress_bytesToInt___byte_1ARRAY_int(_r1.o, _r2.i); + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + goto label16; + //XMLVM_END_WRAPPER +} + +void java_net_InetAddress_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.net.InetAddress", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("InetAddress.java", 1368) + + + // Red class access removed: java.io.ObjectInputStream::readFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("InetAddress.java", 1369) + // "address" + _r2.o = xmlvm_create_java_string_from_pool(81); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r2.i = 4; + XMLVM_SOURCE_POSITION("InetAddress.java", 1370) + XMLVM_CLASS_INIT(byte) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r2.i); + XMLVM_CHECK_NPE(4) + ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_ = _r2.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 1371) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.ipaddress_; + java_net_InetAddress_intToBytes___int_byte_1ARRAY_int(_r0.i, _r2.o, _r3.i); + XMLVM_SOURCE_POSITION("InetAddress.java", 1372) + // "hostName" + _r2.o = xmlvm_create_java_string_from_pool(83); + _r3.o = JAVA_NULL; + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r2.o = _r2.o; + XMLVM_CHECK_NPE(4) + ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.hostName_ = _r2.o; + XMLVM_SOURCE_POSITION("InetAddress.java", 1373) + // "family" + _r2.o = xmlvm_create_java_string_from_pool(82); + _r3.i = 2; + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + ((java_net_InetAddress*) _r4.o)->fields.java_net_InetAddress.family_ = _r2.i; + XMLVM_SOURCE_POSITION("InetAddress.java", 1374) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_readResolve__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_readResolve__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "readResolve", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("InetAddress.java", 1381) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + _r1.o = ((java_net_InetAddress*) _r3.o)->fields.java_net_InetAddress.ipaddress_; + XMLVM_CHECK_NPE(3) + _r2.o = ((java_net_InetAddress*) _r3.o)->fields.java_net_InetAddress.hostName_; + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_access$100__() +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_access$100__] + XMLVM_ENTER_METHOD("java.net.InetAddress", "access$100", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("InetAddress.java", 45) + _r0.o = java_net_InetAddress_GET_NETIMPL(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_access$200___java_net_InetAddress_java_net_InetAddress_java_net_InetAddress_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_access$200___java_net_InetAddress_java_net_InetAddress_java_net_InetAddress_int] + XMLVM_ENTER_METHOD("java.net.InetAddress", "access$200", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + _r4.i = n4; + XMLVM_SOURCE_POSITION("InetAddress.java", 45) + XMLVM_CHECK_NPE(1) + _r0.i = java_net_InetAddress_isReachableByTCP___java_net_InetAddress_java_net_InetAddress_int(_r1.o, _r2.o, _r3.o, _r4.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_net_InetAddress_access$300___java_net_InetAddress(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_access$300___java_net_InetAddress] + XMLVM_ENTER_METHOD("java.net.InetAddress", "access$300", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 45) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.waitReachable_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_net_InetAddress_access$402___java_net_InetAddress_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_access$402___java_net_InetAddress_boolean] + XMLVM_ENTER_METHOD("java.net.InetAddress", "access$402", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = n1; + _r1.i = n2; + XMLVM_SOURCE_POSITION("InetAddress.java", 45) + XMLVM_CHECK_NPE(0) + ((java_net_InetAddress*) _r0.o)->fields.java_net_InetAddress.reached_ = _r1.i; + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_net_InetAddress_access$510___java_net_InetAddress(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_access$510___java_net_InetAddress] + XMLVM_ENTER_METHOD("java.net.InetAddress", "access$510", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 45) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.addrCount_; + _r1.i = 1; + _r1.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(2) + ((java_net_InetAddress*) _r2.o)->fields.java_net_InetAddress.addrCount_ = _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_net_InetAddress_access$500___java_net_InetAddress(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_net_InetAddress) + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress_access$500___java_net_InetAddress] + XMLVM_ENTER_METHOD("java.net.InetAddress", "access$500", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("InetAddress.java", 45) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_net_InetAddress*) _r1.o)->fields.java_net_InetAddress.addrCount_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_net_InetAddress___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_net_InetAddress___CLINIT___] + XMLVM_ENTER_METHOD("java.net.InetAddress", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.i = 4; + _r5.i = 1; + XMLVM_SOURCE_POSITION("InetAddress.java", 47) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r1.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_BYTE[]){0, 0, 0, 0, }); + java_net_InetAddress_PUT_any_bytes( _r0.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 49) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r1.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_BYTE[]){127, 0, 0, 1, }); + java_net_InetAddress_PUT_localhost_bytes( _r0.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 51) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = java_net_InetAddress_GET_any_bytes(); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_net_InetAddress_PUT_ANY( _r0.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 53) + + + // Red class access removed: org.apache.harmony.luni.platform.Platform::getNetworkSystem + XMLVM_RED_CLASS_DEPENDENCY(); + java_net_InetAddress_PUT_NETIMPL( _r0.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 55) + + + // Red class access removed: java.net.Inet4Address::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = java_net_InetAddress_GET_localhost_bytes(); + // "localhost" + _r2.o = xmlvm_create_java_string_from_pool(71); + + + // Red class access removed: java.net.Inet4Address:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_net_InetAddress_PUT_LOOPBACK( _r0.o); + XMLVM_SOURCE_POSITION("InetAddress.java", 81) + java_net_InetAddress_oneTimeInitialization___boolean(_r5.i); + XMLVM_SOURCE_POSITION("InetAddress.java", 1348) + _r0.i = 3; + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_io_ObjectStreamField, _r0.i); + _r1.i = 0; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "address" + _r3.o = xmlvm_create_java_string_from_pool(81); + _r4.o = java_lang_Integer_GET_TYPE(); + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.o = __NEW_java_io_ObjectStreamField(); + // "family" + _r2.o = xmlvm_create_java_string_from_pool(82); + _r3.o = java_lang_Integer_GET_TYPE(); + XMLVM_CHECK_NPE(1) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r1.o; + _r1.i = 2; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "hostName" + _r3.o = xmlvm_create_java_string_from_pool(83); + XMLVM_CLASS_INIT(java_lang_String) + _r4.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + java_net_InetAddress_PUT_serialPersistentFields( _r0.o); + XMLVM_EXIT_METHOD() + return; + label86:; + label92:; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_net_InetAddress.h b/tests/nbody-java/java_net_InetAddress.h new file mode 100644 index 0000000000000..93300466306f0 --- /dev/null +++ b/tests/nbody-java/java_net_InetAddress.h @@ -0,0 +1,245 @@ +#ifndef __JAVA_NET_INETADDRESS__ +#define __JAVA_NET_INETADDRESS__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_net_InetAddress 0 +// Implemented interfaces: +#include "java_io_Serializable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_FileDescriptor +#define XMLVM_FORWARD_DECL_java_io_FileDescriptor +XMLVM_FORWARD_DECL(java_io_FileDescriptor) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +XMLVM_FORWARD_DECL(java_io_IOException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_ObjectStreamField +#define XMLVM_FORWARD_DECL_java_io_ObjectStreamField +XMLVM_FORWARD_DECL(java_io_ObjectStreamField) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Exception +#define XMLVM_FORWARD_DECL_java_lang_Exception +XMLVM_FORWARD_DECL(java_lang_Exception) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_SecurityManager +#define XMLVM_FORWARD_DECL_java_lang_SecurityManager +XMLVM_FORWARD_DECL(java_lang_SecurityManager) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_net_Inet6Address +#define XMLVM_FORWARD_DECL_java_net_Inet6Address +XMLVM_FORWARD_DECL(java_net_Inet6Address) +#endif +#ifndef XMLVM_FORWARD_DECL_java_net_UnknownHostException +#define XMLVM_FORWARD_DECL_java_net_UnknownHostException +XMLVM_FORWARD_DECL(java_net_UnknownHostException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_ArrayList +#define XMLVM_FORWARD_DECL_java_util_ArrayList +XMLVM_FORWARD_DECL(java_util_ArrayList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_StringTokenizer +#define XMLVM_FORWARD_DECL_java_util_StringTokenizer +XMLVM_FORWARD_DECL(java_util_StringTokenizer) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_INetworkSystem +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_INetworkSystem +XMLVM_FORWARD_DECL(org_apache_harmony_luni_platform_INetworkSystem) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_PriviAction) +#endif +// Class declarations for java.net.InetAddress +XMLVM_DEFINE_CLASS(java_net_InetAddress, 17, XMLVM_ITABLE_SIZE_java_net_InetAddress) + +extern JAVA_OBJECT __CLASS_java_net_InetAddress; +extern JAVA_OBJECT __CLASS_java_net_InetAddress_1ARRAY; +extern JAVA_OBJECT __CLASS_java_net_InetAddress_2ARRAY; +extern JAVA_OBJECT __CLASS_java_net_InetAddress_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_net_InetAddress +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_net_InetAddress \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT hostName_; \ + JAVA_OBJECT waitReachable_; \ + JAVA_BOOLEAN reached_; \ + JAVA_INT addrCount_; \ + JAVA_INT family_; \ + JAVA_OBJECT ipaddress_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_net_InetAddress \ + } java_net_InetAddress + +struct java_net_InetAddress { + __TIB_DEFINITION_java_net_InetAddress* tib; + struct { + __INSTANCE_FIELDS_java_net_InetAddress; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_net_InetAddress +#define XMLVM_FORWARD_DECL_java_net_InetAddress +typedef struct java_net_InetAddress java_net_InetAddress; +#endif + +#define XMLVM_VTABLE_SIZE_java_net_InetAddress 17 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_getHostAddress__ 6 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isMulticastAddress__ 15 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_toString__ 5 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isLoopbackAddress__ 9 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isLinkLocalAddress__ 8 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isSiteLocalAddress__ 16 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isMCGlobal__ 10 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isMCNodeLocal__ 12 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isMCLinkLocal__ 11 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isMCSiteLocal__ 14 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isMCOrgLocal__ 13 +#define XMLVM_VTABLE_IDX_java_net_InetAddress_isAnyLocalAddress__ 7 + +void __INIT_java_net_InetAddress(); +void __INIT_IMPL_java_net_InetAddress(); +void __DELETE_java_net_InetAddress(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_net_InetAddress(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_net_InetAddress(); +JAVA_OBJECT __NEW_INSTANCE_java_net_InetAddress(); +JAVA_OBJECT java_net_InetAddress_GET_any_bytes(); +void java_net_InetAddress_PUT_any_bytes(JAVA_OBJECT v); +JAVA_OBJECT java_net_InetAddress_GET_localhost_bytes(); +void java_net_InetAddress_PUT_localhost_bytes(JAVA_OBJECT v); +JAVA_OBJECT java_net_InetAddress_GET_ANY(); +void java_net_InetAddress_PUT_ANY(JAVA_OBJECT v); +JAVA_OBJECT java_net_InetAddress_GET_NETIMPL(); +void java_net_InetAddress_PUT_NETIMPL(JAVA_OBJECT v); +JAVA_OBJECT java_net_InetAddress_GET_LOOPBACK(); +void java_net_InetAddress_PUT_LOOPBACK(JAVA_OBJECT v); +JAVA_OBJECT java_net_InetAddress_GET_ERRMSG_CONNECTION_REFUSED(); +void java_net_InetAddress_PUT_ERRMSG_CONNECTION_REFUSED(JAVA_OBJECT v); +JAVA_LONG java_net_InetAddress_GET_serialVersionUID(); +void java_net_InetAddress_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_net_InetAddress_GET_serialPersistentFields(); +void java_net_InetAddress_PUT_serialPersistentFields(JAVA_OBJECT v); +void java_net_InetAddress_oneTimeInitialization___boolean(JAVA_BOOLEAN n1); +void java_net_InetAddress___INIT___(JAVA_OBJECT me); +void java_net_InetAddress___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_net_InetAddress___INIT____byte_1ARRAY_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_net_InetAddress_cacheElement__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_net_InetAddress_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_getAddress__(JAVA_OBJECT me); +JAVA_OBJECT java_net_InetAddress_getAllByName___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_getByName___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_OBJECT java_net_InetAddress_getHostAddress__(JAVA_OBJECT me); +JAVA_OBJECT java_net_InetAddress_getHostName__(JAVA_OBJECT me); +JAVA_OBJECT java_net_InetAddress_getCanonicalHostName__(JAVA_OBJECT me); +JAVA_OBJECT java_net_InetAddress_getLocalHost__(); +// Vtable index: 4 +JAVA_INT java_net_InetAddress_hashCode__(JAVA_OBJECT me); +// Vtable index: 15 +JAVA_BOOLEAN java_net_InetAddress_isMulticastAddress__(JAVA_OBJECT me); +JAVA_OBJECT java_net_InetAddress_lookupHostByName___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_getAliasesByNameImpl___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_getHostByAddrImpl___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_INT java_net_InetAddress_inetAddr___java_lang_String(JAVA_OBJECT n1); +JAVA_INT java_net_InetAddress_inetAddrImpl___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_inetNtoaImpl___int(JAVA_INT n1); +JAVA_OBJECT java_net_InetAddress_getHostByNameImpl___java_lang_String_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2); +JAVA_OBJECT java_net_InetAddress_getHostNameImpl__(); +JAVA_OBJECT java_net_InetAddress_getHostNameInternal___java_lang_String_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 5 +JAVA_OBJECT java_net_InetAddress_toString__(JAVA_OBJECT me); +JAVA_BOOLEAN java_net_InetAddress_isHostName___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_BOOLEAN java_net_InetAddress_isLoopbackAddress__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_BOOLEAN java_net_InetAddress_isLinkLocalAddress__(JAVA_OBJECT me); +// Vtable index: 16 +JAVA_BOOLEAN java_net_InetAddress_isSiteLocalAddress__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_net_InetAddress_isMCGlobal__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_BOOLEAN java_net_InetAddress_isMCNodeLocal__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_BOOLEAN java_net_InetAddress_isMCLinkLocal__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_BOOLEAN java_net_InetAddress_isMCSiteLocal__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_BOOLEAN java_net_InetAddress_isMCOrgLocal__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_net_InetAddress_isAnyLocalAddress__(JAVA_OBJECT me); +JAVA_BOOLEAN java_net_InetAddress_isReachable___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_BOOLEAN java_net_InetAddress_isReachable___java_net_NetworkInterface_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_BOOLEAN java_net_InetAddress_isReachableByMultiThread___java_net_NetworkInterface_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_BOOLEAN n4); +JAVA_BOOLEAN java_net_InetAddress_isReachableByICMPUseMultiThread___java_net_NetworkInterface_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_BOOLEAN java_net_InetAddress_isReachableByTCPUseMultiThread___java_net_NetworkInterface_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_BOOLEAN java_net_InetAddress_isReachableByTCP___java_net_InetAddress_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3); +JAVA_OBJECT java_net_InetAddress_getByAddress___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_getByAddress___byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_BOOLEAN java_net_InetAddress_isIPv4MappedAddress___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_getByAddress___java_lang_String_byte_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_net_InetAddress_getByAddressInternal___java_lang_String_byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3); +void java_net_InetAddress_intToBytes___int_byte_1ARRAY_int(JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3); +JAVA_INT java_net_InetAddress_bytesToInt___byte_1ARRAY_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT java_net_InetAddress_createHostNameFromIPAddress___java_lang_String(JAVA_OBJECT n1); +JAVA_BOOLEAN java_net_InetAddress_preferIPv6Addresses__(); +void java_net_InetAddress_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_net_InetAddress_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_net_InetAddress_readResolve__(JAVA_OBJECT me); +JAVA_OBJECT java_net_InetAddress_access$100__(); +JAVA_BOOLEAN java_net_InetAddress_access$200___java_net_InetAddress_java_net_InetAddress_java_net_InetAddress_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4); +JAVA_OBJECT java_net_InetAddress_access$300___java_net_InetAddress(JAVA_OBJECT n1); +JAVA_BOOLEAN java_net_InetAddress_access$402___java_net_InetAddress_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2); +JAVA_INT java_net_InetAddress_access$510___java_net_InetAddress(JAVA_OBJECT n1); +JAVA_INT java_net_InetAddress_access$500___java_net_InetAddress(JAVA_OBJECT n1); +void java_net_InetAddress___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_net_SocketException.c b/tests/nbody-java/java_net_SocketException.c new file mode 100644 index 0000000000000..c5ee870e19540 --- /dev/null +++ b/tests/nbody-java/java_net_SocketException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_net_SocketException.h" + +#define XMLVM_CURRENT_CLASS_NAME SocketException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_net_SocketException + +__TIB_DEFINITION_java_net_SocketException __TIB_java_net_SocketException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_net_SocketException, // classInitializer + "java.net.SocketException", // className + "java.net", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_IOException, // extends + sizeof(java_net_SocketException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_net_SocketException; +JAVA_OBJECT __CLASS_java_net_SocketException_1ARRAY; +JAVA_OBJECT __CLASS_java_net_SocketException_2ARRAY; +JAVA_OBJECT __CLASS_java_net_SocketException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_net_SocketException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_net_SocketException() +{ + staticInitializerLock(&__TIB_java_net_SocketException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_net_SocketException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_net_SocketException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_net_SocketException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_net_SocketException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_net_SocketException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_net_SocketException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.net.SocketException") + __INIT_IMPL_java_net_SocketException(); + } +} + +void __INIT_IMPL_java_net_SocketException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_IOException) + __TIB_java_net_SocketException.newInstanceFunc = __NEW_INSTANCE_java_net_SocketException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_net_SocketException.vtable, __TIB_java_io_IOException.vtable, sizeof(__TIB_java_io_IOException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_net_SocketException.numImplementedInterfaces = 1; + __TIB_java_net_SocketException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_net_SocketException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_net_SocketException.itableBegin = &__TIB_java_net_SocketException.itable[0]; + + _STATIC_java_net_SocketException_serialVersionUID = -5935874303556886934; + + __TIB_java_net_SocketException.declaredFields = &__field_reflection_data[0]; + __TIB_java_net_SocketException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_net_SocketException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_net_SocketException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_net_SocketException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_net_SocketException.methodDispatcherFunc = method_dispatcher; + __TIB_java_net_SocketException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_net_SocketException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_net_SocketException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_net_SocketException); + __TIB_java_net_SocketException.clazz = __CLASS_java_net_SocketException; + __TIB_java_net_SocketException.baseType = JAVA_NULL; + __CLASS_java_net_SocketException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_SocketException); + __CLASS_java_net_SocketException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_SocketException_1ARRAY); + __CLASS_java_net_SocketException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_SocketException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_net_SocketException] + //XMLVM_END_WRAPPER + + __TIB_java_net_SocketException.classInitialized = 1; +} + +void __DELETE_java_net_SocketException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_net_SocketException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_net_SocketException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_IOException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_net_SocketException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_net_SocketException() +{ XMLVM_CLASS_INIT(java_net_SocketException) +java_net_SocketException* me = (java_net_SocketException*) XMLVM_MALLOC(sizeof(java_net_SocketException)); + me->tib = &__TIB_java_net_SocketException; + __INIT_INSTANCE_MEMBERS_java_net_SocketException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_net_SocketException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_net_SocketException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_net_SocketException(); + java_net_SocketException___INIT___(me); + return me; +} + +JAVA_LONG java_net_SocketException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_net_SocketException) + return _STATIC_java_net_SocketException_serialVersionUID; +} + +void java_net_SocketException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_net_SocketException) +_STATIC_java_net_SocketException_serialVersionUID = v; +} + +void java_net_SocketException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_SocketException___INIT___] + XMLVM_ENTER_METHOD("java.net.SocketException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("SocketException.java", 35) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("SocketException.java", 36) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_SocketException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_SocketException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.net.SocketException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("SocketException.java", 46) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("SocketException.java", 47) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_net_SocketException.h b/tests/nbody-java/java_net_SocketException.h new file mode 100644 index 0000000000000..50a1ac49b193a --- /dev/null +++ b/tests/nbody-java/java_net_SocketException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_NET_SOCKETEXCEPTION__ +#define __JAVA_NET_SOCKETEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_net_SocketException 0 +// Implemented interfaces: +// Super Class: +#include "java_io_IOException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.net.SocketException +XMLVM_DEFINE_CLASS(java_net_SocketException, 8, XMLVM_ITABLE_SIZE_java_net_SocketException) + +extern JAVA_OBJECT __CLASS_java_net_SocketException; +extern JAVA_OBJECT __CLASS_java_net_SocketException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_net_SocketException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_net_SocketException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_net_SocketException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_net_SocketException \ + __INSTANCE_FIELDS_java_io_IOException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_net_SocketException \ + } java_net_SocketException + +struct java_net_SocketException { + __TIB_DEFINITION_java_net_SocketException* tib; + struct { + __INSTANCE_FIELDS_java_net_SocketException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_net_SocketException +#define XMLVM_FORWARD_DECL_java_net_SocketException +typedef struct java_net_SocketException java_net_SocketException; +#endif + +#define XMLVM_VTABLE_SIZE_java_net_SocketException 8 + +void __INIT_java_net_SocketException(); +void __INIT_IMPL_java_net_SocketException(); +void __DELETE_java_net_SocketException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_net_SocketException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_net_SocketException(); +JAVA_OBJECT __NEW_INSTANCE_java_net_SocketException(); +JAVA_LONG java_net_SocketException_GET_serialVersionUID(); +void java_net_SocketException_PUT_serialVersionUID(JAVA_LONG v); +void java_net_SocketException___INIT___(JAVA_OBJECT me); +void java_net_SocketException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_net_UnknownHostException.c b/tests/nbody-java/java_net_UnknownHostException.c new file mode 100644 index 0000000000000..7dcaeaed2caf1 --- /dev/null +++ b/tests/nbody-java/java_net_UnknownHostException.c @@ -0,0 +1,197 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "java_net_UnknownHostException.h" + +#define XMLVM_CURRENT_CLASS_NAME UnknownHostException +#define XMLVM_CURRENT_PKG_CLASS_NAME java_net_UnknownHostException + +__TIB_DEFINITION_java_net_UnknownHostException __TIB_java_net_UnknownHostException = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_net_UnknownHostException, // classInitializer + "java.net.UnknownHostException", // className + "java.net", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_IOException, // extends + sizeof(java_net_UnknownHostException), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_net_UnknownHostException; +JAVA_OBJECT __CLASS_java_net_UnknownHostException_1ARRAY; +JAVA_OBJECT __CLASS_java_net_UnknownHostException_2ARRAY; +JAVA_OBJECT __CLASS_java_net_UnknownHostException_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_net_UnknownHostException_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_net_UnknownHostException() +{ + staticInitializerLock(&__TIB_java_net_UnknownHostException); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_net_UnknownHostException.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_net_UnknownHostException.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_net_UnknownHostException); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_net_UnknownHostException.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_net_UnknownHostException.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_net_UnknownHostException.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.net.UnknownHostException") + __INIT_IMPL_java_net_UnknownHostException(); + } +} + +void __INIT_IMPL_java_net_UnknownHostException() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_IOException) + __TIB_java_net_UnknownHostException.newInstanceFunc = __NEW_INSTANCE_java_net_UnknownHostException; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_net_UnknownHostException.vtable, __TIB_java_io_IOException.vtable, sizeof(__TIB_java_io_IOException.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_net_UnknownHostException.numImplementedInterfaces = 1; + __TIB_java_net_UnknownHostException.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_net_UnknownHostException.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + // Initialize itable for this class + __TIB_java_net_UnknownHostException.itableBegin = &__TIB_java_net_UnknownHostException.itable[0]; + + _STATIC_java_net_UnknownHostException_serialVersionUID = -4639126076052875403; + + __TIB_java_net_UnknownHostException.declaredFields = &__field_reflection_data[0]; + __TIB_java_net_UnknownHostException.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_net_UnknownHostException.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_net_UnknownHostException.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_net_UnknownHostException.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_net_UnknownHostException.methodDispatcherFunc = method_dispatcher; + __TIB_java_net_UnknownHostException.declaredMethods = &__method_reflection_data[0]; + __TIB_java_net_UnknownHostException.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_net_UnknownHostException = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_net_UnknownHostException); + __TIB_java_net_UnknownHostException.clazz = __CLASS_java_net_UnknownHostException; + __TIB_java_net_UnknownHostException.baseType = JAVA_NULL; + __CLASS_java_net_UnknownHostException_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_UnknownHostException); + __CLASS_java_net_UnknownHostException_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_UnknownHostException_1ARRAY); + __CLASS_java_net_UnknownHostException_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_net_UnknownHostException_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_net_UnknownHostException] + //XMLVM_END_WRAPPER + + __TIB_java_net_UnknownHostException.classInitialized = 1; +} + +void __DELETE_java_net_UnknownHostException(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_net_UnknownHostException] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_net_UnknownHostException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_IOException(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_net_UnknownHostException] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_net_UnknownHostException() +{ XMLVM_CLASS_INIT(java_net_UnknownHostException) +java_net_UnknownHostException* me = (java_net_UnknownHostException*) XMLVM_MALLOC(sizeof(java_net_UnknownHostException)); + me->tib = &__TIB_java_net_UnknownHostException; + __INIT_INSTANCE_MEMBERS_java_net_UnknownHostException(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_net_UnknownHostException] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_net_UnknownHostException() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_net_UnknownHostException(); + java_net_UnknownHostException___INIT___(me); + return me; +} + +JAVA_LONG java_net_UnknownHostException_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_net_UnknownHostException) + return _STATIC_java_net_UnknownHostException_serialVersionUID; +} + +void java_net_UnknownHostException_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_net_UnknownHostException) +_STATIC_java_net_UnknownHostException_serialVersionUID = v; +} + +void java_net_UnknownHostException___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_net_UnknownHostException___INIT___] + XMLVM_ENTER_METHOD("java.net.UnknownHostException", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("UnknownHostException.java", 34) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("UnknownHostException.java", 35) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_net_UnknownHostException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_net_UnknownHostException___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.net.UnknownHostException", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("UnknownHostException.java", 45) + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("UnknownHostException.java", 46) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_net_UnknownHostException.h b/tests/nbody-java/java_net_UnknownHostException.h new file mode 100644 index 0000000000000..36dd9ba3d9127 --- /dev/null +++ b/tests/nbody-java/java_net_UnknownHostException.h @@ -0,0 +1,58 @@ +#ifndef __JAVA_NET_UNKNOWNHOSTEXCEPTION__ +#define __JAVA_NET_UNKNOWNHOSTEXCEPTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_net_UnknownHostException 0 +// Implemented interfaces: +// Super Class: +#include "java_io_IOException.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.net.UnknownHostException +XMLVM_DEFINE_CLASS(java_net_UnknownHostException, 8, XMLVM_ITABLE_SIZE_java_net_UnknownHostException) + +extern JAVA_OBJECT __CLASS_java_net_UnknownHostException; +extern JAVA_OBJECT __CLASS_java_net_UnknownHostException_1ARRAY; +extern JAVA_OBJECT __CLASS_java_net_UnknownHostException_2ARRAY; +extern JAVA_OBJECT __CLASS_java_net_UnknownHostException_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_net_UnknownHostException +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_net_UnknownHostException \ + __INSTANCE_FIELDS_java_io_IOException; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_net_UnknownHostException \ + } java_net_UnknownHostException + +struct java_net_UnknownHostException { + __TIB_DEFINITION_java_net_UnknownHostException* tib; + struct { + __INSTANCE_FIELDS_java_net_UnknownHostException; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_net_UnknownHostException +#define XMLVM_FORWARD_DECL_java_net_UnknownHostException +typedef struct java_net_UnknownHostException java_net_UnknownHostException; +#endif + +#define XMLVM_VTABLE_SIZE_java_net_UnknownHostException 8 + +void __INIT_java_net_UnknownHostException(); +void __INIT_IMPL_java_net_UnknownHostException(); +void __DELETE_java_net_UnknownHostException(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_net_UnknownHostException(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_net_UnknownHostException(); +JAVA_OBJECT __NEW_INSTANCE_java_net_UnknownHostException(); +JAVA_LONG java_net_UnknownHostException_GET_serialVersionUID(); +void java_net_UnknownHostException_PUT_serialVersionUID(JAVA_LONG v); +void java_net_UnknownHostException___INIT___(JAVA_OBJECT me); +void java_net_UnknownHostException___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_nio_Buffer.c b/tests/nbody-java/java_nio_Buffer.c new file mode 100644 index 0000000000000..9a37dff44bad9 --- /dev/null +++ b/tests/nbody-java/java_nio_Buffer.c @@ -0,0 +1,524 @@ +#include "xmlvm.h" + +#include "java_nio_Buffer.h" + +#define XMLVM_CURRENT_CLASS_NAME Buffer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_Buffer + +__TIB_DEFINITION_java_nio_Buffer __TIB_java_nio_Buffer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_Buffer, // classInitializer + "java.nio.Buffer", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_Buffer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_Buffer; +JAVA_OBJECT __CLASS_java_nio_Buffer_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_Buffer_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_Buffer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_nio_Buffer_UNSET_MARK; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_Buffer() +{ + staticInitializerLock(&__TIB_java_nio_Buffer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_Buffer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_Buffer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_Buffer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_Buffer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_Buffer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_Buffer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.Buffer") + __INIT_IMPL_java_nio_Buffer(); + } +} + +void __INIT_IMPL_java_nio_Buffer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_Buffer.newInstanceFunc = __NEW_INSTANCE_java_nio_Buffer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_Buffer.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_nio_Buffer.numImplementedInterfaces = 0; + __TIB_java_nio_Buffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_nio_Buffer_UNSET_MARK = -1; + + __TIB_java_nio_Buffer.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_Buffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_Buffer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_Buffer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_Buffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_Buffer.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_Buffer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_Buffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_Buffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_Buffer); + __TIB_java_nio_Buffer.clazz = __CLASS_java_nio_Buffer; + __TIB_java_nio_Buffer.baseType = JAVA_NULL; + __CLASS_java_nio_Buffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer); + __CLASS_java_nio_Buffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer_1ARRAY); + __CLASS_java_nio_Buffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_Buffer] + //XMLVM_END_WRAPPER + + __TIB_java_nio_Buffer.classInitialized = 1; +} + +void __DELETE_java_nio_Buffer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_Buffer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_Buffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_Buffer*) me)->fields.java_nio_Buffer.capacity_ = 0; + ((java_nio_Buffer*) me)->fields.java_nio_Buffer.limit_ = 0; + ((java_nio_Buffer*) me)->fields.java_nio_Buffer.mark_ = 0; + ((java_nio_Buffer*) me)->fields.java_nio_Buffer.position_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_Buffer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_Buffer() +{ XMLVM_CLASS_INIT(java_nio_Buffer) +java_nio_Buffer* me = (java_nio_Buffer*) XMLVM_MALLOC(sizeof(java_nio_Buffer)); + me->tib = &__TIB_java_nio_Buffer; + __INIT_INSTANCE_MEMBERS_java_nio_Buffer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_Buffer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_Buffer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT java_nio_Buffer_GET_UNSET_MARK() +{ + XMLVM_CLASS_INIT(java_nio_Buffer) + return _STATIC_java_nio_Buffer_UNSET_MARK; +} + +void java_nio_Buffer_PUT_UNSET_MARK(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_Buffer) +_STATIC_java_nio_Buffer_UNSET_MARK = v; +} + +void java_nio_Buffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer___INIT____int] + XMLVM_ENTER_METHOD("java.nio.Buffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Buffer.java", 85) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Buffer.java", 70) + _r0.i = -1; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 76) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 86) + if (_r2.i >= 0) goto label17; + XMLVM_SOURCE_POSITION("Buffer.java", 87) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("Buffer.java", 89) + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r2.i; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_ = _r2.i; + XMLVM_SOURCE_POSITION("Buffer.java", 90) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_Buffer_capacity__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_capacity__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "capacity", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 145) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_Buffer_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_clear__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 159) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 160) + _r0.i = -1; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 161) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 162) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_Buffer_flip__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_flip__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "flip", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 176) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 177) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 178) + _r0.i = -1; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 179) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_Buffer_hasRemaining__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_hasRemaining__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "hasRemaining", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 205) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i >= _r1.i) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_Buffer_limit__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_limit__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "limit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 231) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_Buffer_limit___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_limit___int] + XMLVM_ENTER_METHOD("java.nio.Buffer", "limit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + _r1.i = -1; + XMLVM_SOURCE_POSITION("Buffer.java", 250) + if (_r3.i < 0) goto label7; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.capacity_; + if (_r3.i <= _r0.i) goto label13; + label7:; + XMLVM_SOURCE_POSITION("Buffer.java", 251) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("Buffer.java", 254) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_ = _r3.i; + XMLVM_SOURCE_POSITION("Buffer.java", 255) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + if (_r0.i <= _r3.i) goto label21; + XMLVM_SOURCE_POSITION("Buffer.java", 256) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r3.i; + label21:; + XMLVM_SOURCE_POSITION("Buffer.java", 258) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_; + if (_r0.i == _r1.i) goto label31; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_; + if (_r0.i <= _r3.i) goto label31; + XMLVM_SOURCE_POSITION("Buffer.java", 259) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_ = _r1.i; + label31:; + XMLVM_SOURCE_POSITION("Buffer.java", 261) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_Buffer_mark__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_mark__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "mark", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 271) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 272) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_Buffer_position__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_position__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "position", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 281) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_Buffer_position___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_position___int] + XMLVM_ENTER_METHOD("java.nio.Buffer", "position", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.i = n1; + _r2.i = -1; + XMLVM_SOURCE_POSITION("Buffer.java", 298) + if (_r4.i < 0) goto label7; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.limit_; + if (_r4.i <= _r0.i) goto label13; + label7:; + XMLVM_SOURCE_POSITION("Buffer.java", 299) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("Buffer.java", 302) + XMLVM_CHECK_NPE(3) + ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_ = _r4.i; + XMLVM_SOURCE_POSITION("Buffer.java", 303) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_; + if (_r0.i == _r2.i) goto label27; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_; + if (_r0.i <= _r1.i) goto label27; + XMLVM_SOURCE_POSITION("Buffer.java", 304) + XMLVM_CHECK_NPE(3) + ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_ = _r2.i; + label27:; + XMLVM_SOURCE_POSITION("Buffer.java", 306) + XMLVM_EXIT_METHOD() + return _r3.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_Buffer_remaining__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_remaining__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "remaining", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 316) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i - _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_Buffer_reset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_reset__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "reset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 327) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_; + _r1.i = -1; + if (_r0.i != _r1.i) goto label11; + XMLVM_SOURCE_POSITION("Buffer.java", 328) + + + // Red class access removed: java.nio.InvalidMarkException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.InvalidMarkException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("Buffer.java", 330) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_; + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 331) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_Buffer_rewind__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_rewind__] + XMLVM_ENTER_METHOD("java.nio.Buffer", "rewind", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Buffer.java", 343) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 344) + _r0.i = -1; + XMLVM_CHECK_NPE(1) + ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i; + XMLVM_SOURCE_POSITION("Buffer.java", 345) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_Buffer.h b/tests/nbody-java/java_nio_Buffer.h new file mode 100644 index 0000000000000..bcfe68a370d1f --- /dev/null +++ b/tests/nbody-java/java_nio_Buffer.h @@ -0,0 +1,84 @@ +#ifndef __JAVA_NIO_BUFFER__ +#define __JAVA_NIO_BUFFER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_Buffer 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +// Class declarations for java.nio.Buffer +XMLVM_DEFINE_CLASS(java_nio_Buffer, 11, XMLVM_ITABLE_SIZE_java_nio_Buffer) + +extern JAVA_OBJECT __CLASS_java_nio_Buffer; +extern JAVA_OBJECT __CLASS_java_nio_Buffer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_Buffer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_Buffer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_Buffer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_Buffer \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_INT capacity_; \ + JAVA_INT limit_; \ + JAVA_INT mark_; \ + JAVA_INT position_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_Buffer \ + } java_nio_Buffer + +struct java_nio_Buffer { + __TIB_DEFINITION_java_nio_Buffer* tib; + struct { + __INSTANCE_FIELDS_java_nio_Buffer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_Buffer +#define XMLVM_FORWARD_DECL_java_nio_Buffer +typedef struct java_nio_Buffer java_nio_Buffer; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_Buffer 11 +#define XMLVM_VTABLE_IDX_java_nio_Buffer_array__ 7 +#define XMLVM_VTABLE_IDX_java_nio_Buffer_arrayOffset__ 6 +#define XMLVM_VTABLE_IDX_java_nio_Buffer_hasArray__ 8 +#define XMLVM_VTABLE_IDX_java_nio_Buffer_isDirect__ 9 +#define XMLVM_VTABLE_IDX_java_nio_Buffer_isReadOnly__ 10 + +void __INIT_java_nio_Buffer(); +void __INIT_IMPL_java_nio_Buffer(); +void __DELETE_java_nio_Buffer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_Buffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_Buffer(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_Buffer(); +JAVA_INT java_nio_Buffer_GET_UNSET_MARK(); +void java_nio_Buffer_PUT_UNSET_MARK(JAVA_INT v); +void java_nio_Buffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 7 +JAVA_OBJECT java_nio_Buffer_array__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_INT java_nio_Buffer_arrayOffset__(JAVA_OBJECT me); +JAVA_INT java_nio_Buffer_capacity__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_Buffer_clear__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_Buffer_flip__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_BOOLEAN java_nio_Buffer_hasArray__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_Buffer_hasRemaining__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_BOOLEAN java_nio_Buffer_isDirect__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_nio_Buffer_isReadOnly__(JAVA_OBJECT me); +JAVA_INT java_nio_Buffer_limit__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_Buffer_limit___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_nio_Buffer_mark__(JAVA_OBJECT me); +JAVA_INT java_nio_Buffer_position__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_Buffer_position___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_nio_Buffer_remaining__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_Buffer_reset__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_Buffer_rewind__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_BufferFactory.c b/tests/nbody-java/java_nio_BufferFactory.c new file mode 100644 index 0000000000000..4065f2ec0ad4d --- /dev/null +++ b/tests/nbody-java/java_nio_BufferFactory.c @@ -0,0 +1,494 @@ +#include "xmlvm.h" +#include "java_lang_CharSequence.h" +#include "java_nio_ByteBuffer.h" +#include "java_nio_CharBuffer.h" +#include "java_nio_ReadWriteCharArrayBuffer.h" +#include "java_nio_ReadWriteHeapByteBuffer.h" + +#include "java_nio_BufferFactory.h" + +#define XMLVM_CURRENT_CLASS_NAME BufferFactory +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_BufferFactory + +__TIB_DEFINITION_java_nio_BufferFactory __TIB_java_nio_BufferFactory = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_BufferFactory, // classInitializer + "java.nio.BufferFactory", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_BufferFactory), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_BufferFactory; +JAVA_OBJECT __CLASS_java_nio_BufferFactory_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_BufferFactory_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_BufferFactory_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_BufferFactory() +{ + staticInitializerLock(&__TIB_java_nio_BufferFactory); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_BufferFactory.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_BufferFactory.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_BufferFactory); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_BufferFactory.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_BufferFactory.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_BufferFactory.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.BufferFactory") + __INIT_IMPL_java_nio_BufferFactory(); + } +} + +void __INIT_IMPL_java_nio_BufferFactory() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_BufferFactory.newInstanceFunc = __NEW_INSTANCE_java_nio_BufferFactory; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_BufferFactory.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_nio_BufferFactory.numImplementedInterfaces = 0; + __TIB_java_nio_BufferFactory.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_nio_BufferFactory.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_BufferFactory.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_BufferFactory.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_BufferFactory.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_BufferFactory.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_BufferFactory.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_BufferFactory.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_BufferFactory.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_BufferFactory = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_BufferFactory); + __TIB_java_nio_BufferFactory.clazz = __CLASS_java_nio_BufferFactory; + __TIB_java_nio_BufferFactory.baseType = JAVA_NULL; + __CLASS_java_nio_BufferFactory_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_BufferFactory); + __CLASS_java_nio_BufferFactory_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_BufferFactory_1ARRAY); + __CLASS_java_nio_BufferFactory_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_BufferFactory_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_BufferFactory] + //XMLVM_END_WRAPPER + + __TIB_java_nio_BufferFactory.classInitialized = 1; +} + +void __DELETE_java_nio_BufferFactory(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_BufferFactory] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_BufferFactory(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_BufferFactory] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_BufferFactory() +{ XMLVM_CLASS_INIT(java_nio_BufferFactory) +java_nio_BufferFactory* me = (java_nio_BufferFactory*) XMLVM_MALLOC(sizeof(java_nio_BufferFactory)); + me->tib = &__TIB_java_nio_BufferFactory; + __INIT_INSTANCE_MEMBERS_java_nio_BufferFactory(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_BufferFactory] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_BufferFactory() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_nio_BufferFactory(); + java_nio_BufferFactory___INIT___(me); + return me; +} + +void java_nio_BufferFactory___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory___INIT___] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("BufferFactory.java", 28) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newByteBuffer___byte_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newByteBuffer___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newByteBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 38) + _r0.o = __NEW_java_nio_ReadWriteHeapByteBuffer(); + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newByteBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newByteBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newByteBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 49) + _r0.o = __NEW_java_nio_ReadWriteHeapByteBuffer(); + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteHeapByteBuffer___INIT____int(_r0.o, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newCharBuffer___char_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newCharBuffer___char_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newCharBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 60) + _r0.o = __NEW_java_nio_ReadWriteCharArrayBuffer(); + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteCharArrayBuffer___INIT____char_1ARRAY(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newCharBuffer___java_lang_CharSequence(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newCharBuffer___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newCharBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 71) + + + // Red class access removed: java.nio.CharSequenceAdapter::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.CharSequenceAdapter:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newCharBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newCharBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newCharBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 82) + _r0.o = __NEW_java_nio_ReadWriteCharArrayBuffer(); + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteCharArrayBuffer___INIT____int(_r0.o, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newDirectByteBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newDirectByteBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newDirectByteBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 93) + + + // Red class access removed: java.nio.ReadWriteDirectByteBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteDirectByteBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newDoubleBuffer___double_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newDoubleBuffer___double_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newDoubleBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 104) + + + // Red class access removed: java.nio.ReadWriteDoubleArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteDoubleArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newDoubleBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newDoubleBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newDoubleBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 115) + + + // Red class access removed: java.nio.ReadWriteDoubleArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteDoubleArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newFloatBuffer___float_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newFloatBuffer___float_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newFloatBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 126) + + + // Red class access removed: java.nio.ReadWriteFloatArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteFloatArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newFloatBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newFloatBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newFloatBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 137) + + + // Red class access removed: java.nio.ReadWriteFloatArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteFloatArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newIntBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newIntBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newIntBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 148) + + + // Red class access removed: java.nio.ReadWriteIntArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteIntArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newIntBuffer___int_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newIntBuffer___int_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newIntBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 159) + + + // Red class access removed: java.nio.ReadWriteIntArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteIntArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newLongBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newLongBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newLongBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 170) + + + // Red class access removed: java.nio.ReadWriteLongArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteLongArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newLongBuffer___long_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newLongBuffer___long_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newLongBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 181) + + + // Red class access removed: java.nio.ReadWriteLongArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteLongArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newShortBuffer___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newShortBuffer___int] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newShortBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 192) + + + // Red class access removed: java.nio.ReadWriteShortArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteShortArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_BufferFactory_newShortBuffer___short_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_BufferFactory) + //XMLVM_BEGIN_WRAPPER[java_nio_BufferFactory_newShortBuffer___short_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.BufferFactory", "newShortBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BufferFactory.java", 203) + + + // Red class access removed: java.nio.ReadWriteShortArrayBuffer::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadWriteShortArrayBuffer:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_BufferFactory.h b/tests/nbody-java/java_nio_BufferFactory.h new file mode 100644 index 0000000000000..90452d3221417 --- /dev/null +++ b/tests/nbody-java/java_nio_BufferFactory.h @@ -0,0 +1,87 @@ +#ifndef __JAVA_NIO_BUFFERFACTORY__ +#define __JAVA_NIO_BUFFERFACTORY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_BufferFactory 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +XMLVM_FORWARD_DECL(java_lang_CharSequence) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ReadWriteCharArrayBuffer +#define XMLVM_FORWARD_DECL_java_nio_ReadWriteCharArrayBuffer +XMLVM_FORWARD_DECL(java_nio_ReadWriteCharArrayBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ReadWriteHeapByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ReadWriteHeapByteBuffer +XMLVM_FORWARD_DECL(java_nio_ReadWriteHeapByteBuffer) +#endif +// Class declarations for java.nio.BufferFactory +XMLVM_DEFINE_CLASS(java_nio_BufferFactory, 6, XMLVM_ITABLE_SIZE_java_nio_BufferFactory) + +extern JAVA_OBJECT __CLASS_java_nio_BufferFactory; +extern JAVA_OBJECT __CLASS_java_nio_BufferFactory_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_BufferFactory_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_BufferFactory_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_BufferFactory +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_BufferFactory \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_BufferFactory \ + } java_nio_BufferFactory + +struct java_nio_BufferFactory { + __TIB_DEFINITION_java_nio_BufferFactory* tib; + struct { + __INSTANCE_FIELDS_java_nio_BufferFactory; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_BufferFactory +#define XMLVM_FORWARD_DECL_java_nio_BufferFactory +typedef struct java_nio_BufferFactory java_nio_BufferFactory; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_BufferFactory 6 + +void __INIT_java_nio_BufferFactory(); +void __INIT_IMPL_java_nio_BufferFactory(); +void __DELETE_java_nio_BufferFactory(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_BufferFactory(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_BufferFactory(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_BufferFactory(); +void java_nio_BufferFactory___INIT___(JAVA_OBJECT me); +JAVA_OBJECT java_nio_BufferFactory_newByteBuffer___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_BufferFactory_newByteBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newCharBuffer___char_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_BufferFactory_newCharBuffer___java_lang_CharSequence(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_BufferFactory_newCharBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newDirectByteBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newDoubleBuffer___double_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_BufferFactory_newDoubleBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newFloatBuffer___float_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_BufferFactory_newFloatBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newIntBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newIntBuffer___int_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_BufferFactory_newLongBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newLongBuffer___long_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_BufferFactory_newShortBuffer___int(JAVA_INT n1); +JAVA_OBJECT java_nio_BufferFactory_newShortBuffer___short_1ARRAY(JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_nio_ByteBuffer.c b/tests/nbody-java/java_nio_ByteBuffer.c new file mode 100644 index 0000000000000..ff1cda80e289d --- /dev/null +++ b/tests/nbody-java/java_nio_ByteBuffer.c @@ -0,0 +1,941 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_nio_BufferFactory.h" +#include "java_nio_CharBuffer.h" +#include "org_apache_harmony_luni_platform_Endianness.h" + +#include "java_nio_ByteBuffer.h" + +#define XMLVM_CURRENT_CLASS_NAME ByteBuffer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_ByteBuffer + +__TIB_DEFINITION_java_nio_ByteBuffer __TIB_java_nio_ByteBuffer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_ByteBuffer, // classInitializer + "java.nio.ByteBuffer", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/nio/Buffer;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_Buffer, // extends + sizeof(java_nio_ByteBuffer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_ByteBuffer; +JAVA_OBJECT __CLASS_java_nio_ByteBuffer_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_ByteBuffer_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_ByteBuffer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_ByteBuffer() +{ + staticInitializerLock(&__TIB_java_nio_ByteBuffer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_ByteBuffer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_ByteBuffer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_ByteBuffer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_ByteBuffer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_ByteBuffer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_ByteBuffer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.ByteBuffer") + __INIT_IMPL_java_nio_ByteBuffer(); + } +} + +void __INIT_IMPL_java_nio_ByteBuffer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_Buffer) + __TIB_java_nio_ByteBuffer.newInstanceFunc = __NEW_INSTANCE_java_nio_ByteBuffer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_ByteBuffer.vtable, __TIB_java_nio_Buffer.vtable, sizeof(__TIB_java_nio_Buffer.vtable)); + // Initialize vtable for this class + __TIB_java_nio_ByteBuffer.vtable[7] = (VTABLE_PTR) &java_nio_ByteBuffer_array__; + __TIB_java_nio_ByteBuffer.vtable[6] = (VTABLE_PTR) &java_nio_ByteBuffer_arrayOffset__; + __TIB_java_nio_ByteBuffer.vtable[1] = (VTABLE_PTR) &java_nio_ByteBuffer_equals___java_lang_Object; + __TIB_java_nio_ByteBuffer.vtable[34] = (VTABLE_PTR) &java_nio_ByteBuffer_get___byte_1ARRAY_int_int; + __TIB_java_nio_ByteBuffer.vtable[8] = (VTABLE_PTR) &java_nio_ByteBuffer_hasArray__; + __TIB_java_nio_ByteBuffer.vtable[4] = (VTABLE_PTR) &java_nio_ByteBuffer_hashCode__; + __TIB_java_nio_ByteBuffer.vtable[52] = (VTABLE_PTR) &java_nio_ByteBuffer_put___byte_1ARRAY_int_int; + __TIB_java_nio_ByteBuffer.vtable[5] = (VTABLE_PTR) &java_nio_ByteBuffer_toString__; + __TIB_java_nio_ByteBuffer.vtable[19] = (VTABLE_PTR) &java_nio_ByteBuffer_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_nio_ByteBuffer.numImplementedInterfaces = 1; + __TIB_java_nio_ByteBuffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_nio_ByteBuffer.implementedInterfaces[0][0] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_nio_ByteBuffer.itableBegin = &__TIB_java_nio_ByteBuffer.itable[0]; + __TIB_java_nio_ByteBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_ByteBuffer.vtable[19]; + + + __TIB_java_nio_ByteBuffer.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_ByteBuffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_ByteBuffer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_ByteBuffer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_ByteBuffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_ByteBuffer.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_ByteBuffer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_ByteBuffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_ByteBuffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_ByteBuffer); + __TIB_java_nio_ByteBuffer.clazz = __CLASS_java_nio_ByteBuffer; + __TIB_java_nio_ByteBuffer.baseType = JAVA_NULL; + __CLASS_java_nio_ByteBuffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ByteBuffer); + __CLASS_java_nio_ByteBuffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ByteBuffer_1ARRAY); + __CLASS_java_nio_ByteBuffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ByteBuffer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_ByteBuffer] + //XMLVM_END_WRAPPER + + __TIB_java_nio_ByteBuffer.classInitialized = 1; +} + +void __DELETE_java_nio_ByteBuffer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_ByteBuffer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_Buffer(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_ByteBuffer*) me)->fields.java_nio_ByteBuffer.order_ = (org_apache_harmony_luni_platform_Endianness*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_ByteBuffer() +{ XMLVM_CLASS_INIT(java_nio_ByteBuffer) +java_nio_ByteBuffer* me = (java_nio_ByteBuffer*) XMLVM_MALLOC(sizeof(java_nio_ByteBuffer)); + me->tib = &__TIB_java_nio_ByteBuffer; + __INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_ByteBuffer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_ByteBuffer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_nio_ByteBuffer_allocate___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_ByteBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_allocate___int] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "allocate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 49) + if (_r1.i >= 0) goto label8; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 50) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 52) + _r0.o = java_nio_BufferFactory_newByteBuffer___int(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_allocateDirect___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_ByteBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_allocateDirect___int] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "allocateDirect", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 65) + if (_r1.i >= 0) goto label8; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 66) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 68) + _r0.o = java_nio_BufferFactory_newDirectByteBuffer___int(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_wrap___byte_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_ByteBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_wrap___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "wrap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 82) + _r0.o = java_nio_BufferFactory_newByteBuffer___byte_1ARRAY(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_nio_ByteBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "wrap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = n1; + _r6.i = n2; + _r7.i = n3; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 104) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 105) + if (_r6.i < 0) goto label13; + if (_r7.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r6.i; + _r3.l = (JAVA_LONG) _r7.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 106) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 109) + _r0.o = java_nio_BufferFactory_newByteBuffer___byte_1ARRAY(_r5.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 110) + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.position_ = _r6.i; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 111) + _r1.i = _r6.i + _r7.i; + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.limit_ = _r1.i; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 113) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_ByteBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer___INIT____int] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 128) + XMLVM_CHECK_NPE(1) + java_nio_Buffer___INIT____int(_r1.o, _r2.i); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 119) + _r0.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + XMLVM_CHECK_NPE(1) + ((java_nio_ByteBuffer*) _r1.o)->fields.java_nio_ByteBuffer.order_ = _r0.o; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 129) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_array__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_array__] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "array", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 141) + //java_nio_ByteBuffer_protectedArray__[37] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r1.o)->tib->vtable[37])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_ByteBuffer_arrayOffset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_arrayOffset__] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "arrayOffset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 158) + //java_nio_ByteBuffer_protectedArrayOffset__[36] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r1.o)->tib->vtable[36])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 306) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.i = java_nio_Buffer_remaining__(_r7.o); + if (_r0.i >= _r1.i) goto label33; + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + label14:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 308) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.position_; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 309) + XMLVM_CHECK_NPE(7) + _r2.i = ((java_nio_Buffer*) _r7.o)->fields.java_nio_Buffer.position_; + _r5 = _r2; + _r2 = _r0; + _r0 = _r5; + label21:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 311) + if (_r2.i > 0) goto label38; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 321) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.i = java_nio_Buffer_remaining__(_r7.o); + _r0.i = _r0.i - _r1.i; + label32:; + XMLVM_EXIT_METHOD() + return _r0.i; + label33:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 307) + XMLVM_CHECK_NPE(7) + _r0.i = java_nio_Buffer_remaining__(_r7.o); + goto label14; + label38:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 312) + //java_nio_ByteBuffer_get___int[35] + XMLVM_CHECK_NPE(6) + _r3.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r6.o)->tib->vtable[35])(_r6.o, _r1.i); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 313) + //java_nio_ByteBuffer_get___int[35] + XMLVM_CHECK_NPE(7) + _r4.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r7.o)->tib->vtable[35])(_r7.o, _r0.i); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 314) + if (_r3.i == _r4.i) goto label54; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 315) + if (_r3.i >= _r4.i) goto label52; + _r0.i = -1; + goto label32; + label52:; + _r0.i = 1; + goto label32; + label54:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 317) + _r1.i = _r1.i + 1; + _r0.i = _r0.i + 1; + _r2.i = _r2.i + -1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 319) + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_ByteBuffer_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 353) + XMLVM_CLASS_INIT(java_nio_ByteBuffer) + _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_nio_ByteBuffer); + if (_r0.i != 0) goto label8; + _r0 = _r4; + label7:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 354) + XMLVM_SOURCE_POSITION("ByteBuffer.java", 369) + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 356) + _r7.o = _r7.o; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 358) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.i = java_nio_Buffer_remaining__(_r7.o); + if (_r0.i == _r1.i) goto label22; + _r0 = _r4; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 359) + goto label7; + label22:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 362) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.position_; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 363) + XMLVM_CHECK_NPE(7) + _r1.i = ((java_nio_Buffer*) _r7.o)->fields.java_nio_Buffer.position_; + _r2 = _r0; + _r0 = _r5; + label28:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 365) + if (_r0.i == 0) goto label7; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.limit_; + if (_r2.i >= _r3.i) goto label7; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 366) + _r0.i = _r2.i + 1; + //java_nio_ByteBuffer_get___int[35] + XMLVM_CHECK_NPE(6) + _r2.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r6.o)->tib->vtable[35])(_r6.o, _r2.i); + _r3.i = _r1.i + 1; + //java_nio_ByteBuffer_get___int[35] + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r7.o)->tib->vtable[35])(_r7.o, _r1.i); + if (_r2.i != _r1.i) goto label53; + _r1 = _r5; + label49:; + _r2 = _r0; + _r0 = _r1; + _r1 = _r3; + goto label28; + label53:; + _r1 = _r4; + goto label49; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_get___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_get___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 395) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + //java_nio_ByteBuffer_get___byte_1ARRAY_int_int[34] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_nio_ByteBuffer*) _r2.o)->tib->vtable[34])(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_get___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_get___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 418) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 419) + if (_r7.i < 0) goto label13; + if (_r8.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r7.i; + _r3.l = (JAVA_LONG) _r8.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 420) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 423) + XMLVM_CHECK_NPE(5) + _r0.i = java_nio_Buffer_remaining__(_r5.o); + if (_r8.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 424) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + _r0 = _r7; + label32:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 426) + _r1.i = _r7.i + _r8.i; + if (_r0.i < _r1.i) goto label37; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 429) + XMLVM_EXIT_METHOD() + return _r5.o; + label37:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 427) + //java_nio_ByteBuffer_get__[33] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_BYTE (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r5.o)->tib->vtable[33])(_r5.o); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.i; + _r0.i = _r0.i + 1; + goto label32; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_ByteBuffer_hasArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_hasArray__] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "hasArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 621) + //java_nio_ByteBuffer_protectedHasArray__[38] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r1.o)->tib->vtable[38])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_ByteBuffer_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_hashCode__] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 632) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 633) + _r1.i = 0; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label6:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 634) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + if (_r1.i < _r2.i) goto label11; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 637) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 635) + _r2.i = _r1.i + 1; + //java_nio_ByteBuffer_get___int[35] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r4.o)->tib->vtable[35])(_r4.o, _r1.i); + _r0.i = _r0.i + _r1.i; + _r1 = _r2; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_order__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_order__] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "order", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 658) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_ByteBuffer*) _r2.o)->fields.java_nio_ByteBuffer.order_; + _r1.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + if (_r0.o != _r1.o) goto label9; + + + // Red class access removed: java.nio.ByteOrder,java.nio.ByteOrder::BIG_ENDIAN + XMLVM_RED_CLASS_DEPENDENCY(); + label8:; + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 659) + + + // Red class access removed: java.nio.ByteOrder,java.nio.ByteOrder::LITTLE_ENDIAN + XMLVM_RED_CLASS_DEPENDENCY(); + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_order___java_nio_ByteOrder(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_order___java_nio_ByteOrder] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "order", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 672) + XMLVM_CHECK_NPE(1) + _r0.o = java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "orderImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 676) + + + // Red class access removed: java.nio.ByteOrder,java.nio.ByteOrder::BIG_ENDIAN + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r2.o != _r0.o) goto label9; + _r0.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + label6:; + XMLVM_CHECK_NPE(1) + ((java_nio_ByteBuffer*) _r1.o)->fields.java_nio_ByteBuffer.order_ = _r0.o; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 678) + XMLVM_EXIT_METHOD() + return _r1.o; + label9:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 677) + _r0.o = org_apache_harmony_luni_platform_Endianness_GET_LITTLE_ENDIAN(); + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_put___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_put___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 732) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + //java_nio_ByteBuffer_put___byte_1ARRAY_int_int[52] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_nio_ByteBuffer*) _r2.o)->tib->vtable[52])(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_put___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_put___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 757) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 758) + if (_r7.i < 0) goto label13; + if (_r8.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r7.i; + _r3.l = (JAVA_LONG) _r8.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 759) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 762) + XMLVM_CHECK_NPE(5) + _r0.i = java_nio_Buffer_remaining__(_r5.o); + if (_r8.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 763) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + _r0 = _r7; + label32:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 765) + _r1.i = _r7.i + _r8.i; + if (_r0.i < _r1.i) goto label37; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 768) + XMLVM_EXIT_METHOD() + return _r5.o; + label37:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 766) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(5) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r5.o)->tib->vtable[51])(_r5.o, _r1.i); + _r0.i = _r0.i + 1; + goto label32; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_put___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_put___java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 788) + if (_r3.o != _r2.o) goto label8; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 789) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 791) + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_Buffer_remaining__(_r3.o); + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_Buffer_remaining__(_r2.o); + if (_r0.i <= _r1.i) goto label24; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 792) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 794) + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_Buffer_remaining__(_r3.o); + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 795) + XMLVM_CHECK_NPE(3) + java_nio_ByteBuffer_get___byte_1ARRAY(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 796) + XMLVM_CHECK_NPE(2) + java_nio_ByteBuffer_put___byte_1ARRAY(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 797) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ByteBuffer_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_toString__] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1050) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1051) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_Class_getName__(_r1.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1052) + // ", status: capacity=" + _r1.o = xmlvm_create_java_string_from_pool(719); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1053) + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_Buffer_capacity__(_r2.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1054) + // " position=" + _r1.o = xmlvm_create_java_string_from_pool(720); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1055) + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_Buffer_position__(_r2.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1056) + // " limit=" + _r1.o = xmlvm_create_java_string_from_pool(721); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1057) + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_Buffer_limit__(_r2.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1058) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_ByteBuffer_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ByteBuffer.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_ByteBuffer.h b/tests/nbody-java/java_nio_ByteBuffer.h new file mode 100644 index 0000000000000..ac98a7e428fd3 --- /dev/null +++ b/tests/nbody-java/java_nio_ByteBuffer.h @@ -0,0 +1,249 @@ +#ifndef __JAVA_NIO_BYTEBUFFER__ +#define __JAVA_NIO_BYTEBUFFER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_ByteBuffer 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_nio_Buffer.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_BufferFactory +#define XMLVM_FORWARD_DECL_java_nio_BufferFactory +XMLVM_FORWARD_DECL(java_nio_BufferFactory) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +XMLVM_FORWARD_DECL(org_apache_harmony_luni_platform_Endianness) +#endif +// Class declarations for java.nio.ByteBuffer +XMLVM_DEFINE_CLASS(java_nio_ByteBuffer, 55, XMLVM_ITABLE_SIZE_java_nio_ByteBuffer) + +extern JAVA_OBJECT __CLASS_java_nio_ByteBuffer; +extern JAVA_OBJECT __CLASS_java_nio_ByteBuffer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_ByteBuffer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_ByteBuffer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_ByteBuffer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_ByteBuffer \ + __INSTANCE_FIELDS_java_nio_Buffer; \ + struct { \ + JAVA_OBJECT order_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_ByteBuffer \ + } java_nio_ByteBuffer + +struct java_nio_ByteBuffer { + __TIB_DEFINITION_java_nio_ByteBuffer* tib; + struct { + __INSTANCE_FIELDS_java_nio_ByteBuffer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +typedef struct java_nio_ByteBuffer java_nio_ByteBuffer; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_ByteBuffer 55 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_array__ 7 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_arrayOffset__ 6 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_asCharBuffer__ 11 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_asDoubleBuffer__ 12 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_asFloatBuffer__ 13 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_asIntBuffer__ 14 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_asLongBuffer__ 15 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_asReadOnlyBuffer__ 16 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_asShortBuffer__ 17 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_compact__ 18 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_duplicate__ 20 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_get__ 33 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_get___byte_1ARRAY_int_int 34 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_get___int 35 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getChar__ 21 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getChar___int 22 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getDouble__ 23 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getDouble___int 24 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getFloat__ 25 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getFloat___int 26 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getInt__ 27 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getInt___int 28 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getLong__ 29 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getLong___int 30 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getShort__ 31 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_getShort___int 32 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_hasArray__ 8 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_isDirect__ 9 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_protectedArray__ 37 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_protectedArrayOffset__ 36 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_protectedHasArray__ 38 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_put___byte 51 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_put___byte_1ARRAY_int_int 52 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_put___int_byte 53 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putChar___char 39 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putChar___int_char 40 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putDouble___double 41 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putDouble___int_double 42 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putFloat___float 43 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putFloat___int_float 44 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putInt___int 45 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putInt___int_int 46 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putLong___long 48 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putLong___int_long 47 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putShort___short 50 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_putShort___int_short 49 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_slice__ 54 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_toString__ 5 +#define XMLVM_VTABLE_IDX_java_nio_ByteBuffer_compareTo___java_lang_Object 19 + +void __INIT_java_nio_ByteBuffer(); +void __INIT_IMPL_java_nio_ByteBuffer(); +void __DELETE_java_nio_ByteBuffer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_ByteBuffer(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_ByteBuffer(); +JAVA_OBJECT java_nio_ByteBuffer_allocate___int(JAVA_INT n1); +JAVA_OBJECT java_nio_ByteBuffer_allocateDirect___int(JAVA_INT n1); +JAVA_OBJECT java_nio_ByteBuffer_wrap___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +void java_nio_ByteBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 7 +JAVA_OBJECT java_nio_ByteBuffer_array__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_INT java_nio_ByteBuffer_arrayOffset__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_OBJECT java_nio_ByteBuffer_asCharBuffer__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_nio_ByteBuffer_asDoubleBuffer__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_OBJECT java_nio_ByteBuffer_asFloatBuffer__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_OBJECT java_nio_ByteBuffer_asIntBuffer__(JAVA_OBJECT me); +// Vtable index: 15 +JAVA_OBJECT java_nio_ByteBuffer_asLongBuffer__(JAVA_OBJECT me); +// Vtable index: 16 +JAVA_OBJECT java_nio_ByteBuffer_asReadOnlyBuffer__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_nio_ByteBuffer_asShortBuffer__(JAVA_OBJECT me); +// Vtable index: 18 +JAVA_OBJECT java_nio_ByteBuffer_compact__(JAVA_OBJECT me); +JAVA_INT java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 20 +JAVA_OBJECT java_nio_ByteBuffer_duplicate__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_nio_ByteBuffer_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 33 +JAVA_BYTE java_nio_ByteBuffer_get__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_ByteBuffer_get___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 34 +JAVA_OBJECT java_nio_ByteBuffer_get___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 35 +JAVA_BYTE java_nio_ByteBuffer_get___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 21 +JAVA_CHAR java_nio_ByteBuffer_getChar__(JAVA_OBJECT me); +// Vtable index: 22 +JAVA_CHAR java_nio_ByteBuffer_getChar___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 23 +JAVA_DOUBLE java_nio_ByteBuffer_getDouble__(JAVA_OBJECT me); +// Vtable index: 24 +JAVA_DOUBLE java_nio_ByteBuffer_getDouble___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 25 +JAVA_FLOAT java_nio_ByteBuffer_getFloat__(JAVA_OBJECT me); +// Vtable index: 26 +JAVA_FLOAT java_nio_ByteBuffer_getFloat___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 27 +JAVA_INT java_nio_ByteBuffer_getInt__(JAVA_OBJECT me); +// Vtable index: 28 +JAVA_INT java_nio_ByteBuffer_getInt___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 29 +JAVA_LONG java_nio_ByteBuffer_getLong__(JAVA_OBJECT me); +// Vtable index: 30 +JAVA_LONG java_nio_ByteBuffer_getLong___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 31 +JAVA_SHORT java_nio_ByteBuffer_getShort__(JAVA_OBJECT me); +// Vtable index: 32 +JAVA_SHORT java_nio_ByteBuffer_getShort___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_nio_ByteBuffer_hasArray__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_nio_ByteBuffer_hashCode__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_BOOLEAN java_nio_ByteBuffer_isDirect__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_ByteBuffer_order__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_ByteBuffer_order___java_nio_ByteOrder(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 37 +JAVA_OBJECT java_nio_ByteBuffer_protectedArray__(JAVA_OBJECT me); +// Vtable index: 36 +JAVA_INT java_nio_ByteBuffer_protectedArrayOffset__(JAVA_OBJECT me); +// Vtable index: 38 +JAVA_BOOLEAN java_nio_ByteBuffer_protectedHasArray__(JAVA_OBJECT me); +// Vtable index: 51 +JAVA_OBJECT java_nio_ByteBuffer_put___byte(JAVA_OBJECT me, JAVA_BYTE n1); +JAVA_OBJECT java_nio_ByteBuffer_put___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 52 +JAVA_OBJECT java_nio_ByteBuffer_put___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_nio_ByteBuffer_put___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 53 +JAVA_OBJECT java_nio_ByteBuffer_put___int_byte(JAVA_OBJECT me, JAVA_INT n1, JAVA_BYTE n2); +// Vtable index: 39 +JAVA_OBJECT java_nio_ByteBuffer_putChar___char(JAVA_OBJECT me, JAVA_CHAR n1); +// Vtable index: 40 +JAVA_OBJECT java_nio_ByteBuffer_putChar___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2); +// Vtable index: 41 +JAVA_OBJECT java_nio_ByteBuffer_putDouble___double(JAVA_OBJECT me, JAVA_DOUBLE n1); +// Vtable index: 42 +JAVA_OBJECT java_nio_ByteBuffer_putDouble___int_double(JAVA_OBJECT me, JAVA_INT n1, JAVA_DOUBLE n2); +// Vtable index: 43 +JAVA_OBJECT java_nio_ByteBuffer_putFloat___float(JAVA_OBJECT me, JAVA_FLOAT n1); +// Vtable index: 44 +JAVA_OBJECT java_nio_ByteBuffer_putFloat___int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); +// Vtable index: 45 +JAVA_OBJECT java_nio_ByteBuffer_putInt___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 46 +JAVA_OBJECT java_nio_ByteBuffer_putInt___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 48 +JAVA_OBJECT java_nio_ByteBuffer_putLong___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 47 +JAVA_OBJECT java_nio_ByteBuffer_putLong___int_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2); +// Vtable index: 50 +JAVA_OBJECT java_nio_ByteBuffer_putShort___short(JAVA_OBJECT me, JAVA_SHORT n1); +// Vtable index: 49 +JAVA_OBJECT java_nio_ByteBuffer_putShort___int_short(JAVA_OBJECT me, JAVA_INT n1, JAVA_SHORT n2); +// Vtable index: 54 +JAVA_OBJECT java_nio_ByteBuffer_slice__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_nio_ByteBuffer_toString__(JAVA_OBJECT me); +// Vtable index: 19 +JAVA_INT java_nio_ByteBuffer_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_nio_CharArrayBuffer.c b/tests/nbody-java/java_nio_CharArrayBuffer.c new file mode 100644 index 0000000000000..08aca6cbc427a --- /dev/null +++ b/tests/nbody-java/java_nio_CharArrayBuffer.c @@ -0,0 +1,509 @@ +#include "xmlvm.h" +#include "java_lang_CharSequence.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_System.h" + +#include "java_nio_CharArrayBuffer.h" + +#define XMLVM_CURRENT_CLASS_NAME CharArrayBuffer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_CharArrayBuffer + +__TIB_DEFINITION_java_nio_CharArrayBuffer __TIB_java_nio_CharArrayBuffer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_CharArrayBuffer, // classInitializer + "java.nio.CharArrayBuffer", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_CharBuffer, // extends + sizeof(java_nio_CharArrayBuffer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer; +JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_CharArrayBuffer() +{ + staticInitializerLock(&__TIB_java_nio_CharArrayBuffer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_CharArrayBuffer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_CharArrayBuffer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_CharArrayBuffer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_CharArrayBuffer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_CharArrayBuffer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_CharArrayBuffer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.CharArrayBuffer") + __INIT_IMPL_java_nio_CharArrayBuffer(); + } +} + +void __INIT_IMPL_java_nio_CharArrayBuffer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_CharBuffer) + __TIB_java_nio_CharArrayBuffer.newInstanceFunc = __NEW_INSTANCE_java_nio_CharArrayBuffer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_CharArrayBuffer.vtable, __TIB_java_nio_CharBuffer.vtable, sizeof(__TIB_java_nio_CharBuffer.vtable)); + // Initialize vtable for this class + __TIB_java_nio_CharArrayBuffer.vtable[19] = (VTABLE_PTR) &java_nio_CharArrayBuffer_get__; + __TIB_java_nio_CharArrayBuffer.vtable[21] = (VTABLE_PTR) &java_nio_CharArrayBuffer_get___int; + __TIB_java_nio_CharArrayBuffer.vtable[20] = (VTABLE_PTR) &java_nio_CharArrayBuffer_get___char_1ARRAY_int_int; + __TIB_java_nio_CharArrayBuffer.vtable[9] = (VTABLE_PTR) &java_nio_CharArrayBuffer_isDirect__; + __TIB_java_nio_CharArrayBuffer.vtable[23] = (VTABLE_PTR) &java_nio_CharArrayBuffer_order__; + __TIB_java_nio_CharArrayBuffer.vtable[32] = (VTABLE_PTR) &java_nio_CharArrayBuffer_subSequence___int_int; + __TIB_java_nio_CharArrayBuffer.vtable[5] = (VTABLE_PTR) &java_nio_CharArrayBuffer_toString__; + // Initialize interface information + __TIB_java_nio_CharArrayBuffer.numImplementedInterfaces = 4; + __TIB_java_nio_CharArrayBuffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 4); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Appendable) + + __TIB_java_nio_CharArrayBuffer.implementedInterfaces[0][0] = &__TIB_java_lang_Appendable; + + XMLVM_CLASS_INIT(java_lang_CharSequence) + + __TIB_java_nio_CharArrayBuffer.implementedInterfaces[0][1] = &__TIB_java_lang_CharSequence; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_nio_CharArrayBuffer.implementedInterfaces[0][2] = &__TIB_java_lang_Comparable; + + XMLVM_CLASS_INIT(java_lang_Readable) + + __TIB_java_nio_CharArrayBuffer.implementedInterfaces[0][3] = &__TIB_java_lang_Readable; + // Initialize itable for this class + __TIB_java_nio_CharArrayBuffer.itableBegin = &__TIB_java_nio_CharArrayBuffer.itable[0]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___char] = __TIB_java_nio_CharArrayBuffer.vtable[11]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence] = __TIB_java_nio_CharArrayBuffer.vtable[12]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence_int_int] = __TIB_java_nio_CharArrayBuffer.vtable[13]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int] = __TIB_java_nio_CharArrayBuffer.vtable[15]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__] = __TIB_java_nio_CharArrayBuffer.vtable[22]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int] = __TIB_java_nio_CharArrayBuffer.vtable[32]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__] = __TIB_java_nio_CharArrayBuffer.vtable[5]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_CharArrayBuffer.vtable[17]; + __TIB_java_nio_CharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Readable_read___java_nio_CharBuffer] = __TIB_java_nio_CharArrayBuffer.vtable[30]; + + + __TIB_java_nio_CharArrayBuffer.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_CharArrayBuffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_CharArrayBuffer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_CharArrayBuffer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_CharArrayBuffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_CharArrayBuffer.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_CharArrayBuffer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_CharArrayBuffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_CharArrayBuffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_CharArrayBuffer); + __TIB_java_nio_CharArrayBuffer.clazz = __CLASS_java_nio_CharArrayBuffer; + __TIB_java_nio_CharArrayBuffer.baseType = JAVA_NULL; + __CLASS_java_nio_CharArrayBuffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_CharArrayBuffer); + __CLASS_java_nio_CharArrayBuffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_CharArrayBuffer_1ARRAY); + __CLASS_java_nio_CharArrayBuffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_CharArrayBuffer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_CharArrayBuffer] + //XMLVM_END_WRAPPER + + __TIB_java_nio_CharArrayBuffer.classInitialized = 1; +} + +void __DELETE_java_nio_CharArrayBuffer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_CharArrayBuffer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_CharArrayBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_CharBuffer(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_CharArrayBuffer*) me)->fields.java_nio_CharArrayBuffer.backingArray_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_nio_CharArrayBuffer*) me)->fields.java_nio_CharArrayBuffer.offset_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_CharArrayBuffer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_CharArrayBuffer() +{ XMLVM_CLASS_INIT(java_nio_CharArrayBuffer) +java_nio_CharArrayBuffer* me = (java_nio_CharArrayBuffer*) XMLVM_MALLOC(sizeof(java_nio_CharArrayBuffer)); + me->tib = &__TIB_java_nio_CharArrayBuffer; + __INIT_INSTANCE_MEMBERS_java_nio_CharArrayBuffer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_CharArrayBuffer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_CharArrayBuffer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_nio_CharArrayBuffer___INIT____char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer___INIT____char_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 39) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = 0; + XMLVM_CHECK_NPE(2) + java_nio_CharArrayBuffer___INIT____int_char_1ARRAY_int(_r2.o, _r0.i, _r3.o, _r1.i); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 40) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_CharArrayBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer___INIT____int] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 43) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i); + _r1.i = 0; + XMLVM_CHECK_NPE(2) + java_nio_CharArrayBuffer___INIT____int_char_1ARRAY_int(_r2.o, _r3.i, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 44) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_CharArrayBuffer___INIT____int_char_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer___INIT____int_char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.i = n1; + _r2.o = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 47) + XMLVM_CHECK_NPE(0) + java_nio_CharBuffer___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 48) + XMLVM_CHECK_NPE(0) + ((java_nio_CharArrayBuffer*) _r0.o)->fields.java_nio_CharArrayBuffer.backingArray_ = _r2.o; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 49) + XMLVM_CHECK_NPE(0) + ((java_nio_CharArrayBuffer*) _r0.o)->fields.java_nio_CharArrayBuffer.offset_ = _r3.i; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 50) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_nio_CharArrayBuffer_get__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer_get__] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 54) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + if (_r0.i != _r1.i) goto label12; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 55) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 57) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_nio_CharArrayBuffer*) _r4.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_CharArrayBuffer*) _r4.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(4) + ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_ = _r3.i; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_nio_CharArrayBuffer_get___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer_get___int] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 62) + if (_r3.i < 0) goto label6; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r3.i < _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 63) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 65) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_CharArrayBuffer*) _r2.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_CharArrayBuffer*) _r2.o)->fields.java_nio_CharArrayBuffer.offset_; + _r1.i = _r1.i + _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharArrayBuffer_get___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer_get___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 70) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 71) + if (_r7.i < 0) goto label13; + if (_r8.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r7.i; + _r3.l = (JAVA_LONG) _r8.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 72) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 74) + XMLVM_CHECK_NPE(5) + _r0.i = java_nio_Buffer_remaining__(_r5.o); + if (_r8.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 75) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 77) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r1.i = _r1.i + _r2.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r6.o, _r7.i, _r8.i); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 78) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + _r8.i; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 79) + XMLVM_EXIT_METHOD() + return _r5.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_CharArrayBuffer_isDirect__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer_isDirect__] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "isDirect", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 84) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharArrayBuffer_order__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer_order__] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "order", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 89) + + + // Red class access removed: java.nio.ByteOrder::nativeOrder + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharArrayBuffer_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer_subSequence___int_int] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "subSequence", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.i = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 94) + if (_r3.i < 0) goto label10; + if (_r4.i < _r3.i) goto label10; + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_Buffer_remaining__(_r2.o); + if (_r4.i <= _r0.i) goto label16; + label10:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 95) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 98) + //java_nio_CharArrayBuffer_duplicate__[18] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharArrayBuffer*) _r2.o)->tib->vtable[18])(_r2.o); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 99) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r1.i = _r1.i + _r4.i; + XMLVM_CHECK_NPE(0) + java_nio_Buffer_limit___int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 100) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r1.i = _r1.i + _r3.i; + XMLVM_CHECK_NPE(0) + java_nio_Buffer_position___int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 101) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharArrayBuffer_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharArrayBuffer_toString__] + XMLVM_ENTER_METHOD("java.nio.CharArrayBuffer", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("CharArrayBuffer.java", 106) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_nio_CharArrayBuffer*) _r3.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_nio_CharArrayBuffer*) _r3.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(3) + _r2.i = java_nio_Buffer_remaining__(_r3.o); + _r0.o = java_lang_String_copyValueOf___char_1ARRAY_int_int(_r0.o, _r1.i, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_CharArrayBuffer.h b/tests/nbody-java/java_nio_CharArrayBuffer.h new file mode 100644 index 0000000000000..048834712ce04 --- /dev/null +++ b/tests/nbody-java/java_nio_CharArrayBuffer.h @@ -0,0 +1,96 @@ +#ifndef __JAVA_NIO_CHARARRAYBUFFER__ +#define __JAVA_NIO_CHARARRAYBUFFER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_CharArrayBuffer 9 +// Implemented interfaces: +// Super Class: +#include "java_nio_CharBuffer.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +XMLVM_FORWARD_DECL(java_lang_CharSequence) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +// Class declarations for java.nio.CharArrayBuffer +XMLVM_DEFINE_CLASS(java_nio_CharArrayBuffer, 33, XMLVM_ITABLE_SIZE_java_nio_CharArrayBuffer) + +extern JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer; +extern JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_CharArrayBuffer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_CharArrayBuffer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_CharArrayBuffer \ + __INSTANCE_FIELDS_java_nio_CharBuffer; \ + struct { \ + JAVA_OBJECT backingArray_; \ + JAVA_INT offset_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_CharArrayBuffer \ + } java_nio_CharArrayBuffer + +struct java_nio_CharArrayBuffer { + __TIB_DEFINITION_java_nio_CharArrayBuffer* tib; + struct { + __INSTANCE_FIELDS_java_nio_CharArrayBuffer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_CharArrayBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharArrayBuffer +typedef struct java_nio_CharArrayBuffer java_nio_CharArrayBuffer; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_CharArrayBuffer 33 +#define XMLVM_VTABLE_IDX_java_nio_CharArrayBuffer_get__ 19 +#define XMLVM_VTABLE_IDX_java_nio_CharArrayBuffer_get___int 21 +#define XMLVM_VTABLE_IDX_java_nio_CharArrayBuffer_get___char_1ARRAY_int_int 20 +#define XMLVM_VTABLE_IDX_java_nio_CharArrayBuffer_isDirect__ 9 +#define XMLVM_VTABLE_IDX_java_nio_CharArrayBuffer_order__ 23 +#define XMLVM_VTABLE_IDX_java_nio_CharArrayBuffer_subSequence___int_int 32 +#define XMLVM_VTABLE_IDX_java_nio_CharArrayBuffer_toString__ 5 + +void __INIT_java_nio_CharArrayBuffer(); +void __INIT_IMPL_java_nio_CharArrayBuffer(); +void __DELETE_java_nio_CharArrayBuffer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_CharArrayBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_CharArrayBuffer(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_CharArrayBuffer(); +void java_nio_CharArrayBuffer___INIT____char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_CharArrayBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_nio_CharArrayBuffer___INIT____int_char_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3); +// Vtable index: 19 +JAVA_CHAR java_nio_CharArrayBuffer_get__(JAVA_OBJECT me); +// Vtable index: 21 +JAVA_CHAR java_nio_CharArrayBuffer_get___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 20 +JAVA_OBJECT java_nio_CharArrayBuffer_get___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 9 +JAVA_BOOLEAN java_nio_CharArrayBuffer_isDirect__(JAVA_OBJECT me); +// Vtable index: 23 +JAVA_OBJECT java_nio_CharArrayBuffer_order__(JAVA_OBJECT me); +// Vtable index: 32 +JAVA_OBJECT java_nio_CharArrayBuffer_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 5 +JAVA_OBJECT java_nio_CharArrayBuffer_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_CharBuffer.c b/tests/nbody-java/java_nio_CharBuffer.c new file mode 100644 index 0000000000000..30b589f6d4e3e --- /dev/null +++ b/tests/nbody-java/java_nio_CharBuffer.c @@ -0,0 +1,1198 @@ +#include "xmlvm.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Math.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_nio_BufferFactory.h" + +#include "java_nio_CharBuffer.h" + +#define XMLVM_CURRENT_CLASS_NAME CharBuffer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_CharBuffer + +__TIB_DEFINITION_java_nio_CharBuffer __TIB_java_nio_CharBuffer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_CharBuffer, // classInitializer + "java.nio.CharBuffer", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/nio/Buffer;Ljava/lang/Comparable;Ljava/lang/CharSequence;Ljava/lang/Appendable;Ljava/lang/Readable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_Buffer, // extends + sizeof(java_nio_CharBuffer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_CharBuffer; +JAVA_OBJECT __CLASS_java_nio_CharBuffer_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_CharBuffer_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_CharBuffer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_CharBuffer() +{ + staticInitializerLock(&__TIB_java_nio_CharBuffer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_CharBuffer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_CharBuffer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_CharBuffer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_CharBuffer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_CharBuffer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_CharBuffer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.CharBuffer") + __INIT_IMPL_java_nio_CharBuffer(); + } +} + +void __INIT_IMPL_java_nio_CharBuffer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_Buffer) + __TIB_java_nio_CharBuffer.newInstanceFunc = __NEW_INSTANCE_java_nio_CharBuffer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_CharBuffer.vtable, __TIB_java_nio_Buffer.vtable, sizeof(__TIB_java_nio_Buffer.vtable)); + // Initialize vtable for this class + __TIB_java_nio_CharBuffer.vtable[7] = (VTABLE_PTR) &java_nio_CharBuffer_array__; + __TIB_java_nio_CharBuffer.vtable[6] = (VTABLE_PTR) &java_nio_CharBuffer_arrayOffset__; + __TIB_java_nio_CharBuffer.vtable[15] = (VTABLE_PTR) &java_nio_CharBuffer_charAt___int; + __TIB_java_nio_CharBuffer.vtable[1] = (VTABLE_PTR) &java_nio_CharBuffer_equals___java_lang_Object; + __TIB_java_nio_CharBuffer.vtable[20] = (VTABLE_PTR) &java_nio_CharBuffer_get___char_1ARRAY_int_int; + __TIB_java_nio_CharBuffer.vtable[8] = (VTABLE_PTR) &java_nio_CharBuffer_hasArray__; + __TIB_java_nio_CharBuffer.vtable[4] = (VTABLE_PTR) &java_nio_CharBuffer_hashCode__; + __TIB_java_nio_CharBuffer.vtable[22] = (VTABLE_PTR) &java_nio_CharBuffer_length__; + __TIB_java_nio_CharBuffer.vtable[28] = (VTABLE_PTR) &java_nio_CharBuffer_put___char_1ARRAY_int_int; + __TIB_java_nio_CharBuffer.vtable[5] = (VTABLE_PTR) &java_nio_CharBuffer_toString__; + __TIB_java_nio_CharBuffer.vtable[11] = (VTABLE_PTR) &java_nio_CharBuffer_append___char; + __TIB_java_nio_CharBuffer.vtable[12] = (VTABLE_PTR) &java_nio_CharBuffer_append___java_lang_CharSequence; + __TIB_java_nio_CharBuffer.vtable[13] = (VTABLE_PTR) &java_nio_CharBuffer_append___java_lang_CharSequence_int_int; + __TIB_java_nio_CharBuffer.vtable[30] = (VTABLE_PTR) &java_nio_CharBuffer_read___java_nio_CharBuffer; + __TIB_java_nio_CharBuffer.vtable[17] = (VTABLE_PTR) &java_nio_CharBuffer_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_nio_CharBuffer.numImplementedInterfaces = 4; + __TIB_java_nio_CharBuffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 4); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Appendable) + + __TIB_java_nio_CharBuffer.implementedInterfaces[0][0] = &__TIB_java_lang_Appendable; + + XMLVM_CLASS_INIT(java_lang_CharSequence) + + __TIB_java_nio_CharBuffer.implementedInterfaces[0][1] = &__TIB_java_lang_CharSequence; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_nio_CharBuffer.implementedInterfaces[0][2] = &__TIB_java_lang_Comparable; + + XMLVM_CLASS_INIT(java_lang_Readable) + + __TIB_java_nio_CharBuffer.implementedInterfaces[0][3] = &__TIB_java_lang_Readable; + // Initialize itable for this class + __TIB_java_nio_CharBuffer.itableBegin = &__TIB_java_nio_CharBuffer.itable[0]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___char] = __TIB_java_nio_CharBuffer.vtable[11]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence] = __TIB_java_nio_CharBuffer.vtable[12]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence_int_int] = __TIB_java_nio_CharBuffer.vtable[13]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int] = __TIB_java_nio_CharBuffer.vtable[15]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__] = __TIB_java_nio_CharBuffer.vtable[22]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int] = __TIB_java_nio_CharBuffer.vtable[32]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__] = __TIB_java_nio_CharBuffer.vtable[5]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_CharBuffer.vtable[17]; + __TIB_java_nio_CharBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Readable_read___java_nio_CharBuffer] = __TIB_java_nio_CharBuffer.vtable[30]; + + + __TIB_java_nio_CharBuffer.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_CharBuffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_CharBuffer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_CharBuffer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_CharBuffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_CharBuffer.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_CharBuffer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_CharBuffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_CharBuffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_CharBuffer); + __TIB_java_nio_CharBuffer.clazz = __CLASS_java_nio_CharBuffer; + __TIB_java_nio_CharBuffer.baseType = JAVA_NULL; + __CLASS_java_nio_CharBuffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_CharBuffer); + __CLASS_java_nio_CharBuffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_CharBuffer_1ARRAY); + __CLASS_java_nio_CharBuffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_CharBuffer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_CharBuffer] + //XMLVM_END_WRAPPER + + __TIB_java_nio_CharBuffer.classInitialized = 1; +} + +void __DELETE_java_nio_CharBuffer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_CharBuffer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_CharBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_Buffer(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_CharBuffer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_CharBuffer() +{ XMLVM_CLASS_INIT(java_nio_CharBuffer) +java_nio_CharBuffer* me = (java_nio_CharBuffer*) XMLVM_MALLOC(sizeof(java_nio_CharBuffer)); + me->tib = &__TIB_java_nio_CharBuffer; + __INIT_INSTANCE_MEMBERS_java_nio_CharBuffer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_CharBuffer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_CharBuffer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_nio_CharBuffer_allocate___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_CharBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_allocate___int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "allocate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 50) + if (_r1.i >= 0) goto label8; + XMLVM_SOURCE_POSITION("CharBuffer.java", 51) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 53) + _r0.o = java_nio_BufferFactory_newCharBuffer___int(_r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_wrap___char_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_CharBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_wrap___char_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "wrap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 67) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r0.o = java_nio_CharBuffer_wrap___char_1ARRAY_int_int(_r2.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_wrap___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_nio_CharBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_wrap___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "wrap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = n1; + _r6.i = n2; + _r7.i = n3; + XMLVM_SOURCE_POSITION("CharBuffer.java", 89) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + XMLVM_SOURCE_POSITION("CharBuffer.java", 90) + if (_r6.i < 0) goto label13; + if (_r7.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r6.i; + _r3.l = (JAVA_LONG) _r7.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 91) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 94) + _r0.o = java_nio_BufferFactory_newCharBuffer___char_1ARRAY(_r5.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 95) + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.position_ = _r6.i; + XMLVM_SOURCE_POSITION("CharBuffer.java", 96) + _r1.i = _r6.i + _r7.i; + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.limit_ = _r1.i; + XMLVM_SOURCE_POSITION("CharBuffer.java", 98) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_wrap___java_lang_CharSequence(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_CharBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_wrap___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "wrap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 112) + _r0.o = java_nio_BufferFactory_newCharBuffer___java_lang_CharSequence(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_wrap___java_lang_CharSequence_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_nio_CharBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_wrap___java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "wrap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("CharBuffer.java", 135) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("CharBuffer.java", 136) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 138) + if (_r2.i < 0) goto label18; + if (_r3.i < _r2.i) goto label18; + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r1.o); + if (_r3.i <= _r0.i) goto label24; + label18:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 139) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 142) + _r0.o = java_nio_BufferFactory_newCharBuffer___java_lang_CharSequence(_r1.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 143) + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.position_ = _r2.i; + XMLVM_SOURCE_POSITION("CharBuffer.java", 144) + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.limit_ = _r3.i; + XMLVM_SOURCE_POSITION("CharBuffer.java", 145) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_CharBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer___INIT____int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 155) + XMLVM_CHECK_NPE(0) + java_nio_Buffer___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("CharBuffer.java", 156) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_array__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_array__] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "array", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharBuffer.java", 168) + //java_nio_CharBuffer_protectedArray__[25] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r1.o)->tib->vtable[25])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_CharBuffer_arrayOffset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_arrayOffset__] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "arrayOffset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharBuffer.java", 185) + //java_nio_CharBuffer_protectedArrayOffset__[24] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r1.o)->tib->vtable[24])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_nio_CharBuffer_charAt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_charAt___int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "charAt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 217) + if (_r2.i < 0) goto label8; + XMLVM_CHECK_NPE(1) + _r0.i = java_nio_Buffer_remaining__(_r1.o); + if (_r2.i < _r0.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 218) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 220) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + _r2.i; + //java_nio_CharBuffer_get___int[21] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_CharBuffer*) _r1.o)->tib->vtable[21])(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_CharBuffer_compareTo___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_compareTo___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 249) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.i = java_nio_Buffer_remaining__(_r7.o); + if (_r0.i >= _r1.i) goto label33; + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + label14:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 251) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.position_; + XMLVM_SOURCE_POSITION("CharBuffer.java", 252) + XMLVM_CHECK_NPE(7) + _r2.i = ((java_nio_Buffer*) _r7.o)->fields.java_nio_Buffer.position_; + _r5 = _r2; + _r2 = _r0; + _r0 = _r5; + label21:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 254) + if (_r2.i > 0) goto label38; + XMLVM_SOURCE_POSITION("CharBuffer.java", 264) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.i = java_nio_Buffer_remaining__(_r7.o); + _r0.i = _r0.i - _r1.i; + label32:; + XMLVM_EXIT_METHOD() + return _r0.i; + label33:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 250) + XMLVM_CHECK_NPE(7) + _r0.i = java_nio_Buffer_remaining__(_r7.o); + goto label14; + label38:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 255) + //java_nio_CharBuffer_get___int[21] + XMLVM_CHECK_NPE(6) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_CharBuffer*) _r6.o)->tib->vtable[21])(_r6.o, _r1.i); + XMLVM_SOURCE_POSITION("CharBuffer.java", 256) + //java_nio_CharBuffer_get___int[21] + XMLVM_CHECK_NPE(7) + _r4.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_CharBuffer*) _r7.o)->tib->vtable[21])(_r7.o, _r0.i); + XMLVM_SOURCE_POSITION("CharBuffer.java", 257) + if (_r3.i == _r4.i) goto label54; + XMLVM_SOURCE_POSITION("CharBuffer.java", 258) + if (_r3.i >= _r4.i) goto label52; + _r0.i = -1; + goto label32; + label52:; + _r0.i = 1; + goto label32; + label54:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 260) + _r1.i = _r1.i + 1; + _r0.i = _r0.i + 1; + _r2.i = _r2.i + -1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 262) + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_CharBuffer_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("CharBuffer.java", 296) + XMLVM_CLASS_INIT(java_nio_CharBuffer) + _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_nio_CharBuffer); + if (_r0.i != 0) goto label8; + _r0 = _r4; + label7:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 297) + XMLVM_SOURCE_POSITION("CharBuffer.java", 312) + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 299) + _r7.o = _r7.o; + XMLVM_SOURCE_POSITION("CharBuffer.java", 301) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.i = java_nio_Buffer_remaining__(_r7.o); + if (_r0.i == _r1.i) goto label22; + _r0 = _r4; + XMLVM_SOURCE_POSITION("CharBuffer.java", 302) + goto label7; + label22:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 305) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.position_; + XMLVM_SOURCE_POSITION("CharBuffer.java", 306) + XMLVM_CHECK_NPE(7) + _r1.i = ((java_nio_Buffer*) _r7.o)->fields.java_nio_Buffer.position_; + _r2 = _r0; + _r0 = _r5; + label28:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 308) + if (_r0.i == 0) goto label7; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.limit_; + if (_r2.i >= _r3.i) goto label7; + XMLVM_SOURCE_POSITION("CharBuffer.java", 309) + _r0.i = _r2.i + 1; + //java_nio_CharBuffer_get___int[21] + XMLVM_CHECK_NPE(6) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_CharBuffer*) _r6.o)->tib->vtable[21])(_r6.o, _r2.i); + _r3.i = _r1.i + 1; + //java_nio_CharBuffer_get___int[21] + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_CharBuffer*) _r7.o)->tib->vtable[21])(_r7.o, _r1.i); + if (_r2.i != _r1.i) goto label53; + _r1 = _r5; + label49:; + _r2 = _r0; + _r0 = _r1; + _r1 = _r3; + goto label28; + label53:; + _r1 = _r4; + goto label49; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_get___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_get___char_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 338) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + //java_nio_CharBuffer_get___char_1ARRAY_int_int[20] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_nio_CharBuffer*) _r2.o)->tib->vtable[20])(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_get___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_get___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + XMLVM_SOURCE_POSITION("CharBuffer.java", 361) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + XMLVM_SOURCE_POSITION("CharBuffer.java", 362) + if (_r7.i < 0) goto label13; + if (_r8.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r7.i; + _r3.l = (JAVA_LONG) _r8.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 363) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 366) + XMLVM_CHECK_NPE(5) + _r0.i = java_nio_Buffer_remaining__(_r5.o); + if (_r8.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("CharBuffer.java", 367) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + _r0 = _r7; + label32:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 369) + _r1.i = _r7.i + _r8.i; + if (_r0.i < _r1.i) goto label37; + XMLVM_SOURCE_POSITION("CharBuffer.java", 372) + XMLVM_EXIT_METHOD() + return _r5.o; + label37:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 370) + //java_nio_CharBuffer_get__[19] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r5.o)->tib->vtable[19])(_r5.o); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.i; + _r0.i = _r0.i + 1; + goto label32; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_CharBuffer_hasArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_hasArray__] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "hasArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharBuffer.java", 393) + //java_nio_CharBuffer_protectedHasArray__[26] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r1.o)->tib->vtable[26])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_CharBuffer_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_hashCode__] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("CharBuffer.java", 404) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + XMLVM_SOURCE_POSITION("CharBuffer.java", 405) + _r1.i = 0; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label6:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 406) + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + if (_r1.i < _r2.i) goto label11; + XMLVM_SOURCE_POSITION("CharBuffer.java", 409) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 407) + _r2.i = _r1.i + 1; + //java_nio_CharBuffer_get___int[21] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_CharBuffer*) _r4.o)->tib->vtable[21])(_r4.o, _r1.i); + _r0.i = _r0.i + _r1.i; + _r1 = _r2; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_CharBuffer_length__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_length__] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "length", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharBuffer.java", 430) + XMLVM_CHECK_NPE(1) + _r0.i = java_nio_Buffer_remaining__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_put___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_put___char_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 496) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + //java_nio_CharBuffer_put___char_1ARRAY_int_int[28] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_nio_CharBuffer*) _r2.o)->tib->vtable[28])(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_put___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_put___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + XMLVM_SOURCE_POSITION("CharBuffer.java", 521) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + XMLVM_SOURCE_POSITION("CharBuffer.java", 522) + if (_r7.i < 0) goto label13; + if (_r8.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r7.i; + _r3.l = (JAVA_LONG) _r8.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 523) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 526) + XMLVM_CHECK_NPE(5) + _r0.i = java_nio_Buffer_remaining__(_r5.o); + if (_r8.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("CharBuffer.java", 527) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + _r0 = _r7; + label32:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 529) + _r1.i = _r7.i + _r8.i; + if (_r0.i < _r1.i) goto label37; + XMLVM_SOURCE_POSITION("CharBuffer.java", 532) + XMLVM_EXIT_METHOD() + return _r5.o; + label37:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 530) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i); + _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_nio_CharBuffer_put___char[27] + XMLVM_CHECK_NPE(5) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_nio_CharBuffer*) _r5.o)->tib->vtable[27])(_r5.o, _r1.i); + _r0.i = _r0.i + 1; + goto label32; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_put___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_put___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 552) + if (_r3.o != _r2.o) goto label8; + XMLVM_SOURCE_POSITION("CharBuffer.java", 553) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 555) + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_Buffer_remaining__(_r3.o); + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_Buffer_remaining__(_r2.o); + if (_r0.i <= _r1.i) goto label24; + XMLVM_SOURCE_POSITION("CharBuffer.java", 556) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 559) + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_Buffer_remaining__(_r3.o); + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("CharBuffer.java", 560) + XMLVM_CHECK_NPE(3) + java_nio_CharBuffer_get___char_1ARRAY(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 561) + XMLVM_CHECK_NPE(2) + java_nio_CharBuffer_put___char_1ARRAY(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 562) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_put___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_put___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 597) + _r0.i = 0; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + XMLVM_CHECK_NPE(2) + _r0.o = java_nio_CharBuffer_put___java_lang_String_int_int(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_put___java_lang_String_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_put___java_lang_String_int_int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("CharBuffer.java", 621) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 622) + if (_r4.i < 0) goto label10; + if (_r5.i < _r4.i) goto label10; + if (_r5.i <= _r0.i) goto label16; + label10:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 623) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 626) + _r0.i = _r5.i - _r4.i; + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_Buffer_remaining__(_r2.o); + if (_r0.i <= _r1.i) goto label30; + XMLVM_SOURCE_POSITION("CharBuffer.java", 627) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label30:; + _r0 = _r4; + label31:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 629) + if (_r0.i < _r5.i) goto label34; + XMLVM_SOURCE_POSITION("CharBuffer.java", 632) + XMLVM_EXIT_METHOD() + return _r2.o; + label34:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 630) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r0.i); + //java_nio_CharBuffer_put___char[27] + XMLVM_CHECK_NPE(2) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_nio_CharBuffer*) _r2.o)->tib->vtable[27])(_r2.o, _r1.i); + _r0.i = _r0.i + 1; + goto label31; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_toString__] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("CharBuffer.java", 689) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 690) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_; + label7:; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.limit_; + if (_r1.i < _r2.i) goto label16; + XMLVM_SOURCE_POSITION("CharBuffer.java", 693) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label16:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 691) + //java_nio_CharBuffer_get___int[21] + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_CharBuffer*) _r3.o)->tib->vtable[21])(_r3.o, _r1.i); + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + _r1.i = _r1.i + 1; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_append___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_append___char] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 709) + //java_nio_CharBuffer_put___char[27] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_nio_CharBuffer*) _r1.o)->tib->vtable[27])(_r1.o, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_append___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_append___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 730) + if (_r2.o == JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("CharBuffer.java", 731) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__])(_r2.o); + XMLVM_CHECK_NPE(1) + _r0.o = java_nio_CharBuffer_put___java_lang_String(_r1.o, _r0.o); + label10:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 733) + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + XMLVM_CHECK_NPE(1) + _r0.o = java_nio_CharBuffer_put___java_lang_String(_r1.o, _r0.o); + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_CharBuffer_append___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_append___java_lang_CharSequence_int_int] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "append", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("CharBuffer.java", 757) + if (_r3.o != JAVA_NULL) goto label25; + XMLVM_SOURCE_POSITION("CharBuffer.java", 758) + // "null" + _r0.o = xmlvm_create_java_string_from_pool(63); + label4:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 760) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int])(_r0.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("CharBuffer.java", 761) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r0.o); + if (_r1.i <= 0) goto label23; + XMLVM_SOURCE_POSITION("CharBuffer.java", 762) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__])(_r0.o); + XMLVM_CHECK_NPE(2) + _r0.o = java_nio_CharBuffer_put___java_lang_String(_r2.o, _r0.o); + label22:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 764) + XMLVM_EXIT_METHOD() + return _r0.o; + label23:; + _r0 = _r2; + goto label22; + label25:; + _r0 = _r3; + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_CharBuffer_read___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_read___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "read", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + _r1.i = -1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 785) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_Buffer_remaining__(_r2.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 786) + if (_r3.o != _r2.o) goto label17; + XMLVM_SOURCE_POSITION("CharBuffer.java", 787) + if (_r0.i != 0) goto label11; + _r0 = _r1; + label10:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 788) + XMLVM_SOURCE_POSITION("CharBuffer.java", 801) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 790) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 792) + if (_r0.i != 0) goto label33; + XMLVM_SOURCE_POSITION("CharBuffer.java", 793) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= 0) goto label31; + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_Buffer_remaining__(_r3.o); + if (_r0.i != 0) goto label31; + _r0.i = 0; + goto label10; + label31:; + _r0 = _r1; + goto label10; + label33:; + XMLVM_SOURCE_POSITION("CharBuffer.java", 795) + XMLVM_CHECK_NPE(3) + _r1.i = java_nio_Buffer_remaining__(_r3.o); + _r0.i = java_lang_Math_min___int_int(_r1.i, _r0.i); + XMLVM_SOURCE_POSITION("CharBuffer.java", 796) + if (_r0.i <= 0) goto label10; + XMLVM_SOURCE_POSITION("CharBuffer.java", 797) + XMLVM_CLASS_INIT(char) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("CharBuffer.java", 798) + XMLVM_CHECK_NPE(2) + java_nio_CharBuffer_get___char_1ARRAY(_r2.o, _r1.o); + XMLVM_SOURCE_POSITION("CharBuffer.java", 799) + XMLVM_CHECK_NPE(3) + java_nio_CharBuffer_put___char_1ARRAY(_r3.o, _r1.o); + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_CharBuffer_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_CharBuffer_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.nio.CharBuffer", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharBuffer.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_nio_CharBuffer_compareTo___java_nio_CharBuffer(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_CharBuffer.h b/tests/nbody-java/java_nio_CharBuffer.h new file mode 100644 index 0000000000000..a3ce256834277 --- /dev/null +++ b/tests/nbody-java/java_nio_CharBuffer.h @@ -0,0 +1,181 @@ +#ifndef __JAVA_NIO_CHARBUFFER__ +#define __JAVA_NIO_CHARBUFFER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_CharBuffer 9 +// Implemented interfaces: +#include "java_lang_Appendable.h" +#include "java_lang_CharSequence.h" +#include "java_lang_Comparable.h" +#include "java_lang_Readable.h" +// Super Class: +#include "java_nio_Buffer.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Math +#define XMLVM_FORWARD_DECL_java_lang_Math +XMLVM_FORWARD_DECL(java_lang_Math) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_BufferFactory +#define XMLVM_FORWARD_DECL_java_nio_BufferFactory +XMLVM_FORWARD_DECL(java_nio_BufferFactory) +#endif +// Class declarations for java.nio.CharBuffer +XMLVM_DEFINE_CLASS(java_nio_CharBuffer, 33, XMLVM_ITABLE_SIZE_java_nio_CharBuffer) + +extern JAVA_OBJECT __CLASS_java_nio_CharBuffer; +extern JAVA_OBJECT __CLASS_java_nio_CharBuffer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_CharBuffer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_CharBuffer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_CharBuffer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_CharBuffer \ + __INSTANCE_FIELDS_java_nio_Buffer; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_CharBuffer \ + } java_nio_CharBuffer + +struct java_nio_CharBuffer { + __TIB_DEFINITION_java_nio_CharBuffer* tib; + struct { + __INSTANCE_FIELDS_java_nio_CharBuffer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +typedef struct java_nio_CharBuffer java_nio_CharBuffer; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_CharBuffer 33 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_array__ 7 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_arrayOffset__ 6 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_asReadOnlyBuffer__ 14 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_charAt___int 15 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_compact__ 16 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_duplicate__ 18 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_get__ 19 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_get___char_1ARRAY_int_int 20 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_get___int 21 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_hasArray__ 8 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_isDirect__ 9 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_length__ 22 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_order__ 23 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_protectedArray__ 25 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_protectedArrayOffset__ 24 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_protectedHasArray__ 26 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_put___char 27 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_put___char_1ARRAY_int_int 28 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_put___int_char 29 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_slice__ 31 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_subSequence___int_int 32 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_toString__ 5 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_append___char 11 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_append___java_lang_CharSequence 12 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_append___java_lang_CharSequence_int_int 13 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_read___java_nio_CharBuffer 30 +#define XMLVM_VTABLE_IDX_java_nio_CharBuffer_compareTo___java_lang_Object 17 + +void __INIT_java_nio_CharBuffer(); +void __INIT_IMPL_java_nio_CharBuffer(); +void __DELETE_java_nio_CharBuffer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_CharBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_CharBuffer(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_CharBuffer(); +JAVA_OBJECT java_nio_CharBuffer_allocate___int(JAVA_INT n1); +JAVA_OBJECT java_nio_CharBuffer_wrap___char_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_CharBuffer_wrap___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_nio_CharBuffer_wrap___java_lang_CharSequence(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_CharBuffer_wrap___java_lang_CharSequence_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +void java_nio_CharBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 7 +JAVA_OBJECT java_nio_CharBuffer_array__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_INT java_nio_CharBuffer_arrayOffset__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_OBJECT java_nio_CharBuffer_asReadOnlyBuffer__(JAVA_OBJECT me); +// Vtable index: 15 +JAVA_CHAR java_nio_CharBuffer_charAt___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 16 +JAVA_OBJECT java_nio_CharBuffer_compact__(JAVA_OBJECT me); +JAVA_INT java_nio_CharBuffer_compareTo___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 18 +JAVA_OBJECT java_nio_CharBuffer_duplicate__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_nio_CharBuffer_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 19 +JAVA_CHAR java_nio_CharBuffer_get__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_CharBuffer_get___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 20 +JAVA_OBJECT java_nio_CharBuffer_get___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 21 +JAVA_CHAR java_nio_CharBuffer_get___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_nio_CharBuffer_hasArray__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_nio_CharBuffer_hashCode__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_BOOLEAN java_nio_CharBuffer_isDirect__(JAVA_OBJECT me); +// Vtable index: 22 +JAVA_INT java_nio_CharBuffer_length__(JAVA_OBJECT me); +// Vtable index: 23 +JAVA_OBJECT java_nio_CharBuffer_order__(JAVA_OBJECT me); +// Vtable index: 25 +JAVA_OBJECT java_nio_CharBuffer_protectedArray__(JAVA_OBJECT me); +// Vtable index: 24 +JAVA_INT java_nio_CharBuffer_protectedArrayOffset__(JAVA_OBJECT me); +// Vtable index: 26 +JAVA_BOOLEAN java_nio_CharBuffer_protectedHasArray__(JAVA_OBJECT me); +// Vtable index: 27 +JAVA_OBJECT java_nio_CharBuffer_put___char(JAVA_OBJECT me, JAVA_CHAR n1); +JAVA_OBJECT java_nio_CharBuffer_put___char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 28 +JAVA_OBJECT java_nio_CharBuffer_put___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_nio_CharBuffer_put___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 29 +JAVA_OBJECT java_nio_CharBuffer_put___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2); +JAVA_OBJECT java_nio_CharBuffer_put___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_CharBuffer_put___java_lang_String_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 31 +JAVA_OBJECT java_nio_CharBuffer_slice__(JAVA_OBJECT me); +// Vtable index: 32 +JAVA_OBJECT java_nio_CharBuffer_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 5 +JAVA_OBJECT java_nio_CharBuffer_toString__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_OBJECT java_nio_CharBuffer_append___char(JAVA_OBJECT me, JAVA_CHAR n1); +// Vtable index: 12 +JAVA_OBJECT java_nio_CharBuffer_append___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 13 +JAVA_OBJECT java_nio_CharBuffer_append___java_lang_CharSequence_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 30 +JAVA_INT java_nio_CharBuffer_read___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 17 +JAVA_INT java_nio_CharBuffer_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_nio_HeapByteBuffer.c b/tests/nbody-java/java_nio_HeapByteBuffer.c new file mode 100644 index 0000000000000..50aa8f4f95eec --- /dev/null +++ b/tests/nbody-java/java_nio_HeapByteBuffer.c @@ -0,0 +1,1346 @@ +#include "xmlvm.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_lang_System.h" +#include "java_nio_CharBuffer.h" +#include "org_apache_harmony_luni_platform_Endianness.h" + +#include "java_nio_HeapByteBuffer.h" + +#define XMLVM_CURRENT_CLASS_NAME HeapByteBuffer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_HeapByteBuffer + +__TIB_DEFINITION_java_nio_HeapByteBuffer __TIB_java_nio_HeapByteBuffer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_HeapByteBuffer, // classInitializer + "java.nio.HeapByteBuffer", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_ByteBuffer, // extends + sizeof(java_nio_HeapByteBuffer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer; +JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_HeapByteBuffer() +{ + staticInitializerLock(&__TIB_java_nio_HeapByteBuffer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_HeapByteBuffer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_HeapByteBuffer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_HeapByteBuffer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_HeapByteBuffer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_HeapByteBuffer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_HeapByteBuffer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.HeapByteBuffer") + __INIT_IMPL_java_nio_HeapByteBuffer(); + } +} + +void __INIT_IMPL_java_nio_HeapByteBuffer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_ByteBuffer) + __TIB_java_nio_HeapByteBuffer.newInstanceFunc = __NEW_INSTANCE_java_nio_HeapByteBuffer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_HeapByteBuffer.vtable, __TIB_java_nio_ByteBuffer.vtable, sizeof(__TIB_java_nio_ByteBuffer.vtable)); + // Initialize vtable for this class + __TIB_java_nio_HeapByteBuffer.vtable[34] = (VTABLE_PTR) &java_nio_HeapByteBuffer_get___byte_1ARRAY_int_int; + __TIB_java_nio_HeapByteBuffer.vtable[33] = (VTABLE_PTR) &java_nio_HeapByteBuffer_get__; + __TIB_java_nio_HeapByteBuffer.vtable[35] = (VTABLE_PTR) &java_nio_HeapByteBuffer_get___int; + __TIB_java_nio_HeapByteBuffer.vtable[23] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getDouble__; + __TIB_java_nio_HeapByteBuffer.vtable[24] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getDouble___int; + __TIB_java_nio_HeapByteBuffer.vtable[25] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getFloat__; + __TIB_java_nio_HeapByteBuffer.vtable[26] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getFloat___int; + __TIB_java_nio_HeapByteBuffer.vtable[27] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getInt__; + __TIB_java_nio_HeapByteBuffer.vtable[28] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getInt___int; + __TIB_java_nio_HeapByteBuffer.vtable[29] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getLong__; + __TIB_java_nio_HeapByteBuffer.vtable[30] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getLong___int; + __TIB_java_nio_HeapByteBuffer.vtable[31] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getShort__; + __TIB_java_nio_HeapByteBuffer.vtable[32] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getShort___int; + __TIB_java_nio_HeapByteBuffer.vtable[9] = (VTABLE_PTR) &java_nio_HeapByteBuffer_isDirect__; + __TIB_java_nio_HeapByteBuffer.vtable[11] = (VTABLE_PTR) &java_nio_HeapByteBuffer_asCharBuffer__; + __TIB_java_nio_HeapByteBuffer.vtable[12] = (VTABLE_PTR) &java_nio_HeapByteBuffer_asDoubleBuffer__; + __TIB_java_nio_HeapByteBuffer.vtable[13] = (VTABLE_PTR) &java_nio_HeapByteBuffer_asFloatBuffer__; + __TIB_java_nio_HeapByteBuffer.vtable[14] = (VTABLE_PTR) &java_nio_HeapByteBuffer_asIntBuffer__; + __TIB_java_nio_HeapByteBuffer.vtable[15] = (VTABLE_PTR) &java_nio_HeapByteBuffer_asLongBuffer__; + __TIB_java_nio_HeapByteBuffer.vtable[17] = (VTABLE_PTR) &java_nio_HeapByteBuffer_asShortBuffer__; + __TIB_java_nio_HeapByteBuffer.vtable[21] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getChar__; + __TIB_java_nio_HeapByteBuffer.vtable[22] = (VTABLE_PTR) &java_nio_HeapByteBuffer_getChar___int; + __TIB_java_nio_HeapByteBuffer.vtable[39] = (VTABLE_PTR) &java_nio_HeapByteBuffer_putChar___char; + __TIB_java_nio_HeapByteBuffer.vtable[40] = (VTABLE_PTR) &java_nio_HeapByteBuffer_putChar___int_char; + // Initialize interface information + __TIB_java_nio_HeapByteBuffer.numImplementedInterfaces = 1; + __TIB_java_nio_HeapByteBuffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_nio_HeapByteBuffer.implementedInterfaces[0][0] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_nio_HeapByteBuffer.itableBegin = &__TIB_java_nio_HeapByteBuffer.itable[0]; + __TIB_java_nio_HeapByteBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_HeapByteBuffer.vtable[19]; + + + __TIB_java_nio_HeapByteBuffer.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_HeapByteBuffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_HeapByteBuffer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_HeapByteBuffer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_HeapByteBuffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_HeapByteBuffer.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_HeapByteBuffer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_HeapByteBuffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_HeapByteBuffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_HeapByteBuffer); + __TIB_java_nio_HeapByteBuffer.clazz = __CLASS_java_nio_HeapByteBuffer; + __TIB_java_nio_HeapByteBuffer.baseType = JAVA_NULL; + __CLASS_java_nio_HeapByteBuffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_HeapByteBuffer); + __CLASS_java_nio_HeapByteBuffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_HeapByteBuffer_1ARRAY); + __CLASS_java_nio_HeapByteBuffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_HeapByteBuffer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_HeapByteBuffer] + //XMLVM_END_WRAPPER + + __TIB_java_nio_HeapByteBuffer.classInitialized = 1; +} + +void __DELETE_java_nio_HeapByteBuffer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_HeapByteBuffer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_HeapByteBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_HeapByteBuffer*) me)->fields.java_nio_HeapByteBuffer.backingArray_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_nio_HeapByteBuffer*) me)->fields.java_nio_HeapByteBuffer.offset_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_HeapByteBuffer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_HeapByteBuffer() +{ XMLVM_CLASS_INIT(java_nio_HeapByteBuffer) +java_nio_HeapByteBuffer* me = (java_nio_HeapByteBuffer*) XMLVM_MALLOC(sizeof(java_nio_HeapByteBuffer)); + me->tib = &__TIB_java_nio_HeapByteBuffer; + __INIT_INSTANCE_MEMBERS_java_nio_HeapByteBuffer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_HeapByteBuffer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_HeapByteBuffer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_nio_HeapByteBuffer___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer___INIT____byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 41) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.i = 0; + XMLVM_CHECK_NPE(2) + java_nio_HeapByteBuffer___INIT____byte_1ARRAY_int_int(_r2.o, _r3.o, _r0.i, _r1.i); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 42) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_HeapByteBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer___INIT____int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 45) + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r3.i); + _r1.i = 0; + XMLVM_CHECK_NPE(2) + java_nio_HeapByteBuffer___INIT____byte_1ARRAY_int_int(_r2.o, _r0.o, _r3.i, _r1.i); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 46) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_HeapByteBuffer___INIT____byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer___INIT____byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 49) + XMLVM_CHECK_NPE(2) + java_nio_ByteBuffer___INIT____int(_r2.o, _r4.i); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 50) + XMLVM_CHECK_NPE(2) + ((java_nio_HeapByteBuffer*) _r2.o)->fields.java_nio_HeapByteBuffer.backingArray_ = _r3.o; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 51) + XMLVM_CHECK_NPE(2) + ((java_nio_HeapByteBuffer*) _r2.o)->fields.java_nio_HeapByteBuffer.offset_ = _r5.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 53) + _r0.i = _r5.i + _r4.i; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r0.i <= _r1.i) goto label18; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 54) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label18:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 56) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_get___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_get___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 67) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 68) + if (_r7.i < 0) goto label13; + if (_r8.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r7.i; + _r3.l = (JAVA_LONG) _r8.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 69) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 71) + XMLVM_CHECK_NPE(5) + _r0.i = java_nio_Buffer_remaining__(_r5.o); + if (_r8.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 72) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 74) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r1.i = _r1.i + _r2.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r6.o, _r7.i, _r8.i); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 75) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + _r8.i; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 76) + XMLVM_EXIT_METHOD() + return _r5.o; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_nio_HeapByteBuffer_get__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_get__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 81) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + if (_r0.i != _r1.i) goto label12; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 82) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 84) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(4) + ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_ = _r3.i; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BYTE java_nio_HeapByteBuffer_get___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_get___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 89) + if (_r3.i < 0) goto label6; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r3.i < _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 90) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 92) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_HeapByteBuffer*) _r2.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_HeapByteBuffer*) _r2.o)->fields.java_nio_HeapByteBuffer.offset_; + _r1.i = _r1.i + _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_nio_HeapByteBuffer_getDouble__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getDouble__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 97) + //java_nio_HeapByteBuffer_getLong__[29] + XMLVM_CHECK_NPE(2) + _r0.l = (*(JAVA_LONG (*)(JAVA_OBJECT)) ((java_nio_HeapByteBuffer*) _r2.o)->tib->vtable[29])(_r2.o); + _r0.d = java_lang_Double_longBitsToDouble___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE java_nio_HeapByteBuffer_getDouble___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getDouble___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 102) + //java_nio_HeapByteBuffer_getLong___int[30] + XMLVM_CHECK_NPE(2) + _r0.l = (*(JAVA_LONG (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_HeapByteBuffer*) _r2.o)->tib->vtable[30])(_r2.o, _r3.i); + _r0.d = java_lang_Double_longBitsToDouble___long(_r0.l); + XMLVM_EXIT_METHOD() + return _r0.d; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_nio_HeapByteBuffer_getFloat__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getFloat__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 107) + //java_nio_HeapByteBuffer_getInt__[27] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_HeapByteBuffer*) _r1.o)->tib->vtable[27])(_r1.o); + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_nio_HeapByteBuffer_getFloat___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getFloat___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 112) + //java_nio_HeapByteBuffer_getInt___int[28] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_HeapByteBuffer*) _r1.o)->tib->vtable[28])(_r1.o, _r2.i); + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_HeapByteBuffer_getInt__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getInt__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 117) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + 4; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 118) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 119) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 121) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_HeapByteBuffer_loadInt___int(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 122) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 123) + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_HeapByteBuffer_getInt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getInt___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 128) + if (_r3.i < 0) goto label8; + _r0.i = _r3.i + 4; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 129) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 131) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_HeapByteBuffer_loadInt___int(_r2.o, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_nio_HeapByteBuffer_getLong__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getLong__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 136) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + 8; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 137) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 138) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 140) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(3) + _r1.l = java_nio_HeapByteBuffer_loadLong___int(_r3.o, _r1.i); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 141) + XMLVM_CHECK_NPE(3) + ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 142) + XMLVM_EXIT_METHOD() + return _r1.l; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_nio_HeapByteBuffer_getLong___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getLong___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 147) + if (_r3.i < 0) goto label8; + _r0.i = _r3.i + 8; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 148) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 150) + XMLVM_CHECK_NPE(2) + _r0.l = java_nio_HeapByteBuffer_loadLong___int(_r2.o, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_nio_HeapByteBuffer_getShort__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getShort__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 155) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + 2; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 156) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 157) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 159) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(2) + _r1.i = java_nio_HeapByteBuffer_loadShort___int(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 160) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 161) + XMLVM_EXIT_METHOD() + return _r1.i; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_nio_HeapByteBuffer_getShort___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getShort___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 166) + if (_r3.i < 0) goto label8; + _r0.i = _r3.i + 2; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + label8:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 167) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 169) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_HeapByteBuffer_loadShort___int(_r2.o, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_HeapByteBuffer_isDirect__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_isDirect__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "isDirect", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 174) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_HeapByteBuffer_loadInt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_loadInt___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "loadInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.i = n1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 178) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.offset_; + _r0.i = _r0.i + _r6.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 180) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_nio_ByteBuffer*) _r5.o)->fields.java_nio_ByteBuffer.order_; + _r2.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + if (_r1.o != _r2.o) goto label31; + _r1 = _r3; + _r2 = _r3; + label12:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 181) + _r3.i = 4; + if (_r1.i < _r3.i) goto label17; + _r0 = _r2; + label16:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 191) + XMLVM_EXIT_METHOD() + return _r0.i; + label17:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 182) + _r2.i = _r2.i << 8; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 183) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r4.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r3.i = _r3.i & 255; + _r2.i = _r2.i | _r3.i; + _r1.i = _r1.i + 1; + goto label12; + label31:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 186) + _r1.i = 3; + _r2 = _r3; + label33:; + if (_r1.i >= 0) goto label37; + _r0 = _r2; + goto label16; + label37:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 187) + _r2.i = _r2.i << 8; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 188) + XMLVM_CHECK_NPE(5) + _r3.o = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r4.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r3.i = _r3.i & 255; + _r2.i = _r2.i | _r3.i; + _r1.i = _r1.i + -1; + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_LONG java_nio_HeapByteBuffer_loadLong___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_loadLong___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "loadLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.o = me; + _r11.i = n1; + _r6.i = 8; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 195) + XMLVM_CHECK_NPE(10) + _r0.i = ((java_nio_HeapByteBuffer*) _r10.o)->fields.java_nio_HeapByteBuffer.offset_; + _r0.i = _r0.i + _r11.i; + _r1.l = 0; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 197) + XMLVM_CHECK_NPE(10) + _r3.o = ((java_nio_ByteBuffer*) _r10.o)->fields.java_nio_ByteBuffer.order_; + _r4.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + if (_r3.o != _r4.o) goto label36; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 198) + _r3.i = 0; + _r7 = _r3; + _r8 = _r1; + _r2 = _r8; + _r1 = _r7; + label18:; + if (_r1.i < _r6.i) goto label22; + _r0 = _r2; + label21:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 208) + XMLVM_EXIT_METHOD() + return _r0.l; + label22:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 199) + _r2.l = _r2.l << (0x3f & _r6.l); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 200) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_nio_HeapByteBuffer*) _r10.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r5.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r4.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + _r4.i = _r4.i & 255; + _r4.l = (JAVA_LONG) _r4.i; + _r2.l = _r2.l | _r4.l; + _r1.i = _r1.i + 1; + goto label18; + label36:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 203) + _r3.i = 7; + _r7 = _r3; + _r8 = _r1; + _r2 = _r8; + _r1 = _r7; + label41:; + if (_r1.i >= 0) goto label45; + _r0 = _r2; + goto label21; + label45:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 204) + _r2.l = _r2.l << (0x3f & _r6.l); + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 205) + XMLVM_CHECK_NPE(10) + _r4.o = ((java_nio_HeapByteBuffer*) _r10.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r5.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r4.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + _r4.i = _r4.i & 255; + _r4.l = (JAVA_LONG) _r4.i; + _r2.l = _r2.l | _r4.l; + _r1.i = _r1.i + -1; + goto label41; + //XMLVM_END_WRAPPER +} + +JAVA_SHORT java_nio_HeapByteBuffer_loadShort___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_loadShort___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "loadShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 212) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_nio_HeapByteBuffer*) _r3.o)->fields.java_nio_HeapByteBuffer.offset_; + _r0.i = _r0.i + _r4.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 214) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_nio_ByteBuffer*) _r3.o)->fields.java_nio_ByteBuffer.order_; + _r2.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + if (_r1.o != _r2.o) goto label27; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 215) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_nio_HeapByteBuffer*) _r3.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r1.i = _r1.i << 8; + _r1.i = (_r1.i << 16) >> 16; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 216) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_nio_HeapByteBuffer*) _r3.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r0.i = _r0.i & 255; + _r0.i = _r0.i | _r1.i; + _r0.i = (_r0.i << 16) >> 16; + label26:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 221) + XMLVM_EXIT_METHOD() + return _r0.i; + label27:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 218) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_nio_HeapByteBuffer*) _r3.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r2.i = _r0.i + 1; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = _r1.i << 8; + _r1.i = (_r1.i << 16) >> 16; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 219) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_nio_HeapByteBuffer*) _r3.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r0.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r0.i = _r0.i & 255; + _r0.i = _r0.i | _r1.i; + _r0.i = (_r0.i << 16) >> 16; + goto label26; + //XMLVM_END_WRAPPER +} + +void java_nio_HeapByteBuffer_store___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_store___int_int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "store", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r7.o = me; + _r8.i = n1; + _r9.i = n2; + _r6.i = 3; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 225) + XMLVM_CHECK_NPE(7) + _r0.i = ((java_nio_HeapByteBuffer*) _r7.o)->fields.java_nio_HeapByteBuffer.offset_; + _r0.i = _r0.i + _r8.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 226) + XMLVM_CHECK_NPE(7) + _r1.o = ((java_nio_ByteBuffer*) _r7.o)->fields.java_nio_ByteBuffer.order_; + _r2.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + if (_r1.o != _r2.o) goto label29; + _r1 = _r6; + _r2 = _r9; + label12:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 227) + if (_r1.i >= 0) goto label15; + label14:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 237) + XMLVM_EXIT_METHOD() + return; + label15:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 228) + XMLVM_CHECK_NPE(7) + _r3.o = ((java_nio_HeapByteBuffer*) _r7.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r4.i = _r0.i + _r1.i; + _r5.i = _r2.i & 255; + _r5.i = (_r5.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 229) + _r2.i = _r2.i >> 8; + _r1.i = _r1.i + -1; + goto label12; + label29:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 232) + _r1.i = 0; + _r2 = _r9; + label31:; + if (_r1.i > _r6.i) goto label14; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 233) + XMLVM_CHECK_NPE(7) + _r3.o = ((java_nio_HeapByteBuffer*) _r7.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r4.i = _r0.i + _r1.i; + _r5.i = _r2.i & 255; + _r5.i = (_r5.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 234) + _r2.i = _r2.i >> 8; + _r1.i = _r1.i + 1; + goto label31; + //XMLVM_END_WRAPPER +} + +void java_nio_HeapByteBuffer_store___int_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_store___int_long] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "store", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + _r12.o = me; + _r13.i = n1; + _r14.l = n2; + _r10.l = 255; + _r9.i = 8; + _r8.i = 7; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 240) + XMLVM_CHECK_NPE(12) + _r0.i = ((java_nio_HeapByteBuffer*) _r12.o)->fields.java_nio_HeapByteBuffer.offset_; + _r0.i = _r0.i + _r13.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 241) + XMLVM_CHECK_NPE(12) + _r1.o = ((java_nio_ByteBuffer*) _r12.o)->fields.java_nio_ByteBuffer.order_; + _r2.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + if (_r1.o != _r2.o) goto label33; + _r1 = _r8; + _r2 = _r14; + label16:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 242) + if (_r1.i >= 0) goto label19; + label18:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 252) + XMLVM_EXIT_METHOD() + return; + label19:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 243) + XMLVM_CHECK_NPE(12) + _r4.o = ((java_nio_HeapByteBuffer*) _r12.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r5.i = _r0.i + _r1.i; + _r6.l = _r2.l & _r10.l; + _r6.i = (JAVA_INT) _r6.l; + _r6.i = (_r6.i << 24) >> 24; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r6.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 244) + _r2.l = _r2.l >> (0x3f & _r9.l); + _r1.i = _r1.i + -1; + goto label16; + label33:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 247) + _r1.i = 0; + _r2 = _r14; + label35:; + if (_r1.i > _r8.i) goto label18; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 248) + XMLVM_CHECK_NPE(12) + _r4.o = ((java_nio_HeapByteBuffer*) _r12.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r5.i = _r0.i + _r1.i; + _r6.l = _r2.l & _r10.l; + _r6.i = (JAVA_INT) _r6.l; + _r6.i = (_r6.i << 24) >> 24; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r6.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 249) + _r2.l = _r2.l >> (0x3f & _r9.l); + _r1.i = _r1.i + 1; + goto label35; + //XMLVM_END_WRAPPER +} + +void java_nio_HeapByteBuffer_store___int_short(JAVA_OBJECT me, JAVA_INT n1, JAVA_SHORT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_store___int_short] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "store", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 255) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.offset_; + _r0.i = _r0.i + _r5.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 256) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_ByteBuffer*) _r4.o)->fields.java_nio_ByteBuffer.order_; + _r2.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + if (_r1.o != _r2.o) goto label28; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 257) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r2.i = _r6.i >> 8; + _r2.i = _r2.i & 255; + _r2.i = (_r2.i << 24) >> 24; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 258) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r0.i = _r0.i + 1; + _r2.i = _r6.i & 255; + _r2.i = (_r2.i << 24) >> 24; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.i; + label27:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 263) + XMLVM_EXIT_METHOD() + return; + label28:; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 260) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r2.i = _r0.i + 1; + _r3.i = _r6.i >> 8; + _r3.i = _r3.i & 255; + _r3.i = (_r3.i << 24) >> 24; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 261) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + _r2.i = _r6.i & 255; + _r2.i = (_r2.i << 24) >> 24; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.i; + goto label27; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_asCharBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_asCharBuffer__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "asCharBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 267) + + + // Red class access removed: java.nio.CharToByteBufferAdapter::wrap + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_asDoubleBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_asDoubleBuffer__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "asDoubleBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 272) + + + // Red class access removed: java.nio.DoubleToByteBufferAdapter::wrap + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_asFloatBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_asFloatBuffer__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "asFloatBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 277) + + + // Red class access removed: java.nio.FloatToByteBufferAdapter::wrap + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_asIntBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_asIntBuffer__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "asIntBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 282) + + + // Red class access removed: java.nio.IntToByteBufferAdapter::wrap + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_asLongBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_asLongBuffer__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "asLongBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 287) + + + // Red class access removed: java.nio.LongToByteBufferAdapter::wrap + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_asShortBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_asShortBuffer__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "asShortBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 292) + + + // Red class access removed: java.nio.ShortToByteBufferAdapter::wrap + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_nio_HeapByteBuffer_getChar__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getChar__] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 297) + //java_nio_HeapByteBuffer_getShort__[31] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_SHORT (*)(JAVA_OBJECT)) ((java_nio_HeapByteBuffer*) _r1.o)->tib->vtable[31])(_r1.o); + _r0.i = _r0.i & 0xffff; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_CHAR java_nio_HeapByteBuffer_getChar___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_getChar___int] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "getChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 302) + //java_nio_HeapByteBuffer_getShort___int[32] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_SHORT (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_HeapByteBuffer*) _r1.o)->tib->vtable[32])(_r1.o, _r2.i); + _r0.i = _r0.i & 0xffff; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_putChar___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_putChar___char] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "putChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 307) + _r0.i = (_r2.i << 16) >> 16; + //java_nio_HeapByteBuffer_putShort___short[50] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_SHORT)) ((java_nio_HeapByteBuffer*) _r1.o)->tib->vtable[50])(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_HeapByteBuffer_putChar___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_HeapByteBuffer_putChar___int_char] + XMLVM_ENTER_METHOD("java.nio.HeapByteBuffer", "putChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("HeapByteBuffer.java", 312) + _r0.i = (_r3.i << 16) >> 16; + //java_nio_HeapByteBuffer_putShort___int_short[49] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_SHORT)) ((java_nio_HeapByteBuffer*) _r1.o)->tib->vtable[49])(_r1.o, _r2.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_HeapByteBuffer.h b/tests/nbody-java/java_nio_HeapByteBuffer.h new file mode 100644 index 0000000000000..0cedeae182902 --- /dev/null +++ b/tests/nbody-java/java_nio_HeapByteBuffer.h @@ -0,0 +1,161 @@ +#ifndef __JAVA_NIO_HEAPBYTEBUFFER__ +#define __JAVA_NIO_HEAPBYTEBUFFER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_HeapByteBuffer 8 +// Implemented interfaces: +// Super Class: +#include "java_nio_ByteBuffer.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +XMLVM_FORWARD_DECL(org_apache_harmony_luni_platform_Endianness) +#endif +// Class declarations for java.nio.HeapByteBuffer +XMLVM_DEFINE_CLASS(java_nio_HeapByteBuffer, 55, XMLVM_ITABLE_SIZE_java_nio_HeapByteBuffer) + +extern JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer; +extern JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_HeapByteBuffer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_HeapByteBuffer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_HeapByteBuffer \ + __INSTANCE_FIELDS_java_nio_ByteBuffer; \ + struct { \ + JAVA_OBJECT backingArray_; \ + JAVA_INT offset_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_HeapByteBuffer \ + } java_nio_HeapByteBuffer + +struct java_nio_HeapByteBuffer { + __TIB_DEFINITION_java_nio_HeapByteBuffer* tib; + struct { + __INSTANCE_FIELDS_java_nio_HeapByteBuffer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_HeapByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_HeapByteBuffer +typedef struct java_nio_HeapByteBuffer java_nio_HeapByteBuffer; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_HeapByteBuffer 55 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_get___byte_1ARRAY_int_int 34 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_get__ 33 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_get___int 35 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getDouble__ 23 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getDouble___int 24 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getFloat__ 25 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getFloat___int 26 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getInt__ 27 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getInt___int 28 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getLong__ 29 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getLong___int 30 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getShort__ 31 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getShort___int 32 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_isDirect__ 9 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_asCharBuffer__ 11 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_asDoubleBuffer__ 12 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_asFloatBuffer__ 13 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_asIntBuffer__ 14 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_asLongBuffer__ 15 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_asShortBuffer__ 17 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getChar__ 21 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_getChar___int 22 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_putChar___char 39 +#define XMLVM_VTABLE_IDX_java_nio_HeapByteBuffer_putChar___int_char 40 + +void __INIT_java_nio_HeapByteBuffer(); +void __INIT_IMPL_java_nio_HeapByteBuffer(); +void __DELETE_java_nio_HeapByteBuffer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_HeapByteBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_HeapByteBuffer(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_HeapByteBuffer(); +void java_nio_HeapByteBuffer___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_HeapByteBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_nio_HeapByteBuffer___INIT____byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 34 +JAVA_OBJECT java_nio_HeapByteBuffer_get___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 33 +JAVA_BYTE java_nio_HeapByteBuffer_get__(JAVA_OBJECT me); +// Vtable index: 35 +JAVA_BYTE java_nio_HeapByteBuffer_get___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 23 +JAVA_DOUBLE java_nio_HeapByteBuffer_getDouble__(JAVA_OBJECT me); +// Vtable index: 24 +JAVA_DOUBLE java_nio_HeapByteBuffer_getDouble___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 25 +JAVA_FLOAT java_nio_HeapByteBuffer_getFloat__(JAVA_OBJECT me); +// Vtable index: 26 +JAVA_FLOAT java_nio_HeapByteBuffer_getFloat___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 27 +JAVA_INT java_nio_HeapByteBuffer_getInt__(JAVA_OBJECT me); +// Vtable index: 28 +JAVA_INT java_nio_HeapByteBuffer_getInt___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 29 +JAVA_LONG java_nio_HeapByteBuffer_getLong__(JAVA_OBJECT me); +// Vtable index: 30 +JAVA_LONG java_nio_HeapByteBuffer_getLong___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 31 +JAVA_SHORT java_nio_HeapByteBuffer_getShort__(JAVA_OBJECT me); +// Vtable index: 32 +JAVA_SHORT java_nio_HeapByteBuffer_getShort___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 9 +JAVA_BOOLEAN java_nio_HeapByteBuffer_isDirect__(JAVA_OBJECT me); +JAVA_INT java_nio_HeapByteBuffer_loadInt___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_LONG java_nio_HeapByteBuffer_loadLong___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_SHORT java_nio_HeapByteBuffer_loadShort___int(JAVA_OBJECT me, JAVA_INT n1); +void java_nio_HeapByteBuffer_store___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +void java_nio_HeapByteBuffer_store___int_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2); +void java_nio_HeapByteBuffer_store___int_short(JAVA_OBJECT me, JAVA_INT n1, JAVA_SHORT n2); +// Vtable index: 11 +JAVA_OBJECT java_nio_HeapByteBuffer_asCharBuffer__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_nio_HeapByteBuffer_asDoubleBuffer__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_OBJECT java_nio_HeapByteBuffer_asFloatBuffer__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_OBJECT java_nio_HeapByteBuffer_asIntBuffer__(JAVA_OBJECT me); +// Vtable index: 15 +JAVA_OBJECT java_nio_HeapByteBuffer_asLongBuffer__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_nio_HeapByteBuffer_asShortBuffer__(JAVA_OBJECT me); +// Vtable index: 21 +JAVA_CHAR java_nio_HeapByteBuffer_getChar__(JAVA_OBJECT me); +// Vtable index: 22 +JAVA_CHAR java_nio_HeapByteBuffer_getChar___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 39 +JAVA_OBJECT java_nio_HeapByteBuffer_putChar___char(JAVA_OBJECT me, JAVA_CHAR n1); +// Vtable index: 40 +JAVA_OBJECT java_nio_HeapByteBuffer_putChar___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2); + +#endif diff --git a/tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.c b/tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.c new file mode 100644 index 0000000000000..4c2b36a846aa5 --- /dev/null +++ b/tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.c @@ -0,0 +1,614 @@ +#include "xmlvm.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_lang_System.h" +#include "java_nio_CharBuffer.h" + +#include "java_nio_ReadWriteCharArrayBuffer.h" + +#define XMLVM_CURRENT_CLASS_NAME ReadWriteCharArrayBuffer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_ReadWriteCharArrayBuffer + +__TIB_DEFINITION_java_nio_ReadWriteCharArrayBuffer __TIB_java_nio_ReadWriteCharArrayBuffer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_ReadWriteCharArrayBuffer, // classInitializer + "java.nio.ReadWriteCharArrayBuffer", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_CharArrayBuffer, // extends + sizeof(java_nio_ReadWriteCharArrayBuffer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer; +JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_ReadWriteCharArrayBuffer() +{ + staticInitializerLock(&__TIB_java_nio_ReadWriteCharArrayBuffer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_ReadWriteCharArrayBuffer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_ReadWriteCharArrayBuffer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_ReadWriteCharArrayBuffer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_ReadWriteCharArrayBuffer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_ReadWriteCharArrayBuffer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_ReadWriteCharArrayBuffer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.ReadWriteCharArrayBuffer") + __INIT_IMPL_java_nio_ReadWriteCharArrayBuffer(); + } +} + +void __INIT_IMPL_java_nio_ReadWriteCharArrayBuffer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_CharArrayBuffer) + __TIB_java_nio_ReadWriteCharArrayBuffer.newInstanceFunc = __NEW_INSTANCE_java_nio_ReadWriteCharArrayBuffer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_ReadWriteCharArrayBuffer.vtable, __TIB_java_nio_CharArrayBuffer.vtable, sizeof(__TIB_java_nio_CharArrayBuffer.vtable)); + // Initialize vtable for this class + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[14] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_asReadOnlyBuffer__; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[16] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_compact__; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[18] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_duplicate__; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[10] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_isReadOnly__; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[25] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_protectedArray__; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[24] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_protectedArrayOffset__; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[26] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_protectedHasArray__; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[27] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_put___char; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[29] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_put___int_char; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[28] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_put___char_1ARRAY_int_int; + __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[31] = (VTABLE_PTR) &java_nio_ReadWriteCharArrayBuffer_slice__; + // Initialize interface information + __TIB_java_nio_ReadWriteCharArrayBuffer.numImplementedInterfaces = 4; + __TIB_java_nio_ReadWriteCharArrayBuffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 4); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Appendable) + + __TIB_java_nio_ReadWriteCharArrayBuffer.implementedInterfaces[0][0] = &__TIB_java_lang_Appendable; + + XMLVM_CLASS_INIT(java_lang_CharSequence) + + __TIB_java_nio_ReadWriteCharArrayBuffer.implementedInterfaces[0][1] = &__TIB_java_lang_CharSequence; + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_nio_ReadWriteCharArrayBuffer.implementedInterfaces[0][2] = &__TIB_java_lang_Comparable; + + XMLVM_CLASS_INIT(java_lang_Readable) + + __TIB_java_nio_ReadWriteCharArrayBuffer.implementedInterfaces[0][3] = &__TIB_java_lang_Readable; + // Initialize itable for this class + __TIB_java_nio_ReadWriteCharArrayBuffer.itableBegin = &__TIB_java_nio_ReadWriteCharArrayBuffer.itable[0]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___char] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[11]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[12]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Appendable_append___java_lang_CharSequence_int_int] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[13]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[15]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[22]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[32]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[5]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[17]; + __TIB_java_nio_ReadWriteCharArrayBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Readable_read___java_nio_CharBuffer] = __TIB_java_nio_ReadWriteCharArrayBuffer.vtable[30]; + + + __TIB_java_nio_ReadWriteCharArrayBuffer.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_ReadWriteCharArrayBuffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_ReadWriteCharArrayBuffer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_ReadWriteCharArrayBuffer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_ReadWriteCharArrayBuffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_ReadWriteCharArrayBuffer.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_ReadWriteCharArrayBuffer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_ReadWriteCharArrayBuffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_ReadWriteCharArrayBuffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_ReadWriteCharArrayBuffer); + __TIB_java_nio_ReadWriteCharArrayBuffer.clazz = __CLASS_java_nio_ReadWriteCharArrayBuffer; + __TIB_java_nio_ReadWriteCharArrayBuffer.baseType = JAVA_NULL; + __CLASS_java_nio_ReadWriteCharArrayBuffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ReadWriteCharArrayBuffer); + __CLASS_java_nio_ReadWriteCharArrayBuffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ReadWriteCharArrayBuffer_1ARRAY); + __CLASS_java_nio_ReadWriteCharArrayBuffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ReadWriteCharArrayBuffer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_ReadWriteCharArrayBuffer] + //XMLVM_END_WRAPPER + + __TIB_java_nio_ReadWriteCharArrayBuffer.classInitialized = 1; +} + +void __DELETE_java_nio_ReadWriteCharArrayBuffer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_ReadWriteCharArrayBuffer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_ReadWriteCharArrayBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_CharArrayBuffer(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_ReadWriteCharArrayBuffer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_ReadWriteCharArrayBuffer() +{ XMLVM_CLASS_INIT(java_nio_ReadWriteCharArrayBuffer) +java_nio_ReadWriteCharArrayBuffer* me = (java_nio_ReadWriteCharArrayBuffer*) XMLVM_MALLOC(sizeof(java_nio_ReadWriteCharArrayBuffer)); + me->tib = &__TIB_java_nio_ReadWriteCharArrayBuffer; + __INIT_INSTANCE_MEMBERS_java_nio_ReadWriteCharArrayBuffer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_ReadWriteCharArrayBuffer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_ReadWriteCharArrayBuffer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_copy___java_nio_CharArrayBuffer_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_nio_ReadWriteCharArrayBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_copy___java_nio_CharArrayBuffer_int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "copy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 34) + _r0.o = __NEW_java_nio_ReadWriteCharArrayBuffer(); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 35) + XMLVM_CHECK_NPE(4) + _r1.i = java_nio_Buffer_capacity__(_r4.o); + XMLVM_CHECK_NPE(4) + _r2.o = ((java_nio_CharArrayBuffer*) _r4.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(4) + _r3.i = ((java_nio_CharArrayBuffer*) _r4.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteCharArrayBuffer___INIT____int_char_1ARRAY_int(_r0.o, _r1.i, _r2.o, _r3.i); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 36) + XMLVM_CHECK_NPE(4) + _r1.i = java_nio_Buffer_limit__(_r4.o); + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.limit_ = _r1.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 37) + XMLVM_CHECK_NPE(4) + _r1.i = java_nio_Buffer_position__(_r4.o); + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.position_ = _r1.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 38) + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.mark_ = _r5.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 39) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_ReadWriteCharArrayBuffer___INIT____char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer___INIT____char_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 43) + XMLVM_CHECK_NPE(0) + java_nio_CharArrayBuffer___INIT____char_1ARRAY(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 44) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_ReadWriteCharArrayBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer___INIT____int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 47) + XMLVM_CHECK_NPE(0) + java_nio_CharArrayBuffer___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 48) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_ReadWriteCharArrayBuffer___INIT____int_char_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer___INIT____int_char_1ARRAY_int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.i = n1; + _r2.o = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 51) + XMLVM_CHECK_NPE(0) + java_nio_CharArrayBuffer___INIT____int_char_1ARRAY_int(_r0.o, _r1.i, _r2.o, _r3.i); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 52) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_asReadOnlyBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_asReadOnlyBuffer__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "asReadOnlyBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 56) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_; + + + // Red class access removed: java.nio.ReadOnlyCharArrayBuffer::copy + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_compact__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_compact__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "compact", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 61) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.offset_; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 62) + XMLVM_CHECK_NPE(5) + _r4.i = java_nio_Buffer_remaining__(_r5.o); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 63) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.limit_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 64) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.capacity_; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.limit_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 65) + _r0.i = -1; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.mark_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 66) + XMLVM_EXIT_METHOD() + return _r5.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_duplicate__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_duplicate__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "duplicate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 71) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_; + _r0.o = java_nio_ReadWriteCharArrayBuffer_copy___java_nio_CharArrayBuffer_int(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_ReadWriteCharArrayBuffer_isReadOnly__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_isReadOnly__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "isReadOnly", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 76) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_protectedArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_protectedArray__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "protectedArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 81) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_CharArrayBuffer*) _r1.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_ReadWriteCharArrayBuffer_protectedArrayOffset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_protectedArrayOffset__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "protectedArrayOffset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 86) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_CharArrayBuffer*) _r1.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_ReadWriteCharArrayBuffer_protectedHasArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_protectedHasArray__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "protectedHasArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 91) + _r0.i = 1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_put___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_put___char] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 96) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + if (_r0.i != _r1.i) goto label12; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 97) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 99) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_nio_CharArrayBuffer*) _r4.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_CharArrayBuffer*) _r4.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(4) + ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_ = _r3.i; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 100) + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_put___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_put___int_char] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.i = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 105) + if (_r3.i < 0) goto label6; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r3.i < _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 106) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 108) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_CharArrayBuffer*) _r2.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_CharArrayBuffer*) _r2.o)->fields.java_nio_CharArrayBuffer.offset_; + _r1.i = _r1.i + _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 109) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_put___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_put___char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.i = n2; + _r8.i = n3; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 114) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 115) + if (_r7.i < 0) goto label13; + if (_r8.i < 0) goto label13; + _r1.l = (JAVA_LONG) _r8.i; + _r3.l = (JAVA_LONG) _r7.i; + _r1.l = _r1.l + _r3.l; + _r3.l = (JAVA_LONG) _r0.i; + _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 116) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 118) + XMLVM_CHECK_NPE(5) + _r0.i = java_nio_Buffer_remaining__(_r5.o); + if (_r8.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 119) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 121) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r1.i = _r1.i + _r2.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r6.o, _r7.i, _r0.o, _r1.i, _r8.i); + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 122) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + _r8.i; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 123) + XMLVM_EXIT_METHOD() + return _r5.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_slice__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteCharArrayBuffer_slice__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteCharArrayBuffer", "slice", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 128) + _r0.o = __NEW_java_nio_ReadWriteCharArrayBuffer(); + XMLVM_CHECK_NPE(5) + _r1.i = java_nio_Buffer_remaining__(_r5.o); + XMLVM_CHECK_NPE(5) + _r2.o = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_nio_CharArrayBuffer*) _r5.o)->fields.java_nio_CharArrayBuffer.offset_; + XMLVM_SOURCE_POSITION("ReadWriteCharArrayBuffer.java", 129) + XMLVM_CHECK_NPE(5) + _r4.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r3.i = _r3.i + _r4.i; + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteCharArrayBuffer___INIT____int_char_1ARRAY_int(_r0.o, _r1.i, _r2.o, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.h b/tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.h new file mode 100644 index 0000000000000..b4fd5304746c6 --- /dev/null +++ b/tests/nbody-java/java_nio_ReadWriteCharArrayBuffer.h @@ -0,0 +1,103 @@ +#ifndef __JAVA_NIO_READWRITECHARARRAYBUFFER__ +#define __JAVA_NIO_READWRITECHARARRAYBUFFER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_ReadWriteCharArrayBuffer 9 +// Implemented interfaces: +// Super Class: +#include "java_nio_CharArrayBuffer.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +// Class declarations for java.nio.ReadWriteCharArrayBuffer +XMLVM_DEFINE_CLASS(java_nio_ReadWriteCharArrayBuffer, 33, XMLVM_ITABLE_SIZE_java_nio_ReadWriteCharArrayBuffer) + +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer; +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteCharArrayBuffer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_ReadWriteCharArrayBuffer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_ReadWriteCharArrayBuffer \ + __INSTANCE_FIELDS_java_nio_CharArrayBuffer; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_ReadWriteCharArrayBuffer \ + } java_nio_ReadWriteCharArrayBuffer + +struct java_nio_ReadWriteCharArrayBuffer { + __TIB_DEFINITION_java_nio_ReadWriteCharArrayBuffer* tib; + struct { + __INSTANCE_FIELDS_java_nio_ReadWriteCharArrayBuffer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_ReadWriteCharArrayBuffer +#define XMLVM_FORWARD_DECL_java_nio_ReadWriteCharArrayBuffer +typedef struct java_nio_ReadWriteCharArrayBuffer java_nio_ReadWriteCharArrayBuffer; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_ReadWriteCharArrayBuffer 33 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_asReadOnlyBuffer__ 14 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_compact__ 16 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_duplicate__ 18 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_isReadOnly__ 10 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_protectedArray__ 25 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_protectedArrayOffset__ 24 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_protectedHasArray__ 26 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_put___char 27 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_put___int_char 29 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_put___char_1ARRAY_int_int 28 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteCharArrayBuffer_slice__ 31 + +void __INIT_java_nio_ReadWriteCharArrayBuffer(); +void __INIT_IMPL_java_nio_ReadWriteCharArrayBuffer(); +void __DELETE_java_nio_ReadWriteCharArrayBuffer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_ReadWriteCharArrayBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_ReadWriteCharArrayBuffer(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_ReadWriteCharArrayBuffer(); +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_copy___java_nio_CharArrayBuffer_int(JAVA_OBJECT n1, JAVA_INT n2); +void java_nio_ReadWriteCharArrayBuffer___INIT____char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_ReadWriteCharArrayBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_nio_ReadWriteCharArrayBuffer___INIT____int_char_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3); +// Vtable index: 14 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_asReadOnlyBuffer__(JAVA_OBJECT me); +// Vtable index: 16 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_compact__(JAVA_OBJECT me); +// Vtable index: 18 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_duplicate__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_nio_ReadWriteCharArrayBuffer_isReadOnly__(JAVA_OBJECT me); +// Vtable index: 25 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_protectedArray__(JAVA_OBJECT me); +// Vtable index: 24 +JAVA_INT java_nio_ReadWriteCharArrayBuffer_protectedArrayOffset__(JAVA_OBJECT me); +// Vtable index: 26 +JAVA_BOOLEAN java_nio_ReadWriteCharArrayBuffer_protectedHasArray__(JAVA_OBJECT me); +// Vtable index: 27 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_put___char(JAVA_OBJECT me, JAVA_CHAR n1); +// Vtable index: 29 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_put___int_char(JAVA_OBJECT me, JAVA_INT n1, JAVA_CHAR n2); +// Vtable index: 28 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_put___char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 31 +JAVA_OBJECT java_nio_ReadWriteCharArrayBuffer_slice__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.c b/tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.c new file mode 100644 index 0000000000000..2540b894a7682 --- /dev/null +++ b/tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.c @@ -0,0 +1,967 @@ +#include "xmlvm.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_lang_System.h" +#include "java_nio_ByteBuffer.h" +#include "org_apache_harmony_luni_platform_Endianness.h" + +#include "java_nio_ReadWriteHeapByteBuffer.h" + +#define XMLVM_CURRENT_CLASS_NAME ReadWriteHeapByteBuffer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_ReadWriteHeapByteBuffer + +__TIB_DEFINITION_java_nio_ReadWriteHeapByteBuffer __TIB_java_nio_ReadWriteHeapByteBuffer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_ReadWriteHeapByteBuffer, // classInitializer + "java.nio.ReadWriteHeapByteBuffer", // className + "java.nio", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_HeapByteBuffer, // extends + sizeof(java_nio_ReadWriteHeapByteBuffer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer; +JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_ReadWriteHeapByteBuffer() +{ + staticInitializerLock(&__TIB_java_nio_ReadWriteHeapByteBuffer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_ReadWriteHeapByteBuffer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_ReadWriteHeapByteBuffer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_ReadWriteHeapByteBuffer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_ReadWriteHeapByteBuffer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_ReadWriteHeapByteBuffer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_ReadWriteHeapByteBuffer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.ReadWriteHeapByteBuffer") + __INIT_IMPL_java_nio_ReadWriteHeapByteBuffer(); + } +} + +void __INIT_IMPL_java_nio_ReadWriteHeapByteBuffer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_HeapByteBuffer) + __TIB_java_nio_ReadWriteHeapByteBuffer.newInstanceFunc = __NEW_INSTANCE_java_nio_ReadWriteHeapByteBuffer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_ReadWriteHeapByteBuffer.vtable, __TIB_java_nio_HeapByteBuffer.vtable, sizeof(__TIB_java_nio_HeapByteBuffer.vtable)); + // Initialize vtable for this class + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[16] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_asReadOnlyBuffer__; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[18] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_compact__; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[20] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_duplicate__; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[10] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_isReadOnly__; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[37] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_protectedArray__; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[36] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_protectedArrayOffset__; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[38] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_protectedHasArray__; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[51] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_put___byte; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[53] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_put___int_byte; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[52] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_put___byte_1ARRAY_int_int; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[41] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putDouble___double; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[42] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putDouble___int_double; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[43] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putFloat___float; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[44] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putFloat___int_float; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[45] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putInt___int; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[46] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putInt___int_int; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[47] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putLong___int_long; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[48] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putLong___long; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[49] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putShort___int_short; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[50] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_putShort___short; + __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[54] = (VTABLE_PTR) &java_nio_ReadWriteHeapByteBuffer_slice__; + // Initialize interface information + __TIB_java_nio_ReadWriteHeapByteBuffer.numImplementedInterfaces = 1; + __TIB_java_nio_ReadWriteHeapByteBuffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_nio_ReadWriteHeapByteBuffer.implementedInterfaces[0][0] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_nio_ReadWriteHeapByteBuffer.itableBegin = &__TIB_java_nio_ReadWriteHeapByteBuffer.itable[0]; + __TIB_java_nio_ReadWriteHeapByteBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_ReadWriteHeapByteBuffer.vtable[19]; + + + __TIB_java_nio_ReadWriteHeapByteBuffer.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_ReadWriteHeapByteBuffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_ReadWriteHeapByteBuffer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_ReadWriteHeapByteBuffer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_ReadWriteHeapByteBuffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_ReadWriteHeapByteBuffer.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_ReadWriteHeapByteBuffer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_ReadWriteHeapByteBuffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_ReadWriteHeapByteBuffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_ReadWriteHeapByteBuffer); + __TIB_java_nio_ReadWriteHeapByteBuffer.clazz = __CLASS_java_nio_ReadWriteHeapByteBuffer; + __TIB_java_nio_ReadWriteHeapByteBuffer.baseType = JAVA_NULL; + __CLASS_java_nio_ReadWriteHeapByteBuffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ReadWriteHeapByteBuffer); + __CLASS_java_nio_ReadWriteHeapByteBuffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ReadWriteHeapByteBuffer_1ARRAY); + __CLASS_java_nio_ReadWriteHeapByteBuffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ReadWriteHeapByteBuffer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_ReadWriteHeapByteBuffer] + //XMLVM_END_WRAPPER + + __TIB_java_nio_ReadWriteHeapByteBuffer.classInitialized = 1; +} + +void __DELETE_java_nio_ReadWriteHeapByteBuffer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_ReadWriteHeapByteBuffer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_ReadWriteHeapByteBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_HeapByteBuffer(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_ReadWriteHeapByteBuffer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_ReadWriteHeapByteBuffer() +{ XMLVM_CLASS_INIT(java_nio_ReadWriteHeapByteBuffer) +java_nio_ReadWriteHeapByteBuffer* me = (java_nio_ReadWriteHeapByteBuffer*) XMLVM_MALLOC(sizeof(java_nio_ReadWriteHeapByteBuffer)); + me->tib = &__TIB_java_nio_ReadWriteHeapByteBuffer; + __INIT_INSTANCE_MEMBERS_java_nio_ReadWriteHeapByteBuffer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_ReadWriteHeapByteBuffer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_ReadWriteHeapByteBuffer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_copy___java_nio_HeapByteBuffer_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_nio_ReadWriteHeapByteBuffer) + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_copy___java_nio_HeapByteBuffer_int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "copy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 33) + _r0.o = __NEW_java_nio_ReadWriteHeapByteBuffer(); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 34) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(4) + _r2.i = java_nio_Buffer_capacity__(_r4.o); + XMLVM_CHECK_NPE(4) + _r3.i = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 35) + XMLVM_CHECK_NPE(4) + _r1.i = java_nio_Buffer_limit__(_r4.o); + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.limit_ = _r1.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 36) + XMLVM_CHECK_NPE(4) + _r1.i = java_nio_Buffer_position__(_r4.o); + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.position_ = _r1.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 37) + XMLVM_CHECK_NPE(0) + ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.mark_ = _r5.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 38) + XMLVM_CHECK_NPE(4) + _r1.o = java_nio_ByteBuffer_order__(_r4.o); + XMLVM_CHECK_NPE(0) + java_nio_ByteBuffer_order___java_nio_ByteOrder(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 39) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 43) + XMLVM_CHECK_NPE(0) + java_nio_HeapByteBuffer___INIT____byte_1ARRAY(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 44) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_ReadWriteHeapByteBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer___INIT____int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 47) + XMLVM_CHECK_NPE(0) + java_nio_HeapByteBuffer___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 48) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 51) + XMLVM_CHECK_NPE(0) + java_nio_HeapByteBuffer___INIT____byte_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 52) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_asReadOnlyBuffer__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_asReadOnlyBuffer__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "asReadOnlyBuffer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 56) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_; + + + // Red class access removed: java.nio.ReadOnlyHeapByteBuffer::copy + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_compact__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_compact__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "compact", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 61) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.offset_; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 62) + XMLVM_CHECK_NPE(5) + _r4.i = java_nio_Buffer_remaining__(_r5.o); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 63) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.limit_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 64) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.capacity_; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.limit_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 65) + _r0.i = -1; + XMLVM_CHECK_NPE(5) + ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.mark_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 66) + XMLVM_EXIT_METHOD() + return _r5.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_duplicate__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_duplicate__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "duplicate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 71) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_; + _r0.o = java_nio_ReadWriteHeapByteBuffer_copy___java_nio_HeapByteBuffer_int(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_ReadWriteHeapByteBuffer_isReadOnly__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_isReadOnly__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "isReadOnly", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 76) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_protectedArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_protectedArray__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "protectedArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 81) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_HeapByteBuffer*) _r1.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_ReadWriteHeapByteBuffer_protectedArrayOffset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_protectedArrayOffset__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "protectedArrayOffset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 86) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_nio_HeapByteBuffer*) _r1.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_ReadWriteHeapByteBuffer_protectedHasArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_protectedHasArray__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "protectedHasArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 91) + _r0.i = 1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_put___byte(JAVA_OBJECT me, JAVA_BYTE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_put___byte] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 96) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + if (_r0.i != _r1.i) goto label12; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 97) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 99) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(4) + ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_ = _r3.i; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 100) + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_put___int_byte(JAVA_OBJECT me, JAVA_INT n1, JAVA_BYTE n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_put___int_byte] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.i = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 105) + if (_r3.i < 0) goto label6; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r3.i < _r0.i) goto label12; + label6:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 106) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 108) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_HeapByteBuffer*) _r2.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_HeapByteBuffer*) _r2.o)->fields.java_nio_HeapByteBuffer.offset_; + _r1.i = _r1.i + _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 109) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_put___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_put___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r4.o = me; + _r5.o = n1; + _r6.i = n2; + _r7.i = n3; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 121) + if (_r6.i < 0) goto label13; + if (_r7.i < 0) goto label13; + _r0.l = (JAVA_LONG) _r6.i; + _r2.l = (JAVA_LONG) _r7.i; + _r0.l = _r0.l + _r2.l; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r2.l = (JAVA_LONG) _r2.i; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 122) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 124) + XMLVM_CHECK_NPE(4) + _r0.i = java_nio_Buffer_remaining__(_r4.o); + if (_r7.i <= _r0.i) goto label31; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 125) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 127) + //java_nio_ReadWriteHeapByteBuffer_isReadOnly__[10] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_ReadWriteHeapByteBuffer*) _r4.o)->tib->vtable[10])(_r4.o); + if (_r0.i == 0) goto label43; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 128) + + + // Red class access removed: java.nio.ReadOnlyBufferException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.ReadOnlyBufferException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label43:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 130) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_nio_HeapByteBuffer*) _r4.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + _r1.i = _r1.i + _r2.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r5.o, _r6.i, _r0.o, _r1.i, _r7.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 131) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + _r7.i; + XMLVM_CHECK_NPE(4) + ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 132) + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putDouble___double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putDouble___double] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.d = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 137) + _r0.l = java_lang_Double_doubleToRawLongBits___double(_r3.d); + //java_nio_ReadWriteHeapByteBuffer_putLong___long[48] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_LONG)) ((java_nio_ReadWriteHeapByteBuffer*) _r2.o)->tib->vtable[48])(_r2.o, _r0.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putDouble___int_double(JAVA_OBJECT me, JAVA_INT n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putDouble___int_double] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.i = n1; + _r4.d = n2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 142) + _r0.l = java_lang_Double_doubleToRawLongBits___double(_r4.d); + //java_nio_ReadWriteHeapByteBuffer_putLong___int_long[47] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_LONG)) ((java_nio_ReadWriteHeapByteBuffer*) _r2.o)->tib->vtable[47])(_r2.o, _r3.i, _r0.l); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putFloat___float(JAVA_OBJECT me, JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putFloat___float] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.f = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 147) + _r0.i = java_lang_Float_floatToIntBits___float(_r2.f); + //java_nio_ReadWriteHeapByteBuffer_putInt___int[45] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ReadWriteHeapByteBuffer*) _r1.o)->tib->vtable[45])(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putFloat___int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putFloat___int_float] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.f = n2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 152) + _r0.i = java_lang_Float_floatToIntBits___float(_r3.f); + //java_nio_ReadWriteHeapByteBuffer_putInt___int_int[46] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_nio_ReadWriteHeapByteBuffer*) _r1.o)->tib->vtable[46])(_r1.o, _r2.i, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putInt___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putInt___int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 157) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + 4; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 158) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 159) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 161) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(2) + java_nio_HeapByteBuffer_store___int_int(_r2.o, _r1.i, _r3.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 162) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 163) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putInt___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putInt___int_int] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 168) + if (_r5.i < 0) goto label13; + _r0.l = (JAVA_LONG) _r5.i; + _r2.l = 4; + _r0.l = _r0.l + _r2.l; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + _r2.l = (JAVA_LONG) _r2.i; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 169) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 171) + XMLVM_CHECK_NPE(4) + java_nio_HeapByteBuffer_store___int_int(_r4.o, _r5.i, _r6.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 172) + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putLong___int_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putLong___int_long] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r4.o = me; + _r5.i = n1; + _r6.l = n2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 177) + if (_r5.i < 0) goto label13; + _r0.l = (JAVA_LONG) _r5.i; + _r2.l = 8; + _r0.l = _r0.l + _r2.l; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + _r2.l = (JAVA_LONG) _r2.i; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 178) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 180) + XMLVM_CHECK_NPE(4) + java_nio_HeapByteBuffer_store___int_long(_r4.o, _r5.i, _r6.l); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 181) + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putLong___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putLong___long] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.l = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 186) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + 8; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 187) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 188) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 190) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(2) + java_nio_HeapByteBuffer_store___int_long(_r2.o, _r1.i, _r3.l); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 191) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 192) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putShort___int_short(JAVA_OBJECT me, JAVA_INT n1, JAVA_SHORT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putShort___int_short] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 197) + if (_r5.i < 0) goto label13; + _r0.l = (JAVA_LONG) _r5.i; + _r2.l = 2; + _r0.l = _r0.l + _r2.l; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_; + _r2.l = (JAVA_LONG) _r2.i; + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i <= 0) goto label19; + label13:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 198) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 200) + XMLVM_CHECK_NPE(4) + java_nio_HeapByteBuffer_store___int_short(_r4.o, _r5.i, _r6.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 201) + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putShort___short(JAVA_OBJECT me, JAVA_SHORT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_putShort___short] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "putShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 206) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + _r0.i = _r0.i + 2; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 207) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_; + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 208) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 210) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_; + XMLVM_CHECK_NPE(2) + java_nio_HeapByteBuffer_store___int_short(_r2.o, _r1.i, _r3.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 211) + XMLVM_CHECK_NPE(2) + ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 212) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_slice__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_ReadWriteHeapByteBuffer_slice__] + XMLVM_ENTER_METHOD("java.nio.ReadWriteHeapByteBuffer", "slice", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 217) + _r0.o = __NEW_java_nio_ReadWriteHeapByteBuffer(); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 218) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.backingArray_; + XMLVM_CHECK_NPE(5) + _r2.i = java_nio_Buffer_remaining__(_r5.o); + XMLVM_CHECK_NPE(5) + _r3.i = ((java_nio_HeapByteBuffer*) _r5.o)->fields.java_nio_HeapByteBuffer.offset_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_nio_Buffer*) _r5.o)->fields.java_nio_Buffer.position_; + _r3.i = _r3.i + _r4.i; + XMLVM_CHECK_NPE(0) + java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 219) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_nio_ByteBuffer*) _r5.o)->fields.java_nio_ByteBuffer.order_; + XMLVM_CHECK_NPE(0) + ((java_nio_ByteBuffer*) _r0.o)->fields.java_nio_ByteBuffer.order_ = _r1.o; + XMLVM_SOURCE_POSITION("ReadWriteHeapByteBuffer.java", 220) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.h b/tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.h new file mode 100644 index 0000000000000..21678ccc15174 --- /dev/null +++ b/tests/nbody-java/java_nio_ReadWriteHeapByteBuffer.h @@ -0,0 +1,145 @@ +#ifndef __JAVA_NIO_READWRITEHEAPBYTEBUFFER__ +#define __JAVA_NIO_READWRITEHEAPBYTEBUFFER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_ReadWriteHeapByteBuffer 8 +// Implemented interfaces: +// Super Class: +#include "java_nio_HeapByteBuffer.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +XMLVM_FORWARD_DECL(org_apache_harmony_luni_platform_Endianness) +#endif +// Class declarations for java.nio.ReadWriteHeapByteBuffer +XMLVM_DEFINE_CLASS(java_nio_ReadWriteHeapByteBuffer, 55, XMLVM_ITABLE_SIZE_java_nio_ReadWriteHeapByteBuffer) + +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer; +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_ReadWriteHeapByteBuffer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_ReadWriteHeapByteBuffer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_ReadWriteHeapByteBuffer \ + __INSTANCE_FIELDS_java_nio_HeapByteBuffer; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_ReadWriteHeapByteBuffer \ + } java_nio_ReadWriteHeapByteBuffer + +struct java_nio_ReadWriteHeapByteBuffer { + __TIB_DEFINITION_java_nio_ReadWriteHeapByteBuffer* tib; + struct { + __INSTANCE_FIELDS_java_nio_ReadWriteHeapByteBuffer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_ReadWriteHeapByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ReadWriteHeapByteBuffer +typedef struct java_nio_ReadWriteHeapByteBuffer java_nio_ReadWriteHeapByteBuffer; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_ReadWriteHeapByteBuffer 55 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_asReadOnlyBuffer__ 16 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_compact__ 18 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_duplicate__ 20 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_isReadOnly__ 10 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_protectedArray__ 37 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_protectedArrayOffset__ 36 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_protectedHasArray__ 38 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_put___byte 51 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_put___int_byte 53 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_put___byte_1ARRAY_int_int 52 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putDouble___double 41 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putDouble___int_double 42 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putFloat___float 43 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putFloat___int_float 44 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putInt___int 45 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putInt___int_int 46 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putLong___int_long 47 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putLong___long 48 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putShort___int_short 49 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_putShort___short 50 +#define XMLVM_VTABLE_IDX_java_nio_ReadWriteHeapByteBuffer_slice__ 54 + +void __INIT_java_nio_ReadWriteHeapByteBuffer(); +void __INIT_IMPL_java_nio_ReadWriteHeapByteBuffer(); +void __DELETE_java_nio_ReadWriteHeapByteBuffer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_ReadWriteHeapByteBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_ReadWriteHeapByteBuffer(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_ReadWriteHeapByteBuffer(); +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_copy___java_nio_HeapByteBuffer_int(JAVA_OBJECT n1, JAVA_INT n2); +void java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_ReadWriteHeapByteBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_nio_ReadWriteHeapByteBuffer___INIT____byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 16 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_asReadOnlyBuffer__(JAVA_OBJECT me); +// Vtable index: 18 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_compact__(JAVA_OBJECT me); +// Vtable index: 20 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_duplicate__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_nio_ReadWriteHeapByteBuffer_isReadOnly__(JAVA_OBJECT me); +// Vtable index: 37 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_protectedArray__(JAVA_OBJECT me); +// Vtable index: 36 +JAVA_INT java_nio_ReadWriteHeapByteBuffer_protectedArrayOffset__(JAVA_OBJECT me); +// Vtable index: 38 +JAVA_BOOLEAN java_nio_ReadWriteHeapByteBuffer_protectedHasArray__(JAVA_OBJECT me); +// Vtable index: 51 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_put___byte(JAVA_OBJECT me, JAVA_BYTE n1); +// Vtable index: 53 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_put___int_byte(JAVA_OBJECT me, JAVA_INT n1, JAVA_BYTE n2); +// Vtable index: 52 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_put___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 41 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putDouble___double(JAVA_OBJECT me, JAVA_DOUBLE n1); +// Vtable index: 42 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putDouble___int_double(JAVA_OBJECT me, JAVA_INT n1, JAVA_DOUBLE n2); +// Vtable index: 43 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putFloat___float(JAVA_OBJECT me, JAVA_FLOAT n1); +// Vtable index: 44 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putFloat___int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); +// Vtable index: 45 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putInt___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 46 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putInt___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 47 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putLong___int_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2); +// Vtable index: 48 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putLong___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 49 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putShort___int_short(JAVA_OBJECT me, JAVA_INT n1, JAVA_SHORT n2); +// Vtable index: 50 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_putShort___short(JAVA_OBJECT me, JAVA_SHORT n1); +// Vtable index: 54 +JAVA_OBJECT java_nio_ReadWriteHeapByteBuffer_slice__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_charset_Charset.c b/tests/nbody-java/java_nio_charset_Charset.c new file mode 100644 index 0000000000000..605fcae8e1282 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_Charset.c @@ -0,0 +1,2310 @@ +#include "xmlvm.h" +#include "java_io_IOException.h" +#include "java_lang_Class.h" +#include "java_lang_ClassLoader.h" +#include "java_lang_Exception.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_Thread.h" +#include "java_lang_Throwable.h" +#include "java_nio_ByteBuffer.h" +#include "java_nio_CharBuffer.h" +#include "java_nio_charset_Charset_1.h" +#include "java_nio_charset_Charset_2.h" +#include "java_nio_charset_CharsetDecoder.h" +#include "java_nio_charset_CharsetEncoder.h" +#include "java_nio_charset_CodingErrorAction.h" +#include "java_nio_charset_spi_CharsetProvider.h" +#include "java_security_AccessController.h" +#include "java_util_Collections.h" +#include "java_util_Comparator.h" +#include "java_util_Enumeration.h" +#include "java_util_HashMap.h" +#include "java_util_HashSet.h" +#include "java_util_Iterator.h" +#include "java_util_Locale.h" +#include "java_util_Set.h" +#include "org_apache_harmony_niochar_CharsetProviderImpl.h" + +#include "java_nio_charset_Charset.h" + +#define XMLVM_CURRENT_CLASS_NAME Charset +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_Charset + +__TIB_DEFINITION_java_nio_charset_Charset __TIB_java_nio_charset_Charset = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_Charset, // classInitializer + "java.nio.charset.Charset", // className + "java.nio.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/lang/Comparable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_Charset), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_Charset; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_NAME; +static JAVA_OBJECT _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_ENCODING; +static JAVA_OBJECT _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_COMMENT; +static JAVA_OBJECT _STATIC_java_nio_charset_Charset_systemClassLoader; +static JAVA_OBJECT _STATIC_java_nio_charset_Charset__builtInProvider; +static JAVA_OBJECT _STATIC_java_nio_charset_Charset__builtInCharsets; +static JAVA_OBJECT _STATIC_java_nio_charset_Charset_cachedCharsetTable; +static JAVA_BOOLEAN _STATIC_java_nio_charset_Charset_inForNameInternal; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_Charset() +{ + staticInitializerLock(&__TIB_java_nio_charset_Charset); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_Charset.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_Charset.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_Charset); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_Charset.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_Charset.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_Charset.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.Charset") + __INIT_IMPL_java_nio_charset_Charset(); + } +} + +void __INIT_IMPL_java_nio_charset_Charset() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_Charset.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_Charset; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_Charset.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_nio_charset_Charset.vtable[1] = (VTABLE_PTR) &java_nio_charset_Charset_equals___java_lang_Object; + __TIB_java_nio_charset_Charset.vtable[4] = (VTABLE_PTR) &java_nio_charset_Charset_hashCode__; + __TIB_java_nio_charset_Charset.vtable[5] = (VTABLE_PTR) &java_nio_charset_Charset_toString__; + __TIB_java_nio_charset_Charset.vtable[6] = (VTABLE_PTR) &java_nio_charset_Charset_compareTo___java_lang_Object; + // Initialize interface information + __TIB_java_nio_charset_Charset.numImplementedInterfaces = 1; + __TIB_java_nio_charset_Charset.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_java_nio_charset_Charset.implementedInterfaces[0][0] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_java_nio_charset_Charset.itableBegin = &__TIB_java_nio_charset_Charset.itable[0]; + __TIB_java_nio_charset_Charset.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_charset_Charset.vtable[6]; + + _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_NAME = (java_lang_String*) xmlvm_create_java_string_from_pool(709); + _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_ENCODING = (java_lang_String*) xmlvm_create_java_string_from_pool(100); + _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_COMMENT = (java_lang_String*) xmlvm_create_java_string_from_pool(710); + _STATIC_java_nio_charset_Charset_systemClassLoader = (java_lang_ClassLoader*) JAVA_NULL; + _STATIC_java_nio_charset_Charset__builtInProvider = (org_apache_harmony_niochar_CharsetProviderImpl*) JAVA_NULL; + _STATIC_java_nio_charset_Charset__builtInCharsets = (java_lang_Object*) JAVA_NULL; + _STATIC_java_nio_charset_Charset_cachedCharsetTable = (java_util_HashMap*) JAVA_NULL; + _STATIC_java_nio_charset_Charset_inForNameInternal = 0; + + __TIB_java_nio_charset_Charset.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_Charset.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_Charset.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_Charset.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_Charset.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_Charset.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_Charset.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_Charset.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_Charset = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_Charset); + __TIB_java_nio_charset_Charset.clazz = __CLASS_java_nio_charset_Charset; + __TIB_java_nio_charset_Charset.baseType = JAVA_NULL; + __CLASS_java_nio_charset_Charset_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset); + __CLASS_java_nio_charset_Charset_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_1ARRAY); + __CLASS_java_nio_charset_Charset_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_2ARRAY); + java_nio_charset_Charset___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_Charset] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_Charset.classInitialized = 1; +} + +void __DELETE_java_nio_charset_Charset(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_Charset] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_charset_Charset*) me)->fields.java_nio_charset_Charset.canonicalName_ = (java_lang_String*) JAVA_NULL; + ((java_nio_charset_Charset*) me)->fields.java_nio_charset_Charset.aliasesSet_ = (java_util_HashSet*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_Charset] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_Charset() +{ XMLVM_CLASS_INIT(java_nio_charset_Charset) +java_nio_charset_Charset* me = (java_nio_charset_Charset*) XMLVM_MALLOC(sizeof(java_nio_charset_Charset)); + me->tib = &__TIB_java_nio_charset_Charset; + __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_Charset] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_Charset() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_nio_charset_Charset_GET_PROVIDER_CONFIGURATION_FILE_NAME() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_NAME; +} + +void java_nio_charset_Charset_PUT_PROVIDER_CONFIGURATION_FILE_NAME(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_NAME = v; +} + +JAVA_OBJECT java_nio_charset_Charset_GET_PROVIDER_CONFIGURATION_FILE_ENCODING() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_ENCODING; +} + +void java_nio_charset_Charset_PUT_PROVIDER_CONFIGURATION_FILE_ENCODING(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_ENCODING = v; +} + +JAVA_OBJECT java_nio_charset_Charset_GET_PROVIDER_CONFIGURATION_FILE_COMMENT() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_COMMENT; +} + +void java_nio_charset_Charset_PUT_PROVIDER_CONFIGURATION_FILE_COMMENT(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset_PROVIDER_CONFIGURATION_FILE_COMMENT = v; +} + +JAVA_OBJECT java_nio_charset_Charset_GET_systemClassLoader() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset_systemClassLoader; +} + +void java_nio_charset_Charset_PUT_systemClassLoader(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset_systemClassLoader = v; +} + +JAVA_OBJECT java_nio_charset_Charset_GET__builtInProvider() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset__builtInProvider; +} + +void java_nio_charset_Charset_PUT__builtInProvider(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset__builtInProvider = v; +} + +JAVA_OBJECT java_nio_charset_Charset_GET__builtInCharsets() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset__builtInCharsets; +} + +void java_nio_charset_Charset_PUT__builtInCharsets(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset__builtInCharsets = v; +} + +JAVA_OBJECT java_nio_charset_Charset_GET_cachedCharsetTable() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset_cachedCharsetTable; +} + +void java_nio_charset_Charset_PUT_cachedCharsetTable(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset_cachedCharsetTable = v; +} + +JAVA_BOOLEAN java_nio_charset_Charset_GET_inForNameInternal() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + return _STATIC_java_nio_charset_Charset_inForNameInternal; +} + +void java_nio_charset_Charset_PUT_inForNameInternal(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) +_STATIC_java_nio_charset_Charset_inForNameInternal = v; +} + +void java_nio_charset_Charset___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset___CLINIT___] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "", "?") + XMLVMElem _r0; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Charset.java", 96) + java_nio_charset_Charset_PUT__builtInProvider( _r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 99) + java_nio_charset_Charset_PUT__builtInCharsets( _r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 107) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + java_nio_charset_Charset_PUT_cachedCharsetTable( _r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 109) + _r0.i = 0; + java_nio_charset_Charset_PUT_inForNameInternal( _r0.i); + XMLVM_SOURCE_POSITION("Charset.java", 117) + _r0.o = __NEW_java_nio_charset_Charset_1(); + XMLVM_CHECK_NPE(0) + java_nio_charset_Charset_1___INIT___(_r0.o); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r0.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Charset.java", 116) + java_nio_charset_Charset_PUT__builtInProvider( _r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 75) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_Charset___INIT____java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset___INIT____java_lang_String_java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.o = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("Charset.java", 137) + XMLVM_CHECK_NPE(3) + java_lang_Object___INIT___(_r3.o); + XMLVM_SOURCE_POSITION("Charset.java", 138) + if (_r4.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("Charset.java", 139) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("Charset.java", 142) + java_nio_charset_Charset_checkCharsetName___java_lang_String(_r4.o); + XMLVM_SOURCE_POSITION("Charset.java", 143) + XMLVM_CHECK_NPE(3) + ((java_nio_charset_Charset*) _r3.o)->fields.java_nio_charset_Charset.canonicalName_ = _r4.o; + XMLVM_SOURCE_POSITION("Charset.java", 145) + _r0.o = __NEW_java_util_HashSet(); + XMLVM_CHECK_NPE(0) + java_util_HashSet___INIT___(_r0.o); + XMLVM_CHECK_NPE(3) + ((java_nio_charset_Charset*) _r3.o)->fields.java_nio_charset_Charset.aliasesSet_ = _r0.o; + XMLVM_SOURCE_POSITION("Charset.java", 146) + if (_r5.o == JAVA_NULL) goto label29; + XMLVM_SOURCE_POSITION("Charset.java", 147) + _r0.i = 0; + label26:; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r0.i < _r1.i) goto label30; + label29:; + XMLVM_SOURCE_POSITION("Charset.java", 152) + XMLVM_EXIT_METHOD() + return; + label30:; + XMLVM_SOURCE_POSITION("Charset.java", 148) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + java_nio_charset_Charset_checkCharsetName___java_lang_String(_r1.o); + XMLVM_SOURCE_POSITION("Charset.java", 149) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_nio_charset_Charset*) _r3.o)->fields.java_nio_charset_Charset.aliasesSet_; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_util_HashSet_add___java_lang_Object[7] + XMLVM_CHECK_NPE(1) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashSet*) _r1.o)->tib->vtable[7])(_r1.o, _r2.o); + _r0.i = _r0.i + 1; + goto label26; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_Charset_isSpecial___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_isSpecial___char] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "isSpecial", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Charset.java", 159) + _r0.i = 45; + if (_r0.i == _r1.i) goto label18; + _r0.i = 46; + if (_r0.i == _r1.i) goto label18; + _r0.i = 58; + if (_r0.i == _r1.i) goto label18; + _r0.i = 95; + if (_r0.i == _r1.i) goto label18; + _r0.i = 0; + label17:; + XMLVM_EXIT_METHOD() + return _r0.i; + label18:; + _r0.i = 1; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_Charset_isLetter___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_isLetter___char] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "isLetter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Charset.java", 167) + _r0.i = 97; + if (_r0.i > _r1.i) goto label8; + _r0.i = 122; + if (_r1.i <= _r0.i) goto label18; + label8:; + _r0.i = 65; + if (_r0.i > _r1.i) goto label16; + _r0.i = 90; + if (_r1.i <= _r0.i) goto label18; + label16:; + _r0.i = 0; + label17:; + XMLVM_EXIT_METHOD() + return _r0.i; + label18:; + _r0.i = 1; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_Charset_isDigit___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_isDigit___char] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "isDigit", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("Charset.java", 175) + _r0.i = 48; + if (_r0.i > _r1.i) goto label10; + _r0.i = 57; + if (_r1.i > _r0.i) goto label10; + _r0.i = 1; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = 0; + goto label9; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_Charset_checkCharsetName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_checkCharsetName___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "checkCharsetName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 184) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + if (_r0.i != 0) goto label12; + XMLVM_SOURCE_POSITION("Charset.java", 185) + + + // Red class access removed: java.nio.charset.IllegalCharsetNameException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.IllegalCharsetNameException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("Charset.java", 194) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + XMLVM_SOURCE_POSITION("Charset.java", 195) + _r1.i = 0; + label17:; + if (_r1.i < _r0.i) goto label20; + XMLVM_SOURCE_POSITION("Charset.java", 201) + XMLVM_EXIT_METHOD() + return; + label20:; + XMLVM_SOURCE_POSITION("Charset.java", 196) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(4) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r4.o)->tib->vtable[6])(_r4.o, _r1.i); + XMLVM_SOURCE_POSITION("Charset.java", 197) + _r3.i = java_nio_charset_Charset_isLetter___char(_r2.i); + if (_r3.i != 0) goto label48; + _r3.i = java_nio_charset_Charset_isDigit___char(_r2.i); + if (_r3.i != 0) goto label48; + _r2.i = java_nio_charset_Charset_isSpecial___char(_r2.i); + if (_r2.i != 0) goto label48; + XMLVM_SOURCE_POSITION("Charset.java", 198) + + + // Red class access removed: java.nio.charset.IllegalCharsetNameException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.IllegalCharsetNameException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label48:; + _r1.i = _r1.i + 1; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_getContextClassLoader__() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_getContextClassLoader__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "getContextClassLoader", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("Charset.java", 207) + _r0.o = java_lang_Thread_currentThread__(); + XMLVM_SOURCE_POSITION("Charset.java", 209) + _r1.o = __NEW_java_nio_charset_Charset_2(); + XMLVM_CHECK_NPE(1) + java_nio_charset_Charset_2___INIT____java_lang_Thread(_r1.o, _r0.o); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r1.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Charset.java", 208) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_Charset_getSystemClassLoader__() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_getSystemClassLoader__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "getSystemClassLoader", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Charset.java", 220) + _r0.o = java_nio_charset_Charset_GET_systemClassLoader(); + if (_r0.o != JAVA_NULL) goto label17; + XMLVM_SOURCE_POSITION("Charset.java", 222) + + + // Red class access removed: java.nio.charset.Charset$3::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.Charset$3:: + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r0.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Charset.java", 221) + java_nio_charset_Charset_PUT_systemClassLoader( _r0.o); + label17:; + XMLVM_SOURCE_POSITION("Charset.java", 228) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_Charset_addCharsets___java_nio_charset_spi_CharsetProvider_java_util_TreeMap(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_addCharsets___java_nio_charset_spi_CharsetProvider_java_util_TreeMap] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "addCharsets", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Charset.java", 235) + //java_nio_charset_spi_CharsetProvider_charsets__[7] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_charset_spi_CharsetProvider*) _r2.o)->tib->vtable[7])(_r2.o); + label4:; + XMLVM_SOURCE_POSITION("Charset.java", 236) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label11; + XMLVM_SOURCE_POSITION("Charset.java", 243) + XMLVM_EXIT_METHOD() + return; + label11:; + XMLVM_SOURCE_POSITION("Charset.java", 237) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("Charset.java", 239) + XMLVM_CHECK_NPE(2) + _r1.o = java_nio_charset_Charset_name__(_r2.o); + + + // Red class access removed: java.util.TreeMap::containsKey + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label4; + XMLVM_SOURCE_POSITION("Charset.java", 240) + XMLVM_CHECK_NPE(2) + _r1.o = java_nio_charset_Charset_name__(_r2.o); + + + // Red class access removed: java.util.TreeMap::put + XMLVM_RED_CLASS_DEPENDENCY(); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_trimClassName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_trimClassName___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "trimClassName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 249) + XMLVM_SOURCE_POSITION("Charset.java", 250) + // "#" + _r0.o = xmlvm_create_java_string_from_pool(710); + XMLVM_CHECK_NPE(2) + _r0.i = java_lang_String_indexOf___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 252) + _r1.i = -1; + if (_r0.i == _r1.i) goto label19; + XMLVM_SOURCE_POSITION("Charset.java", 253) + _r1.i = 0; + XMLVM_CHECK_NPE(2) + _r0.o = java_lang_String_substring___int_int(_r2.o, _r1.i, _r0.i); + label14:; + XMLVM_SOURCE_POSITION("Charset.java", 255) + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_trim__(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label19:; + _r0 = _r2; + goto label14; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_Charset_loadConfiguredCharsets___java_net_URL_java_lang_ClassLoader_java_util_TreeMap(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_loadConfiguredCharsets___java_net_URL_java_lang_ClassLoader_java_util_TreeMap] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "loadConfiguredCharsets", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r6.o = n1; + _r7.o = n2; + _r8.o = n3; + XMLVM_SOURCE_POSITION("Charset.java", 264) + _r0.o = JAVA_NULL; + XMLVM_TRY_BEGIN(w4567aaac20b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 266) + + + // Red class access removed: java.net.URL::openStream + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Charset.java", 268) + + + // Red class access removed: java.io.BufferedReader::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.InputStreamReader::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Charset.java", 269) + // "UTF-8" + _r4.o = xmlvm_create_java_string_from_pool(100); + + + // Red class access removed: java.io.InputStreamReader:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.BufferedReader:: + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1b6) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1b6,java_io_IOException,114) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1b6,java_lang_Object,97) + XMLVM_CATCH_END(w4567aaac20b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1b6) + XMLVM_TRY_BEGIN(w4567aaac20b1b7) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 270) + + + // Red class access removed: java.io.BufferedReader::readLine + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1b7) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1b7,java_io_IOException,87) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1b7,java_lang_Object,111) + XMLVM_CATCH_END(w4567aaac20b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1b7) + label21:; + XMLVM_SOURCE_POSITION("Charset.java", 271) + if (_r0.o != JAVA_NULL) goto label29; + XMLVM_SOURCE_POSITION("Charset.java", 303) + if (_r2.o == JAVA_NULL) goto label28; + XMLVM_TRY_BEGIN(w4567aaac20b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 304) + + + // Red class access removed: java.io.BufferedReader::close + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c13) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c13,java_io_IOException,109) + XMLVM_CATCH_END(w4567aaac20b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c13) + label28:; + XMLVM_SOURCE_POSITION("Charset.java", 310) + XMLVM_EXIT_METHOD() + return; + label29:; + XMLVM_TRY_BEGIN(w4567aaac20b1c18) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 272) + _r0.o = java_nio_charset_Charset_trimClassName___java_lang_String(_r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 274) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c18) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c18,java_io_IOException,87) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c18,java_lang_Object,111) + XMLVM_CATCH_END(w4567aaac20b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c18) + if (_r1.i <= 0) goto label54; + XMLVM_SOURCE_POSITION("Charset.java", 278) + _r1.i = 1; + XMLVM_TRY_BEGIN(w4567aaac20b1c22) + // Begin try + _r1.o = java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(_r0.o, _r1.i, _r7.o); + XMLVM_SOURCE_POSITION("Charset.java", 280) + //java_lang_Class_newInstance__[12] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Class*) _r1.o)->tib->vtable[12])(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c22) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c22,java_lang_Exception,59) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c22,java_io_IOException,87) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c22,java_lang_Object,111) + XMLVM_CATCH_END(w4567aaac20b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c22) + _r6 = _r0; + label49:; + XMLVM_TRY_BEGIN(w4567aaac20b1c25) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 294) + _r6.o = _r6.o; + java_nio_charset_Charset_addCharsets___java_nio_charset_spi_CharsetProvider_java_util_TreeMap(_r6.o, _r8.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c25) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c25,java_io_IOException,87) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c25,java_lang_Object,111) + XMLVM_CATCH_END(w4567aaac20b1c25) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c25) + label54:; + XMLVM_TRY_BEGIN(w4567aaac20b1c27) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 297) + + + // Red class access removed: java.io.BufferedReader::readLine + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c27) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c27,java_io_IOException,87) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c27,java_lang_Object,111) + XMLVM_CATCH_END(w4567aaac20b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c27) + goto label21; + label59:; + java_lang_Thread* curThread_w4567aaac20b1c30 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac20b1c30->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w4567aaac20b1c31) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 285) + java_nio_charset_Charset_getSystemClassLoader__(); + XMLVM_SOURCE_POSITION("Charset.java", 286) + _r1.i = 1; + XMLVM_SOURCE_POSITION("Charset.java", 287) + _r3.o = java_nio_charset_Charset_GET_systemClassLoader(); + _r0.o = java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(_r0.o, _r1.i, _r3.o); + XMLVM_SOURCE_POSITION("Charset.java", 288) + //java_lang_Class_newInstance__[12] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Class*) _r0.o)->tib->vtable[12])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c31) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c31,java_lang_Exception,76) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c31,java_io_IOException,87) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c31,java_lang_Object,111) + XMLVM_CATCH_END(w4567aaac20b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c31) + _r6 = _r0; + goto label49; + label76:; + XMLVM_SOURCE_POSITION("Charset.java", 289) + java_lang_Thread* curThread_w4567aaac20b1c36 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac20b1c36->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w4567aaac20b1c37) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 290) + + + // Red class access removed: java.lang.Error::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Exception_getMessage__[7] + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Exception*) _r0.o)->tib->vtable[7])(_r0.o); + + + // Red class access removed: java.lang.Error:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c37) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c37,java_io_IOException,87) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c37,java_lang_Object,111) + XMLVM_CATCH_END(w4567aaac20b1c37) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c37) + label87:; + java_lang_Thread* curThread_w4567aaac20b1c39 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac20b1c39->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + label89:; + if (_r0.o == JAVA_NULL) goto label28; + XMLVM_TRY_BEGIN(w4567aaac20b1c43) + // Begin try + + + // Red class access removed: java.io.BufferedReader::close + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c43) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c43,java_io_IOException,95) + XMLVM_CATCH_END(w4567aaac20b1c43) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c43) + goto label28; + label95:; + XMLVM_SOURCE_POSITION("Charset.java", 306) + java_lang_Thread* curThread_w4567aaac20b1c47 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac20b1c47->fields.java_lang_Thread.xmlvmException_; + goto label28; + label97:; + XMLVM_SOURCE_POSITION("Charset.java", 301) + java_lang_Thread* curThread_w4567aaac20b1c51 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac20b1c51->fields.java_lang_Thread.xmlvmException_; + _r5 = _r1; + _r1 = _r0; + _r0 = _r5; + label101:; + if (_r1.o == JAVA_NULL) goto label106; + XMLVM_TRY_BEGIN(w4567aaac20b1c57) + // Begin try + + + // Red class access removed: java.io.BufferedReader::close + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac20b1c57) + XMLVM_CATCH_SPECIFIC(w4567aaac20b1c57,java_io_IOException,107) + XMLVM_CATCH_END(w4567aaac20b1c57) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac20b1c57) + label106:; + XMLVM_SOURCE_POSITION("Charset.java", 309) + XMLVM_THROW_CUSTOM(_r0.o) + label107:; + java_lang_Thread* curThread_w4567aaac20b1c62 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac20b1c62->fields.java_lang_Thread.xmlvmException_; + goto label106; + label109:; + java_lang_Thread* curThread_w4567aaac20b1c65 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac20b1c65->fields.java_lang_Thread.xmlvmException_; + goto label28; + label111:; + java_lang_Thread* curThread_w4567aaac20b1c68 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac20b1c68->fields.java_lang_Thread.xmlvmException_; + _r1 = _r2; + goto label101; + label114:; + java_lang_Thread* curThread_w4567aaac20b1c72 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac20b1c72->fields.java_lang_Thread.xmlvmException_; + goto label89; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_availableCharsets__() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_availableCharsets__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "availableCharsets", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + // "META-INF/services/java.nio.charset.spi.CharsetProvider" + _r0.o = xmlvm_create_java_string_from_pool(709); + XMLVM_SOURCE_POSITION("Charset.java", 325) + _r0.o = java_nio_charset_Charset_GET__builtInCharsets(); + if (_r0.o != JAVA_NULL) goto label32; + XMLVM_SOURCE_POSITION("Charset.java", 326) + XMLVM_CLASS_INIT(java_nio_charset_Charset) + _r0.o = __CLASS_java_nio_charset_Charset; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4567aaac21b1b8) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 327) + _r1.o = java_nio_charset_Charset_GET__builtInCharsets(); + if (_r1.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w4567aaac21b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac21b1b8, sizeof(XMLVM_JMP_BUF)); goto label31; }; + XMLVM_SOURCE_POSITION("Charset.java", 328) + + + // Red class access removed: java.util.TreeMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Charset.java", 329) + + + // Red class access removed: java.nio.charset.Charset$IgnoreCaseComparator::getInstance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.TreeMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_nio_charset_Charset_PUT__builtInCharsets( _r1.o); + XMLVM_SOURCE_POSITION("Charset.java", 330) + _r1.o = java_nio_charset_Charset_GET__builtInProvider(); + _r2.o = java_nio_charset_Charset_GET__builtInCharsets(); + XMLVM_CHECK_NPE(1) + org_apache_harmony_niochar_CharsetProviderImpl_putCharsets___java_util_Map(_r1.o, _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac21b1b8) + XMLVM_CATCH_SPECIFIC(w4567aaac21b1b8,java_lang_Object,64) + XMLVM_CATCH_END(w4567aaac21b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac21b1b8) + label31:; + XMLVM_TRY_BEGIN(w4567aaac21b1c10) + // Begin try + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac21b1c10) + XMLVM_CATCH_SPECIFIC(w4567aaac21b1c10,java_lang_Object,64) + XMLVM_CATCH_END(w4567aaac21b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac21b1c10) + label32:; + XMLVM_SOURCE_POSITION("Charset.java", 336) + _r0.o = java_nio_charset_Charset_GET__builtInCharsets(); + XMLVM_SOURCE_POSITION("Charset.java", 337) + + + // Red class access removed: java.util.TreeMap::clone + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.TreeMap::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Charset.java", 340) + _r2.o = java_nio_charset_Charset_getContextClassLoader__(); + XMLVM_SOURCE_POSITION("Charset.java", 343) + if (_r2.o == JAVA_NULL) goto label67; + XMLVM_TRY_BEGIN(w4567aaac21b1c21) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 345) + // "META-INF/services/java.nio.charset.spi.CharsetProvider" + _r1.o = xmlvm_create_java_string_from_pool(709); + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_ClassLoader_getResources___java_lang_String(_r2.o, _r1.o); + _r3 = _r1; + XMLVM_SOURCE_POSITION("Charset.java", 344) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac21b1c21) + XMLVM_CATCH_SPECIFIC(w4567aaac21b1c21,java_io_IOException,90) + XMLVM_CATCH_END(w4567aaac21b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac21b1c21) + label53:; + XMLVM_TRY_BEGIN(w4567aaac21b1c23) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 352) + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac21b1c23) + XMLVM_CATCH_SPECIFIC(w4567aaac21b1c23,java_io_IOException,90) + XMLVM_CATCH_END(w4567aaac21b1c23) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac21b1c23) + if (_r1.i != 0) goto label80; + label59:; + XMLVM_SOURCE_POSITION("Charset.java", 359) + _r0.o = java_util_Collections_unmodifiableSortedMap___java_util_SortedMap(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label64:; + java_lang_Thread* curThread_w4567aaac21b1c30 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac21b1c30->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w4567aaac21b1c31) + // Begin try + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac21b1c31) + XMLVM_CATCH_SPECIFIC(w4567aaac21b1c31,java_lang_Object,64) + XMLVM_CATCH_END(w4567aaac21b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac21b1c31) + XMLVM_THROW_CUSTOM(_r1.o) + label67:; + XMLVM_TRY_BEGIN(w4567aaac21b1c34) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 347) + java_nio_charset_Charset_getSystemClassLoader__(); + XMLVM_SOURCE_POSITION("Charset.java", 348) + _r1.o = java_nio_charset_Charset_GET_systemClassLoader(); + XMLVM_SOURCE_POSITION("Charset.java", 349) + // "META-INF/services/java.nio.charset.spi.CharsetProvider" + _r3.o = xmlvm_create_java_string_from_pool(709); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_ClassLoader_getResources___java_lang_String(_r1.o, _r3.o); + _r3 = _r1; + { XMLVM_MEMCPY(curThread_w4567aaac21b1c34->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac21b1c34, sizeof(XMLVM_JMP_BUF)); goto label53; }; + XMLVM_SOURCE_POSITION("Charset.java", 353) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac21b1c34) + XMLVM_CATCH_SPECIFIC(w4567aaac21b1c34,java_io_IOException,90) + XMLVM_CATCH_END(w4567aaac21b1c34) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac21b1c34) + label80:; + XMLVM_TRY_BEGIN(w4567aaac21b1c36) + // Begin try + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r3.o); + + + // Red class access removed: java.net.URL::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + java_nio_charset_Charset_loadConfiguredCharsets___java_net_URL_java_lang_ClassLoader_java_util_TreeMap(_r1.o, _r2.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac21b1c36) + XMLVM_CATCH_SPECIFIC(w4567aaac21b1c36,java_io_IOException,90) + XMLVM_CATCH_END(w4567aaac21b1c36) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac21b1c36) + goto label53; + label90:; + java_lang_Thread* curThread_w4567aaac21b1c39 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac21b1c39->fields.java_lang_Thread.xmlvmException_; + goto label59; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_searchConfiguredCharsets___java_lang_String_java_lang_ClassLoader_java_net_URL(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_searchConfiguredCharsets___java_lang_String_java_lang_ClassLoader_java_net_URL] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "searchConfiguredCharsets", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r5.o = n1; + _r6.o = n2; + _r7.o = n3; + _r4.o = JAVA_NULL; + XMLVM_TRY_BEGIN(w4567aaac22b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 369) + XMLVM_SOURCE_POSITION("Charset.java", 371) + + + // Red class access removed: java.net.URL::openStream + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Charset.java", 373) + + + // Red class access removed: java.io.BufferedReader::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.InputStreamReader::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Charset.java", 374) + // "UTF-8" + _r3.o = xmlvm_create_java_string_from_pool(100); + + + // Red class access removed: java.io.InputStreamReader:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.BufferedReader:: + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1b5) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1b5,java_io_IOException,117) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1b5,java_lang_Object,114) + XMLVM_CATCH_END(w4567aaac22b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1b5) + XMLVM_TRY_BEGIN(w4567aaac22b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 375) + + + // Red class access removed: java.io.BufferedReader::readLine + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1b6) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1b6,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1b6,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1b6) + label21:; + XMLVM_SOURCE_POSITION("Charset.java", 376) + if (_r0.o != JAVA_NULL) goto label31; + _r0 = _r1; + label24:; + XMLVM_SOURCE_POSITION("Charset.java", 415) + if (_r0.o == JAVA_NULL) goto label29; + XMLVM_TRY_BEGIN(w4567aaac22b1c14) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 416) + + + // Red class access removed: java.io.BufferedReader::close + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c14) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c14,java_io_IOException,110) + XMLVM_CATCH_END(w4567aaac22b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c14) + label29:; + _r0 = _r4; + label30:; + XMLVM_SOURCE_POSITION("Charset.java", 409) + XMLVM_EXIT_METHOD() + return _r0.o; + label31:; + XMLVM_TRY_BEGIN(w4567aaac22b1c21) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 377) + _r0.o = java_nio_charset_Charset_trimClassName___java_lang_String(_r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 378) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c21) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c21,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c21,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c21) + if (_r2.i <= 0) goto label105; + XMLVM_SOURCE_POSITION("Charset.java", 382) + _r2.i = 1; + XMLVM_TRY_BEGIN(w4567aaac22b1c25) + // Begin try + _r2.o = java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(_r0.o, _r2.i, _r6.o); + XMLVM_SOURCE_POSITION("Charset.java", 384) + //java_lang_Class_newInstance__[12] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Class*) _r2.o)->tib->vtable[12])(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c25) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c25,java_lang_Exception,66) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c25,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c25,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c25) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c25) + label50:; + XMLVM_TRY_BEGIN(w4567aaac22b1c27) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 400) + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Charset.java", 401) + //java_nio_charset_spi_CharsetProvider_charsetForName___java_lang_String[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_nio_charset_spi_CharsetProvider*) _r0.o)->tib->vtable[6])(_r0.o, _r5.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c27) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c27,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c27,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c27) + XMLVM_SOURCE_POSITION("Charset.java", 402) + if (_r0.o == JAVA_NULL) goto label105; + if (_r1.o == JAVA_NULL) goto label30; + XMLVM_TRY_BEGIN(w4567aaac22b1c31) + // Begin try + + + // Red class access removed: java.io.BufferedReader::close + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c31) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c31,java_io_IOException,64) + XMLVM_CATCH_END(w4567aaac22b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c31) + goto label30; + label64:; + java_lang_Thread* curThread_w4567aaac22b1c34 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac22b1c34->fields.java_lang_Thread.xmlvmException_; + goto label30; + label66:; + java_lang_Thread* curThread_w4567aaac22b1c37 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w4567aaac22b1c37->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w4567aaac22b1c38) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 389) + java_nio_charset_Charset_getSystemClassLoader__(); + XMLVM_SOURCE_POSITION("Charset.java", 390) + _r2.i = 1; + XMLVM_SOURCE_POSITION("Charset.java", 391) + _r3.o = java_nio_charset_Charset_GET_systemClassLoader(); + _r0.o = java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(_r0.o, _r2.i, _r3.o); + XMLVM_SOURCE_POSITION("Charset.java", 392) + //java_lang_Class_newInstance__[12] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Class*) _r0.o)->tib->vtable[12])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c38) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c38,java_lang_Exception,87) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c38,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c38,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c38) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c38) + goto label50; + label82:; + XMLVM_SOURCE_POSITION("Charset.java", 393) + java_lang_Thread* curThread_w4567aaac22b1c42 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac22b1c42->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w4567aaac22b1c43) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 394) + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c43) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c43,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c43,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c43) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c43) + label84:; + XMLVM_TRY_BEGIN(w4567aaac22b1c45) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 412) + java_lang_Thread* curThread_w4567aaac22b1c45ab1 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac22b1c45ab1->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + { XMLVM_MEMCPY(curThread_w4567aaac22b1c45->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac22b1c45, sizeof(XMLVM_JMP_BUF)); goto label24; }; + XMLVM_SOURCE_POSITION("Charset.java", 395) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c45) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c45,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c45,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c45) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c45) + label87:; + XMLVM_TRY_BEGIN(w4567aaac22b1c47) + // Begin try + java_lang_Thread* curThread_w4567aaac22b1c47aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac22b1c47aa->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("Charset.java", 396) + + + // Red class access removed: java.lang.Error::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Exception_getMessage__[7] + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Exception*) _r0.o)->tib->vtable[7])(_r0.o); + + + // Red class access removed: java.lang.Error:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r2.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c47) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c47,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c47,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c47) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c47) + label98:; + XMLVM_SOURCE_POSITION("Charset.java", 413) + java_lang_Thread* curThread_w4567aaac22b1c50 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac22b1c50->fields.java_lang_Thread.xmlvmException_; + label99:; + if (_r1.o == JAVA_NULL) goto label104; + XMLVM_TRY_BEGIN(w4567aaac22b1c53) + // Begin try + + + // Red class access removed: java.io.BufferedReader::close + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c53) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c53,java_io_IOException,112) + XMLVM_CATCH_END(w4567aaac22b1c53) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c53) + label104:; + XMLVM_SOURCE_POSITION("Charset.java", 421) + XMLVM_THROW_CUSTOM(_r0.o) + label105:; + XMLVM_TRY_BEGIN(w4567aaac22b1c58) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 407) + + + // Red class access removed: java.io.BufferedReader::readLine + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac22b1c58) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c58,java_io_IOException,84) + XMLVM_CATCH_SPECIFIC(w4567aaac22b1c58,java_lang_Object,98) + XMLVM_CATCH_END(w4567aaac22b1c58) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac22b1c58) + goto label21; + label110:; + java_lang_Thread* curThread_w4567aaac22b1c61 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac22b1c61->fields.java_lang_Thread.xmlvmException_; + goto label29; + label112:; + java_lang_Thread* curThread_w4567aaac22b1c64 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4567aaac22b1c64->fields.java_lang_Thread.xmlvmException_; + goto label104; + label114:; + java_lang_Thread* curThread_w4567aaac22b1c67 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac22b1c67->fields.java_lang_Thread.xmlvmException_; + _r1 = _r4; + goto label99; + label117:; + java_lang_Thread* curThread_w4567aaac22b1c71 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac22b1c71->fields.java_lang_Thread.xmlvmException_; + _r0 = _r4; + goto label24; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_forNameInternal___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_forNameInternal___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "forNameInternal", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.o = n1; + // "META-INF/services/java.nio.charset.spi.CharsetProvider" + _r0.o = xmlvm_create_java_string_from_pool(709); + XMLVM_SOURCE_POSITION("Charset.java", 431) + XMLVM_CLASS_INIT(java_nio_charset_Charset) + _r1.o = __CLASS_java_nio_charset_Charset; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w4567aaac23b1b6) + // Begin try + _r0.o = java_nio_charset_Charset_GET_cachedCharsetTable(); + //java_util_HashMap_get___java_lang_Object[10] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[10])(_r0.o, _r5.o); + _r0.o = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1b6) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1b6,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1b6) + XMLVM_SOURCE_POSITION("Charset.java", 432) + if (_r0.o == JAVA_NULL) goto label17; + label15:; + XMLVM_SOURCE_POSITION("Charset.java", 484) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label17:; + XMLVM_SOURCE_POSITION("Charset.java", 436) + if (_r5.o != JAVA_NULL) goto label28; + XMLVM_TRY_BEGIN(w4567aaac23b1c16) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 437) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c16) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c16,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c16) + label25:; + java_lang_Thread* curThread_w4567aaac23b1c18 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac23b1c18->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_TRY_BEGIN(w4567aaac23b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 439) + java_nio_charset_Charset_checkCharsetName___java_lang_String(_r5.o); + XMLVM_SOURCE_POSITION("Charset.java", 441) + _r0.o = java_nio_charset_Charset_GET__builtInProvider(); + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w4567aaac23b1c22->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c22, sizeof(XMLVM_JMP_BUF)); goto label42; }; + XMLVM_SOURCE_POSITION("Charset.java", 442) + _r0.o = __NEW_org_apache_harmony_niochar_CharsetProviderImpl(); + XMLVM_CHECK_NPE(0) + org_apache_harmony_niochar_CharsetProviderImpl___INIT___(_r0.o); + java_nio_charset_Charset_PUT__builtInProvider( _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c22) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c22,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c22) + label42:; + XMLVM_TRY_BEGIN(w4567aaac23b1c24) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 444) + _r0.o = java_nio_charset_Charset_GET__builtInProvider(); + //org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((org_apache_harmony_niochar_CharsetProviderImpl*) _r0.o)->tib->vtable[6])(_r0.o, _r5.o); + XMLVM_SOURCE_POSITION("Charset.java", 445) + if (_r0.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w4567aaac23b1c24->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c24, sizeof(XMLVM_JMP_BUF)); goto label54; }; + XMLVM_SOURCE_POSITION("Charset.java", 446) + java_nio_charset_Charset_cacheCharset___java_nio_charset_Charset_java_lang_String(_r0.o, _r5.o); + { XMLVM_MEMCPY(curThread_w4567aaac23b1c24->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c24, sizeof(XMLVM_JMP_BUF)); goto label15; }; + XMLVM_SOURCE_POSITION("Charset.java", 451) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c24) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c24,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c24) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c24) + label54:; + XMLVM_TRY_BEGIN(w4567aaac23b1c26) + // Begin try + _r2.o = java_nio_charset_Charset_getContextClassLoader__(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c26) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c26,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c26) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c26) + XMLVM_SOURCE_POSITION("Charset.java", 454) + if (_r2.o == JAVA_NULL) goto label78; + XMLVM_TRY_BEGIN(w4567aaac23b1c29) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 456) + // "META-INF/services/java.nio.charset.spi.CharsetProvider" + _r0.o = xmlvm_create_java_string_from_pool(709); + XMLVM_CHECK_NPE(2) + _r0.o = java_lang_ClassLoader_getResources___java_lang_String(_r2.o, _r0.o); + _r3 = _r0; + XMLVM_SOURCE_POSITION("Charset.java", 455) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c29) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c29,java_io_IOException,131) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c29,java_lang_Object,136) + XMLVM_CATCH_END(w4567aaac23b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c29) + label67:; + XMLVM_TRY_BEGIN(w4567aaac23b1c31) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 469) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c31) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c31,java_io_IOException,131) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c31,java_lang_Object,136) + XMLVM_CATCH_END(w4567aaac23b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c31) + if (_r0.i != 0) goto label106; + XMLVM_SOURCE_POSITION("Charset.java", 482) + _r0.i = 0; + XMLVM_TRY_BEGIN(w4567aaac23b1c35) + // Begin try + java_nio_charset_Charset_PUT_inForNameInternal( _r0.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c35) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c35,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c35) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c35) + label76:; + _r0.o = JAVA_NULL; + goto label15; + label78:; + XMLVM_TRY_BEGIN(w4567aaac23b1c40) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 458) + java_nio_charset_Charset_getSystemClassLoader__(); + XMLVM_SOURCE_POSITION("Charset.java", 459) + _r0.o = java_nio_charset_Charset_GET_systemClassLoader(); + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w4567aaac23b1c40->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c40, sizeof(XMLVM_JMP_BUF)); goto label96; }; + XMLVM_SOURCE_POSITION("Charset.java", 461) + + + // Red class access removed: java.util.Vector::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Vector:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Vector::elements + XMLVM_RED_CLASS_DEPENDENCY(); + _r3 = _r0; + { XMLVM_MEMCPY(curThread_w4567aaac23b1c40->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c40, sizeof(XMLVM_JMP_BUF)); goto label67; }; + XMLVM_SOURCE_POSITION("Charset.java", 463) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c40) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c40,java_io_IOException,131) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c40,java_lang_Object,136) + XMLVM_CATCH_END(w4567aaac23b1c40) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c40) + label96:; + XMLVM_TRY_BEGIN(w4567aaac23b1c42) + // Begin try + _r0.o = java_nio_charset_Charset_GET_systemClassLoader(); + XMLVM_SOURCE_POSITION("Charset.java", 464) + // "META-INF/services/java.nio.charset.spi.CharsetProvider" + _r3.o = xmlvm_create_java_string_from_pool(709); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_ClassLoader_getResources___java_lang_String(_r0.o, _r3.o); + _r3 = _r0; + { XMLVM_MEMCPY(curThread_w4567aaac23b1c42->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c42, sizeof(XMLVM_JMP_BUF)); goto label67; }; + XMLVM_SOURCE_POSITION("Charset.java", 470) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c42) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c42,java_io_IOException,131) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c42,java_lang_Object,136) + XMLVM_CATCH_END(w4567aaac23b1c42) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c42) + label106:; + XMLVM_TRY_BEGIN(w4567aaac23b1c44) + // Begin try + _r0.i = 1; + java_nio_charset_Charset_PUT_inForNameInternal( _r0.i); + XMLVM_SOURCE_POSITION("Charset.java", 472) + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r3.o); + + + // Red class access removed: java.net.URL::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Charset.java", 471) + _r0.o = java_nio_charset_Charset_searchConfiguredCharsets___java_lang_String_java_lang_ClassLoader_java_net_URL(_r5.o, _r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 473) + _r4.i = 0; + java_nio_charset_Charset_PUT_inForNameInternal( _r4.i); + XMLVM_SOURCE_POSITION("Charset.java", 474) + if (_r0.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w4567aaac23b1c44->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c44, sizeof(XMLVM_JMP_BUF)); goto label67; }; + XMLVM_SOURCE_POSITION("Charset.java", 475) + java_nio_charset_Charset_cacheCharset___java_nio_charset_Charset_java_lang_String(_r0.o, _r5.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c44) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c44,java_io_IOException,131) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c44,java_lang_Object,136) + XMLVM_CATCH_END(w4567aaac23b1c44) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c44) + _r2.i = 0; + XMLVM_TRY_BEGIN(w4567aaac23b1c46) + // Begin try + java_nio_charset_Charset_PUT_inForNameInternal( _r2.i); + { XMLVM_MEMCPY(curThread_w4567aaac23b1c46->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c46, sizeof(XMLVM_JMP_BUF)); goto label15; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c46) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c46,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c46) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c46) + label131:; + XMLVM_TRY_BEGIN(w4567aaac23b1c48) + // Begin try + java_lang_Thread* curThread_w4567aaac23b1c48aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac23b1c48aa->fields.java_lang_Thread.xmlvmException_; + _r0.i = 0; + java_nio_charset_Charset_PUT_inForNameInternal( _r0.i); + { XMLVM_MEMCPY(curThread_w4567aaac23b1c48->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac23b1c48, sizeof(XMLVM_JMP_BUF)); goto label76; }; + XMLVM_SOURCE_POSITION("Charset.java", 481) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c48) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c48,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c48) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c48) + label136:; + XMLVM_TRY_BEGIN(w4567aaac23b1c50) + // Begin try + java_lang_Thread* curThread_w4567aaac23b1c50aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac23b1c50aa->fields.java_lang_Thread.xmlvmException_; + _r2.i = 0; + java_nio_charset_Charset_PUT_inForNameInternal( _r2.i); + XMLVM_SOURCE_POSITION("Charset.java", 483) + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac23b1c50) + XMLVM_CATCH_SPECIFIC(w4567aaac23b1c50,java_lang_Object,25) + XMLVM_CATCH_END(w4567aaac23b1c50) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac23b1c50) + //XMLVM_END_WRAPPER +} + +void java_nio_charset_Charset_cacheCharset___java_nio_charset_Charset_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_cacheCharset___java_nio_charset_Charset_java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "cacheCharset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Charset.java", 491) + XMLVM_CHECK_NPE(2) + _r0.o = java_nio_charset_Charset_name__(_r2.o); + XMLVM_SOURCE_POSITION("Charset.java", 492) + _r1.o = java_nio_charset_Charset_GET_cachedCharsetTable(); + //java_util_HashMap_containsKey___java_lang_Object[7] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r1.o)->tib->vtable[7])(_r1.o, _r0.o); + if (_r1.i != 0) goto label17; + XMLVM_SOURCE_POSITION("Charset.java", 493) + _r1.o = java_nio_charset_Charset_GET_cachedCharsetTable(); + //java_util_HashMap_put___java_lang_Object_java_lang_Object[14] + XMLVM_CHECK_NPE(1) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r1.o)->tib->vtable[14])(_r1.o, _r0.o, _r2.o); + label17:; + XMLVM_SOURCE_POSITION("Charset.java", 496) + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r3.o); + if (_r0.i != 0) goto label36; + XMLVM_SOURCE_POSITION("Charset.java", 497) + _r0.o = java_nio_charset_Charset_GET_cachedCharsetTable(); + //java_util_HashMap_containsKey___java_lang_Object[7] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[7])(_r0.o, _r3.o); + if (_r0.i != 0) goto label36; + XMLVM_SOURCE_POSITION("Charset.java", 498) + _r0.o = java_nio_charset_Charset_GET_cachedCharsetTable(); + //java_util_HashMap_put___java_lang_Object_java_lang_Object[14] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[14])(_r0.o, _r3.o, _r2.o); + label36:; + XMLVM_SOURCE_POSITION("Charset.java", 501) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_forName___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_forName___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "forName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 515) + _r0.o = java_nio_charset_Charset_forNameInternal___java_lang_String(_r1.o); + XMLVM_SOURCE_POSITION("Charset.java", 516) + if (_r0.o != JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("Charset.java", 517) + + + // Red class access removed: java.nio.charset.UnsupportedCharsetException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.UnsupportedCharsetException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("Charset.java", 519) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_Charset_isSupported___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_isSupported___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "isSupported", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = n1; + _r3.i = 0; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Charset.java", 532) + XMLVM_CLASS_INIT(java_nio_charset_Charset) + _r1.o = __CLASS_java_nio_charset_Charset; + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w4567aaac26b1b7) + // Begin try + _r0.i = java_nio_charset_Charset_GET_inForNameInternal(); + if (_r0.i == 0) { XMLVM_MEMCPY(curThread_w4567aaac26b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac26b1b7, sizeof(XMLVM_JMP_BUF)); goto label62; }; + XMLVM_SOURCE_POSITION("Charset.java", 533) + _r0.o = java_nio_charset_Charset_GET_cachedCharsetTable(); + //java_util_HashMap_get___java_lang_Object[10] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[10])(_r0.o, _r4.o); + _r0.o = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac26b1b7) + XMLVM_CATCH_SPECIFIC(w4567aaac26b1b7,java_lang_Object,30) + XMLVM_CATCH_END(w4567aaac26b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac26b1b7) + XMLVM_SOURCE_POSITION("Charset.java", 534) + if (_r0.o == JAVA_NULL) goto label22; + _r0 = _r2; + label20:; + XMLVM_SOURCE_POSITION("Charset.java", 535) + XMLVM_SOURCE_POSITION("Charset.java", 555) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + XMLVM_SOURCE_POSITION("Charset.java", 538) + if (_r4.o != JAVA_NULL) goto label33; + XMLVM_TRY_BEGIN(w4567aaac26b1c19) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 539) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac26b1c19) + XMLVM_CATCH_SPECIFIC(w4567aaac26b1c19,java_lang_Object,30) + XMLVM_CATCH_END(w4567aaac26b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac26b1c19) + label30:; + java_lang_Thread* curThread_w4567aaac26b1c21 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac26b1c21->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label33:; + XMLVM_TRY_BEGIN(w4567aaac26b1c25) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 541) + java_nio_charset_Charset_checkCharsetName___java_lang_String(_r4.o); + XMLVM_SOURCE_POSITION("Charset.java", 544) + _r0.o = java_nio_charset_Charset_GET__builtInProvider(); + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w4567aaac26b1c25->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac26b1c25, sizeof(XMLVM_JMP_BUF)); goto label47; }; + XMLVM_SOURCE_POSITION("Charset.java", 545) + _r0.o = __NEW_org_apache_harmony_niochar_CharsetProviderImpl(); + XMLVM_CHECK_NPE(0) + org_apache_harmony_niochar_CharsetProviderImpl___INIT___(_r0.o); + java_nio_charset_Charset_PUT__builtInProvider( _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac26b1c25) + XMLVM_CATCH_SPECIFIC(w4567aaac26b1c25,java_lang_Object,30) + XMLVM_CATCH_END(w4567aaac26b1c25) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac26b1c25) + label47:; + XMLVM_TRY_BEGIN(w4567aaac26b1c27) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 547) + _r0.o = java_nio_charset_Charset_GET__builtInProvider(); + //org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String[6] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((org_apache_harmony_niochar_CharsetProviderImpl*) _r0.o)->tib->vtable[6])(_r0.o, _r4.o); + XMLVM_SOURCE_POSITION("Charset.java", 548) + if (_r0.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w4567aaac26b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac26b1c27, sizeof(XMLVM_JMP_BUF)); goto label60; }; + XMLVM_SOURCE_POSITION("Charset.java", 549) + java_nio_charset_Charset_cacheCharset___java_nio_charset_Charset_java_lang_String(_r0.o, _r4.o); + _r0 = _r2; + XMLVM_SOURCE_POSITION("Charset.java", 550) + { XMLVM_MEMCPY(curThread_w4567aaac26b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac26b1c27, sizeof(XMLVM_JMP_BUF)); goto label20; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac26b1c27) + XMLVM_CATCH_SPECIFIC(w4567aaac26b1c27,java_lang_Object,30) + XMLVM_CATCH_END(w4567aaac26b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac26b1c27) + label60:; + XMLVM_TRY_BEGIN(w4567aaac26b1c29) + // Begin try + _r0 = _r3; + XMLVM_SOURCE_POSITION("Charset.java", 552) + { XMLVM_MEMCPY(curThread_w4567aaac26b1c29->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4567aaac26b1c29, sizeof(XMLVM_JMP_BUF)); goto label20; }; + XMLVM_SOURCE_POSITION("Charset.java", 554) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac26b1c29) + XMLVM_CATCH_SPECIFIC(w4567aaac26b1c29,java_lang_Object,30) + XMLVM_CATCH_END(w4567aaac26b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac26b1c29) + label62:; + XMLVM_TRY_BEGIN(w4567aaac26b1c31) + // Begin try + _r0.o = java_nio_charset_Charset_forNameInternal___java_lang_String(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac26b1c31) + XMLVM_CATCH_SPECIFIC(w4567aaac26b1c31,java_lang_Object,30) + XMLVM_CATCH_END(w4567aaac26b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac26b1c31) + if (_r0.o == JAVA_NULL) goto label70; + _r0 = _r2; + goto label20; + label70:; + _r0 = _r3; + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_name__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_name__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "name", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 591) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_Charset*) _r1.o)->fields.java_nio_charset_Charset.canonicalName_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_aliases__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_aliases__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "aliases", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 600) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_Charset*) _r1.o)->fields.java_nio_charset_Charset.aliasesSet_; + _r0.o = java_util_Collections_unmodifiableSet___java_util_Set(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_displayName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_displayName__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "displayName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 612) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_Charset*) _r1.o)->fields.java_nio_charset_Charset.canonicalName_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_displayName___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_displayName___java_util_Locale] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "displayName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 626) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_Charset*) _r1.o)->fields.java_nio_charset_Charset.canonicalName_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_Charset_isRegistered__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_isRegistered__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "isRegistered", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 637) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_Charset*) _r2.o)->fields.java_nio_charset_Charset.canonicalName_; + // "x-" + _r1.o = xmlvm_create_java_string_from_pool(711); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_startsWith___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label22; + XMLVM_SOURCE_POSITION("Charset.java", 638) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_Charset*) _r2.o)->fields.java_nio_charset_Charset.canonicalName_; + // "X-" + _r1.o = xmlvm_create_java_string_from_pool(712); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_startsWith___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label22; + _r0.i = 1; + label21:; + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + _r0.i = 0; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_Charset_canEncode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_canEncode__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "canEncode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 647) + _r0.i = 1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_encode___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_encode___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "encode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_TRY_BEGIN(w4567aaac36b1b3) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 663) + //java_nio_charset_Charset_newEncoder__[9] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_charset_Charset*) _r3.o)->tib->vtable[9])(_r3.o); + XMLVM_SOURCE_POSITION("Charset.java", 664) + _r1.o = java_nio_charset_CodingErrorAction_GET_REPLACE(); + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_CharsetEncoder_onMalformedInput___java_nio_charset_CodingErrorAction(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Charset.java", 665) + _r1.o = java_nio_charset_CodingErrorAction_GET_REPLACE(); + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_CharsetEncoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(_r0.o, _r1.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer(_r0.o, _r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac36b1b3) + XMLVM_CATCH_END(w4567aaac36b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac36b1b3) + XMLVM_EXIT_METHOD() + return _r0.o; + label21:; + XMLVM_SOURCE_POSITION("Charset.java", 668) + java_lang_Thread* curThread_w4567aaac36b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac36b1b7->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("Charset.java", 669) + + + // Red class access removed: java.lang.Error::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.CharacterCodingException::getMessage + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.Error:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_encode___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_encode___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "encode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 684) + _r0.o = java_nio_CharBuffer_wrap___java_lang_CharSequence(_r2.o); + XMLVM_CHECK_NPE(1) + _r0.o = java_nio_charset_Charset_encode___java_nio_CharBuffer(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_decode___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_decode___java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "decode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_TRY_BEGIN(w4567aaac38b1b3) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 701) + //java_nio_charset_Charset_newDecoder__[8] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_charset_Charset*) _r3.o)->tib->vtable[8])(_r3.o); + XMLVM_SOURCE_POSITION("Charset.java", 702) + _r1.o = java_nio_charset_CodingErrorAction_GET_REPLACE(); + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_CharsetDecoder_onMalformedInput___java_nio_charset_CodingErrorAction(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Charset.java", 703) + _r1.o = java_nio_charset_CodingErrorAction_GET_REPLACE(); + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_CharsetDecoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(_r0.o, _r1.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer(_r0.o, _r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac38b1b3) + XMLVM_CATCH_END(w4567aaac38b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac38b1b3) + XMLVM_EXIT_METHOD() + return _r0.o; + label21:; + XMLVM_SOURCE_POSITION("Charset.java", 706) + java_lang_Thread* curThread_w4567aaac38b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac38b1b7->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("Charset.java", 707) + + + // Red class access removed: java.lang.Error::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.CharacterCodingException::getMessage + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.Error:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_charset_Charset_compareTo___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_compareTo___java_nio_charset_Charset] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 727) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_Charset*) _r2.o)->fields.java_nio_charset_Charset.canonicalName_; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_nio_charset_Charset*) _r3.o)->fields.java_nio_charset_Charset.canonicalName_; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_compareToIgnoreCase___java_lang_String(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_Charset_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 746) + XMLVM_CLASS_INIT(java_nio_charset_Charset) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_nio_charset_Charset); + if (_r0.i == 0) goto label15; + XMLVM_SOURCE_POSITION("Charset.java", 747) + _r3.o = _r3.o; + XMLVM_SOURCE_POSITION("Charset.java", 748) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_Charset*) _r2.o)->fields.java_nio_charset_Charset.canonicalName_; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_nio_charset_Charset*) _r3.o)->fields.java_nio_charset_Charset.canonicalName_; + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + label14:; + XMLVM_SOURCE_POSITION("Charset.java", 750) + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + _r0.i = 0; + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_charset_Charset_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_hashCode__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 760) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_Charset*) _r1.o)->fields.java_nio_charset_Charset.canonicalName_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[4])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_toString__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 771) + _r0.o = __NEW_java_lang_StringBuilder(); + // "Charset[" + _r1.o = xmlvm_create_java_string_from_pool(713); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_nio_charset_Charset*) _r2.o)->fields.java_nio_charset_Charset.canonicalName_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + // "]" + _r1.o = xmlvm_create_java_string_from_pool(183); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_defaultCharset__() +{ + XMLVM_CLASS_INIT(java_nio_charset_Charset) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_defaultCharset__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "defaultCharset", "?") + volatile XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Charset.java", 782) + + + // Red class access removed: java.nio.charset.Charset$4::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.Charset$4:: + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r0.o); + _r0.o = _r0.o; + XMLVM_TRY_BEGIN(w4567aaac43b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Charset.java", 788) + _r0.o = java_nio_charset_Charset_forName___java_lang_String(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4567aaac43b1b6) + XMLVM_CATCH_END(w4567aaac43b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4567aaac43b1b6) + label15:; + XMLVM_SOURCE_POSITION("Charset.java", 792) + XMLVM_EXIT_METHOD() + return _r0.o; + label16:; + XMLVM_SOURCE_POSITION("Charset.java", 790) + java_lang_Thread* curThread_w4567aaac43b1c12 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4567aaac43b1c12->fields.java_lang_Thread.xmlvmException_; + // "UTF-8" + _r0.o = xmlvm_create_java_string_from_pool(100); + _r0.o = java_nio_charset_Charset_forName___java_lang_String(_r0.o); + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_charset_Charset_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_compareTo___java_lang_Object] + XMLVM_ENTER_METHOD("java.nio.charset.Charset", "compareTo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 1) + _r2.o = _r2.o; + XMLVM_CHECK_NPE(1) + _r0.i = java_nio_charset_Charset_compareTo___java_nio_charset_Charset(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_Charset.h b/tests/nbody-java/java_nio_charset_Charset.h new file mode 100644 index 0000000000000..d15ddd2afad16 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_Charset.h @@ -0,0 +1,226 @@ +#ifndef __JAVA_NIO_CHARSET_CHARSET__ +#define __JAVA_NIO_CHARSET_CHARSET__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_Charset 8 +// Implemented interfaces: +#include "java_lang_Comparable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +XMLVM_FORWARD_DECL(java_io_IOException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader +#define XMLVM_FORWARD_DECL_java_lang_ClassLoader +XMLVM_FORWARD_DECL(java_lang_ClassLoader) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Exception +#define XMLVM_FORWARD_DECL_java_lang_Exception +XMLVM_FORWARD_DECL(java_lang_Exception) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset_1 +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset_1 +XMLVM_FORWARD_DECL(java_nio_charset_Charset_1) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset_2 +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset_2 +XMLVM_FORWARD_DECL(java_nio_charset_Charset_2) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +#define XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +XMLVM_FORWARD_DECL(java_nio_charset_CharsetDecoder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CharsetEncoder +#define XMLVM_FORWARD_DECL_java_nio_charset_CharsetEncoder +XMLVM_FORWARD_DECL(java_nio_charset_CharsetEncoder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +#define XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +XMLVM_FORWARD_DECL(java_nio_charset_CodingErrorAction) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_spi_CharsetProvider +#define XMLVM_FORWARD_DECL_java_nio_charset_spi_CharsetProvider +XMLVM_FORWARD_DECL(java_nio_charset_spi_CharsetProvider) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections +#define XMLVM_FORWARD_DECL_java_util_Collections +XMLVM_FORWARD_DECL(java_util_Collections) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Comparator +#define XMLVM_FORWARD_DECL_java_util_Comparator +XMLVM_FORWARD_DECL(java_util_Comparator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap +#define XMLVM_FORWARD_DECL_java_util_HashMap +XMLVM_FORWARD_DECL(java_util_HashMap) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashSet +#define XMLVM_FORWARD_DECL_java_util_HashSet +XMLVM_FORWARD_DECL(java_util_HashSet) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Locale +#define XMLVM_FORWARD_DECL_java_util_Locale +XMLVM_FORWARD_DECL(java_util_Locale) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_CharsetProviderImpl) +#endif +// Class declarations for java.nio.charset.Charset +XMLVM_DEFINE_CLASS(java_nio_charset_Charset, 10, XMLVM_ITABLE_SIZE_java_nio_charset_Charset) + +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_Charset +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_Charset \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT canonicalName_; \ + JAVA_OBJECT aliasesSet_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_Charset \ + } java_nio_charset_Charset + +struct java_nio_charset_Charset { + __TIB_DEFINITION_java_nio_charset_Charset* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_Charset; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +typedef struct java_nio_charset_Charset java_nio_charset_Charset; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_Charset 10 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_contains___java_nio_charset_Charset 7 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_newEncoder__ 9 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_newDecoder__ 8 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_toString__ 5 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_compareTo___java_lang_Object 6 + +void __INIT_java_nio_charset_Charset(); +void __INIT_IMPL_java_nio_charset_Charset(); +void __DELETE_java_nio_charset_Charset(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_Charset(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_Charset(); +JAVA_OBJECT java_nio_charset_Charset_GET_PROVIDER_CONFIGURATION_FILE_NAME(); +void java_nio_charset_Charset_PUT_PROVIDER_CONFIGURATION_FILE_NAME(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_Charset_GET_PROVIDER_CONFIGURATION_FILE_ENCODING(); +void java_nio_charset_Charset_PUT_PROVIDER_CONFIGURATION_FILE_ENCODING(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_Charset_GET_PROVIDER_CONFIGURATION_FILE_COMMENT(); +void java_nio_charset_Charset_PUT_PROVIDER_CONFIGURATION_FILE_COMMENT(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_Charset_GET_systemClassLoader(); +void java_nio_charset_Charset_PUT_systemClassLoader(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_Charset_GET__builtInProvider(); +void java_nio_charset_Charset_PUT__builtInProvider(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_Charset_GET__builtInCharsets(); +void java_nio_charset_Charset_PUT__builtInCharsets(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_Charset_GET_cachedCharsetTable(); +void java_nio_charset_Charset_PUT_cachedCharsetTable(JAVA_OBJECT v); +JAVA_BOOLEAN java_nio_charset_Charset_GET_inForNameInternal(); +void java_nio_charset_Charset_PUT_inForNameInternal(JAVA_BOOLEAN v); +void java_nio_charset_Charset___CLINIT_(); +void java_nio_charset_Charset___INIT____java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_nio_charset_Charset_isSpecial___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_nio_charset_Charset_isLetter___char(JAVA_CHAR n1); +JAVA_BOOLEAN java_nio_charset_Charset_isDigit___char(JAVA_CHAR n1); +void java_nio_charset_Charset_checkCharsetName___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_Charset_getContextClassLoader__(); +void java_nio_charset_Charset_getSystemClassLoader__(); +void java_nio_charset_Charset_addCharsets___java_nio_charset_spi_CharsetProvider_java_util_TreeMap(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_nio_charset_Charset_trimClassName___java_lang_String(JAVA_OBJECT n1); +void java_nio_charset_Charset_loadConfiguredCharsets___java_net_URL_java_lang_ClassLoader_java_util_TreeMap(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_nio_charset_Charset_availableCharsets__(); +JAVA_OBJECT java_nio_charset_Charset_searchConfiguredCharsets___java_lang_String_java_lang_ClassLoader_java_net_URL(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_nio_charset_Charset_forNameInternal___java_lang_String(JAVA_OBJECT n1); +void java_nio_charset_Charset_cacheCharset___java_nio_charset_Charset_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_nio_charset_Charset_forName___java_lang_String(JAVA_OBJECT n1); +JAVA_BOOLEAN java_nio_charset_Charset_isSupported___java_lang_String(JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_BOOLEAN java_nio_charset_Charset_contains___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_nio_charset_Charset_newEncoder__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_OBJECT java_nio_charset_Charset_newDecoder__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_Charset_name__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_Charset_aliases__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_Charset_displayName__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_Charset_displayName___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_nio_charset_Charset_isRegistered__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_Charset_canEncode__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_Charset_encode___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_Charset_encode___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_Charset_decode___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_nio_charset_Charset_compareTo___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 1 +JAVA_BOOLEAN java_nio_charset_Charset_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_nio_charset_Charset_hashCode__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_nio_charset_Charset_toString__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_Charset_defaultCharset__(); +// Vtable index: 6 +JAVA_INT java_nio_charset_Charset_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_nio_charset_CharsetDecoder.c b/tests/nbody-java/java_nio_charset_CharsetDecoder.c new file mode 100644 index 0000000000000..c6f364590d025 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CharsetDecoder.c @@ -0,0 +1,1057 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" +#include "java_nio_ByteBuffer.h" +#include "java_nio_CharBuffer.h" +#include "java_nio_charset_Charset.h" +#include "java_nio_charset_CoderResult.h" +#include "java_nio_charset_CodingErrorAction.h" + +#include "java_nio_charset_CharsetDecoder.h" + +#define XMLVM_CURRENT_CLASS_NAME CharsetDecoder +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_CharsetDecoder + +__TIB_DEFINITION_java_nio_charset_CharsetDecoder __TIB_java_nio_charset_CharsetDecoder = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_CharsetDecoder, // classInitializer + "java.nio.charset.CharsetDecoder", // className + "java.nio.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_CharsetDecoder), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder; +JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_nio_charset_CharsetDecoder_INIT; +static JAVA_INT _STATIC_java_nio_charset_CharsetDecoder_ONGOING; +static JAVA_INT _STATIC_java_nio_charset_CharsetDecoder_END; +static JAVA_INT _STATIC_java_nio_charset_CharsetDecoder_FLUSH; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_CharsetDecoder() +{ + staticInitializerLock(&__TIB_java_nio_charset_CharsetDecoder); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_CharsetDecoder.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_CharsetDecoder.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_CharsetDecoder); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_CharsetDecoder.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_CharsetDecoder.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_CharsetDecoder.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.CharsetDecoder") + __INIT_IMPL_java_nio_charset_CharsetDecoder(); + } +} + +void __INIT_IMPL_java_nio_charset_CharsetDecoder() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_CharsetDecoder.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_CharsetDecoder; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_CharsetDecoder.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_nio_charset_CharsetDecoder.numImplementedInterfaces = 0; + __TIB_java_nio_charset_CharsetDecoder.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_nio_charset_CharsetDecoder_INIT = 0; + _STATIC_java_nio_charset_CharsetDecoder_ONGOING = 1; + _STATIC_java_nio_charset_CharsetDecoder_END = 2; + _STATIC_java_nio_charset_CharsetDecoder_FLUSH = 3; + + __TIB_java_nio_charset_CharsetDecoder.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_CharsetDecoder.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_CharsetDecoder.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_CharsetDecoder.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_CharsetDecoder.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_CharsetDecoder.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_CharsetDecoder.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_CharsetDecoder.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_CharsetDecoder = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_CharsetDecoder); + __TIB_java_nio_charset_CharsetDecoder.clazz = __CLASS_java_nio_charset_CharsetDecoder; + __TIB_java_nio_charset_CharsetDecoder.baseType = JAVA_NULL; + __CLASS_java_nio_charset_CharsetDecoder_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CharsetDecoder); + __CLASS_java_nio_charset_CharsetDecoder_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CharsetDecoder_1ARRAY); + __CLASS_java_nio_charset_CharsetDecoder_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CharsetDecoder_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_CharsetDecoder] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_CharsetDecoder.classInitialized = 1; +} + +void __DELETE_java_nio_charset_CharsetDecoder(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_CharsetDecoder] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetDecoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_charset_CharsetDecoder*) me)->fields.java_nio_charset_CharsetDecoder.averChars_ = 0; + ((java_nio_charset_CharsetDecoder*) me)->fields.java_nio_charset_CharsetDecoder.maxChars_ = 0; + ((java_nio_charset_CharsetDecoder*) me)->fields.java_nio_charset_CharsetDecoder.cs_ = (java_nio_charset_Charset*) JAVA_NULL; + ((java_nio_charset_CharsetDecoder*) me)->fields.java_nio_charset_CharsetDecoder.malformAction_ = (java_nio_charset_CodingErrorAction*) JAVA_NULL; + ((java_nio_charset_CharsetDecoder*) me)->fields.java_nio_charset_CharsetDecoder.unmapAction_ = (java_nio_charset_CodingErrorAction*) JAVA_NULL; + ((java_nio_charset_CharsetDecoder*) me)->fields.java_nio_charset_CharsetDecoder.replace_ = (java_lang_String*) JAVA_NULL; + ((java_nio_charset_CharsetDecoder*) me)->fields.java_nio_charset_CharsetDecoder.status_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetDecoder] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_CharsetDecoder() +{ XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) +java_nio_charset_CharsetDecoder* me = (java_nio_charset_CharsetDecoder*) XMLVM_MALLOC(sizeof(java_nio_charset_CharsetDecoder)); + me->tib = &__TIB_java_nio_charset_CharsetDecoder; + __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetDecoder(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_CharsetDecoder] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CharsetDecoder() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT java_nio_charset_CharsetDecoder_GET_INIT() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) + return _STATIC_java_nio_charset_CharsetDecoder_INIT; +} + +void java_nio_charset_CharsetDecoder_PUT_INIT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) +_STATIC_java_nio_charset_CharsetDecoder_INIT = v; +} + +JAVA_INT java_nio_charset_CharsetDecoder_GET_ONGOING() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) + return _STATIC_java_nio_charset_CharsetDecoder_ONGOING; +} + +void java_nio_charset_CharsetDecoder_PUT_ONGOING(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) +_STATIC_java_nio_charset_CharsetDecoder_ONGOING = v; +} + +JAVA_INT java_nio_charset_CharsetDecoder_GET_END() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) + return _STATIC_java_nio_charset_CharsetDecoder_END; +} + +void java_nio_charset_CharsetDecoder_PUT_END(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) +_STATIC_java_nio_charset_CharsetDecoder_END = v; +} + +JAVA_INT java_nio_charset_CharsetDecoder_GET_FLUSH() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) + return _STATIC_java_nio_charset_CharsetDecoder_FLUSH; +} + +void java_nio_charset_CharsetDecoder_PUT_FLUSH(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) +_STATIC_java_nio_charset_CharsetDecoder_FLUSH = v; +} + +void java_nio_charset_CharsetDecoder___INIT____java_nio_charset_Charset_float_float(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2, JAVA_FLOAT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder___INIT____java_nio_charset_Charset_float_float] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.f = n2; + _r5.f = n3; + _r1.f = 0.0; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 138) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 140) + _r0.i = _r4.f > _r1.f ? 1 : (_r4.f == _r1.f ? 0 : -1); + if (_r0.i <= 0) goto label12; + _r0.i = _r5.f > _r1.f ? 1 : (_r5.f == _r1.f ? 0 : -1); + if (_r0.i > 0) goto label24; + label12:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 142) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.00" + _r1.o = xmlvm_create_java_string_from_pool(722); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 144) + _r0.i = _r4.f > _r5.f ? 1 : (_r4.f == _r5.f ? 0 : -1); + if (_r0.i <= 0) goto label40; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 146) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.01" + _r1.o = xmlvm_create_java_string_from_pool(723); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label40:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 148) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.averChars_ = _r4.f; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 149) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.maxChars_ = _r5.f; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 150) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.cs_ = _r3.o; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 151) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.status_ = _r0.i; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 152) + _r0.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.malformAction_ = _r0.o; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 153) + _r0.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.unmapAction_ = _r0.o; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 154) + // "\177775" + _r0.o = xmlvm_create_java_string_from_pool(724); + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.replace_ = _r0.o; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 155) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_nio_charset_CharsetDecoder_averageCharsPerByte__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_averageCharsPerByte__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "averageCharsPerByte", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 165) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.averChars_; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_charset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_charset__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "charset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 174) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.cs_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "decode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 212) + XMLVM_CHECK_NPE(3) + java_nio_charset_CharsetDecoder_reset__(_r3.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 213) + XMLVM_CHECK_NPE(4) + _r0.i = java_nio_Buffer_remaining__(_r4.o); + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_CHECK_NPE(3) + _r1.f = ((java_nio_charset_CharsetDecoder*) _r3.o)->fields.java_nio_charset_CharsetDecoder.averChars_; + _r0.f = _r0.f * _r1.f; + _r0.i = (JAVA_INT) _r0.f; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 214) + _r0.o = java_nio_CharBuffer_allocate___int(_r0.i); + label16:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 217) + _r1.i = 0; + XMLVM_CHECK_NPE(3) + _r1.o = java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer_java_nio_CharBuffer_boolean(_r3.o, _r4.o, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 218) + XMLVM_CHECK_NPE(3) + java_nio_charset_CharsetDecoder_checkCoderResult___java_nio_charset_CoderResult(_r3.o, _r1.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 219) + XMLVM_CHECK_NPE(1) + _r2.i = java_nio_charset_CoderResult_isUnderflow__(_r1.o); + if (_r2.i == 0) goto label56; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 225) + _r1.i = 1; + XMLVM_CHECK_NPE(3) + _r1.o = java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer_java_nio_CharBuffer_boolean(_r3.o, _r4.o, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 226) + XMLVM_CHECK_NPE(3) + java_nio_charset_CharsetDecoder_checkCoderResult___java_nio_charset_CoderResult(_r3.o, _r1.o); + label38:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 229) + XMLVM_CHECK_NPE(3) + _r1.o = java_nio_charset_CharsetDecoder_flush___java_nio_CharBuffer(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 230) + XMLVM_CHECK_NPE(3) + java_nio_charset_CharsetDecoder_checkCoderResult___java_nio_charset_CoderResult(_r3.o, _r1.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 231) + XMLVM_CHECK_NPE(1) + _r1.i = java_nio_charset_CoderResult_isOverflow__(_r1.o); + if (_r1.i == 0) goto label67; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 232) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_CharsetDecoder_allocateMore___java_nio_CharBuffer(_r3.o, _r0.o); + goto label38; + label56:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 221) + XMLVM_CHECK_NPE(1) + _r1.i = java_nio_charset_CoderResult_isOverflow__(_r1.o); + if (_r1.i == 0) goto label16; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 222) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_CharsetDecoder_allocateMore___java_nio_CharBuffer(_r3.o, _r0.o); + goto label16; + label67:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 238) + XMLVM_CHECK_NPE(0) + java_nio_Buffer_flip__(_r0.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 239) + _r1.i = 3; + XMLVM_CHECK_NPE(3) + ((java_nio_charset_CharsetDecoder*) _r3.o)->fields.java_nio_charset_CharsetDecoder.status_ = _r1.i; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 240) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetDecoder_checkCoderResult___java_nio_charset_CoderResult(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_checkCoderResult___java_nio_charset_CoderResult] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "checkCoderResult", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 248) + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_charset_CoderResult_isMalformed__(_r3.o); + if (_r0.i == 0) goto label22; + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.malformAction_; + _r1.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + if (_r0.o != _r1.o) goto label22; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 249) + + + // Red class access removed: java.nio.charset.MalformedInputException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + _r1.i = java_nio_charset_CoderResult_length__(_r3.o); + + + // Red class access removed: java.nio.charset.MalformedInputException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 250) + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_charset_CoderResult_isUnmappable__(_r3.o); + if (_r0.i == 0) goto label44; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 251) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.unmapAction_; + _r1.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + if (_r0.o != _r1.o) goto label44; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 252) + + + // Red class access removed: java.nio.charset.UnmappableCharacterException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + _r1.i = java_nio_charset_CoderResult_length__(_r3.o); + + + // Red class access removed: java.nio.charset.UnmappableCharacterException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label44:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 254) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_allocateMore___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_allocateMore___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "allocateMore", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 262) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_Buffer_capacity__(_r2.o); + if (_r0.i != 0) goto label12; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 263) + _r0.i = 1; + _r0.o = java_nio_CharBuffer_allocate___int(_r0.i); + label11:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 268) + XMLVM_EXIT_METHOD() + return _r0.o; + label12:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 265) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_Buffer_capacity__(_r2.o); + _r0.i = _r0.i * 2; + _r0.o = java_nio_CharBuffer_allocate___int(_r0.i); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 266) + XMLVM_CHECK_NPE(2) + java_nio_Buffer_flip__(_r2.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 267) + XMLVM_CHECK_NPE(0) + java_nio_CharBuffer_put___java_nio_CharBuffer(_r0.o, _r2.o); + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer_java_nio_CharBuffer_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer_java_nio_CharBuffer_boolean] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "decode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r4.o = me; + _r5.o = n1; + _r6.o = n2; + _r7.i = n3; + _r3.i = 2; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 340) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_charset_CharsetDecoder*) _r4.o)->fields.java_nio_charset_CharsetDecoder.status_; + _r1.i = 3; + if (_r0.i == _r1.i) goto label12; + if (_r7.i != 0) goto label35; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_charset_CharsetDecoder*) _r4.o)->fields.java_nio_charset_CharsetDecoder.status_; + if (_r0.i != _r3.i) goto label35; + label12:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 341) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label18:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 384) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_charset_CharsetDecoder*) _r4.o)->fields.java_nio_charset_CharsetDecoder.replace_; + XMLVM_CHECK_NPE(6) + java_nio_CharBuffer_put___java_lang_String(_r6.o, _r1.o); + label23:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 389) + XMLVM_CHECK_NPE(5) + _r1.i = java_nio_Buffer_position__(_r5.o); + XMLVM_CHECK_NPE(0) + _r0.i = java_nio_charset_CoderResult_length__(_r0.o); + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(5) + java_nio_Buffer_position___int(_r5.o, _r0.i); + label35:; + XMLVM_TRY_BEGIN(w4896aaac17b1c29) + // Begin try + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 350) + //java_nio_charset_CharsetDecoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer[6] + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_nio_charset_CharsetDecoder*) _r4.o)->tib->vtable[6])(_r4.o, _r5.o, _r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4896aaac17b1c29) + XMLVM_CATCH_END(w4896aaac17b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w4896aaac17b1c29) + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 362) + XMLVM_CHECK_NPE(0) + _r1.i = java_nio_charset_CoderResult_isUnderflow__(_r0.o); + if (_r1.i == 0) goto label62; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 363) + XMLVM_CHECK_NPE(5) + _r1.i = java_nio_Buffer_remaining__(_r5.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 364) + if (_r7.i == 0) goto label83; + _r2 = _r3; + label52:; + XMLVM_CHECK_NPE(4) + ((java_nio_charset_CharsetDecoder*) _r4.o)->fields.java_nio_charset_CharsetDecoder.status_ = _r2.i; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 365) + if (_r7.i == 0) goto label68; + if (_r1.i <= 0) goto label68; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 366) + _r0.o = java_nio_charset_CoderResult_malformedForLength___int(_r1.i); + label62:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 371) + XMLVM_CHECK_NPE(0) + _r1.i = java_nio_charset_CoderResult_isOverflow__(_r0.o); + if (_r1.i == 0) goto label85; + label68:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 387) + XMLVM_EXIT_METHOD() + return _r0.o; + label69:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 351) + java_lang_Thread* curThread_w4896aaac17b1c54 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4896aaac17b1c54->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 353) + + + // Red class access removed: java.nio.charset.CoderMalfunctionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.CoderMalfunctionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label76:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 354) + java_lang_Thread* curThread_w4896aaac17b1c61 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4896aaac17b1c61->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 356) + + + // Red class access removed: java.nio.charset.CoderMalfunctionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.CoderMalfunctionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label83:; + _r2.i = 1; + goto label52; + label85:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 375) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_charset_CharsetDecoder*) _r4.o)->fields.java_nio_charset_CharsetDecoder.malformAction_; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 376) + XMLVM_CHECK_NPE(0) + _r2.i = java_nio_charset_CoderResult_isUnmappable__(_r0.o); + if (_r2.i == 0) goto label95; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 377) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_charset_CharsetDecoder*) _r4.o)->fields.java_nio_charset_CharsetDecoder.unmapAction_; + label95:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 380) + _r2.o = java_nio_charset_CodingErrorAction_GET_REPLACE(); + if (_r1.o != _r2.o) goto label114; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 381) + XMLVM_CHECK_NPE(6) + _r1.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_CHECK_NPE(4) + _r2.o = ((java_nio_charset_CharsetDecoder*) _r4.o)->fields.java_nio_charset_CharsetDecoder.replace_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r1.i >= _r2.i) goto label18; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 382) + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + goto label68; + label114:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 386) + _r2.o = java_nio_charset_CodingErrorAction_GET_IGNORE(); + if (_r1.o == _r2.o) goto label23; + goto label68; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_detectedCharset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_detectedCharset__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "detectedCharset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 450) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_flush___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_flush___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "flush", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 486) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.status_; + _r1.i = 2; + if (_r0.i == _r1.i) goto label15; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.status_; + if (_r0.i == 0) goto label15; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 487) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label15:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 489) + XMLVM_CHECK_NPE(2) + _r0.o = java_nio_charset_CharsetDecoder_implFlush___java_nio_CharBuffer(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 490) + _r1.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + if (_r0.o != _r1.o) goto label26; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 491) + _r1.i = 3; + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.status_ = _r1.i; + label26:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 493) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_implFlush___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_implFlush___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "implFlush", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 507) + _r0.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetDecoder_implOnMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_implOnMalformedInput___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "implOnMalformedInput", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 520) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetDecoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "implOnUnmappableCharacter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 532) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetDecoder_implReplaceWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_implReplaceWith___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "implReplaceWith", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 543) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetDecoder_implReset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_implReset__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "implReset", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 551) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CharsetDecoder_isAutoDetecting__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_isAutoDetecting__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "isAutoDetecting", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 560) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CharsetDecoder_isCharsetDetected__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_isCharsetDetected__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "isCharsetDetected", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 588) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_malformedInputAction__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_malformedInputAction__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "malformedInputAction", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 599) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.malformAction_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_nio_charset_CharsetDecoder_maxCharsPerByte__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_maxCharsPerByte__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "maxCharsPerByte", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 610) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.maxChars_; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_onMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_onMalformedInput___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "onMalformedInput", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 627) + if (_r2.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 628) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 630) + XMLVM_CHECK_NPE(1) + ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.malformAction_ = _r2.o; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 631) + XMLVM_CHECK_NPE(1) + java_nio_charset_CharsetDecoder_implOnMalformedInput___java_nio_charset_CodingErrorAction(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 632) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "onUnmappableCharacter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 650) + if (_r2.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 651) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 653) + XMLVM_CHECK_NPE(1) + ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.unmapAction_ = _r2.o; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 654) + XMLVM_CHECK_NPE(1) + java_nio_charset_CharsetDecoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 655) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_replacement__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_replacement__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "replacement", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 664) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.replace_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_replaceWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_replaceWith___java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "replaceWith", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 684) + if (_r3.o == JAVA_NULL) goto label8; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + if (_r0.i != 0) goto label20; + label8:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 686) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.06" + _r1.o = xmlvm_create_java_string_from_pool(725); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label20:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 688) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_CHECK_NPE(2) + _r1.f = ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.maxChars_; + _r0.i = _r0.f > _r1.f ? 1 : (_r0.f == _r1.f ? 0 : -1); + if (_r0.i <= 0) goto label43; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 691) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.07" + _r1.o = xmlvm_create_java_string_from_pool(726); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label43:; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 693) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetDecoder*) _r2.o)->fields.java_nio_charset_CharsetDecoder.replace_ = _r3.o; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 694) + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetDecoder_implReplaceWith___java_lang_String(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 695) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_reset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_reset__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "reset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 706) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.status_ = _r0.i; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 707) + XMLVM_CHECK_NPE(1) + java_nio_charset_CharsetDecoder_implReset__(_r1.o); + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 708) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetDecoder_unmappableCharacterAction__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetDecoder_unmappableCharacterAction__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetDecoder", "unmappableCharacterAction", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetDecoder.java", 719) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetDecoder*) _r1.o)->fields.java_nio_charset_CharsetDecoder.unmapAction_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_CharsetDecoder.h b/tests/nbody-java/java_nio_charset_CharsetDecoder.h new file mode 100644 index 0000000000000..6cb8fd8db0451 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CharsetDecoder.h @@ -0,0 +1,120 @@ +#ifndef __JAVA_NIO_CHARSET_CHARSETDECODER__ +#define __JAVA_NIO_CHARSET_CHARSETDECODER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_CharsetDecoder 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +#define XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +XMLVM_FORWARD_DECL(java_nio_charset_CoderResult) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +#define XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +XMLVM_FORWARD_DECL(java_nio_charset_CodingErrorAction) +#endif +// Class declarations for java.nio.charset.CharsetDecoder +XMLVM_DEFINE_CLASS(java_nio_charset_CharsetDecoder, 7, XMLVM_ITABLE_SIZE_java_nio_charset_CharsetDecoder) + +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder; +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetDecoder_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CharsetDecoder +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_CharsetDecoder \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_FLOAT averChars_; \ + JAVA_FLOAT maxChars_; \ + JAVA_OBJECT cs_; \ + JAVA_OBJECT malformAction_; \ + JAVA_OBJECT unmapAction_; \ + JAVA_OBJECT replace_; \ + JAVA_INT status_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CharsetDecoder \ + } java_nio_charset_CharsetDecoder + +struct java_nio_charset_CharsetDecoder { + __TIB_DEFINITION_java_nio_charset_CharsetDecoder* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_CharsetDecoder; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +#define XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +typedef struct java_nio_charset_CharsetDecoder java_nio_charset_CharsetDecoder; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_CharsetDecoder 7 +#define XMLVM_VTABLE_IDX_java_nio_charset_CharsetDecoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer 6 + +void __INIT_java_nio_charset_CharsetDecoder(); +void __INIT_IMPL_java_nio_charset_CharsetDecoder(); +void __DELETE_java_nio_charset_CharsetDecoder(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetDecoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_CharsetDecoder(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CharsetDecoder(); +JAVA_INT java_nio_charset_CharsetDecoder_GET_INIT(); +void java_nio_charset_CharsetDecoder_PUT_INIT(JAVA_INT v); +JAVA_INT java_nio_charset_CharsetDecoder_GET_ONGOING(); +void java_nio_charset_CharsetDecoder_PUT_ONGOING(JAVA_INT v); +JAVA_INT java_nio_charset_CharsetDecoder_GET_END(); +void java_nio_charset_CharsetDecoder_PUT_END(JAVA_INT v); +JAVA_INT java_nio_charset_CharsetDecoder_GET_FLUSH(); +void java_nio_charset_CharsetDecoder_PUT_FLUSH(JAVA_INT v); +void java_nio_charset_CharsetDecoder___INIT____java_nio_charset_Charset_float_float(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2, JAVA_FLOAT n3); +JAVA_FLOAT java_nio_charset_CharsetDecoder_averageCharsPerByte__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetDecoder_charset__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetDecoder_checkCoderResult___java_nio_charset_CoderResult(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetDecoder_allocateMore___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer_java_nio_CharBuffer_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3); +// Vtable index: 6 +JAVA_OBJECT java_nio_charset_CharsetDecoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_nio_charset_CharsetDecoder_detectedCharset__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetDecoder_flush___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetDecoder_implFlush___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetDecoder_implOnMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetDecoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetDecoder_implReplaceWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetDecoder_implReset__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CharsetDecoder_isAutoDetecting__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CharsetDecoder_isCharsetDetected__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetDecoder_malformedInputAction__(JAVA_OBJECT me); +JAVA_FLOAT java_nio_charset_CharsetDecoder_maxCharsPerByte__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetDecoder_onMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetDecoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetDecoder_replacement__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetDecoder_replaceWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetDecoder_reset__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetDecoder_unmappableCharacterAction__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_charset_CharsetEncoder.c b/tests/nbody-java/java_nio_charset_CharsetEncoder.c new file mode 100644 index 0000000000000..74f7b9f460c24 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CharsetEncoder.c @@ -0,0 +1,1375 @@ +#include "xmlvm.h" +#include "java_lang_CharSequence.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" +#include "java_nio_ByteBuffer.h" +#include "java_nio_CharBuffer.h" +#include "java_nio_charset_Charset.h" +#include "java_nio_charset_CharsetDecoder.h" +#include "java_nio_charset_CoderResult.h" +#include "java_nio_charset_CodingErrorAction.h" + +#include "java_nio_charset_CharsetEncoder.h" + +#define XMLVM_CURRENT_CLASS_NAME CharsetEncoder +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_CharsetEncoder + +__TIB_DEFINITION_java_nio_charset_CharsetEncoder __TIB_java_nio_charset_CharsetEncoder = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_CharsetEncoder, // classInitializer + "java.nio.charset.CharsetEncoder", // className + "java.nio.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_CharsetEncoder), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder; +JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_nio_charset_CharsetEncoder_READY; +static JAVA_INT _STATIC_java_nio_charset_CharsetEncoder_ONGOING; +static JAVA_INT _STATIC_java_nio_charset_CharsetEncoder_END; +static JAVA_INT _STATIC_java_nio_charset_CharsetEncoder_FLUSH; +static JAVA_INT _STATIC_java_nio_charset_CharsetEncoder_INIT; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_CharsetEncoder() +{ + staticInitializerLock(&__TIB_java_nio_charset_CharsetEncoder); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_CharsetEncoder.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_CharsetEncoder.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_CharsetEncoder); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_CharsetEncoder.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_CharsetEncoder.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_CharsetEncoder.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.CharsetEncoder") + __INIT_IMPL_java_nio_charset_CharsetEncoder(); + } +} + +void __INIT_IMPL_java_nio_charset_CharsetEncoder() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_CharsetEncoder.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_CharsetEncoder; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_CharsetEncoder.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_nio_charset_CharsetEncoder.numImplementedInterfaces = 0; + __TIB_java_nio_charset_CharsetEncoder.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_nio_charset_CharsetEncoder_READY = 0; + _STATIC_java_nio_charset_CharsetEncoder_ONGOING = 1; + _STATIC_java_nio_charset_CharsetEncoder_END = 2; + _STATIC_java_nio_charset_CharsetEncoder_FLUSH = 3; + _STATIC_java_nio_charset_CharsetEncoder_INIT = 4; + + __TIB_java_nio_charset_CharsetEncoder.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_CharsetEncoder.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_CharsetEncoder.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_CharsetEncoder.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_CharsetEncoder.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_CharsetEncoder.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_CharsetEncoder.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_CharsetEncoder.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_CharsetEncoder = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_CharsetEncoder); + __TIB_java_nio_charset_CharsetEncoder.clazz = __CLASS_java_nio_charset_CharsetEncoder; + __TIB_java_nio_charset_CharsetEncoder.baseType = JAVA_NULL; + __CLASS_java_nio_charset_CharsetEncoder_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CharsetEncoder); + __CLASS_java_nio_charset_CharsetEncoder_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CharsetEncoder_1ARRAY); + __CLASS_java_nio_charset_CharsetEncoder_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CharsetEncoder_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_CharsetEncoder] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_CharsetEncoder.classInitialized = 1; +} + +void __DELETE_java_nio_charset_CharsetEncoder(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_CharsetEncoder] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetEncoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.cs_ = (java_nio_charset_Charset*) JAVA_NULL; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.averBytes_ = 0; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.maxBytes_ = 0; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.replace_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.status_ = 0; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.finished_ = 0; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.malformAction_ = (java_nio_charset_CodingErrorAction*) JAVA_NULL; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.unmapAction_ = (java_nio_charset_CodingErrorAction*) JAVA_NULL; + ((java_nio_charset_CharsetEncoder*) me)->fields.java_nio_charset_CharsetEncoder.decoder_ = (java_nio_charset_CharsetDecoder*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetEncoder] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_CharsetEncoder() +{ XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) +java_nio_charset_CharsetEncoder* me = (java_nio_charset_CharsetEncoder*) XMLVM_MALLOC(sizeof(java_nio_charset_CharsetEncoder)); + me->tib = &__TIB_java_nio_charset_CharsetEncoder; + __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetEncoder(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_CharsetEncoder] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CharsetEncoder() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT java_nio_charset_CharsetEncoder_GET_READY() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) + return _STATIC_java_nio_charset_CharsetEncoder_READY; +} + +void java_nio_charset_CharsetEncoder_PUT_READY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) +_STATIC_java_nio_charset_CharsetEncoder_READY = v; +} + +JAVA_INT java_nio_charset_CharsetEncoder_GET_ONGOING() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) + return _STATIC_java_nio_charset_CharsetEncoder_ONGOING; +} + +void java_nio_charset_CharsetEncoder_PUT_ONGOING(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) +_STATIC_java_nio_charset_CharsetEncoder_ONGOING = v; +} + +JAVA_INT java_nio_charset_CharsetEncoder_GET_END() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) + return _STATIC_java_nio_charset_CharsetEncoder_END; +} + +void java_nio_charset_CharsetEncoder_PUT_END(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) +_STATIC_java_nio_charset_CharsetEncoder_END = v; +} + +JAVA_INT java_nio_charset_CharsetEncoder_GET_FLUSH() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) + return _STATIC_java_nio_charset_CharsetEncoder_FLUSH; +} + +void java_nio_charset_CharsetEncoder_PUT_FLUSH(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) +_STATIC_java_nio_charset_CharsetEncoder_FLUSH = v; +} + +JAVA_INT java_nio_charset_CharsetEncoder_GET_INIT() +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) + return _STATIC_java_nio_charset_CharsetEncoder_INIT; +} + +void java_nio_charset_CharsetEncoder_PUT_INIT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) +_STATIC_java_nio_charset_CharsetEncoder_INIT = v; +} + +void java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2, JAVA_FLOAT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r3.o = me; + _r4.o = n1; + _r5.f = n2; + _r6.f = n3; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 148) + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 149) + _r0.i = 1; + XMLVM_CLASS_INIT(byte) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i); + _r1.i = 0; + _r2.i = 63; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + XMLVM_CHECK_NPE(3) + java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float_byte_1ARRAY(_r3.o, _r4.o, _r5.f, _r6.f, _r0.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 150) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2, JAVA_FLOAT n3, JAVA_OBJECT n4) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float_byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r2.o = me; + _r3.o = n1; + _r4.f = n2; + _r5.f = n3; + _r6.o = n4; + _r1.f = 0.0; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 173) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 175) + _r0.i = _r4.f > _r1.f ? 1 : (_r4.f == _r1.f ? 0 : -1); + if (_r0.i <= 0) goto label12; + _r0.i = _r5.f > _r1.f ? 1 : (_r5.f == _r1.f ? 0 : -1); + if (_r0.i > 0) goto label24; + label12:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 177) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.02" + _r1.o = xmlvm_create_java_string_from_pool(86); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 179) + _r0.i = _r4.f > _r5.f ? 1 : (_r4.f == _r5.f ? 0 : -1); + if (_r0.i <= 0) goto label40; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 181) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.03" + _r1.o = xmlvm_create_java_string_from_pool(87); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label40:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 183) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.cs_ = _r3.o; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 184) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.averBytes_ = _r4.f; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 185) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.maxBytes_ = _r5.f; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 186) + _r0.i = 4; + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.status_ = _r0.i; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 187) + _r0.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.malformAction_ = _r0.o; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 188) + _r0.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.unmapAction_ = _r0.o; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 189) + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetEncoder_replaceWith___byte_1ARRAY(_r2.o, _r6.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 190) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_nio_charset_CharsetEncoder_averageBytesPerChar__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_averageBytesPerChar__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "averageBytesPerChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 200) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_nio_charset_CharsetEncoder*) _r1.o)->fields.java_nio_charset_CharsetEncoder.averBytes_; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_canEncode___char(JAVA_OBJECT me, JAVA_CHAR n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_canEncode___char] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "canEncode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 220) + _r0.i = 1; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + _r1.i = 0; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.i; + _r0.o = java_nio_CharBuffer_wrap___char_1ARRAY(_r0.o); + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_charset_CharsetEncoder_implCanEncode___java_nio_CharBuffer(_r2.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_implCanEncode___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_implCanEncode___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "implCanEncode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 225) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r4.o)->fields.java_nio_charset_CharsetEncoder.status_; + _r1.i = 3; + if (_r0.i == _r1.i) goto label11; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r4.o)->fields.java_nio_charset_CharsetEncoder.status_; + _r1.i = 4; + if (_r0.i != _r1.i) goto label13; + label11:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 226) + XMLVM_CHECK_NPE(4) + ((java_nio_charset_CharsetEncoder*) _r4.o)->fields.java_nio_charset_CharsetEncoder.status_ = _r3.i; + label13:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 228) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r4.o)->fields.java_nio_charset_CharsetEncoder.status_; + if (_r0.i == 0) goto label29; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 230) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.0B" + _r1.o = xmlvm_create_java_string_from_pool(88); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label29:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 232) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r4.o)->fields.java_nio_charset_CharsetEncoder.malformAction_; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 233) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_nio_charset_CharsetEncoder*) _r4.o)->fields.java_nio_charset_CharsetEncoder.unmapAction_; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 234) + _r2.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(4) + java_nio_charset_CharsetEncoder_onMalformedInput___java_nio_charset_CodingErrorAction(_r4.o, _r2.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 235) + _r2.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(4) + java_nio_charset_CharsetEncoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(_r4.o, _r2.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 236) + _r2.i = 1; + XMLVM_TRY_BEGIN(w1507aaac18b1c37) + // Begin try + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 238) + XMLVM_CHECK_NPE(4) + java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer(_r4.o, _r5.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1507aaac18b1c37) + XMLVM_CATCH_END(w1507aaac18b1c37) + XMLVM_RESTORE_EXCEPTION_ENV(w1507aaac18b1c37) + label47:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 242) + XMLVM_CHECK_NPE(4) + java_nio_charset_CharsetEncoder_onMalformedInput___java_nio_charset_CodingErrorAction(_r4.o, _r0.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 243) + XMLVM_CHECK_NPE(4) + java_nio_charset_CharsetEncoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(_r4.o, _r1.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 244) + XMLVM_CHECK_NPE(4) + java_nio_charset_CharsetEncoder_reset__(_r4.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 245) + XMLVM_EXIT_METHOD() + return _r2.i; + label57:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 240) + java_lang_Thread* curThread_w1507aaac18b1c49 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w1507aaac18b1c49->fields.java_lang_Thread.xmlvmException_; + _r2 = _r3; + goto label47; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_canEncode___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_canEncode___java_lang_CharSequence] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "canEncode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 267) + XMLVM_CLASS_INIT(java_nio_CharBuffer) + _r0.i = XMLVM_ISA(_r2.o, __CLASS_java_nio_CharBuffer); + if (_r0.i == 0) goto label15; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 268) + _r2.o = _r2.o; + //java_nio_CharBuffer_duplicate__[18] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r2.o)->tib->vtable[18])(_r2.o); + label10:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 272) + XMLVM_CHECK_NPE(1) + _r0.i = java_nio_charset_CharsetEncoder_implCanEncode___java_nio_CharBuffer(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 270) + _r0.o = java_nio_CharBuffer_wrap___java_lang_CharSequence(_r2.o); + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_charset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_charset__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "charset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 281) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r1.o)->fields.java_nio_charset_CharsetEncoder.cs_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "encode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 317) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + if (_r0.i != 0) goto label13; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 318) + _r0.o = java_nio_ByteBuffer_allocate___int(_r3.i); + label12:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 357) + XMLVM_EXIT_METHOD() + return _r0.o; + label13:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 320) + XMLVM_CHECK_NPE(5) + java_nio_charset_CharsetEncoder_reset__(_r5.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 321) + XMLVM_CHECK_NPE(6) + _r0.i = java_nio_Buffer_remaining__(_r6.o); + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_CHECK_NPE(5) + _r1.f = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.averBytes_; + _r0.f = _r0.f * _r1.f; + _r0.i = (JAVA_INT) _r0.f; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 322) + _r0.o = java_nio_ByteBuffer_allocate___int(_r0.i); + label29:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 325) + XMLVM_CHECK_NPE(5) + _r1.o = java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer_java_nio_ByteBuffer_boolean(_r5.o, _r6.o, _r0.o, _r3.i); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 326) + _r2.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + if (_r1.o != _r2.o) goto label60; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 334) + XMLVM_CHECK_NPE(5) + _r1.o = java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer_java_nio_ByteBuffer_boolean(_r5.o, _r6.o, _r0.o, _r4.i); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 335) + XMLVM_CHECK_NPE(5) + java_nio_charset_CharsetEncoder_checkCoderResult___java_nio_charset_CoderResult(_r5.o, _r1.o); + label44:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 338) + XMLVM_CHECK_NPE(5) + _r1.o = java_nio_charset_CharsetEncoder_flush___java_nio_ByteBuffer(_r5.o, _r0.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 339) + _r2.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + if (_r1.o != _r2.o) goto label73; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 340) + XMLVM_CHECK_NPE(0) + java_nio_Buffer_flip__(_r0.o); + label55:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 355) + XMLVM_CHECK_NPE(5) + ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.status_ = _r3.i; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 356) + XMLVM_CHECK_NPE(5) + ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.finished_ = _r4.i; + goto label12; + label60:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 328) + _r2.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + if (_r1.o != _r2.o) goto label69; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 329) + XMLVM_CHECK_NPE(5) + _r0.o = java_nio_charset_CharsetEncoder_allocateMore___java_nio_ByteBuffer(_r5.o, _r0.o); + goto label29; + label69:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 332) + XMLVM_CHECK_NPE(5) + java_nio_charset_CharsetEncoder_checkCoderResult___java_nio_charset_CoderResult(_r5.o, _r1.o); + goto label29; + label73:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 342) + _r2.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + if (_r1.o != _r2.o) goto label82; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 343) + XMLVM_CHECK_NPE(5) + _r0.o = java_nio_charset_CharsetEncoder_allocateMore___java_nio_ByteBuffer(_r5.o, _r0.o); + goto label44; + label82:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 346) + XMLVM_CHECK_NPE(5) + java_nio_charset_CharsetEncoder_checkCoderResult___java_nio_charset_CoderResult(_r5.o, _r1.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 347) + XMLVM_CHECK_NPE(0) + java_nio_Buffer_flip__(_r0.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 348) + XMLVM_CHECK_NPE(1) + _r2.i = java_nio_charset_CoderResult_isMalformed__(_r1.o); + if (_r2.i == 0) goto label104; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 349) + + + // Red class access removed: java.nio.charset.MalformedInputException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + _r1.i = java_nio_charset_CoderResult_length__(_r1.o); + + + // Red class access removed: java.nio.charset.MalformedInputException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label104:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 350) + XMLVM_CHECK_NPE(1) + _r2.i = java_nio_charset_CoderResult_isUnmappable__(_r1.o); + if (_r2.i == 0) goto label55; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 351) + + + // Red class access removed: java.nio.charset.UnmappableCharacterException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + _r1.i = java_nio_charset_CoderResult_length__(_r1.o); + + + // Red class access removed: java.nio.charset.UnmappableCharacterException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetEncoder_checkCoderResult___java_nio_charset_CoderResult(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_checkCoderResult___java_nio_charset_CoderResult] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "checkCoderResult", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 365) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.malformAction_; + _r1.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + if (_r0.o != _r1.o) goto label22; + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_charset_CoderResult_isMalformed__(_r3.o); + if (_r0.i == 0) goto label22; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 366) + + + // Red class access removed: java.nio.charset.MalformedInputException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + _r1.i = java_nio_charset_CoderResult_length__(_r3.o); + + + // Red class access removed: java.nio.charset.MalformedInputException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 367) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.unmapAction_; + _r1.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + if (_r0.o != _r1.o) goto label44; + XMLVM_CHECK_NPE(3) + _r0.i = java_nio_charset_CoderResult_isUnmappable__(_r3.o); + if (_r0.i == 0) goto label44; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 368) + + + // Red class access removed: java.nio.charset.UnmappableCharacterException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + _r1.i = java_nio_charset_CoderResult_length__(_r3.o); + + + // Red class access removed: java.nio.charset.UnmappableCharacterException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label44:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 370) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_allocateMore___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_allocateMore___java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "allocateMore", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 374) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_Buffer_capacity__(_r2.o); + if (_r0.i != 0) goto label12; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 375) + _r0.i = 1; + _r0.o = java_nio_ByteBuffer_allocate___int(_r0.i); + label11:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 380) + XMLVM_EXIT_METHOD() + return _r0.o; + label12:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 377) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_Buffer_capacity__(_r2.o); + _r0.i = _r0.i * 2; + _r0.o = java_nio_ByteBuffer_allocate___int(_r0.i); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 378) + XMLVM_CHECK_NPE(2) + java_nio_Buffer_flip__(_r2.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 379) + XMLVM_CHECK_NPE(0) + java_nio_ByteBuffer_put___java_nio_ByteBuffer(_r0.o, _r2.o); + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer_java_nio_ByteBuffer_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer_java_nio_ByteBuffer_boolean] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "encode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.o = n2; + _r8.i = n3; + _r4.i = 1; + _r3.i = 2; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 449) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.status_; + if (_r0.i != 0) goto label18; + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.finished_; + if (_r0.i == 0) goto label18; + if (_r8.i != 0) goto label18; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 450) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label18:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 453) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.status_; + _r1.i = 3; + if (_r0.i == _r1.i) goto label29; + if (_r8.i != 0) goto label52; + XMLVM_CHECK_NPE(5) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.status_; + if (_r0.i != _r3.i) goto label52; + label29:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 454) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label35:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 492) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.replace_; + XMLVM_CHECK_NPE(7) + java_nio_ByteBuffer_put___byte_1ARRAY(_r7.o, _r1.o); + label40:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 498) + XMLVM_CHECK_NPE(6) + _r1.i = java_nio_Buffer_position__(_r6.o); + XMLVM_CHECK_NPE(0) + _r0.i = java_nio_charset_CoderResult_length__(_r0.o); + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(6) + java_nio_Buffer_position___int(_r6.o, _r0.i); + label52:; + XMLVM_TRY_BEGIN(w1507aaac24b1c41) + // Begin try + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 460) + //java_nio_charset_CharsetEncoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer[6] + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_nio_charset_CharsetEncoder*) _r5.o)->tib->vtable[6])(_r5.o, _r6.o, _r7.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1507aaac24b1c41) + XMLVM_CATCH_END(w1507aaac24b1c41) + XMLVM_RESTORE_EXCEPTION_ENV(w1507aaac24b1c41) + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 466) + _r1.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + if (_r0.o != _r1.o) goto label119; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 467) + if (_r8.i == 0) goto label117; + _r1 = _r3; + label63:; + XMLVM_CHECK_NPE(5) + ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.status_ = _r1.i; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 468) + if (_r8.i == 0) goto label102; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 469) + XMLVM_CHECK_NPE(6) + _r1.i = java_nio_Buffer_remaining__(_r6.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 470) + if (_r1.i <= 0) goto label102; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 471) + _r0.o = java_nio_charset_CoderResult_malformedForLength___int(_r1.i); + label77:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 482) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.malformAction_; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 483) + XMLVM_CHECK_NPE(0) + _r2.i = java_nio_charset_CoderResult_isUnmappable__(_r0.o); + if (_r2.i == 0) goto label87; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 484) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.unmapAction_; + label87:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 488) + _r2.o = java_nio_charset_CodingErrorAction_GET_REPLACE(); + if (_r1.o != _r2.o) goto label131; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 489) + XMLVM_CHECK_NPE(7) + _r1.i = java_nio_Buffer_remaining__(_r7.o); + XMLVM_CHECK_NPE(5) + _r2.o = ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.replace_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r1.i >= _r2.i) goto label35; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 490) + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + label102:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 495) + XMLVM_EXIT_METHOD() + return _r0.o; + label103:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 461) + java_lang_Thread* curThread_w1507aaac24b1c82 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1507aaac24b1c82->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 462) + + + // Red class access removed: java.nio.charset.CoderMalfunctionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.CoderMalfunctionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label110:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 463) + java_lang_Thread* curThread_w1507aaac24b1c89 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1507aaac24b1c89->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 464) + + + // Red class access removed: java.nio.charset.CoderMalfunctionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.CoderMalfunctionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label117:; + _r1 = _r4; + goto label63; + label119:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 478) + _r1.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + if (_r0.o != _r1.o) goto label77; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 479) + if (_r8.i == 0) goto label129; + _r1 = _r3; + label126:; + XMLVM_CHECK_NPE(5) + ((java_nio_charset_CharsetEncoder*) _r5.o)->fields.java_nio_charset_CharsetEncoder.status_ = _r1.i; + goto label102; + label129:; + _r1 = _r4; + goto label126; + label131:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 494) + _r2.o = java_nio_charset_CodingErrorAction_GET_IGNORE(); + if (_r1.o == _r2.o) goto label40; + goto label102; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_flush___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_flush___java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "flush", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 568) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.status_; + _r1.i = 2; + if (_r0.i == _r1.i) goto label15; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.status_; + if (_r0.i == 0) goto label15; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 569) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label15:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 571) + XMLVM_CHECK_NPE(2) + _r0.o = java_nio_charset_CharsetEncoder_implFlush___java_nio_ByteBuffer(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 572) + _r1.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + if (_r0.o != _r1.o) goto label26; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 573) + _r1.i = 3; + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.status_ = _r1.i; + label26:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 575) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_implFlush___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_implFlush___java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "implFlush", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 589) + _r0.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetEncoder_implOnMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_implOnMalformedInput___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "implOnMalformedInput", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 602) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetEncoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "implOnUnmappableCharacter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 614) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetEncoder_implReplaceWith___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_implReplaceWith___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "implReplaceWith", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 625) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CharsetEncoder_implReset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_implReset__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "implReset", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 633) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_isLegalReplacement___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_isLegalReplacement___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "isLegalReplacement", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 650) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + if (_r0.o != JAVA_NULL) goto label13; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 651) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.cs_; + //java_nio_charset_Charset_newDecoder__[8] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_charset_Charset*) _r0.o)->tib->vtable[8])(_r0.o); + XMLVM_CHECK_NPE(6) + ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_ = _r0.o; + label13:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 654) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_CharsetDecoder_malformedInputAction__(_r0.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 655) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + XMLVM_CHECK_NPE(1) + _r1.o = java_nio_charset_CharsetDecoder_unmappableCharacterAction__(_r1.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 656) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + _r3.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetDecoder_onMalformedInput___java_nio_charset_CodingErrorAction(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 657) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + _r3.o = java_nio_charset_CodingErrorAction_GET_REPORT(); + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetDecoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 658) + _r2.o = java_nio_ByteBuffer_wrap___byte_1ARRAY(_r7.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 659) + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + _r3.f = (JAVA_FLOAT) _r3.i; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 660) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + XMLVM_CHECK_NPE(4) + _r4.f = java_nio_charset_CharsetDecoder_maxCharsPerByte__(_r4.o); + _r3.f = _r3.f * _r4.f; + _r3.i = (JAVA_INT) _r3.f; + _r3.o = java_nio_CharBuffer_allocate___int(_r3.i); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 661) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + XMLVM_CHECK_NPE(4) + _r2.o = java_nio_charset_CharsetDecoder_decode___java_nio_ByteBuffer_java_nio_CharBuffer_boolean(_r4.o, _r2.o, _r3.o, _r5.i); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 662) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + XMLVM_CHECK_NPE(3) + java_nio_charset_CharsetDecoder_onMalformedInput___java_nio_charset_CodingErrorAction(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 663) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r6.o)->fields.java_nio_charset_CharsetEncoder.decoder_; + XMLVM_CHECK_NPE(0) + java_nio_charset_CharsetDecoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 664) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_charset_CoderResult_isError__(_r2.o); + if (_r0.i == 0) goto label81; + _r0.i = 0; + label80:; + XMLVM_EXIT_METHOD() + return _r0.i; + label81:; + _r0 = _r5; + goto label80; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_malformedInputAction__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_malformedInputAction__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "malformedInputAction", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 675) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r1.o)->fields.java_nio_charset_CharsetEncoder.malformAction_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT java_nio_charset_CharsetEncoder_maxBytesPerChar__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_maxBytesPerChar__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "maxBytesPerChar", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 686) + XMLVM_CHECK_NPE(1) + _r0.f = ((java_nio_charset_CharsetEncoder*) _r1.o)->fields.java_nio_charset_CharsetEncoder.maxBytes_; + XMLVM_EXIT_METHOD() + return _r0.f; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_onMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_onMalformedInput___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "onMalformedInput", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 703) + if (_r3.o != JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 705) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.0C" + _r1.o = xmlvm_create_java_string_from_pool(89); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 707) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.malformAction_ = _r3.o; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 708) + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetEncoder_implOnMalformedInput___java_nio_charset_CodingErrorAction(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 709) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "onUnmappableCharacter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 727) + if (_r3.o != JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 729) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.0D" + _r1.o = xmlvm_create_java_string_from_pool(90); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 731) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.unmapAction_ = _r3.o; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 732) + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetEncoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 733) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_replacement__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_replacement__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "replacement", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 742) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r1.o)->fields.java_nio_charset_CharsetEncoder.replace_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_replaceWith___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_replaceWith___byte_1ARRAY] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "replaceWith", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 764) + if (_r3.o == JAVA_NULL) goto label19; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r0.i == 0) goto label19; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 765) + XMLVM_CHECK_NPE(2) + _r0.f = ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.maxBytes_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r1.f = (JAVA_FLOAT) _r1.i; + _r0.i = _r0.f > _r1.f ? 1 : (_r0.f == _r1.f ? 0 : -1); + if (_r0.i < 0) goto label19; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 766) + XMLVM_CHECK_NPE(2) + _r0.i = java_nio_charset_CharsetEncoder_isLegalReplacement___byte_1ARRAY(_r2.o, _r3.o); + if (_r0.i != 0) goto label31; + label19:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 768) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "niochar.0E" + _r1.o = xmlvm_create_java_string_from_pool(91); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 770) + XMLVM_CHECK_NPE(2) + ((java_nio_charset_CharsetEncoder*) _r2.o)->fields.java_nio_charset_CharsetEncoder.replace_ = _r3.o; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 771) + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetEncoder_implReplaceWith___byte_1ARRAY(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 772) + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_reset__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_reset__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "reset", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 783) + _r0.i = 4; + XMLVM_CHECK_NPE(1) + ((java_nio_charset_CharsetEncoder*) _r1.o)->fields.java_nio_charset_CharsetEncoder.status_ = _r0.i; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 784) + XMLVM_CHECK_NPE(1) + java_nio_charset_CharsetEncoder_implReset__(_r1.o); + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 785) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CharsetEncoder_unmappableCharacterAction__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CharsetEncoder_unmappableCharacterAction__] + XMLVM_ENTER_METHOD("java.nio.charset.CharsetEncoder", "unmappableCharacterAction", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetEncoder.java", 796) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_CharsetEncoder*) _r1.o)->fields.java_nio_charset_CharsetEncoder.unmapAction_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_CharsetEncoder.h b/tests/nbody-java/java_nio_charset_CharsetEncoder.h new file mode 100644 index 0000000000000..b0c45efa2770d --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CharsetEncoder.h @@ -0,0 +1,134 @@ +#ifndef __JAVA_NIO_CHARSET_CHARSETENCODER__ +#define __JAVA_NIO_CHARSET_CHARSETENCODER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_CharsetEncoder 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_CharSequence +#define XMLVM_FORWARD_DECL_java_lang_CharSequence +XMLVM_FORWARD_DECL(java_lang_CharSequence) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +#define XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +XMLVM_FORWARD_DECL(java_nio_charset_CharsetDecoder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +#define XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +XMLVM_FORWARD_DECL(java_nio_charset_CoderResult) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +#define XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +XMLVM_FORWARD_DECL(java_nio_charset_CodingErrorAction) +#endif +// Class declarations for java.nio.charset.CharsetEncoder +XMLVM_DEFINE_CLASS(java_nio_charset_CharsetEncoder, 7, XMLVM_ITABLE_SIZE_java_nio_charset_CharsetEncoder) + +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder; +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CharsetEncoder_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CharsetEncoder +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_CharsetEncoder \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT cs_; \ + JAVA_FLOAT averBytes_; \ + JAVA_FLOAT maxBytes_; \ + JAVA_OBJECT replace_; \ + JAVA_INT status_; \ + JAVA_BOOLEAN finished_; \ + JAVA_OBJECT malformAction_; \ + JAVA_OBJECT unmapAction_; \ + JAVA_OBJECT decoder_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CharsetEncoder \ + } java_nio_charset_CharsetEncoder + +struct java_nio_charset_CharsetEncoder { + __TIB_DEFINITION_java_nio_charset_CharsetEncoder* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_CharsetEncoder; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CharsetEncoder +#define XMLVM_FORWARD_DECL_java_nio_charset_CharsetEncoder +typedef struct java_nio_charset_CharsetEncoder java_nio_charset_CharsetEncoder; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_CharsetEncoder 7 +#define XMLVM_VTABLE_IDX_java_nio_charset_CharsetEncoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer 6 + +void __INIT_java_nio_charset_CharsetEncoder(); +void __INIT_IMPL_java_nio_charset_CharsetEncoder(); +void __DELETE_java_nio_charset_CharsetEncoder(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetEncoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_CharsetEncoder(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CharsetEncoder(); +JAVA_INT java_nio_charset_CharsetEncoder_GET_READY(); +void java_nio_charset_CharsetEncoder_PUT_READY(JAVA_INT v); +JAVA_INT java_nio_charset_CharsetEncoder_GET_ONGOING(); +void java_nio_charset_CharsetEncoder_PUT_ONGOING(JAVA_INT v); +JAVA_INT java_nio_charset_CharsetEncoder_GET_END(); +void java_nio_charset_CharsetEncoder_PUT_END(JAVA_INT v); +JAVA_INT java_nio_charset_CharsetEncoder_GET_FLUSH(); +void java_nio_charset_CharsetEncoder_PUT_FLUSH(JAVA_INT v); +JAVA_INT java_nio_charset_CharsetEncoder_GET_INIT(); +void java_nio_charset_CharsetEncoder_PUT_INIT(JAVA_INT v); +void java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2, JAVA_FLOAT n3); +void java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2, JAVA_FLOAT n3, JAVA_OBJECT n4); +JAVA_FLOAT java_nio_charset_CharsetEncoder_averageBytesPerChar__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_canEncode___char(JAVA_OBJECT me, JAVA_CHAR n1); +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_implCanEncode___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_canEncode___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_charset__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetEncoder_checkCoderResult___java_nio_charset_CoderResult(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_allocateMore___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_encode___java_nio_CharBuffer_java_nio_ByteBuffer_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3); +// Vtable index: 6 +JAVA_OBJECT java_nio_charset_CharsetEncoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_nio_charset_CharsetEncoder_flush___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_implFlush___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetEncoder_implOnMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetEncoder_implOnUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetEncoder_implReplaceWith___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_nio_charset_CharsetEncoder_implReset__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CharsetEncoder_isLegalReplacement___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_malformedInputAction__(JAVA_OBJECT me); +JAVA_FLOAT java_nio_charset_CharsetEncoder_maxBytesPerChar__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetEncoder_onMalformedInput___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_onUnmappableCharacter___java_nio_charset_CodingErrorAction(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_replacement__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetEncoder_replaceWith___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_nio_charset_CharsetEncoder_reset__(JAVA_OBJECT me); +JAVA_OBJECT java_nio_charset_CharsetEncoder_unmappableCharacterAction__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_charset_Charset_1.c b/tests/nbody-java/java_nio_charset_Charset_1.c new file mode 100644 index 0000000000000..76c8f813249ce --- /dev/null +++ b/tests/nbody-java/java_nio_charset_Charset_1.c @@ -0,0 +1,185 @@ +#include "xmlvm.h" +#include "java_nio_charset_Charset.h" +#include "org_apache_harmony_niochar_CharsetProviderImpl.h" + +#include "java_nio_charset_Charset_1.h" + +#define XMLVM_CURRENT_CLASS_NAME Charset_1 +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_Charset_1 + +__TIB_DEFINITION_java_nio_charset_Charset_1 __TIB_java_nio_charset_Charset_1 = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_Charset_1, // classInitializer + "java.nio.charset.Charset$1", // className + "java.nio.charset", // package + "java.nio.charset.Charset", // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/security/PrivilegedAction;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_Charset_1), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_Charset_1; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_1_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_1_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_1_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_Charset_1() +{ + staticInitializerLock(&__TIB_java_nio_charset_Charset_1); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_Charset_1.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_Charset_1.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_Charset_1); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_Charset_1.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_Charset_1.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_Charset_1.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.Charset$1") + __INIT_IMPL_java_nio_charset_Charset_1(); + } +} + +void __INIT_IMPL_java_nio_charset_Charset_1() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_Charset_1.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_Charset_1; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_Charset_1.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_nio_charset_Charset_1.vtable[6] = (VTABLE_PTR) &java_nio_charset_Charset_1_run__; + // Initialize interface information + __TIB_java_nio_charset_Charset_1.numImplementedInterfaces = 1; + __TIB_java_nio_charset_Charset_1.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_security_PrivilegedAction) + + __TIB_java_nio_charset_Charset_1.implementedInterfaces[0][0] = &__TIB_java_security_PrivilegedAction; + // Initialize itable for this class + __TIB_java_nio_charset_Charset_1.itableBegin = &__TIB_java_nio_charset_Charset_1.itable[0]; + __TIB_java_nio_charset_Charset_1.itable[XMLVM_ITABLE_IDX_java_security_PrivilegedAction_run__] = __TIB_java_nio_charset_Charset_1.vtable[6]; + + + __TIB_java_nio_charset_Charset_1.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_Charset_1.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_Charset_1.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_Charset_1.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_Charset_1.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_Charset_1.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_Charset_1.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_Charset_1.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_Charset_1 = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_Charset_1); + __TIB_java_nio_charset_Charset_1.clazz = __CLASS_java_nio_charset_Charset_1; + __TIB_java_nio_charset_Charset_1.baseType = JAVA_NULL; + __CLASS_java_nio_charset_Charset_1_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_1); + __CLASS_java_nio_charset_Charset_1_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_1_1ARRAY); + __CLASS_java_nio_charset_Charset_1_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_1_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_Charset_1] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_Charset_1.classInitialized = 1; +} + +void __DELETE_java_nio_charset_Charset_1(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_Charset_1] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_1] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_Charset_1() +{ XMLVM_CLASS_INIT(java_nio_charset_Charset_1) +java_nio_charset_Charset_1* me = (java_nio_charset_Charset_1*) XMLVM_MALLOC(sizeof(java_nio_charset_Charset_1)); + me->tib = &__TIB_java_nio_charset_Charset_1; + __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_1(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_Charset_1] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_Charset_1() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_nio_charset_Charset_1(); + java_nio_charset_Charset_1___INIT___(me); + return me; +} + +void java_nio_charset_Charset_1___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_1___INIT___] + XMLVM_ENTER_METHOD("java.nio.charset.Charset$1", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 117) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Charset.java", 1) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_1_run__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_1_run__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset$1", "run", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 119) + _r0.o = __NEW_org_apache_harmony_niochar_CharsetProviderImpl(); + XMLVM_CHECK_NPE(0) + org_apache_harmony_niochar_CharsetProviderImpl___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_Charset_1.h b/tests/nbody-java/java_nio_charset_Charset_1.h new file mode 100644 index 0000000000000..c99db1f34a816 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_Charset_1.h @@ -0,0 +1,63 @@ +#ifndef __JAVA_NIO_CHARSET_CHARSET_1__ +#define __JAVA_NIO_CHARSET_CHARSET_1__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_Charset_1 1 +// Implemented interfaces: +#include "java_security_PrivilegedAction.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_CharsetProviderImpl) +#endif +// Class declarations for java.nio.charset.Charset$1 +XMLVM_DEFINE_CLASS(java_nio_charset_Charset_1, 7, XMLVM_ITABLE_SIZE_java_nio_charset_Charset_1) + +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_1; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_1_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_1_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_1_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_Charset_1 +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_Charset_1 \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_Charset_1 \ + } java_nio_charset_Charset_1 + +struct java_nio_charset_Charset_1 { + __TIB_DEFINITION_java_nio_charset_Charset_1* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_Charset_1; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset_1 +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset_1 +typedef struct java_nio_charset_Charset_1 java_nio_charset_Charset_1; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_Charset_1 7 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_1_run__ 6 + +void __INIT_java_nio_charset_Charset_1(); +void __INIT_IMPL_java_nio_charset_Charset_1(); +void __DELETE_java_nio_charset_Charset_1(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_Charset_1(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_Charset_1(); +void java_nio_charset_Charset_1___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT java_nio_charset_Charset_1_run__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_charset_Charset_2.c b/tests/nbody-java/java_nio_charset_Charset_2.c new file mode 100644 index 0000000000000..4810994a6e7ef --- /dev/null +++ b/tests/nbody-java/java_nio_charset_Charset_2.c @@ -0,0 +1,190 @@ +#include "xmlvm.h" +#include "java_lang_ClassLoader.h" +#include "java_lang_Thread.h" +#include "java_nio_charset_Charset.h" + +#include "java_nio_charset_Charset_2.h" + +#define XMLVM_CURRENT_CLASS_NAME Charset_2 +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_Charset_2 + +__TIB_DEFINITION_java_nio_charset_Charset_2 __TIB_java_nio_charset_Charset_2 = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_Charset_2, // classInitializer + "java.nio.charset.Charset$2", // className + "java.nio.charset", // package + "java.nio.charset.Charset", // enclosingClassName + "getContextClassLoader:()Ljava/lang/ClassLoader;", // enclosingMethodName + "Ljava/lang/Object;Ljava/security/PrivilegedAction;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_Charset_2), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_Charset_2; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_2_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_2_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_Charset_2_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_Charset_2() +{ + staticInitializerLock(&__TIB_java_nio_charset_Charset_2); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_Charset_2.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_Charset_2.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_Charset_2); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_Charset_2.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_Charset_2.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_Charset_2.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.Charset$2") + __INIT_IMPL_java_nio_charset_Charset_2(); + } +} + +void __INIT_IMPL_java_nio_charset_Charset_2() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_Charset_2.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_Charset_2; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_Charset_2.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_nio_charset_Charset_2.vtable[6] = (VTABLE_PTR) &java_nio_charset_Charset_2_run__; + // Initialize interface information + __TIB_java_nio_charset_Charset_2.numImplementedInterfaces = 1; + __TIB_java_nio_charset_Charset_2.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_security_PrivilegedAction) + + __TIB_java_nio_charset_Charset_2.implementedInterfaces[0][0] = &__TIB_java_security_PrivilegedAction; + // Initialize itable for this class + __TIB_java_nio_charset_Charset_2.itableBegin = &__TIB_java_nio_charset_Charset_2.itable[0]; + __TIB_java_nio_charset_Charset_2.itable[XMLVM_ITABLE_IDX_java_security_PrivilegedAction_run__] = __TIB_java_nio_charset_Charset_2.vtable[6]; + + + __TIB_java_nio_charset_Charset_2.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_Charset_2.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_Charset_2.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_Charset_2.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_Charset_2.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_Charset_2.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_Charset_2.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_Charset_2.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_Charset_2 = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_Charset_2); + __TIB_java_nio_charset_Charset_2.clazz = __CLASS_java_nio_charset_Charset_2; + __TIB_java_nio_charset_Charset_2.baseType = JAVA_NULL; + __CLASS_java_nio_charset_Charset_2_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_2); + __CLASS_java_nio_charset_Charset_2_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_2_1ARRAY); + __CLASS_java_nio_charset_Charset_2_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_Charset_2_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_Charset_2] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_Charset_2.classInitialized = 1; +} + +void __DELETE_java_nio_charset_Charset_2(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_Charset_2] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_2(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_charset_Charset_2*) me)->fields.java_nio_charset_Charset_2.val_t_ = (java_lang_Thread*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_2] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_Charset_2() +{ XMLVM_CLASS_INIT(java_nio_charset_Charset_2) +java_nio_charset_Charset_2* me = (java_nio_charset_Charset_2*) XMLVM_MALLOC(sizeof(java_nio_charset_Charset_2)); + me->tib = &__TIB_java_nio_charset_Charset_2; + __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_2(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_Charset_2] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_Charset_2() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_nio_charset_Charset_2___INIT____java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_2___INIT____java_lang_Thread] + XMLVM_ENTER_METHOD("java.nio.charset.Charset$2", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Charset.java", 1) + XMLVM_CHECK_NPE(0) + ((java_nio_charset_Charset_2*) _r0.o)->fields.java_nio_charset_Charset_2.val_t_ = _r1.o; + XMLVM_SOURCE_POSITION("Charset.java", 209) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_Charset_2_run__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_Charset_2_run__] + XMLVM_ENTER_METHOD("java.nio.charset.Charset$2", "run", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Charset.java", 211) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_nio_charset_Charset_2*) _r1.o)->fields.java_nio_charset_Charset_2.val_t_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Thread_getContextClassLoader__(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_Charset_2.h b/tests/nbody-java/java_nio_charset_Charset_2.h new file mode 100644 index 0000000000000..646463f77ac4d --- /dev/null +++ b/tests/nbody-java/java_nio_charset_Charset_2.h @@ -0,0 +1,68 @@ +#ifndef __JAVA_NIO_CHARSET_CHARSET_2__ +#define __JAVA_NIO_CHARSET_CHARSET_2__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_Charset_2 1 +// Implemented interfaces: +#include "java_security_PrivilegedAction.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader +#define XMLVM_FORWARD_DECL_java_lang_ClassLoader +XMLVM_FORWARD_DECL(java_lang_ClassLoader) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +// Class declarations for java.nio.charset.Charset$2 +XMLVM_DEFINE_CLASS(java_nio_charset_Charset_2, 7, XMLVM_ITABLE_SIZE_java_nio_charset_Charset_2) + +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_2; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_2_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_2_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_Charset_2_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_Charset_2 +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_Charset_2 \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT val_t_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_Charset_2 \ + } java_nio_charset_Charset_2 + +struct java_nio_charset_Charset_2 { + __TIB_DEFINITION_java_nio_charset_Charset_2* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_Charset_2; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset_2 +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset_2 +typedef struct java_nio_charset_Charset_2 java_nio_charset_Charset_2; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_Charset_2 7 +#define XMLVM_VTABLE_IDX_java_nio_charset_Charset_2_run__ 6 + +void __INIT_java_nio_charset_Charset_2(); +void __INIT_IMPL_java_nio_charset_Charset_2(); +void __DELETE_java_nio_charset_Charset_2(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset_2(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_Charset_2(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_Charset_2(); +void java_nio_charset_Charset_2___INIT____java_lang_Thread(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_OBJECT java_nio_charset_Charset_2_run__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_charset_CoderResult.c b/tests/nbody-java/java_nio_charset_CoderResult.c new file mode 100644 index 0000000000000..f4cad71b1222a --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CoderResult.c @@ -0,0 +1,904 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Integer.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_Throwable.h" +#include "java_util_WeakHashMap.h" + +#include "java_nio_charset_CoderResult.h" + +#define XMLVM_CURRENT_CLASS_NAME CoderResult +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_CoderResult + +__TIB_DEFINITION_java_nio_charset_CoderResult __TIB_java_nio_charset_CoderResult = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_CoderResult, // classInitializer + "java.nio.charset.CoderResult", // className + "java.nio.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_CoderResult), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_CoderResult; +JAVA_OBJECT __CLASS_java_nio_charset_CoderResult_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CoderResult_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CoderResult_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_nio_charset_CoderResult_TYPE_UNDERFLOW; +static JAVA_INT _STATIC_java_nio_charset_CoderResult_TYPE_OVERFLOW; +static JAVA_INT _STATIC_java_nio_charset_CoderResult_TYPE_MALFORMED_INPUT; +static JAVA_INT _STATIC_java_nio_charset_CoderResult_TYPE_UNMAPPABLE_CHAR; +static JAVA_OBJECT _STATIC_java_nio_charset_CoderResult_UNDERFLOW; +static JAVA_OBJECT _STATIC_java_nio_charset_CoderResult_OVERFLOW; +static JAVA_OBJECT _STATIC_java_nio_charset_CoderResult__malformedErrors; +static JAVA_OBJECT _STATIC_java_nio_charset_CoderResult__unmappableErrors; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_CoderResult() +{ + staticInitializerLock(&__TIB_java_nio_charset_CoderResult); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_CoderResult.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_CoderResult.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_CoderResult); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_CoderResult.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_CoderResult.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_CoderResult.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.CoderResult") + __INIT_IMPL_java_nio_charset_CoderResult(); + } +} + +void __INIT_IMPL_java_nio_charset_CoderResult() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_CoderResult.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_CoderResult; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_CoderResult.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_nio_charset_CoderResult.vtable[5] = (VTABLE_PTR) &java_nio_charset_CoderResult_toString__; + // Initialize interface information + __TIB_java_nio_charset_CoderResult.numImplementedInterfaces = 0; + __TIB_java_nio_charset_CoderResult.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_nio_charset_CoderResult_TYPE_UNDERFLOW = 1; + _STATIC_java_nio_charset_CoderResult_TYPE_OVERFLOW = 2; + _STATIC_java_nio_charset_CoderResult_TYPE_MALFORMED_INPUT = 3; + _STATIC_java_nio_charset_CoderResult_TYPE_UNMAPPABLE_CHAR = 4; + _STATIC_java_nio_charset_CoderResult_UNDERFLOW = (java_nio_charset_CoderResult*) JAVA_NULL; + _STATIC_java_nio_charset_CoderResult_OVERFLOW = (java_nio_charset_CoderResult*) JAVA_NULL; + _STATIC_java_nio_charset_CoderResult__malformedErrors = (java_util_WeakHashMap*) JAVA_NULL; + _STATIC_java_nio_charset_CoderResult__unmappableErrors = (java_util_WeakHashMap*) JAVA_NULL; + + __TIB_java_nio_charset_CoderResult.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_CoderResult.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_CoderResult.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_CoderResult.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_CoderResult.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_CoderResult.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_CoderResult.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_CoderResult.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_CoderResult = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_CoderResult); + __TIB_java_nio_charset_CoderResult.clazz = __CLASS_java_nio_charset_CoderResult; + __TIB_java_nio_charset_CoderResult.baseType = JAVA_NULL; + __CLASS_java_nio_charset_CoderResult_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CoderResult); + __CLASS_java_nio_charset_CoderResult_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CoderResult_1ARRAY); + __CLASS_java_nio_charset_CoderResult_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CoderResult_2ARRAY); + java_nio_charset_CoderResult___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_CoderResult] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_CoderResult.classInitialized = 1; +} + +void __DELETE_java_nio_charset_CoderResult(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_CoderResult] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CoderResult(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_charset_CoderResult*) me)->fields.java_nio_charset_CoderResult.type_ = 0; + ((java_nio_charset_CoderResult*) me)->fields.java_nio_charset_CoderResult.length_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_CoderResult] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_CoderResult() +{ XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +java_nio_charset_CoderResult* me = (java_nio_charset_CoderResult*) XMLVM_MALLOC(sizeof(java_nio_charset_CoderResult)); + me->tib = &__TIB_java_nio_charset_CoderResult; + __INIT_INSTANCE_MEMBERS_java_nio_charset_CoderResult(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_CoderResult] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CoderResult() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_UNDERFLOW() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult_TYPE_UNDERFLOW; +} + +void java_nio_charset_CoderResult_PUT_TYPE_UNDERFLOW(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult_TYPE_UNDERFLOW = v; +} + +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_OVERFLOW() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult_TYPE_OVERFLOW; +} + +void java_nio_charset_CoderResult_PUT_TYPE_OVERFLOW(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult_TYPE_OVERFLOW = v; +} + +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_MALFORMED_INPUT() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult_TYPE_MALFORMED_INPUT; +} + +void java_nio_charset_CoderResult_PUT_TYPE_MALFORMED_INPUT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult_TYPE_MALFORMED_INPUT = v; +} + +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_UNMAPPABLE_CHAR() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult_TYPE_UNMAPPABLE_CHAR; +} + +void java_nio_charset_CoderResult_PUT_TYPE_UNMAPPABLE_CHAR(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult_TYPE_UNMAPPABLE_CHAR = v; +} + +JAVA_OBJECT java_nio_charset_CoderResult_GET_UNDERFLOW() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult_UNDERFLOW; +} + +void java_nio_charset_CoderResult_PUT_UNDERFLOW(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult_UNDERFLOW = v; +} + +JAVA_OBJECT java_nio_charset_CoderResult_GET_OVERFLOW() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult_OVERFLOW; +} + +void java_nio_charset_CoderResult_PUT_OVERFLOW(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult_OVERFLOW = v; +} + +JAVA_OBJECT java_nio_charset_CoderResult_GET__malformedErrors() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult__malformedErrors; +} + +void java_nio_charset_CoderResult_PUT__malformedErrors(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult__malformedErrors = v; +} + +JAVA_OBJECT java_nio_charset_CoderResult_GET__unmappableErrors() +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + return _STATIC_java_nio_charset_CoderResult__unmappableErrors; +} + +void java_nio_charset_CoderResult_PUT__unmappableErrors(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) +_STATIC_java_nio_charset_CoderResult__unmappableErrors = v; +} + +void java_nio_charset_CoderResult___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult___CLINIT___] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = 0; + XMLVM_SOURCE_POSITION("CoderResult.java", 62) + _r0.o = __NEW_java_nio_charset_CoderResult(); + _r1.i = 1; + XMLVM_CHECK_NPE(0) + java_nio_charset_CoderResult___INIT____int_int(_r0.o, _r1.i, _r2.i); + java_nio_charset_CoderResult_PUT_UNDERFLOW( _r0.o); + XMLVM_SOURCE_POSITION("CoderResult.java", 69) + _r0.o = __NEW_java_nio_charset_CoderResult(); + _r1.i = 2; + XMLVM_CHECK_NPE(0) + java_nio_charset_CoderResult___INIT____int_int(_r0.o, _r1.i, _r2.i); + java_nio_charset_CoderResult_PUT_OVERFLOW( _r0.o); + XMLVM_SOURCE_POSITION("CoderResult.java", 75) + _r0.o = __NEW_java_util_WeakHashMap(); + XMLVM_CHECK_NPE(0) + java_util_WeakHashMap___INIT___(_r0.o); + java_nio_charset_CoderResult_PUT__malformedErrors( _r0.o); + XMLVM_SOURCE_POSITION("CoderResult.java", 81) + _r0.o = __NEW_java_util_WeakHashMap(); + XMLVM_CHECK_NPE(0) + java_util_WeakHashMap___INIT___(_r0.o); + java_nio_charset_CoderResult_PUT__unmappableErrors( _r0.o); + XMLVM_SOURCE_POSITION("CoderResult.java", 44) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CoderResult___INIT____int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult___INIT____int_int] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.i = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("CoderResult.java", 98) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("CoderResult.java", 99) + XMLVM_CHECK_NPE(0) + ((java_nio_charset_CoderResult*) _r0.o)->fields.java_nio_charset_CoderResult.type_ = _r1.i; + XMLVM_SOURCE_POSITION("CoderResult.java", 100) + XMLVM_CHECK_NPE(0) + ((java_nio_charset_CoderResult*) _r0.o)->fields.java_nio_charset_CoderResult.length_ = _r2.i; + XMLVM_SOURCE_POSITION("CoderResult.java", 101) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CoderResult_malformedForLength___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_malformedForLength___int] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "malformedForLength", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.i = n1; + XMLVM_SOURCE_POSITION("CoderResult.java", 115) + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + _r1.o = __CLASS_java_nio_charset_CoderResult; + java_lang_Object_acquireLockRecursive__(_r1.o); + if (_r5.i <= 0) goto label42; + XMLVM_TRY_BEGIN(w3589aaac12b1b6) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 116) + _r2.o = java_lang_Integer_valueOf___int(_r5.i); + XMLVM_SOURCE_POSITION("CoderResult.java", 117) + _r3.o = java_nio_charset_CoderResult_GET__malformedErrors(); + java_lang_Object_acquireLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac12b1b6) + XMLVM_CATCH_SPECIFIC(w3589aaac12b1b6,java_lang_Object,39) + XMLVM_CATCH_END(w3589aaac12b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac12b1b6) + XMLVM_TRY_BEGIN(w3589aaac12b1b7) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 118) + _r0.o = java_nio_charset_CoderResult_GET__malformedErrors(); + //java_util_WeakHashMap_get___java_lang_Object[10] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_WeakHashMap*) _r0.o)->tib->vtable[10])(_r0.o, _r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("CoderResult.java", 119) + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w3589aaac12b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3589aaac12b1b7, sizeof(XMLVM_JMP_BUF)); goto label33; }; + XMLVM_SOURCE_POSITION("CoderResult.java", 120) + _r0.o = __NEW_java_nio_charset_CoderResult(); + _r4.i = 3; + XMLVM_CHECK_NPE(0) + java_nio_charset_CoderResult___INIT____int_int(_r0.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("CoderResult.java", 121) + _r4.o = java_nio_charset_CoderResult_GET__malformedErrors(); + //java_util_WeakHashMap_put___java_lang_Object_java_lang_Object[14] + XMLVM_CHECK_NPE(4) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_WeakHashMap*) _r4.o)->tib->vtable[14])(_r4.o, _r2.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac12b1b7) + XMLVM_CATCH_SPECIFIC(w3589aaac12b1b7,java_lang_Object,36) + XMLVM_CATCH_END(w3589aaac12b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac12b1b7) + label33:; + XMLVM_TRY_BEGIN(w3589aaac12b1b9) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 123) + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac12b1b9) + XMLVM_CATCH_SPECIFIC(w3589aaac12b1b9,java_lang_Object,36) + XMLVM_CATCH_END(w3589aaac12b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac12b1b9) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label36:; + java_lang_Thread* curThread_w3589aaac12b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3589aaac12b1c13->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3589aaac12b1c14) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac12b1c14) + XMLVM_CATCH_SPECIFIC(w3589aaac12b1c14,java_lang_Object,36) + XMLVM_CATCH_END(w3589aaac12b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac12b1c14) + XMLVM_TRY_BEGIN(w3589aaac12b1c15) + // Begin try + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac12b1c15) + XMLVM_CATCH_SPECIFIC(w3589aaac12b1c15,java_lang_Object,39) + XMLVM_CATCH_END(w3589aaac12b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac12b1c15) + label39:; + java_lang_Thread* curThread_w3589aaac12b1c17 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3589aaac12b1c17->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label42:; + XMLVM_TRY_BEGIN(w3589aaac12b1c21) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 127) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("CoderResult.java", 128) + // "niochar.08" + _r2.o = xmlvm_create_java_string_from_pool(180); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac12b1c21) + XMLVM_CATCH_SPECIFIC(w3589aaac12b1c21,java_lang_Object,39) + XMLVM_CATCH_END(w3589aaac12b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac12b1c21) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CoderResult_unmappableForLength___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_unmappableForLength___int] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "unmappableForLength", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.i = n1; + XMLVM_SOURCE_POSITION("CoderResult.java", 144) + XMLVM_CLASS_INIT(java_nio_charset_CoderResult) + _r1.o = __CLASS_java_nio_charset_CoderResult; + java_lang_Object_acquireLockRecursive__(_r1.o); + if (_r5.i <= 0) goto label42; + XMLVM_TRY_BEGIN(w3589aaac13b1b6) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 145) + _r2.o = java_lang_Integer_valueOf___int(_r5.i); + XMLVM_SOURCE_POSITION("CoderResult.java", 146) + _r3.o = java_nio_charset_CoderResult_GET__unmappableErrors(); + java_lang_Object_acquireLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac13b1b6) + XMLVM_CATCH_SPECIFIC(w3589aaac13b1b6,java_lang_Object,39) + XMLVM_CATCH_END(w3589aaac13b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac13b1b6) + XMLVM_TRY_BEGIN(w3589aaac13b1b7) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 147) + _r0.o = java_nio_charset_CoderResult_GET__unmappableErrors(); + //java_util_WeakHashMap_get___java_lang_Object[10] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_WeakHashMap*) _r0.o)->tib->vtable[10])(_r0.o, _r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("CoderResult.java", 148) + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w3589aaac13b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3589aaac13b1b7, sizeof(XMLVM_JMP_BUF)); goto label33; }; + XMLVM_SOURCE_POSITION("CoderResult.java", 149) + _r0.o = __NEW_java_nio_charset_CoderResult(); + _r4.i = 4; + XMLVM_CHECK_NPE(0) + java_nio_charset_CoderResult___INIT____int_int(_r0.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("CoderResult.java", 150) + _r4.o = java_nio_charset_CoderResult_GET__unmappableErrors(); + //java_util_WeakHashMap_put___java_lang_Object_java_lang_Object[14] + XMLVM_CHECK_NPE(4) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_WeakHashMap*) _r4.o)->tib->vtable[14])(_r4.o, _r2.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac13b1b7) + XMLVM_CATCH_SPECIFIC(w3589aaac13b1b7,java_lang_Object,36) + XMLVM_CATCH_END(w3589aaac13b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac13b1b7) + label33:; + XMLVM_TRY_BEGIN(w3589aaac13b1b9) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 152) + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac13b1b9) + XMLVM_CATCH_SPECIFIC(w3589aaac13b1b9,java_lang_Object,36) + XMLVM_CATCH_END(w3589aaac13b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac13b1b9) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label36:; + java_lang_Thread* curThread_w3589aaac13b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3589aaac13b1c13->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w3589aaac13b1c14) + // Begin try + java_lang_Object_releaseLockRecursive__(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac13b1c14) + XMLVM_CATCH_SPECIFIC(w3589aaac13b1c14,java_lang_Object,36) + XMLVM_CATCH_END(w3589aaac13b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac13b1c14) + XMLVM_TRY_BEGIN(w3589aaac13b1c15) + // Begin try + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac13b1c15) + XMLVM_CATCH_SPECIFIC(w3589aaac13b1c15,java_lang_Object,39) + XMLVM_CATCH_END(w3589aaac13b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac13b1c15) + label39:; + java_lang_Thread* curThread_w3589aaac13b1c17 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3589aaac13b1c17->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label42:; + XMLVM_TRY_BEGIN(w3589aaac13b1c21) + // Begin try + XMLVM_SOURCE_POSITION("CoderResult.java", 156) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("CoderResult.java", 157) + // "niochar.08" + _r2.o = xmlvm_create_java_string_from_pool(180); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3589aaac13b1c21) + XMLVM_CATCH_SPECIFIC(w3589aaac13b1c21,java_lang_Object,39) + XMLVM_CATCH_END(w3589aaac13b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w3589aaac13b1c21) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CoderResult_isUnderflow__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_isUnderflow__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "isUnderflow", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r1.i = 1; + XMLVM_SOURCE_POSITION("CoderResult.java", 166) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + if (_r0.i != _r1.i) goto label7; + _r0 = _r1; + label6:; + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + _r0.i = 0; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CoderResult_isError__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_isError__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "isError", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CoderResult.java", 177) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + _r1.i = 3; + if (_r0.i == _r1.i) goto label12; + XMLVM_SOURCE_POSITION("CoderResult.java", 178) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + _r1.i = 4; + if (_r0.i == _r1.i) goto label12; + _r0.i = 0; + label11:; + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + _r0.i = 1; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CoderResult_isMalformed__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_isMalformed__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "isMalformed", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CoderResult.java", 187) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + _r1.i = 3; + if (_r0.i != _r1.i) goto label7; + _r0.i = 1; + label6:; + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + _r0.i = 0; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CoderResult_isOverflow__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_isOverflow__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "isOverflow", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CoderResult.java", 196) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + _r1.i = 2; + if (_r0.i != _r1.i) goto label7; + _r0.i = 1; + label6:; + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + _r0.i = 0; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_nio_charset_CoderResult_isUnmappable__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_isUnmappable__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "isUnmappable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CoderResult.java", 205) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + _r1.i = 4; + if (_r0.i != _r1.i) goto label7; + _r0.i = 1; + label6:; + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + _r0.i = 0; + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_nio_charset_CoderResult_length__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_length__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "length", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CoderResult.java", 217) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + _r1.i = 3; + if (_r0.i == _r1.i) goto label10; + XMLVM_SOURCE_POSITION("CoderResult.java", 218) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + _r1.i = 4; + if (_r0.i != _r1.i) goto label13; + label10:; + XMLVM_SOURCE_POSITION("CoderResult.java", 219) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.length_; + XMLVM_EXIT_METHOD() + return _r0.i; + label13:; + XMLVM_SOURCE_POSITION("CoderResult.java", 223) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("CoderResult.java", 224) + // "niochar.09" + _r1.o = xmlvm_create_java_string_from_pool(181); + + + // Red class access removed: org.apache.harmony.niochar.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CoderResult_throwException__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_throwException__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "throwException", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CoderResult.java", 242) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.type_; + switch (_r0.i) { + case 1: goto label11; + case 2: goto label17; + case 3: goto label31; + case 4: goto label23; + } + XMLVM_SOURCE_POSITION("CoderResult.java", 252) + + + // Red class access removed: java.nio.charset.CharacterCodingException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.CharacterCodingException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("CoderResult.java", 244) + + + // Red class access removed: java.nio.BufferUnderflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferUnderflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("CoderResult.java", 246) + + + // Red class access removed: java.nio.BufferOverflowException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.BufferOverflowException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label23:; + XMLVM_SOURCE_POSITION("CoderResult.java", 248) + + + // Red class access removed: java.nio.charset.UnmappableCharacterException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.length_; + + + // Red class access removed: java.nio.charset.UnmappableCharacterException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label31:; + XMLVM_SOURCE_POSITION("CoderResult.java", 250) + + + // Red class access removed: java.nio.charset.MalformedInputException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + _r1.i = ((java_nio_charset_CoderResult*) _r2.o)->fields.java_nio_charset_CoderResult.length_; + + + // Red class access removed: java.nio.charset.MalformedInputException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label40:; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CoderResult_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CoderResult_toString__] + XMLVM_ENTER_METHOD("java.nio.charset.CoderResult", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("CoderResult.java", 263) + XMLVM_SOURCE_POSITION("CoderResult.java", 264) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_nio_charset_CoderResult*) _r3.o)->fields.java_nio_charset_CoderResult.type_; + switch (_r0.i) { + case 1: goto label29; + case 2: goto label32; + case 3: goto label53; + case 4: goto label35; + } + XMLVM_SOURCE_POSITION("CoderResult.java", 280) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + label7:; + XMLVM_SOURCE_POSITION("CoderResult.java", 283) + _r1.o = __NEW_java_lang_StringBuilder(); + // "CoderResult[" + _r2.o = xmlvm_create_java_string_from_pool(182); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r0.o); + // "]" + _r1.o = xmlvm_create_java_string_from_pool(183); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label29:; + XMLVM_SOURCE_POSITION("CoderResult.java", 266) + // "UNDERFLOW error" + _r0.o = xmlvm_create_java_string_from_pool(184); + goto label7; + label32:; + XMLVM_SOURCE_POSITION("CoderResult.java", 269) + // "OVERFLOW error" + _r0.o = xmlvm_create_java_string_from_pool(185); + goto label7; + label35:; + XMLVM_SOURCE_POSITION("CoderResult.java", 272) + _r0.o = __NEW_java_lang_StringBuilder(); + // "Unmappable-character error with erroneous input length " + _r1.o = xmlvm_create_java_string_from_pool(186); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("CoderResult.java", 273) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_nio_charset_CoderResult*) _r3.o)->fields.java_nio_charset_CoderResult.length_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___int(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label7; + label53:; + XMLVM_SOURCE_POSITION("CoderResult.java", 276) + _r0.o = __NEW_java_lang_StringBuilder(); + // "Malformed-input error with erroneous input length " + _r1.o = xmlvm_create_java_string_from_pool(187); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("CoderResult.java", 277) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_nio_charset_CoderResult*) _r3.o)->fields.java_nio_charset_CoderResult.length_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___int(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label7; + label72:; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_CoderResult.h b/tests/nbody-java/java_nio_charset_CoderResult.h new file mode 100644 index 0000000000000..606f3e3a4abbd --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CoderResult.h @@ -0,0 +1,106 @@ +#ifndef __JAVA_NIO_CHARSET_CODERRESULT__ +#define __JAVA_NIO_CHARSET_CODERRESULT__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_CoderResult 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_WeakHashMap +#define XMLVM_FORWARD_DECL_java_util_WeakHashMap +XMLVM_FORWARD_DECL(java_util_WeakHashMap) +#endif +// Class declarations for java.nio.charset.CoderResult +XMLVM_DEFINE_CLASS(java_nio_charset_CoderResult, 6, XMLVM_ITABLE_SIZE_java_nio_charset_CoderResult) + +extern JAVA_OBJECT __CLASS_java_nio_charset_CoderResult; +extern JAVA_OBJECT __CLASS_java_nio_charset_CoderResult_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CoderResult_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CoderResult_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CoderResult +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_CoderResult \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_INT type_; \ + JAVA_INT length_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CoderResult \ + } java_nio_charset_CoderResult + +struct java_nio_charset_CoderResult { + __TIB_DEFINITION_java_nio_charset_CoderResult* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_CoderResult; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +#define XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +typedef struct java_nio_charset_CoderResult java_nio_charset_CoderResult; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_CoderResult 6 +#define XMLVM_VTABLE_IDX_java_nio_charset_CoderResult_toString__ 5 + +void __INIT_java_nio_charset_CoderResult(); +void __INIT_IMPL_java_nio_charset_CoderResult(); +void __DELETE_java_nio_charset_CoderResult(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CoderResult(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_CoderResult(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CoderResult(); +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_UNDERFLOW(); +void java_nio_charset_CoderResult_PUT_TYPE_UNDERFLOW(JAVA_INT v); +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_OVERFLOW(); +void java_nio_charset_CoderResult_PUT_TYPE_OVERFLOW(JAVA_INT v); +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_MALFORMED_INPUT(); +void java_nio_charset_CoderResult_PUT_TYPE_MALFORMED_INPUT(JAVA_INT v); +JAVA_INT java_nio_charset_CoderResult_GET_TYPE_UNMAPPABLE_CHAR(); +void java_nio_charset_CoderResult_PUT_TYPE_UNMAPPABLE_CHAR(JAVA_INT v); +JAVA_OBJECT java_nio_charset_CoderResult_GET_UNDERFLOW(); +void java_nio_charset_CoderResult_PUT_UNDERFLOW(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_CoderResult_GET_OVERFLOW(); +void java_nio_charset_CoderResult_PUT_OVERFLOW(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_CoderResult_GET__malformedErrors(); +void java_nio_charset_CoderResult_PUT__malformedErrors(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_CoderResult_GET__unmappableErrors(); +void java_nio_charset_CoderResult_PUT__unmappableErrors(JAVA_OBJECT v); +void java_nio_charset_CoderResult___CLINIT_(); +void java_nio_charset_CoderResult___INIT____int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +JAVA_OBJECT java_nio_charset_CoderResult_malformedForLength___int(JAVA_INT n1); +JAVA_OBJECT java_nio_charset_CoderResult_unmappableForLength___int(JAVA_INT n1); +JAVA_BOOLEAN java_nio_charset_CoderResult_isUnderflow__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CoderResult_isError__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CoderResult_isMalformed__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CoderResult_isOverflow__(JAVA_OBJECT me); +JAVA_BOOLEAN java_nio_charset_CoderResult_isUnmappable__(JAVA_OBJECT me); +JAVA_INT java_nio_charset_CoderResult_length__(JAVA_OBJECT me); +void java_nio_charset_CoderResult_throwException__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_nio_charset_CoderResult_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_charset_CodingErrorAction.c b/tests/nbody-java/java_nio_charset_CodingErrorAction.c new file mode 100644 index 0000000000000..c6cf402186023 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CodingErrorAction.c @@ -0,0 +1,270 @@ +#include "xmlvm.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "java_nio_charset_CodingErrorAction.h" + +#define XMLVM_CURRENT_CLASS_NAME CodingErrorAction +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_CodingErrorAction + +__TIB_DEFINITION_java_nio_charset_CodingErrorAction __TIB_java_nio_charset_CodingErrorAction = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_CodingErrorAction, // classInitializer + "java.nio.charset.CodingErrorAction", // className + "java.nio.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_CodingErrorAction), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction; +JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_nio_charset_CodingErrorAction_IGNORE; +static JAVA_OBJECT _STATIC_java_nio_charset_CodingErrorAction_REPLACE; +static JAVA_OBJECT _STATIC_java_nio_charset_CodingErrorAction_REPORT; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_CodingErrorAction() +{ + staticInitializerLock(&__TIB_java_nio_charset_CodingErrorAction); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_CodingErrorAction.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_CodingErrorAction.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_CodingErrorAction); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_CodingErrorAction.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_CodingErrorAction.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_CodingErrorAction.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.CodingErrorAction") + __INIT_IMPL_java_nio_charset_CodingErrorAction(); + } +} + +void __INIT_IMPL_java_nio_charset_CodingErrorAction() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_CodingErrorAction.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_CodingErrorAction; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_CodingErrorAction.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_nio_charset_CodingErrorAction.vtable[5] = (VTABLE_PTR) &java_nio_charset_CodingErrorAction_toString__; + // Initialize interface information + __TIB_java_nio_charset_CodingErrorAction.numImplementedInterfaces = 0; + __TIB_java_nio_charset_CodingErrorAction.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_nio_charset_CodingErrorAction_IGNORE = (java_nio_charset_CodingErrorAction*) JAVA_NULL; + _STATIC_java_nio_charset_CodingErrorAction_REPLACE = (java_nio_charset_CodingErrorAction*) JAVA_NULL; + _STATIC_java_nio_charset_CodingErrorAction_REPORT = (java_nio_charset_CodingErrorAction*) JAVA_NULL; + + __TIB_java_nio_charset_CodingErrorAction.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_CodingErrorAction.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_CodingErrorAction.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_CodingErrorAction.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_CodingErrorAction.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_CodingErrorAction.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_CodingErrorAction.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_CodingErrorAction.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_CodingErrorAction = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_CodingErrorAction); + __TIB_java_nio_charset_CodingErrorAction.clazz = __CLASS_java_nio_charset_CodingErrorAction; + __TIB_java_nio_charset_CodingErrorAction.baseType = JAVA_NULL; + __CLASS_java_nio_charset_CodingErrorAction_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CodingErrorAction); + __CLASS_java_nio_charset_CodingErrorAction_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CodingErrorAction_1ARRAY); + __CLASS_java_nio_charset_CodingErrorAction_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_CodingErrorAction_2ARRAY); + java_nio_charset_CodingErrorAction___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_CodingErrorAction] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_CodingErrorAction.classInitialized = 1; +} + +void __DELETE_java_nio_charset_CodingErrorAction(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_CodingErrorAction] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CodingErrorAction(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_nio_charset_CodingErrorAction*) me)->fields.java_nio_charset_CodingErrorAction.action_ = (java_lang_String*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_CodingErrorAction] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_CodingErrorAction() +{ XMLVM_CLASS_INIT(java_nio_charset_CodingErrorAction) +java_nio_charset_CodingErrorAction* me = (java_nio_charset_CodingErrorAction*) XMLVM_MALLOC(sizeof(java_nio_charset_CodingErrorAction)); + me->tib = &__TIB_java_nio_charset_CodingErrorAction; + __INIT_INSTANCE_MEMBERS_java_nio_charset_CodingErrorAction(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_CodingErrorAction] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CodingErrorAction() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_nio_charset_CodingErrorAction_GET_IGNORE() +{ + XMLVM_CLASS_INIT(java_nio_charset_CodingErrorAction) + return _STATIC_java_nio_charset_CodingErrorAction_IGNORE; +} + +void java_nio_charset_CodingErrorAction_PUT_IGNORE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CodingErrorAction) +_STATIC_java_nio_charset_CodingErrorAction_IGNORE = v; +} + +JAVA_OBJECT java_nio_charset_CodingErrorAction_GET_REPLACE() +{ + XMLVM_CLASS_INIT(java_nio_charset_CodingErrorAction) + return _STATIC_java_nio_charset_CodingErrorAction_REPLACE; +} + +void java_nio_charset_CodingErrorAction_PUT_REPLACE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CodingErrorAction) +_STATIC_java_nio_charset_CodingErrorAction_REPLACE = v; +} + +JAVA_OBJECT java_nio_charset_CodingErrorAction_GET_REPORT() +{ + XMLVM_CLASS_INIT(java_nio_charset_CodingErrorAction) + return _STATIC_java_nio_charset_CodingErrorAction_REPORT; +} + +void java_nio_charset_CodingErrorAction_PUT_REPORT(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_CodingErrorAction) +_STATIC_java_nio_charset_CodingErrorAction_REPORT = v; +} + +void java_nio_charset_CodingErrorAction___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CodingErrorAction___CLINIT___] + XMLVM_ENTER_METHOD("java.nio.charset.CodingErrorAction", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 29) + _r0.o = __NEW_java_nio_charset_CodingErrorAction(); + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 30) + // "IGNORE" + _r1.o = xmlvm_create_java_string_from_pool(714); + XMLVM_CHECK_NPE(0) + java_nio_charset_CodingErrorAction___INIT____java_lang_String(_r0.o, _r1.o); + java_nio_charset_CodingErrorAction_PUT_IGNORE( _r0.o); + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 36) + _r0.o = __NEW_java_nio_charset_CodingErrorAction(); + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 37) + // "REPLACE" + _r1.o = xmlvm_create_java_string_from_pool(715); + XMLVM_CHECK_NPE(0) + java_nio_charset_CodingErrorAction___INIT____java_lang_String(_r0.o, _r1.o); + java_nio_charset_CodingErrorAction_PUT_REPLACE( _r0.o); + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 44) + _r0.o = __NEW_java_nio_charset_CodingErrorAction(); + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 45) + // "REPORT" + _r1.o = xmlvm_create_java_string_from_pool(716); + XMLVM_CHECK_NPE(0) + java_nio_charset_CodingErrorAction___INIT____java_lang_String(_r0.o, _r1.o); + java_nio_charset_CodingErrorAction_PUT_REPORT( _r0.o); + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 24) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_CodingErrorAction___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CodingErrorAction___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.nio.charset.CodingErrorAction", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 53) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 54) + XMLVM_CHECK_NPE(0) + ((java_nio_charset_CodingErrorAction*) _r0.o)->fields.java_nio_charset_CodingErrorAction.action_ = _r1.o; + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 55) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_nio_charset_CodingErrorAction_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_CodingErrorAction_toString__] + XMLVM_ENTER_METHOD("java.nio.charset.CodingErrorAction", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CodingErrorAction.java", 64) + _r0.o = __NEW_java_lang_StringBuilder(); + // "Action: " + _r1.o = xmlvm_create_java_string_from_pool(717); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_nio_charset_CodingErrorAction*) _r2.o)->fields.java_nio_charset_CodingErrorAction.action_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_CodingErrorAction.h b/tests/nbody-java/java_nio_charset_CodingErrorAction.h new file mode 100644 index 0000000000000..9325c6eb2f729 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_CodingErrorAction.h @@ -0,0 +1,70 @@ +#ifndef __JAVA_NIO_CHARSET_CODINGERRORACTION__ +#define __JAVA_NIO_CHARSET_CODINGERRORACTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_CodingErrorAction 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for java.nio.charset.CodingErrorAction +XMLVM_DEFINE_CLASS(java_nio_charset_CodingErrorAction, 6, XMLVM_ITABLE_SIZE_java_nio_charset_CodingErrorAction) + +extern JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction; +extern JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_CodingErrorAction_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CodingErrorAction +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_CodingErrorAction \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT action_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_CodingErrorAction \ + } java_nio_charset_CodingErrorAction + +struct java_nio_charset_CodingErrorAction { + __TIB_DEFINITION_java_nio_charset_CodingErrorAction* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_CodingErrorAction; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +#define XMLVM_FORWARD_DECL_java_nio_charset_CodingErrorAction +typedef struct java_nio_charset_CodingErrorAction java_nio_charset_CodingErrorAction; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_CodingErrorAction 6 +#define XMLVM_VTABLE_IDX_java_nio_charset_CodingErrorAction_toString__ 5 + +void __INIT_java_nio_charset_CodingErrorAction(); +void __INIT_IMPL_java_nio_charset_CodingErrorAction(); +void __DELETE_java_nio_charset_CodingErrorAction(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_CodingErrorAction(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_CodingErrorAction(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_CodingErrorAction(); +JAVA_OBJECT java_nio_charset_CodingErrorAction_GET_IGNORE(); +void java_nio_charset_CodingErrorAction_PUT_IGNORE(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_CodingErrorAction_GET_REPLACE(); +void java_nio_charset_CodingErrorAction_PUT_REPLACE(JAVA_OBJECT v); +JAVA_OBJECT java_nio_charset_CodingErrorAction_GET_REPORT(); +void java_nio_charset_CodingErrorAction_PUT_REPORT(JAVA_OBJECT v); +void java_nio_charset_CodingErrorAction___CLINIT_(); +void java_nio_charset_CodingErrorAction___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT java_nio_charset_CodingErrorAction_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_nio_charset_spi_CharsetProvider.c b/tests/nbody-java/java_nio_charset_spi_CharsetProvider.c new file mode 100644 index 0000000000000..67faf79cf8862 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_spi_CharsetProvider.c @@ -0,0 +1,210 @@ +#include "xmlvm.h" +#include "java_lang_RuntimePermission.h" +#include "java_lang_SecurityManager.h" +#include "java_lang_String.h" +#include "java_lang_System.h" +#include "java_nio_charset_Charset.h" +#include "java_util_Iterator.h" + +#include "java_nio_charset_spi_CharsetProvider.h" + +#define XMLVM_CURRENT_CLASS_NAME CharsetProvider +#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_charset_spi_CharsetProvider + +__TIB_DEFINITION_java_nio_charset_spi_CharsetProvider __TIB_java_nio_charset_spi_CharsetProvider = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_nio_charset_spi_CharsetProvider, // classInitializer + "java.nio.charset.spi.CharsetProvider", // className + "java.nio.charset.spi", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_nio_charset_spi_CharsetProvider), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider; +JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider_1ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider_2ARRAY; +JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_nio_charset_spi_CharsetProvider_CONSTRUCT_PERM; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_nio_charset_spi_CharsetProvider() +{ + staticInitializerLock(&__TIB_java_nio_charset_spi_CharsetProvider); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_nio_charset_spi_CharsetProvider.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_nio_charset_spi_CharsetProvider.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_nio_charset_spi_CharsetProvider); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_nio_charset_spi_CharsetProvider.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_nio_charset_spi_CharsetProvider.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_nio_charset_spi_CharsetProvider.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.nio.charset.spi.CharsetProvider") + __INIT_IMPL_java_nio_charset_spi_CharsetProvider(); + } +} + +void __INIT_IMPL_java_nio_charset_spi_CharsetProvider() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_nio_charset_spi_CharsetProvider.newInstanceFunc = __NEW_INSTANCE_java_nio_charset_spi_CharsetProvider; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_nio_charset_spi_CharsetProvider.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_nio_charset_spi_CharsetProvider.numImplementedInterfaces = 0; + __TIB_java_nio_charset_spi_CharsetProvider.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_nio_charset_spi_CharsetProvider_CONSTRUCT_PERM = (java_lang_RuntimePermission*) JAVA_NULL; + + __TIB_java_nio_charset_spi_CharsetProvider.declaredFields = &__field_reflection_data[0]; + __TIB_java_nio_charset_spi_CharsetProvider.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_nio_charset_spi_CharsetProvider.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_nio_charset_spi_CharsetProvider.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_nio_charset_spi_CharsetProvider.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_nio_charset_spi_CharsetProvider.methodDispatcherFunc = method_dispatcher; + __TIB_java_nio_charset_spi_CharsetProvider.declaredMethods = &__method_reflection_data[0]; + __TIB_java_nio_charset_spi_CharsetProvider.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_nio_charset_spi_CharsetProvider = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_charset_spi_CharsetProvider); + __TIB_java_nio_charset_spi_CharsetProvider.clazz = __CLASS_java_nio_charset_spi_CharsetProvider; + __TIB_java_nio_charset_spi_CharsetProvider.baseType = JAVA_NULL; + __CLASS_java_nio_charset_spi_CharsetProvider_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_spi_CharsetProvider); + __CLASS_java_nio_charset_spi_CharsetProvider_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_spi_CharsetProvider_1ARRAY); + __CLASS_java_nio_charset_spi_CharsetProvider_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_charset_spi_CharsetProvider_2ARRAY); + java_nio_charset_spi_CharsetProvider___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_charset_spi_CharsetProvider] + //XMLVM_END_WRAPPER + + __TIB_java_nio_charset_spi_CharsetProvider.classInitialized = 1; +} + +void __DELETE_java_nio_charset_spi_CharsetProvider(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_charset_spi_CharsetProvider] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_nio_charset_spi_CharsetProvider(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_charset_spi_CharsetProvider] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_nio_charset_spi_CharsetProvider() +{ XMLVM_CLASS_INIT(java_nio_charset_spi_CharsetProvider) +java_nio_charset_spi_CharsetProvider* me = (java_nio_charset_spi_CharsetProvider*) XMLVM_MALLOC(sizeof(java_nio_charset_spi_CharsetProvider)); + me->tib = &__TIB_java_nio_charset_spi_CharsetProvider; + __INIT_INSTANCE_MEMBERS_java_nio_charset_spi_CharsetProvider(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_charset_spi_CharsetProvider] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_spi_CharsetProvider() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_nio_charset_spi_CharsetProvider(); + java_nio_charset_spi_CharsetProvider___INIT___(me); + return me; +} + +JAVA_OBJECT java_nio_charset_spi_CharsetProvider_GET_CONSTRUCT_PERM() +{ + XMLVM_CLASS_INIT(java_nio_charset_spi_CharsetProvider) + return _STATIC_java_nio_charset_spi_CharsetProvider_CONSTRUCT_PERM; +} + +void java_nio_charset_spi_CharsetProvider_PUT_CONSTRUCT_PERM(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_nio_charset_spi_CharsetProvider) +_STATIC_java_nio_charset_spi_CharsetProvider_CONSTRUCT_PERM = v; +} + +void java_nio_charset_spi_CharsetProvider___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_spi_CharsetProvider___CLINIT___] + XMLVM_ENTER_METHOD("java.nio.charset.spi.CharsetProvider", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("CharsetProvider.java", 28) + _r0.o = __NEW_java_lang_RuntimePermission(); + XMLVM_SOURCE_POSITION("CharsetProvider.java", 29) + // "charsetProvider" + _r1.o = xmlvm_create_java_string_from_pool(59); + XMLVM_CHECK_NPE(0) + java_lang_RuntimePermission___INIT____java_lang_String(_r0.o, _r1.o); + java_nio_charset_spi_CharsetProvider_PUT_CONSTRUCT_PERM( _r0.o); + XMLVM_SOURCE_POSITION("CharsetProvider.java", 25) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_nio_charset_spi_CharsetProvider___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_nio_charset_spi_CharsetProvider___INIT___] + XMLVM_ENTER_METHOD("java.nio.charset.spi.CharsetProvider", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("CharsetProvider.java", 38) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("CharsetProvider.java", 39) + _r0.o = java_lang_System_getSecurityManager__(); + XMLVM_SOURCE_POSITION("CharsetProvider.java", 40) + if (_r0.o == JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("CharsetProvider.java", 41) + _r1.o = java_nio_charset_spi_CharsetProvider_GET_CONSTRUCT_PERM(); + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + label14:; + XMLVM_SOURCE_POSITION("CharsetProvider.java", 42) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_nio_charset_spi_CharsetProvider.h b/tests/nbody-java/java_nio_charset_spi_CharsetProvider.h new file mode 100644 index 0000000000000..006acd5f8d229 --- /dev/null +++ b/tests/nbody-java/java_nio_charset_spi_CharsetProvider.h @@ -0,0 +1,84 @@ +#ifndef __JAVA_NIO_CHARSET_SPI_CHARSETPROVIDER__ +#define __JAVA_NIO_CHARSET_SPI_CHARSETPROVIDER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_nio_charset_spi_CharsetProvider 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimePermission +#define XMLVM_FORWARD_DECL_java_lang_RuntimePermission +XMLVM_FORWARD_DECL(java_lang_RuntimePermission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_SecurityManager +#define XMLVM_FORWARD_DECL_java_lang_SecurityManager +XMLVM_FORWARD_DECL(java_lang_SecurityManager) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +// Class declarations for java.nio.charset.spi.CharsetProvider +XMLVM_DEFINE_CLASS(java_nio_charset_spi_CharsetProvider, 8, XMLVM_ITABLE_SIZE_java_nio_charset_spi_CharsetProvider) + +extern JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider; +extern JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider_1ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider_2ARRAY; +extern JAVA_OBJECT __CLASS_java_nio_charset_spi_CharsetProvider_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_spi_CharsetProvider +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_nio_charset_spi_CharsetProvider \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_nio_charset_spi_CharsetProvider \ + } java_nio_charset_spi_CharsetProvider + +struct java_nio_charset_spi_CharsetProvider { + __TIB_DEFINITION_java_nio_charset_spi_CharsetProvider* tib; + struct { + __INSTANCE_FIELDS_java_nio_charset_spi_CharsetProvider; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_spi_CharsetProvider +#define XMLVM_FORWARD_DECL_java_nio_charset_spi_CharsetProvider +typedef struct java_nio_charset_spi_CharsetProvider java_nio_charset_spi_CharsetProvider; +#endif + +#define XMLVM_VTABLE_SIZE_java_nio_charset_spi_CharsetProvider 8 +#define XMLVM_VTABLE_IDX_java_nio_charset_spi_CharsetProvider_charsets__ 7 +#define XMLVM_VTABLE_IDX_java_nio_charset_spi_CharsetProvider_charsetForName___java_lang_String 6 + +void __INIT_java_nio_charset_spi_CharsetProvider(); +void __INIT_IMPL_java_nio_charset_spi_CharsetProvider(); +void __DELETE_java_nio_charset_spi_CharsetProvider(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_nio_charset_spi_CharsetProvider(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_nio_charset_spi_CharsetProvider(); +JAVA_OBJECT __NEW_INSTANCE_java_nio_charset_spi_CharsetProvider(); +JAVA_OBJECT java_nio_charset_spi_CharsetProvider_GET_CONSTRUCT_PERM(); +void java_nio_charset_spi_CharsetProvider_PUT_CONSTRUCT_PERM(JAVA_OBJECT v); +void java_nio_charset_spi_CharsetProvider___CLINIT_(); +void java_nio_charset_spi_CharsetProvider___INIT___(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_nio_charset_spi_CharsetProvider_charsets__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT java_nio_charset_spi_CharsetProvider_charsetForName___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_security_AccessController.c b/tests/nbody-java/java_security_AccessController.c new file mode 100644 index 0000000000000..d59a8ed3d348d --- /dev/null +++ b/tests/nbody-java/java_security_AccessController.c @@ -0,0 +1,351 @@ +#include "xmlvm.h" +#include "java_lang_Exception.h" +#include "java_lang_RuntimeException.h" +#include "java_security_Permission.h" +#include "java_security_PrivilegedAction.h" + +#include "java_security_AccessController.h" + +#define XMLVM_CURRENT_CLASS_NAME AccessController +#define XMLVM_CURRENT_PKG_CLASS_NAME java_security_AccessController + +__TIB_DEFINITION_java_security_AccessController __TIB_java_security_AccessController = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_security_AccessController, // classInitializer + "java.security.AccessController", // className + "java.security", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_security_AccessController), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_security_AccessController; +JAVA_OBJECT __CLASS_java_security_AccessController_1ARRAY; +JAVA_OBJECT __CLASS_java_security_AccessController_2ARRAY; +JAVA_OBJECT __CLASS_java_security_AccessController_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_security_AccessController() +{ + staticInitializerLock(&__TIB_java_security_AccessController); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_security_AccessController.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_security_AccessController.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_security_AccessController); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_security_AccessController.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_security_AccessController.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_security_AccessController.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.security.AccessController") + __INIT_IMPL_java_security_AccessController(); + } +} + +void __INIT_IMPL_java_security_AccessController() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_security_AccessController.newInstanceFunc = __NEW_INSTANCE_java_security_AccessController; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_security_AccessController.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_security_AccessController.numImplementedInterfaces = 0; + __TIB_java_security_AccessController.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_security_AccessController.declaredFields = &__field_reflection_data[0]; + __TIB_java_security_AccessController.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_security_AccessController.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_security_AccessController.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_security_AccessController.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_security_AccessController.methodDispatcherFunc = method_dispatcher; + __TIB_java_security_AccessController.declaredMethods = &__method_reflection_data[0]; + __TIB_java_security_AccessController.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_security_AccessController = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_security_AccessController); + __TIB_java_security_AccessController.clazz = __CLASS_java_security_AccessController; + __TIB_java_security_AccessController.baseType = JAVA_NULL; + __CLASS_java_security_AccessController_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_AccessController); + __CLASS_java_security_AccessController_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_AccessController_1ARRAY); + __CLASS_java_security_AccessController_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_AccessController_2ARRAY); + java_security_AccessController___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_security_AccessController] + //XMLVM_END_WRAPPER + + __TIB_java_security_AccessController.classInitialized = 1; +} + +void __DELETE_java_security_AccessController(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_security_AccessController] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_security_AccessController(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_security_AccessController] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_security_AccessController() +{ XMLVM_CLASS_INIT(java_security_AccessController) +java_security_AccessController* me = (java_security_AccessController*) XMLVM_MALLOC(sizeof(java_security_AccessController)); + me->tib = &__TIB_java_security_AccessController; + __INIT_INSTANCE_MEMBERS_java_security_AccessController(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_security_AccessController] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_security_AccessController() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_security_AccessController___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_security_AccessController___INIT___] + XMLVM_ENTER_METHOD("java.security.AccessController", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("AccessController.java", 38) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("AccessController.java", 39) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_security_AccessController_checkPermission___java_security_Permission(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_security_AccessController) + //XMLVM_BEGIN_WRAPPER[java_security_AccessController_checkPermission___java_security_Permission] + XMLVM_ENTER_METHOD("java.security.AccessController", "checkPermission", "?") + XMLVMElem _r0; + _r0.o = n1; + XMLVM_SOURCE_POSITION("AccessController.java", 105) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_security_AccessController_keepalive___java_security_AccessControlContext(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_security_AccessController) + //XMLVM_BEGIN_WRAPPER[java_security_AccessController_keepalive___java_security_AccessControlContext] + XMLVM_ENTER_METHOD("java.security.AccessController", "keepalive", "?") + XMLVMElem _r0; + _r0.o = n1; + XMLVM_SOURCE_POSITION("AccessController.java", 113) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_AccessController_getContext__() +{ + XMLVM_CLASS_INIT(java_security_AccessController) + //XMLVM_BEGIN_WRAPPER[java_security_AccessController_getContext__] + XMLVM_ENTER_METHOD("java.security.AccessController", "getContext", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("AccessController.java", 125) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedAction(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_security_AccessController) + //XMLVM_BEGIN_WRAPPER[java_security_AccessController_doPrivileged___java_security_PrivilegedAction] + XMLVM_ENTER_METHOD("java.security.AccessController", "doPrivileged", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("AccessController.java", 194) + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_security_PrivilegedAction_run__])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedAction_java_security_AccessControlContext(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_security_AccessController) + //XMLVM_BEGIN_WRAPPER[java_security_AccessController_doPrivileged___java_security_PrivilegedAction_java_security_AccessControlContext] + XMLVM_ENTER_METHOD("java.security.AccessController", "doPrivileged", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("AccessController.java", 222) + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_security_PrivilegedAction_run__])(_r1.o); + XMLVM_SOURCE_POSITION("AccessController.java", 223) + java_security_AccessController_keepalive___java_security_AccessControlContext(_r2.o); + XMLVM_SOURCE_POSITION("AccessController.java", 224) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedExceptionAction(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_security_AccessController) + //XMLVM_BEGIN_WRAPPER[java_security_AccessController_doPrivileged___java_security_PrivilegedExceptionAction] + XMLVM_ENTER_METHOD("java.security.AccessController", "doPrivileged", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = n1; + XMLVM_TRY_BEGIN(w2085aaab6b1b2) + // Begin try + XMLVM_SOURCE_POSITION("AccessController.java", 251) + + + // Red class access removed: java.security.PrivilegedExceptionAction::run + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2085aaab6b1b2) + XMLVM_CATCH_SPECIFIC(w2085aaab6b1b2,java_lang_RuntimeException,5) + XMLVM_CATCH_SPECIFIC(w2085aaab6b1b2,java_lang_Exception,7) + XMLVM_CATCH_END(w2085aaab6b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w2085aaab6b1b2) + XMLVM_EXIT_METHOD() + return _r1.o; + label5:; + XMLVM_SOURCE_POSITION("AccessController.java", 252) + java_lang_Thread* curThread_w2085aaab6b1b6 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2085aaab6b1b6->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("AccessController.java", 253) + XMLVM_THROW_CUSTOM(_r0.o) + label7:; + XMLVM_SOURCE_POSITION("AccessController.java", 254) + java_lang_Thread* curThread_w2085aaab6b1c11 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2085aaab6b1c11->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("AccessController.java", 255) + + + // Red class access removed: java.security.PrivilegedActionException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.security.PrivilegedActionException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedExceptionAction_java_security_AccessControlContext(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_security_AccessController) + //XMLVM_BEGIN_WRAPPER[java_security_AccessController_doPrivileged___java_security_PrivilegedExceptionAction_java_security_AccessControlContext] + XMLVM_ENTER_METHOD("java.security.AccessController", "doPrivileged", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = n1; + _r4.o = n2; + XMLVM_TRY_BEGIN(w2085aaab7b1b3) + // Begin try + XMLVM_SOURCE_POSITION("AccessController.java", 288) + + + // Red class access removed: java.security.PrivilegedExceptionAction::run + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("AccessController.java", 289) + java_security_AccessController_keepalive___java_security_AccessControlContext(_r4.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2085aaab7b1b3) + XMLVM_CATCH_SPECIFIC(w2085aaab7b1b3,java_lang_RuntimeException,8) + XMLVM_CATCH_SPECIFIC(w2085aaab7b1b3,java_lang_Exception,11) + XMLVM_CATCH_END(w2085aaab7b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w2085aaab7b1b3) + XMLVM_SOURCE_POSITION("AccessController.java", 290) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + XMLVM_SOURCE_POSITION("AccessController.java", 291) + java_lang_Thread* curThread_w2085aaab7b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w2085aaab7b1b8->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AccessController.java", 292) + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("AccessController.java", 293) + java_lang_Thread* curThread_w2085aaab7b1c14 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w2085aaab7b1c14->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AccessController.java", 294) + + + // Red class access removed: java.security.PrivilegedActionException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.security.PrivilegedActionException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r2.o) + //XMLVM_END_WRAPPER +} + +void java_security_AccessController___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_security_AccessController___CLINIT___] + XMLVM_ENTER_METHOD("java.security.AccessController", "", "?") + XMLVM_SOURCE_POSITION("AccessController.java", 31) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_security_AccessController.h b/tests/nbody-java/java_security_AccessController.h new file mode 100644 index 0000000000000..3f32a049abf91 --- /dev/null +++ b/tests/nbody-java/java_security_AccessController.h @@ -0,0 +1,75 @@ +#ifndef __JAVA_SECURITY_ACCESSCONTROLLER__ +#define __JAVA_SECURITY_ACCESSCONTROLLER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_security_AccessController 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Exception +#define XMLVM_FORWARD_DECL_java_lang_Exception +XMLVM_FORWARD_DECL(java_lang_Exception) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimeException +#define XMLVM_FORWARD_DECL_java_lang_RuntimeException +XMLVM_FORWARD_DECL(java_lang_RuntimeException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_Permission +#define XMLVM_FORWARD_DECL_java_security_Permission +XMLVM_FORWARD_DECL(java_security_Permission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_PrivilegedAction +#define XMLVM_FORWARD_DECL_java_security_PrivilegedAction +XMLVM_FORWARD_DECL(java_security_PrivilegedAction) +#endif +// Class declarations for java.security.AccessController +XMLVM_DEFINE_CLASS(java_security_AccessController, 6, XMLVM_ITABLE_SIZE_java_security_AccessController) + +extern JAVA_OBJECT __CLASS_java_security_AccessController; +extern JAVA_OBJECT __CLASS_java_security_AccessController_1ARRAY; +extern JAVA_OBJECT __CLASS_java_security_AccessController_2ARRAY; +extern JAVA_OBJECT __CLASS_java_security_AccessController_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_security_AccessController +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_security_AccessController \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_security_AccessController \ + } java_security_AccessController + +struct java_security_AccessController { + __TIB_DEFINITION_java_security_AccessController* tib; + struct { + __INSTANCE_FIELDS_java_security_AccessController; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +typedef struct java_security_AccessController java_security_AccessController; +#endif + +#define XMLVM_VTABLE_SIZE_java_security_AccessController 6 + +void __INIT_java_security_AccessController(); +void __INIT_IMPL_java_security_AccessController(); +void __DELETE_java_security_AccessController(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_security_AccessController(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_security_AccessController(); +JAVA_OBJECT __NEW_INSTANCE_java_security_AccessController(); +void java_security_AccessController___INIT___(JAVA_OBJECT me); +void java_security_AccessController_checkPermission___java_security_Permission(JAVA_OBJECT n1); +void java_security_AccessController_keepalive___java_security_AccessControlContext(JAVA_OBJECT n1); +JAVA_OBJECT java_security_AccessController_getContext__(); +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedAction(JAVA_OBJECT n1); +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedAction_java_security_AccessControlContext(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedExceptionAction(JAVA_OBJECT n1); +JAVA_OBJECT java_security_AccessController_doPrivileged___java_security_PrivilegedExceptionAction_java_security_AccessControlContext(JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_security_AccessController___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_security_BasicPermission.c b/tests/nbody-java/java_security_BasicPermission.c new file mode 100644 index 0000000000000..ba61a32fd0711 --- /dev/null +++ b/tests/nbody-java/java_security_BasicPermission.c @@ -0,0 +1,562 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Object.h" +#include "java_lang_RuntimePermission.h" +#include "java_lang_String.h" + +#include "java_security_BasicPermission.h" + +#define XMLVM_CURRENT_CLASS_NAME BasicPermission +#define XMLVM_CURRENT_PKG_CLASS_NAME java_security_BasicPermission + +__TIB_DEFINITION_java_security_BasicPermission __TIB_java_security_BasicPermission = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_security_BasicPermission, // classInitializer + "java.security.BasicPermission", // className + "java.security", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_security_Permission, // extends + sizeof(java_security_BasicPermission), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_security_BasicPermission; +JAVA_OBJECT __CLASS_java_security_BasicPermission_1ARRAY; +JAVA_OBJECT __CLASS_java_security_BasicPermission_2ARRAY; +JAVA_OBJECT __CLASS_java_security_BasicPermission_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_security_BasicPermission_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_security_BasicPermission() +{ + staticInitializerLock(&__TIB_java_security_BasicPermission); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_security_BasicPermission.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_security_BasicPermission.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_security_BasicPermission); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_security_BasicPermission.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_security_BasicPermission.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_security_BasicPermission.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.security.BasicPermission") + __INIT_IMPL_java_security_BasicPermission(); + } +} + +void __INIT_IMPL_java_security_BasicPermission() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_security_Permission) + __TIB_java_security_BasicPermission.newInstanceFunc = __NEW_INSTANCE_java_security_BasicPermission; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_security_BasicPermission.vtable, __TIB_java_security_Permission.vtable, sizeof(__TIB_java_security_Permission.vtable)); + // Initialize vtable for this class + __TIB_java_security_BasicPermission.vtable[1] = (VTABLE_PTR) &java_security_BasicPermission_equals___java_lang_Object; + __TIB_java_security_BasicPermission.vtable[4] = (VTABLE_PTR) &java_security_BasicPermission_hashCode__; + __TIB_java_security_BasicPermission.vtable[7] = (VTABLE_PTR) &java_security_BasicPermission_getActions__; + __TIB_java_security_BasicPermission.vtable[8] = (VTABLE_PTR) &java_security_BasicPermission_implies___java_security_Permission; + __TIB_java_security_BasicPermission.vtable[9] = (VTABLE_PTR) &java_security_BasicPermission_newPermissionCollection__; + // Initialize interface information + __TIB_java_security_BasicPermission.numImplementedInterfaces = 2; + __TIB_java_security_BasicPermission.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_security_BasicPermission.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_security_Guard) + + __TIB_java_security_BasicPermission.implementedInterfaces[0][1] = &__TIB_java_security_Guard; + // Initialize itable for this class + __TIB_java_security_BasicPermission.itableBegin = &__TIB_java_security_BasicPermission.itable[0]; + __TIB_java_security_BasicPermission.itable[XMLVM_ITABLE_IDX_java_security_Guard_checkGuard___java_lang_Object] = __TIB_java_security_BasicPermission.vtable[6]; + + _STATIC_java_security_BasicPermission_serialVersionUID = 6279438298436773498; + + __TIB_java_security_BasicPermission.declaredFields = &__field_reflection_data[0]; + __TIB_java_security_BasicPermission.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_security_BasicPermission.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_security_BasicPermission.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_security_BasicPermission.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_security_BasicPermission.methodDispatcherFunc = method_dispatcher; + __TIB_java_security_BasicPermission.declaredMethods = &__method_reflection_data[0]; + __TIB_java_security_BasicPermission.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_security_BasicPermission = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_security_BasicPermission); + __TIB_java_security_BasicPermission.clazz = __CLASS_java_security_BasicPermission; + __TIB_java_security_BasicPermission.baseType = JAVA_NULL; + __CLASS_java_security_BasicPermission_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_BasicPermission); + __CLASS_java_security_BasicPermission_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_BasicPermission_1ARRAY); + __CLASS_java_security_BasicPermission_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_BasicPermission_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_security_BasicPermission] + //XMLVM_END_WRAPPER + + __TIB_java_security_BasicPermission.classInitialized = 1; +} + +void __DELETE_java_security_BasicPermission(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_security_BasicPermission] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_security_BasicPermission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_security_Permission(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_security_BasicPermission] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_security_BasicPermission() +{ XMLVM_CLASS_INIT(java_security_BasicPermission) +java_security_BasicPermission* me = (java_security_BasicPermission*) XMLVM_MALLOC(sizeof(java_security_BasicPermission)); + me->tib = &__TIB_java_security_BasicPermission; + __INIT_INSTANCE_MEMBERS_java_security_BasicPermission(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_security_BasicPermission] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_security_BasicPermission() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_security_BasicPermission_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_security_BasicPermission) + return _STATIC_java_security_BasicPermission_serialVersionUID; +} + +void java_security_BasicPermission_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_security_BasicPermission) +_STATIC_java_security_BasicPermission_serialVersionUID = v; +} + +void java_security_BasicPermission___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("BasicPermission.java", 59) + XMLVM_CHECK_NPE(0) + java_security_Permission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 60) + XMLVM_CHECK_NPE(0) + java_security_BasicPermission_checkName___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 61) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_security_BasicPermission___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("BasicPermission.java", 77) + XMLVM_CHECK_NPE(0) + java_security_Permission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 78) + XMLVM_CHECK_NPE(0) + java_security_BasicPermission_checkName___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 79) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_security_BasicPermission_checkName___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_checkName___java_lang_String] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "checkName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("BasicPermission.java", 85) + if (_r3.o != JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("BasicPermission.java", 86) + _r0.o = __NEW_java_lang_NullPointerException(); + // "security.28" + _r1.o = xmlvm_create_java_string_from_pool(165); + + + // Red class access removed: org.apache.harmony.security.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label14:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 88) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + if (_r0.i != 0) goto label32; + XMLVM_SOURCE_POSITION("BasicPermission.java", 89) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "security.29" + _r1.o = xmlvm_create_java_string_from_pool(166); + + + // Red class access removed: org.apache.harmony.security.internal.nls.Messages::getString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label32:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 91) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_security_BasicPermission_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("BasicPermission.java", 109) + if (_r3.o != _r2.o) goto label4; + XMLVM_SOURCE_POSITION("BasicPermission.java", 110) + _r0.i = 1; + label3:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 116) + XMLVM_EXIT_METHOD() + return _r0.i; + label4:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 113) + if (_r3.o == JAVA_NULL) goto label31; + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[3])(_r3.o); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o); + if (_r0.o != _r1.o) goto label31; + XMLVM_SOURCE_POSITION("BasicPermission.java", 114) + XMLVM_CHECK_NPE(2) + _r0.o = java_security_Permission_getName__(_r2.o); + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.o = java_security_Permission_getName__(_r3.o); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + goto label3; + label31:; + _r0.i = 0; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_security_BasicPermission_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_hashCode__] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("BasicPermission.java", 130) + XMLVM_CHECK_NPE(1) + _r0.o = java_security_Permission_getName__(_r1.o); + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[4])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_BasicPermission_getActions__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_getActions__] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "getActions", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("BasicPermission.java", 141) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_security_BasicPermission_implies___java_security_Permission(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_implies___java_security_Permission] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "implies", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + // "exitVM.*" + _r4.o = xmlvm_create_java_string_from_pool(167); + // "exitVM" + _r3.o = xmlvm_create_java_string_from_pool(168); + XMLVM_SOURCE_POSITION("BasicPermission.java", 154) + if (_r7.o == JAVA_NULL) goto label56; + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(7) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[3])(_r7.o); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(6) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r6.o)->tib->vtable[3])(_r6.o); + if (_r0.o != _r1.o) goto label56; + XMLVM_SOURCE_POSITION("BasicPermission.java", 155) + XMLVM_CHECK_NPE(6) + _r0.o = java_security_Permission_getName__(_r6.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 156) + XMLVM_CHECK_NPE(7) + _r1.o = java_security_Permission_getName__(_r7.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 157) + XMLVM_CLASS_INIT(java_lang_RuntimePermission) + _r2.i = XMLVM_ISA(_r6.o, __CLASS_java_lang_RuntimePermission); + if (_r2.i == 0) goto label58; + XMLVM_SOURCE_POSITION("BasicPermission.java", 158) + // "exitVM" + _r2.o = xmlvm_create_java_string_from_pool(168); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[1])(_r1.o, _r3.o); + if (_r2.i == 0) goto label39; + XMLVM_SOURCE_POSITION("BasicPermission.java", 159) + // "exitVM.*" + _r1.o = xmlvm_create_java_string_from_pool(167); + _r1 = _r4; + label39:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 161) + // "exitVM" + _r2.o = xmlvm_create_java_string_from_pool(168); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[1])(_r0.o, _r3.o); + if (_r2.i == 0) goto label58; + XMLVM_SOURCE_POSITION("BasicPermission.java", 162) + // "exitVM.*" + _r0.o = xmlvm_create_java_string_from_pool(167); + _r0 = _r1; + _r1 = _r4; + label51:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 165) + _r0.i = java_security_BasicPermission_nameImplies___java_lang_String_java_lang_String(_r1.o, _r0.o); + label55:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 167) + XMLVM_EXIT_METHOD() + return _r0.i; + label56:; + _r0.i = 0; + goto label55; + label58:; + _r5 = _r1; + _r1 = _r0; + _r0 = _r5; + goto label51; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_security_BasicPermission_nameImplies___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_security_BasicPermission) + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_nameImplies___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "nameImplies", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = n1; + _r6.o = n2; + _r4.i = 0; + _r3.i = 1; + XMLVM_SOURCE_POSITION("BasicPermission.java", 176) + if (_r5.o != _r6.o) goto label6; + _r0 = _r3; + label5:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 177) + XMLVM_SOURCE_POSITION("BasicPermission.java", 196) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 179) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 180) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(6) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r6.o)->tib->vtable[8])(_r6.o); + if (_r0.i <= _r1.i) goto label18; + _r0 = _r4; + XMLVM_SOURCE_POSITION("BasicPermission.java", 181) + goto label5; + label18:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 183) + _r0.i = _r0.i + -1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r0.i); + _r2.i = 42; + if (_r1.i != _r2.i) goto label46; + XMLVM_SOURCE_POSITION("BasicPermission.java", 184) + if (_r0.i == 0) goto label40; + _r1.i = _r0.i - _r3.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r1.i); + _r2.i = 46; + if (_r1.i != _r2.i) goto label46; + label40:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 186) + _r0.i = _r0.i + -1; + label42:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 191) + if (_r0.i >= 0) goto label55; + _r0 = _r3; + goto label5; + label46:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 187) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(6) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r6.o)->tib->vtable[8])(_r6.o); + _r1.i = _r1.i - _r3.i; + if (_r0.i == _r1.i) goto label42; + _r0 = _r4; + XMLVM_SOURCE_POSITION("BasicPermission.java", 189) + goto label5; + label55:; + XMLVM_SOURCE_POSITION("BasicPermission.java", 192) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r0.i); + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(6) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r6.o)->tib->vtable[6])(_r6.o, _r0.i); + if (_r1.i == _r2.i) goto label67; + _r0 = _r4; + XMLVM_SOURCE_POSITION("BasicPermission.java", 193) + goto label5; + label67:; + _r0.i = _r0.i + -1; + goto label42; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_BasicPermission_newPermissionCollection__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_newPermissionCollection__] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "newPermissionCollection", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("BasicPermission.java", 214) + + + // Red class access removed: java.security.BasicPermissionCollection::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.security.BasicPermissionCollection:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_security_BasicPermission_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_security_BasicPermission_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.security.BasicPermission", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("BasicPermission.java", 222) + + + // Red class access removed: java.io.ObjectInputStream::defaultReadObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("BasicPermission.java", 223) + XMLVM_CHECK_NPE(1) + _r0.o = java_security_Permission_getName__(_r1.o); + XMLVM_CHECK_NPE(1) + java_security_BasicPermission_checkName___java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("BasicPermission.java", 224) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_security_BasicPermission.h b/tests/nbody-java/java_security_BasicPermission.h new file mode 100644 index 0000000000000..648421e24227c --- /dev/null +++ b/tests/nbody-java/java_security_BasicPermission.h @@ -0,0 +1,93 @@ +#ifndef __JAVA_SECURITY_BASICPERMISSION__ +#define __JAVA_SECURITY_BASICPERMISSION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_security_BasicPermission 1 +// Implemented interfaces: +#include "java_io_Serializable.h" +// Super Class: +#include "java_security_Permission.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_RuntimePermission +#define XMLVM_FORWARD_DECL_java_lang_RuntimePermission +XMLVM_FORWARD_DECL(java_lang_RuntimePermission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.security.BasicPermission +XMLVM_DEFINE_CLASS(java_security_BasicPermission, 10, XMLVM_ITABLE_SIZE_java_security_BasicPermission) + +extern JAVA_OBJECT __CLASS_java_security_BasicPermission; +extern JAVA_OBJECT __CLASS_java_security_BasicPermission_1ARRAY; +extern JAVA_OBJECT __CLASS_java_security_BasicPermission_2ARRAY; +extern JAVA_OBJECT __CLASS_java_security_BasicPermission_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_security_BasicPermission +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_security_BasicPermission \ + __INSTANCE_FIELDS_java_security_Permission; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_security_BasicPermission \ + } java_security_BasicPermission + +struct java_security_BasicPermission { + __TIB_DEFINITION_java_security_BasicPermission* tib; + struct { + __INSTANCE_FIELDS_java_security_BasicPermission; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_security_BasicPermission +#define XMLVM_FORWARD_DECL_java_security_BasicPermission +typedef struct java_security_BasicPermission java_security_BasicPermission; +#endif + +#define XMLVM_VTABLE_SIZE_java_security_BasicPermission 10 +#define XMLVM_VTABLE_IDX_java_security_BasicPermission_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_security_BasicPermission_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_security_BasicPermission_getActions__ 7 +#define XMLVM_VTABLE_IDX_java_security_BasicPermission_implies___java_security_Permission 8 +#define XMLVM_VTABLE_IDX_java_security_BasicPermission_newPermissionCollection__ 9 + +void __INIT_java_security_BasicPermission(); +void __INIT_IMPL_java_security_BasicPermission(); +void __DELETE_java_security_BasicPermission(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_security_BasicPermission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_security_BasicPermission(); +JAVA_OBJECT __NEW_INSTANCE_java_security_BasicPermission(); +JAVA_LONG java_security_BasicPermission_GET_serialVersionUID(); +void java_security_BasicPermission_PUT_serialVersionUID(JAVA_LONG v); +void java_security_BasicPermission___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_security_BasicPermission___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_security_BasicPermission_checkName___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 1 +JAVA_BOOLEAN java_security_BasicPermission_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_security_BasicPermission_hashCode__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_security_BasicPermission_getActions__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_BOOLEAN java_security_BasicPermission_implies___java_security_Permission(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_security_BasicPermission_nameImplies___java_lang_String_java_lang_String(JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 9 +JAVA_OBJECT java_security_BasicPermission_newPermissionCollection__(JAVA_OBJECT me); +void java_security_BasicPermission_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_security_Guard.c b/tests/nbody-java/java_security_Guard.c new file mode 100644 index 0000000000000..253c44f5ef397 --- /dev/null +++ b/tests/nbody-java/java_security_Guard.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_security_Guard.h" + +__TIB_DEFINITION_java_security_Guard __TIB_java_security_Guard = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_security_Guard, // classInitializer + "java.security.Guard", // className + "java.security", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_security_Guard; +JAVA_OBJECT __CLASS_java_security_Guard_1ARRAY; +JAVA_OBJECT __CLASS_java_security_Guard_2ARRAY; +JAVA_OBJECT __CLASS_java_security_Guard_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_security_Guard() +{ + staticInitializerLock(&__TIB_java_security_Guard); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_security_Guard.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_security_Guard.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_security_Guard); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_security_Guard.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_security_Guard.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_security_Guard.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.security.Guard") + __INIT_IMPL_java_security_Guard(); + } +} + +void __INIT_IMPL_java_security_Guard() +{ + __TIB_java_security_Guard.numInterfaces = 0; + __TIB_java_security_Guard.declaredFields = &__field_reflection_data[0]; + __TIB_java_security_Guard.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_security_Guard.methodDispatcherFunc = method_dispatcher; + __TIB_java_security_Guard.declaredMethods = &__method_reflection_data[0]; + __TIB_java_security_Guard.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_security_Guard = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_security_Guard); + __TIB_java_security_Guard.clazz = __CLASS_java_security_Guard; + __TIB_java_security_Guard.baseType = JAVA_NULL; + __CLASS_java_security_Guard_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_Guard); + __CLASS_java_security_Guard_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_Guard_1ARRAY); + __CLASS_java_security_Guard_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_Guard_2ARRAY); + + __TIB_java_security_Guard.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_security_Guard.h b/tests/nbody-java/java_security_Guard.h new file mode 100644 index 0000000000000..a5fc308d5e93e --- /dev/null +++ b/tests/nbody-java/java_security_Guard.h @@ -0,0 +1,28 @@ +#ifndef __JAVA_SECURITY_GUARD__ +#define __JAVA_SECURITY_GUARD__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_security_Guard_checkGuard___java_lang_Object 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_security_Guard, 0, 0) + +extern JAVA_OBJECT __CLASS_java_security_Guard; +extern JAVA_OBJECT __CLASS_java_security_Guard_1ARRAY; +extern JAVA_OBJECT __CLASS_java_security_Guard_2ARRAY; +extern JAVA_OBJECT __CLASS_java_security_Guard_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_security_Guard +#define XMLVM_FORWARD_DECL_java_security_Guard +typedef struct java_security_Guard java_security_Guard; +#endif + +void __INIT_java_security_Guard(); +void __INIT_IMPL_java_security_Guard(); + +#endif diff --git a/tests/nbody-java/java_security_Permission.c b/tests/nbody-java/java_security_Permission.c new file mode 100644 index 0000000000000..cf04c28f7d265 --- /dev/null +++ b/tests/nbody-java/java_security_Permission.c @@ -0,0 +1,325 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_SecurityManager.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" + +#include "java_security_Permission.h" + +#define XMLVM_CURRENT_CLASS_NAME Permission +#define XMLVM_CURRENT_PKG_CLASS_NAME java_security_Permission + +__TIB_DEFINITION_java_security_Permission __TIB_java_security_Permission = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_security_Permission, // classInitializer + "java.security.Permission", // className + "java.security", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_security_Permission), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_security_Permission; +JAVA_OBJECT __CLASS_java_security_Permission_1ARRAY; +JAVA_OBJECT __CLASS_java_security_Permission_2ARRAY; +JAVA_OBJECT __CLASS_java_security_Permission_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_security_Permission_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_security_Permission() +{ + staticInitializerLock(&__TIB_java_security_Permission); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_security_Permission.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_security_Permission.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_security_Permission); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_security_Permission.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_security_Permission.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_security_Permission.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.security.Permission") + __INIT_IMPL_java_security_Permission(); + } +} + +void __INIT_IMPL_java_security_Permission() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_security_Permission.newInstanceFunc = __NEW_INSTANCE_java_security_Permission; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_security_Permission.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_security_Permission.vtable[6] = (VTABLE_PTR) &java_security_Permission_checkGuard___java_lang_Object; + __TIB_java_security_Permission.vtable[9] = (VTABLE_PTR) &java_security_Permission_newPermissionCollection__; + __TIB_java_security_Permission.vtable[5] = (VTABLE_PTR) &java_security_Permission_toString__; + // Initialize interface information + __TIB_java_security_Permission.numImplementedInterfaces = 2; + __TIB_java_security_Permission.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_security_Permission.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_security_Guard) + + __TIB_java_security_Permission.implementedInterfaces[0][1] = &__TIB_java_security_Guard; + // Initialize itable for this class + __TIB_java_security_Permission.itableBegin = &__TIB_java_security_Permission.itable[0]; + __TIB_java_security_Permission.itable[XMLVM_ITABLE_IDX_java_security_Guard_checkGuard___java_lang_Object] = __TIB_java_security_Permission.vtable[6]; + + _STATIC_java_security_Permission_serialVersionUID = -5636570222231596674; + + __TIB_java_security_Permission.declaredFields = &__field_reflection_data[0]; + __TIB_java_security_Permission.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_security_Permission.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_security_Permission.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_security_Permission.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_security_Permission.methodDispatcherFunc = method_dispatcher; + __TIB_java_security_Permission.declaredMethods = &__method_reflection_data[0]; + __TIB_java_security_Permission.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_security_Permission = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_security_Permission); + __TIB_java_security_Permission.clazz = __CLASS_java_security_Permission; + __TIB_java_security_Permission.baseType = JAVA_NULL; + __CLASS_java_security_Permission_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_Permission); + __CLASS_java_security_Permission_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_Permission_1ARRAY); + __CLASS_java_security_Permission_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_Permission_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_security_Permission] + //XMLVM_END_WRAPPER + + __TIB_java_security_Permission.classInitialized = 1; +} + +void __DELETE_java_security_Permission(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_security_Permission] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_security_Permission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_security_Permission*) me)->fields.java_security_Permission.name_ = (java_lang_String*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_security_Permission] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_security_Permission() +{ XMLVM_CLASS_INIT(java_security_Permission) +java_security_Permission* me = (java_security_Permission*) XMLVM_MALLOC(sizeof(java_security_Permission)); + me->tib = &__TIB_java_security_Permission; + __INIT_INSTANCE_MEMBERS_java_security_Permission(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_security_Permission] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_security_Permission() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_security_Permission_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_security_Permission) + return _STATIC_java_security_Permission_serialVersionUID; +} + +void java_security_Permission_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_security_Permission) +_STATIC_java_security_Permission_serialVersionUID = v; +} + +void java_security_Permission___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_security_Permission___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.security.Permission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Permission.java", 100) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Permission.java", 101) + XMLVM_CHECK_NPE(0) + ((java_security_Permission*) _r0.o)->fields.java_security_Permission.name_ = _r1.o; + XMLVM_SOURCE_POSITION("Permission.java", 102) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_Permission_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_security_Permission_getName__] + XMLVM_ENTER_METHOD("java.security.Permission", "getName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Permission.java", 110) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_security_Permission*) _r1.o)->fields.java_security_Permission.name_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_security_Permission_checkGuard___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_security_Permission_checkGuard___java_lang_Object] + XMLVM_ENTER_METHOD("java.security.Permission", "checkGuard", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Permission.java", 127) + _r0.o = java_lang_System_getSecurityManager__(); + XMLVM_SOURCE_POSITION("Permission.java", 128) + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("Permission.java", 129) + XMLVM_CHECK_NPE(0) + java_lang_SecurityManager_checkPermission___java_security_Permission(_r0.o, _r1.o); + label9:; + XMLVM_SOURCE_POSITION("Permission.java", 131) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_Permission_newPermissionCollection__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_security_Permission_newPermissionCollection__] + XMLVM_ENTER_METHOD("java.security.Permission", "newPermissionCollection", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Permission.java", 145) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_security_Permission_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_security_Permission_toString__] + XMLVM_ENTER_METHOD("java.security.Permission", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + // " " + _r3.o = xmlvm_create_java_string_from_pool(57); + XMLVM_SOURCE_POSITION("Permission.java", 156) + //java_security_Permission_getActions__[7] + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_security_Permission*) _r4.o)->tib->vtable[7])(_r4.o); + XMLVM_SOURCE_POSITION("Permission.java", 157) + if (_r0.o == JAVA_NULL) goto label14; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + if (_r0.i != 0) goto label64; + label14:; + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + label16:; + XMLVM_SOURCE_POSITION("Permission.java", 159) + _r1.o = __NEW_java_lang_StringBuilder(); + // "(" + _r2.o = xmlvm_create_java_string_from_pool(85); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____java_lang_String(_r1.o, _r2.o); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[3])(_r4.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_Class_getName__(_r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + // " " + _r2.o = xmlvm_create_java_string_from_pool(57); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r3.o); + XMLVM_CHECK_NPE(4) + _r2.o = java_security_Permission_getName__(_r4.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r0.o); + // ")" + _r1.o = xmlvm_create_java_string_from_pool(23); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label64:; + _r0.o = __NEW_java_lang_StringBuilder(); + // " " + _r1.o = xmlvm_create_java_string_from_pool(57); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r3.o); + XMLVM_SOURCE_POSITION("Permission.java", 158) + //java_security_Permission_getActions__[7] + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_security_Permission*) _r4.o)->tib->vtable[7])(_r4.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label16; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_security_Permission.h b/tests/nbody-java/java_security_Permission.h new file mode 100644 index 0000000000000..69c285f982612 --- /dev/null +++ b/tests/nbody-java/java_security_Permission.h @@ -0,0 +1,98 @@ +#ifndef __JAVA_SECURITY_PERMISSION__ +#define __JAVA_SECURITY_PERMISSION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_security_Permission 1 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_security_Guard.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_SecurityManager +#define XMLVM_FORWARD_DECL_java_lang_SecurityManager +XMLVM_FORWARD_DECL(java_lang_SecurityManager) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +// Class declarations for java.security.Permission +XMLVM_DEFINE_CLASS(java_security_Permission, 10, XMLVM_ITABLE_SIZE_java_security_Permission) + +extern JAVA_OBJECT __CLASS_java_security_Permission; +extern JAVA_OBJECT __CLASS_java_security_Permission_1ARRAY; +extern JAVA_OBJECT __CLASS_java_security_Permission_2ARRAY; +extern JAVA_OBJECT __CLASS_java_security_Permission_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_security_Permission +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_security_Permission \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT name_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_security_Permission \ + } java_security_Permission + +struct java_security_Permission { + __TIB_DEFINITION_java_security_Permission* tib; + struct { + __INSTANCE_FIELDS_java_security_Permission; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_security_Permission +#define XMLVM_FORWARD_DECL_java_security_Permission +typedef struct java_security_Permission java_security_Permission; +#endif + +#define XMLVM_VTABLE_SIZE_java_security_Permission 10 +#define XMLVM_VTABLE_IDX_java_security_Permission_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_security_Permission_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_security_Permission_getActions__ 7 +#define XMLVM_VTABLE_IDX_java_security_Permission_implies___java_security_Permission 8 +#define XMLVM_VTABLE_IDX_java_security_Permission_checkGuard___java_lang_Object 6 +#define XMLVM_VTABLE_IDX_java_security_Permission_newPermissionCollection__ 9 +#define XMLVM_VTABLE_IDX_java_security_Permission_toString__ 5 + +void __INIT_java_security_Permission(); +void __INIT_IMPL_java_security_Permission(); +void __DELETE_java_security_Permission(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_security_Permission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_security_Permission(); +JAVA_OBJECT __NEW_INSTANCE_java_security_Permission(); +JAVA_LONG java_security_Permission_GET_serialVersionUID(); +void java_security_Permission_PUT_serialVersionUID(JAVA_LONG v); +// Vtable index: 1 +JAVA_BOOLEAN java_security_Permission_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_security_Permission_hashCode__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_security_Permission_getActions__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_BOOLEAN java_security_Permission_implies___java_security_Permission(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_security_Permission___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_security_Permission_getName__(JAVA_OBJECT me); +// Vtable index: 6 +void java_security_Permission_checkGuard___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_security_Permission_newPermissionCollection__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_security_Permission_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_security_PrivilegedAction.c b/tests/nbody-java/java_security_PrivilegedAction.c new file mode 100644 index 0000000000000..7c82bfa399889 --- /dev/null +++ b/tests/nbody-java/java_security_PrivilegedAction.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_security_PrivilegedAction.h" + +__TIB_DEFINITION_java_security_PrivilegedAction __TIB_java_security_PrivilegedAction = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_security_PrivilegedAction, // classInitializer + "java.security.PrivilegedAction", // className + "java.security", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_security_PrivilegedAction; +JAVA_OBJECT __CLASS_java_security_PrivilegedAction_1ARRAY; +JAVA_OBJECT __CLASS_java_security_PrivilegedAction_2ARRAY; +JAVA_OBJECT __CLASS_java_security_PrivilegedAction_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_security_PrivilegedAction() +{ + staticInitializerLock(&__TIB_java_security_PrivilegedAction); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_security_PrivilegedAction.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_security_PrivilegedAction.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_security_PrivilegedAction); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_security_PrivilegedAction.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_security_PrivilegedAction.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_security_PrivilegedAction.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.security.PrivilegedAction") + __INIT_IMPL_java_security_PrivilegedAction(); + } +} + +void __INIT_IMPL_java_security_PrivilegedAction() +{ + __TIB_java_security_PrivilegedAction.numInterfaces = 0; + __TIB_java_security_PrivilegedAction.declaredFields = &__field_reflection_data[0]; + __TIB_java_security_PrivilegedAction.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_security_PrivilegedAction.methodDispatcherFunc = method_dispatcher; + __TIB_java_security_PrivilegedAction.declaredMethods = &__method_reflection_data[0]; + __TIB_java_security_PrivilegedAction.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_security_PrivilegedAction = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_security_PrivilegedAction); + __TIB_java_security_PrivilegedAction.clazz = __CLASS_java_security_PrivilegedAction; + __TIB_java_security_PrivilegedAction.baseType = JAVA_NULL; + __CLASS_java_security_PrivilegedAction_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_PrivilegedAction); + __CLASS_java_security_PrivilegedAction_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_PrivilegedAction_1ARRAY); + __CLASS_java_security_PrivilegedAction_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_security_PrivilegedAction_2ARRAY); + + __TIB_java_security_PrivilegedAction.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_security_PrivilegedAction.h b/tests/nbody-java/java_security_PrivilegedAction.h new file mode 100644 index 0000000000000..cb867e29734d6 --- /dev/null +++ b/tests/nbody-java/java_security_PrivilegedAction.h @@ -0,0 +1,28 @@ +#ifndef __JAVA_SECURITY_PRIVILEGEDACTION__ +#define __JAVA_SECURITY_PRIVILEGEDACTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_security_PrivilegedAction_run__ 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_security_PrivilegedAction, 0, 0) + +extern JAVA_OBJECT __CLASS_java_security_PrivilegedAction; +extern JAVA_OBJECT __CLASS_java_security_PrivilegedAction_1ARRAY; +extern JAVA_OBJECT __CLASS_java_security_PrivilegedAction_2ARRAY; +extern JAVA_OBJECT __CLASS_java_security_PrivilegedAction_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_security_PrivilegedAction +#define XMLVM_FORWARD_DECL_java_security_PrivilegedAction +typedef struct java_security_PrivilegedAction java_security_PrivilegedAction; +#endif + +void __INIT_java_security_PrivilegedAction(); +void __INIT_IMPL_java_security_PrivilegedAction(); + +#endif diff --git a/tests/nbody-java/java_util_AbstractCollection.c b/tests/nbody-java/java_util_AbstractCollection.c new file mode 100644 index 0000000000000..fe79865084313 --- /dev/null +++ b/tests/nbody-java/java_util_AbstractCollection.c @@ -0,0 +1,747 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_reflect_Array.h" +#include "java_util_Iterator.h" + +#include "java_util_AbstractCollection.h" + +#define XMLVM_CURRENT_CLASS_NAME AbstractCollection +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_AbstractCollection + +__TIB_DEFINITION_java_util_AbstractCollection __TIB_java_util_AbstractCollection = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_AbstractCollection, // classInitializer + "java.util.AbstractCollection", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Collection;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_AbstractCollection), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_AbstractCollection; +JAVA_OBJECT __CLASS_java_util_AbstractCollection_1ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractCollection_2ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractCollection_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_AbstractCollection() +{ + staticInitializerLock(&__TIB_java_util_AbstractCollection); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_AbstractCollection.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_AbstractCollection.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_AbstractCollection); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_AbstractCollection.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_AbstractCollection.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_AbstractCollection.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.AbstractCollection") + __INIT_IMPL_java_util_AbstractCollection(); + } +} + +void __INIT_IMPL_java_util_AbstractCollection() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_AbstractCollection.newInstanceFunc = __NEW_INSTANCE_java_util_AbstractCollection; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_AbstractCollection.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_AbstractCollection.vtable[7] = (VTABLE_PTR) &java_util_AbstractCollection_add___java_lang_Object; + __TIB_java_util_AbstractCollection.vtable[6] = (VTABLE_PTR) &java_util_AbstractCollection_addAll___java_util_Collection; + __TIB_java_util_AbstractCollection.vtable[8] = (VTABLE_PTR) &java_util_AbstractCollection_clear__; + __TIB_java_util_AbstractCollection.vtable[10] = (VTABLE_PTR) &java_util_AbstractCollection_contains___java_lang_Object; + __TIB_java_util_AbstractCollection.vtable[9] = (VTABLE_PTR) &java_util_AbstractCollection_containsAll___java_util_Collection; + __TIB_java_util_AbstractCollection.vtable[11] = (VTABLE_PTR) &java_util_AbstractCollection_isEmpty__; + __TIB_java_util_AbstractCollection.vtable[14] = (VTABLE_PTR) &java_util_AbstractCollection_remove___java_lang_Object; + __TIB_java_util_AbstractCollection.vtable[13] = (VTABLE_PTR) &java_util_AbstractCollection_removeAll___java_util_Collection; + __TIB_java_util_AbstractCollection.vtable[15] = (VTABLE_PTR) &java_util_AbstractCollection_retainAll___java_util_Collection; + __TIB_java_util_AbstractCollection.vtable[17] = (VTABLE_PTR) &java_util_AbstractCollection_toArray__; + __TIB_java_util_AbstractCollection.vtable[18] = (VTABLE_PTR) &java_util_AbstractCollection_toArray___java_lang_Object_1ARRAY; + __TIB_java_util_AbstractCollection.vtable[5] = (VTABLE_PTR) &java_util_AbstractCollection_toString__; + // Initialize interface information + __TIB_java_util_AbstractCollection.numImplementedInterfaces = 2; + __TIB_java_util_AbstractCollection.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_AbstractCollection.implementedInterfaces[0][0] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_AbstractCollection.implementedInterfaces[0][1] = &__TIB_java_util_Collection; + // Initialize itable for this class + __TIB_java_util_AbstractCollection.itableBegin = &__TIB_java_util_AbstractCollection.itable[0]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_AbstractCollection.vtable[12]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_AbstractCollection.vtable[6]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_AbstractCollection.vtable[7]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_AbstractCollection.vtable[8]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_AbstractCollection.vtable[9]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_AbstractCollection.vtable[10]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_AbstractCollection.vtable[1]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_AbstractCollection.vtable[4]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_AbstractCollection.vtable[11]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_AbstractCollection.vtable[12]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_AbstractCollection.vtable[13]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_AbstractCollection.vtable[14]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_AbstractCollection.vtable[15]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_AbstractCollection.vtable[16]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_AbstractCollection.vtable[17]; + __TIB_java_util_AbstractCollection.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractCollection.vtable[18]; + + + __TIB_java_util_AbstractCollection.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_AbstractCollection.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_AbstractCollection.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_AbstractCollection.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_AbstractCollection.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_AbstractCollection.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_AbstractCollection.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_AbstractCollection.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_AbstractCollection = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_AbstractCollection); + __TIB_java_util_AbstractCollection.clazz = __CLASS_java_util_AbstractCollection; + __TIB_java_util_AbstractCollection.baseType = JAVA_NULL; + __CLASS_java_util_AbstractCollection_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractCollection); + __CLASS_java_util_AbstractCollection_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractCollection_1ARRAY); + __CLASS_java_util_AbstractCollection_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractCollection_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_AbstractCollection] + //XMLVM_END_WRAPPER + + __TIB_java_util_AbstractCollection.classInitialized = 1; +} + +void __DELETE_java_util_AbstractCollection(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_AbstractCollection] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_AbstractCollection(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_AbstractCollection] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_AbstractCollection() +{ XMLVM_CLASS_INIT(java_util_AbstractCollection) +java_util_AbstractCollection* me = (java_util_AbstractCollection*) XMLVM_MALLOC(sizeof(java_util_AbstractCollection)); + me->tib = &__TIB_java_util_AbstractCollection; + __INIT_INSTANCE_MEMBERS_java_util_AbstractCollection(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_AbstractCollection] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractCollection() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_AbstractCollection(); + java_util_AbstractCollection___INIT___(me); + return me; +} + +void java_util_AbstractCollection___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection___INIT___] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 37) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 38) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_add___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 41) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_addAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_addAll___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 74) + _r0.i = 0; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 75) + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r4.o); + label5:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 76) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i != 0) goto label12; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 81) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 77) + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + //java_util_AbstractCollection_add___java_lang_Object[7] + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[7])(_r3.o, _r2.o); + if (_r2.i == 0) goto label5; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 78) + _r0.i = 1; + goto label5; + //XMLVM_END_WRAPPER +} + +void java_util_AbstractCollection_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_clear__] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 101) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r2.o)->tib->vtable[12])(_r2.o); + label4:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 102) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label11; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 106) + XMLVM_EXIT_METHOD() + return; + label11:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 103) + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 104) + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_contains___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 128) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[12])(_r3.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 129) + if (_r4.o == JAVA_NULL) goto label35; + label7:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 130) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label15; + label13:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 142) + _r0.i = 0; + label14:; + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 131) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i == 0) goto label7; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 132) + goto label14; + label27:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 137) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + if (_r1.o != JAVA_NULL) goto label35; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 138) + goto label14; + label35:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 136) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label27; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_containsAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_containsAll___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "containsAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 166) + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r3.o); + label4:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 167) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label12; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 172) + _r0.i = 1; + label11:; + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 168) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + //java_util_AbstractCollection_contains___java_lang_Object[10] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_AbstractCollection*) _r2.o)->tib->vtable[10])(_r2.o, _r1.o); + if (_r1.i != 0) goto label4; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 169) + _r0.i = 0; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_isEmpty__] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "isEmpty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 185) + //java_util_AbstractCollection_size__[16] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r1.o)->tib->vtable[16])(_r1.o); + if (_r0.i != 0) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 226) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[12])(_r3.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 227) + if (_r4.o == JAVA_NULL) goto label41; + label7:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 228) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label15; + label13:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 242) + _r0.i = 0; + label14:; + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 229) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i == 0) goto label7; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 230) + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o); + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 231) + goto label14; + label30:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 236) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + if (_r1.o != JAVA_NULL) goto label41; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 237) + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o); + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 238) + goto label14; + label41:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 235) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label30; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_removeAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_removeAll___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "removeAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 275) + _r0.i = 0; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 276) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[12])(_r3.o); + label5:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 277) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i != 0) goto label12; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 283) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 278) + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + XMLVM_CHECK_NPE(4) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object])(_r4.o, _r2.o); + if (_r2.i == 0) goto label5; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 279) + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r1.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 280) + _r0.i = 1; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractCollection_retainAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_retainAll___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "retainAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 316) + _r0.i = 0; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 317) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[12])(_r3.o); + label5:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 318) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i != 0) goto label12; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 324) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 319) + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + XMLVM_CHECK_NPE(4) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object])(_r4.o, _r2.o); + if (_r2.i != 0) goto label5; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 320) + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r1.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 321) + _r0.i = 1; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractCollection_toArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_toArray__] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "toArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 340) + //java_util_AbstractCollection_size__[16] + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r6.o)->tib->vtable[16])(_r6.o); + _r1.i = 0; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 341) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r6.o)->tib->vtable[12])(_r6.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 342) + XMLVM_CLASS_INIT(java_lang_Object) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + label11:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 343) + if (_r1.i < _r0.i) goto label14; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 346) + XMLVM_EXIT_METHOD() + return _r3.o; + label14:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 344) + _r4.i = _r1.i + 1; + XMLVM_CHECK_NPE(2) + _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.o; + _r1 = _r4; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractCollection_toArray___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_toArray___java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "toArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 351) + //java_util_AbstractCollection_size__[16] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r4.o)->tib->vtable[16])(_r4.o); + _r1.i = 0; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 352) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r0.i <= _r2.i) goto label51; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 353) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[3])(_r5.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_Class_getComponentType__(_r2.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 354) + _r0.o = java_lang_reflect_Array_newInstance___java_lang_Class_int(_r2.o, _r0.i); + _r0.o = _r0.o; + label22:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 356) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r4.o)->tib->vtable[12])(_r4.o); + label26:; + XMLVM_CHECK_NPE(2) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r2.o); + if (_r3.i != 0) goto label39; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 359) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r1.i >= _r2.i) goto label38; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 360) + _r2.o = JAVA_NULL; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + label38:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 362) + XMLVM_EXIT_METHOD() + return _r0.o; + label39:; + XMLVM_CHECK_NPE(2) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + _r4.o = _r4.o; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 357) + _r3.i = _r1.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.o; + _r1 = _r3; + goto label26; + label51:; + _r0 = _r5; + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractCollection_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractCollection_toString__] + XMLVM_ENTER_METHOD("java.util.AbstractCollection", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 374) + //java_util_AbstractCollection_isEmpty__[11] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[11])(_r3.o); + if (_r0.i == 0) goto label9; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 375) + // "[]" + _r0.o = xmlvm_create_java_string_from_pool(95); + label8:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 393) + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 378) + _r0.o = __NEW_java_lang_StringBuilder(); + //java_util_AbstractCollection_size__[16] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[16])(_r3.o); + _r1.i = _r1.i * 16; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 379) + _r1.i = 91; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 380) + //java_util_AbstractCollection_iterator__[12] + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractCollection*) _r3.o)->tib->vtable[12])(_r3.o); + label29:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 381) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i != 0) goto label45; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 392) + _r1.i = 93; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label8; + label45:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 382) + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + XMLVM_SOURCE_POSITION("AbstractCollection.java", 383) + if (_r2.o == _r3.o) goto label66; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 384) + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r2.o); + label54:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 388) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i == 0) goto label29; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 389) + // ", " + _r2.o = xmlvm_create_java_string_from_pool(7); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + goto label29; + label66:; + XMLVM_SOURCE_POSITION("AbstractCollection.java", 386) + // "(this Collection)" + _r2.o = xmlvm_create_java_string_from_pool(96); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + goto label54; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_AbstractCollection.h b/tests/nbody-java/java_util_AbstractCollection.h new file mode 100644 index 0000000000000..b56277d73e06e --- /dev/null +++ b/tests/nbody-java/java_util_AbstractCollection.h @@ -0,0 +1,114 @@ +#ifndef __JAVA_UTIL_ABSTRACTCOLLECTION__ +#define __JAVA_UTIL_ABSTRACTCOLLECTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_AbstractCollection 16 +// Implemented interfaces: +#include "java_util_Collection.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Array +#define XMLVM_FORWARD_DECL_java_lang_reflect_Array +XMLVM_FORWARD_DECL(java_lang_reflect_Array) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +// Class declarations for java.util.AbstractCollection +XMLVM_DEFINE_CLASS(java_util_AbstractCollection, 19, XMLVM_ITABLE_SIZE_java_util_AbstractCollection) + +extern JAVA_OBJECT __CLASS_java_util_AbstractCollection; +extern JAVA_OBJECT __CLASS_java_util_AbstractCollection_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractCollection_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractCollection_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractCollection +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_AbstractCollection \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractCollection \ + } java_util_AbstractCollection + +struct java_util_AbstractCollection { + __TIB_DEFINITION_java_util_AbstractCollection* tib; + struct { + __INSTANCE_FIELDS_java_util_AbstractCollection; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_AbstractCollection +#define XMLVM_FORWARD_DECL_java_util_AbstractCollection +typedef struct java_util_AbstractCollection java_util_AbstractCollection; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_AbstractCollection 19 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_add___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_addAll___java_util_Collection 6 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_clear__ 8 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_contains___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_containsAll___java_util_Collection 9 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_isEmpty__ 11 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_iterator__ 12 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_remove___java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_removeAll___java_util_Collection 13 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_retainAll___java_util_Collection 15 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_toArray__ 17 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_toArray___java_lang_Object_1ARRAY 18 +#define XMLVM_VTABLE_IDX_java_util_AbstractCollection_toString__ 5 + +void __INIT_java_util_AbstractCollection(); +void __INIT_IMPL_java_util_AbstractCollection(); +void __DELETE_java_util_AbstractCollection(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_AbstractCollection(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_AbstractCollection(); +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractCollection(); +void java_util_AbstractCollection___INIT___(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_util_AbstractCollection_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_BOOLEAN java_util_AbstractCollection_addAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +void java_util_AbstractCollection_clear__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_util_AbstractCollection_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_BOOLEAN java_util_AbstractCollection_containsAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 11 +JAVA_BOOLEAN java_util_AbstractCollection_isEmpty__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_util_AbstractCollection_iterator__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_BOOLEAN java_util_AbstractCollection_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 13 +JAVA_BOOLEAN java_util_AbstractCollection_removeAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 15 +JAVA_BOOLEAN java_util_AbstractCollection_retainAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_AbstractCollection_size__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_AbstractCollection_toArray__(JAVA_OBJECT me); +// Vtable index: 18 +JAVA_OBJECT java_util_AbstractCollection_toArray___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT java_util_AbstractCollection_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_AbstractList.c b/tests/nbody-java/java_util_AbstractList.c new file mode 100644 index 0000000000000..8100b513a7730 --- /dev/null +++ b/tests/nbody-java/java_util_AbstractList.c @@ -0,0 +1,825 @@ +#include "xmlvm.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_util_Collection.h" +#include "java_util_Iterator.h" +#include "java_util_RandomAccess.h" + +#include "java_util_AbstractList.h" + +#define XMLVM_CURRENT_CLASS_NAME AbstractList +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_AbstractList + +__TIB_DEFINITION_java_util_AbstractList __TIB_java_util_AbstractList = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_AbstractList, // classInitializer + "java.util.AbstractList", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractCollection;Ljava/util/List;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractCollection, // extends + sizeof(java_util_AbstractList), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_AbstractList; +JAVA_OBJECT __CLASS_java_util_AbstractList_1ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractList_2ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractList_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_AbstractList() +{ + staticInitializerLock(&__TIB_java_util_AbstractList); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_AbstractList.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_AbstractList.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_AbstractList); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_AbstractList.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_AbstractList.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_AbstractList.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.AbstractList") + __INIT_IMPL_java_util_AbstractList(); + } +} + +void __INIT_IMPL_java_util_AbstractList() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractCollection) + __TIB_java_util_AbstractList.newInstanceFunc = __NEW_INSTANCE_java_util_AbstractList; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_AbstractList.vtable, __TIB_java_util_AbstractCollection.vtable, sizeof(__TIB_java_util_AbstractCollection.vtable)); + // Initialize vtable for this class + __TIB_java_util_AbstractList.vtable[20] = (VTABLE_PTR) &java_util_AbstractList_add___int_java_lang_Object; + __TIB_java_util_AbstractList.vtable[7] = (VTABLE_PTR) &java_util_AbstractList_add___java_lang_Object; + __TIB_java_util_AbstractList.vtable[19] = (VTABLE_PTR) &java_util_AbstractList_addAll___int_java_util_Collection; + __TIB_java_util_AbstractList.vtable[8] = (VTABLE_PTR) &java_util_AbstractList_clear__; + __TIB_java_util_AbstractList.vtable[1] = (VTABLE_PTR) &java_util_AbstractList_equals___java_lang_Object; + __TIB_java_util_AbstractList.vtable[4] = (VTABLE_PTR) &java_util_AbstractList_hashCode__; + __TIB_java_util_AbstractList.vtable[22] = (VTABLE_PTR) &java_util_AbstractList_indexOf___java_lang_Object; + __TIB_java_util_AbstractList.vtable[12] = (VTABLE_PTR) &java_util_AbstractList_iterator__; + __TIB_java_util_AbstractList.vtable[23] = (VTABLE_PTR) &java_util_AbstractList_lastIndexOf___java_lang_Object; + __TIB_java_util_AbstractList.vtable[24] = (VTABLE_PTR) &java_util_AbstractList_listIterator__; + __TIB_java_util_AbstractList.vtable[25] = (VTABLE_PTR) &java_util_AbstractList_listIterator___int; + __TIB_java_util_AbstractList.vtable[27] = (VTABLE_PTR) &java_util_AbstractList_remove___int; + __TIB_java_util_AbstractList.vtable[26] = (VTABLE_PTR) &java_util_AbstractList_removeRange___int_int; + __TIB_java_util_AbstractList.vtable[28] = (VTABLE_PTR) &java_util_AbstractList_set___int_java_lang_Object; + __TIB_java_util_AbstractList.vtable[29] = (VTABLE_PTR) &java_util_AbstractList_subList___int_int; + // Initialize interface information + __TIB_java_util_AbstractList.numImplementedInterfaces = 3; + __TIB_java_util_AbstractList.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_AbstractList.implementedInterfaces[0][0] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_AbstractList.implementedInterfaces[0][1] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_List) + + __TIB_java_util_AbstractList.implementedInterfaces[0][2] = &__TIB_java_util_List; + // Initialize itable for this class + __TIB_java_util_AbstractList.itableBegin = &__TIB_java_util_AbstractList.itable[0]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_AbstractList.vtable[12]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[6]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_AbstractList.vtable[7]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_AbstractList.vtable[8]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[9]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_AbstractList.vtable[10]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_AbstractList.vtable[1]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_AbstractList.vtable[4]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_AbstractList.vtable[11]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_AbstractList.vtable[12]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[13]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_AbstractList.vtable[14]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[15]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_AbstractList.vtable[16]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_AbstractList.vtable[17]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractList.vtable[18]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___int_java_util_Collection] = __TIB_java_util_AbstractList.vtable[19]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[6]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_add___int_java_lang_Object] = __TIB_java_util_AbstractList.vtable[20]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object] = __TIB_java_util_AbstractList.vtable[7]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_clear__] = __TIB_java_util_AbstractList.vtable[8]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_containsAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[9]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_contains___java_lang_Object] = __TIB_java_util_AbstractList.vtable[10]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_equals___java_lang_Object] = __TIB_java_util_AbstractList.vtable[1]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_get___int] = __TIB_java_util_AbstractList.vtable[21]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_hashCode__] = __TIB_java_util_AbstractList.vtable[4]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object] = __TIB_java_util_AbstractList.vtable[22]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_isEmpty__] = __TIB_java_util_AbstractList.vtable[11]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_iterator__] = __TIB_java_util_AbstractList.vtable[12]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object] = __TIB_java_util_AbstractList.vtable[23]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator__] = __TIB_java_util_AbstractList.vtable[24]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator___int] = __TIB_java_util_AbstractList.vtable[25]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_removeAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[13]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___int] = __TIB_java_util_AbstractList.vtable[27]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___java_lang_Object] = __TIB_java_util_AbstractList.vtable[14]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_retainAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[15]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object] = __TIB_java_util_AbstractList.vtable[28]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_size__] = __TIB_java_util_AbstractList.vtable[16]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_subList___int_int] = __TIB_java_util_AbstractList.vtable[29]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray__] = __TIB_java_util_AbstractList.vtable[17]; + __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractList.vtable[18]; + + + __TIB_java_util_AbstractList.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_AbstractList.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_AbstractList.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_AbstractList.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_AbstractList.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_AbstractList.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_AbstractList.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_AbstractList.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_AbstractList = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_AbstractList); + __TIB_java_util_AbstractList.clazz = __CLASS_java_util_AbstractList; + __TIB_java_util_AbstractList.baseType = JAVA_NULL; + __CLASS_java_util_AbstractList_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractList); + __CLASS_java_util_AbstractList_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractList_1ARRAY); + __CLASS_java_util_AbstractList_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractList_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_AbstractList] + //XMLVM_END_WRAPPER + + __TIB_java_util_AbstractList.classInitialized = 1; +} + +void __DELETE_java_util_AbstractList(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_AbstractList] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_AbstractList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractCollection(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_AbstractList*) me)->fields.java_util_AbstractList.modCount_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_AbstractList] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_AbstractList() +{ XMLVM_CLASS_INIT(java_util_AbstractList) +java_util_AbstractList* me = (java_util_AbstractList*) XMLVM_MALLOC(sizeof(java_util_AbstractList)); + me->tib = &__TIB_java_util_AbstractList; + __INIT_INSTANCE_MEMBERS_java_util_AbstractList(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_AbstractList] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractList() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_AbstractList(); + java_util_AbstractList___INIT___(me); + return me; +} + +void java_util_AbstractList___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList___INIT___] + XMLVM_ENTER_METHOD("java.util.AbstractList", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("AbstractList.java", 375) + XMLVM_CHECK_NPE(0) + java_util_AbstractCollection___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("AbstractList.java", 376) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_AbstractList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_add___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractList", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("AbstractList.java", 403) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractList_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_add___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractList", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("AbstractList.java", 424) + //java_util_AbstractList_size__[16] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[16])(_r1.o); + //java_util_AbstractList_add___int_java_lang_Object[20] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[20])(_r1.o, _r0.i, _r2.o); + XMLVM_SOURCE_POSITION("AbstractList.java", 425) + _r0.i = 1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_addAll___int_java_util_Collection] + XMLVM_ENTER_METHOD("java.util.AbstractList", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("AbstractList.java", 448) + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r6.o); + _r1 = _r5; + label5:; + XMLVM_SOURCE_POSITION("AbstractList.java", 449) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label19; + XMLVM_SOURCE_POSITION("AbstractList.java", 452) + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__])(_r6.o); + if (_r0.i == 0) goto label30; + _r0.i = 0; + label18:; + XMLVM_EXIT_METHOD() + return _r0.i; + label19:; + XMLVM_SOURCE_POSITION("AbstractList.java", 450) + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + //java_util_AbstractList_add___int_java_lang_Object[20] + XMLVM_CHECK_NPE(4) + (*(void (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) ((java_util_AbstractList*) _r4.o)->tib->vtable[20])(_r4.o, _r1.i, _r3.o); + _r1 = _r2; + goto label5; + label30:; + _r0.i = 1; + goto label18; + //XMLVM_END_WRAPPER +} + +void java_util_AbstractList_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_clear__] + XMLVM_ENTER_METHOD("java.util.AbstractList", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("AbstractList.java", 465) + _r0.i = 0; + //java_util_AbstractList_size__[16] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[16])(_r2.o); + //java_util_AbstractList_removeRange___int_int[26] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[26])(_r2.o, _r0.i, _r1.i); + XMLVM_SOURCE_POSITION("AbstractList.java", 466) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractList_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractList", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("AbstractList.java", 481) + if (_r6.o != _r7.o) goto label6; + _r0 = _r5; + label5:; + XMLVM_SOURCE_POSITION("AbstractList.java", 482) + XMLVM_SOURCE_POSITION("AbstractList.java", 499) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("AbstractList.java", 484) + XMLVM_CLASS_INIT(java_util_List) + _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_util_List); + if (_r0.i == 0) goto label61; + XMLVM_SOURCE_POSITION("AbstractList.java", 485) + _r7.o = _r7.o; + XMLVM_SOURCE_POSITION("AbstractList.java", 486) + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r7.o); + //java_util_AbstractList_size__[16] + XMLVM_CHECK_NPE(6) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r6.o)->tib->vtable[16])(_r6.o); + if (_r0.i == _r1.i) goto label24; + _r0 = _r4; + XMLVM_SOURCE_POSITION("AbstractList.java", 487) + goto label5; + label24:; + XMLVM_SOURCE_POSITION("AbstractList.java", 490) + //java_util_AbstractList_iterator__[12] + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r6.o)->tib->vtable[12])(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_iterator__])(_r7.o); + label32:; + XMLVM_SOURCE_POSITION("AbstractList.java", 491) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label40; + _r0 = _r5; + XMLVM_SOURCE_POSITION("AbstractList.java", 497) + goto label5; + label40:; + XMLVM_SOURCE_POSITION("AbstractList.java", 492) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_CHECK_NPE(1) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + XMLVM_SOURCE_POSITION("AbstractList.java", 493) + if (_r2.o != JAVA_NULL) goto label54; + if (_r3.o == JAVA_NULL) goto label32; + label52:; + _r0 = _r4; + XMLVM_SOURCE_POSITION("AbstractList.java", 494) + goto label5; + label54:; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[1])(_r2.o, _r3.o); + if (_r2.i != 0) goto label32; + goto label52; + label61:; + _r0 = _r4; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_AbstractList_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_hashCode__] + XMLVM_ENTER_METHOD("java.util.AbstractList", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("AbstractList.java", 523) + _r0.i = 1; + XMLVM_SOURCE_POSITION("AbstractList.java", 524) + //java_util_AbstractList_iterator__[12] + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r3.o)->tib->vtable[12])(_r3.o); + label5:; + XMLVM_SOURCE_POSITION("AbstractList.java", 525) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i != 0) goto label12; + XMLVM_SOURCE_POSITION("AbstractList.java", 529) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("AbstractList.java", 526) + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + XMLVM_SOURCE_POSITION("AbstractList.java", 527) + _r0.i = _r0.i * 31; + if (_r2.o != JAVA_NULL) goto label23; + _r2.i = 0; + label21:; + _r0.i = _r0.i + _r2.i; + goto label5; + label23:; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[4])(_r2.o); + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_AbstractList_indexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_indexOf___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractList", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("AbstractList.java", 542) + //java_util_AbstractList_listIterator__[24] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[24])(_r2.o); + XMLVM_SOURCE_POSITION("AbstractList.java", 543) + if (_r3.o == JAVA_NULL) goto label40; + label6:; + XMLVM_SOURCE_POSITION("AbstractList.java", 544) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label14; + label12:; + XMLVM_SOURCE_POSITION("AbstractList.java", 556) + _r0.i = -1; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + XMLVM_SOURCE_POSITION("AbstractList.java", 545) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[1])(_r3.o, _r1.o); + if (_r1.i == 0) goto label6; + XMLVM_SOURCE_POSITION("AbstractList.java", 546) + + + // Red class access removed: java.util.ListIterator::previousIndex + XMLVM_RED_CLASS_DEPENDENCY(); + goto label13; + label29:; + XMLVM_SOURCE_POSITION("AbstractList.java", 551) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.o != JAVA_NULL) goto label40; + XMLVM_SOURCE_POSITION("AbstractList.java", 552) + + + // Red class access removed: java.util.ListIterator::previousIndex + XMLVM_RED_CLASS_DEPENDENCY(); + goto label13; + label40:; + XMLVM_SOURCE_POSITION("AbstractList.java", 550) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label29; + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractList_iterator__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_iterator__] + XMLVM_ENTER_METHOD("java.util.AbstractList", "iterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("AbstractList.java", 568) + + + // Red class access removed: java.util.AbstractList$SimpleListIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.AbstractList$SimpleListIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_AbstractList_lastIndexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_lastIndexOf___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractList", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("AbstractList.java", 581) + //java_util_AbstractList_size__[16] + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[16])(_r2.o); + //java_util_AbstractList_listIterator___int[25] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[25])(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("AbstractList.java", 582) + if (_r3.o == JAVA_NULL) goto label44; + label10:; + XMLVM_SOURCE_POSITION("AbstractList.java", 583) + + + // Red class access removed: java.util.ListIterator::hasPrevious + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label18; + label16:; + XMLVM_SOURCE_POSITION("AbstractList.java", 595) + _r0.i = -1; + label17:; + XMLVM_EXIT_METHOD() + return _r0.i; + label18:; + XMLVM_SOURCE_POSITION("AbstractList.java", 584) + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[1])(_r3.o, _r1.o); + if (_r1.i == 0) goto label10; + XMLVM_SOURCE_POSITION("AbstractList.java", 585) + + + // Red class access removed: java.util.ListIterator::nextIndex + XMLVM_RED_CLASS_DEPENDENCY(); + goto label17; + label33:; + XMLVM_SOURCE_POSITION("AbstractList.java", 590) + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.o != JAVA_NULL) goto label44; + XMLVM_SOURCE_POSITION("AbstractList.java", 591) + + + // Red class access removed: java.util.ListIterator::nextIndex + XMLVM_RED_CLASS_DEPENDENCY(); + goto label17; + label44:; + XMLVM_SOURCE_POSITION("AbstractList.java", 589) + + + // Red class access removed: java.util.ListIterator::hasPrevious + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label33; + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractList_listIterator__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_listIterator__] + XMLVM_ENTER_METHOD("java.util.AbstractList", "listIterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractList.java", 606) + _r0.i = 0; + //java_util_AbstractList_listIterator___int[25] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[25])(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractList_listIterator___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_listIterator___int] + XMLVM_ENTER_METHOD("java.util.AbstractList", "listIterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("AbstractList.java", 622) + + + // Red class access removed: java.util.AbstractList$FullListIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.AbstractList$FullListIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractList_remove___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_remove___int] + XMLVM_ENTER_METHOD("java.util.AbstractList", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("AbstractList.java", 637) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_AbstractList_removeRange___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_removeRange___int_int] + XMLVM_ENTER_METHOD("java.util.AbstractList", "removeRange", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.i = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("AbstractList.java", 654) + //java_util_AbstractList_listIterator___int[25] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[25])(_r2.o, _r3.i); + _r1 = _r3; + label5:; + XMLVM_SOURCE_POSITION("AbstractList.java", 655) + if (_r1.i < _r4.i) goto label8; + XMLVM_SOURCE_POSITION("AbstractList.java", 659) + XMLVM_EXIT_METHOD() + return; + label8:; + XMLVM_SOURCE_POSITION("AbstractList.java", 656) + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractList.java", 657) + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o); + _r1.i = _r1.i + 1; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_set___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractList", "set", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("AbstractList.java", 680) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractList_subList___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_subList___int_int] + XMLVM_ENTER_METHOD("java.util.AbstractList", "subList", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("AbstractList.java", 728) + if (_r2.i < 0) goto label32; + //java_util_AbstractList_size__[16] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[16])(_r1.o); + if (_r3.i > _r0.i) goto label32; + XMLVM_SOURCE_POSITION("AbstractList.java", 729) + if (_r2.i > _r3.i) goto label26; + XMLVM_SOURCE_POSITION("AbstractList.java", 730) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r0.i = XMLVM_ISA(_r1.o, __CLASS_java_util_RandomAccess); + if (_r0.i == 0) goto label20; + XMLVM_SOURCE_POSITION("AbstractList.java", 731) + + + // Red class access removed: java.util.AbstractList$SubAbstractListRandomAccess::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.AbstractList$SubAbstractListRandomAccess:: + XMLVM_RED_CLASS_DEPENDENCY(); + label19:; + XMLVM_SOURCE_POSITION("AbstractList.java", 733) + XMLVM_EXIT_METHOD() + return _r0.o; + label20:; + + + // Red class access removed: java.util.AbstractList$SubAbstractList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.AbstractList$SubAbstractList:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label19; + label26:; + XMLVM_SOURCE_POSITION("AbstractList.java", 735) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label32:; + XMLVM_SOURCE_POSITION("AbstractList.java", 737) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_AbstractList.h b/tests/nbody-java/java_util_AbstractList.h new file mode 100644 index 0000000000000..198246c7a45b7 --- /dev/null +++ b/tests/nbody-java/java_util_AbstractList.h @@ -0,0 +1,121 @@ +#ifndef __JAVA_UTIL_ABSTRACTLIST__ +#define __JAVA_UTIL_ABSTRACTLIST__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_AbstractList 78 +// Implemented interfaces: +#include "java_util_List.h" +// Super Class: +#include "java_util_AbstractCollection.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_RandomAccess +#define XMLVM_FORWARD_DECL_java_util_RandomAccess +XMLVM_FORWARD_DECL(java_util_RandomAccess) +#endif +// Class declarations for java.util.AbstractList +XMLVM_DEFINE_CLASS(java_util_AbstractList, 30, XMLVM_ITABLE_SIZE_java_util_AbstractList) + +extern JAVA_OBJECT __CLASS_java_util_AbstractList; +extern JAVA_OBJECT __CLASS_java_util_AbstractList_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractList_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractList_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractList +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_AbstractList \ + __INSTANCE_FIELDS_java_util_AbstractCollection; \ + struct { \ + JAVA_INT modCount_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractList \ + } java_util_AbstractList + +struct java_util_AbstractList { + __TIB_DEFINITION_java_util_AbstractList* tib; + struct { + __INSTANCE_FIELDS_java_util_AbstractList; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_AbstractList +#define XMLVM_FORWARD_DECL_java_util_AbstractList +typedef struct java_util_AbstractList java_util_AbstractList; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_AbstractList 30 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_add___int_java_lang_Object 20 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_add___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_addAll___int_java_util_Collection 19 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_clear__ 8 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_get___int 21 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_indexOf___java_lang_Object 22 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_iterator__ 12 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_lastIndexOf___java_lang_Object 23 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_listIterator__ 24 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_listIterator___int 25 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_remove___int 27 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_removeRange___int_int 26 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_set___int_java_lang_Object 28 +#define XMLVM_VTABLE_IDX_java_util_AbstractList_subList___int_int 29 + +void __INIT_java_util_AbstractList(); +void __INIT_IMPL_java_util_AbstractList(); +void __DELETE_java_util_AbstractList(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_AbstractList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_AbstractList(); +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractList(); +void java_util_AbstractList___INIT___(JAVA_OBJECT me); +// Vtable index: 20 +void java_util_AbstractList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 7 +JAVA_BOOLEAN java_util_AbstractList_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 19 +JAVA_BOOLEAN java_util_AbstractList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 8 +void java_util_AbstractList_clear__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_util_AbstractList_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 21 +JAVA_OBJECT java_util_AbstractList_get___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 4 +JAVA_INT java_util_AbstractList_hashCode__(JAVA_OBJECT me); +// Vtable index: 22 +JAVA_INT java_util_AbstractList_indexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 12 +JAVA_OBJECT java_util_AbstractList_iterator__(JAVA_OBJECT me); +// Vtable index: 23 +JAVA_INT java_util_AbstractList_lastIndexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 24 +JAVA_OBJECT java_util_AbstractList_listIterator__(JAVA_OBJECT me); +// Vtable index: 25 +JAVA_OBJECT java_util_AbstractList_listIterator___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 27 +JAVA_OBJECT java_util_AbstractList_remove___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 26 +void java_util_AbstractList_removeRange___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 28 +JAVA_OBJECT java_util_AbstractList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 29 +JAVA_OBJECT java_util_AbstractList_subList___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); + +#endif diff --git a/tests/nbody-java/java_util_AbstractMap.c b/tests/nbody-java/java_util_AbstractMap.c new file mode 100644 index 0000000000000..90dd8f8244e1e --- /dev/null +++ b/tests/nbody-java/java_util_AbstractMap.c @@ -0,0 +1,978 @@ +#include "xmlvm.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_util_Collection.h" +#include "java_util_Iterator.h" +#include "java_util_Map_Entry.h" +#include "java_util_Set.h" + +#include "java_util_AbstractMap.h" + +#define XMLVM_CURRENT_CLASS_NAME AbstractMap +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_AbstractMap + +__TIB_DEFINITION_java_util_AbstractMap __TIB_java_util_AbstractMap = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_AbstractMap, // classInitializer + "java.util.AbstractMap", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Map;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_AbstractMap), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_AbstractMap; +JAVA_OBJECT __CLASS_java_util_AbstractMap_1ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractMap_2ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractMap_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_AbstractMap() +{ + staticInitializerLock(&__TIB_java_util_AbstractMap); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_AbstractMap.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_AbstractMap.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_AbstractMap); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_AbstractMap.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_AbstractMap.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_AbstractMap.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.AbstractMap") + __INIT_IMPL_java_util_AbstractMap(); + } +} + +void __INIT_IMPL_java_util_AbstractMap() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_AbstractMap.newInstanceFunc = __NEW_INSTANCE_java_util_AbstractMap; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_AbstractMap.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_AbstractMap.vtable[6] = (VTABLE_PTR) &java_util_AbstractMap_clear__; + __TIB_java_util_AbstractMap.vtable[7] = (VTABLE_PTR) &java_util_AbstractMap_containsKey___java_lang_Object; + __TIB_java_util_AbstractMap.vtable[8] = (VTABLE_PTR) &java_util_AbstractMap_containsValue___java_lang_Object; + __TIB_java_util_AbstractMap.vtable[1] = (VTABLE_PTR) &java_util_AbstractMap_equals___java_lang_Object; + __TIB_java_util_AbstractMap.vtable[10] = (VTABLE_PTR) &java_util_AbstractMap_get___java_lang_Object; + __TIB_java_util_AbstractMap.vtable[4] = (VTABLE_PTR) &java_util_AbstractMap_hashCode__; + __TIB_java_util_AbstractMap.vtable[11] = (VTABLE_PTR) &java_util_AbstractMap_isEmpty__; + __TIB_java_util_AbstractMap.vtable[12] = (VTABLE_PTR) &java_util_AbstractMap_keySet__; + __TIB_java_util_AbstractMap.vtable[14] = (VTABLE_PTR) &java_util_AbstractMap_put___java_lang_Object_java_lang_Object; + __TIB_java_util_AbstractMap.vtable[13] = (VTABLE_PTR) &java_util_AbstractMap_putAll___java_util_Map; + __TIB_java_util_AbstractMap.vtable[15] = (VTABLE_PTR) &java_util_AbstractMap_remove___java_lang_Object; + __TIB_java_util_AbstractMap.vtable[16] = (VTABLE_PTR) &java_util_AbstractMap_size__; + __TIB_java_util_AbstractMap.vtable[5] = (VTABLE_PTR) &java_util_AbstractMap_toString__; + __TIB_java_util_AbstractMap.vtable[17] = (VTABLE_PTR) &java_util_AbstractMap_values__; + __TIB_java_util_AbstractMap.vtable[0] = (VTABLE_PTR) &java_util_AbstractMap_clone__; + // Initialize interface information + __TIB_java_util_AbstractMap.numImplementedInterfaces = 1; + __TIB_java_util_AbstractMap.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_util_Map) + + __TIB_java_util_AbstractMap.implementedInterfaces[0][0] = &__TIB_java_util_Map; + // Initialize itable for this class + __TIB_java_util_AbstractMap.itableBegin = &__TIB_java_util_AbstractMap.itable[0]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_clear__] = __TIB_java_util_AbstractMap.vtable[6]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object] = __TIB_java_util_AbstractMap.vtable[7]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object] = __TIB_java_util_AbstractMap.vtable[8]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_entrySet__] = __TIB_java_util_AbstractMap.vtable[9]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object] = __TIB_java_util_AbstractMap.vtable[1]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object] = __TIB_java_util_AbstractMap.vtable[10]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_hashCode__] = __TIB_java_util_AbstractMap.vtable[4]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__] = __TIB_java_util_AbstractMap.vtable[11]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_keySet__] = __TIB_java_util_AbstractMap.vtable[12]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map] = __TIB_java_util_AbstractMap.vtable[13]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object] = __TIB_java_util_AbstractMap.vtable[14]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object] = __TIB_java_util_AbstractMap.vtable[15]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_size__] = __TIB_java_util_AbstractMap.vtable[16]; + __TIB_java_util_AbstractMap.itable[XMLVM_ITABLE_IDX_java_util_Map_values__] = __TIB_java_util_AbstractMap.vtable[17]; + + + __TIB_java_util_AbstractMap.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_AbstractMap.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_AbstractMap.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_AbstractMap.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_AbstractMap.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_AbstractMap.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_AbstractMap.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_AbstractMap.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_AbstractMap = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_AbstractMap); + __TIB_java_util_AbstractMap.clazz = __CLASS_java_util_AbstractMap; + __TIB_java_util_AbstractMap.baseType = JAVA_NULL; + __CLASS_java_util_AbstractMap_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractMap); + __CLASS_java_util_AbstractMap_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractMap_1ARRAY); + __CLASS_java_util_AbstractMap_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractMap_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_AbstractMap] + //XMLVM_END_WRAPPER + + __TIB_java_util_AbstractMap.classInitialized = 1; +} + +void __DELETE_java_util_AbstractMap(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_AbstractMap] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_AbstractMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_AbstractMap*) me)->fields.java_util_AbstractMap.keySet_ = (java_util_Set*) JAVA_NULL; + ((java_util_AbstractMap*) me)->fields.java_util_AbstractMap.valuesCollection_ = (java_util_Collection*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_AbstractMap] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_AbstractMap() +{ XMLVM_CLASS_INIT(java_util_AbstractMap) +java_util_AbstractMap* me = (java_util_AbstractMap*) XMLVM_MALLOC(sizeof(java_util_AbstractMap)); + me->tib = &__TIB_java_util_AbstractMap; + __INIT_INSTANCE_MEMBERS_java_util_AbstractMap(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_AbstractMap] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractMap() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_AbstractMap(); + java_util_AbstractMap___INIT___(me); + return me; +} + +void java_util_AbstractMap___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap___INIT___] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("AbstractMap.java", 275) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 276) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_AbstractMap_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_clear__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractMap.java", 287) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r1.o)->tib->vtable[9])(_r1.o); + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_clear__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 288) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_containsKey___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "containsKey", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("AbstractMap.java", 299) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r3.o)->tib->vtable[9])(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 300) + if (_r4.o == JAVA_NULL) goto label51; + label11:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 301) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label19; + label17:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 313) + _r0.i = 0; + label18:; + XMLVM_EXIT_METHOD() + return _r0.i; + label19:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 302) + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r3.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i == 0) goto label11; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractMap.java", 303) + goto label18; + label37:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 308) + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r3.o); + if (_r1.o != JAVA_NULL) goto label51; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractMap.java", 309) + goto label18; + label51:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 307) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label37; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_containsValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "containsValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("AbstractMap.java", 325) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r3.o)->tib->vtable[9])(_r3.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 326) + if (_r4.o == JAVA_NULL) goto label51; + label11:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 327) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label19; + label17:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 339) + _r0.i = 0; + label18:; + XMLVM_EXIT_METHOD() + return _r0.i; + label19:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 328) + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r3.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i == 0) goto label11; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractMap.java", 329) + goto label18; + label37:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 334) + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r3.o); + if (_r1.o != JAVA_NULL) goto label51; + _r0 = _r2; + XMLVM_SOURCE_POSITION("AbstractMap.java", 335) + goto label18; + label51:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 333) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label37; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractMap_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "equals", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("AbstractMap.java", 364) + if (_r6.o != _r7.o) goto label6; + _r0 = _r5; + label5:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 365) + XMLVM_SOURCE_POSITION("AbstractMap.java", 393) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 367) + XMLVM_CLASS_INIT(java_util_Map) + _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_util_Map); + if (_r0.i == 0) goto label84; + XMLVM_SOURCE_POSITION("AbstractMap.java", 368) + _r7.o = _r7.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 369) + //java_util_AbstractMap_size__[16] + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r6.o)->tib->vtable[16])(_r6.o); + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r7.o); + if (_r0.i == _r1.i) goto label24; + _r0 = _r4; + XMLVM_SOURCE_POSITION("AbstractMap.java", 370) + goto label5; + label24:; + XMLVM_TRY_BEGIN(w70aaab7b1c26) + // Begin try + XMLVM_SOURCE_POSITION("AbstractMap.java", 374) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r6.o)->tib->vtable[9])(_r6.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w70aaab7b1c26) + XMLVM_CATCH_SPECIFIC(w70aaab7b1c26,java_lang_NullPointerException,78) + XMLVM_CATCH_END(w70aaab7b1c26) + XMLVM_RESTORE_EXCEPTION_ENV(w70aaab7b1c26) + label32:; + XMLVM_TRY_BEGIN(w70aaab7b1c28) + // Begin try + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w70aaab7b1c28->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w70aaab7b1c28, sizeof(XMLVM_JMP_BUF)); goto label40; }; + _r0 = _r5; + XMLVM_SOURCE_POSITION("AbstractMap.java", 391) + { XMLVM_MEMCPY(curThread_w70aaab7b1c28->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w70aaab7b1c28, sizeof(XMLVM_JMP_BUF)); goto label5; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w70aaab7b1c28) + XMLVM_CATCH_SPECIFIC(w70aaab7b1c28,java_lang_NullPointerException,78) + XMLVM_CATCH_END(w70aaab7b1c28) + XMLVM_RESTORE_EXCEPTION_ENV(w70aaab7b1c28) + label40:; + XMLVM_TRY_BEGIN(w70aaab7b1c30) + // Begin try + XMLVM_CHECK_NPE(0) + _r6.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r6.o = _r6.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 375) + XMLVM_CHECK_NPE(6) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r6.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 376) + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r6.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 377) + XMLVM_CHECK_NPE(7) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object])(_r7.o, _r1.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 378) + if (_r2.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w70aaab7b1c30->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w70aaab7b1c30, sizeof(XMLVM_JMP_BUF)); goto label70; }; + XMLVM_SOURCE_POSITION("AbstractMap.java", 379) + if (_r3.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w70aaab7b1c30->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w70aaab7b1c30, sizeof(XMLVM_JMP_BUF)); goto label68; }; + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object])(_r7.o, _r1.o); + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w70aaab7b1c30->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w70aaab7b1c30, sizeof(XMLVM_JMP_BUF)); goto label32; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w70aaab7b1c30) + XMLVM_CATCH_SPECIFIC(w70aaab7b1c30,java_lang_NullPointerException,78) + XMLVM_CATCH_END(w70aaab7b1c30) + XMLVM_RESTORE_EXCEPTION_ENV(w70aaab7b1c30) + label68:; + XMLVM_TRY_BEGIN(w70aaab7b1c32) + // Begin try + _r0 = _r4; + XMLVM_SOURCE_POSITION("AbstractMap.java", 380) + { XMLVM_MEMCPY(curThread_w70aaab7b1c32->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w70aaab7b1c32, sizeof(XMLVM_JMP_BUF)); goto label5; }; + XMLVM_SOURCE_POSITION("AbstractMap.java", 382) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w70aaab7b1c32) + XMLVM_CATCH_SPECIFIC(w70aaab7b1c32,java_lang_NullPointerException,78) + XMLVM_CATCH_END(w70aaab7b1c32) + XMLVM_RESTORE_EXCEPTION_ENV(w70aaab7b1c32) + label70:; + XMLVM_TRY_BEGIN(w70aaab7b1c34) + // Begin try + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[1])(_r2.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w70aaab7b1c34) + XMLVM_CATCH_SPECIFIC(w70aaab7b1c34,java_lang_NullPointerException,78) + XMLVM_CATCH_END(w70aaab7b1c34) + XMLVM_RESTORE_EXCEPTION_ENV(w70aaab7b1c34) + if (_r1.i != 0) goto label32; + _r0 = _r4; + XMLVM_SOURCE_POSITION("AbstractMap.java", 383) + goto label5; + label78:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 387) + java_lang_Thread* curThread_w70aaab7b1c41 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w70aaab7b1c41->fields.java_lang_Thread.xmlvmException_; + _r0 = _r4; + goto label5; + label81:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 389) + java_lang_Thread* curThread_w70aaab7b1c46 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w70aaab7b1c46->fields.java_lang_Thread.xmlvmException_; + _r0 = _r4; + goto label5; + label84:; + _r0 = _r4; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_get___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("AbstractMap.java", 405) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r2.o)->tib->vtable[9])(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 406) + if (_r3.o == JAVA_NULL) goto label56; + label10:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 407) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label18; + label16:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 421) + _r0.o = JAVA_NULL; + label17:; + XMLVM_EXIT_METHOD() + return _r0.o; + label18:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 408) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 409) + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r2.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[1])(_r3.o, _r1.o); + if (_r1.i == 0) goto label10; + XMLVM_SOURCE_POSITION("AbstractMap.java", 410) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r2.o); + goto label17; + label39:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 415) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 416) + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r2.o); + if (_r1.o != JAVA_NULL) goto label56; + XMLVM_SOURCE_POSITION("AbstractMap.java", 417) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r2.o); + goto label17; + label56:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 414) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label39; + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_AbstractMap_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_hashCode__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("AbstractMap.java", 433) + _r0.i = 0; + XMLVM_SOURCE_POSITION("AbstractMap.java", 434) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(3) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r3.o)->tib->vtable[9])(_r3.o); + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r1.o); + label9:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 435) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i != 0) goto label16; + XMLVM_SOURCE_POSITION("AbstractMap.java", 438) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 436) + XMLVM_CHECK_NPE(1) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + _r3.o = _r3.o; + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_hashCode__])(_r3.o); + _r0.i = _r0.i + _r2.i; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractMap_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_isEmpty__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "isEmpty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractMap.java", 449) + //java_util_AbstractMap_size__[16] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r1.o)->tib->vtable[16])(_r1.o); + if (_r0.i != 0) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractMap_keySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_keySet__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "keySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractMap.java", 460) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_; + if (_r0.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("AbstractMap.java", 461) + + + // Red class access removed: java.util.AbstractMap$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.AbstractMap$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_ = _r0.o; + label11:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 493) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_put___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("AbstractMap.java", 519) + + + // Red class access removed: java.lang.UnsupportedOperationException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.UnsupportedOperationException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_AbstractMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_putAll___java_util_Map] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "putAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("AbstractMap.java", 539) + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_entrySet__])(_r4.o); + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + label8:; + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r0.i != 0) goto label15; + XMLVM_SOURCE_POSITION("AbstractMap.java", 542) + XMLVM_EXIT_METHOD() + return; + label15:; + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 540) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + //java_util_AbstractMap_put___java_lang_Object_java_lang_Object[14] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_AbstractMap*) _r3.o)->tib->vtable[14])(_r3.o, _r2.o, _r0.o); + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("AbstractMap.java", 555) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r2.o)->tib->vtable[9])(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 556) + if (_r3.o == JAVA_NULL) goto label62; + label10:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 557) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label18; + label16:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 573) + _r0.o = JAVA_NULL; + label17:; + XMLVM_EXIT_METHOD() + return _r0.o; + label18:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 558) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 559) + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r2.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[1])(_r3.o, _r1.o); + if (_r1.i == 0) goto label10; + XMLVM_SOURCE_POSITION("AbstractMap.java", 560) + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 561) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r2.o); + goto label17; + label42:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 566) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 567) + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r2.o); + if (_r1.o != JAVA_NULL) goto label62; + XMLVM_SOURCE_POSITION("AbstractMap.java", 568) + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 569) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r2.o); + goto label17; + label62:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 565) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label42; + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_AbstractMap_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_size__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractMap.java", 582) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r1.o)->tib->vtable[9])(_r1.o); + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_size__])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractMap_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_toString__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + // "(this Map)" + _r4.o = xmlvm_create_java_string_from_pool(5); + XMLVM_SOURCE_POSITION("AbstractMap.java", 592) + //java_util_AbstractMap_isEmpty__[11] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r5.o)->tib->vtable[11])(_r5.o); + if (_r0.i == 0) goto label11; + XMLVM_SOURCE_POSITION("AbstractMap.java", 593) + // "\173\175" + _r0.o = xmlvm_create_java_string_from_pool(6); + label10:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 619) + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 596) + _r1.o = __NEW_java_lang_StringBuilder(); + //java_util_AbstractMap_size__[16] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r5.o)->tib->vtable[16])(_r5.o); + _r0.i = _r0.i * 28; + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("AbstractMap.java", 597) + _r0.i = 123; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(1) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[6])(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("AbstractMap.java", 598) + //java_util_AbstractMap_entrySet__[9] + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractMap*) _r5.o)->tib->vtable[9])(_r5.o); + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + label35:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 599) + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r2.o); + if (_r0.i != 0) goto label51; + XMLVM_SOURCE_POSITION("AbstractMap.java", 618) + _r0.i = 125; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(1) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[6])(_r1.o, _r0.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + goto label10; + label51:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 600) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 601) + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 602) + if (_r3.o == _r5.o) goto label92; + XMLVM_SOURCE_POSITION("AbstractMap.java", 603) + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder_append___java_lang_Object(_r1.o, _r3.o); + label66:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 607) + _r3.i = 61; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(1) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[6])(_r1.o, _r3.i); + XMLVM_SOURCE_POSITION("AbstractMap.java", 608) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractMap.java", 609) + if (_r0.o == _r5.o) goto label98; + XMLVM_SOURCE_POSITION("AbstractMap.java", 610) + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder_append___java_lang_Object(_r1.o, _r0.o); + label80:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 614) + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r2.o); + if (_r0.i == 0) goto label35; + XMLVM_SOURCE_POSITION("AbstractMap.java", 615) + // ", " + _r0.o = xmlvm_create_java_string_from_pool(7); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder_append___java_lang_String(_r1.o, _r0.o); + goto label35; + label92:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 605) + // "(this Map)" + _r3.o = xmlvm_create_java_string_from_pool(5); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + goto label66; + label98:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 612) + // "(this Map)" + _r0.o = xmlvm_create_java_string_from_pool(5); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder_append___java_lang_String(_r1.o, _r4.o); + goto label80; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractMap_values__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_values__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "values", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractMap.java", 642) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_; + if (_r0.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("AbstractMap.java", 643) + + + // Red class access removed: java.util.AbstractMap$2::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.AbstractMap$2:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_ = _r0.o; + label11:; + XMLVM_SOURCE_POSITION("AbstractMap.java", 675) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractMap_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractMap_clone__] + XMLVM_ENTER_METHOD("java.util.AbstractMap", "clone", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("AbstractMap.java", 690) + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_Object_clone__(_r1.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 691) + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 692) + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_ = _r0.o; + XMLVM_SOURCE_POSITION("AbstractMap.java", 693) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_AbstractMap.h b/tests/nbody-java/java_util_AbstractMap.h new file mode 100644 index 0000000000000..3eae8b45491cd --- /dev/null +++ b/tests/nbody-java/java_util_AbstractMap.h @@ -0,0 +1,130 @@ +#ifndef __JAVA_UTIL_ABSTRACTMAP__ +#define __JAVA_UTIL_ABSTRACTMAP__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_AbstractMap 14 +// Implemented interfaces: +#include "java_util_Map.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map_Entry +#define XMLVM_FORWARD_DECL_java_util_Map_Entry +XMLVM_FORWARD_DECL(java_util_Map_Entry) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +// Class declarations for java.util.AbstractMap +XMLVM_DEFINE_CLASS(java_util_AbstractMap, 18, XMLVM_ITABLE_SIZE_java_util_AbstractMap) + +extern JAVA_OBJECT __CLASS_java_util_AbstractMap; +extern JAVA_OBJECT __CLASS_java_util_AbstractMap_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractMap_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractMap_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractMap +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_AbstractMap \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT keySet_; \ + JAVA_OBJECT valuesCollection_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractMap \ + } java_util_AbstractMap + +struct java_util_AbstractMap { + __TIB_DEFINITION_java_util_AbstractMap* tib; + struct { + __INSTANCE_FIELDS_java_util_AbstractMap; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_AbstractMap +#define XMLVM_FORWARD_DECL_java_util_AbstractMap +typedef struct java_util_AbstractMap java_util_AbstractMap; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_AbstractMap 18 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_clear__ 6 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_containsKey___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_containsValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_entrySet__ 9 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_get___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_isEmpty__ 11 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_keySet__ 12 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_put___java_lang_Object_java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_putAll___java_util_Map 13 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_remove___java_lang_Object 15 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_toString__ 5 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_values__ 17 +#define XMLVM_VTABLE_IDX_java_util_AbstractMap_clone__ 0 + +void __INIT_java_util_AbstractMap(); +void __INIT_IMPL_java_util_AbstractMap(); +void __DELETE_java_util_AbstractMap(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_AbstractMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_AbstractMap(); +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractMap(); +void java_util_AbstractMap___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +void java_util_AbstractMap_clear__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_util_AbstractMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_util_AbstractMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_util_AbstractMap_entrySet__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_util_AbstractMap_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 10 +JAVA_OBJECT java_util_AbstractMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_util_AbstractMap_hashCode__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_BOOLEAN java_util_AbstractMap_isEmpty__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_util_AbstractMap_keySet__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_OBJECT java_util_AbstractMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 13 +void java_util_AbstractMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 15 +JAVA_OBJECT java_util_AbstractMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_AbstractMap_size__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_util_AbstractMap_toString__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_AbstractMap_values__(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_util_AbstractMap_clone__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_AbstractSequentialList.c b/tests/nbody-java/java_util_AbstractSequentialList.c new file mode 100644 index 0000000000000..a8591ff2cc7a4 --- /dev/null +++ b/tests/nbody-java/java_util_AbstractSequentialList.c @@ -0,0 +1,448 @@ +#include "xmlvm.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_util_Collection.h" +#include "java_util_Iterator.h" + +#include "java_util_AbstractSequentialList.h" + +#define XMLVM_CURRENT_CLASS_NAME AbstractSequentialList +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_AbstractSequentialList + +__TIB_DEFINITION_java_util_AbstractSequentialList __TIB_java_util_AbstractSequentialList = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_AbstractSequentialList, // classInitializer + "java.util.AbstractSequentialList", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractList;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractList, // extends + sizeof(java_util_AbstractSequentialList), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_AbstractSequentialList; +JAVA_OBJECT __CLASS_java_util_AbstractSequentialList_1ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractSequentialList_2ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractSequentialList_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_AbstractSequentialList() +{ + staticInitializerLock(&__TIB_java_util_AbstractSequentialList); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_AbstractSequentialList.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_AbstractSequentialList.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_AbstractSequentialList); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_AbstractSequentialList.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_AbstractSequentialList.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_AbstractSequentialList.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.AbstractSequentialList") + __INIT_IMPL_java_util_AbstractSequentialList(); + } +} + +void __INIT_IMPL_java_util_AbstractSequentialList() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractList) + __TIB_java_util_AbstractSequentialList.newInstanceFunc = __NEW_INSTANCE_java_util_AbstractSequentialList; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_AbstractSequentialList.vtable, __TIB_java_util_AbstractList.vtable, sizeof(__TIB_java_util_AbstractList.vtable)); + // Initialize vtable for this class + __TIB_java_util_AbstractSequentialList.vtable[20] = (VTABLE_PTR) &java_util_AbstractSequentialList_add___int_java_lang_Object; + __TIB_java_util_AbstractSequentialList.vtable[19] = (VTABLE_PTR) &java_util_AbstractSequentialList_addAll___int_java_util_Collection; + __TIB_java_util_AbstractSequentialList.vtable[21] = (VTABLE_PTR) &java_util_AbstractSequentialList_get___int; + __TIB_java_util_AbstractSequentialList.vtable[12] = (VTABLE_PTR) &java_util_AbstractSequentialList_iterator__; + __TIB_java_util_AbstractSequentialList.vtable[27] = (VTABLE_PTR) &java_util_AbstractSequentialList_remove___int; + __TIB_java_util_AbstractSequentialList.vtable[28] = (VTABLE_PTR) &java_util_AbstractSequentialList_set___int_java_lang_Object; + // Initialize interface information + __TIB_java_util_AbstractSequentialList.numImplementedInterfaces = 3; + __TIB_java_util_AbstractSequentialList.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_AbstractSequentialList.implementedInterfaces[0][0] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_AbstractSequentialList.implementedInterfaces[0][1] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_List) + + __TIB_java_util_AbstractSequentialList.implementedInterfaces[0][2] = &__TIB_java_util_List; + // Initialize itable for this class + __TIB_java_util_AbstractSequentialList.itableBegin = &__TIB_java_util_AbstractSequentialList.itable[0]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_AbstractSequentialList.vtable[12]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[6]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[7]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_AbstractSequentialList.vtable[8]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[9]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[10]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[1]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_AbstractSequentialList.vtable[4]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_AbstractSequentialList.vtable[11]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_AbstractSequentialList.vtable[12]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[13]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[14]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[15]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_AbstractSequentialList.vtable[16]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_AbstractSequentialList.vtable[17]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractSequentialList.vtable[18]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___int_java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[19]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[6]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_add___int_java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[20]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[7]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_clear__] = __TIB_java_util_AbstractSequentialList.vtable[8]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_containsAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[9]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_contains___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[10]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_equals___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[1]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_get___int] = __TIB_java_util_AbstractSequentialList.vtable[21]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_hashCode__] = __TIB_java_util_AbstractSequentialList.vtable[4]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[22]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_isEmpty__] = __TIB_java_util_AbstractSequentialList.vtable[11]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_iterator__] = __TIB_java_util_AbstractSequentialList.vtable[12]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[23]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator__] = __TIB_java_util_AbstractSequentialList.vtable[24]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator___int] = __TIB_java_util_AbstractSequentialList.vtable[25]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_removeAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[13]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___int] = __TIB_java_util_AbstractSequentialList.vtable[27]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[14]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_retainAll___java_util_Collection] = __TIB_java_util_AbstractSequentialList.vtable[15]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object] = __TIB_java_util_AbstractSequentialList.vtable[28]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_size__] = __TIB_java_util_AbstractSequentialList.vtable[16]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_subList___int_int] = __TIB_java_util_AbstractSequentialList.vtable[29]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray__] = __TIB_java_util_AbstractSequentialList.vtable[17]; + __TIB_java_util_AbstractSequentialList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractSequentialList.vtable[18]; + + + __TIB_java_util_AbstractSequentialList.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_AbstractSequentialList.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_AbstractSequentialList.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_AbstractSequentialList.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_AbstractSequentialList.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_AbstractSequentialList.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_AbstractSequentialList.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_AbstractSequentialList.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_AbstractSequentialList = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_AbstractSequentialList); + __TIB_java_util_AbstractSequentialList.clazz = __CLASS_java_util_AbstractSequentialList; + __TIB_java_util_AbstractSequentialList.baseType = JAVA_NULL; + __CLASS_java_util_AbstractSequentialList_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractSequentialList); + __CLASS_java_util_AbstractSequentialList_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractSequentialList_1ARRAY); + __CLASS_java_util_AbstractSequentialList_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractSequentialList_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_AbstractSequentialList] + //XMLVM_END_WRAPPER + + __TIB_java_util_AbstractSequentialList.classInitialized = 1; +} + +void __DELETE_java_util_AbstractSequentialList(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_AbstractSequentialList] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_AbstractSequentialList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractList(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_AbstractSequentialList] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_AbstractSequentialList() +{ XMLVM_CLASS_INIT(java_util_AbstractSequentialList) +java_util_AbstractSequentialList* me = (java_util_AbstractSequentialList*) XMLVM_MALLOC(sizeof(java_util_AbstractSequentialList)); + me->tib = &__TIB_java_util_AbstractSequentialList; + __INIT_INSTANCE_MEMBERS_java_util_AbstractSequentialList(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_AbstractSequentialList] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractSequentialList() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_AbstractSequentialList(); + java_util_AbstractSequentialList___INIT___(me); + return me; +} + +void java_util_AbstractSequentialList___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSequentialList___INIT___] + XMLVM_ENTER_METHOD("java.util.AbstractSequentialList", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 33) + XMLVM_CHECK_NPE(0) + java_util_AbstractList___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 34) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_AbstractSequentialList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSequentialList_add___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractSequentialList", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 38) + //java_util_AbstractSequentialList_listIterator___int[25] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractSequentialList*) _r1.o)->tib->vtable[25])(_r1.o, _r2.i); + + + // Red class access removed: java.util.ListIterator::add + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 39) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractSequentialList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSequentialList_addAll___int_java_util_Collection] + XMLVM_ENTER_METHOD("java.util.AbstractSequentialList", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 43) + //java_util_AbstractSequentialList_listIterator___int[25] + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractSequentialList*) _r4.o)->tib->vtable[25])(_r4.o, _r5.i); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 44) + XMLVM_CHECK_NPE(6) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r6.o); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 45) + + + // Red class access removed: java.util.ListIterator::nextIndex + XMLVM_RED_CLASS_DEPENDENCY(); + label12:; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 46) + XMLVM_CHECK_NPE(1) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r3.i != 0) goto label26; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 49) + + + // Red class access removed: java.util.ListIterator::nextIndex + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r2.i == _r0.i) goto label34; + _r0.i = 1; + label25:; + XMLVM_EXIT_METHOD() + return _r0.i; + label26:; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 47) + XMLVM_CHECK_NPE(1) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + + + // Red class access removed: java.util.ListIterator::add + XMLVM_RED_CLASS_DEPENDENCY(); + goto label12; + label34:; + _r0.i = 0; + goto label25; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractSequentialList_get___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSequentialList_get___int] + XMLVM_ENTER_METHOD("java.util.AbstractSequentialList", "get", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_TRY_BEGIN(w3823aaab3b1b3) + // Begin try + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 55) + //java_util_AbstractSequentialList_listIterator___int[25] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractSequentialList*) _r1.o)->tib->vtable[25])(_r1.o, _r2.i); + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3823aaab3b1b3) + XMLVM_CATCH_END(w3823aaab3b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w3823aaab3b1b3) + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 57) + java_lang_Thread* curThread_w3823aaab3b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3823aaab3b1b7->fields.java_lang_Thread.xmlvmException_; + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractSequentialList_iterator__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSequentialList_iterator__] + XMLVM_ENTER_METHOD("java.util.AbstractSequentialList", "iterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 63) + _r0.i = 0; + //java_util_AbstractSequentialList_listIterator___int[25] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractSequentialList*) _r1.o)->tib->vtable[25])(_r1.o, _r0.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractSequentialList_remove___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSequentialList_remove___int] + XMLVM_ENTER_METHOD("java.util.AbstractSequentialList", "remove", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_TRY_BEGIN(w3823aaab6b1b3) + // Begin try + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 72) + //java_util_AbstractSequentialList_listIterator___int[25] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractSequentialList*) _r2.o)->tib->vtable[25])(_r2.o, _r3.i); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 73) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 74) + + + // Red class access removed: java.util.ListIterator::remove + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3823aaab6b1b3) + XMLVM_CATCH_END(w3823aaab6b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w3823aaab6b1b3) + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 75) + XMLVM_EXIT_METHOD() + return _r1.o; + label12:; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 77) + java_lang_Thread* curThread_w3823aaab6b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3823aaab6b1b8->fields.java_lang_Thread.xmlvmException_; + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_AbstractSequentialList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSequentialList_set___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractSequentialList", "set", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.i = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 83) + //java_util_AbstractSequentialList_listIterator___int[25] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractSequentialList*) _r2.o)->tib->vtable[25])(_r2.o, _r3.i); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 84) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label16; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 85) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 87) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 88) + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("AbstractSequentialList.java", 89) + XMLVM_EXIT_METHOD() + return _r1.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_AbstractSequentialList.h b/tests/nbody-java/java_util_AbstractSequentialList.h new file mode 100644 index 0000000000000..b0c5937021043 --- /dev/null +++ b/tests/nbody-java/java_util_AbstractSequentialList.h @@ -0,0 +1,88 @@ +#ifndef __JAVA_UTIL_ABSTRACTSEQUENTIALLIST__ +#define __JAVA_UTIL_ABSTRACTSEQUENTIALLIST__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_AbstractSequentialList 78 +// Implemented interfaces: +// Super Class: +#include "java_util_AbstractList.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +// Class declarations for java.util.AbstractSequentialList +XMLVM_DEFINE_CLASS(java_util_AbstractSequentialList, 30, XMLVM_ITABLE_SIZE_java_util_AbstractSequentialList) + +extern JAVA_OBJECT __CLASS_java_util_AbstractSequentialList; +extern JAVA_OBJECT __CLASS_java_util_AbstractSequentialList_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractSequentialList_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractSequentialList_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractSequentialList +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_AbstractSequentialList \ + __INSTANCE_FIELDS_java_util_AbstractList; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractSequentialList \ + } java_util_AbstractSequentialList + +struct java_util_AbstractSequentialList { + __TIB_DEFINITION_java_util_AbstractSequentialList* tib; + struct { + __INSTANCE_FIELDS_java_util_AbstractSequentialList; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_AbstractSequentialList +#define XMLVM_FORWARD_DECL_java_util_AbstractSequentialList +typedef struct java_util_AbstractSequentialList java_util_AbstractSequentialList; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_AbstractSequentialList 30 +#define XMLVM_VTABLE_IDX_java_util_AbstractSequentialList_add___int_java_lang_Object 20 +#define XMLVM_VTABLE_IDX_java_util_AbstractSequentialList_addAll___int_java_util_Collection 19 +#define XMLVM_VTABLE_IDX_java_util_AbstractSequentialList_get___int 21 +#define XMLVM_VTABLE_IDX_java_util_AbstractSequentialList_iterator__ 12 +#define XMLVM_VTABLE_IDX_java_util_AbstractSequentialList_listIterator___int 25 +#define XMLVM_VTABLE_IDX_java_util_AbstractSequentialList_remove___int 27 +#define XMLVM_VTABLE_IDX_java_util_AbstractSequentialList_set___int_java_lang_Object 28 + +void __INIT_java_util_AbstractSequentialList(); +void __INIT_IMPL_java_util_AbstractSequentialList(); +void __DELETE_java_util_AbstractSequentialList(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_AbstractSequentialList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_AbstractSequentialList(); +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractSequentialList(); +void java_util_AbstractSequentialList___INIT___(JAVA_OBJECT me); +// Vtable index: 20 +void java_util_AbstractSequentialList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 19 +JAVA_BOOLEAN java_util_AbstractSequentialList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 21 +JAVA_OBJECT java_util_AbstractSequentialList_get___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 12 +JAVA_OBJECT java_util_AbstractSequentialList_iterator__(JAVA_OBJECT me); +// Vtable index: 25 +JAVA_OBJECT java_util_AbstractSequentialList_listIterator___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 27 +JAVA_OBJECT java_util_AbstractSequentialList_remove___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 28 +JAVA_OBJECT java_util_AbstractSequentialList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_util_AbstractSet.c b/tests/nbody-java/java_util_AbstractSet.c new file mode 100644 index 0000000000000..a5c44d091df7c --- /dev/null +++ b/tests/nbody-java/java_util_AbstractSet.c @@ -0,0 +1,405 @@ +#include "xmlvm.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Object.h" +#include "java_util_Collection.h" +#include "java_util_Iterator.h" + +#include "java_util_AbstractSet.h" + +#define XMLVM_CURRENT_CLASS_NAME AbstractSet +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_AbstractSet + +__TIB_DEFINITION_java_util_AbstractSet __TIB_java_util_AbstractSet = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_AbstractSet, // classInitializer + "java.util.AbstractSet", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractCollection;Ljava/util/Set;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractCollection, // extends + sizeof(java_util_AbstractSet), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_AbstractSet; +JAVA_OBJECT __CLASS_java_util_AbstractSet_1ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractSet_2ARRAY; +JAVA_OBJECT __CLASS_java_util_AbstractSet_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_AbstractSet() +{ + staticInitializerLock(&__TIB_java_util_AbstractSet); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_AbstractSet.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_AbstractSet.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_AbstractSet); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_AbstractSet.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_AbstractSet.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_AbstractSet.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.AbstractSet") + __INIT_IMPL_java_util_AbstractSet(); + } +} + +void __INIT_IMPL_java_util_AbstractSet() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractCollection) + __TIB_java_util_AbstractSet.newInstanceFunc = __NEW_INSTANCE_java_util_AbstractSet; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_AbstractSet.vtable, __TIB_java_util_AbstractCollection.vtable, sizeof(__TIB_java_util_AbstractCollection.vtable)); + // Initialize vtable for this class + __TIB_java_util_AbstractSet.vtable[1] = (VTABLE_PTR) &java_util_AbstractSet_equals___java_lang_Object; + __TIB_java_util_AbstractSet.vtable[4] = (VTABLE_PTR) &java_util_AbstractSet_hashCode__; + __TIB_java_util_AbstractSet.vtable[13] = (VTABLE_PTR) &java_util_AbstractSet_removeAll___java_util_Collection; + // Initialize interface information + __TIB_java_util_AbstractSet.numImplementedInterfaces = 3; + __TIB_java_util_AbstractSet.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_AbstractSet.implementedInterfaces[0][0] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_AbstractSet.implementedInterfaces[0][1] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_Set) + + __TIB_java_util_AbstractSet.implementedInterfaces[0][2] = &__TIB_java_util_Set; + // Initialize itable for this class + __TIB_java_util_AbstractSet.itableBegin = &__TIB_java_util_AbstractSet.itable[0]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_AbstractSet.vtable[12]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[6]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[7]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_AbstractSet.vtable[8]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[9]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[10]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[1]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_AbstractSet.vtable[4]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_AbstractSet.vtable[11]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_AbstractSet.vtable[12]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[13]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[14]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[15]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_AbstractSet.vtable[16]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_AbstractSet.vtable[17]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractSet.vtable[18]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_addAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[6]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_add___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[7]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_clear__] = __TIB_java_util_AbstractSet.vtable[8]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_containsAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[9]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_contains___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[10]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_equals___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[1]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_hashCode__] = __TIB_java_util_AbstractSet.vtable[4]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_isEmpty__] = __TIB_java_util_AbstractSet.vtable[11]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_iterator__] = __TIB_java_util_AbstractSet.vtable[12]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_removeAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[13]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_remove___java_lang_Object] = __TIB_java_util_AbstractSet.vtable[14]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_retainAll___java_util_Collection] = __TIB_java_util_AbstractSet.vtable[15]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_size__] = __TIB_java_util_AbstractSet.vtable[16]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_toArray__] = __TIB_java_util_AbstractSet.vtable[17]; + __TIB_java_util_AbstractSet.itable[XMLVM_ITABLE_IDX_java_util_Set_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractSet.vtable[18]; + + + __TIB_java_util_AbstractSet.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_AbstractSet.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_AbstractSet.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_AbstractSet.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_AbstractSet.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_AbstractSet.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_AbstractSet.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_AbstractSet.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_AbstractSet = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_AbstractSet); + __TIB_java_util_AbstractSet.clazz = __CLASS_java_util_AbstractSet; + __TIB_java_util_AbstractSet.baseType = JAVA_NULL; + __CLASS_java_util_AbstractSet_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractSet); + __CLASS_java_util_AbstractSet_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractSet_1ARRAY); + __CLASS_java_util_AbstractSet_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractSet_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_AbstractSet] + //XMLVM_END_WRAPPER + + __TIB_java_util_AbstractSet.classInitialized = 1; +} + +void __DELETE_java_util_AbstractSet(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_AbstractSet] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_AbstractSet(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractCollection(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_AbstractSet] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_AbstractSet() +{ XMLVM_CLASS_INIT(java_util_AbstractSet) +java_util_AbstractSet* me = (java_util_AbstractSet*) XMLVM_MALLOC(sizeof(java_util_AbstractSet)); + me->tib = &__TIB_java_util_AbstractSet; + __INIT_INSTANCE_MEMBERS_java_util_AbstractSet(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_AbstractSet] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractSet() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_AbstractSet(); + java_util_AbstractSet___INIT___(me); + return me; +} + +void java_util_AbstractSet___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSet___INIT___] + XMLVM_ENTER_METHOD("java.util.AbstractSet", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("AbstractSet.java", 34) + XMLVM_CHECK_NPE(0) + java_util_AbstractCollection___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("AbstractSet.java", 35) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractSet_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSet_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.AbstractSet", "equals", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("AbstractSet.java", 50) + if (_r4.o != _r5.o) goto label6; + _r0 = _r3; + label5:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 51) + XMLVM_SOURCE_POSITION("AbstractSet.java", 64) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 53) + XMLVM_CLASS_INIT(java_util_Set) + _r0.i = XMLVM_ISA(_r5.o, __CLASS_java_util_Set); + if (_r0.i == 0) goto label38; + XMLVM_SOURCE_POSITION("AbstractSet.java", 54) + _r5.o = _r5.o; + XMLVM_TRY_BEGIN(w1612aaab1b1c18) + // Begin try + XMLVM_SOURCE_POSITION("AbstractSet.java", 57) + //java_util_AbstractSet_size__[16] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractSet*) _r4.o)->tib->vtable[16])(_r4.o); + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_size__])(_r5.o); + if (_r0.i != _r1.i) { XMLVM_MEMCPY(curThread_w1612aaab1b1c18->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1612aaab1b1c18, sizeof(XMLVM_JMP_BUF)); goto label30; }; + //java_util_AbstractSet_containsAll___java_util_Collection[9] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_AbstractSet*) _r4.o)->tib->vtable[9])(_r4.o, _r5.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1612aaab1b1c18) + XMLVM_CATCH_SPECIFIC(w1612aaab1b1c18,java_lang_NullPointerException,32) + XMLVM_CATCH_END(w1612aaab1b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w1612aaab1b1c18) + if (_r0.i == 0) goto label30; + _r0 = _r3; + goto label5; + label30:; + _r0 = _r2; + goto label5; + label32:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 59) + java_lang_Thread* curThread_w1612aaab1b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1612aaab1b1c27->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + goto label5; + label35:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 61) + java_lang_Thread* curThread_w1612aaab1b1c32 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1612aaab1b1c32->fields.java_lang_Thread.xmlvmException_; + _r0 = _r2; + goto label5; + label38:; + _r0 = _r2; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_AbstractSet_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSet_hashCode__] + XMLVM_ENTER_METHOD("java.util.AbstractSet", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 0; + XMLVM_SOURCE_POSITION("AbstractSet.java", 77) + XMLVM_SOURCE_POSITION("AbstractSet.java", 78) + //java_util_AbstractSet_iterator__[12] + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractSet*) _r4.o)->tib->vtable[12])(_r4.o); + _r1 = _r3; + label6:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 79) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label13; + XMLVM_SOURCE_POSITION("AbstractSet.java", 83) + XMLVM_EXIT_METHOD() + return _r1.i; + label13:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 80) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_SOURCE_POSITION("AbstractSet.java", 81) + if (_r2.o != JAVA_NULL) goto label22; + _r2 = _r3; + label20:; + _r1.i = _r1.i + _r2.i; + goto label6; + label22:; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[4])(_r2.o); + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_AbstractSet_removeAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_AbstractSet_removeAll___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.AbstractSet", "removeAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("AbstractSet.java", 99) + XMLVM_SOURCE_POSITION("AbstractSet.java", 100) + //java_util_AbstractSet_size__[16] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractSet*) _r5.o)->tib->vtable[16])(_r5.o); + XMLVM_CHECK_NPE(6) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_size__])(_r6.o); + if (_r0.i > _r1.i) goto label40; + XMLVM_SOURCE_POSITION("AbstractSet.java", 101) + //java_util_AbstractSet_iterator__[12] + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractSet*) _r5.o)->tib->vtable[12])(_r5.o); + _r1 = _r3; + label17:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 102) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label25; + _r0 = _r1; + label24:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 114) + XMLVM_EXIT_METHOD() + return _r0.i; + label25:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 103) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_CHECK_NPE(6) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object])(_r6.o, _r2.o); + if (_r2.i == 0) goto label17; + XMLVM_SOURCE_POSITION("AbstractSet.java", 104) + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o); + _r1 = _r4; + XMLVM_SOURCE_POSITION("AbstractSet.java", 105) + goto label17; + label40:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 109) + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r6.o); + _r1 = _r3; + label45:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 110) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label53; + _r0 = _r1; + goto label24; + label53:; + XMLVM_SOURCE_POSITION("AbstractSet.java", 111) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + //java_util_AbstractSet_remove___java_lang_Object[14] + XMLVM_CHECK_NPE(5) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_AbstractSet*) _r5.o)->tib->vtable[14])(_r5.o, _r2.o); + if (_r2.i != 0) goto label67; + if (_r1.i != 0) goto label67; + _r1 = _r3; + goto label45; + label67:; + _r1 = _r4; + goto label45; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_AbstractSet.h b/tests/nbody-java/java_util_AbstractSet.h new file mode 100644 index 0000000000000..b2d7378b6b862 --- /dev/null +++ b/tests/nbody-java/java_util_AbstractSet.h @@ -0,0 +1,77 @@ +#ifndef __JAVA_UTIL_ABSTRACTSET__ +#define __JAVA_UTIL_ABSTRACTSET__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_AbstractSet 31 +// Implemented interfaces: +#include "java_util_Set.h" +// Super Class: +#include "java_util_AbstractCollection.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +// Class declarations for java.util.AbstractSet +XMLVM_DEFINE_CLASS(java_util_AbstractSet, 19, XMLVM_ITABLE_SIZE_java_util_AbstractSet) + +extern JAVA_OBJECT __CLASS_java_util_AbstractSet; +extern JAVA_OBJECT __CLASS_java_util_AbstractSet_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractSet_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_AbstractSet_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractSet +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_AbstractSet \ + __INSTANCE_FIELDS_java_util_AbstractCollection; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_AbstractSet \ + } java_util_AbstractSet + +struct java_util_AbstractSet { + __TIB_DEFINITION_java_util_AbstractSet* tib; + struct { + __INSTANCE_FIELDS_java_util_AbstractSet; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_AbstractSet +#define XMLVM_FORWARD_DECL_java_util_AbstractSet +typedef struct java_util_AbstractSet java_util_AbstractSet; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_AbstractSet 19 +#define XMLVM_VTABLE_IDX_java_util_AbstractSet_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_AbstractSet_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_AbstractSet_removeAll___java_util_Collection 13 + +void __INIT_java_util_AbstractSet(); +void __INIT_IMPL_java_util_AbstractSet(); +void __DELETE_java_util_AbstractSet(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_AbstractSet(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_AbstractSet(); +JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractSet(); +void java_util_AbstractSet___INIT___(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_util_AbstractSet_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_util_AbstractSet_hashCode__(JAVA_OBJECT me); +// Vtable index: 13 +JAVA_BOOLEAN java_util_AbstractSet_removeAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_ArrayList.c b/tests/nbody-java/java_util_ArrayList.c new file mode 100644 index 0000000000000..b8fe8155a286f --- /dev/null +++ b/tests/nbody-java/java_util_ArrayList.c @@ -0,0 +1,2364 @@ +#include "xmlvm.h" +#include "java_io_ObjectStreamField.h" +#include "java_lang_Class.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Integer.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_System.h" +#include "java_lang_reflect_Array.h" +#include "java_util_Collection.h" +#include "java_util_Iterator.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_util_ArrayList.h" + +#define XMLVM_CURRENT_CLASS_NAME ArrayList +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_ArrayList + +__TIB_DEFINITION_java_util_ArrayList __TIB_java_util_ArrayList = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_ArrayList, // classInitializer + "java.util.ArrayList", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractList;Ljava/util/List;Ljava/lang/Cloneable;Ljava/io/Serializable;Ljava/util/RandomAccess;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractList, // extends + sizeof(java_util_ArrayList), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_ArrayList; +JAVA_OBJECT __CLASS_java_util_ArrayList_1ARRAY; +JAVA_OBJECT __CLASS_java_util_ArrayList_2ARRAY; +JAVA_OBJECT __CLASS_java_util_ArrayList_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_ArrayList_serialVersionUID; +static JAVA_OBJECT _STATIC_java_util_ArrayList_serialPersistentFields; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_ArrayList() +{ + staticInitializerLock(&__TIB_java_util_ArrayList); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_ArrayList.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_ArrayList.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_ArrayList); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_ArrayList.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_ArrayList.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_ArrayList.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.ArrayList") + __INIT_IMPL_java_util_ArrayList(); + } +} + +void __INIT_IMPL_java_util_ArrayList() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractList) + __TIB_java_util_ArrayList.newInstanceFunc = __NEW_INSTANCE_java_util_ArrayList; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_ArrayList.vtable, __TIB_java_util_AbstractList.vtable, sizeof(__TIB_java_util_AbstractList.vtable)); + // Initialize vtable for this class + __TIB_java_util_ArrayList.vtable[20] = (VTABLE_PTR) &java_util_ArrayList_add___int_java_lang_Object; + __TIB_java_util_ArrayList.vtable[7] = (VTABLE_PTR) &java_util_ArrayList_add___java_lang_Object; + __TIB_java_util_ArrayList.vtable[19] = (VTABLE_PTR) &java_util_ArrayList_addAll___int_java_util_Collection; + __TIB_java_util_ArrayList.vtable[6] = (VTABLE_PTR) &java_util_ArrayList_addAll___java_util_Collection; + __TIB_java_util_ArrayList.vtable[8] = (VTABLE_PTR) &java_util_ArrayList_clear__; + __TIB_java_util_ArrayList.vtable[0] = (VTABLE_PTR) &java_util_ArrayList_clone__; + __TIB_java_util_ArrayList.vtable[10] = (VTABLE_PTR) &java_util_ArrayList_contains___java_lang_Object; + __TIB_java_util_ArrayList.vtable[21] = (VTABLE_PTR) &java_util_ArrayList_get___int; + __TIB_java_util_ArrayList.vtable[22] = (VTABLE_PTR) &java_util_ArrayList_indexOf___java_lang_Object; + __TIB_java_util_ArrayList.vtable[11] = (VTABLE_PTR) &java_util_ArrayList_isEmpty__; + __TIB_java_util_ArrayList.vtable[23] = (VTABLE_PTR) &java_util_ArrayList_lastIndexOf___java_lang_Object; + __TIB_java_util_ArrayList.vtable[27] = (VTABLE_PTR) &java_util_ArrayList_remove___int; + __TIB_java_util_ArrayList.vtable[14] = (VTABLE_PTR) &java_util_ArrayList_remove___java_lang_Object; + __TIB_java_util_ArrayList.vtable[26] = (VTABLE_PTR) &java_util_ArrayList_removeRange___int_int; + __TIB_java_util_ArrayList.vtable[28] = (VTABLE_PTR) &java_util_ArrayList_set___int_java_lang_Object; + __TIB_java_util_ArrayList.vtable[16] = (VTABLE_PTR) &java_util_ArrayList_size__; + __TIB_java_util_ArrayList.vtable[17] = (VTABLE_PTR) &java_util_ArrayList_toArray__; + __TIB_java_util_ArrayList.vtable[18] = (VTABLE_PTR) &java_util_ArrayList_toArray___java_lang_Object_1ARRAY; + // Initialize interface information + __TIB_java_util_ArrayList.numImplementedInterfaces = 6; + __TIB_java_util_ArrayList.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 6); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_ArrayList.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_ArrayList.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_ArrayList.implementedInterfaces[0][2] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_ArrayList.implementedInterfaces[0][3] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_List) + + __TIB_java_util_ArrayList.implementedInterfaces[0][4] = &__TIB_java_util_List; + + XMLVM_CLASS_INIT(java_util_RandomAccess) + + __TIB_java_util_ArrayList.implementedInterfaces[0][5] = &__TIB_java_util_RandomAccess; + // Initialize itable for this class + __TIB_java_util_ArrayList.itableBegin = &__TIB_java_util_ArrayList.itable[0]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_ArrayList.vtable[12]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[6]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_ArrayList.vtable[7]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_ArrayList.vtable[8]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[9]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_ArrayList.vtable[10]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_ArrayList.vtable[1]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_ArrayList.vtable[4]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_ArrayList.vtable[11]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_ArrayList.vtable[12]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[13]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_ArrayList.vtable[14]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[15]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_ArrayList.vtable[16]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_ArrayList.vtable[17]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_ArrayList.vtable[18]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___int_java_util_Collection] = __TIB_java_util_ArrayList.vtable[19]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[6]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_add___int_java_lang_Object] = __TIB_java_util_ArrayList.vtable[20]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object] = __TIB_java_util_ArrayList.vtable[7]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_clear__] = __TIB_java_util_ArrayList.vtable[8]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_containsAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[9]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_contains___java_lang_Object] = __TIB_java_util_ArrayList.vtable[10]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_equals___java_lang_Object] = __TIB_java_util_ArrayList.vtable[1]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_get___int] = __TIB_java_util_ArrayList.vtable[21]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_hashCode__] = __TIB_java_util_ArrayList.vtable[4]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object] = __TIB_java_util_ArrayList.vtable[22]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_isEmpty__] = __TIB_java_util_ArrayList.vtable[11]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_iterator__] = __TIB_java_util_ArrayList.vtable[12]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object] = __TIB_java_util_ArrayList.vtable[23]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator__] = __TIB_java_util_ArrayList.vtable[24]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator___int] = __TIB_java_util_ArrayList.vtable[25]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_removeAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[13]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___int] = __TIB_java_util_ArrayList.vtable[27]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___java_lang_Object] = __TIB_java_util_ArrayList.vtable[14]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_retainAll___java_util_Collection] = __TIB_java_util_ArrayList.vtable[15]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object] = __TIB_java_util_ArrayList.vtable[28]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_size__] = __TIB_java_util_ArrayList.vtable[16]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_subList___int_int] = __TIB_java_util_ArrayList.vtable[29]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray__] = __TIB_java_util_ArrayList.vtable[17]; + __TIB_java_util_ArrayList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_ArrayList.vtable[18]; + + _STATIC_java_util_ArrayList_serialVersionUID = 8683452581122892189; + _STATIC_java_util_ArrayList_serialPersistentFields = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_util_ArrayList.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_ArrayList.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_ArrayList.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_ArrayList.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_ArrayList.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_ArrayList.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_ArrayList.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_ArrayList.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_ArrayList = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_ArrayList); + __TIB_java_util_ArrayList.clazz = __CLASS_java_util_ArrayList; + __TIB_java_util_ArrayList.baseType = JAVA_NULL; + __CLASS_java_util_ArrayList_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_ArrayList); + __CLASS_java_util_ArrayList_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_ArrayList_1ARRAY); + __CLASS_java_util_ArrayList_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_ArrayList_2ARRAY); + java_util_ArrayList___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_ArrayList] + //XMLVM_END_WRAPPER + + __TIB_java_util_ArrayList.classInitialized = 1; +} + +void __DELETE_java_util_ArrayList(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_ArrayList] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_ArrayList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractList(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_ArrayList*) me)->fields.java_util_ArrayList.firstIndex_ = 0; + ((java_util_ArrayList*) me)->fields.java_util_ArrayList.size_ = 0; + ((java_util_ArrayList*) me)->fields.java_util_ArrayList.array_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_ArrayList] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_ArrayList() +{ XMLVM_CLASS_INIT(java_util_ArrayList) +java_util_ArrayList* me = (java_util_ArrayList*) XMLVM_MALLOC(sizeof(java_util_ArrayList)); + me->tib = &__TIB_java_util_ArrayList; + __INIT_INSTANCE_MEMBERS_java_util_ArrayList(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_ArrayList] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_ArrayList() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_ArrayList(); + java_util_ArrayList___INIT___(me); + return me; +} + +JAVA_LONG java_util_ArrayList_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_ArrayList) + return _STATIC_java_util_ArrayList_serialVersionUID; +} + +void java_util_ArrayList_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_ArrayList) +_STATIC_java_util_ArrayList_serialVersionUID = v; +} + +JAVA_OBJECT java_util_ArrayList_GET_serialPersistentFields() +{ + XMLVM_CLASS_INIT(java_util_ArrayList) + return _STATIC_java_util_ArrayList_serialPersistentFields; +} + +void java_util_ArrayList_PUT_serialPersistentFields(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_ArrayList) +_STATIC_java_util_ArrayList_serialPersistentFields = v; +} + +void java_util_ArrayList___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList___CLINIT___] + XMLVM_ENTER_METHOD("java.util.ArrayList", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVM_SOURCE_POSITION("ArrayList.java", 690) + _r0.i = 1; + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_io_ObjectStreamField, _r0.i); + _r1.i = 0; + _r2.o = __NEW_java_io_ObjectStreamField(); + XMLVM_SOURCE_POSITION("ArrayList.java", 691) + // "size" + _r3.o = xmlvm_create_java_string_from_pool(161); + _r4.o = java_lang_Integer_GET_TYPE(); + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + java_util_ArrayList_PUT_serialPersistentFields( _r0.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 36) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList___INIT___] + XMLVM_ENTER_METHOD("java.util.ArrayList", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ArrayList.java", 51) + _r0.i = 10; + XMLVM_CHECK_NPE(1) + java_util_ArrayList___INIT____int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 52) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList___INIT____int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 61) + XMLVM_CHECK_NPE(1) + java_util_AbstractList___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 62) + if (_r2.i >= 0) goto label11; + XMLVM_SOURCE_POSITION("ArrayList.java", 63) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("ArrayList.java", 65) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_util_ArrayList*) _r1.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_CHECK_NPE(1) + ((java_util_ArrayList*) _r1.o)->fields.java_util_ArrayList.firstIndex_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 66) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_ArrayList_newElementArray___int(_r1.o, _r2.i); + XMLVM_CHECK_NPE(1) + ((java_util_ArrayList*) _r1.o)->fields.java_util_ArrayList.array_ = _r0.o; + XMLVM_SOURCE_POSITION("ArrayList.java", 67) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList___INIT____java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList___INIT____java_util_Collection] + XMLVM_ENTER_METHOD("java.util.ArrayList", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("ArrayList.java", 77) + XMLVM_CHECK_NPE(4) + java_util_AbstractList___INIT___(_r4.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 78) + XMLVM_CHECK_NPE(4) + ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_ = _r3.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 79) + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_toArray__])(_r5.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 80) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(4) + ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_ = _r1.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 85) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i / 10; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(4) + _r1.o = java_util_ArrayList_newElementArray___int(_r4.o, _r1.i); + XMLVM_CHECK_NPE(4) + ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_ = _r1.o; + XMLVM_SOURCE_POSITION("ArrayList.java", 86) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r3.i, _r1.o, _r3.i, _r2.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 87) + _r0.i = 1; + XMLVM_CHECK_NPE(4) + ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 88) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_ArrayList_newElementArray___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_newElementArray___int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "newElementArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 92) + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_add___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.ArrayList", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r5.o = me; + _r6.i = n1; + _r7.o = n2; + _r4.i = 1; + XMLVM_SOURCE_POSITION("ArrayList.java", 110) + if (_r6.i < 0) goto label7; + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + if (_r6.i <= _r0.i) goto label29; + label7:; + XMLVM_SOURCE_POSITION("ArrayList.java", 111) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 113) + // "luni.0A" + _r1.o = xmlvm_create_java_string_from_pool(162); + XMLVM_SOURCE_POSITION("ArrayList.java", 114) + _r2.o = java_lang_Integer_valueOf___int(_r6.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 115) + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r3.o = java_lang_Integer_valueOf___int(_r3.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label29:; + XMLVM_SOURCE_POSITION("ArrayList.java", 117) + if (_r6.i != 0) goto label60; + XMLVM_SOURCE_POSITION("ArrayList.java", 118) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + if (_r0.i != 0) goto label38; + XMLVM_SOURCE_POSITION("ArrayList.java", 119) + XMLVM_CHECK_NPE(5) + java_util_ArrayList_growAtFront___int(_r5.o, _r4.i); + label38:; + XMLVM_SOURCE_POSITION("ArrayList.java", 121) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + _r1.i = _r1.i - _r4.i; + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_ = _r1.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.o; + label47:; + XMLVM_SOURCE_POSITION("ArrayList.java", 142) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 143) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_AbstractList*) _r5.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(5) + ((java_util_AbstractList*) _r5.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 144) + XMLVM_EXIT_METHOD() + return; + label60:; + XMLVM_SOURCE_POSITION("ArrayList.java", 122) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + if (_r6.i != _r0.i) goto label87; + XMLVM_SOURCE_POSITION("ArrayList.java", 123) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i != _r1.i) goto label77; + XMLVM_SOURCE_POSITION("ArrayList.java", 124) + XMLVM_CHECK_NPE(5) + java_util_ArrayList_growAtEnd___int(_r5.o, _r4.i); + label77:; + XMLVM_SOURCE_POSITION("ArrayList.java", 126) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.o; + goto label47; + label87:; + XMLVM_SOURCE_POSITION("ArrayList.java", 128) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i != _r1.i) goto label105; + XMLVM_SOURCE_POSITION("ArrayList.java", 129) + XMLVM_CHECK_NPE(5) + java_util_ArrayList_growForInsert___int_int(_r5.o, _r6.i, _r4.i); + label97:; + XMLVM_SOURCE_POSITION("ArrayList.java", 139) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + _r1.i = _r1.i + _r6.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.o; + goto label47; + label105:; + XMLVM_SOURCE_POSITION("ArrayList.java", 130) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i == _r1.i) goto label125; + XMLVM_SOURCE_POSITION("ArrayList.java", 131) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + if (_r0.i <= 0) goto label140; + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i / 2; + if (_r6.i >= _r0.i) goto label140; + label125:; + XMLVM_SOURCE_POSITION("ArrayList.java", 132) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = _r3.i - _r4.i; + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_ = _r3.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r6.i); + goto label97; + label140:; + XMLVM_SOURCE_POSITION("ArrayList.java", 135) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + _r0.i = _r0.i + _r6.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 136) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r3.i = _r0.i + 1; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + XMLVM_SOURCE_POSITION("ArrayList.java", 137) + _r4.i = _r4.i - _r6.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r0.i, _r2.o, _r3.i, _r4.i); + goto label97; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_ArrayList_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_add___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.ArrayList", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 1; + XMLVM_SOURCE_POSITION("ArrayList.java", 155) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i != _r1.i) goto label14; + XMLVM_SOURCE_POSITION("ArrayList.java", 156) + XMLVM_CHECK_NPE(4) + java_util_ArrayList_growAtEnd___int(_r4.o, _r3.i); + label14:; + XMLVM_SOURCE_POSITION("ArrayList.java", 158) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r1.i = _r1.i + _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.o; + XMLVM_SOURCE_POSITION("ArrayList.java", 159) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(4) + ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 160) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(4) + ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 161) + XMLVM_EXIT_METHOD() + return _r3.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_ArrayList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_addAll___int_java_util_Collection] + XMLVM_ENTER_METHOD("java.util.ArrayList", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r8.o = me; + _r9.i = n1; + _r10.o = n2; + _r7.i = 0; + XMLVM_SOURCE_POSITION("ArrayList.java", 180) + if (_r9.i < 0) goto label7; + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + if (_r9.i <= _r0.i) goto label29; + label7:; + XMLVM_SOURCE_POSITION("ArrayList.java", 181) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 183) + // "luni.0A" + _r1.o = xmlvm_create_java_string_from_pool(162); + XMLVM_SOURCE_POSITION("ArrayList.java", 184) + _r2.o = java_lang_Integer_valueOf___int(_r9.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 185) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r3.o = java_lang_Integer_valueOf___int(_r3.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label29:; + XMLVM_SOURCE_POSITION("ArrayList.java", 188) + XMLVM_CHECK_NPE(10) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r10.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_toArray__])(_r10.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 189) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_SOURCE_POSITION("ArrayList.java", 192) + if (_r1.i != 0) goto label38; + _r0 = _r7; + label37:; + XMLVM_SOURCE_POSITION("ArrayList.java", 193) + XMLVM_SOURCE_POSITION("ArrayList.java", 228) + XMLVM_EXIT_METHOD() + return _r0.i; + label38:; + XMLVM_SOURCE_POSITION("ArrayList.java", 196) + if (_r9.i != 0) goto label69; + XMLVM_SOURCE_POSITION("ArrayList.java", 197) + XMLVM_CHECK_NPE(8) + java_util_ArrayList_growAtFront___int(_r8.o, _r1.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 198) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r2.i = _r2.i - _r1.i; + XMLVM_CHECK_NPE(8) + ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_ = _r2.i; + label48:; + XMLVM_SOURCE_POSITION("ArrayList.java", 224) + XMLVM_CHECK_NPE(8) + _r2.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = _r3.i + _r9.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r7.i, _r2.o, _r3.i, _r1.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 226) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(8) + ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 227) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_AbstractList*) _r8.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(8) + ((java_util_AbstractList*) _r8.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + _r0.i = 1; + goto label37; + label69:; + XMLVM_SOURCE_POSITION("ArrayList.java", 199) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + if (_r9.i != _r2.i) goto label88; + XMLVM_SOURCE_POSITION("ArrayList.java", 200) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i + _r3.i; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r3.i = _r3.i - _r1.i; + if (_r2.i <= _r3.i) goto label48; + XMLVM_SOURCE_POSITION("ArrayList.java", 201) + XMLVM_CHECK_NPE(8) + java_util_ArrayList_growAtEnd___int(_r8.o, _r1.i); + goto label48; + label88:; + XMLVM_SOURCE_POSITION("ArrayList.java", 204) + XMLVM_CHECK_NPE(8) + _r2.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i - _r3.i; + if (_r2.i >= _r1.i) goto label100; + XMLVM_SOURCE_POSITION("ArrayList.java", 205) + XMLVM_CHECK_NPE(8) + java_util_ArrayList_growForInsert___int_int(_r8.o, _r9.i, _r1.i); + goto label48; + label100:; + XMLVM_SOURCE_POSITION("ArrayList.java", 206) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i + _r3.i; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + _r3.i = _r3.i - _r1.i; + if (_r2.i > _r3.i) goto label121; + XMLVM_SOURCE_POSITION("ArrayList.java", 207) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + if (_r2.i <= 0) goto label154; + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i / 2; + if (_r9.i >= _r2.i) goto label154; + label121:; + XMLVM_SOURCE_POSITION("ArrayList.java", 208) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r2.i = _r2.i - _r1.i; + if (_r2.i >= 0) goto label142; + XMLVM_SOURCE_POSITION("ArrayList.java", 209) + XMLVM_SOURCE_POSITION("ArrayList.java", 210) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = _r3.i + _r9.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 211) + XMLVM_CHECK_NPE(8) + _r4.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r5.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + _r2.i = _r3.i - _r2.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 212) + XMLVM_CHECK_NPE(8) + _r6.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r6.i = _r6.i - _r9.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r3.i, _r5.o, _r2.i, _r6.i); + _r2 = _r7; + label142:; + XMLVM_SOURCE_POSITION("ArrayList.java", 213) + XMLVM_SOURCE_POSITION("ArrayList.java", 215) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r4.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(8) + _r5.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r4.i, _r5.o, _r2.i, _r9.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 216) + XMLVM_CHECK_NPE(8) + ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_ = _r2.i; + goto label48; + label154:; + XMLVM_SOURCE_POSITION("ArrayList.java", 218) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r2.i = _r2.i + _r9.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 219) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r4.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + _r5.i = _r2.i + _r1.i; + XMLVM_CHECK_NPE(8) + _r6.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + XMLVM_SOURCE_POSITION("ArrayList.java", 220) + _r6.i = _r6.i - _r9.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r2.i, _r4.o, _r5.i, _r6.i); + goto label48; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_ArrayList_addAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_addAll___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.ArrayList", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 0; + XMLVM_SOURCE_POSITION("ArrayList.java", 241) + XMLVM_CHECK_NPE(7) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_toArray__])(_r7.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 242) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r1.i != 0) goto label10; + _r0 = _r5; + label9:; + XMLVM_SOURCE_POSITION("ArrayList.java", 243) + XMLVM_SOURCE_POSITION("ArrayList.java", 252) + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + XMLVM_SOURCE_POSITION("ArrayList.java", 245) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r3.i = _r3.i + _r4.i; + _r2.i = _r2.i - _r3.i; + if (_r1.i <= _r2.i) goto label26; + XMLVM_SOURCE_POSITION("ArrayList.java", 246) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(6) + java_util_ArrayList_growAtEnd___int(_r6.o, _r1.i); + label26:; + XMLVM_SOURCE_POSITION("ArrayList.java", 248) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i + _r3.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 249) + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r5.i, _r1.o, _r2.i, _r3.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 250) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(6) + ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 251) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_AbstractList*) _r6.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_AbstractList*) _r6.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + _r0.i = 1; + goto label9; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_clear__] + XMLVM_ENTER_METHOD("java.util.ArrayList", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("ArrayList.java", 263) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + if (_r0.i == 0) goto label28; + XMLVM_SOURCE_POSITION("ArrayList.java", 267) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(4) + _r3.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i + _r3.i; + _r3.o = JAVA_NULL; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ArrayList.java", 270) + _r0.i = 0; + XMLVM_CHECK_NPE(4) + ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_CHECK_NPE(4) + ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 271) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(4) + ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + label28:; + XMLVM_SOURCE_POSITION("ArrayList.java", 273) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_ArrayList_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_clone__] + XMLVM_ENTER_METHOD("java.util.ArrayList", "clone", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_TRY_BEGIN(w2588aaac15b1b2) + // Begin try + XMLVM_SOURCE_POSITION("ArrayList.java", 286) + XMLVM_CHECK_NPE(2) + _r0.o = java_lang_Object_clone__(_r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("ArrayList.java", 287) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_ArrayList*) _r2.o)->fields.java_util_ArrayList.array_; + //java_lang_Object_1ARRAY_clone__[0] + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((org_xmlvm_runtime_XMLVMArray*) _r1.o)->tib->vtable[0])(_r1.o); + _r2.o = _r2.o; + XMLVM_CHECK_NPE(0) + ((java_util_ArrayList*) _r0.o)->fields.java_util_ArrayList.array_ = _r2.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2588aaac15b1b2) + XMLVM_CATCH_END(w2588aaac15b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w2588aaac15b1b2) + label16:; + XMLVM_SOURCE_POSITION("ArrayList.java", 290) + XMLVM_EXIT_METHOD() + return _r0.o; + label17:; + java_lang_Thread* curThread_w2588aaac15b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2588aaac15b1b7->fields.java_lang_Thread.xmlvmException_; + _r0.o = JAVA_NULL; + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_ArrayList_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_contains___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.ArrayList", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 1; + XMLVM_SOURCE_POSITION("ArrayList.java", 304) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + if (_r5.o == JAVA_NULL) goto label29; + XMLVM_SOURCE_POSITION("ArrayList.java", 305) + XMLVM_SOURCE_POSITION("ArrayList.java", 306) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + label10:; + if (_r1.i < _r0.i) goto label14; + label12:; + XMLVM_SOURCE_POSITION("ArrayList.java", 318) + _r0.i = 0; + label13:; + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + XMLVM_SOURCE_POSITION("ArrayList.java", 307) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o); + if (_r2.i == 0) goto label26; + _r0 = _r3; + XMLVM_SOURCE_POSITION("ArrayList.java", 308) + goto label13; + label26:; + _r1.i = _r1.i + 1; + goto label10; + label29:; + XMLVM_SOURCE_POSITION("ArrayList.java", 312) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + label31:; + if (_r1.i >= _r0.i) goto label12; + XMLVM_SOURCE_POSITION("ArrayList.java", 313) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r2.o != JAVA_NULL) goto label41; + _r0 = _r3; + XMLVM_SOURCE_POSITION("ArrayList.java", 314) + goto label13; + label41:; + _r1.i = _r1.i + 1; + goto label31; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_ensureCapacity___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_ensureCapacity___int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "ensureCapacity", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 329) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_ArrayList*) _r2.o)->fields.java_util_ArrayList.array_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.i = _r3.i - _r0.i; + if (_r0.i <= 0) goto label14; + XMLVM_SOURCE_POSITION("ArrayList.java", 330) + XMLVM_SOURCE_POSITION("ArrayList.java", 333) + XMLVM_CHECK_NPE(2) + _r1.i = ((java_util_ArrayList*) _r2.o)->fields.java_util_ArrayList.firstIndex_; + if (_r1.i <= 0) goto label15; + XMLVM_SOURCE_POSITION("ArrayList.java", 334) + XMLVM_CHECK_NPE(2) + java_util_ArrayList_growAtFront___int(_r2.o, _r0.i); + label14:; + XMLVM_SOURCE_POSITION("ArrayList.java", 339) + XMLVM_EXIT_METHOD() + return; + label15:; + XMLVM_SOURCE_POSITION("ArrayList.java", 336) + XMLVM_CHECK_NPE(2) + java_util_ArrayList_growAtEnd___int(_r2.o, _r0.i); + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_ArrayList_get___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_get___int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 343) + if (_r5.i < 0) goto label6; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + if (_r5.i < _r0.i) goto label28; + label6:; + XMLVM_SOURCE_POSITION("ArrayList.java", 344) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 346) + // "luni.0A" + _r1.o = xmlvm_create_java_string_from_pool(162); + XMLVM_SOURCE_POSITION("ArrayList.java", 347) + _r2.o = java_lang_Integer_valueOf___int(_r5.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 348) + XMLVM_CHECK_NPE(4) + _r3.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r3.o = java_lang_Integer_valueOf___int(_r3.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_SOURCE_POSITION("ArrayList.java", 350) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + _r1.i = _r1.i + _r5.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_growAtEnd___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_growAtEnd___int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "growAtEnd", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.i = n1; + _r2.i = 12; + _r4.i = 0; + XMLVM_SOURCE_POSITION("ArrayList.java", 354) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i - _r1.i; + if (_r0.i < _r6.i) goto label49; + XMLVM_SOURCE_POSITION("ArrayList.java", 357) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + if (_r0.i == 0) goto label43; + XMLVM_SOURCE_POSITION("ArrayList.java", 358) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r4.i, _r3.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 359) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + if (_r0.i >= _r1.i) goto label46; + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + label34:; + XMLVM_SOURCE_POSITION("ArrayList.java", 362) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r3.o = JAVA_NULL; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + label43:; + XMLVM_SOURCE_POSITION("ArrayList.java", 364) + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_ = _r4.i; + label45:; + XMLVM_SOURCE_POSITION("ArrayList.java", 382) + XMLVM_EXIT_METHOD() + return; + label46:; + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + goto label34; + label49:; + XMLVM_SOURCE_POSITION("ArrayList.java", 368) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i / 2; + XMLVM_SOURCE_POSITION("ArrayList.java", 369) + if (_r6.i <= _r0.i) goto label56; + _r0 = _r6; + label56:; + XMLVM_SOURCE_POSITION("ArrayList.java", 370) + XMLVM_SOURCE_POSITION("ArrayList.java", 372) + if (_r0.i >= _r2.i) goto label59; + _r0 = _r2; + label59:; + XMLVM_SOURCE_POSITION("ArrayList.java", 373) + XMLVM_SOURCE_POSITION("ArrayList.java", 375) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(5) + _r0.o = java_util_ArrayList_newElementArray___int(_r5.o, _r0.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 376) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + if (_r1.i == 0) goto label81; + XMLVM_SOURCE_POSITION("ArrayList.java", 377) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r4.i, _r3.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 378) + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_ = _r4.i; + label81:; + XMLVM_SOURCE_POSITION("ArrayList.java", 380) + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_ = _r0.o; + goto label45; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_growAtFront___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_growAtFront___int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "growAtFront", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.i = n1; + _r2.i = 12; + XMLVM_SOURCE_POSITION("ArrayList.java", 385) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i - _r1.i; + if (_r0.i < _r6.i) goto label50; + XMLVM_SOURCE_POSITION("ArrayList.java", 386) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i - _r1.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 389) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + if (_r1.i == 0) goto label47; + XMLVM_SOURCE_POSITION("ArrayList.java", 390) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r3.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r3.o, _r0.i, _r4.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 391) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r1.i = _r1.i + _r2.i; + if (_r1.i <= _r0.i) goto label39; + XMLVM_SOURCE_POSITION("ArrayList.java", 392) + _r1 = _r0; + label39:; + XMLVM_SOURCE_POSITION("ArrayList.java", 393) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + _r4.o = JAVA_NULL; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + label47:; + XMLVM_SOURCE_POSITION("ArrayList.java", 395) + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_ = _r0.i; + label49:; + XMLVM_SOURCE_POSITION("ArrayList.java", 411) + XMLVM_EXIT_METHOD() + return; + label50:; + XMLVM_SOURCE_POSITION("ArrayList.java", 397) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i / 2; + XMLVM_SOURCE_POSITION("ArrayList.java", 398) + if (_r6.i <= _r0.i) goto label57; + _r0 = _r6; + label57:; + XMLVM_SOURCE_POSITION("ArrayList.java", 399) + XMLVM_SOURCE_POSITION("ArrayList.java", 401) + if (_r0.i >= _r2.i) goto label60; + _r0 = _r2; + label60:; + XMLVM_SOURCE_POSITION("ArrayList.java", 402) + XMLVM_SOURCE_POSITION("ArrayList.java", 404) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r1.i = _r1.i + _r0.i; + XMLVM_CHECK_NPE(5) + _r1.o = java_util_ArrayList_newElementArray___int(_r5.o, _r1.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 405) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + if (_r2.i == 0) goto label80; + XMLVM_SOURCE_POSITION("ArrayList.java", 406) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r1.o, _r0.i, _r4.i); + label80:; + XMLVM_SOURCE_POSITION("ArrayList.java", 408) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i - _r2.i; + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 409) + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_ = _r1.o; + goto label49; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_growForInsert___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_growForInsert___int_int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "growForInsert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r6.o = me; + _r7.i = n1; + _r8.i = n2; + _r1.i = 12; + XMLVM_SOURCE_POSITION("ArrayList.java", 417) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i / 2; + XMLVM_SOURCE_POSITION("ArrayList.java", 418) + if (_r8.i <= _r0.i) goto label9; + _r0 = _r8; + label9:; + XMLVM_SOURCE_POSITION("ArrayList.java", 419) + XMLVM_SOURCE_POSITION("ArrayList.java", 421) + if (_r0.i >= _r1.i) goto label12; + _r0 = _r1; + label12:; + XMLVM_SOURCE_POSITION("ArrayList.java", 422) + XMLVM_SOURCE_POSITION("ArrayList.java", 424) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r1.i = _r1.i + _r0.i; + XMLVM_CHECK_NPE(6) + _r1.o = java_util_ArrayList_newElementArray___int(_r6.o, _r1.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 427) + _r0.i = _r0.i - _r8.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 430) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = _r3.i + _r7.i; + _r4.i = _r0.i + _r7.i; + _r4.i = _r4.i + _r8.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 431) + XMLVM_CHECK_NPE(6) + _r5.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r5.i = _r5.i - _r7.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r1.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 433) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r1.o, _r0.i, _r7.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 434) + XMLVM_CHECK_NPE(6) + ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 435) + XMLVM_CHECK_NPE(6) + ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_ = _r1.o; + XMLVM_SOURCE_POSITION("ArrayList.java", 436) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_ArrayList_indexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_indexOf___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.ArrayList", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 441) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + if (_r4.o == JAVA_NULL) goto label31; + XMLVM_SOURCE_POSITION("ArrayList.java", 442) + XMLVM_SOURCE_POSITION("ArrayList.java", 443) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + label9:; + if (_r1.i < _r0.i) goto label13; + label11:; + XMLVM_SOURCE_POSITION("ArrayList.java", 455) + _r0.i = -1; + label12:; + XMLVM_EXIT_METHOD() + return _r0.i; + label13:; + XMLVM_SOURCE_POSITION("ArrayList.java", 444) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r2.o); + if (_r2.i == 0) goto label28; + XMLVM_SOURCE_POSITION("ArrayList.java", 445) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + _r0.i = _r1.i - _r0.i; + goto label12; + label28:; + _r1.i = _r1.i + 1; + goto label9; + label31:; + XMLVM_SOURCE_POSITION("ArrayList.java", 449) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + label33:; + if (_r1.i >= _r0.i) goto label11; + XMLVM_SOURCE_POSITION("ArrayList.java", 450) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r2.o != JAVA_NULL) goto label46; + XMLVM_SOURCE_POSITION("ArrayList.java", 451) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + _r0.i = _r1.i - _r0.i; + goto label12; + label46:; + _r1.i = _r1.i + 1; + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_ArrayList_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_isEmpty__] + XMLVM_ENTER_METHOD("java.util.ArrayList", "isEmpty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ArrayList.java", 460) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_ArrayList*) _r1.o)->fields.java_util_ArrayList.size_; + if (_r0.i != 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_ArrayList_lastIndexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_lastIndexOf___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.ArrayList", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("ArrayList.java", 465) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + if (_r4.o == JAVA_NULL) goto label32; + XMLVM_SOURCE_POSITION("ArrayList.java", 466) + XMLVM_SOURCE_POSITION("ArrayList.java", 467) + _r0.i = _r0.i - _r2.i; + label9:; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + if (_r0.i >= _r1.i) goto label15; + label13:; + XMLVM_SOURCE_POSITION("ArrayList.java", 479) + _r0.i = -1; + label14:; + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_SOURCE_POSITION("ArrayList.java", 468) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i == 0) goto label29; + XMLVM_SOURCE_POSITION("ArrayList.java", 469) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + _r0.i = _r0.i - _r1.i; + goto label14; + label29:; + _r0.i = _r0.i + -1; + goto label9; + label32:; + XMLVM_SOURCE_POSITION("ArrayList.java", 473) + _r0.i = _r0.i - _r2.i; + label33:; + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + if (_r0.i < _r1.i) goto label13; + XMLVM_SOURCE_POSITION("ArrayList.java", 474) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + if (_r1.o != JAVA_NULL) goto label47; + XMLVM_SOURCE_POSITION("ArrayList.java", 475) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.firstIndex_; + _r0.i = _r0.i - _r1.i; + goto label14; + label47:; + _r0.i = _r0.i + -1; + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_ArrayList_remove___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_remove___int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r8.o = me; + _r9.i = n1; + _r7.o = JAVA_NULL; + _r6.i = 1; + XMLVM_SOURCE_POSITION("ArrayList.java", 494) + if (_r9.i < 0) goto label8; + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + if (_r9.i < _r0.i) goto label30; + label8:; + XMLVM_SOURCE_POSITION("ArrayList.java", 495) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 497) + // "luni.0A" + _r1.o = xmlvm_create_java_string_from_pool(162); + XMLVM_SOURCE_POSITION("ArrayList.java", 498) + _r2.o = java_lang_Integer_valueOf___int(_r9.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 499) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r3.o = java_lang_Integer_valueOf___int(_r3.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label30:; + XMLVM_SOURCE_POSITION("ArrayList.java", 501) + if (_r9.i != 0) goto label67; + XMLVM_SOURCE_POSITION("ArrayList.java", 502) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r1.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("ArrayList.java", 503) + XMLVM_CHECK_NPE(8) + _r1.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(8) + ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_ = _r3.i; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r7.o; + label48:; + XMLVM_SOURCE_POSITION("ArrayList.java", 521) + XMLVM_CHECK_NPE(8) + _r1.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r1.i = _r1.i - _r6.i; + XMLVM_CHECK_NPE(8) + ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_ = _r1.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 525) + XMLVM_CHECK_NPE(8) + _r1.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + if (_r1.i != 0) goto label60; + XMLVM_SOURCE_POSITION("ArrayList.java", 526) + _r1.i = 0; + XMLVM_CHECK_NPE(8) + ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_ = _r1.i; + label60:; + XMLVM_SOURCE_POSITION("ArrayList.java", 529) + XMLVM_CHECK_NPE(8) + _r1.i = ((java_util_AbstractList*) _r8.o)->fields.java_util_AbstractList.modCount_; + _r1.i = _r1.i + 1; + XMLVM_CHECK_NPE(8) + ((java_util_AbstractList*) _r8.o)->fields.java_util_AbstractList.modCount_ = _r1.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 530) + XMLVM_EXIT_METHOD() + return _r0.o; + label67:; + XMLVM_SOURCE_POSITION("ArrayList.java", 504) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i - _r6.i; + if (_r9.i != _r0.i) goto label88; + XMLVM_SOURCE_POSITION("ArrayList.java", 505) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(8) + _r1.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + _r0.i = _r0.i - _r6.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 506) + XMLVM_CHECK_NPE(8) + _r1.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("ArrayList.java", 507) + XMLVM_CHECK_NPE(8) + _r2.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r7.o; + _r0 = _r1; + goto label48; + label88:; + XMLVM_SOURCE_POSITION("ArrayList.java", 509) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r0.i = _r0.i + _r9.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 510) + XMLVM_CHECK_NPE(8) + _r1.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("ArrayList.java", 511) + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i / 2; + if (_r9.i >= _r2.i) goto label126; + XMLVM_SOURCE_POSITION("ArrayList.java", 512) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r4.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r4.i = _r4.i + 1; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r2.i, _r3.o, _r4.i, _r9.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 514) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(8) + ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_ = _r3.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r7.o; + _r0 = _r1; + goto label48; + label126:; + XMLVM_SOURCE_POSITION("ArrayList.java", 516) + XMLVM_CHECK_NPE(8) + _r2.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + _r3.i = _r0.i + 1; + XMLVM_CHECK_NPE(8) + _r4.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_SOURCE_POSITION("ArrayList.java", 517) + XMLVM_CHECK_NPE(8) + _r5.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r5.i = _r5.i - _r9.i; + _r5.i = _r5.i - _r6.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r4.o, _r0.i, _r5.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 518) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(8) + _r2.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_ArrayList*) _r8.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i + _r3.i; + _r2.i = _r2.i - _r6.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r7.o; + _r0 = _r1; + goto label48; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_ArrayList_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.ArrayList", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 535) + //java_util_ArrayList_indexOf___java_lang_Object[22] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[22])(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 536) + if (_r0.i < 0) goto label11; + XMLVM_SOURCE_POSITION("ArrayList.java", 537) + //java_util_ArrayList_remove___int[27] + XMLVM_CHECK_NPE(1) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[27])(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 538) + _r0.i = 1; + label10:; + XMLVM_SOURCE_POSITION("ArrayList.java", 540) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + _r0.i = 0; + goto label10; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_removeRange___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_removeRange___int_int] + XMLVM_ENTER_METHOD("java.util.ArrayList", "removeRange", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r6.o = me; + _r7.i = n1; + _r8.i = n2; + _r5.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("ArrayList.java", 557) + if (_r7.i >= 0) goto label19; + XMLVM_SOURCE_POSITION("ArrayList.java", 559) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 561) + // "luni.0B" + _r1.o = xmlvm_create_java_string_from_pool(163); + XMLVM_SOURCE_POSITION("ArrayList.java", 562) + _r2.o = java_lang_Integer_valueOf___int(_r7.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(_r1.o, _r2.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label19:; + XMLVM_SOURCE_POSITION("ArrayList.java", 563) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + if (_r8.i <= _r0.i) goto label45; + XMLVM_SOURCE_POSITION("ArrayList.java", 565) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 567) + // "luni.0A" + _r1.o = xmlvm_create_java_string_from_pool(162); + XMLVM_SOURCE_POSITION("ArrayList.java", 568) + _r2.o = java_lang_Integer_valueOf___int(_r8.i); + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r3.o = java_lang_Integer_valueOf___int(_r3.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label45:; + XMLVM_SOURCE_POSITION("ArrayList.java", 569) + if (_r7.i <= _r8.i) goto label67; + XMLVM_SOURCE_POSITION("ArrayList.java", 570) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 572) + // "luni.35" + _r1.o = xmlvm_create_java_string_from_pool(164); + XMLVM_SOURCE_POSITION("ArrayList.java", 573) + _r2.o = java_lang_Integer_valueOf___int(_r7.i); + _r3.o = java_lang_Integer_valueOf___int(_r8.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label67:; + XMLVM_SOURCE_POSITION("ArrayList.java", 576) + if (_r7.i != _r8.i) goto label70; + label69:; + XMLVM_SOURCE_POSITION("ArrayList.java", 594) + XMLVM_EXIT_METHOD() + return; + label70:; + XMLVM_SOURCE_POSITION("ArrayList.java", 579) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + if (_r8.i != _r0.i) goto label101; + XMLVM_SOURCE_POSITION("ArrayList.java", 580) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + _r1.i = _r1.i + _r7.i; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r2.i = _r2.i + _r3.i; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + label87:; + XMLVM_SOURCE_POSITION("ArrayList.java", 592) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r1.i = _r8.i - _r7.i; + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(6) + ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 593) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_AbstractList*) _r6.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_AbstractList*) _r6.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + goto label69; + label101:; + XMLVM_SOURCE_POSITION("ArrayList.java", 581) + if (_r7.i != 0) goto label119; + XMLVM_SOURCE_POSITION("ArrayList.java", 582) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + _r2.i = _r2.i + _r8.i; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ArrayList.java", 583) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + _r0.i = _r0.i + _r8.i; + XMLVM_CHECK_NPE(6) + ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_ = _r0.i; + goto label87; + label119:; + XMLVM_SOURCE_POSITION("ArrayList.java", 586) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + _r1.i = _r1.i + _r8.i; + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_SOURCE_POSITION("ArrayList.java", 587) + _r3.i = _r3.i + _r7.i; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r4.i = _r4.i - _r8.i; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 588) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.size_; + _r0.i = _r0.i + _r1.i; + _r1.i = _r0.i + _r7.i; + _r1.i = _r1.i - _r8.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 590) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_ArrayList*) _r6.o)->fields.java_util_ArrayList.array_; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + goto label87; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_ArrayList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_set___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.ArrayList", "set", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("ArrayList.java", 610) + if (_r5.i < 0) goto label6; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + if (_r5.i < _r0.i) goto label28; + label6:; + XMLVM_SOURCE_POSITION("ArrayList.java", 611) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_SOURCE_POSITION("ArrayList.java", 613) + // "luni.0A" + _r1.o = xmlvm_create_java_string_from_pool(162); + XMLVM_SOURCE_POSITION("ArrayList.java", 614) + _r2.o = java_lang_Integer_valueOf___int(_r5.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 615) + XMLVM_CHECK_NPE(4) + _r3.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.size_; + _r3.o = java_lang_Integer_valueOf___int(_r3.i); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_SOURCE_POSITION("ArrayList.java", 617) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + _r1.i = _r1.i + _r5.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("ArrayList.java", 618) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_util_ArrayList*) _r4.o)->fields.java_util_ArrayList.firstIndex_; + _r2.i = _r2.i + _r5.i; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r6.o; + XMLVM_SOURCE_POSITION("ArrayList.java", 619) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_ArrayList_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_size__] + XMLVM_ENTER_METHOD("java.util.ArrayList", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("ArrayList.java", 629) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_ArrayList*) _r1.o)->fields.java_util_ArrayList.size_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_ArrayList_toArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_toArray__] + XMLVM_ENTER_METHOD("java.util.ArrayList", "toArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + XMLVM_SOURCE_POSITION("ArrayList.java", 640) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 641) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = 0; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 642) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_ArrayList_toArray___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_toArray___java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.util.ArrayList", "toArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 663) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + if (_r0.i <= _r1.i) goto label42; + XMLVM_SOURCE_POSITION("ArrayList.java", 664) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r6.o)->tib->vtable[3])(_r6.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + XMLVM_SOURCE_POSITION("ArrayList.java", 665) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r0.o = java_lang_reflect_Array_newInstance___java_lang_Class_int(_r0.o, _r1.i); + _r0.o = _r0.o; + label21:; + XMLVM_SOURCE_POSITION("ArrayList.java", 667) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + _r3.i = 0; + XMLVM_CHECK_NPE(5) + _r4.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 668) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r1.i >= _r2.i) goto label41; + XMLVM_SOURCE_POSITION("ArrayList.java", 671) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + _r2.o = JAVA_NULL; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + label41:; + XMLVM_SOURCE_POSITION("ArrayList.java", 673) + XMLVM_EXIT_METHOD() + return _r0.o; + label42:; + _r0 = _r6; + goto label21; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_trimToSize__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_trimToSize__] + XMLVM_ENTER_METHOD("java.util.ArrayList", "trimToSize", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = me; + _r4.i = 0; + XMLVM_SOURCE_POSITION("ArrayList.java", 683) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + XMLVM_CHECK_NPE(5) + _r0.o = java_util_ArrayList_newElementArray___int(_r5.o, _r0.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 684) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_; + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.size_; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r4.i, _r3.i); + XMLVM_SOURCE_POSITION("ArrayList.java", 685) + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.array_ = _r0.o; + XMLVM_SOURCE_POSITION("ArrayList.java", 686) + XMLVM_CHECK_NPE(5) + ((java_util_ArrayList*) _r5.o)->fields.java_util_ArrayList.firstIndex_ = _r4.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 687) + XMLVM_CHECK_NPE(5) + ((java_util_AbstractList*) _r5.o)->fields.java_util_AbstractList.modCount_ = _r4.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 688) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.ArrayList", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("ArrayList.java", 694) + + + // Red class access removed: java.io.ObjectOutputStream::putFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ArrayList.java", 695) + // "size" + _r1.o = xmlvm_create_java_string_from_pool(161); + XMLVM_CHECK_NPE(3) + _r2.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.size_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ArrayList.java", 696) + + + // Red class access removed: java.io.ObjectOutputStream::writeFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ArrayList.java", 697) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.array_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ArrayList.java", 698) + //java_util_ArrayList_iterator__[12] + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r3.o)->tib->vtable[12])(_r3.o); + label24:; + XMLVM_SOURCE_POSITION("ArrayList.java", 699) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label31; + XMLVM_SOURCE_POSITION("ArrayList.java", 702) + XMLVM_EXIT_METHOD() + return; + label31:; + XMLVM_SOURCE_POSITION("ArrayList.java", 700) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + goto label24; + //XMLVM_END_WRAPPER +} + +void java_util_ArrayList_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_ArrayList_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.util.ArrayList", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("ArrayList.java", 707) + + + // Red class access removed: java.io.ObjectInputStream::readFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("ArrayList.java", 708) + // "size" + _r1.o = xmlvm_create_java_string_from_pool(161); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("ArrayList.java", 709) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + _r0.o = java_util_ArrayList_newElementArray___int(_r3.o, _r0.i); + XMLVM_CHECK_NPE(3) + ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.array_ = _r0.o; + _r0 = _r2; + label24:; + XMLVM_SOURCE_POSITION("ArrayList.java", 710) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.size_; + if (_r0.i < _r1.i) goto label29; + XMLVM_SOURCE_POSITION("ArrayList.java", 713) + XMLVM_EXIT_METHOD() + return; + label29:; + XMLVM_SOURCE_POSITION("ArrayList.java", 711) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_ArrayList*) _r3.o)->fields.java_util_ArrayList.array_; + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.o; + _r0.i = _r0.i + 1; + goto label24; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_ArrayList.h b/tests/nbody-java/java_util_ArrayList.h new file mode 100644 index 0000000000000..f1a14b3da6101 --- /dev/null +++ b/tests/nbody-java/java_util_ArrayList.h @@ -0,0 +1,171 @@ +#ifndef __JAVA_UTIL_ARRAYLIST__ +#define __JAVA_UTIL_ARRAYLIST__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_ArrayList 78 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Cloneable.h" +#include "java_util_List.h" +#include "java_util_RandomAccess.h" +// Super Class: +#include "java_util_AbstractList.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_ObjectStreamField +#define XMLVM_FORWARD_DECL_java_io_ObjectStreamField +XMLVM_FORWARD_DECL(java_io_ObjectStreamField) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Array +#define XMLVM_FORWARD_DECL_java_lang_reflect_Array +XMLVM_FORWARD_DECL(java_lang_reflect_Array) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.util.ArrayList +XMLVM_DEFINE_CLASS(java_util_ArrayList, 30, XMLVM_ITABLE_SIZE_java_util_ArrayList) + +extern JAVA_OBJECT __CLASS_java_util_ArrayList; +extern JAVA_OBJECT __CLASS_java_util_ArrayList_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_ArrayList_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_ArrayList_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_ArrayList +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_ArrayList \ + __INSTANCE_FIELDS_java_util_AbstractList; \ + struct { \ + JAVA_INT firstIndex_; \ + JAVA_INT size_; \ + JAVA_OBJECT array_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_ArrayList \ + } java_util_ArrayList + +struct java_util_ArrayList { + __TIB_DEFINITION_java_util_ArrayList* tib; + struct { + __INSTANCE_FIELDS_java_util_ArrayList; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_ArrayList +#define XMLVM_FORWARD_DECL_java_util_ArrayList +typedef struct java_util_ArrayList java_util_ArrayList; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_ArrayList 30 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_add___int_java_lang_Object 20 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_add___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_addAll___int_java_util_Collection 19 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_addAll___java_util_Collection 6 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_clear__ 8 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_contains___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_get___int 21 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_indexOf___java_lang_Object 22 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_isEmpty__ 11 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_lastIndexOf___java_lang_Object 23 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_remove___int 27 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_remove___java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_removeRange___int_int 26 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_set___int_java_lang_Object 28 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_toArray__ 17 +#define XMLVM_VTABLE_IDX_java_util_ArrayList_toArray___java_lang_Object_1ARRAY 18 + +void __INIT_java_util_ArrayList(); +void __INIT_IMPL_java_util_ArrayList(); +void __DELETE_java_util_ArrayList(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_ArrayList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_ArrayList(); +JAVA_OBJECT __NEW_INSTANCE_java_util_ArrayList(); +JAVA_LONG java_util_ArrayList_GET_serialVersionUID(); +void java_util_ArrayList_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_util_ArrayList_GET_serialPersistentFields(); +void java_util_ArrayList_PUT_serialPersistentFields(JAVA_OBJECT v); +void java_util_ArrayList___CLINIT_(); +void java_util_ArrayList___INIT___(JAVA_OBJECT me); +void java_util_ArrayList___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_ArrayList___INIT____java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_ArrayList_newElementArray___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 20 +void java_util_ArrayList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 7 +JAVA_BOOLEAN java_util_ArrayList_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 19 +JAVA_BOOLEAN java_util_ArrayList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_BOOLEAN java_util_ArrayList_addAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +void java_util_ArrayList_clear__(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_util_ArrayList_clone__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_util_ArrayList_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_ArrayList_ensureCapacity___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 21 +JAVA_OBJECT java_util_ArrayList_get___int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_ArrayList_growAtEnd___int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_ArrayList_growAtFront___int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_ArrayList_growForInsert___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 22 +JAVA_INT java_util_ArrayList_indexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 11 +JAVA_BOOLEAN java_util_ArrayList_isEmpty__(JAVA_OBJECT me); +// Vtable index: 23 +JAVA_INT java_util_ArrayList_lastIndexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 27 +JAVA_OBJECT java_util_ArrayList_remove___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 14 +JAVA_BOOLEAN java_util_ArrayList_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 26 +void java_util_ArrayList_removeRange___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2); +// Vtable index: 28 +JAVA_OBJECT java_util_ArrayList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 16 +JAVA_INT java_util_ArrayList_size__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_ArrayList_toArray__(JAVA_OBJECT me); +// Vtable index: 18 +JAVA_OBJECT java_util_ArrayList_toArray___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_ArrayList_trimToSize__(JAVA_OBJECT me); +void java_util_ArrayList_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_ArrayList_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_Collection.c b/tests/nbody-java/java_util_Collection.c new file mode 100644 index 0000000000000..a513088486e9f --- /dev/null +++ b/tests/nbody-java/java_util_Collection.c @@ -0,0 +1,78 @@ +#include "xmlvm.h" +#include "java_util_Iterator.h" + +#include "java_util_Collection.h" + +__TIB_DEFINITION_java_util_Collection __TIB_java_util_Collection = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Collection, // classInitializer + "java.util.Collection", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/lang/Iterable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Collection; +JAVA_OBJECT __CLASS_java_util_Collection_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Collection_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Collection_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Collection() +{ + staticInitializerLock(&__TIB_java_util_Collection); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Collection.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Collection.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Collection); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Collection.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Collection.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Collection.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Collection") + __INIT_IMPL_java_util_Collection(); + } +} + +void __INIT_IMPL_java_util_Collection() +{ + __TIB_java_util_Collection.numInterfaces = 1; + //__TIB_java_util_Collection.baseInterfaces[0] = &__INTERFACE_java_lang_Iterable; + __TIB_java_util_Collection.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Collection.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Collection.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Collection.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Collection.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Collection = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Collection); + __TIB_java_util_Collection.clazz = __CLASS_java_util_Collection; + __TIB_java_util_Collection.baseType = JAVA_NULL; + __CLASS_java_util_Collection_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collection); + __CLASS_java_util_Collection_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collection_1ARRAY); + __CLASS_java_util_Collection_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collection_2ARRAY); + + __TIB_java_util_Collection.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Collection.h b/tests/nbody-java/java_util_Collection.h new file mode 100644 index 0000000000000..137d36e7ca4b1 --- /dev/null +++ b/tests/nbody-java/java_util_Collection.h @@ -0,0 +1,47 @@ +#ifndef __JAVA_UTIL_COLLECTION__ +#define __JAVA_UTIL_COLLECTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object 2 +#define XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection 1 +#define XMLVM_ITABLE_IDX_java_util_Collection_clear__ 3 +#define XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object 5 +#define XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection 4 +#define XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object 6 +#define XMLVM_ITABLE_IDX_java_util_Collection_hashCode__ 7 +#define XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__ 8 +#define XMLVM_ITABLE_IDX_java_util_Collection_iterator__ 9 +#define XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object 11 +#define XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection 10 +#define XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection 12 +#define XMLVM_ITABLE_IDX_java_util_Collection_size__ 13 +#define XMLVM_ITABLE_IDX_java_util_Collection_toArray__ 14 +#define XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY 15 +// Implemented interfaces: +#include "java_lang_Iterable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif + +XMLVM_DEFINE_CLASS(java_util_Collection, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Collection; +extern JAVA_OBJECT __CLASS_java_util_Collection_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collection_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collection_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +typedef struct java_util_Collection java_util_Collection; +#endif + +void __INIT_java_util_Collection(); +void __INIT_IMPL_java_util_Collection(); + +#endif diff --git a/tests/nbody-java/java_util_Collections.c b/tests/nbody-java/java_util_Collections.c new file mode 100644 index 0000000000000..23fce004d620f --- /dev/null +++ b/tests/nbody-java/java_util_Collections.c @@ -0,0 +1,2676 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Comparable.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_util_ArrayList.h" +#include "java_util_Collection.h" +#include "java_util_Collections_EmptyList.h" +#include "java_util_Collections_EmptyMap.h" +#include "java_util_Collections_EmptySet.h" +#include "java_util_Collections_SynchronizedMap.h" +#include "java_util_Comparator.h" +#include "java_util_Deque.h" +#include "java_util_Enumeration.h" +#include "java_util_Iterator.h" +#include "java_util_List.h" +#include "java_util_Map.h" +#include "java_util_Queue.h" +#include "java_util_RandomAccess.h" +#include "java_util_Set.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_util_Collections.h" + +#define XMLVM_CURRENT_CLASS_NAME Collections +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Collections + +__TIB_DEFINITION_java_util_Collections __TIB_java_util_Collections = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Collections, // classInitializer + "java.util.Collections", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_Collections), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Collections; +JAVA_OBJECT __CLASS_java_util_Collections_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_java_util_Collections_EMPTY_LIST; +static JAVA_OBJECT _STATIC_java_util_Collections_EMPTY_SET; +static JAVA_OBJECT _STATIC_java_util_Collections_EMPTY_MAP; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Collections() +{ + staticInitializerLock(&__TIB_java_util_Collections); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Collections.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Collections.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Collections); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Collections.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Collections.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Collections.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Collections") + __INIT_IMPL_java_util_Collections(); + } +} + +void __INIT_IMPL_java_util_Collections() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_Collections.newInstanceFunc = __NEW_INSTANCE_java_util_Collections; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Collections.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_util_Collections.numImplementedInterfaces = 0; + __TIB_java_util_Collections.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_java_util_Collections_EMPTY_LIST = (java_util_List*) JAVA_NULL; + _STATIC_java_util_Collections_EMPTY_SET = (java_util_Set*) JAVA_NULL; + _STATIC_java_util_Collections_EMPTY_MAP = (java_util_Map*) JAVA_NULL; + + __TIB_java_util_Collections.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Collections.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Collections.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Collections.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Collections.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Collections.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Collections.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Collections.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Collections = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Collections); + __TIB_java_util_Collections.clazz = __CLASS_java_util_Collections; + __TIB_java_util_Collections.baseType = JAVA_NULL; + __CLASS_java_util_Collections_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections); + __CLASS_java_util_Collections_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_1ARRAY); + __CLASS_java_util_Collections_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_2ARRAY); + java_util_Collections___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Collections] + //XMLVM_END_WRAPPER + + __TIB_java_util_Collections.classInitialized = 1; +} + +void __DELETE_java_util_Collections(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Collections] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Collections(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Collections] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Collections() +{ XMLVM_CLASS_INIT(java_util_Collections) +java_util_Collections* me = (java_util_Collections*) XMLVM_MALLOC(sizeof(java_util_Collections)); + me->tib = &__TIB_java_util_Collections; + __INIT_INSTANCE_MEMBERS_java_util_Collections(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Collections] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT java_util_Collections_GET_EMPTY_LIST() +{ + XMLVM_CLASS_INIT(java_util_Collections) + return _STATIC_java_util_Collections_EMPTY_LIST; +} + +void java_util_Collections_PUT_EMPTY_LIST(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Collections) +_STATIC_java_util_Collections_EMPTY_LIST = v; +} + +JAVA_OBJECT java_util_Collections_GET_EMPTY_SET() +{ + XMLVM_CLASS_INIT(java_util_Collections) + return _STATIC_java_util_Collections_EMPTY_SET; +} + +void java_util_Collections_PUT_EMPTY_SET(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Collections) +_STATIC_java_util_Collections_EMPTY_SET = v; +} + +JAVA_OBJECT java_util_Collections_GET_EMPTY_MAP() +{ + XMLVM_CLASS_INIT(java_util_Collections) + return _STATIC_java_util_Collections_EMPTY_MAP; +} + +void java_util_Collections_PUT_EMPTY_MAP(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Collections) +_STATIC_java_util_Collections_EMPTY_MAP = v; +} + +void java_util_Collections___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections___CLINIT___] + XMLVM_ENTER_METHOD("java.util.Collections", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Collections.java", 179) + _r0.o = __NEW_java_util_Collections_EmptyList(); + XMLVM_CHECK_NPE(0) + java_util_Collections_EmptyList___INIT____java_util_Collections_EmptyList(_r0.o, _r1.o); + java_util_Collections_PUT_EMPTY_LIST( _r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 185) + _r0.o = __NEW_java_util_Collections_EmptySet(); + XMLVM_CHECK_NPE(0) + java_util_Collections_EmptySet___INIT____java_util_Collections_EmptySet(_r0.o, _r1.o); + java_util_Collections_PUT_EMPTY_SET( _r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 191) + _r0.o = __NEW_java_util_Collections_EmptyMap(); + XMLVM_CHECK_NPE(0) + java_util_Collections_EmptyMap___INIT____java_util_Collections_EmptyMap(_r0.o, _r1.o); + java_util_Collections_PUT_EMPTY_MAP( _r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 36) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Collections___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections___INIT___] + XMLVM_ENTER_METHOD("java.util.Collections", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 1465) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 1467) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_binarySearch___java_util_List_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_binarySearch___java_util_List_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "binarySearch", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r7.o = n1; + _r8.o = n2; + _r3.i = -1; + _r4.i = 1; + XMLVM_SOURCE_POSITION("Collections.java", 1489) + if (_r7.o != JAVA_NULL) goto label10; + XMLVM_SOURCE_POSITION("Collections.java", 1490) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label10:; + XMLVM_SOURCE_POSITION("Collections.java", 1492) + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_isEmpty__])(_r7.o); + if (_r0.i == 0) goto label18; + _r0 = _r3; + label17:; + XMLVM_SOURCE_POSITION("Collections.java", 1493) + XMLVM_SOURCE_POSITION("Collections.java", 1522) + XMLVM_EXIT_METHOD() + return _r0.i; + label18:; + XMLVM_SOURCE_POSITION("Collections.java", 1497) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_util_RandomAccess); + if (_r0.i != 0) goto label66; + XMLVM_SOURCE_POSITION("Collections.java", 1498) + XMLVM_CHECK_NPE(7) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r7.o); + label26:; + XMLVM_SOURCE_POSITION("Collections.java", 1499) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i != 0) goto label39; + XMLVM_SOURCE_POSITION("Collections.java", 1508) + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r7.o); + _r0.i = -_r0.i; + _r0.i = _r0.i - _r4.i; + goto label17; + label39:; + XMLVM_SOURCE_POSITION("Collections.java", 1501) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.o = _r0.o; + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object])(_r0.o, _r8.o); + _r0.i = -_r0.i; + if (_r0.i > 0) goto label26; + XMLVM_SOURCE_POSITION("Collections.java", 1502) + if (_r0.i != 0) goto label59; + XMLVM_SOURCE_POSITION("Collections.java", 1503) + + + // Red class access removed: java.util.ListIterator::previousIndex + XMLVM_RED_CLASS_DEPENDENCY(); + goto label17; + label59:; + XMLVM_SOURCE_POSITION("Collections.java", 1505) + + + // Red class access removed: java.util.ListIterator::previousIndex + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.i = -_r0.i; + _r0.i = _r0.i - _r4.i; + goto label17; + label66:; + XMLVM_SOURCE_POSITION("Collections.java", 1511) + _r0.i = 0; + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r7.o); + _r2.i = _r1.i - _r4.i; + _r5 = _r3; + _r3 = _r0; + _r0 = _r5; + _r6 = _r1; + _r1 = _r2; + _r2 = _r6; + label79:; + XMLVM_SOURCE_POSITION("Collections.java", 1512) + if (_r3.i <= _r1.i) goto label88; + _r1.i = -_r2.i; + if (_r0.i >= 0) goto label115; + _r0 = _r4; + label85:; + _r0.i = _r1.i - _r0.i; + goto label17; + label88:; + XMLVM_SOURCE_POSITION("Collections.java", 1513) + _r0.i = _r3.i + _r1.i; + _r2.i = _r0.i >> 1; + XMLVM_SOURCE_POSITION("Collections.java", 1514) + XMLVM_CHECK_NPE(7) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r7.o, _r2.i); + _r0.o = _r0.o; + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object])(_r0.o, _r8.o); + _r0.i = -_r0.i; + if (_r0.i <= 0) goto label108; + XMLVM_SOURCE_POSITION("Collections.java", 1515) + _r3.i = _r2.i + 1; + goto label79; + label108:; + XMLVM_SOURCE_POSITION("Collections.java", 1516) + if (_r0.i != 0) goto label112; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Collections.java", 1517) + goto label17; + label112:; + XMLVM_SOURCE_POSITION("Collections.java", 1519) + _r1.i = _r2.i - _r4.i; + goto label79; + label115:; + _r0.i = 2; + goto label85; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_binarySearch___java_util_List_java_lang_Object_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_binarySearch___java_util_List_java_lang_Object_java_util_Comparator] + XMLVM_ENTER_METHOD("java.util.Collections", "binarySearch", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r7.o = n1; + _r8.o = n2; + _r9.o = n3; + _r4.i = 1; + XMLVM_SOURCE_POSITION("Collections.java", 1549) + if (_r9.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 1550) + _r0.i = java_util_Collections_binarySearch___java_util_List_java_lang_Object(_r7.o, _r8.o); + label7:; + XMLVM_SOURCE_POSITION("Collections.java", 1578) + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 1553) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_util_RandomAccess); + if (_r0.i != 0) goto label54; + XMLVM_SOURCE_POSITION("Collections.java", 1554) + XMLVM_CHECK_NPE(7) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r7.o); + label16:; + XMLVM_SOURCE_POSITION("Collections.java", 1555) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label29; + XMLVM_SOURCE_POSITION("Collections.java", 1564) + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r7.o); + _r0.i = -_r0.i; + _r0.i = _r0.i - _r4.i; + goto label7; + label29:; + XMLVM_SOURCE_POSITION("Collections.java", 1557) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(9) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r9.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Comparator_compare___java_lang_Object_java_lang_Object])(_r9.o, _r1.o, _r8.o); + _r1.i = -_r1.i; + if (_r1.i > 0) goto label16; + XMLVM_SOURCE_POSITION("Collections.java", 1558) + if (_r1.i != 0) goto label47; + XMLVM_SOURCE_POSITION("Collections.java", 1559) + + + // Red class access removed: java.util.ListIterator::previousIndex + XMLVM_RED_CLASS_DEPENDENCY(); + goto label7; + label47:; + XMLVM_SOURCE_POSITION("Collections.java", 1561) + + + // Red class access removed: java.util.ListIterator::previousIndex + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.i = -_r0.i; + _r0.i = _r0.i - _r4.i; + goto label7; + label54:; + XMLVM_SOURCE_POSITION("Collections.java", 1567) + _r0.i = 0; + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r7.o); + _r2.i = _r1.i - _r4.i; + _r3.i = -1; + _r5 = _r3; + _r3 = _r0; + _r0 = _r5; + _r6 = _r1; + _r1 = _r2; + _r2 = _r6; + label68:; + XMLVM_SOURCE_POSITION("Collections.java", 1568) + if (_r3.i <= _r1.i) goto label77; + _r1.i = -_r2.i; + if (_r0.i >= 0) goto label106; + _r0 = _r4; + label74:; + _r0.i = _r1.i - _r0.i; + goto label7; + label77:; + XMLVM_SOURCE_POSITION("Collections.java", 1569) + _r0.i = _r3.i + _r1.i; + _r0.i = _r0.i >> 1; + XMLVM_SOURCE_POSITION("Collections.java", 1570) + XMLVM_CHECK_NPE(7) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r7.o, _r0.i); + XMLVM_CHECK_NPE(9) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r9.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Comparator_compare___java_lang_Object_java_lang_Object])(_r9.o, _r2.o, _r8.o); + _r2.i = -_r2.i; + if (_r2.i <= 0) goto label98; + XMLVM_SOURCE_POSITION("Collections.java", 1571) + _r3.i = _r0.i + 1; + _r5 = _r2; + _r2 = _r0; + _r0 = _r5; + goto label68; + label98:; + XMLVM_SOURCE_POSITION("Collections.java", 1572) + if (_r2.i == 0) goto label7; + XMLVM_SOURCE_POSITION("Collections.java", 1575) + _r1.i = _r0.i - _r4.i; + _r5 = _r2; + _r2 = _r0; + _r0 = _r5; + goto label68; + label106:; + _r0.i = 2; + goto label74; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_copy___java_util_List_java_util_List(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_copy___java_util_List_java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "copy", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r4.o = n1; + _r5.o = n2; + // "luni.38" + _r3.o = xmlvm_create_java_string_from_pool(810); + XMLVM_SOURCE_POSITION("Collections.java", 1599) + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r4.o); + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r5.o); + if (_r0.i >= _r1.i) goto label28; + XMLVM_SOURCE_POSITION("Collections.java", 1601) + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.38" + _r1.o = xmlvm_create_java_string_from_pool(810); + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r5.o); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r3.o, _r1.i); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_SOURCE_POSITION("Collections.java", 1603) + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_iterator__])(_r5.o); + XMLVM_SOURCE_POSITION("Collections.java", 1604) + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r4.o); + label36:; + XMLVM_SOURCE_POSITION("Collections.java", 1605) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label43; + XMLVM_SOURCE_POSITION("Collections.java", 1614) + XMLVM_EXIT_METHOD() + return; + label43:; + XMLVM_TRY_BEGIN(w5845aaab7b1c27) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 1607) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5845aaab7b1c27) + XMLVM_CATCH_END(w5845aaab7b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w5845aaab7b1c27) + XMLVM_SOURCE_POSITION("Collections.java", 1612) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + goto label36; + label54:; + XMLVM_SOURCE_POSITION("Collections.java", 1610) + java_lang_Thread* curThread_w5845aaab7b1c34 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5845aaab7b1c34->fields.java_lang_Thread.xmlvmException_; + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.38" + _r1.o = xmlvm_create_java_string_from_pool(810); + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r5.o); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r3.o, _r1.i); + + + // Red class access removed: java.lang.ArrayIndexOutOfBoundsException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_enumeration___java_util_Collection(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_enumeration___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.Collections", "enumeration", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1624) + XMLVM_SOURCE_POSITION("Collections.java", 1625) + + + // Red class access removed: java.util.Collections$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_fill___java_util_List_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_fill___java_util_List_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "fill", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 1649) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r2.o); + label4:; + XMLVM_SOURCE_POSITION("Collections.java", 1650) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r1.i != 0) goto label11; + XMLVM_SOURCE_POSITION("Collections.java", 1654) + XMLVM_EXIT_METHOD() + return; + label11:; + XMLVM_SOURCE_POSITION("Collections.java", 1651) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1652) + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_max___java_util_Collection(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_max___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.Collections", "max", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1669) + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r5.o); + XMLVM_SOURCE_POSITION("Collections.java", 1670) + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 1671) + XMLVM_CHECK_NPE(2) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r2.o); + if (_r3.i != 0) goto label15; + XMLVM_SOURCE_POSITION("Collections.java", 1677) + XMLVM_EXIT_METHOD() + return _r1.o; + label15:; + XMLVM_SOURCE_POSITION("Collections.java", 1672) + XMLVM_CHECK_NPE(2) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + XMLVM_SOURCE_POSITION("Collections.java", 1673) + _r0 = _r1; + _r0.o = _r0.o; + _r5 = _r0; + XMLVM_CHECK_NPE(5) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object])(_r5.o, _r3.o); + if (_r4.i >= 0) goto label8; + _r1 = _r3; + XMLVM_SOURCE_POSITION("Collections.java", 1674) + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_max___java_util_Collection_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_max___java_util_Collection_java_util_Comparator] + XMLVM_ENTER_METHOD("java.util.Collections", "max", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 1695) + if (_r5.o != JAVA_NULL) goto label7; + XMLVM_SOURCE_POSITION("Collections.java", 1697) + _r0.o = java_util_Collections_max___java_util_Collection(_r4.o); + label6:; + XMLVM_SOURCE_POSITION("Collections.java", 1709) + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + XMLVM_SOURCE_POSITION("Collections.java", 1701) + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r4.o); + XMLVM_SOURCE_POSITION("Collections.java", 1702) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + label15:; + XMLVM_SOURCE_POSITION("Collections.java", 1703) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label23; + _r0 = _r1; + goto label6; + label23:; + XMLVM_SOURCE_POSITION("Collections.java", 1704) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 1705) + XMLVM_CHECK_NPE(5) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Comparator_compare___java_lang_Object_java_lang_Object])(_r5.o, _r1.o, _r2.o); + if (_r3.i >= 0) goto label15; + _r1 = _r2; + XMLVM_SOURCE_POSITION("Collections.java", 1706) + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_min___java_util_Collection(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_min___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.Collections", "min", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1725) + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r5.o); + XMLVM_SOURCE_POSITION("Collections.java", 1726) + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 1727) + XMLVM_CHECK_NPE(2) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r2.o); + if (_r3.i != 0) goto label15; + XMLVM_SOURCE_POSITION("Collections.java", 1733) + XMLVM_EXIT_METHOD() + return _r1.o; + label15:; + XMLVM_SOURCE_POSITION("Collections.java", 1728) + XMLVM_CHECK_NPE(2) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + XMLVM_SOURCE_POSITION("Collections.java", 1729) + _r0 = _r1; + _r0.o = _r0.o; + _r5 = _r0; + XMLVM_CHECK_NPE(5) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object])(_r5.o, _r3.o); + if (_r4.i <= 0) goto label8; + _r1 = _r3; + XMLVM_SOURCE_POSITION("Collections.java", 1730) + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_min___java_util_Collection_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_min___java_util_Collection_java_util_Comparator] + XMLVM_ENTER_METHOD("java.util.Collections", "min", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 1751) + if (_r5.o != JAVA_NULL) goto label7; + XMLVM_SOURCE_POSITION("Collections.java", 1753) + _r0.o = java_util_Collections_min___java_util_Collection(_r4.o); + label6:; + XMLVM_SOURCE_POSITION("Collections.java", 1765) + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + XMLVM_SOURCE_POSITION("Collections.java", 1757) + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r4.o); + XMLVM_SOURCE_POSITION("Collections.java", 1758) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + label15:; + XMLVM_SOURCE_POSITION("Collections.java", 1759) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label23; + _r0 = _r1; + goto label6; + label23:; + XMLVM_SOURCE_POSITION("Collections.java", 1760) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 1761) + XMLVM_CHECK_NPE(5) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Comparator_compare___java_lang_Object_java_lang_Object])(_r5.o, _r1.o, _r2.o); + if (_r3.i <= 0) goto label15; + _r1 = _r2; + XMLVM_SOURCE_POSITION("Collections.java", 1762) + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_nCopies___int_java_lang_Object(JAVA_INT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_nCopies___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "nCopies", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.i = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 1781) + + + // Red class access removed: java.util.Collections$CopiesList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$CopiesList:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_reverse___java_util_List(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_reverse___java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "reverse", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1795) + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r6.o); + XMLVM_SOURCE_POSITION("Collections.java", 1796) + XMLVM_CHECK_NPE(6) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r6.o); + XMLVM_SOURCE_POSITION("Collections.java", 1798) + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator___int])(_r6.o, _r0.i); + XMLVM_SOURCE_POSITION("Collections.java", 1799) + _r3.i = 0; + label13:; + _r4.i = _r0.i / 2; + if (_r3.i < _r4.i) goto label18; + XMLVM_SOURCE_POSITION("Collections.java", 1805) + XMLVM_EXIT_METHOD() + return; + label18:; + XMLVM_SOURCE_POSITION("Collections.java", 1800) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1801) + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1802) + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1803) + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + _r3.i = _r3.i + 1; + goto label13; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_reverseOrder__() +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_reverseOrder__] + XMLVM_ENTER_METHOD("java.util.Collections", "reverseOrder", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Collections.java", 1818) + + + // Red class access removed: java.util.Collections$ReverseComparator::access$0 + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_reverseOrder___java_util_Comparator(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_reverseOrder___java_util_Comparator] + XMLVM_ENTER_METHOD("java.util.Collections", "reverseOrder", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1836) + if (_r1.o != JAVA_NULL) goto label7; + XMLVM_SOURCE_POSITION("Collections.java", 1837) + _r0.o = java_util_Collections_reverseOrder__(); + label6:; + XMLVM_SOURCE_POSITION("Collections.java", 1842) + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + XMLVM_SOURCE_POSITION("Collections.java", 1839) + + + // Red class access removed: java.util.Collections$ReverseComparatorWithComparator::instance-of + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i == 0) goto label18; + XMLVM_SOURCE_POSITION("Collections.java", 1840) + + + // Red class access removed: java.util.Collections$ReverseComparatorWithComparator::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$ReverseComparatorWithComparator::access$0 + XMLVM_RED_CLASS_DEPENDENCY(); + goto label6; + label18:; + + + // Red class access removed: java.util.Collections$ReverseComparatorWithComparator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$ReverseComparatorWithComparator:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label6; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_shuffle___java_util_List(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_shuffle___java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "shuffle", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1855) + + + // Red class access removed: java.util.Random::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Random:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_util_Collections_shuffle___java_util_List_java_util_Random(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 1856) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_shuffle___java_util_List_java_util_Random(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_shuffle___java_util_List_java_util_Random] + XMLVM_ENTER_METHOD("java.util.Collections", "shuffle", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = n1; + _r6.o = n2; + _r2.i = 1; + XMLVM_SOURCE_POSITION("Collections.java", 1871) + XMLVM_SOURCE_POSITION("Collections.java", 1873) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r0.i = XMLVM_ISA(_r5.o, __CLASS_java_util_RandomAccess); + if (_r0.i == 0) goto label33; + XMLVM_SOURCE_POSITION("Collections.java", 1874) + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r5.o); + _r0.i = _r0.i - _r2.i; + label10:; + if (_r0.i > 0) goto label13; + label12:; + XMLVM_SOURCE_POSITION("Collections.java", 1894) + XMLVM_EXIT_METHOD() + return; + label13:; + XMLVM_SOURCE_POSITION("Collections.java", 1875) + _r1.i = _r0.i + 1; + + + // Red class access removed: java.util.Random::nextInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1876) + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r5.o, _r1.i); + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object])(_r5.o, _r0.i, _r2.o); + XMLVM_CHECK_NPE(5) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object])(_r5.o, _r1.i, _r2.o); + _r0.i = _r0.i + -1; + goto label10; + label33:; + XMLVM_SOURCE_POSITION("Collections.java", 1879) + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_toArray__])(_r5.o); + XMLVM_SOURCE_POSITION("Collections.java", 1880) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r1.i = _r1.i - _r2.i; + label39:; + if (_r1.i > 0) goto label64; + XMLVM_SOURCE_POSITION("Collections.java", 1887) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Collections.java", 1888) + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r5.o); + label46:; + XMLVM_SOURCE_POSITION("Collections.java", 1889) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r3.i == 0) goto label12; + XMLVM_SOURCE_POSITION("Collections.java", 1890) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1891) + _r3.i = _r1.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + _r1 = _r3; + goto label46; + label64:; + XMLVM_SOURCE_POSITION("Collections.java", 1881) + _r2.i = _r1.i + 1; + + + // Red class access removed: java.util.Random::nextInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1882) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("Collections.java", 1883) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.o; + XMLVM_SOURCE_POSITION("Collections.java", 1884) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.o; + _r1.i = _r1.i + -1; + goto label39; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_singleton___java_lang_Object(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_singleton___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "singleton", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1905) + + + // Red class access removed: java.util.Collections$SingletonSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SingletonSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_singletonList___java_lang_Object(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_singletonList___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "singletonList", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1917) + + + // Red class access removed: java.util.Collections$SingletonList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SingletonList:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_singletonMap___java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_singletonMap___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "singletonMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 1931) + + + // Red class access removed: java.util.Collections$SingletonMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SingletonMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_sort___java_util_List(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_sort___java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "sort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 1946) + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_toArray__])(_r4.o); + XMLVM_SOURCE_POSITION("Collections.java", 1947) + + + // Red class access removed: java.util.Arrays::sort + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1948) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Collections.java", 1949) + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r4.o); + label12:; + XMLVM_SOURCE_POSITION("Collections.java", 1950) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r3.i != 0) goto label19; + XMLVM_SOURCE_POSITION("Collections.java", 1954) + XMLVM_EXIT_METHOD() + return; + label19:; + XMLVM_SOURCE_POSITION("Collections.java", 1951) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1952) + _r3.i = _r1.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r4.o = _r4.o; + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + _r1 = _r3; + goto label12; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_sort___java_util_List_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_sort___java_util_List_java_util_Comparator] + XMLVM_ENTER_METHOD("java.util.Collections", "sort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 1970) + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r4.o); + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY])(_r4.o, _r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 1971) + + + // Red class access removed: java.util.Arrays::sort + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1972) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Collections.java", 1973) + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator__])(_r4.o); + label18:; + XMLVM_SOURCE_POSITION("Collections.java", 1974) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r3.i != 0) goto label25; + XMLVM_SOURCE_POSITION("Collections.java", 1978) + XMLVM_EXIT_METHOD() + return; + label25:; + XMLVM_SOURCE_POSITION("Collections.java", 1975) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 1976) + _r3.i = _r1.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + + + // Red class access removed: java.util.ListIterator::set + XMLVM_RED_CLASS_DEPENDENCY(); + _r1 = _r3; + goto label18; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_swap___java_util_List_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_swap___java_util_List_int_int] + XMLVM_ENTER_METHOD("java.util.Collections", "swap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("Collections.java", 1998) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 1999) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2001) + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r1.o); + XMLVM_SOURCE_POSITION("Collections.java", 2002) + if (_r2.i < 0) goto label20; + if (_r2.i >= _r0.i) goto label20; + if (_r3.i < 0) goto label20; + if (_r3.i < _r0.i) goto label26; + label20:; + XMLVM_SOURCE_POSITION("Collections.java", 2003) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label26:; + XMLVM_SOURCE_POSITION("Collections.java", 2005) + if (_r2.i != _r3.i) goto label29; + label28:; + XMLVM_SOURCE_POSITION("Collections.java", 2010) + XMLVM_EXIT_METHOD() + return; + label29:; + XMLVM_SOURCE_POSITION("Collections.java", 2009) + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r1.o, _r3.i); + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object])(_r1.o, _r2.i, _r0.o); + XMLVM_CHECK_NPE(1) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object])(_r1.o, _r3.i, _r0.o); + goto label28; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_replaceAll___java_util_List_java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_replaceAll___java_util_List_java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "replaceAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = n1; + _r4.o = n2; + _r5.o = n3; + XMLVM_SOURCE_POSITION("Collections.java", 2031) + _r0.i = 0; + label1:; + XMLVM_SOURCE_POSITION("Collections.java", 2033) + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object])(_r3.o, _r4.o); + _r2.i = -1; + if (_r1.i > _r2.i) goto label9; + XMLVM_SOURCE_POSITION("Collections.java", 2037) + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_SOURCE_POSITION("Collections.java", 2034) + _r0.i = 1; + XMLVM_SOURCE_POSITION("Collections.java", 2035) + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object])(_r3.o, _r1.i, _r5.o); + goto label1; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_rotate___java_util_List_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_rotate___java_util_List_int] + XMLVM_ENTER_METHOD("java.util.Collections", "rotate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = n1; + _r7.i = n2; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Collections.java", 2055) + XMLVM_SOURCE_POSITION("Collections.java", 2056) + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r6.o); + XMLVM_SOURCE_POSITION("Collections.java", 2059) + if (_r0.i != 0) goto label8; + label7:; + XMLVM_SOURCE_POSITION("Collections.java", 2096) + XMLVM_EXIT_METHOD() + return; + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2065) + if (_r7.i <= 0) goto label48; + XMLVM_SOURCE_POSITION("Collections.java", 2066) + _r1.i = _r7.i % _r0.i; + label12:; + XMLVM_SOURCE_POSITION("Collections.java", 2071) + if (_r1.i == 0) goto label7; + if (_r1.i == _r0.i) goto label7; + XMLVM_SOURCE_POSITION("Collections.java", 2075) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r2.i = XMLVM_ISA(_r6.o, __CLASS_java_util_RandomAccess); + if (_r2.i == 0) goto label55; + XMLVM_SOURCE_POSITION("Collections.java", 2078) + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r6.o, _r3.i); + _r4 = _r3; + _r5 = _r2; + _r2 = _r3; + label27:; + XMLVM_SOURCE_POSITION("Collections.java", 2080) + if (_r2.i >= _r0.i) goto label7; + XMLVM_SOURCE_POSITION("Collections.java", 2081) + _r4.i = _r4.i + _r1.i; + _r4.i = _r4.i % _r0.i; + XMLVM_SOURCE_POSITION("Collections.java", 2082) + XMLVM_CHECK_NPE(6) + _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object])(_r6.o, _r4.i, _r5.o); + XMLVM_SOURCE_POSITION("Collections.java", 2083) + if (_r4.i != _r3.i) goto label45; + XMLVM_SOURCE_POSITION("Collections.java", 2084) + _r3.i = _r3.i + 1; + XMLVM_SOURCE_POSITION("Collections.java", 2085) + XMLVM_CHECK_NPE(6) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r6.o, _r3.i); + _r5 = _r4; + _r4 = _r3; + label45:; + _r2.i = _r2.i + 1; + goto label27; + label48:; + XMLVM_SOURCE_POSITION("Collections.java", 2068) + _r1.i = _r7.i % _r0.i; + _r1.i = _r1.i * -1; + _r1.i = _r0.i - _r1.i; + goto label12; + label55:; + XMLVM_SOURCE_POSITION("Collections.java", 2089) + _r1.i = _r0.i - _r1.i; + _r1.i = _r1.i % _r0.i; + XMLVM_SOURCE_POSITION("Collections.java", 2090) + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_subList___int_int])(_r6.o, _r3.i, _r1.i); + XMLVM_SOURCE_POSITION("Collections.java", 2091) + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_subList___int_int])(_r6.o, _r1.i, _r0.i); + XMLVM_SOURCE_POSITION("Collections.java", 2092) + java_util_Collections_reverse___java_util_List(_r2.o); + XMLVM_SOURCE_POSITION("Collections.java", 2093) + java_util_Collections_reverse___java_util_List(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 2094) + java_util_Collections_reverse___java_util_List(_r6.o); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_indexOfSubList___java_util_List_java_util_List(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_indexOfSubList___java_util_List_java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "indexOfSubList", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + _r11.o = n1; + _r12.o = n2; + _r10.i = 1; + _r9.i = 0; + _r8.i = -1; + XMLVM_SOURCE_POSITION("Collections.java", 2112) + XMLVM_CHECK_NPE(11) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r11.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r11.o); + XMLVM_SOURCE_POSITION("Collections.java", 2113) + XMLVM_CHECK_NPE(12) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r12.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r12.o); + XMLVM_SOURCE_POSITION("Collections.java", 2115) + if (_r1.i <= _r0.i) goto label15; + _r0 = _r8; + label14:; + XMLVM_SOURCE_POSITION("Collections.java", 2116) + XMLVM_SOURCE_POSITION("Collections.java", 2162) + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_SOURCE_POSITION("Collections.java", 2119) + if (_r1.i != 0) goto label19; + _r0 = _r9; + XMLVM_SOURCE_POSITION("Collections.java", 2120) + goto label14; + label19:; + XMLVM_SOURCE_POSITION("Collections.java", 2124) + XMLVM_CHECK_NPE(12) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r12.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r12.o, _r9.i); + XMLVM_SOURCE_POSITION("Collections.java", 2125) + XMLVM_CHECK_NPE(11) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r11.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object])(_r11.o, _r2.o); + XMLVM_SOURCE_POSITION("Collections.java", 2126) + if (_r3.i != _r8.i) goto label70; + _r0 = _r8; + XMLVM_SOURCE_POSITION("Collections.java", 2127) + goto label14; + label31:; + XMLVM_SOURCE_POSITION("Collections.java", 2131) + XMLVM_CHECK_NPE(11) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r11.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator___int])(_r11.o, _r3.i); + XMLVM_SOURCE_POSITION("Collections.java", 2133) + if (_r2.o != JAVA_NULL) goto label58; + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r5.o != JAVA_NULL) goto label68; + label43:; + XMLVM_SOURCE_POSITION("Collections.java", 2138) + XMLVM_CHECK_NPE(12) + _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r12.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator___int])(_r12.o, _r10.i); + label47:; + XMLVM_SOURCE_POSITION("Collections.java", 2140) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.i != 0) goto label78; + _r4 = _r9; + label54:; + XMLVM_SOURCE_POSITION("Collections.java", 2153) + if (_r4.i != 0) goto label68; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Collections.java", 2154) + goto label14; + label58:; + XMLVM_SOURCE_POSITION("Collections.java", 2134) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r5.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[1])(_r2.o, _r5.o); + if (_r5.i != 0) goto label43; + label68:; + XMLVM_SOURCE_POSITION("Collections.java", 2160) + _r3.i = _r3.i + 1; + label70:; + XMLVM_SOURCE_POSITION("Collections.java", 2130) + if (_r3.i >= _r0.i) goto label76; + _r4.i = _r0.i - _r3.i; + if (_r4.i >= _r1.i) goto label31; + label76:; + _r0 = _r8; + goto label14; + label78:; + XMLVM_SOURCE_POSITION("Collections.java", 2141) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 2142) + + + // Red class access removed: java.util.ListIterator::hasNext + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r7.i != 0) goto label90; + _r0 = _r8; + XMLVM_SOURCE_POSITION("Collections.java", 2143) + goto label14; + label90:; + XMLVM_SOURCE_POSITION("Collections.java", 2145) + if (_r6.o != JAVA_NULL) goto label100; + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.o == JAVA_NULL) goto label47; + label98:; + _r4 = _r10; + XMLVM_SOURCE_POSITION("Collections.java", 2148) + goto label54; + label100:; + XMLVM_SOURCE_POSITION("Collections.java", 2146) + + + // Red class access removed: java.util.ListIterator::next + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(6) + _r6.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r6.o)->tib->vtable[1])(_r6.o, _r7.o); + if (_r6.i != 0) goto label47; + goto label98; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_lastIndexOfSubList___java_util_List_java_util_List(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_lastIndexOfSubList___java_util_List_java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "lastIndexOfSubList", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.o = n1; + _r11.o = n2; + _r9.i = 1; + _r8.i = -1; + XMLVM_SOURCE_POSITION("Collections.java", 2179) + XMLVM_CHECK_NPE(11) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r11.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r11.o); + XMLVM_SOURCE_POSITION("Collections.java", 2180) + XMLVM_CHECK_NPE(10) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r10.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r10.o); + XMLVM_SOURCE_POSITION("Collections.java", 2182) + if (_r0.i <= _r1.i) goto label14; + _r0 = _r8; + label13:; + XMLVM_SOURCE_POSITION("Collections.java", 2183) + XMLVM_SOURCE_POSITION("Collections.java", 2226) + XMLVM_EXIT_METHOD() + return _r0.i; + label14:; + XMLVM_SOURCE_POSITION("Collections.java", 2186) + if (_r0.i != 0) goto label18; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Collections.java", 2187) + goto label13; + label18:; + XMLVM_SOURCE_POSITION("Collections.java", 2191) + _r1.i = _r0.i - _r9.i; + XMLVM_CHECK_NPE(11) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r11.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_get___int])(_r11.o, _r1.i); + XMLVM_SOURCE_POSITION("Collections.java", 2192) + XMLVM_CHECK_NPE(10) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r10.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object])(_r10.o, _r1.o); + label28:; + XMLVM_SOURCE_POSITION("Collections.java", 2194) + if (_r2.i <= _r8.i) goto label34; + _r3.i = _r2.i + 1; + if (_r3.i >= _r0.i) goto label36; + label34:; + _r0 = _r8; + goto label13; + label36:; + XMLVM_SOURCE_POSITION("Collections.java", 2195) + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(10) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r10.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator___int])(_r10.o, _r3.i); + XMLVM_SOURCE_POSITION("Collections.java", 2197) + if (_r1.o != JAVA_NULL) goto label71; + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r4.o != JAVA_NULL) goto label81; + label50:; + XMLVM_SOURCE_POSITION("Collections.java", 2202) + _r4.i = _r0.i - _r9.i; + XMLVM_CHECK_NPE(11) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) *(((java_lang_Object*)_r11.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_listIterator___int])(_r11.o, _r4.i); + XMLVM_SOURCE_POSITION("Collections.java", 2203) + _r5.i = 0; + label57:; + XMLVM_SOURCE_POSITION("Collections.java", 2204) + + + // Red class access removed: java.util.ListIterator::hasPrevious + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.i != 0) goto label84; + _r4 = _r5; + label64:; + XMLVM_SOURCE_POSITION("Collections.java", 2217) + if (_r4.i != 0) goto label81; + XMLVM_SOURCE_POSITION("Collections.java", 2218) + + + // Red class access removed: java.util.ListIterator::nextIndex + XMLVM_RED_CLASS_DEPENDENCY(); + goto label13; + label71:; + XMLVM_SOURCE_POSITION("Collections.java", 2198) + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r4.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[1])(_r1.o, _r4.o); + if (_r4.i != 0) goto label50; + label81:; + XMLVM_SOURCE_POSITION("Collections.java", 2224) + _r2.i = _r2.i + -1; + goto label28; + label84:; + XMLVM_SOURCE_POSITION("Collections.java", 2205) + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 2206) + + + // Red class access removed: java.util.ListIterator::hasPrevious + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r7.i != 0) goto label96; + _r0 = _r8; + XMLVM_SOURCE_POSITION("Collections.java", 2207) + goto label13; + label96:; + XMLVM_SOURCE_POSITION("Collections.java", 2209) + if (_r6.o != JAVA_NULL) goto label106; + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r6.o == JAVA_NULL) goto label57; + label104:; + _r4 = _r9; + XMLVM_SOURCE_POSITION("Collections.java", 2212) + goto label64; + label106:; + XMLVM_SOURCE_POSITION("Collections.java", 2210) + + + // Red class access removed: java.util.ListIterator::previous + XMLVM_RED_CLASS_DEPENDENCY(); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(6) + _r6.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r6.o)->tib->vtable[1])(_r6.o, _r7.o); + if (_r6.i != 0) goto label57; + goto label104; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_list___java_util_Enumeration(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_list___java_util_Enumeration] + XMLVM_ENTER_METHOD("java.util.Collections", "list", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2239) + _r0.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(0) + java_util_ArrayList___INIT___(_r0.o); + label5:; + XMLVM_SOURCE_POSITION("Collections.java", 2240) + XMLVM_CHECK_NPE(2) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r2.o); + if (_r1.i != 0) goto label12; + XMLVM_SOURCE_POSITION("Collections.java", 2243) + XMLVM_EXIT_METHOD() + return _r0.o; + label12:; + XMLVM_SOURCE_POSITION("Collections.java", 2241) + XMLVM_CHECK_NPE(2) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r2.o); + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(0) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r0.o)->tib->vtable[7])(_r0.o, _r1.o); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_synchronizedCollection___java_util_Collection(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_synchronizedCollection___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.Collections", "synchronizedCollection", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2256) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2257) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2259) + + + // Red class access removed: java.util.Collections$SynchronizedCollection::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedCollection:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_synchronizedList___java_util_List(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_synchronizedList___java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "synchronizedList", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2271) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2272) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2274) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r0.i = XMLVM_ISA(_r1.o, __CLASS_java_util_RandomAccess); + if (_r0.i == 0) goto label18; + XMLVM_SOURCE_POSITION("Collections.java", 2275) + + + // Red class access removed: java.util.Collections$SynchronizedRandomAccessList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedRandomAccessList:: + XMLVM_RED_CLASS_DEPENDENCY(); + label17:; + XMLVM_SOURCE_POSITION("Collections.java", 2277) + XMLVM_EXIT_METHOD() + return _r0.o; + label18:; + + + // Red class access removed: java.util.Collections$SynchronizedList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedList:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_synchronizedMap___java_util_Map(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_synchronizedMap___java_util_Map] + XMLVM_ENTER_METHOD("java.util.Collections", "synchronizedMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2289) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2290) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2292) + _r0.o = __NEW_java_util_Collections_SynchronizedMap(); + XMLVM_CHECK_NPE(0) + java_util_Collections_SynchronizedMap___INIT____java_util_Map(_r0.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_synchronizedSet___java_util_Set(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_synchronizedSet___java_util_Set] + XMLVM_ENTER_METHOD("java.util.Collections", "synchronizedSet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2304) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2305) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2307) + + + // Red class access removed: java.util.Collections$SynchronizedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_synchronizedSortedMap___java_util_SortedMap(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_synchronizedSortedMap___java_util_SortedMap] + XMLVM_ENTER_METHOD("java.util.Collections", "synchronizedSortedMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2320) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2321) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2323) + + + // Red class access removed: java.util.Collections$SynchronizedSortedMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedSortedMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_synchronizedSortedSet___java_util_SortedSet(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_synchronizedSortedSet___java_util_SortedSet] + XMLVM_ENTER_METHOD("java.util.Collections", "synchronizedSortedSet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2335) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2336) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2338) + + + // Red class access removed: java.util.Collections$SynchronizedSortedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedSortedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_unmodifiableCollection___java_util_Collection(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_unmodifiableCollection___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.Collections", "unmodifiableCollection", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2353) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2354) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2356) + + + // Red class access removed: java.util.Collections$UnmodifiableCollection::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$UnmodifiableCollection:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_unmodifiableList___java_util_List(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_unmodifiableList___java_util_List] + XMLVM_ENTER_METHOD("java.util.Collections", "unmodifiableList", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2370) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2371) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2373) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r0.i = XMLVM_ISA(_r1.o, __CLASS_java_util_RandomAccess); + if (_r0.i == 0) goto label18; + XMLVM_SOURCE_POSITION("Collections.java", 2374) + + + // Red class access removed: java.util.Collections$UnmodifiableRandomAccessList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$UnmodifiableRandomAccessList:: + XMLVM_RED_CLASS_DEPENDENCY(); + label17:; + XMLVM_SOURCE_POSITION("Collections.java", 2376) + XMLVM_EXIT_METHOD() + return _r0.o; + label18:; + + + // Red class access removed: java.util.Collections$UnmodifiableList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$UnmodifiableList:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_unmodifiableMap___java_util_Map(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_unmodifiableMap___java_util_Map] + XMLVM_ENTER_METHOD("java.util.Collections", "unmodifiableMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2391) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2392) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2394) + + + // Red class access removed: java.util.Collections$UnmodifiableMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$UnmodifiableMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_unmodifiableSet___java_util_Set(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_unmodifiableSet___java_util_Set] + XMLVM_ENTER_METHOD("java.util.Collections", "unmodifiableSet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2408) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2409) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2411) + + + // Red class access removed: java.util.Collections$UnmodifiableSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$UnmodifiableSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_unmodifiableSortedMap___java_util_SortedMap(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_unmodifiableSortedMap___java_util_SortedMap] + XMLVM_ENTER_METHOD("java.util.Collections", "unmodifiableSortedMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2426) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2427) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2429) + + + // Red class access removed: java.util.Collections$UnmodifiableSortedMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$UnmodifiableSortedMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_unmodifiableSortedSet___java_util_SortedSet(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_unmodifiableSortedSet___java_util_SortedSet] + XMLVM_ENTER_METHOD("java.util.Collections", "unmodifiableSortedSet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2442) + if (_r1.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Collections.java", 2443) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2445) + + + // Red class access removed: java.util.Collections$UnmodifiableSortedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$UnmodifiableSortedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_frequency___java_util_Collection_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_frequency___java_util_Collection_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections", "frequency", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.o = n2; + _r1.i = 0; + XMLVM_SOURCE_POSITION("Collections.java", 2463) + if (_r3.o != JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("Collections.java", 2464) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label9:; + XMLVM_SOURCE_POSITION("Collections.java", 2466) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__])(_r3.o); + if (_r0.i == 0) goto label17; + _r0 = _r1; + label16:; + XMLVM_SOURCE_POSITION("Collections.java", 2467) + XMLVM_SOURCE_POSITION("Collections.java", 2477) + XMLVM_EXIT_METHOD() + return _r0.i; + label17:; + XMLVM_SOURCE_POSITION("Collections.java", 2470) + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r3.o); + label21:; + XMLVM_SOURCE_POSITION("Collections.java", 2471) + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r2.i != 0) goto label29; + _r0 = _r1; + goto label16; + label29:; + XMLVM_SOURCE_POSITION("Collections.java", 2472) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 2473) + if (_r4.o != JAVA_NULL) goto label40; + if (_r2.o != JAVA_NULL) goto label21; + label37:; + XMLVM_SOURCE_POSITION("Collections.java", 2474) + _r1.i = _r1.i + 1; + goto label21; + label40:; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r2.o); + if (_r2.i == 0) goto label21; + goto label37; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_emptyList__() +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_emptyList__] + XMLVM_ENTER_METHOD("java.util.Collections", "emptyList", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Collections.java", 2489) + _r0.o = java_util_Collections_GET_EMPTY_LIST(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_emptySet__() +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_emptySet__] + XMLVM_ENTER_METHOD("java.util.Collections", "emptySet", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Collections.java", 2501) + _r0.o = java_util_Collections_GET_EMPTY_SET(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_emptyMap__() +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_emptyMap__] + XMLVM_ENTER_METHOD("java.util.Collections", "emptyMap", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Collections.java", 2513) + _r0.o = java_util_Collections_GET_EMPTY_MAP(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_checkedCollection___java_util_Collection_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_checkedCollection___java_util_Collection_java_lang_Class] + XMLVM_ENTER_METHOD("java.util.Collections", "checkedCollection", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 2530) + + + // Red class access removed: java.util.Collections$CheckedCollection::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$CheckedCollection:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_checkedMap___java_util_Map_java_lang_Class_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_checkedMap___java_util_Map_java_lang_Class_java_lang_Class] + XMLVM_ENTER_METHOD("java.util.Collections", "checkedMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r6.o = n1; + _r7.o = n2; + _r8.o = n3; + _r4.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Collections.java", 2549) + + + // Red class access removed: java.util.Collections$CheckedMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1 = _r6; + _r2 = _r7; + _r3 = _r8; + _r5 = _r4; + + + // Red class access removed: java.util.Collections$CheckedMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_checkedList___java_util_List_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_checkedList___java_util_List_java_lang_Class] + XMLVM_ENTER_METHOD("java.util.Collections", "checkedList", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 2565) + XMLVM_CLASS_INIT(java_util_RandomAccess) + _r0.i = XMLVM_ISA(_r1.o, __CLASS_java_util_RandomAccess); + if (_r0.i == 0) goto label10; + XMLVM_SOURCE_POSITION("Collections.java", 2566) + + + // Red class access removed: java.util.Collections$CheckedRandomAccessList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$CheckedRandomAccessList:: + XMLVM_RED_CLASS_DEPENDENCY(); + label9:; + XMLVM_SOURCE_POSITION("Collections.java", 2568) + XMLVM_EXIT_METHOD() + return _r0.o; + label10:; + + + // Red class access removed: java.util.Collections$CheckedList::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$CheckedList:: + XMLVM_RED_CLASS_DEPENDENCY(); + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_checkedSet___java_util_Set_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_checkedSet___java_util_Set_java_lang_Class] + XMLVM_ENTER_METHOD("java.util.Collections", "checkedSet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 2584) + + + // Red class access removed: java.util.Collections$CheckedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$CheckedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_checkedSortedMap___java_util_SortedMap_java_lang_Class_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_checkedSortedMap___java_util_SortedMap_java_lang_Class_java_lang_Class] + XMLVM_ENTER_METHOD("java.util.Collections", "checkedSortedMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + XMLVM_SOURCE_POSITION("Collections.java", 2603) + + + // Red class access removed: java.util.Collections$CheckedSortedMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$CheckedSortedMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_checkedSortedSet___java_util_SortedSet_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_checkedSortedSet___java_util_SortedSet_java_lang_Class] + XMLVM_ENTER_METHOD("java.util.Collections", "checkedSortedSet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 2620) + + + // Red class access removed: java.util.Collections$CheckedSortedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$CheckedSortedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_addAll___java_util_Collection_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_addAll___java_util_Collection_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.util.Collections", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.o = n2; + _r0.i = 0; + XMLVM_SOURCE_POSITION("Collections.java", 2642) + _r1 = _r0; + label2:; + XMLVM_SOURCE_POSITION("Collections.java", 2643) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r0.i < _r2.i) goto label6; + XMLVM_SOURCE_POSITION("Collections.java", 2646) + XMLVM_EXIT_METHOD() + return _r1.i; + label6:; + XMLVM_SOURCE_POSITION("Collections.java", 2644) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(3) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object])(_r3.o, _r2.o); + _r1.i = _r1.i | _r2.i; + _r0.i = _r0.i + 1; + goto label2; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_disjoint___java_util_Collection_java_util_Collection(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_disjoint___java_util_Collection_java_util_Collection] + XMLVM_ENTER_METHOD("java.util.Collections", "disjoint", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 2662) + XMLVM_CLASS_INIT(java_util_Set) + _r0.i = XMLVM_ISA(_r3.o, __CLASS_java_util_Set); + if (_r0.i == 0) goto label8; + XMLVM_CLASS_INIT(java_util_Set) + _r0.i = XMLVM_ISA(_r4.o, __CLASS_java_util_Set); + if (_r0.i == 0) goto label18; + label8:; + XMLVM_SOURCE_POSITION("Collections.java", 2663) + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_size__])(_r4.o); + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_size__])(_r3.o); + if (_r0.i <= _r1.i) goto label44; + label18:; + _r0 = _r3; + _r1 = _r4; + label20:; + XMLVM_SOURCE_POSITION("Collections.java", 2666) + XMLVM_SOURCE_POSITION("Collections.java", 2668) + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r1.o); + label24:; + XMLVM_SOURCE_POSITION("Collections.java", 2669) + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r2.i != 0) goto label32; + XMLVM_SOURCE_POSITION("Collections.java", 2674) + _r0.i = 1; + label31:; + XMLVM_EXIT_METHOD() + return _r0.i; + label32:; + XMLVM_SOURCE_POSITION("Collections.java", 2670) + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object])(_r0.o, _r2.o); + if (_r2.i == 0) goto label24; + XMLVM_SOURCE_POSITION("Collections.java", 2671) + _r0.i = 0; + goto label31; + label44:; + _r0 = _r4; + _r1 = _r3; + goto label20; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_checkType___java_lang_Object_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_checkType___java_lang_Object_java_lang_Class] + XMLVM_ENTER_METHOD("java.util.Collections", "checkType", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 2688) + if (_r3.o == JAVA_NULL) goto label24; + XMLVM_CHECK_NPE(4) + _r0.i = java_lang_Class_isInstance___java_lang_Object(_r4.o, _r3.o); + if (_r0.i != 0) goto label24; + XMLVM_SOURCE_POSITION("Collections.java", 2691) + + + // Red class access removed: java.lang.ClassCastException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Collections.java", 2692) + // "luni.05" + _r1.o = xmlvm_create_java_string_from_pool(811); + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(3) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[3])(_r3.o); + _r1.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r4.o); + + + // Red class access removed: java.lang.ClassCastException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("Collections.java", 2694) + XMLVM_EXIT_METHOD() + return _r3.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_newSetFromMap___java_util_Map(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_newSetFromMap___java_util_Map] + XMLVM_ENTER_METHOD("java.util.Collections", "newSetFromMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2711) + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__])(_r1.o); + if (_r0.i == 0) goto label12; + XMLVM_SOURCE_POSITION("Collections.java", 2712) + + + // Red class access removed: java.util.Collections$SetFromMap::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SetFromMap:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + label12:; + XMLVM_SOURCE_POSITION("Collections.java", 2714) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_asLifoQueue___java_util_Deque(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Collections) + //XMLVM_BEGIN_WRAPPER[java_util_Collections_asLifoQueue___java_util_Deque] + XMLVM_ENTER_METHOD("java.util.Collections", "asLifoQueue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 2729) + + + // Red class access removed: java.util.Collections$AsLIFOQueue::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$AsLIFOQueue:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Collections.h b/tests/nbody-java/java_util_Collections.h new file mode 100644 index 0000000000000..d3ea99d13ae90 --- /dev/null +++ b/tests/nbody-java/java_util_Collections.h @@ -0,0 +1,195 @@ +#ifndef __JAVA_UTIL_COLLECTIONS__ +#define __JAVA_UTIL_COLLECTIONS__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Collections 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Comparable +#define XMLVM_FORWARD_DECL_java_lang_Comparable +XMLVM_FORWARD_DECL(java_lang_Comparable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_ArrayList +#define XMLVM_FORWARD_DECL_java_util_ArrayList +XMLVM_FORWARD_DECL(java_util_ArrayList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_EmptyList +#define XMLVM_FORWARD_DECL_java_util_Collections_EmptyList +XMLVM_FORWARD_DECL(java_util_Collections_EmptyList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_EmptyMap +#define XMLVM_FORWARD_DECL_java_util_Collections_EmptyMap +XMLVM_FORWARD_DECL(java_util_Collections_EmptyMap) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_EmptySet +#define XMLVM_FORWARD_DECL_java_util_Collections_EmptySet +XMLVM_FORWARD_DECL(java_util_Collections_EmptySet) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_SynchronizedMap +#define XMLVM_FORWARD_DECL_java_util_Collections_SynchronizedMap +XMLVM_FORWARD_DECL(java_util_Collections_SynchronizedMap) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Comparator +#define XMLVM_FORWARD_DECL_java_util_Comparator +XMLVM_FORWARD_DECL(java_util_Comparator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Deque +#define XMLVM_FORWARD_DECL_java_util_Deque +XMLVM_FORWARD_DECL(java_util_Deque) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_List +#define XMLVM_FORWARD_DECL_java_util_List +XMLVM_FORWARD_DECL(java_util_List) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map +#define XMLVM_FORWARD_DECL_java_util_Map +XMLVM_FORWARD_DECL(java_util_Map) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Queue +#define XMLVM_FORWARD_DECL_java_util_Queue +XMLVM_FORWARD_DECL(java_util_Queue) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_RandomAccess +#define XMLVM_FORWARD_DECL_java_util_RandomAccess +XMLVM_FORWARD_DECL(java_util_RandomAccess) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.util.Collections +XMLVM_DEFINE_CLASS(java_util_Collections, 6, XMLVM_ITABLE_SIZE_java_util_Collections) + +extern JAVA_OBJECT __CLASS_java_util_Collections; +extern JAVA_OBJECT __CLASS_java_util_Collections_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Collections \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections \ + } java_util_Collections + +struct java_util_Collections { + __TIB_DEFINITION_java_util_Collections* tib; + struct { + __INSTANCE_FIELDS_java_util_Collections; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Collections +#define XMLVM_FORWARD_DECL_java_util_Collections +typedef struct java_util_Collections java_util_Collections; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Collections 6 + +void __INIT_java_util_Collections(); +void __INIT_IMPL_java_util_Collections(); +void __DELETE_java_util_Collections(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Collections(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Collections(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections(); +JAVA_OBJECT java_util_Collections_GET_EMPTY_LIST(); +void java_util_Collections_PUT_EMPTY_LIST(JAVA_OBJECT v); +JAVA_OBJECT java_util_Collections_GET_EMPTY_SET(); +void java_util_Collections_PUT_EMPTY_SET(JAVA_OBJECT v); +JAVA_OBJECT java_util_Collections_GET_EMPTY_MAP(); +void java_util_Collections_PUT_EMPTY_MAP(JAVA_OBJECT v); +void java_util_Collections___CLINIT_(); +void java_util_Collections___INIT___(JAVA_OBJECT me); +JAVA_INT java_util_Collections_binarySearch___java_util_List_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_INT java_util_Collections_binarySearch___java_util_List_java_lang_Object_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +void java_util_Collections_copy___java_util_List_java_util_List(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_enumeration___java_util_Collection(JAVA_OBJECT n1); +void java_util_Collections_fill___java_util_List_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_max___java_util_Collection(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_max___java_util_Collection_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_min___java_util_Collection(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_min___java_util_Collection_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_nCopies___int_java_lang_Object(JAVA_INT n1, JAVA_OBJECT n2); +void java_util_Collections_reverse___java_util_List(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_reverseOrder__(); +JAVA_OBJECT java_util_Collections_reverseOrder___java_util_Comparator(JAVA_OBJECT n1); +void java_util_Collections_shuffle___java_util_List(JAVA_OBJECT n1); +void java_util_Collections_shuffle___java_util_List_java_util_Random(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_singleton___java_lang_Object(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_singletonList___java_lang_Object(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_singletonMap___java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Collections_sort___java_util_List(JAVA_OBJECT n1); +void java_util_Collections_sort___java_util_List_java_util_Comparator(JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Collections_swap___java_util_List_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_BOOLEAN java_util_Collections_replaceAll___java_util_List_java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +void java_util_Collections_rotate___java_util_List_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_INT java_util_Collections_indexOfSubList___java_util_List_java_util_List(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_INT java_util_Collections_lastIndexOfSubList___java_util_List_java_util_List(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_list___java_util_Enumeration(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_synchronizedCollection___java_util_Collection(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_synchronizedList___java_util_List(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_synchronizedMap___java_util_Map(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_synchronizedSet___java_util_Set(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_synchronizedSortedMap___java_util_SortedMap(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_synchronizedSortedSet___java_util_SortedSet(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_unmodifiableCollection___java_util_Collection(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_unmodifiableList___java_util_List(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_unmodifiableMap___java_util_Map(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_unmodifiableSet___java_util_Set(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_unmodifiableSortedMap___java_util_SortedMap(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_unmodifiableSortedSet___java_util_SortedSet(JAVA_OBJECT n1); +JAVA_INT java_util_Collections_frequency___java_util_Collection_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_emptyList__(); +JAVA_OBJECT java_util_Collections_emptySet__(); +JAVA_OBJECT java_util_Collections_emptyMap__(); +JAVA_OBJECT java_util_Collections_checkedCollection___java_util_Collection_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_checkedMap___java_util_Map_java_lang_Class_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_util_Collections_checkedList___java_util_List_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_checkedSet___java_util_Set_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_checkedSortedMap___java_util_SortedMap_java_lang_Class_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_util_Collections_checkedSortedSet___java_util_SortedSet_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_util_Collections_addAll___java_util_Collection_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_util_Collections_disjoint___java_util_Collection_java_util_Collection(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_checkType___java_lang_Object_java_lang_Class(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Collections_newSetFromMap___java_util_Map(JAVA_OBJECT n1); +JAVA_OBJECT java_util_Collections_asLifoQueue___java_util_Deque(JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_Collections_EmptyList.c b/tests/nbody-java/java_util_Collections_EmptyList.c new file mode 100644 index 0000000000000..b149fea75a029 --- /dev/null +++ b/tests/nbody-java/java_util_Collections_EmptyList.c @@ -0,0 +1,317 @@ +#include "xmlvm.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_util_Collections.h" +#include "java_util_List.h" + +#include "java_util_Collections_EmptyList.h" + +#define XMLVM_CURRENT_CLASS_NAME Collections_EmptyList +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Collections_EmptyList + +__TIB_DEFINITION_java_util_Collections_EmptyList __TIB_java_util_Collections_EmptyList = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Collections_EmptyList, // classInitializer + "java.util.Collections$EmptyList", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractList, // extends + sizeof(java_util_Collections_EmptyList), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Collections_EmptyList; +JAVA_OBJECT __CLASS_java_util_Collections_EmptyList_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_EmptyList_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_EmptyList_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_Collections_EmptyList_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Collections_EmptyList() +{ + staticInitializerLock(&__TIB_java_util_Collections_EmptyList); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Collections_EmptyList.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Collections_EmptyList.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Collections_EmptyList); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Collections_EmptyList.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Collections_EmptyList.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Collections_EmptyList.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Collections$EmptyList") + __INIT_IMPL_java_util_Collections_EmptyList(); + } +} + +void __INIT_IMPL_java_util_Collections_EmptyList() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractList) + __TIB_java_util_Collections_EmptyList.newInstanceFunc = __NEW_INSTANCE_java_util_Collections_EmptyList; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Collections_EmptyList.vtable, __TIB_java_util_AbstractList.vtable, sizeof(__TIB_java_util_AbstractList.vtable)); + // Initialize vtable for this class + __TIB_java_util_Collections_EmptyList.vtable[10] = (VTABLE_PTR) &java_util_Collections_EmptyList_contains___java_lang_Object; + __TIB_java_util_Collections_EmptyList.vtable[16] = (VTABLE_PTR) &java_util_Collections_EmptyList_size__; + __TIB_java_util_Collections_EmptyList.vtable[21] = (VTABLE_PTR) &java_util_Collections_EmptyList_get___int; + // Initialize interface information + __TIB_java_util_Collections_EmptyList.numImplementedInterfaces = 5; + __TIB_java_util_Collections_EmptyList.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 5); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_Collections_EmptyList.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_Collections_EmptyList.implementedInterfaces[0][1] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_Collections_EmptyList.implementedInterfaces[0][2] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_List) + + __TIB_java_util_Collections_EmptyList.implementedInterfaces[0][3] = &__TIB_java_util_List; + + XMLVM_CLASS_INIT(java_util_RandomAccess) + + __TIB_java_util_Collections_EmptyList.implementedInterfaces[0][4] = &__TIB_java_util_RandomAccess; + // Initialize itable for this class + __TIB_java_util_Collections_EmptyList.itableBegin = &__TIB_java_util_Collections_EmptyList.itable[0]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_Collections_EmptyList.vtable[12]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[6]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[7]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_Collections_EmptyList.vtable[8]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[9]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[10]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[1]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_Collections_EmptyList.vtable[4]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_Collections_EmptyList.vtable[11]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_Collections_EmptyList.vtable[12]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[13]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[14]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[15]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_Collections_EmptyList.vtable[16]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_Collections_EmptyList.vtable[17]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_Collections_EmptyList.vtable[18]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___int_java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[19]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[6]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_add___int_java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[20]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[7]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_clear__] = __TIB_java_util_Collections_EmptyList.vtable[8]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_containsAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[9]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_contains___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[10]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_equals___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[1]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_get___int] = __TIB_java_util_Collections_EmptyList.vtable[21]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_hashCode__] = __TIB_java_util_Collections_EmptyList.vtable[4]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[22]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_isEmpty__] = __TIB_java_util_Collections_EmptyList.vtable[11]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_iterator__] = __TIB_java_util_Collections_EmptyList.vtable[12]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[23]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator__] = __TIB_java_util_Collections_EmptyList.vtable[24]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator___int] = __TIB_java_util_Collections_EmptyList.vtable[25]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_removeAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[13]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___int] = __TIB_java_util_Collections_EmptyList.vtable[27]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[14]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_retainAll___java_util_Collection] = __TIB_java_util_Collections_EmptyList.vtable[15]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object] = __TIB_java_util_Collections_EmptyList.vtable[28]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_size__] = __TIB_java_util_Collections_EmptyList.vtable[16]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_subList___int_int] = __TIB_java_util_Collections_EmptyList.vtable[29]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray__] = __TIB_java_util_Collections_EmptyList.vtable[17]; + __TIB_java_util_Collections_EmptyList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_Collections_EmptyList.vtable[18]; + + _STATIC_java_util_Collections_EmptyList_serialVersionUID = 8842843931221139166; + + __TIB_java_util_Collections_EmptyList.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Collections_EmptyList.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Collections_EmptyList.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Collections_EmptyList.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Collections_EmptyList.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Collections_EmptyList.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Collections_EmptyList.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Collections_EmptyList.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Collections_EmptyList = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Collections_EmptyList); + __TIB_java_util_Collections_EmptyList.clazz = __CLASS_java_util_Collections_EmptyList; + __TIB_java_util_Collections_EmptyList.baseType = JAVA_NULL; + __CLASS_java_util_Collections_EmptyList_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptyList); + __CLASS_java_util_Collections_EmptyList_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptyList_1ARRAY); + __CLASS_java_util_Collections_EmptyList_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptyList_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Collections_EmptyList] + //XMLVM_END_WRAPPER + + __TIB_java_util_Collections_EmptyList.classInitialized = 1; +} + +void __DELETE_java_util_Collections_EmptyList(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Collections_EmptyList] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractList(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyList] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Collections_EmptyList() +{ XMLVM_CLASS_INIT(java_util_Collections_EmptyList) +java_util_Collections_EmptyList* me = (java_util_Collections_EmptyList*) XMLVM_MALLOC(sizeof(java_util_Collections_EmptyList)); + me->tib = &__TIB_java_util_Collections_EmptyList; + __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyList(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Collections_EmptyList] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_EmptyList() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_util_Collections_EmptyList_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_Collections_EmptyList) + return _STATIC_java_util_Collections_EmptyList_serialVersionUID; +} + +void java_util_Collections_EmptyList_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_Collections_EmptyList) +_STATIC_java_util_Collections_EmptyList_serialVersionUID = v; +} + +void java_util_Collections_EmptyList___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyList___INIT___] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyList", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 74) + XMLVM_CHECK_NPE(0) + java_util_AbstractList___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_EmptyList_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyList_contains___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyList", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 80) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_EmptyList_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyList_size__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyList", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 85) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptyList_get___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyList_get___int] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyList", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Collections.java", 90) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptyList_readResolve__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyList_readResolve__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyList", "readResolve", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 94) + _r0.o = java_util_Collections_GET_EMPTY_LIST(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_EmptyList___INIT____java_util_Collections_EmptyList(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyList___INIT____java_util_Collections_EmptyList] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyList", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 74) + XMLVM_CHECK_NPE(0) + java_util_Collections_EmptyList___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Collections_EmptyList.h b/tests/nbody-java/java_util_Collections_EmptyList.h new file mode 100644 index 0000000000000..cbcb5f54b4f06 --- /dev/null +++ b/tests/nbody-java/java_util_Collections_EmptyList.h @@ -0,0 +1,82 @@ +#ifndef __JAVA_UTIL_COLLECTIONS_EMPTYLIST__ +#define __JAVA_UTIL_COLLECTIONS_EMPTYLIST__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Collections_EmptyList 78 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_util_RandomAccess.h" +// Super Class: +#include "java_util_AbstractList.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections +#define XMLVM_FORWARD_DECL_java_util_Collections +XMLVM_FORWARD_DECL(java_util_Collections) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_List +#define XMLVM_FORWARD_DECL_java_util_List +XMLVM_FORWARD_DECL(java_util_List) +#endif +// Class declarations for java.util.Collections$EmptyList +XMLVM_DEFINE_CLASS(java_util_Collections_EmptyList, 30, XMLVM_ITABLE_SIZE_java_util_Collections_EmptyList) + +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyList; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyList_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyList_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyList_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_EmptyList +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Collections_EmptyList \ + __INSTANCE_FIELDS_java_util_AbstractList; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_EmptyList \ + } java_util_Collections_EmptyList + +struct java_util_Collections_EmptyList { + __TIB_DEFINITION_java_util_Collections_EmptyList* tib; + struct { + __INSTANCE_FIELDS_java_util_Collections_EmptyList; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_EmptyList +#define XMLVM_FORWARD_DECL_java_util_Collections_EmptyList +typedef struct java_util_Collections_EmptyList java_util_Collections_EmptyList; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Collections_EmptyList 30 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyList_contains___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyList_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyList_get___int 21 + +void __INIT_java_util_Collections_EmptyList(); +void __INIT_IMPL_java_util_Collections_EmptyList(); +void __DELETE_java_util_Collections_EmptyList(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Collections_EmptyList(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_EmptyList(); +JAVA_LONG java_util_Collections_EmptyList_GET_serialVersionUID(); +void java_util_Collections_EmptyList_PUT_serialVersionUID(JAVA_LONG v); +void java_util_Collections_EmptyList___INIT___(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_util_Collections_EmptyList_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_Collections_EmptyList_size__(JAVA_OBJECT me); +// Vtable index: 21 +JAVA_OBJECT java_util_Collections_EmptyList_get___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_util_Collections_EmptyList_readResolve__(JAVA_OBJECT me); +void java_util_Collections_EmptyList___INIT____java_util_Collections_EmptyList(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_Collections_EmptyMap.c b/tests/nbody-java/java_util_Collections_EmptyMap.c new file mode 100644 index 0000000000000..70fb024990abb --- /dev/null +++ b/tests/nbody-java/java_util_Collections_EmptyMap.c @@ -0,0 +1,326 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_util_Collection.h" +#include "java_util_Collections.h" +#include "java_util_List.h" +#include "java_util_Map.h" +#include "java_util_Set.h" + +#include "java_util_Collections_EmptyMap.h" + +#define XMLVM_CURRENT_CLASS_NAME Collections_EmptyMap +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Collections_EmptyMap + +__TIB_DEFINITION_java_util_Collections_EmptyMap __TIB_java_util_Collections_EmptyMap = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Collections_EmptyMap, // classInitializer + "java.util.Collections$EmptyMap", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractMap, // extends + sizeof(java_util_Collections_EmptyMap), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap; +JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_Collections_EmptyMap_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Collections_EmptyMap() +{ + staticInitializerLock(&__TIB_java_util_Collections_EmptyMap); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Collections_EmptyMap.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Collections_EmptyMap.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Collections_EmptyMap); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Collections_EmptyMap.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Collections_EmptyMap.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Collections_EmptyMap.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Collections$EmptyMap") + __INIT_IMPL_java_util_Collections_EmptyMap(); + } +} + +void __INIT_IMPL_java_util_Collections_EmptyMap() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractMap) + __TIB_java_util_Collections_EmptyMap.newInstanceFunc = __NEW_INSTANCE_java_util_Collections_EmptyMap; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Collections_EmptyMap.vtable, __TIB_java_util_AbstractMap.vtable, sizeof(__TIB_java_util_AbstractMap.vtable)); + // Initialize vtable for this class + __TIB_java_util_Collections_EmptyMap.vtable[7] = (VTABLE_PTR) &java_util_Collections_EmptyMap_containsKey___java_lang_Object; + __TIB_java_util_Collections_EmptyMap.vtable[8] = (VTABLE_PTR) &java_util_Collections_EmptyMap_containsValue___java_lang_Object; + __TIB_java_util_Collections_EmptyMap.vtable[9] = (VTABLE_PTR) &java_util_Collections_EmptyMap_entrySet__; + __TIB_java_util_Collections_EmptyMap.vtable[10] = (VTABLE_PTR) &java_util_Collections_EmptyMap_get___java_lang_Object; + __TIB_java_util_Collections_EmptyMap.vtable[12] = (VTABLE_PTR) &java_util_Collections_EmptyMap_keySet__; + __TIB_java_util_Collections_EmptyMap.vtable[17] = (VTABLE_PTR) &java_util_Collections_EmptyMap_values__; + // Initialize interface information + __TIB_java_util_Collections_EmptyMap.numImplementedInterfaces = 2; + __TIB_java_util_Collections_EmptyMap.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_Collections_EmptyMap.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_util_Map) + + __TIB_java_util_Collections_EmptyMap.implementedInterfaces[0][1] = &__TIB_java_util_Map; + // Initialize itable for this class + __TIB_java_util_Collections_EmptyMap.itableBegin = &__TIB_java_util_Collections_EmptyMap.itable[0]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_clear__] = __TIB_java_util_Collections_EmptyMap.vtable[6]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object] = __TIB_java_util_Collections_EmptyMap.vtable[7]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object] = __TIB_java_util_Collections_EmptyMap.vtable[8]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_entrySet__] = __TIB_java_util_Collections_EmptyMap.vtable[9]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object] = __TIB_java_util_Collections_EmptyMap.vtable[1]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object] = __TIB_java_util_Collections_EmptyMap.vtable[10]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_hashCode__] = __TIB_java_util_Collections_EmptyMap.vtable[4]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__] = __TIB_java_util_Collections_EmptyMap.vtable[11]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_keySet__] = __TIB_java_util_Collections_EmptyMap.vtable[12]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map] = __TIB_java_util_Collections_EmptyMap.vtable[13]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object] = __TIB_java_util_Collections_EmptyMap.vtable[14]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object] = __TIB_java_util_Collections_EmptyMap.vtable[15]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_size__] = __TIB_java_util_Collections_EmptyMap.vtable[16]; + __TIB_java_util_Collections_EmptyMap.itable[XMLVM_ITABLE_IDX_java_util_Map_values__] = __TIB_java_util_Collections_EmptyMap.vtable[17]; + + _STATIC_java_util_Collections_EmptyMap_serialVersionUID = 6428348081105594320; + + __TIB_java_util_Collections_EmptyMap.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Collections_EmptyMap.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Collections_EmptyMap.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Collections_EmptyMap.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Collections_EmptyMap.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Collections_EmptyMap.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Collections_EmptyMap.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Collections_EmptyMap.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Collections_EmptyMap = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Collections_EmptyMap); + __TIB_java_util_Collections_EmptyMap.clazz = __CLASS_java_util_Collections_EmptyMap; + __TIB_java_util_Collections_EmptyMap.baseType = JAVA_NULL; + __CLASS_java_util_Collections_EmptyMap_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptyMap); + __CLASS_java_util_Collections_EmptyMap_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptyMap_1ARRAY); + __CLASS_java_util_Collections_EmptyMap_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptyMap_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Collections_EmptyMap] + //XMLVM_END_WRAPPER + + __TIB_java_util_Collections_EmptyMap.classInitialized = 1; +} + +void __DELETE_java_util_Collections_EmptyMap(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Collections_EmptyMap] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractMap(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyMap] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Collections_EmptyMap() +{ XMLVM_CLASS_INIT(java_util_Collections_EmptyMap) +java_util_Collections_EmptyMap* me = (java_util_Collections_EmptyMap*) XMLVM_MALLOC(sizeof(java_util_Collections_EmptyMap)); + me->tib = &__TIB_java_util_Collections_EmptyMap; + __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyMap(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Collections_EmptyMap] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_EmptyMap() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_util_Collections_EmptyMap_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_Collections_EmptyMap) + return _STATIC_java_util_Collections_EmptyMap_serialVersionUID; +} + +void java_util_Collections_EmptyMap_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_Collections_EmptyMap) +_STATIC_java_util_Collections_EmptyMap_serialVersionUID = v; +} + +void java_util_Collections_EmptyMap___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap___INIT___] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 136) + XMLVM_CHECK_NPE(0) + java_util_AbstractMap___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_EmptyMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap_containsKey___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "containsKey", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 142) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_EmptyMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap_containsValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "containsValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 147) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptyMap_entrySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap_entrySet__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "entrySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 152) + _r0.o = java_util_Collections_GET_EMPTY_SET(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptyMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap_get___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 157) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptyMap_keySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap_keySet__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "keySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 162) + _r0.o = java_util_Collections_GET_EMPTY_SET(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptyMap_values__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap_values__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "values", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 167) + _r0.o = java_util_Collections_GET_EMPTY_LIST(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptyMap_readResolve__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap_readResolve__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "readResolve", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 171) + _r0.o = java_util_Collections_GET_EMPTY_MAP(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_EmptyMap___INIT____java_util_Collections_EmptyMap(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptyMap___INIT____java_util_Collections_EmptyMap] + XMLVM_ENTER_METHOD("java.util.Collections$EmptyMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 136) + XMLVM_CHECK_NPE(0) + java_util_Collections_EmptyMap___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Collections_EmptyMap.h b/tests/nbody-java/java_util_Collections_EmptyMap.h new file mode 100644 index 0000000000000..30a85eb70e821 --- /dev/null +++ b/tests/nbody-java/java_util_Collections_EmptyMap.h @@ -0,0 +1,98 @@ +#ifndef __JAVA_UTIL_COLLECTIONS_EMPTYMAP__ +#define __JAVA_UTIL_COLLECTIONS_EMPTYMAP__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Collections_EmptyMap 14 +// Implemented interfaces: +#include "java_io_Serializable.h" +// Super Class: +#include "java_util_AbstractMap.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections +#define XMLVM_FORWARD_DECL_java_util_Collections +XMLVM_FORWARD_DECL(java_util_Collections) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_List +#define XMLVM_FORWARD_DECL_java_util_List +XMLVM_FORWARD_DECL(java_util_List) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map +#define XMLVM_FORWARD_DECL_java_util_Map +XMLVM_FORWARD_DECL(java_util_Map) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +// Class declarations for java.util.Collections$EmptyMap +XMLVM_DEFINE_CLASS(java_util_Collections_EmptyMap, 18, XMLVM_ITABLE_SIZE_java_util_Collections_EmptyMap) + +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptyMap_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_EmptyMap +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Collections_EmptyMap \ + __INSTANCE_FIELDS_java_util_AbstractMap; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_EmptyMap \ + } java_util_Collections_EmptyMap + +struct java_util_Collections_EmptyMap { + __TIB_DEFINITION_java_util_Collections_EmptyMap* tib; + struct { + __INSTANCE_FIELDS_java_util_Collections_EmptyMap; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_EmptyMap +#define XMLVM_FORWARD_DECL_java_util_Collections_EmptyMap +typedef struct java_util_Collections_EmptyMap java_util_Collections_EmptyMap; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Collections_EmptyMap 18 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyMap_containsKey___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyMap_containsValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyMap_entrySet__ 9 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyMap_get___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyMap_keySet__ 12 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptyMap_values__ 17 + +void __INIT_java_util_Collections_EmptyMap(); +void __INIT_IMPL_java_util_Collections_EmptyMap(); +void __DELETE_java_util_Collections_EmptyMap(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptyMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Collections_EmptyMap(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_EmptyMap(); +JAVA_LONG java_util_Collections_EmptyMap_GET_serialVersionUID(); +void java_util_Collections_EmptyMap_PUT_serialVersionUID(JAVA_LONG v); +void java_util_Collections_EmptyMap___INIT___(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_util_Collections_EmptyMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_util_Collections_EmptyMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_util_Collections_EmptyMap_entrySet__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_OBJECT java_util_Collections_EmptyMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 12 +JAVA_OBJECT java_util_Collections_EmptyMap_keySet__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_Collections_EmptyMap_values__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Collections_EmptyMap_readResolve__(JAVA_OBJECT me); +void java_util_Collections_EmptyMap___INIT____java_util_Collections_EmptyMap(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_Collections_EmptySet.c b/tests/nbody-java/java_util_Collections_EmptySet.c new file mode 100644 index 0000000000000..f1633ad1708c2 --- /dev/null +++ b/tests/nbody-java/java_util_Collections_EmptySet.c @@ -0,0 +1,307 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_util_Collections.h" +#include "java_util_Iterator.h" +#include "java_util_Set.h" + +#include "java_util_Collections_EmptySet.h" + +#define XMLVM_CURRENT_CLASS_NAME Collections_EmptySet +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Collections_EmptySet + +__TIB_DEFINITION_java_util_Collections_EmptySet __TIB_java_util_Collections_EmptySet = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Collections_EmptySet, // classInitializer + "java.util.Collections$EmptySet", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractSet, // extends + sizeof(java_util_Collections_EmptySet), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Collections_EmptySet; +JAVA_OBJECT __CLASS_java_util_Collections_EmptySet_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_EmptySet_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_EmptySet_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_Collections_EmptySet_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Collections_EmptySet() +{ + staticInitializerLock(&__TIB_java_util_Collections_EmptySet); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Collections_EmptySet.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Collections_EmptySet.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Collections_EmptySet); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Collections_EmptySet.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Collections_EmptySet.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Collections_EmptySet.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Collections$EmptySet") + __INIT_IMPL_java_util_Collections_EmptySet(); + } +} + +void __INIT_IMPL_java_util_Collections_EmptySet() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractSet) + __TIB_java_util_Collections_EmptySet.newInstanceFunc = __NEW_INSTANCE_java_util_Collections_EmptySet; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Collections_EmptySet.vtable, __TIB_java_util_AbstractSet.vtable, sizeof(__TIB_java_util_AbstractSet.vtable)); + // Initialize vtable for this class + __TIB_java_util_Collections_EmptySet.vtable[10] = (VTABLE_PTR) &java_util_Collections_EmptySet_contains___java_lang_Object; + __TIB_java_util_Collections_EmptySet.vtable[16] = (VTABLE_PTR) &java_util_Collections_EmptySet_size__; + __TIB_java_util_Collections_EmptySet.vtable[12] = (VTABLE_PTR) &java_util_Collections_EmptySet_iterator__; + // Initialize interface information + __TIB_java_util_Collections_EmptySet.numImplementedInterfaces = 4; + __TIB_java_util_Collections_EmptySet.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 4); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_Collections_EmptySet.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_Collections_EmptySet.implementedInterfaces[0][1] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_Collections_EmptySet.implementedInterfaces[0][2] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_Set) + + __TIB_java_util_Collections_EmptySet.implementedInterfaces[0][3] = &__TIB_java_util_Set; + // Initialize itable for this class + __TIB_java_util_Collections_EmptySet.itableBegin = &__TIB_java_util_Collections_EmptySet.itable[0]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_Collections_EmptySet.vtable[12]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[6]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[7]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_Collections_EmptySet.vtable[8]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[9]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[10]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[1]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_Collections_EmptySet.vtable[4]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_Collections_EmptySet.vtable[11]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_Collections_EmptySet.vtable[12]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[13]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[14]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[15]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_Collections_EmptySet.vtable[16]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_Collections_EmptySet.vtable[17]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_Collections_EmptySet.vtable[18]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_addAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[6]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_add___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[7]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_clear__] = __TIB_java_util_Collections_EmptySet.vtable[8]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_containsAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[9]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_contains___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[10]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_equals___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[1]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_hashCode__] = __TIB_java_util_Collections_EmptySet.vtable[4]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_isEmpty__] = __TIB_java_util_Collections_EmptySet.vtable[11]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_iterator__] = __TIB_java_util_Collections_EmptySet.vtable[12]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_removeAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[13]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_remove___java_lang_Object] = __TIB_java_util_Collections_EmptySet.vtable[14]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_retainAll___java_util_Collection] = __TIB_java_util_Collections_EmptySet.vtable[15]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_size__] = __TIB_java_util_Collections_EmptySet.vtable[16]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_toArray__] = __TIB_java_util_Collections_EmptySet.vtable[17]; + __TIB_java_util_Collections_EmptySet.itable[XMLVM_ITABLE_IDX_java_util_Set_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_Collections_EmptySet.vtable[18]; + + _STATIC_java_util_Collections_EmptySet_serialVersionUID = 1582296315990362920; + + __TIB_java_util_Collections_EmptySet.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Collections_EmptySet.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Collections_EmptySet.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Collections_EmptySet.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Collections_EmptySet.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Collections_EmptySet.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Collections_EmptySet.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Collections_EmptySet.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Collections_EmptySet = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Collections_EmptySet); + __TIB_java_util_Collections_EmptySet.clazz = __CLASS_java_util_Collections_EmptySet; + __TIB_java_util_Collections_EmptySet.baseType = JAVA_NULL; + __CLASS_java_util_Collections_EmptySet_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptySet); + __CLASS_java_util_Collections_EmptySet_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptySet_1ARRAY); + __CLASS_java_util_Collections_EmptySet_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_EmptySet_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Collections_EmptySet] + //XMLVM_END_WRAPPER + + __TIB_java_util_Collections_EmptySet.classInitialized = 1; +} + +void __DELETE_java_util_Collections_EmptySet(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Collections_EmptySet] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptySet(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractSet(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Collections_EmptySet] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Collections_EmptySet() +{ XMLVM_CLASS_INIT(java_util_Collections_EmptySet) +java_util_Collections_EmptySet* me = (java_util_Collections_EmptySet*) XMLVM_MALLOC(sizeof(java_util_Collections_EmptySet)); + me->tib = &__TIB_java_util_Collections_EmptySet; + __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptySet(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Collections_EmptySet] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_EmptySet() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_util_Collections_EmptySet_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_Collections_EmptySet) + return _STATIC_java_util_Collections_EmptySet_serialVersionUID; +} + +void java_util_Collections_EmptySet_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_Collections_EmptySet) +_STATIC_java_util_Collections_EmptySet_serialVersionUID = v; +} + +void java_util_Collections_EmptySet___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptySet___INIT___] + XMLVM_ENTER_METHOD("java.util.Collections$EmptySet", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 99) + XMLVM_CHECK_NPE(0) + java_util_AbstractSet___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_EmptySet_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptySet_contains___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$EmptySet", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 105) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_EmptySet_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptySet_size__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptySet", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 110) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptySet_iterator__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptySet_iterator__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptySet", "iterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 115) + + + // Red class access removed: java.util.Collections$EmptySet$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$EmptySet$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_EmptySet_readResolve__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptySet_readResolve__] + XMLVM_ENTER_METHOD("java.util.Collections$EmptySet", "readResolve", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 131) + _r0.o = java_util_Collections_GET_EMPTY_SET(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_EmptySet___INIT____java_util_Collections_EmptySet(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_EmptySet___INIT____java_util_Collections_EmptySet] + XMLVM_ENTER_METHOD("java.util.Collections$EmptySet", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 99) + XMLVM_CHECK_NPE(0) + java_util_Collections_EmptySet___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Collections_EmptySet.h b/tests/nbody-java/java_util_Collections_EmptySet.h new file mode 100644 index 0000000000000..d7f25d60d5fa3 --- /dev/null +++ b/tests/nbody-java/java_util_Collections_EmptySet.h @@ -0,0 +1,81 @@ +#ifndef __JAVA_UTIL_COLLECTIONS_EMPTYSET__ +#define __JAVA_UTIL_COLLECTIONS_EMPTYSET__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Collections_EmptySet 31 +// Implemented interfaces: +#include "java_io_Serializable.h" +// Super Class: +#include "java_util_AbstractSet.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections +#define XMLVM_FORWARD_DECL_java_util_Collections +XMLVM_FORWARD_DECL(java_util_Collections) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +// Class declarations for java.util.Collections$EmptySet +XMLVM_DEFINE_CLASS(java_util_Collections_EmptySet, 19, XMLVM_ITABLE_SIZE_java_util_Collections_EmptySet) + +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptySet; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptySet_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptySet_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_EmptySet_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_EmptySet +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Collections_EmptySet \ + __INSTANCE_FIELDS_java_util_AbstractSet; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_EmptySet \ + } java_util_Collections_EmptySet + +struct java_util_Collections_EmptySet { + __TIB_DEFINITION_java_util_Collections_EmptySet* tib; + struct { + __INSTANCE_FIELDS_java_util_Collections_EmptySet; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_EmptySet +#define XMLVM_FORWARD_DECL_java_util_Collections_EmptySet +typedef struct java_util_Collections_EmptySet java_util_Collections_EmptySet; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Collections_EmptySet 19 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptySet_contains___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptySet_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_Collections_EmptySet_iterator__ 12 + +void __INIT_java_util_Collections_EmptySet(); +void __INIT_IMPL_java_util_Collections_EmptySet(); +void __DELETE_java_util_Collections_EmptySet(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Collections_EmptySet(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Collections_EmptySet(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_EmptySet(); +JAVA_LONG java_util_Collections_EmptySet_GET_serialVersionUID(); +void java_util_Collections_EmptySet_PUT_serialVersionUID(JAVA_LONG v); +void java_util_Collections_EmptySet___INIT___(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_util_Collections_EmptySet_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_Collections_EmptySet_size__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_util_Collections_EmptySet_iterator__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Collections_EmptySet_readResolve__(JAVA_OBJECT me); +void java_util_Collections_EmptySet___INIT____java_util_Collections_EmptySet(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_Collections_SynchronizedMap.c b/tests/nbody-java/java_util_Collections_SynchronizedMap.c new file mode 100644 index 0000000000000..3aeeede60ea03 --- /dev/null +++ b/tests/nbody-java/java_util_Collections_SynchronizedMap.c @@ -0,0 +1,1027 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" +#include "java_util_Collection.h" +#include "java_util_Set.h" + +#include "java_util_Collections_SynchronizedMap.h" + +#define XMLVM_CURRENT_CLASS_NAME Collections_SynchronizedMap +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Collections_SynchronizedMap + +__TIB_DEFINITION_java_util_Collections_SynchronizedMap __TIB_java_util_Collections_SynchronizedMap = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Collections_SynchronizedMap, // classInitializer + "java.util.Collections$SynchronizedMap", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Map;Ljava/io/Serializable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_Collections_SynchronizedMap), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap; +JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_Collections_SynchronizedMap_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Collections_SynchronizedMap() +{ + staticInitializerLock(&__TIB_java_util_Collections_SynchronizedMap); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Collections_SynchronizedMap.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Collections_SynchronizedMap.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Collections_SynchronizedMap); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Collections_SynchronizedMap.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Collections_SynchronizedMap.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Collections_SynchronizedMap.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Collections$SynchronizedMap") + __INIT_IMPL_java_util_Collections_SynchronizedMap(); + } +} + +void __INIT_IMPL_java_util_Collections_SynchronizedMap() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_Collections_SynchronizedMap.newInstanceFunc = __NEW_INSTANCE_java_util_Collections_SynchronizedMap; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Collections_SynchronizedMap.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_Collections_SynchronizedMap.vtable[6] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_clear__; + __TIB_java_util_Collections_SynchronizedMap.vtable[7] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_containsKey___java_lang_Object; + __TIB_java_util_Collections_SynchronizedMap.vtable[8] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_containsValue___java_lang_Object; + __TIB_java_util_Collections_SynchronizedMap.vtable[9] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_entrySet__; + __TIB_java_util_Collections_SynchronizedMap.vtable[1] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_equals___java_lang_Object; + __TIB_java_util_Collections_SynchronizedMap.vtable[10] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_get___java_lang_Object; + __TIB_java_util_Collections_SynchronizedMap.vtable[4] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_hashCode__; + __TIB_java_util_Collections_SynchronizedMap.vtable[11] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_isEmpty__; + __TIB_java_util_Collections_SynchronizedMap.vtable[12] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_keySet__; + __TIB_java_util_Collections_SynchronizedMap.vtable[14] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_put___java_lang_Object_java_lang_Object; + __TIB_java_util_Collections_SynchronizedMap.vtable[13] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_putAll___java_util_Map; + __TIB_java_util_Collections_SynchronizedMap.vtable[15] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_remove___java_lang_Object; + __TIB_java_util_Collections_SynchronizedMap.vtable[16] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_size__; + __TIB_java_util_Collections_SynchronizedMap.vtable[17] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_values__; + __TIB_java_util_Collections_SynchronizedMap.vtable[5] = (VTABLE_PTR) &java_util_Collections_SynchronizedMap_toString__; + // Initialize interface information + __TIB_java_util_Collections_SynchronizedMap.numImplementedInterfaces = 2; + __TIB_java_util_Collections_SynchronizedMap.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_Collections_SynchronizedMap.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_util_Map) + + __TIB_java_util_Collections_SynchronizedMap.implementedInterfaces[0][1] = &__TIB_java_util_Map; + // Initialize itable for this class + __TIB_java_util_Collections_SynchronizedMap.itableBegin = &__TIB_java_util_Collections_SynchronizedMap.itable[0]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_clear__] = __TIB_java_util_Collections_SynchronizedMap.vtable[6]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object] = __TIB_java_util_Collections_SynchronizedMap.vtable[7]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object] = __TIB_java_util_Collections_SynchronizedMap.vtable[8]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_entrySet__] = __TIB_java_util_Collections_SynchronizedMap.vtable[9]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object] = __TIB_java_util_Collections_SynchronizedMap.vtable[1]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object] = __TIB_java_util_Collections_SynchronizedMap.vtable[10]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_hashCode__] = __TIB_java_util_Collections_SynchronizedMap.vtable[4]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__] = __TIB_java_util_Collections_SynchronizedMap.vtable[11]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_keySet__] = __TIB_java_util_Collections_SynchronizedMap.vtable[12]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map] = __TIB_java_util_Collections_SynchronizedMap.vtable[13]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object] = __TIB_java_util_Collections_SynchronizedMap.vtable[14]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object] = __TIB_java_util_Collections_SynchronizedMap.vtable[15]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_size__] = __TIB_java_util_Collections_SynchronizedMap.vtable[16]; + __TIB_java_util_Collections_SynchronizedMap.itable[XMLVM_ITABLE_IDX_java_util_Map_values__] = __TIB_java_util_Collections_SynchronizedMap.vtable[17]; + + _STATIC_java_util_Collections_SynchronizedMap_serialVersionUID = 1978198479659022715; + + __TIB_java_util_Collections_SynchronizedMap.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Collections_SynchronizedMap.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Collections_SynchronizedMap.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Collections_SynchronizedMap.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Collections_SynchronizedMap.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Collections_SynchronizedMap.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Collections_SynchronizedMap.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Collections_SynchronizedMap.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Collections_SynchronizedMap = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Collections_SynchronizedMap); + __TIB_java_util_Collections_SynchronizedMap.clazz = __CLASS_java_util_Collections_SynchronizedMap; + __TIB_java_util_Collections_SynchronizedMap.baseType = JAVA_NULL; + __CLASS_java_util_Collections_SynchronizedMap_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_SynchronizedMap); + __CLASS_java_util_Collections_SynchronizedMap_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_SynchronizedMap_1ARRAY); + __CLASS_java_util_Collections_SynchronizedMap_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Collections_SynchronizedMap_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Collections_SynchronizedMap] + //XMLVM_END_WRAPPER + + __TIB_java_util_Collections_SynchronizedMap.classInitialized = 1; +} + +void __DELETE_java_util_Collections_SynchronizedMap(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Collections_SynchronizedMap] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Collections_SynchronizedMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_Collections_SynchronizedMap*) me)->fields.java_util_Collections_SynchronizedMap.m_ = (java_util_Map*) JAVA_NULL; + ((java_util_Collections_SynchronizedMap*) me)->fields.java_util_Collections_SynchronizedMap.mutex_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Collections_SynchronizedMap] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Collections_SynchronizedMap() +{ XMLVM_CLASS_INIT(java_util_Collections_SynchronizedMap) +java_util_Collections_SynchronizedMap* me = (java_util_Collections_SynchronizedMap*) XMLVM_MALLOC(sizeof(java_util_Collections_SynchronizedMap)); + me->tib = &__TIB_java_util_Collections_SynchronizedMap; + __INIT_INSTANCE_MEMBERS_java_util_Collections_SynchronizedMap(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Collections_SynchronizedMap] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_SynchronizedMap() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_util_Collections_SynchronizedMap_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_Collections_SynchronizedMap) + return _STATIC_java_util_Collections_SynchronizedMap_serialVersionUID; +} + +void java_util_Collections_SynchronizedMap_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_Collections_SynchronizedMap) +_STATIC_java_util_Collections_SynchronizedMap_serialVersionUID = v; +} + +void java_util_Collections_SynchronizedMap___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap___INIT____java_util_Map] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 709) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 710) + XMLVM_CHECK_NPE(0) + ((java_util_Collections_SynchronizedMap*) _r0.o)->fields.java_util_Collections_SynchronizedMap.m_ = _r1.o; + XMLVM_SOURCE_POSITION("Collections.java", 711) + XMLVM_CHECK_NPE(0) + ((java_util_Collections_SynchronizedMap*) _r0.o)->fields.java_util_Collections_SynchronizedMap.mutex_ = _r0.o; + XMLVM_SOURCE_POSITION("Collections.java", 712) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_SynchronizedMap___INIT____java_util_Map_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap___INIT____java_util_Map_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 714) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 715) + XMLVM_CHECK_NPE(0) + ((java_util_Collections_SynchronizedMap*) _r0.o)->fields.java_util_Collections_SynchronizedMap.m_ = _r1.o; + XMLVM_SOURCE_POSITION("Collections.java", 716) + XMLVM_CHECK_NPE(0) + ((java_util_Collections_SynchronizedMap*) _r0.o)->fields.java_util_Collections_SynchronizedMap.mutex_ = _r2.o; + XMLVM_SOURCE_POSITION("Collections.java", 717) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Collections_SynchronizedMap_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_clear__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "clear", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 720) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaab5b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 721) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_clear__])(_r1.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 723) + XMLVM_MEMCPY(curThread_w4332aaab5b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaab5b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab5b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaab5b1b5,java_lang_Object,10) + XMLVM_CATCH_END(w4332aaab5b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab5b1b5) + label10:; + XMLVM_TRY_BEGIN(w4332aaab5b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaab5b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaab5b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab5b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaab5b1b7,java_lang_Object,10) + XMLVM_CATCH_END(w4332aaab5b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab5b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_containsKey___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "containsKey", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 726) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaab6b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 727) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object])(_r1.o, _r3.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaab6b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaab6b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab6b1b6) + XMLVM_CATCH_SPECIFIC(w4332aaab6b1b6,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaab6b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab6b1b6) + label11:; + XMLVM_TRY_BEGIN(w4332aaab6b1b8) + // Begin try + java_lang_Thread* curThread_w4332aaab6b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaab6b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab6b1b8) + XMLVM_CATCH_SPECIFIC(w4332aaab6b1b8,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaab6b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab6b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_containsValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "containsValue", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 732) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaab7b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 733) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object])(_r1.o, _r3.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaab7b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaab7b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab7b1b6) + XMLVM_CATCH_SPECIFIC(w4332aaab7b1b6,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaab7b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab7b1b6) + label11:; + XMLVM_TRY_BEGIN(w4332aaab7b1b8) + // Begin try + java_lang_Thread* curThread_w4332aaab7b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaab7b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab7b1b8) + XMLVM_CATCH_SPECIFIC(w4332aaab7b1b8,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaab7b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab7b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_SynchronizedMap_entrySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_entrySet__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "entrySet", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 738) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaab8b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 739) + + + // Red class access removed: java.util.Collections$SynchronizedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_entrySet__])(_r2.o); + XMLVM_CHECK_NPE(4) + _r3.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + + + // Red class access removed: java.util.Collections$SynchronizedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaab8b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaab8b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab8b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaab8b1b5,java_lang_Object,18) + XMLVM_CATCH_END(w4332aaab8b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab8b1b5) + label18:; + XMLVM_TRY_BEGIN(w4332aaab8b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaab8b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaab8b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab8b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaab8b1b7,java_lang_Object,18) + XMLVM_CATCH_END(w4332aaab8b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab8b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "equals", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 745) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaab9b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 746) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object])(_r1.o, _r3.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaab9b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaab9b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab9b1b6) + XMLVM_CATCH_SPECIFIC(w4332aaab9b1b6,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaab9b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab9b1b6) + label11:; + XMLVM_TRY_BEGIN(w4332aaab9b1b8) + // Begin try + java_lang_Thread* curThread_w4332aaab9b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaab9b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaab9b1b8) + XMLVM_CATCH_SPECIFIC(w4332aaab9b1b8,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaab9b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaab9b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_SynchronizedMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_get___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "get", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 751) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac10b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 752) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object])(_r1.o, _r3.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac10b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac10b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac10b1b6) + XMLVM_CATCH_SPECIFIC(w4332aaac10b1b6,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac10b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac10b1b6) + label11:; + XMLVM_TRY_BEGIN(w4332aaac10b1b8) + // Begin try + java_lang_Thread* curThread_w4332aaac10b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac10b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac10b1b8) + XMLVM_CATCH_SPECIFIC(w4332aaac10b1b8,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac10b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac10b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_SynchronizedMap_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_hashCode__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "hashCode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 758) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac11b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 759) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_hashCode__])(_r1.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac11b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac11b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac11b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaac11b1b5,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac11b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac11b1b5) + label11:; + XMLVM_TRY_BEGIN(w4332aaac11b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaac11b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac11b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac11b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaac11b1b7,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac11b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac11b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_isEmpty__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "isEmpty", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 764) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac12b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 765) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__])(_r1.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac12b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac12b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac12b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaac12b1b5,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac12b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac12b1b5) + label11:; + XMLVM_TRY_BEGIN(w4332aaac12b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaac12b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac12b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac12b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaac12b1b7,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac12b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac12b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_SynchronizedMap_keySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_keySet__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "keySet", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 770) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac13b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 771) + + + // Red class access removed: java.util.Collections$SynchronizedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_keySet__])(_r2.o); + XMLVM_CHECK_NPE(4) + _r3.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + + + // Red class access removed: java.util.Collections$SynchronizedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac13b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac13b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac13b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaac13b1b5,java_lang_Object,18) + XMLVM_CATCH_END(w4332aaac13b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac13b1b5) + label18:; + XMLVM_TRY_BEGIN(w4332aaac13b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaac13b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac13b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac13b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaac13b1b7,java_lang_Object,18) + XMLVM_CATCH_END(w4332aaac13b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac13b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_SynchronizedMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_put___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "put", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("Collections.java", 776) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac14b1b7) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 777) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object])(_r1.o, _r3.o, _r4.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac14b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac14b1b7, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac14b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaac14b1b7,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac14b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac14b1b7) + label11:; + XMLVM_TRY_BEGIN(w4332aaac14b1b9) + // Begin try + java_lang_Thread* curThread_w4332aaac14b1b9aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac14b1b9aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac14b1b9) + XMLVM_CATCH_SPECIFIC(w4332aaac14b1b9,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac14b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac14b1b9) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +void java_util_Collections_SynchronizedMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_putAll___java_util_Map] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "putAll", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 782) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac15b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 783) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map])(_r1.o, _r3.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 785) + XMLVM_MEMCPY(curThread_w4332aaac15b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac15b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac15b1b6) + XMLVM_CATCH_SPECIFIC(w4332aaac15b1b6,java_lang_Object,10) + XMLVM_CATCH_END(w4332aaac15b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac15b1b6) + label10:; + XMLVM_TRY_BEGIN(w4332aaac15b1b8) + // Begin try + java_lang_Thread* curThread_w4332aaac15b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac15b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac15b1b8) + XMLVM_CATCH_SPECIFIC(w4332aaac15b1b8,java_lang_Object,10) + XMLVM_CATCH_END(w4332aaac15b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac15b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_SynchronizedMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "remove", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 788) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac16b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 789) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object])(_r1.o, _r3.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac16b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac16b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac16b1b6) + XMLVM_CATCH_SPECIFIC(w4332aaac16b1b6,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac16b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac16b1b6) + label11:; + XMLVM_TRY_BEGIN(w4332aaac16b1b8) + // Begin try + java_lang_Thread* curThread_w4332aaac16b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac16b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac16b1b8) + XMLVM_CATCH_SPECIFIC(w4332aaac16b1b8,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac16b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac16b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Collections_SynchronizedMap_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_size__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "size", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 794) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac17b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 795) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r1.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac17b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac17b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac17b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaac17b1b5,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac17b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac17b1b5) + label11:; + XMLVM_TRY_BEGIN(w4332aaac17b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaac17b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac17b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac17b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaac17b1b7,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac17b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac17b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_SynchronizedMap_values__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_values__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "values", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 800) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac18b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 801) + + + // Red class access removed: java.util.Collections$SynchronizedCollection::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.m_; + XMLVM_CHECK_NPE(2) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_values__])(_r2.o); + XMLVM_CHECK_NPE(4) + _r3.o = ((java_util_Collections_SynchronizedMap*) _r4.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + + + // Red class access removed: java.util.Collections$SynchronizedCollection:: + XMLVM_RED_CLASS_DEPENDENCY(); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac18b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac18b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac18b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaac18b1b5,java_lang_Object,18) + XMLVM_CATCH_END(w4332aaac18b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac18b1b5) + label18:; + XMLVM_TRY_BEGIN(w4332aaac18b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaac18b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac18b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac18b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaac18b1b7,java_lang_Object,18) + XMLVM_CATCH_END(w4332aaac18b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac18b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Collections_SynchronizedMap_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_toString__] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "toString", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Collections.java", 807) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac19b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 808) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.m_; + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[5])(_r1.o); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_MEMCPY(curThread_w4332aaac19b1b5->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac19b1b5, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac19b1b5) + XMLVM_CATCH_SPECIFIC(w4332aaac19b1b5,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac19b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac19b1b5) + label11:; + XMLVM_TRY_BEGIN(w4332aaac19b1b7) + // Begin try + java_lang_Thread* curThread_w4332aaac19b1b7aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac19b1b7aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac19b1b7) + XMLVM_CATCH_SPECIFIC(w4332aaac19b1b7,java_lang_Object,11) + XMLVM_CATCH_END(w4332aaac19b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac19b1b7) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +void java_util_Collections_SynchronizedMap_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Collections_SynchronizedMap_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.Collections$SynchronizedMap", "writeObject", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Collections.java", 813) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Collections_SynchronizedMap*) _r2.o)->fields.java_util_Collections_SynchronizedMap.mutex_; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w4332aaac20b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Collections.java", 814) + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_SOURCE_POSITION("Collections.java", 816) + XMLVM_MEMCPY(curThread_w4332aaac20b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4332aaac20b1b6, sizeof(XMLVM_JMP_BUF)); + XMLVM_EXIT_METHOD() + return; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac20b1b6) + XMLVM_CATCH_SPECIFIC(w4332aaac20b1b6,java_lang_Object,8) + XMLVM_CATCH_END(w4332aaac20b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac20b1b6) + label8:; + XMLVM_TRY_BEGIN(w4332aaac20b1b8) + // Begin try + java_lang_Thread* curThread_w4332aaac20b1b8aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4332aaac20b1b8aa->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4332aaac20b1b8) + XMLVM_CATCH_SPECIFIC(w4332aaac20b1b8,java_lang_Object,8) + XMLVM_CATCH_END(w4332aaac20b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w4332aaac20b1b8) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Collections_SynchronizedMap.h b/tests/nbody-java/java_util_Collections_SynchronizedMap.h new file mode 100644 index 0000000000000..602ca0343cb1f --- /dev/null +++ b/tests/nbody-java/java_util_Collections_SynchronizedMap.h @@ -0,0 +1,120 @@ +#ifndef __JAVA_UTIL_COLLECTIONS_SYNCHRONIZEDMAP__ +#define __JAVA_UTIL_COLLECTIONS_SYNCHRONIZEDMAP__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Collections_SynchronizedMap 14 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_util_Map.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +// Class declarations for java.util.Collections$SynchronizedMap +XMLVM_DEFINE_CLASS(java_util_Collections_SynchronizedMap, 18, XMLVM_ITABLE_SIZE_java_util_Collections_SynchronizedMap) + +extern JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap; +extern JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Collections_SynchronizedMap_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_SynchronizedMap +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Collections_SynchronizedMap \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT m_; \ + JAVA_OBJECT mutex_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Collections_SynchronizedMap \ + } java_util_Collections_SynchronizedMap + +struct java_util_Collections_SynchronizedMap { + __TIB_DEFINITION_java_util_Collections_SynchronizedMap* tib; + struct { + __INSTANCE_FIELDS_java_util_Collections_SynchronizedMap; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Collections_SynchronizedMap +#define XMLVM_FORWARD_DECL_java_util_Collections_SynchronizedMap +typedef struct java_util_Collections_SynchronizedMap java_util_Collections_SynchronizedMap; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Collections_SynchronizedMap 18 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_clear__ 6 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_containsKey___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_containsValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_entrySet__ 9 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_get___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_isEmpty__ 11 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_keySet__ 12 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_put___java_lang_Object_java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_putAll___java_util_Map 13 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_remove___java_lang_Object 15 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_values__ 17 +#define XMLVM_VTABLE_IDX_java_util_Collections_SynchronizedMap_toString__ 5 + +void __INIT_java_util_Collections_SynchronizedMap(); +void __INIT_IMPL_java_util_Collections_SynchronizedMap(); +void __DELETE_java_util_Collections_SynchronizedMap(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Collections_SynchronizedMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Collections_SynchronizedMap(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Collections_SynchronizedMap(); +JAVA_LONG java_util_Collections_SynchronizedMap_GET_serialVersionUID(); +void java_util_Collections_SynchronizedMap_PUT_serialVersionUID(JAVA_LONG v); +void java_util_Collections_SynchronizedMap___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Collections_SynchronizedMap___INIT____java_util_Map_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 6 +void java_util_Collections_SynchronizedMap_clear__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_util_Collections_SynchronizedMap_entrySet__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 10 +JAVA_OBJECT java_util_Collections_SynchronizedMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_util_Collections_SynchronizedMap_hashCode__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_BOOLEAN java_util_Collections_SynchronizedMap_isEmpty__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_util_Collections_SynchronizedMap_keySet__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_OBJECT java_util_Collections_SynchronizedMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 13 +void java_util_Collections_SynchronizedMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 15 +JAVA_OBJECT java_util_Collections_SynchronizedMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_Collections_SynchronizedMap_size__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_Collections_SynchronizedMap_values__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_util_Collections_SynchronizedMap_toString__(JAVA_OBJECT me); +void java_util_Collections_SynchronizedMap_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_Comparator.c b/tests/nbody-java/java_util_Comparator.c new file mode 100644 index 0000000000000..1cfb17a149c5a --- /dev/null +++ b/tests/nbody-java/java_util_Comparator.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_util_Comparator.h" + +__TIB_DEFINITION_java_util_Comparator __TIB_java_util_Comparator = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Comparator, // classInitializer + "java.util.Comparator", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Comparator; +JAVA_OBJECT __CLASS_java_util_Comparator_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Comparator_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Comparator_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Comparator() +{ + staticInitializerLock(&__TIB_java_util_Comparator); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Comparator.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Comparator.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Comparator); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Comparator.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Comparator.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Comparator.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Comparator") + __INIT_IMPL_java_util_Comparator(); + } +} + +void __INIT_IMPL_java_util_Comparator() +{ + __TIB_java_util_Comparator.numInterfaces = 0; + __TIB_java_util_Comparator.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Comparator.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Comparator.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Comparator.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Comparator.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Comparator = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Comparator); + __TIB_java_util_Comparator.clazz = __CLASS_java_util_Comparator; + __TIB_java_util_Comparator.baseType = JAVA_NULL; + __CLASS_java_util_Comparator_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Comparator); + __CLASS_java_util_Comparator_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Comparator_1ARRAY); + __CLASS_java_util_Comparator_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Comparator_2ARRAY); + + __TIB_java_util_Comparator.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Comparator.h b/tests/nbody-java/java_util_Comparator.h new file mode 100644 index 0000000000000..09aef0be90cf0 --- /dev/null +++ b/tests/nbody-java/java_util_Comparator.h @@ -0,0 +1,29 @@ +#ifndef __JAVA_UTIL_COMPARATOR__ +#define __JAVA_UTIL_COMPARATOR__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Comparator_compare___java_lang_Object_java_lang_Object 0 +#define XMLVM_ITABLE_IDX_java_util_Comparator_equals___java_lang_Object 1 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_util_Comparator, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Comparator; +extern JAVA_OBJECT __CLASS_java_util_Comparator_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Comparator_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Comparator_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Comparator +#define XMLVM_FORWARD_DECL_java_util_Comparator +typedef struct java_util_Comparator java_util_Comparator; +#endif + +void __INIT_java_util_Comparator(); +void __INIT_IMPL_java_util_Comparator(); + +#endif diff --git a/tests/nbody-java/java_util_Deque.c b/tests/nbody-java/java_util_Deque.c new file mode 100644 index 0000000000000..51c1a62327a50 --- /dev/null +++ b/tests/nbody-java/java_util_Deque.c @@ -0,0 +1,78 @@ +#include "xmlvm.h" +#include "java_util_Iterator.h" + +#include "java_util_Deque.h" + +__TIB_DEFINITION_java_util_Deque __TIB_java_util_Deque = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Deque, // classInitializer + "java.util.Deque", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Queue;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Deque; +JAVA_OBJECT __CLASS_java_util_Deque_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Deque_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Deque_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Deque() +{ + staticInitializerLock(&__TIB_java_util_Deque); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Deque.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Deque.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Deque); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Deque.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Deque.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Deque.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Deque") + __INIT_IMPL_java_util_Deque(); + } +} + +void __INIT_IMPL_java_util_Deque() +{ + __TIB_java_util_Deque.numInterfaces = 1; + //__TIB_java_util_Deque.baseInterfaces[0] = &__INTERFACE_java_util_Queue; + __TIB_java_util_Deque.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Deque.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Deque.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Deque.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Deque.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Deque = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Deque); + __TIB_java_util_Deque.clazz = __CLASS_java_util_Deque; + __TIB_java_util_Deque.baseType = JAVA_NULL; + __CLASS_java_util_Deque_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Deque); + __CLASS_java_util_Deque_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Deque_1ARRAY); + __CLASS_java_util_Deque_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Deque_2ARRAY); + + __TIB_java_util_Deque.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Deque.h b/tests/nbody-java/java_util_Deque.h new file mode 100644 index 0000000000000..d79fe0ecfbba0 --- /dev/null +++ b/tests/nbody-java/java_util_Deque.h @@ -0,0 +1,69 @@ +#ifndef __JAVA_UTIL_DEQUE__ +#define __JAVA_UTIL_DEQUE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Deque_addFirst___java_lang_Object 17 +#define XMLVM_ITABLE_IDX_java_util_Deque_addLast___java_lang_Object 18 +#define XMLVM_ITABLE_IDX_java_util_Deque_offerFirst___java_lang_Object 31 +#define XMLVM_ITABLE_IDX_java_util_Deque_offerLast___java_lang_Object 32 +#define XMLVM_ITABLE_IDX_java_util_Deque_removeFirst__ 44 +#define XMLVM_ITABLE_IDX_java_util_Deque_removeLast__ 46 +#define XMLVM_ITABLE_IDX_java_util_Deque_pollFirst__ 37 +#define XMLVM_ITABLE_IDX_java_util_Deque_pollLast__ 38 +#define XMLVM_ITABLE_IDX_java_util_Deque_getFirst__ 26 +#define XMLVM_ITABLE_IDX_java_util_Deque_getLast__ 27 +#define XMLVM_ITABLE_IDX_java_util_Deque_peekFirst__ 34 +#define XMLVM_ITABLE_IDX_java_util_Deque_peekLast__ 35 +#define XMLVM_ITABLE_IDX_java_util_Deque_removeFirstOccurrence___java_lang_Object 43 +#define XMLVM_ITABLE_IDX_java_util_Deque_removeLastOccurrence___java_lang_Object 45 +#define XMLVM_ITABLE_IDX_java_util_Deque_push___java_lang_Object 41 +#define XMLVM_ITABLE_IDX_java_util_Deque_pop__ 40 +#define XMLVM_ITABLE_IDX_java_util_Deque_descendingIterator__ 23 +#define XMLVM_ITABLE_IDX_java_util_Deque_addAll___java_util_Collection 16 +#define XMLVM_ITABLE_IDX_java_util_Deque_add___java_lang_Object 19 +#define XMLVM_ITABLE_IDX_java_util_Deque_clear__ 20 +#define XMLVM_ITABLE_IDX_java_util_Deque_containsAll___java_util_Collection 21 +#define XMLVM_ITABLE_IDX_java_util_Deque_contains___java_lang_Object 22 +#define XMLVM_ITABLE_IDX_java_util_Deque_element__ 24 +#define XMLVM_ITABLE_IDX_java_util_Deque_equals___java_lang_Object 25 +#define XMLVM_ITABLE_IDX_java_util_Deque_hashCode__ 28 +#define XMLVM_ITABLE_IDX_java_util_Deque_isEmpty__ 29 +#define XMLVM_ITABLE_IDX_java_util_Deque_iterator__ 30 +#define XMLVM_ITABLE_IDX_java_util_Deque_offer___java_lang_Object 33 +#define XMLVM_ITABLE_IDX_java_util_Deque_peek__ 36 +#define XMLVM_ITABLE_IDX_java_util_Deque_poll__ 39 +#define XMLVM_ITABLE_IDX_java_util_Deque_removeAll___java_util_Collection 42 +#define XMLVM_ITABLE_IDX_java_util_Deque_remove__ 47 +#define XMLVM_ITABLE_IDX_java_util_Deque_remove___java_lang_Object 48 +#define XMLVM_ITABLE_IDX_java_util_Deque_retainAll___java_util_Collection 49 +#define XMLVM_ITABLE_IDX_java_util_Deque_size__ 50 +#define XMLVM_ITABLE_IDX_java_util_Deque_toArray__ 51 +#define XMLVM_ITABLE_IDX_java_util_Deque_toArray___java_lang_Object_1ARRAY 52 +// Implemented interfaces: +#include "java_util_Queue.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif + +XMLVM_DEFINE_CLASS(java_util_Deque, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Deque; +extern JAVA_OBJECT __CLASS_java_util_Deque_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Deque_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Deque_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Deque +#define XMLVM_FORWARD_DECL_java_util_Deque +typedef struct java_util_Deque java_util_Deque; +#endif + +void __INIT_java_util_Deque(); +void __INIT_IMPL_java_util_Deque(); + +#endif diff --git a/tests/nbody-java/java_util_Dictionary.c b/tests/nbody-java/java_util_Dictionary.c new file mode 100644 index 0000000000000..7bcac8df5343e --- /dev/null +++ b/tests/nbody-java/java_util_Dictionary.c @@ -0,0 +1,159 @@ +#include "xmlvm.h" +#include "java_util_Enumeration.h" + +#include "java_util_Dictionary.h" + +#define XMLVM_CURRENT_CLASS_NAME Dictionary +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Dictionary + +__TIB_DEFINITION_java_util_Dictionary __TIB_java_util_Dictionary = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Dictionary, // classInitializer + "java.util.Dictionary", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_Dictionary), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Dictionary; +JAVA_OBJECT __CLASS_java_util_Dictionary_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Dictionary_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Dictionary_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Dictionary() +{ + staticInitializerLock(&__TIB_java_util_Dictionary); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Dictionary.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Dictionary.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Dictionary); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Dictionary.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Dictionary.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Dictionary.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Dictionary") + __INIT_IMPL_java_util_Dictionary(); + } +} + +void __INIT_IMPL_java_util_Dictionary() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_Dictionary.newInstanceFunc = __NEW_INSTANCE_java_util_Dictionary; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Dictionary.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_util_Dictionary.numImplementedInterfaces = 0; + __TIB_java_util_Dictionary.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_util_Dictionary.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Dictionary.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Dictionary.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Dictionary.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Dictionary.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Dictionary.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Dictionary.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Dictionary.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Dictionary = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Dictionary); + __TIB_java_util_Dictionary.clazz = __CLASS_java_util_Dictionary; + __TIB_java_util_Dictionary.baseType = JAVA_NULL; + __CLASS_java_util_Dictionary_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Dictionary); + __CLASS_java_util_Dictionary_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Dictionary_1ARRAY); + __CLASS_java_util_Dictionary_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Dictionary_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Dictionary] + //XMLVM_END_WRAPPER + + __TIB_java_util_Dictionary.classInitialized = 1; +} + +void __DELETE_java_util_Dictionary(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Dictionary] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Dictionary(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Dictionary] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Dictionary() +{ XMLVM_CLASS_INIT(java_util_Dictionary) +java_util_Dictionary* me = (java_util_Dictionary*) XMLVM_MALLOC(sizeof(java_util_Dictionary)); + me->tib = &__TIB_java_util_Dictionary; + __INIT_INSTANCE_MEMBERS_java_util_Dictionary(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Dictionary] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Dictionary() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_Dictionary(); + java_util_Dictionary___INIT___(me); + return me; +} + +void java_util_Dictionary___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Dictionary___INIT___] + XMLVM_ENTER_METHOD("java.util.Dictionary", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Dictionary.java", 35) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Dictionary.java", 36) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Dictionary.h b/tests/nbody-java/java_util_Dictionary.h new file mode 100644 index 0000000000000..d4fa12ad52f3b --- /dev/null +++ b/tests/nbody-java/java_util_Dictionary.h @@ -0,0 +1,76 @@ +#ifndef __JAVA_UTIL_DICTIONARY__ +#define __JAVA_UTIL_DICTIONARY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Dictionary 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +// Class declarations for java.util.Dictionary +XMLVM_DEFINE_CLASS(java_util_Dictionary, 13, XMLVM_ITABLE_SIZE_java_util_Dictionary) + +extern JAVA_OBJECT __CLASS_java_util_Dictionary; +extern JAVA_OBJECT __CLASS_java_util_Dictionary_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Dictionary_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Dictionary_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Dictionary +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Dictionary \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Dictionary \ + } java_util_Dictionary + +struct java_util_Dictionary { + __TIB_DEFINITION_java_util_Dictionary* tib; + struct { + __INSTANCE_FIELDS_java_util_Dictionary; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Dictionary +#define XMLVM_FORWARD_DECL_java_util_Dictionary +typedef struct java_util_Dictionary java_util_Dictionary; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Dictionary 13 +#define XMLVM_VTABLE_IDX_java_util_Dictionary_elements__ 6 +#define XMLVM_VTABLE_IDX_java_util_Dictionary_get___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_Dictionary_isEmpty__ 8 +#define XMLVM_VTABLE_IDX_java_util_Dictionary_keys__ 9 +#define XMLVM_VTABLE_IDX_java_util_Dictionary_put___java_lang_Object_java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_Dictionary_remove___java_lang_Object 11 +#define XMLVM_VTABLE_IDX_java_util_Dictionary_size__ 12 + +void __INIT_java_util_Dictionary(); +void __INIT_IMPL_java_util_Dictionary(); +void __DELETE_java_util_Dictionary(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Dictionary(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Dictionary(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Dictionary(); +void java_util_Dictionary___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT java_util_Dictionary_elements__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_util_Dictionary_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_util_Dictionary_isEmpty__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_OBJECT java_util_Dictionary_keys__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_OBJECT java_util_Dictionary_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 11 +JAVA_OBJECT java_util_Dictionary_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 12 +JAVA_INT java_util_Dictionary_size__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_Enumeration.c b/tests/nbody-java/java_util_Enumeration.c new file mode 100644 index 0000000000000..e69b0e5d45a5f --- /dev/null +++ b/tests/nbody-java/java_util_Enumeration.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_util_Enumeration.h" + +__TIB_DEFINITION_java_util_Enumeration __TIB_java_util_Enumeration = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Enumeration, // classInitializer + "java.util.Enumeration", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Enumeration; +JAVA_OBJECT __CLASS_java_util_Enumeration_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Enumeration_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Enumeration_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Enumeration() +{ + staticInitializerLock(&__TIB_java_util_Enumeration); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Enumeration.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Enumeration.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Enumeration); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Enumeration.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Enumeration.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Enumeration.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Enumeration") + __INIT_IMPL_java_util_Enumeration(); + } +} + +void __INIT_IMPL_java_util_Enumeration() +{ + __TIB_java_util_Enumeration.numInterfaces = 0; + __TIB_java_util_Enumeration.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Enumeration.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Enumeration.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Enumeration.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Enumeration.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Enumeration = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Enumeration); + __TIB_java_util_Enumeration.clazz = __CLASS_java_util_Enumeration; + __TIB_java_util_Enumeration.baseType = JAVA_NULL; + __CLASS_java_util_Enumeration_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Enumeration); + __CLASS_java_util_Enumeration_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Enumeration_1ARRAY); + __CLASS_java_util_Enumeration_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Enumeration_2ARRAY); + + __TIB_java_util_Enumeration.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Enumeration.h b/tests/nbody-java/java_util_Enumeration.h new file mode 100644 index 0000000000000..b1c3e5bebfb29 --- /dev/null +++ b/tests/nbody-java/java_util_Enumeration.h @@ -0,0 +1,29 @@ +#ifndef __JAVA_UTIL_ENUMERATION__ +#define __JAVA_UTIL_ENUMERATION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__ 0 +#define XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__ 1 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_util_Enumeration, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Enumeration; +extern JAVA_OBJECT __CLASS_java_util_Enumeration_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Enumeration_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Enumeration_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +typedef struct java_util_Enumeration java_util_Enumeration; +#endif + +void __INIT_java_util_Enumeration(); +void __INIT_IMPL_java_util_Enumeration(); + +#endif diff --git a/tests/nbody-java/java_util_HashMap.c b/tests/nbody-java/java_util_HashMap.c new file mode 100644 index 0000000000000..b647ecdae6862 --- /dev/null +++ b/tests/nbody-java/java_util_HashMap.c @@ -0,0 +1,1700 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_util_Collection.h" +#include "java_util_HashMap_Entry.h" +#include "java_util_Iterator.h" +#include "java_util_Map_Entry.h" +#include "java_util_Set.h" + +#include "java_util_HashMap.h" + +#define XMLVM_CURRENT_CLASS_NAME HashMap +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_HashMap + +__TIB_DEFINITION_java_util_HashMap __TIB_java_util_HashMap = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_HashMap, // classInitializer + "java.util.HashMap", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractMap;Ljava/util/Map;Ljava/lang/Cloneable;Ljava/io/Serializable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractMap, // extends + sizeof(java_util_HashMap), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_HashMap; +JAVA_OBJECT __CLASS_java_util_HashMap_1ARRAY; +JAVA_OBJECT __CLASS_java_util_HashMap_2ARRAY; +JAVA_OBJECT __CLASS_java_util_HashMap_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_HashMap_serialVersionUID; +static JAVA_INT _STATIC_java_util_HashMap_DEFAULT_SIZE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_HashMap() +{ + staticInitializerLock(&__TIB_java_util_HashMap); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_HashMap.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_HashMap.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_HashMap); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_HashMap.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_HashMap.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_HashMap.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.HashMap") + __INIT_IMPL_java_util_HashMap(); + } +} + +void __INIT_IMPL_java_util_HashMap() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractMap) + __TIB_java_util_HashMap.newInstanceFunc = __NEW_INSTANCE_java_util_HashMap; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_HashMap.vtable, __TIB_java_util_AbstractMap.vtable, sizeof(__TIB_java_util_AbstractMap.vtable)); + // Initialize vtable for this class + __TIB_java_util_HashMap.vtable[6] = (VTABLE_PTR) &java_util_HashMap_clear__; + __TIB_java_util_HashMap.vtable[0] = (VTABLE_PTR) &java_util_HashMap_clone__; + __TIB_java_util_HashMap.vtable[7] = (VTABLE_PTR) &java_util_HashMap_containsKey___java_lang_Object; + __TIB_java_util_HashMap.vtable[8] = (VTABLE_PTR) &java_util_HashMap_containsValue___java_lang_Object; + __TIB_java_util_HashMap.vtable[9] = (VTABLE_PTR) &java_util_HashMap_entrySet__; + __TIB_java_util_HashMap.vtable[10] = (VTABLE_PTR) &java_util_HashMap_get___java_lang_Object; + __TIB_java_util_HashMap.vtable[11] = (VTABLE_PTR) &java_util_HashMap_isEmpty__; + __TIB_java_util_HashMap.vtable[12] = (VTABLE_PTR) &java_util_HashMap_keySet__; + __TIB_java_util_HashMap.vtable[14] = (VTABLE_PTR) &java_util_HashMap_put___java_lang_Object_java_lang_Object; + __TIB_java_util_HashMap.vtable[13] = (VTABLE_PTR) &java_util_HashMap_putAll___java_util_Map; + __TIB_java_util_HashMap.vtable[15] = (VTABLE_PTR) &java_util_HashMap_remove___java_lang_Object; + __TIB_java_util_HashMap.vtable[16] = (VTABLE_PTR) &java_util_HashMap_size__; + __TIB_java_util_HashMap.vtable[17] = (VTABLE_PTR) &java_util_HashMap_values__; + // Initialize interface information + __TIB_java_util_HashMap.numImplementedInterfaces = 3; + __TIB_java_util_HashMap.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_HashMap.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_HashMap.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_util_Map) + + __TIB_java_util_HashMap.implementedInterfaces[0][2] = &__TIB_java_util_Map; + // Initialize itable for this class + __TIB_java_util_HashMap.itableBegin = &__TIB_java_util_HashMap.itable[0]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_clear__] = __TIB_java_util_HashMap.vtable[6]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object] = __TIB_java_util_HashMap.vtable[7]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object] = __TIB_java_util_HashMap.vtable[8]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_entrySet__] = __TIB_java_util_HashMap.vtable[9]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object] = __TIB_java_util_HashMap.vtable[1]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object] = __TIB_java_util_HashMap.vtable[10]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_hashCode__] = __TIB_java_util_HashMap.vtable[4]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__] = __TIB_java_util_HashMap.vtable[11]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_keySet__] = __TIB_java_util_HashMap.vtable[12]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map] = __TIB_java_util_HashMap.vtable[13]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object] = __TIB_java_util_HashMap.vtable[14]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object] = __TIB_java_util_HashMap.vtable[15]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_size__] = __TIB_java_util_HashMap.vtable[16]; + __TIB_java_util_HashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_values__] = __TIB_java_util_HashMap.vtable[17]; + + _STATIC_java_util_HashMap_serialVersionUID = 362498820763181265; + _STATIC_java_util_HashMap_DEFAULT_SIZE = 16; + + __TIB_java_util_HashMap.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_HashMap.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_HashMap.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_HashMap.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_HashMap.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_HashMap.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_HashMap.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_HashMap.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_HashMap = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_HashMap); + __TIB_java_util_HashMap.clazz = __CLASS_java_util_HashMap; + __TIB_java_util_HashMap.baseType = JAVA_NULL; + __CLASS_java_util_HashMap_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashMap); + __CLASS_java_util_HashMap_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashMap_1ARRAY); + __CLASS_java_util_HashMap_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashMap_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_HashMap] + //XMLVM_END_WRAPPER + + __TIB_java_util_HashMap.classInitialized = 1; +} + +void __DELETE_java_util_HashMap(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_HashMap] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_HashMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractMap(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_HashMap*) me)->fields.java_util_HashMap.elementCount_ = 0; + ((java_util_HashMap*) me)->fields.java_util_HashMap.elementData_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_util_HashMap*) me)->fields.java_util_HashMap.modCount_ = 0; + ((java_util_HashMap*) me)->fields.java_util_HashMap.loadFactor_ = 0; + ((java_util_HashMap*) me)->fields.java_util_HashMap.threshold_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_HashMap] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_HashMap() +{ XMLVM_CLASS_INIT(java_util_HashMap) +java_util_HashMap* me = (java_util_HashMap*) XMLVM_MALLOC(sizeof(java_util_HashMap)); + me->tib = &__TIB_java_util_HashMap; + __INIT_INSTANCE_MEMBERS_java_util_HashMap(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_HashMap] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_HashMap() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_HashMap(); + java_util_HashMap___INIT___(me); + return me; +} + +JAVA_LONG java_util_HashMap_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_HashMap) + return _STATIC_java_util_HashMap_serialVersionUID; +} + +void java_util_HashMap_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_HashMap) +_STATIC_java_util_HashMap_serialVersionUID = v; +} + +JAVA_INT java_util_HashMap_GET_DEFAULT_SIZE() +{ + XMLVM_CLASS_INIT(java_util_HashMap) + return _STATIC_java_util_HashMap_DEFAULT_SIZE; +} + +void java_util_HashMap_PUT_DEFAULT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_HashMap) +_STATIC_java_util_HashMap_DEFAULT_SIZE = v; +} + +JAVA_OBJECT java_util_HashMap_newElementArray___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_newElementArray___int] + XMLVM_ENTER_METHOD("java.util.HashMap", "newElementArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 268) + XMLVM_CLASS_INIT(java_util_HashMap_Entry) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_util_HashMap_Entry, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap___INIT___] + XMLVM_ENTER_METHOD("java.util.HashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 275) + _r0.i = 16; + XMLVM_CHECK_NPE(1) + java_util_HashMap___INIT____int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("HashMap.java", 276) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap___INIT____int] + XMLVM_ENTER_METHOD("java.util.HashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 287) + _r0.f = 0.75; + XMLVM_CHECK_NPE(1) + java_util_HashMap___INIT____int_float(_r1.o, _r2.i, _r0.f); + XMLVM_SOURCE_POSITION("HashMap.java", 288) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_HashMap_calculateCapacity___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_util_HashMap) + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_calculateCapacity___int] + XMLVM_ENTER_METHOD("java.util.HashMap", "calculateCapacity", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.i = n1; + _r0.i = 1073741824; + XMLVM_SOURCE_POSITION("HashMap.java", 299) + if (_r2.i < _r0.i) goto label5; + label4:; + XMLVM_SOURCE_POSITION("HashMap.java", 311) + XMLVM_EXIT_METHOD() + return _r0.i; + label5:; + XMLVM_SOURCE_POSITION("HashMap.java", 302) + if (_r2.i != 0) goto label10; + XMLVM_SOURCE_POSITION("HashMap.java", 303) + _r0.i = 16; + goto label4; + label10:; + XMLVM_SOURCE_POSITION("HashMap.java", 305) + _r0.i = _r2.i + -1; + _r1.i = _r0.i >> 1; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 2; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 4; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 8; + _r0.i = _r0.i | _r1.i; + _r1.i = _r0.i >> 16; + _r0.i = _r0.i | _r1.i; + _r0.i = _r0.i + 1; + goto label4; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap___INIT____int_float] + XMLVM_ENTER_METHOD("java.util.HashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.i = n1; + _r4.f = n2; + _r1.i = 0; + XMLVM_SOURCE_POSITION("HashMap.java", 326) + XMLVM_CHECK_NPE(2) + java_util_AbstractMap___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("HashMap.java", 48) + XMLVM_CHECK_NPE(2) + ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.modCount_ = _r1.i; + XMLVM_SOURCE_POSITION("HashMap.java", 327) + if (_r3.i < 0) goto label31; + _r0.f = 0.0; + _r0.i = _r4.f > _r0.f ? 1 : (_r4.f == _r0.f ? 0 : -1); + if (_r0.i <= 0) goto label31; + XMLVM_SOURCE_POSITION("HashMap.java", 328) + _r0.i = java_util_HashMap_calculateCapacity___int(_r3.i); + XMLVM_SOURCE_POSITION("HashMap.java", 329) + XMLVM_CHECK_NPE(2) + ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementCount_ = _r1.i; + XMLVM_SOURCE_POSITION("HashMap.java", 330) + XMLVM_CHECK_NPE(2) + _r0.o = java_util_HashMap_newElementArray___int(_r2.o, _r0.i); + XMLVM_CHECK_NPE(2) + ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_ = _r0.o; + XMLVM_SOURCE_POSITION("HashMap.java", 331) + XMLVM_CHECK_NPE(2) + ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.loadFactor_ = _r4.f; + XMLVM_SOURCE_POSITION("HashMap.java", 332) + XMLVM_CHECK_NPE(2) + java_util_HashMap_computeThreshold__(_r2.o); + XMLVM_SOURCE_POSITION("HashMap.java", 336) + XMLVM_EXIT_METHOD() + return; + label31:; + XMLVM_SOURCE_POSITION("HashMap.java", 334) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_HashMap___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap___INIT____java_util_Map] + XMLVM_ENTER_METHOD("java.util.HashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 346) + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r2.o); + _r0.i = java_util_HashMap_calculateCapacity___int(_r0.i); + XMLVM_CHECK_NPE(1) + java_util_HashMap___INIT____int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("HashMap.java", 347) + XMLVM_CHECK_NPE(1) + java_util_HashMap_putAllImpl___java_util_Map(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("HashMap.java", 348) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_clear__] + XMLVM_ENTER_METHOD("java.util.HashMap", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 358) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementCount_; + if (_r0.i <= 0) goto label19; + XMLVM_SOURCE_POSITION("HashMap.java", 359) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 360) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + _r1.o = JAVA_NULL; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 361) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(2) + ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.modCount_ = _r0.i; + label19:; + XMLVM_SOURCE_POSITION("HashMap.java", 363) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_clone__] + XMLVM_ENTER_METHOD("java.util.HashMap", "clone", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_TRY_BEGIN(w2219aaac14b1b2) + // Begin try + XMLVM_SOURCE_POSITION("HashMap.java", 374) + XMLVM_CHECK_NPE(2) + _r0.o = java_util_AbstractMap_clone__(_r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("HashMap.java", 375) + _r1.i = 0; + XMLVM_CHECK_NPE(0) + ((java_util_HashMap*) _r0.o)->fields.java_util_HashMap.elementCount_ = _r1.i; + XMLVM_SOURCE_POSITION("HashMap.java", 376) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CHECK_NPE(2) + _r1.o = java_util_HashMap_newElementArray___int(_r2.o, _r1.i); + XMLVM_CHECK_NPE(0) + ((java_util_HashMap*) _r0.o)->fields.java_util_HashMap.elementData_ = _r1.o; + XMLVM_SOURCE_POSITION("HashMap.java", 377) + //java_util_HashMap_putAll___java_util_Map[13] + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[13])(_r0.o, _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2219aaac14b1b2) + XMLVM_CATCH_END(w2219aaac14b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w2219aaac14b1b2) + label21:; + XMLVM_SOURCE_POSITION("HashMap.java", 381) + XMLVM_EXIT_METHOD() + return _r0.o; + label22:; + java_lang_Thread* curThread_w2219aaac14b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2219aaac14b1b7->fields.java_lang_Thread.xmlvmException_; + _r0.o = JAVA_NULL; + goto label21; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_computeThreshold__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_computeThreshold__] + XMLVM_ENTER_METHOD("java.util.HashMap", "computeThreshold", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 389) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_CHECK_NPE(2) + _r1.f = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.loadFactor_; + _r0.f = _r0.f * _r1.f; + _r0.i = (JAVA_INT) _r0.f; + XMLVM_CHECK_NPE(2) + ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.threshold_ = _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 390) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_containsKey___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "containsKey", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 402) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_HashMap_getEntry___java_lang_Object(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("HashMap.java", 403) + if (_r0.o == JAVA_NULL) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_containsValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "containsValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("HashMap.java", 416) + if (_r6.o == JAVA_NULL) goto label34; + _r0 = _r3; + label5:; + XMLVM_SOURCE_POSITION("HashMap.java", 417) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_HashMap*) _r5.o)->fields.java_util_HashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i < _r1.i) goto label12; + label10:; + _r0 = _r3; + label11:; + XMLVM_SOURCE_POSITION("HashMap.java", 437) + XMLVM_EXIT_METHOD() + return _r0.i; + label12:; + XMLVM_SOURCE_POSITION("HashMap.java", 418) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_HashMap*) _r5.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label16:; + XMLVM_SOURCE_POSITION("HashMap.java", 419) + if (_r1.o != JAVA_NULL) goto label21; + _r0.i = _r0.i + 1; + goto label5; + label21:; + XMLVM_SOURCE_POSITION("HashMap.java", 420) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + _r2.i = java_util_HashMap_areEqualValues___java_lang_Object_java_lang_Object(_r6.o, _r2.o); + if (_r2.i == 0) goto label31; + _r0 = _r4; + XMLVM_SOURCE_POSITION("HashMap.java", 421) + goto label11; + label31:; + XMLVM_SOURCE_POSITION("HashMap.java", 423) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.next_; + goto label16; + label34:; + _r0 = _r3; + label35:; + XMLVM_SOURCE_POSITION("HashMap.java", 427) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_HashMap*) _r5.o)->fields.java_util_HashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i >= _r1.i) goto label10; + XMLVM_SOURCE_POSITION("HashMap.java", 428) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_HashMap*) _r5.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label44:; + XMLVM_SOURCE_POSITION("HashMap.java", 429) + if (_r1.o != JAVA_NULL) goto label49; + _r0.i = _r0.i + 1; + goto label35; + label49:; + XMLVM_SOURCE_POSITION("HashMap.java", 430) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + if (_r2.o != JAVA_NULL) goto label55; + _r0 = _r4; + XMLVM_SOURCE_POSITION("HashMap.java", 431) + goto label11; + label55:; + XMLVM_SOURCE_POSITION("HashMap.java", 433) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.next_; + goto label44; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_entrySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_entrySet__] + XMLVM_ENTER_METHOD("java.util.HashMap", "entrySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 449) + + + // Red class access removed: java.util.HashMap$HashMapEntrySet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.HashMap$HashMapEntrySet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_get___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 462) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_HashMap_getEntry___java_lang_Object(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("HashMap.java", 463) + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("HashMap.java", 464) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.value_; + label8:; + XMLVM_SOURCE_POSITION("HashMap.java", 466) + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + _r0.o = JAVA_NULL; + goto label8; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_getEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_getEntry___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "getEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 471) + if (_r4.o != JAVA_NULL) goto label7; + XMLVM_SOURCE_POSITION("HashMap.java", 472) + XMLVM_CHECK_NPE(3) + _r0.o = java_util_HashMap_findNullKeyEntry__(_r3.o); + label6:; + XMLVM_SOURCE_POSITION("HashMap.java", 478) + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + XMLVM_SOURCE_POSITION("HashMap.java", 474) + _r0.i = java_util_HashMap_computeHashCode___java_lang_Object(_r4.o); + XMLVM_SOURCE_POSITION("HashMap.java", 475) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + _r1.i = _r1.i & _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 476) + XMLVM_CHECK_NPE(3) + _r0.o = java_util_HashMap_findNonNullKeyEntry___java_lang_Object_int_int(_r3.o, _r4.o, _r1.i, _r0.i); + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_findNonNullKeyEntry___java_lang_Object_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_findNonNullKeyEntry___java_lang_Object_int_int] + XMLVM_ENTER_METHOD("java.util.HashMap", "findNonNullKeyEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("HashMap.java", 482) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r4.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + label4:; + XMLVM_SOURCE_POSITION("HashMap.java", 483) + if (_r0.o == JAVA_NULL) goto label18; + XMLVM_SOURCE_POSITION("HashMap.java", 484) + XMLVM_CHECK_NPE(0) + _r1.i = ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.origKeyHash_; + if (_r1.i != _r5.i) goto label19; + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.key_; + _r1.i = java_util_HashMap_areEqualKeys___java_lang_Object_java_lang_Object(_r3.o, _r1.o); + if (_r1.i == 0) goto label19; + label18:; + XMLVM_SOURCE_POSITION("HashMap.java", 487) + XMLVM_EXIT_METHOD() + return _r0.o; + label19:; + XMLVM_SOURCE_POSITION("HashMap.java", 485) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_; + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_findNullKeyEntry__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_findNullKeyEntry__] + XMLVM_ENTER_METHOD("java.util.HashMap", "findNullKeyEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 491) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + _r1.i = 0; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + label5:; + XMLVM_SOURCE_POSITION("HashMap.java", 492) + if (_r0.o == JAVA_NULL) goto label11; + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.key_; + if (_r1.o != JAVA_NULL) goto label12; + label11:; + XMLVM_SOURCE_POSITION("HashMap.java", 494) + XMLVM_EXIT_METHOD() + return _r0.o; + label12:; + XMLVM_SOURCE_POSITION("HashMap.java", 493) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashMap_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_isEmpty__] + XMLVM_ENTER_METHOD("java.util.HashMap", "isEmpty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 506) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_HashMap*) _r1.o)->fields.java_util_HashMap.elementCount_; + if (_r0.i != 0) goto label6; + _r0.i = 1; + label5:; + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + _r0.i = 0; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_keySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_keySet__] + XMLVM_ENTER_METHOD("java.util.HashMap", "keySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 518) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_; + if (_r0.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("HashMap.java", 519) + + + // Red class access removed: java.util.HashMap$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.HashMap$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_ = _r0.o; + label11:; + XMLVM_SOURCE_POSITION("HashMap.java", 547) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_put___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("HashMap.java", 562) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_HashMap_putImpl___java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_putImpl___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_putImpl___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "putImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.o = n1; + _r5.o = n2; + _r1.i = 0; + XMLVM_SOURCE_POSITION("HashMap.java", 567) + if (_r4.o != JAVA_NULL) goto label38; + XMLVM_SOURCE_POSITION("HashMap.java", 568) + XMLVM_CHECK_NPE(3) + _r0.o = java_util_HashMap_findNullKeyEntry__(_r3.o); + XMLVM_SOURCE_POSITION("HashMap.java", 569) + if (_r0.o != JAVA_NULL) goto label33; + XMLVM_SOURCE_POSITION("HashMap.java", 570) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 571) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(3) + _r0.o = java_util_HashMap_createHashedEntry___java_lang_Object_int_int(_r3.o, _r0.o, _r1.i, _r1.i); + XMLVM_SOURCE_POSITION("HashMap.java", 572) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.elementCount_; + _r1.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.elementCount_ = _r1.i; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.threshold_; + if (_r1.i <= _r2.i) goto label33; + XMLVM_SOURCE_POSITION("HashMap.java", 573) + XMLVM_CHECK_NPE(3) + java_util_HashMap_rehash__(_r3.o); + label33:; + XMLVM_SOURCE_POSITION("HashMap.java", 589) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.value_; + XMLVM_SOURCE_POSITION("HashMap.java", 590) + XMLVM_CHECK_NPE(0) + ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.value_ = _r5.o; + XMLVM_SOURCE_POSITION("HashMap.java", 591) + XMLVM_EXIT_METHOD() + return _r1.o; + label38:; + XMLVM_SOURCE_POSITION("HashMap.java", 577) + _r0.i = java_util_HashMap_computeHashCode___java_lang_Object(_r4.o); + XMLVM_SOURCE_POSITION("HashMap.java", 578) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + _r1.i = _r1.i & _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 579) + XMLVM_CHECK_NPE(3) + _r2.o = java_util_HashMap_findNonNullKeyEntry___java_lang_Object_int_int(_r3.o, _r4.o, _r1.i, _r0.i); + XMLVM_SOURCE_POSITION("HashMap.java", 580) + if (_r2.o != JAVA_NULL) goto label78; + XMLVM_SOURCE_POSITION("HashMap.java", 581) + XMLVM_CHECK_NPE(3) + _r2.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.modCount_; + _r2.i = _r2.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.modCount_ = _r2.i; + XMLVM_SOURCE_POSITION("HashMap.java", 582) + XMLVM_CHECK_NPE(3) + _r0.o = java_util_HashMap_createHashedEntry___java_lang_Object_int_int(_r3.o, _r4.o, _r1.i, _r0.i); + XMLVM_SOURCE_POSITION("HashMap.java", 583) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.elementCount_; + _r1.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.elementCount_ = _r1.i; + XMLVM_CHECK_NPE(3) + _r2.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.threshold_; + if (_r1.i <= _r2.i) goto label33; + XMLVM_SOURCE_POSITION("HashMap.java", 584) + XMLVM_CHECK_NPE(3) + java_util_HashMap_rehash__(_r3.o); + goto label33; + label78:; + _r0 = _r2; + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_createEntry___java_lang_Object_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_createEntry___java_lang_Object_int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "createEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.o = n3; + XMLVM_SOURCE_POSITION("HashMap.java", 595) + _r0.o = __NEW_java_util_HashMap_Entry(); + XMLVM_CHECK_NPE(0) + java_util_HashMap_Entry___INIT____java_lang_Object_java_lang_Object(_r0.o, _r3.o, _r5.o); + XMLVM_SOURCE_POSITION("HashMap.java", 596) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_CHECK_NPE(0) + ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_ = _r1.o; + XMLVM_SOURCE_POSITION("HashMap.java", 597) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r0.o; + XMLVM_SOURCE_POSITION("HashMap.java", 598) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_createHashedEntry___java_lang_Object_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_createHashedEntry___java_lang_Object_int_int] + XMLVM_ENTER_METHOD("java.util.HashMap", "createHashedEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_SOURCE_POSITION("HashMap.java", 602) + _r0.o = __NEW_java_util_HashMap_Entry(); + XMLVM_CHECK_NPE(0) + java_util_HashMap_Entry___INIT____java_lang_Object_int(_r0.o, _r3.o, _r5.i); + XMLVM_SOURCE_POSITION("HashMap.java", 603) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_CHECK_NPE(0) + ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_ = _r1.o; + XMLVM_SOURCE_POSITION("HashMap.java", 604) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r0.o; + XMLVM_SOURCE_POSITION("HashMap.java", 605) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_putAll___java_util_Map] + XMLVM_ENTER_METHOD("java.util.HashMap", "putAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 620) + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__])(_r2.o); + if (_r0.i != 0) goto label9; + XMLVM_SOURCE_POSITION("HashMap.java", 621) + XMLVM_CHECK_NPE(1) + java_util_HashMap_putAllImpl___java_util_Map(_r1.o, _r2.o); + label9:; + XMLVM_SOURCE_POSITION("HashMap.java", 623) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_putAllImpl___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_putAllImpl___java_util_Map] + XMLVM_ENTER_METHOD("java.util.HashMap", "putAllImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 626) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.elementCount_; + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r4.o); + _r0.i = _r0.i + _r1.i; + XMLVM_SOURCE_POSITION("HashMap.java", 627) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_HashMap*) _r3.o)->fields.java_util_HashMap.threshold_; + if (_r0.i <= _r1.i) goto label14; + XMLVM_SOURCE_POSITION("HashMap.java", 628) + XMLVM_CHECK_NPE(3) + java_util_HashMap_rehash___int(_r3.o, _r0.i); + label14:; + XMLVM_SOURCE_POSITION("HashMap.java", 630) + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_entrySet__])(_r4.o); + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + label22:; + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r0.i != 0) goto label29; + XMLVM_SOURCE_POSITION("HashMap.java", 633) + XMLVM_EXIT_METHOD() + return; + label29:; + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("HashMap.java", 631) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + XMLVM_CHECK_NPE(3) + java_util_HashMap_putImpl___java_lang_Object_java_lang_Object(_r3.o, _r2.o, _r0.o); + goto label22; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_rehash___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_rehash___int] + XMLVM_ENTER_METHOD("java.util.HashMap", "rehash", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r8.o = me; + _r9.i = n1; + _r7.i = 1; + XMLVM_SOURCE_POSITION("HashMap.java", 636) + if (_r9.i != 0) goto label24; + _r0 = _r7; + label4:; + _r0.i = java_util_HashMap_calculateCapacity___int(_r0.i); + XMLVM_SOURCE_POSITION("HashMap.java", 638) + XMLVM_CHECK_NPE(8) + _r1.o = java_util_HashMap_newElementArray___int(_r8.o, _r0.i); + XMLVM_SOURCE_POSITION("HashMap.java", 639) + _r2.i = 0; + label13:; + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r2.i < _r3.i) goto label27; + XMLVM_SOURCE_POSITION("HashMap.java", 650) + XMLVM_CHECK_NPE(8) + ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_ = _r1.o; + XMLVM_SOURCE_POSITION("HashMap.java", 651) + XMLVM_CHECK_NPE(8) + java_util_HashMap_computeThreshold__(_r8.o); + XMLVM_SOURCE_POSITION("HashMap.java", 652) + XMLVM_EXIT_METHOD() + return; + label24:; + _r0.i = _r9.i << 1; + goto label4; + label27:; + XMLVM_SOURCE_POSITION("HashMap.java", 640) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("HashMap.java", 641) + XMLVM_CHECK_NPE(8) + _r4.o = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_; + _r5.o = JAVA_NULL; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r5.o; + label36:; + XMLVM_SOURCE_POSITION("HashMap.java", 642) + if (_r3.o != JAVA_NULL) goto label41; + _r2.i = _r2.i + 1; + goto label13; + label41:; + XMLVM_SOURCE_POSITION("HashMap.java", 643) + XMLVM_CHECK_NPE(3) + _r4.i = ((java_util_HashMap_Entry*) _r3.o)->fields.java_util_HashMap_Entry.origKeyHash_; + _r5.i = _r0.i - _r7.i; + _r4.i = _r4.i & _r5.i; + XMLVM_SOURCE_POSITION("HashMap.java", 644) + XMLVM_CHECK_NPE(3) + _r5.o = ((java_util_HashMap_Entry*) _r3.o)->fields.java_util_HashMap_Entry.next_; + XMLVM_SOURCE_POSITION("HashMap.java", 645) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_CHECK_NPE(3) + ((java_util_HashMap_Entry*) _r3.o)->fields.java_util_HashMap_Entry.next_ = _r6.o; + XMLVM_SOURCE_POSITION("HashMap.java", 646) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r3.o; + _r3 = _r5; + XMLVM_SOURCE_POSITION("HashMap.java", 647) + goto label36; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_rehash__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_rehash__] + XMLVM_ENTER_METHOD("java.util.HashMap", "rehash", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 655) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashMap*) _r1.o)->fields.java_util_HashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(1) + java_util_HashMap_rehash___int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("HashMap.java", 656) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 668) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_HashMap_removeEntry___java_lang_Object(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("HashMap.java", 669) + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("HashMap.java", 670) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.value_; + label8:; + XMLVM_SOURCE_POSITION("HashMap.java", 672) + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + _r0.o = JAVA_NULL; + goto label8; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_removeEntry___java_util_HashMap_Entry(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_removeEntry___java_util_HashMap_Entry] + XMLVM_ENTER_METHOD("java.util.HashMap", "removeEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 1; + XMLVM_SOURCE_POSITION("HashMap.java", 680) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_HashMap_Entry*) _r5.o)->fields.java_util_HashMap_Entry.origKeyHash_; + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_HashMap*) _r4.o)->fields.java_util_HashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r1.i = _r1.i - _r3.i; + _r0.i = _r0.i & _r1.i; + XMLVM_SOURCE_POSITION("HashMap.java", 681) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_HashMap*) _r4.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_SOURCE_POSITION("HashMap.java", 682) + if (_r1.o != _r5.o) goto label43; + XMLVM_SOURCE_POSITION("HashMap.java", 683) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_HashMap*) _r4.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_HashMap_Entry*) _r5.o)->fields.java_util_HashMap_Entry.next_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.o; + label20:; + XMLVM_SOURCE_POSITION("HashMap.java", 691) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_HashMap*) _r4.o)->fields.java_util_HashMap.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(4) + ((java_util_HashMap*) _r4.o)->fields.java_util_HashMap.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 692) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_HashMap*) _r4.o)->fields.java_util_HashMap.elementCount_; + _r0.i = _r0.i - _r3.i; + XMLVM_CHECK_NPE(4) + ((java_util_HashMap*) _r4.o)->fields.java_util_HashMap.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 693) + XMLVM_EXIT_METHOD() + return; + label32:; + XMLVM_SOURCE_POSITION("HashMap.java", 686) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_; + label34:; + XMLVM_SOURCE_POSITION("HashMap.java", 685) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_; + if (_r1.o != _r5.o) goto label32; + XMLVM_SOURCE_POSITION("HashMap.java", 688) + XMLVM_CHECK_NPE(5) + _r1.o = ((java_util_HashMap_Entry*) _r5.o)->fields.java_util_HashMap_Entry.next_; + XMLVM_CHECK_NPE(0) + ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_ = _r1.o; + goto label20; + label43:; + _r0 = _r1; + goto label34; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_removeEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_removeEntry___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "removeEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r8.o = me; + _r9.o = n1; + _r6.o = JAVA_NULL; + _r5.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("HashMap.java", 696) + XMLVM_SOURCE_POSITION("HashMap.java", 699) + if (_r9.o == JAVA_NULL) goto label47; + XMLVM_SOURCE_POSITION("HashMap.java", 700) + _r0.i = java_util_HashMap_computeHashCode___java_lang_Object(_r9.o); + XMLVM_SOURCE_POSITION("HashMap.java", 701) + XMLVM_CHECK_NPE(8) + _r1.o = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r1.i = _r1.i - _r5.i; + _r1.i = _r1.i & _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 702) + XMLVM_CHECK_NPE(8) + _r2.o = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3 = _r2; + _r2 = _r6; + label20:; + XMLVM_SOURCE_POSITION("HashMap.java", 703) + if (_r3.o == JAVA_NULL) goto label93; + XMLVM_CHECK_NPE(3) + _r4.i = ((java_util_HashMap_Entry*) _r3.o)->fields.java_util_HashMap_Entry.origKeyHash_; + if (_r4.i != _r0.i) goto label41; + XMLVM_CHECK_NPE(3) + _r4.o = ((java_util_MapEntry*) _r3.o)->fields.java_util_MapEntry.key_; + _r4.i = java_util_HashMap_areEqualKeys___java_lang_Object_java_lang_Object(_r9.o, _r4.o); + if (_r4.i == 0) goto label41; + _r0 = _r2; + _r2 = _r1; + _r1 = _r3; + label37:; + XMLVM_SOURCE_POSITION("HashMap.java", 714) + if (_r1.o != JAVA_NULL) goto label67; + _r0 = _r6; + label40:; + XMLVM_SOURCE_POSITION("HashMap.java", 715) + XMLVM_SOURCE_POSITION("HashMap.java", 724) + XMLVM_EXIT_METHOD() + return _r0.o; + label41:; + XMLVM_SOURCE_POSITION("HashMap.java", 705) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_HashMap_Entry*) _r3.o)->fields.java_util_HashMap_Entry.next_; + _r7 = _r3; + _r3 = _r2; + _r2 = _r7; + goto label20; + label47:; + XMLVM_SOURCE_POSITION("HashMap.java", 708) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r1 = _r0; + _r0 = _r6; + label53:; + XMLVM_SOURCE_POSITION("HashMap.java", 709) + if (_r1.o == JAVA_NULL) goto label59; + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.key_; + if (_r2.o != JAVA_NULL) goto label61; + label59:; + _r2 = _r3; + goto label37; + label61:; + XMLVM_SOURCE_POSITION("HashMap.java", 711) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.next_; + _r7 = _r1; + _r1 = _r0; + _r0 = _r7; + goto label53; + label67:; + XMLVM_SOURCE_POSITION("HashMap.java", 717) + if (_r0.o != JAVA_NULL) goto label88; + XMLVM_SOURCE_POSITION("HashMap.java", 718) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + _r3.o = ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.next_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.o; + label75:; + XMLVM_SOURCE_POSITION("HashMap.java", 722) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(8) + ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 723) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementCount_; + _r0.i = _r0.i - _r5.i; + XMLVM_CHECK_NPE(8) + ((java_util_HashMap*) _r8.o)->fields.java_util_HashMap.elementCount_ = _r0.i; + _r0 = _r1; + goto label40; + label88:; + XMLVM_SOURCE_POSITION("HashMap.java", 720) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.next_; + XMLVM_CHECK_NPE(0) + ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_ = _r2.o; + goto label75; + label93:; + _r0 = _r2; + _r2 = _r1; + _r1 = _r3; + goto label37; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_HashMap_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_size__] + XMLVM_ENTER_METHOD("java.util.HashMap", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 734) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_HashMap*) _r1.o)->fields.java_util_HashMap.elementCount_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_values__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_values__] + XMLVM_ENTER_METHOD("java.util.HashMap", "values", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 758) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_; + if (_r0.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("HashMap.java", 759) + + + // Red class access removed: java.util.HashMap$2::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.HashMap$2:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_ = _r0.o; + label11:; + XMLVM_SOURCE_POSITION("HashMap.java", 781) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.HashMap", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 785) + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 786) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 787) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_HashMap*) _r2.o)->fields.java_util_HashMap.elementCount_; + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 788) + //java_util_HashMap_entrySet__[9] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_HashMap*) _r2.o)->tib->vtable[9])(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + label22:; + XMLVM_SOURCE_POSITION("HashMap.java", 789) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label29; + XMLVM_SOURCE_POSITION("HashMap.java", 795) + XMLVM_EXIT_METHOD() + return; + label29:; + XMLVM_SOURCE_POSITION("HashMap.java", 790) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + _r2.o = _r2.o; + XMLVM_SOURCE_POSITION("HashMap.java", 791) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.key_; + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 792) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_; + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 793) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap_Entry*) _r2.o)->fields.java_util_HashMap_Entry.next_; + goto label22; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.util.HashMap", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 800) + + + // Red class access removed: java.io.ObjectInputStream::defaultReadObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 801) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 802) + XMLVM_CHECK_NPE(5) + _r1.o = java_util_HashMap_newElementArray___int(_r5.o, _r0.i); + XMLVM_CHECK_NPE(5) + ((java_util_HashMap*) _r5.o)->fields.java_util_HashMap.elementData_ = _r1.o; + XMLVM_SOURCE_POSITION("HashMap.java", 803) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(5) + ((java_util_HashMap*) _r5.o)->fields.java_util_HashMap.elementCount_ = _r1.i; + XMLVM_SOURCE_POSITION("HashMap.java", 804) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_HashMap*) _r5.o)->fields.java_util_HashMap.elementCount_; + label21:; + _r1.i = _r1.i + -1; + if (_r1.i >= 0) goto label26; + XMLVM_SOURCE_POSITION("HashMap.java", 809) + XMLVM_EXIT_METHOD() + return; + label26:; + XMLVM_SOURCE_POSITION("HashMap.java", 805) + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashMap.java", 806) + if (_r2.o != JAVA_NULL) goto label41; + _r3.i = 0; + label33:; + XMLVM_SOURCE_POSITION("HashMap.java", 807) + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(5) + java_util_HashMap_createEntry___java_lang_Object_int_java_lang_Object(_r5.o, _r2.o, _r3.i, _r4.o); + goto label21; + label41:; + _r3.i = java_util_HashMap_computeHashCode___java_lang_Object(_r2.o); + _r4.i = 1; + _r4.i = _r0.i - _r4.i; + _r3.i = _r3.i & _r4.i; + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_HashMap_computeHashCode___java_lang_Object(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_HashMap) + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_computeHashCode___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "computeHashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("HashMap.java", 815) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[4])(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashMap_areEqualKeys___java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_HashMap) + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_areEqualKeys___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "areEqualKeys", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("HashMap.java", 819) + if (_r1.o == _r2.o) goto label10; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[1])(_r1.o, _r2.o); + if (_r0.i != 0) goto label10; + _r0.i = 0; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = 1; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashMap_areEqualValues___java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(java_util_HashMap) + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_areEqualValues___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap", "areEqualValues", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("HashMap.java", 823) + if (_r1.o == _r2.o) goto label10; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[1])(_r1.o, _r2.o); + if (_r0.i != 0) goto label10; + _r0.i = 0; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = 1; + goto label9; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_HashMap.h b/tests/nbody-java/java_util_HashMap.h new file mode 100644 index 0000000000000..23cfbfbb72033 --- /dev/null +++ b/tests/nbody-java/java_util_HashMap.h @@ -0,0 +1,148 @@ +#ifndef __JAVA_UTIL_HASHMAP__ +#define __JAVA_UTIL_HASHMAP__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_HashMap 14 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Cloneable.h" +#include "java_util_Map.h" +// Super Class: +#include "java_util_AbstractMap.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap_Entry +#define XMLVM_FORWARD_DECL_java_util_HashMap_Entry +XMLVM_FORWARD_DECL(java_util_HashMap_Entry) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map_Entry +#define XMLVM_FORWARD_DECL_java_util_Map_Entry +XMLVM_FORWARD_DECL(java_util_Map_Entry) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +// Class declarations for java.util.HashMap +XMLVM_DEFINE_CLASS(java_util_HashMap, 18, XMLVM_ITABLE_SIZE_java_util_HashMap) + +extern JAVA_OBJECT __CLASS_java_util_HashMap; +extern JAVA_OBJECT __CLASS_java_util_HashMap_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_HashMap_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_HashMap_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_HashMap +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_HashMap \ + __INSTANCE_FIELDS_java_util_AbstractMap; \ + struct { \ + JAVA_INT elementCount_; \ + JAVA_OBJECT elementData_; \ + JAVA_INT modCount_; \ + JAVA_FLOAT loadFactor_; \ + JAVA_INT threshold_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_HashMap \ + } java_util_HashMap + +struct java_util_HashMap { + __TIB_DEFINITION_java_util_HashMap* tib; + struct { + __INSTANCE_FIELDS_java_util_HashMap; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap +#define XMLVM_FORWARD_DECL_java_util_HashMap +typedef struct java_util_HashMap java_util_HashMap; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_HashMap 18 +#define XMLVM_VTABLE_IDX_java_util_HashMap_clear__ 6 +#define XMLVM_VTABLE_IDX_java_util_HashMap_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_HashMap_containsKey___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_HashMap_containsValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_HashMap_entrySet__ 9 +#define XMLVM_VTABLE_IDX_java_util_HashMap_get___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_HashMap_isEmpty__ 11 +#define XMLVM_VTABLE_IDX_java_util_HashMap_keySet__ 12 +#define XMLVM_VTABLE_IDX_java_util_HashMap_put___java_lang_Object_java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_HashMap_putAll___java_util_Map 13 +#define XMLVM_VTABLE_IDX_java_util_HashMap_remove___java_lang_Object 15 +#define XMLVM_VTABLE_IDX_java_util_HashMap_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_HashMap_values__ 17 + +void __INIT_java_util_HashMap(); +void __INIT_IMPL_java_util_HashMap(); +void __DELETE_java_util_HashMap(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_HashMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_HashMap(); +JAVA_OBJECT __NEW_INSTANCE_java_util_HashMap(); +JAVA_LONG java_util_HashMap_GET_serialVersionUID(); +void java_util_HashMap_PUT_serialVersionUID(JAVA_LONG v); +JAVA_INT java_util_HashMap_GET_DEFAULT_SIZE(); +void java_util_HashMap_PUT_DEFAULT_SIZE(JAVA_INT v); +JAVA_OBJECT java_util_HashMap_newElementArray___int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_HashMap___INIT___(JAVA_OBJECT me); +void java_util_HashMap___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_INT java_util_HashMap_calculateCapacity___int(JAVA_INT n1); +void java_util_HashMap___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); +void java_util_HashMap___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +void java_util_HashMap_clear__(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_util_HashMap_clone__(JAVA_OBJECT me); +void java_util_HashMap_computeThreshold__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_util_HashMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_util_HashMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_util_HashMap_entrySet__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_OBJECT java_util_HashMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_HashMap_getEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_HashMap_findNonNullKeyEntry___java_lang_Object_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT java_util_HashMap_findNullKeyEntry__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_BOOLEAN java_util_HashMap_isEmpty__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_util_HashMap_keySet__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_OBJECT java_util_HashMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_HashMap_putImpl___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_HashMap_createEntry___java_lang_Object_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_util_HashMap_createHashedEntry___java_lang_Object_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +// Vtable index: 13 +void java_util_HashMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_HashMap_putAllImpl___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_HashMap_rehash___int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_HashMap_rehash__(JAVA_OBJECT me); +// Vtable index: 15 +JAVA_OBJECT java_util_HashMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_HashMap_removeEntry___java_util_HashMap_Entry(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_HashMap_removeEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_HashMap_size__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_HashMap_values__(JAVA_OBJECT me); +void java_util_HashMap_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_HashMap_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_util_HashMap_computeHashCode___java_lang_Object(JAVA_OBJECT n1); +JAVA_BOOLEAN java_util_HashMap_areEqualKeys___java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN java_util_HashMap_areEqualValues___java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/java_util_HashMap_Entry.c b/tests/nbody-java/java_util_HashMap_Entry.c new file mode 100644 index 0000000000000..e00bf214a8fdc --- /dev/null +++ b/tests/nbody-java/java_util_HashMap_Entry.c @@ -0,0 +1,247 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_util_HashMap.h" + +#include "java_util_HashMap_Entry.h" + +#define XMLVM_CURRENT_CLASS_NAME HashMap_Entry +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_HashMap_Entry + +__TIB_DEFINITION_java_util_HashMap_Entry __TIB_java_util_HashMap_Entry = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_HashMap_Entry, // classInitializer + "java.util.HashMap$Entry", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/MapEntry;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_MapEntry, // extends + sizeof(java_util_HashMap_Entry), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_HashMap_Entry; +JAVA_OBJECT __CLASS_java_util_HashMap_Entry_1ARRAY; +JAVA_OBJECT __CLASS_java_util_HashMap_Entry_2ARRAY; +JAVA_OBJECT __CLASS_java_util_HashMap_Entry_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_HashMap_Entry() +{ + staticInitializerLock(&__TIB_java_util_HashMap_Entry); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_HashMap_Entry.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_HashMap_Entry.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_HashMap_Entry); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_HashMap_Entry.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_HashMap_Entry.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_HashMap_Entry.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.HashMap$Entry") + __INIT_IMPL_java_util_HashMap_Entry(); + } +} + +void __INIT_IMPL_java_util_HashMap_Entry() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_MapEntry) + __TIB_java_util_HashMap_Entry.newInstanceFunc = __NEW_INSTANCE_java_util_HashMap_Entry; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_HashMap_Entry.vtable, __TIB_java_util_MapEntry.vtable, sizeof(__TIB_java_util_MapEntry.vtable)); + // Initialize vtable for this class + __TIB_java_util_HashMap_Entry.vtable[0] = (VTABLE_PTR) &java_util_HashMap_Entry_clone__; + // Initialize interface information + __TIB_java_util_HashMap_Entry.numImplementedInterfaces = 2; + __TIB_java_util_HashMap_Entry.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_HashMap_Entry.implementedInterfaces[0][0] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_util_Map_Entry) + + __TIB_java_util_HashMap_Entry.implementedInterfaces[0][1] = &__TIB_java_util_Map_Entry; + // Initialize itable for this class + __TIB_java_util_HashMap_Entry.itableBegin = &__TIB_java_util_HashMap_Entry.itable[0]; + __TIB_java_util_HashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_equals___java_lang_Object] = __TIB_java_util_HashMap_Entry.vtable[1]; + __TIB_java_util_HashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__] = __TIB_java_util_HashMap_Entry.vtable[6]; + __TIB_java_util_HashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__] = __TIB_java_util_HashMap_Entry.vtable[7]; + __TIB_java_util_HashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_hashCode__] = __TIB_java_util_HashMap_Entry.vtable[4]; + __TIB_java_util_HashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_setValue___java_lang_Object] = __TIB_java_util_HashMap_Entry.vtable[8]; + + + __TIB_java_util_HashMap_Entry.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_HashMap_Entry.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_HashMap_Entry.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_HashMap_Entry.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_HashMap_Entry.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_HashMap_Entry.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_HashMap_Entry.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_HashMap_Entry.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_HashMap_Entry = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_HashMap_Entry); + __TIB_java_util_HashMap_Entry.clazz = __CLASS_java_util_HashMap_Entry; + __TIB_java_util_HashMap_Entry.baseType = JAVA_NULL; + __CLASS_java_util_HashMap_Entry_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashMap_Entry); + __CLASS_java_util_HashMap_Entry_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashMap_Entry_1ARRAY); + __CLASS_java_util_HashMap_Entry_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashMap_Entry_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_HashMap_Entry] + //XMLVM_END_WRAPPER + + __TIB_java_util_HashMap_Entry.classInitialized = 1; +} + +void __DELETE_java_util_HashMap_Entry(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_HashMap_Entry] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_HashMap_Entry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_MapEntry(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_HashMap_Entry*) me)->fields.java_util_HashMap_Entry.origKeyHash_ = 0; + ((java_util_HashMap_Entry*) me)->fields.java_util_HashMap_Entry.next_ = (java_util_HashMap_Entry*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_HashMap_Entry] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_HashMap_Entry() +{ XMLVM_CLASS_INIT(java_util_HashMap_Entry) +java_util_HashMap_Entry* me = (java_util_HashMap_Entry*) XMLVM_MALLOC(sizeof(java_util_HashMap_Entry)); + me->tib = &__TIB_java_util_HashMap_Entry; + __INIT_INSTANCE_MEMBERS_java_util_HashMap_Entry(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_HashMap_Entry] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_HashMap_Entry() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_util_HashMap_Entry___INIT____java_lang_Object_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_Entry___INIT____java_lang_Object_int] + XMLVM_ENTER_METHOD("java.util.HashMap$Entry", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.i = n2; + XMLVM_SOURCE_POSITION("HashMap.java", 74) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(1) + java_util_MapEntry___INIT____java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r0.o); + XMLVM_SOURCE_POSITION("HashMap.java", 75) + XMLVM_CHECK_NPE(1) + ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.origKeyHash_ = _r3.i; + XMLVM_SOURCE_POSITION("HashMap.java", 76) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_HashMap_Entry___INIT____java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_Entry___INIT____java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashMap$Entry", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("HashMap.java", 79) + XMLVM_CHECK_NPE(1) + java_util_MapEntry___INIT____java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_SOURCE_POSITION("HashMap.java", 80) + if (_r2.o != JAVA_NULL) goto label9; + _r0.i = 0; + label6:; + XMLVM_CHECK_NPE(1) + ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.origKeyHash_ = _r0.i; + XMLVM_SOURCE_POSITION("HashMap.java", 81) + XMLVM_EXIT_METHOD() + return; + label9:; + _r0.i = java_util_HashMap_computeHashCode___java_lang_Object(_r2.o); + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashMap_Entry_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashMap_Entry_clone__] + XMLVM_ENTER_METHOD("java.util.HashMap$Entry", "clone", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("HashMap.java", 86) + XMLVM_CHECK_NPE(2) + _r0.o = java_util_MapEntry_clone__(_r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("HashMap.java", 87) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap_Entry*) _r2.o)->fields.java_util_HashMap_Entry.next_; + if (_r1.o == JAVA_NULL) goto label20; + XMLVM_SOURCE_POSITION("HashMap.java", 88) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashMap_Entry*) _r2.o)->fields.java_util_HashMap_Entry.next_; + //java_util_HashMap_Entry_clone__[0] + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_HashMap_Entry*) _r1.o)->tib->vtable[0])(_r1.o); + _r2.o = _r2.o; + XMLVM_CHECK_NPE(0) + ((java_util_HashMap_Entry*) _r0.o)->fields.java_util_HashMap_Entry.next_ = _r2.o; + label20:; + XMLVM_SOURCE_POSITION("HashMap.java", 90) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_HashMap_Entry.h b/tests/nbody-java/java_util_HashMap_Entry.h new file mode 100644 index 0000000000000..84d7b7de89a2b --- /dev/null +++ b/tests/nbody-java/java_util_HashMap_Entry.h @@ -0,0 +1,65 @@ +#ifndef __JAVA_UTIL_HASHMAP_ENTRY__ +#define __JAVA_UTIL_HASHMAP_ENTRY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_HashMap_Entry 5 +// Implemented interfaces: +// Super Class: +#include "java_util_MapEntry.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap +#define XMLVM_FORWARD_DECL_java_util_HashMap +XMLVM_FORWARD_DECL(java_util_HashMap) +#endif +// Class declarations for java.util.HashMap$Entry +XMLVM_DEFINE_CLASS(java_util_HashMap_Entry, 9, XMLVM_ITABLE_SIZE_java_util_HashMap_Entry) + +extern JAVA_OBJECT __CLASS_java_util_HashMap_Entry; +extern JAVA_OBJECT __CLASS_java_util_HashMap_Entry_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_HashMap_Entry_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_HashMap_Entry_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_HashMap_Entry +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_HashMap_Entry \ + __INSTANCE_FIELDS_java_util_MapEntry; \ + struct { \ + JAVA_INT origKeyHash_; \ + JAVA_OBJECT next_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_HashMap_Entry \ + } java_util_HashMap_Entry + +struct java_util_HashMap_Entry { + __TIB_DEFINITION_java_util_HashMap_Entry* tib; + struct { + __INSTANCE_FIELDS_java_util_HashMap_Entry; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap_Entry +#define XMLVM_FORWARD_DECL_java_util_HashMap_Entry +typedef struct java_util_HashMap_Entry java_util_HashMap_Entry; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_HashMap_Entry 9 +#define XMLVM_VTABLE_IDX_java_util_HashMap_Entry_clone__ 0 + +void __INIT_java_util_HashMap_Entry(); +void __INIT_IMPL_java_util_HashMap_Entry(); +void __DELETE_java_util_HashMap_Entry(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_HashMap_Entry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_HashMap_Entry(); +JAVA_OBJECT __NEW_INSTANCE_java_util_HashMap_Entry(); +void java_util_HashMap_Entry___INIT____java_lang_Object_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +void java_util_HashMap_Entry___INIT____java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 0 +JAVA_OBJECT java_util_HashMap_Entry_clone__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_HashSet.c b/tests/nbody-java/java_util_HashSet.c new file mode 100644 index 0000000000000..e9a34c2fe7016 --- /dev/null +++ b/tests/nbody-java/java_util_HashSet.c @@ -0,0 +1,707 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_util_Collection.h" +#include "java_util_HashMap.h" +#include "java_util_HashMap_Entry.h" +#include "java_util_Iterator.h" + +#include "java_util_HashSet.h" + +#define XMLVM_CURRENT_CLASS_NAME HashSet +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_HashSet + +__TIB_DEFINITION_java_util_HashSet __TIB_java_util_HashSet = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_HashSet, // classInitializer + "java.util.HashSet", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractSet;Ljava/util/Set;Ljava/lang/Cloneable;Ljava/io/Serializable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractSet, // extends + sizeof(java_util_HashSet), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_HashSet; +JAVA_OBJECT __CLASS_java_util_HashSet_1ARRAY; +JAVA_OBJECT __CLASS_java_util_HashSet_2ARRAY; +JAVA_OBJECT __CLASS_java_util_HashSet_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_HashSet_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_HashSet() +{ + staticInitializerLock(&__TIB_java_util_HashSet); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_HashSet.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_HashSet.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_HashSet); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_HashSet.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_HashSet.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_HashSet.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.HashSet") + __INIT_IMPL_java_util_HashSet(); + } +} + +void __INIT_IMPL_java_util_HashSet() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractSet) + __TIB_java_util_HashSet.newInstanceFunc = __NEW_INSTANCE_java_util_HashSet; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_HashSet.vtable, __TIB_java_util_AbstractSet.vtable, sizeof(__TIB_java_util_AbstractSet.vtable)); + // Initialize vtable for this class + __TIB_java_util_HashSet.vtable[7] = (VTABLE_PTR) &java_util_HashSet_add___java_lang_Object; + __TIB_java_util_HashSet.vtable[8] = (VTABLE_PTR) &java_util_HashSet_clear__; + __TIB_java_util_HashSet.vtable[0] = (VTABLE_PTR) &java_util_HashSet_clone__; + __TIB_java_util_HashSet.vtable[10] = (VTABLE_PTR) &java_util_HashSet_contains___java_lang_Object; + __TIB_java_util_HashSet.vtable[11] = (VTABLE_PTR) &java_util_HashSet_isEmpty__; + __TIB_java_util_HashSet.vtable[12] = (VTABLE_PTR) &java_util_HashSet_iterator__; + __TIB_java_util_HashSet.vtable[14] = (VTABLE_PTR) &java_util_HashSet_remove___java_lang_Object; + __TIB_java_util_HashSet.vtable[16] = (VTABLE_PTR) &java_util_HashSet_size__; + // Initialize interface information + __TIB_java_util_HashSet.numImplementedInterfaces = 5; + __TIB_java_util_HashSet.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 5); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_HashSet.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_HashSet.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_HashSet.implementedInterfaces[0][2] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_HashSet.implementedInterfaces[0][3] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_Set) + + __TIB_java_util_HashSet.implementedInterfaces[0][4] = &__TIB_java_util_Set; + // Initialize itable for this class + __TIB_java_util_HashSet.itableBegin = &__TIB_java_util_HashSet.itable[0]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_HashSet.vtable[12]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[6]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_HashSet.vtable[7]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_HashSet.vtable[8]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[9]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_HashSet.vtable[10]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_HashSet.vtable[1]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_HashSet.vtable[4]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_HashSet.vtable[11]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_HashSet.vtable[12]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[13]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_HashSet.vtable[14]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[15]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_HashSet.vtable[16]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_HashSet.vtable[17]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_HashSet.vtable[18]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_addAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[6]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_add___java_lang_Object] = __TIB_java_util_HashSet.vtable[7]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_clear__] = __TIB_java_util_HashSet.vtable[8]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_containsAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[9]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_contains___java_lang_Object] = __TIB_java_util_HashSet.vtable[10]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_equals___java_lang_Object] = __TIB_java_util_HashSet.vtable[1]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_hashCode__] = __TIB_java_util_HashSet.vtable[4]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_isEmpty__] = __TIB_java_util_HashSet.vtable[11]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_iterator__] = __TIB_java_util_HashSet.vtable[12]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_removeAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[13]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_remove___java_lang_Object] = __TIB_java_util_HashSet.vtable[14]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_retainAll___java_util_Collection] = __TIB_java_util_HashSet.vtable[15]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_size__] = __TIB_java_util_HashSet.vtable[16]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_toArray__] = __TIB_java_util_HashSet.vtable[17]; + __TIB_java_util_HashSet.itable[XMLVM_ITABLE_IDX_java_util_Set_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_HashSet.vtable[18]; + + _STATIC_java_util_HashSet_serialVersionUID = -5024744406713321676; + + __TIB_java_util_HashSet.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_HashSet.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_HashSet.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_HashSet.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_HashSet.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_HashSet.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_HashSet.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_HashSet.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_HashSet = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_HashSet); + __TIB_java_util_HashSet.clazz = __CLASS_java_util_HashSet; + __TIB_java_util_HashSet.baseType = JAVA_NULL; + __CLASS_java_util_HashSet_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashSet); + __CLASS_java_util_HashSet_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashSet_1ARRAY); + __CLASS_java_util_HashSet_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_HashSet_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_HashSet] + //XMLVM_END_WRAPPER + + __TIB_java_util_HashSet.classInitialized = 1; +} + +void __DELETE_java_util_HashSet(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_HashSet] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_HashSet(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractSet(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_HashSet*) me)->fields.java_util_HashSet.backingMap_ = (java_util_HashMap*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_HashSet] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_HashSet() +{ XMLVM_CLASS_INIT(java_util_HashSet) +java_util_HashSet* me = (java_util_HashSet*) XMLVM_MALLOC(sizeof(java_util_HashSet)); + me->tib = &__TIB_java_util_HashSet; + __INIT_INSTANCE_MEMBERS_java_util_HashSet(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_HashSet] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_HashSet() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_HashSet(); + java_util_HashSet___INIT___(me); + return me; +} + +JAVA_LONG java_util_HashSet_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_HashSet) + return _STATIC_java_util_HashSet_serialVersionUID; +} + +void java_util_HashSet_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_HashSet) +_STATIC_java_util_HashSet_serialVersionUID = v; +} + +void java_util_HashSet___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet___INIT___] + XMLVM_ENTER_METHOD("java.util.HashSet", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashSet.java", 40) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT___(_r0.o); + XMLVM_CHECK_NPE(1) + java_util_HashSet___INIT____java_util_HashMap(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("HashSet.java", 41) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_HashSet___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet___INIT____int] + XMLVM_ENTER_METHOD("java.util.HashSet", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 50) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT____int(_r0.o, _r2.i); + XMLVM_CHECK_NPE(1) + java_util_HashSet___INIT____java_util_HashMap(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("HashSet.java", 51) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_HashSet___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet___INIT____int_float] + XMLVM_ENTER_METHOD("java.util.HashSet", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.f = n2; + XMLVM_SOURCE_POSITION("HashSet.java", 63) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT____int_float(_r0.o, _r2.i, _r3.f); + XMLVM_CHECK_NPE(1) + java_util_HashSet___INIT____java_util_HashMap(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("HashSet.java", 64) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_HashSet___INIT____java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet___INIT____java_util_Collection] + XMLVM_ENTER_METHOD("java.util.HashSet", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 74) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_size__])(_r4.o); + _r2.i = 6; + if (_r1.i >= _r2.i) goto label28; + _r1.i = 11; + label11:; + XMLVM_SOURCE_POSITION("HashSet.java", 75) + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT____int(_r0.o, _r1.i); + XMLVM_CHECK_NPE(3) + java_util_HashSet___INIT____java_util_HashMap(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("HashSet.java", 76) + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r4.o); + label21:; + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + if (_r0.i != 0) goto label35; + XMLVM_SOURCE_POSITION("HashSet.java", 79) + XMLVM_EXIT_METHOD() + return; + label28:; + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_size__])(_r4.o); + _r1.i = _r1.i * 2; + goto label11; + label35:; + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("HashSet.java", 77) + //java_util_HashSet_add___java_lang_Object[7] + XMLVM_CHECK_NPE(3) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashSet*) _r3.o)->tib->vtable[7])(_r3.o, _r0.o); + goto label21; + //XMLVM_END_WRAPPER +} + +void java_util_HashSet___INIT____java_util_HashMap(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet___INIT____java_util_HashMap] + XMLVM_ENTER_METHOD("java.util.HashSet", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 81) + XMLVM_CHECK_NPE(0) + java_util_AbstractSet___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("HashSet.java", 82) + XMLVM_CHECK_NPE(0) + ((java_util_HashSet*) _r0.o)->fields.java_util_HashSet.backingMap_ = _r1.o; + XMLVM_SOURCE_POSITION("HashSet.java", 83) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashSet_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_add___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashSet", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 95) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashSet*) _r1.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_put___java_lang_Object_java_lang_Object[14] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[14])(_r0.o, _r2.o, _r1.o); + if (_r0.o != JAVA_NULL) goto label10; + _r0.i = 1; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = 0; + goto label9; + //XMLVM_END_WRAPPER +} + +void java_util_HashSet_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_clear__] + XMLVM_ENTER_METHOD("java.util.HashSet", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashSet.java", 106) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashSet*) _r1.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_clear__[6] + XMLVM_CHECK_NPE(0) + (*(void (*)(JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[6])(_r0.o); + XMLVM_SOURCE_POSITION("HashSet.java", 107) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashSet_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_clone__] + XMLVM_ENTER_METHOD("java.util.HashSet", "clone", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_TRY_BEGIN(w6279aaab9b1b2) + // Begin try + XMLVM_SOURCE_POSITION("HashSet.java", 120) + XMLVM_CHECK_NPE(2) + _r0.o = java_lang_Object_clone__(_r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("HashSet.java", 121) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_HashSet*) _r2.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_clone__[0] + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_HashMap*) _r1.o)->tib->vtable[0])(_r1.o); + _r2.o = _r2.o; + XMLVM_CHECK_NPE(0) + ((java_util_HashSet*) _r0.o)->fields.java_util_HashSet.backingMap_ = _r2.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6279aaab9b1b2) + XMLVM_CATCH_END(w6279aaab9b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w6279aaab9b1b2) + label16:; + XMLVM_SOURCE_POSITION("HashSet.java", 124) + XMLVM_EXIT_METHOD() + return _r0.o; + label17:; + java_lang_Thread* curThread_w6279aaab9b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w6279aaab9b1b7->fields.java_lang_Thread.xmlvmException_; + _r0.o = JAVA_NULL; + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashSet_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_contains___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashSet", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 138) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashSet*) _r1.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_containsKey___java_lang_Object[7] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[7])(_r0.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashSet_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_isEmpty__] + XMLVM_ENTER_METHOD("java.util.HashSet", "isEmpty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashSet.java", 150) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashSet*) _r1.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_isEmpty__[11] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[11])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashSet_iterator__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_iterator__] + XMLVM_ENTER_METHOD("java.util.HashSet", "iterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashSet.java", 161) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashSet*) _r1.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_keySet__[12] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[12])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_HashSet_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.HashSet", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 173) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashSet*) _r1.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_remove___java_lang_Object[15] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[15])(_r0.o, _r2.o); + if (_r0.o == JAVA_NULL) goto label10; + _r0.i = 1; + label9:; + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = 0; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_HashSet_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_size__] + XMLVM_ENTER_METHOD("java.util.HashSet", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("HashSet.java", 183) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_HashSet*) _r1.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_size__[16] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_HashMap*) _r0.o)->tib->vtable[16])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_util_HashSet_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.HashSet", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 187) + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 188) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_HashSet*) _r3.o)->fields.java_util_HashSet.backingMap_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_HashMap*) _r0.o)->fields.java_util_HashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 189) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_HashSet*) _r3.o)->fields.java_util_HashSet.backingMap_; + XMLVM_CHECK_NPE(0) + _r0.f = ((java_util_HashMap*) _r0.o)->fields.java_util_HashMap.loadFactor_; + + + // Red class access removed: java.io.ObjectOutputStream::writeFloat + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 190) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_HashSet*) _r3.o)->fields.java_util_HashSet.backingMap_; + XMLVM_CHECK_NPE(0) + _r0.i = ((java_util_HashMap*) _r0.o)->fields.java_util_HashMap.elementCount_; + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 191) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_HashSet*) _r3.o)->fields.java_util_HashSet.backingMap_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_HashMap*) _r0.o)->fields.java_util_HashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + label30:; + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label35; + XMLVM_SOURCE_POSITION("HashSet.java", 198) + XMLVM_EXIT_METHOD() + return; + label35:; + XMLVM_SOURCE_POSITION("HashSet.java", 192) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_HashSet*) _r3.o)->fields.java_util_HashSet.backingMap_; + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_HashMap*) _r1.o)->fields.java_util_HashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label41:; + XMLVM_SOURCE_POSITION("HashSet.java", 193) + if (_r1.o == JAVA_NULL) goto label30; + XMLVM_SOURCE_POSITION("HashSet.java", 194) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.key_; + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 195) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_HashMap_Entry*) _r1.o)->fields.java_util_HashMap_Entry.next_; + goto label41; + //XMLVM_END_WRAPPER +} + +void java_util_HashSet_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.util.HashSet", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("HashSet.java", 203) + + + // Red class access removed: java.io.ObjectInputStream::defaultReadObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 204) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 205) + + + // Red class access removed: java.io.ObjectInputStream::readFloat + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 206) + XMLVM_CHECK_NPE(3) + _r0.o = java_util_HashSet_createBackingMap___int_float(_r3.o, _r0.i, _r1.f); + XMLVM_CHECK_NPE(3) + ((java_util_HashSet*) _r3.o)->fields.java_util_HashSet.backingMap_ = _r0.o; + XMLVM_SOURCE_POSITION("HashSet.java", 207) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + label21:; + XMLVM_SOURCE_POSITION("HashSet.java", 208) + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label26; + XMLVM_SOURCE_POSITION("HashSet.java", 212) + XMLVM_EXIT_METHOD() + return; + label26:; + XMLVM_SOURCE_POSITION("HashSet.java", 209) + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("HashSet.java", 210) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_HashSet*) _r3.o)->fields.java_util_HashSet.backingMap_; + //java_util_HashMap_put___java_lang_Object_java_lang_Object[14] + XMLVM_CHECK_NPE(2) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_HashMap*) _r2.o)->tib->vtable[14])(_r2.o, _r1.o, _r3.o); + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_HashSet_createBackingMap___int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_HashSet_createBackingMap___int_float] + XMLVM_ENTER_METHOD("java.util.HashSet", "createBackingMap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.f = n2; + XMLVM_SOURCE_POSITION("HashSet.java", 215) + _r0.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(0) + java_util_HashMap___INIT____int_float(_r0.o, _r2.i, _r3.f); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_HashSet.h b/tests/nbody-java/java_util_HashSet.h new file mode 100644 index 0000000000000..ca9bc09a079a0 --- /dev/null +++ b/tests/nbody-java/java_util_HashSet.h @@ -0,0 +1,108 @@ +#ifndef __JAVA_UTIL_HASHSET__ +#define __JAVA_UTIL_HASHSET__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_HashSet 31 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Cloneable.h" +#include "java_util_Set.h" +// Super Class: +#include "java_util_AbstractSet.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap +#define XMLVM_FORWARD_DECL_java_util_HashMap +XMLVM_FORWARD_DECL(java_util_HashMap) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap_Entry +#define XMLVM_FORWARD_DECL_java_util_HashMap_Entry +XMLVM_FORWARD_DECL(java_util_HashMap_Entry) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +// Class declarations for java.util.HashSet +XMLVM_DEFINE_CLASS(java_util_HashSet, 19, XMLVM_ITABLE_SIZE_java_util_HashSet) + +extern JAVA_OBJECT __CLASS_java_util_HashSet; +extern JAVA_OBJECT __CLASS_java_util_HashSet_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_HashSet_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_HashSet_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_HashSet +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_HashSet \ + __INSTANCE_FIELDS_java_util_AbstractSet; \ + struct { \ + JAVA_OBJECT backingMap_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_HashSet \ + } java_util_HashSet + +struct java_util_HashSet { + __TIB_DEFINITION_java_util_HashSet* tib; + struct { + __INSTANCE_FIELDS_java_util_HashSet; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_HashSet +#define XMLVM_FORWARD_DECL_java_util_HashSet +typedef struct java_util_HashSet java_util_HashSet; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_HashSet 19 +#define XMLVM_VTABLE_IDX_java_util_HashSet_add___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_HashSet_clear__ 8 +#define XMLVM_VTABLE_IDX_java_util_HashSet_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_HashSet_contains___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_HashSet_isEmpty__ 11 +#define XMLVM_VTABLE_IDX_java_util_HashSet_iterator__ 12 +#define XMLVM_VTABLE_IDX_java_util_HashSet_remove___java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_HashSet_size__ 16 + +void __INIT_java_util_HashSet(); +void __INIT_IMPL_java_util_HashSet(); +void __DELETE_java_util_HashSet(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_HashSet(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_HashSet(); +JAVA_OBJECT __NEW_INSTANCE_java_util_HashSet(); +JAVA_LONG java_util_HashSet_GET_serialVersionUID(); +void java_util_HashSet_PUT_serialVersionUID(JAVA_LONG v); +void java_util_HashSet___INIT___(JAVA_OBJECT me); +void java_util_HashSet___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_HashSet___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); +void java_util_HashSet___INIT____java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_HashSet___INIT____java_util_HashMap(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_BOOLEAN java_util_HashSet_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +void java_util_HashSet_clear__(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_util_HashSet_clone__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_util_HashSet_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 11 +JAVA_BOOLEAN java_util_HashSet_isEmpty__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_util_HashSet_iterator__(JAVA_OBJECT me); +// Vtable index: 14 +JAVA_BOOLEAN java_util_HashSet_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_HashSet_size__(JAVA_OBJECT me); +void java_util_HashSet_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_HashSet_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_HashSet_createBackingMap___int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); + +#endif diff --git a/tests/nbody-java/java_util_Hashtable.c b/tests/nbody-java/java_util_Hashtable.c new file mode 100644 index 0000000000000..76d6d4abd89b9 --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable.c @@ -0,0 +1,2476 @@ +#include "xmlvm.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_Throwable.h" +#include "java_util_Collection.h" +#include "java_util_Enumeration.h" +#include "java_util_Hashtable_1.h" +#include "java_util_Hashtable_2.h" +#include "java_util_Hashtable_Entry.h" +#include "java_util_Iterator.h" +#include "java_util_Map_Entry.h" +#include "java_util_Set.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "java_util_Hashtable.h" + +#define XMLVM_CURRENT_CLASS_NAME Hashtable +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Hashtable + +__TIB_DEFINITION_java_util_Hashtable __TIB_java_util_Hashtable = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Hashtable, // classInitializer + "java.util.Hashtable", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/Dictionary;Ljava/util/Map;Ljava/lang/Cloneable;Ljava/io/Serializable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_Dictionary, // extends + sizeof(java_util_Hashtable), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Hashtable; +JAVA_OBJECT __CLASS_java_util_Hashtable_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_Hashtable_serialVersionUID; +static JAVA_OBJECT _STATIC_java_util_Hashtable_EMPTY_ENUMERATION; +static JAVA_OBJECT _STATIC_java_util_Hashtable_EMPTY_ITERATOR; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Hashtable() +{ + staticInitializerLock(&__TIB_java_util_Hashtable); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Hashtable.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Hashtable.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Hashtable); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Hashtable.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Hashtable.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Hashtable.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Hashtable") + __INIT_IMPL_java_util_Hashtable(); + } +} + +void __INIT_IMPL_java_util_Hashtable() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_Dictionary) + __TIB_java_util_Hashtable.newInstanceFunc = __NEW_INSTANCE_java_util_Hashtable; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Hashtable.vtable, __TIB_java_util_Dictionary.vtable, sizeof(__TIB_java_util_Dictionary.vtable)); + // Initialize vtable for this class + __TIB_java_util_Hashtable.vtable[13] = (VTABLE_PTR) &java_util_Hashtable_clear__; + __TIB_java_util_Hashtable.vtable[0] = (VTABLE_PTR) &java_util_Hashtable_clone__; + __TIB_java_util_Hashtable.vtable[14] = (VTABLE_PTR) &java_util_Hashtable_containsKey___java_lang_Object; + __TIB_java_util_Hashtable.vtable[15] = (VTABLE_PTR) &java_util_Hashtable_containsValue___java_lang_Object; + __TIB_java_util_Hashtable.vtable[6] = (VTABLE_PTR) &java_util_Hashtable_elements__; + __TIB_java_util_Hashtable.vtable[16] = (VTABLE_PTR) &java_util_Hashtable_entrySet__; + __TIB_java_util_Hashtable.vtable[1] = (VTABLE_PTR) &java_util_Hashtable_equals___java_lang_Object; + __TIB_java_util_Hashtable.vtable[7] = (VTABLE_PTR) &java_util_Hashtable_get___java_lang_Object; + __TIB_java_util_Hashtable.vtable[4] = (VTABLE_PTR) &java_util_Hashtable_hashCode__; + __TIB_java_util_Hashtable.vtable[8] = (VTABLE_PTR) &java_util_Hashtable_isEmpty__; + __TIB_java_util_Hashtable.vtable[9] = (VTABLE_PTR) &java_util_Hashtable_keys__; + __TIB_java_util_Hashtable.vtable[17] = (VTABLE_PTR) &java_util_Hashtable_keySet__; + __TIB_java_util_Hashtable.vtable[10] = (VTABLE_PTR) &java_util_Hashtable_put___java_lang_Object_java_lang_Object; + __TIB_java_util_Hashtable.vtable[18] = (VTABLE_PTR) &java_util_Hashtable_putAll___java_util_Map; + __TIB_java_util_Hashtable.vtable[11] = (VTABLE_PTR) &java_util_Hashtable_remove___java_lang_Object; + __TIB_java_util_Hashtable.vtable[12] = (VTABLE_PTR) &java_util_Hashtable_size__; + __TIB_java_util_Hashtable.vtable[5] = (VTABLE_PTR) &java_util_Hashtable_toString__; + __TIB_java_util_Hashtable.vtable[19] = (VTABLE_PTR) &java_util_Hashtable_values__; + // Initialize interface information + __TIB_java_util_Hashtable.numImplementedInterfaces = 3; + __TIB_java_util_Hashtable.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_Hashtable.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_Hashtable.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_util_Map) + + __TIB_java_util_Hashtable.implementedInterfaces[0][2] = &__TIB_java_util_Map; + // Initialize itable for this class + __TIB_java_util_Hashtable.itableBegin = &__TIB_java_util_Hashtable.itable[0]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_clear__] = __TIB_java_util_Hashtable.vtable[13]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object] = __TIB_java_util_Hashtable.vtable[14]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object] = __TIB_java_util_Hashtable.vtable[15]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_entrySet__] = __TIB_java_util_Hashtable.vtable[16]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object] = __TIB_java_util_Hashtable.vtable[1]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object] = __TIB_java_util_Hashtable.vtable[7]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_hashCode__] = __TIB_java_util_Hashtable.vtable[4]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__] = __TIB_java_util_Hashtable.vtable[8]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_keySet__] = __TIB_java_util_Hashtable.vtable[17]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map] = __TIB_java_util_Hashtable.vtable[18]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object] = __TIB_java_util_Hashtable.vtable[10]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object] = __TIB_java_util_Hashtable.vtable[11]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_size__] = __TIB_java_util_Hashtable.vtable[12]; + __TIB_java_util_Hashtable.itable[XMLVM_ITABLE_IDX_java_util_Map_values__] = __TIB_java_util_Hashtable.vtable[19]; + + _STATIC_java_util_Hashtable_serialVersionUID = 1421746759512286392; + _STATIC_java_util_Hashtable_EMPTY_ENUMERATION = (java_util_Enumeration*) JAVA_NULL; + _STATIC_java_util_Hashtable_EMPTY_ITERATOR = (java_util_Iterator*) JAVA_NULL; + + __TIB_java_util_Hashtable.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Hashtable.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Hashtable.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Hashtable.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Hashtable.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Hashtable.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Hashtable.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Hashtable.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Hashtable = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Hashtable); + __TIB_java_util_Hashtable.clazz = __CLASS_java_util_Hashtable; + __TIB_java_util_Hashtable.baseType = JAVA_NULL; + __CLASS_java_util_Hashtable_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable); + __CLASS_java_util_Hashtable_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_1ARRAY); + __CLASS_java_util_Hashtable_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_2ARRAY); + java_util_Hashtable___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Hashtable] + //XMLVM_END_WRAPPER + + __TIB_java_util_Hashtable.classInitialized = 1; +} + +void __DELETE_java_util_Hashtable(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Hashtable] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_Dictionary(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_Hashtable*) me)->fields.java_util_Hashtable.elementCount_ = 0; + ((java_util_Hashtable*) me)->fields.java_util_Hashtable.elementData_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_util_Hashtable*) me)->fields.java_util_Hashtable.loadFactor_ = 0; + ((java_util_Hashtable*) me)->fields.java_util_Hashtable.threshold_ = 0; + ((java_util_Hashtable*) me)->fields.java_util_Hashtable.firstSlot_ = 0; + ((java_util_Hashtable*) me)->fields.java_util_Hashtable.lastSlot_ = 0; + ((java_util_Hashtable*) me)->fields.java_util_Hashtable.modCount_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Hashtable] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Hashtable() +{ XMLVM_CLASS_INIT(java_util_Hashtable) +java_util_Hashtable* me = (java_util_Hashtable*) XMLVM_MALLOC(sizeof(java_util_Hashtable)); + me->tib = &__TIB_java_util_Hashtable; + __INIT_INSTANCE_MEMBERS_java_util_Hashtable(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Hashtable] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_Hashtable(); + java_util_Hashtable___INIT___(me); + return me; +} + +JAVA_LONG java_util_Hashtable_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_Hashtable) + return _STATIC_java_util_Hashtable_serialVersionUID; +} + +void java_util_Hashtable_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_Hashtable) +_STATIC_java_util_Hashtable_serialVersionUID = v; +} + +JAVA_OBJECT java_util_Hashtable_GET_EMPTY_ENUMERATION() +{ + XMLVM_CLASS_INIT(java_util_Hashtable) + return _STATIC_java_util_Hashtable_EMPTY_ENUMERATION; +} + +void java_util_Hashtable_PUT_EMPTY_ENUMERATION(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Hashtable) +_STATIC_java_util_Hashtable_EMPTY_ENUMERATION = v; +} + +JAVA_OBJECT java_util_Hashtable_GET_EMPTY_ITERATOR() +{ + XMLVM_CLASS_INIT(java_util_Hashtable) + return _STATIC_java_util_Hashtable_EMPTY_ITERATOR; +} + +void java_util_Hashtable_PUT_EMPTY_ITERATOR(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Hashtable) +_STATIC_java_util_Hashtable_EMPTY_ITERATOR = v; +} + +void java_util_Hashtable___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable___CLINIT___] + XMLVM_ENTER_METHOD("java.util.Hashtable", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Hashtable.java", 60) + _r0.o = __NEW_java_util_Hashtable_1(); + XMLVM_CHECK_NPE(0) + java_util_Hashtable_1___INIT___(_r0.o); + java_util_Hashtable_PUT_EMPTY_ENUMERATION( _r0.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 70) + _r0.o = __NEW_java_util_Hashtable_2(); + XMLVM_CHECK_NPE(0) + java_util_Hashtable_2___INIT___(_r0.o); + java_util_Hashtable_PUT_EMPTY_ITERATOR( _r0.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 41) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_newEntry___java_lang_Object_java_lang_Object_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(java_util_Hashtable) + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_newEntry___java_lang_Object_java_lang_Object_int] + XMLVM_ENTER_METHOD("java.util.Hashtable", "newEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = n1; + _r2.o = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("Hashtable.java", 86) + _r0.o = __NEW_java_util_Hashtable_Entry(); + XMLVM_CHECK_NPE(0) + java_util_Hashtable_Entry___INIT____java_lang_Object_java_lang_Object(_r0.o, _r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable___INIT___] + XMLVM_ENTER_METHOD("java.util.Hashtable", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 235) + _r0.i = 11; + XMLVM_CHECK_NPE(1) + java_util_Hashtable___INIT____int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 236) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable___INIT____int] + XMLVM_ENTER_METHOD("java.util.Hashtable", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 245) + XMLVM_CHECK_NPE(1) + java_util_Dictionary___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 56) + _r0.i = -1; + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.lastSlot_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 246) + if (_r2.i < 0) goto label35; + XMLVM_SOURCE_POSITION("Hashtable.java", 247) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 248) + if (_r2.i != 0) goto label33; + _r0.i = 1; + label14:; + XMLVM_CHECK_NPE(1) + _r0.o = java_util_Hashtable_newElementArray___int(_r1.o, _r0.i); + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.elementData_ = _r0.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 249) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.firstSlot_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 250) + _r0.f = 0.75; + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.loadFactor_ = _r0.f; + XMLVM_SOURCE_POSITION("Hashtable.java", 251) + XMLVM_CHECK_NPE(1) + java_util_Hashtable_computeMaxSize__(_r1.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 255) + XMLVM_EXIT_METHOD() + return; + label33:; + _r0 = _r2; + goto label14; + label35:; + XMLVM_SOURCE_POSITION("Hashtable.java", 253) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable___INIT____int_float] + XMLVM_ENTER_METHOD("java.util.Hashtable", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.f = n2; + XMLVM_SOURCE_POSITION("Hashtable.java", 266) + XMLVM_CHECK_NPE(1) + java_util_Dictionary___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 56) + _r0.i = -1; + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.lastSlot_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 267) + if (_r2.i < 0) goto label35; + _r0.f = 0.0; + _r0.i = _r3.f > _r0.f ? 1 : (_r3.f == _r0.f ? 0 : -1); + if (_r0.i <= 0) goto label35; + XMLVM_SOURCE_POSITION("Hashtable.java", 268) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 269) + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.firstSlot_ = _r2.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 270) + if (_r2.i != 0) goto label33; + _r0.i = 1; + label21:; + XMLVM_CHECK_NPE(1) + _r0.o = java_util_Hashtable_newElementArray___int(_r1.o, _r0.i); + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.elementData_ = _r0.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 271) + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.loadFactor_ = _r3.f; + XMLVM_SOURCE_POSITION("Hashtable.java", 272) + XMLVM_CHECK_NPE(1) + java_util_Hashtable_computeMaxSize__(_r1.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 276) + XMLVM_EXIT_METHOD() + return; + label33:; + _r0 = _r2; + goto label21; + label35:; + XMLVM_SOURCE_POSITION("Hashtable.java", 274) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable___INIT____java_util_Map] + XMLVM_ENTER_METHOD("java.util.Hashtable", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 286) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r3.o); + _r1.i = 6; + if (_r0.i >= _r1.i) goto label16; + _r0.i = 11; + label9:; + XMLVM_CHECK_NPE(2) + java_util_Hashtable___INIT____int(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 287) + //java_util_Hashtable_putAll___java_util_Map[18] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Hashtable*) _r2.o)->tib->vtable[18])(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 288) + XMLVM_EXIT_METHOD() + return; + label16:; + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r3.o); + _r0.i = _r0.i * 4; + _r0.i = _r0.i / 3; + _r0.i = _r0.i + 11; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_newElementArray___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_newElementArray___int] + XMLVM_ENTER_METHOD("java.util.Hashtable", "newElementArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 292) + XMLVM_CLASS_INIT(java_util_Hashtable_Entry) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_util_Hashtable_Entry, _r2.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_clear__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "clear", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 303) + java_lang_Object_acquireLockRecursive__(_r2.o); + _r0.i = 0; + XMLVM_TRY_BEGIN(w2948aaac17b1b5) + // Begin try + XMLVM_CHECK_NPE(2) + ((java_util_Hashtable*) _r2.o)->fields.java_util_Hashtable.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 304) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Hashtable*) _r2.o)->fields.java_util_Hashtable.elementData_; + _r1.o = JAVA_NULL; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 305) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_Hashtable*) _r2.o)->fields.java_util_Hashtable.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(2) + ((java_util_Hashtable*) _r2.o)->fields.java_util_Hashtable.modCount_ = _r0.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac17b1b5) + XMLVM_CATCH_SPECIFIC(w2948aaac17b1b5,java_lang_Object,18) + XMLVM_CATCH_END(w2948aaac17b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac17b1b5) + XMLVM_SOURCE_POSITION("Hashtable.java", 306) + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return; + label18:; + java_lang_Thread* curThread_w2948aaac17b1c10 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac17b1c10->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_clone__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "clone", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 319) + java_lang_Object_acquireLockRecursive__(_r4.o); + XMLVM_TRY_BEGIN(w2948aaac18b1b4) + // Begin try + XMLVM_CHECK_NPE(4) + _r0.o = java_lang_Object_clone__(_r4.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 320) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_Hashtable*) _r4.o)->fields.java_util_Hashtable.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + XMLVM_CLASS_INIT(java_util_Hashtable_Entry) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_util_Hashtable_Entry, _r1.i); + XMLVM_CHECK_NPE(0) + ((java_util_Hashtable*) _r0.o)->fields.java_util_Hashtable.elementData_ = _r1.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 322) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_Hashtable*) _r4.o)->fields.java_util_Hashtable.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac18b1b4) + XMLVM_CATCH_SPECIFIC(w2948aaac18b1b4,java_lang_Object,44) + XMLVM_CATCH_END(w2948aaac18b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac18b1b4) + label17:; + _r2.i = _r1.i + -1; + if (_r2.i >= 0) goto label23; + label21:; + XMLVM_SOURCE_POSITION("Hashtable.java", 329) + java_lang_Object_releaseLockRecursive__(_r4.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label23:; + XMLVM_TRY_BEGIN(w2948aaac18b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 323) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_Hashtable*) _r4.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + if (_r1.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac18b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac18b1c13, sizeof(XMLVM_JMP_BUF)); goto label39; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 324) + XMLVM_CHECK_NPE(0) + _r3.o = ((java_util_Hashtable*) _r0.o)->fields.java_util_Hashtable.elementData_; + //java_util_Hashtable_Entry_clone__[0] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Hashtable_Entry*) _r1.o)->tib->vtable[0])(_r1.o); + _r1.o = _r1.o; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac18b1c13) + XMLVM_CATCH_SPECIFIC(w2948aaac18b1c13,java_lang_Object,44) + XMLVM_CATCH_END(w2948aaac18b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac18b1c13) + label39:; + _r1 = _r2; + goto label17; + label41:; + java_lang_Thread* curThread_w2948aaac18b1c18 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac18b1c18->fields.java_lang_Thread.xmlvmException_; + _r0.o = JAVA_NULL; + goto label21; + label44:; + java_lang_Thread* curThread_w2948aaac18b1c22 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac18b1c22->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r4.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable_computeMaxSize__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_computeMaxSize__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "computeMaxSize", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 334) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Hashtable*) _r2.o)->fields.java_util_Hashtable.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.f = (JAVA_FLOAT) _r0.i; + XMLVM_CHECK_NPE(2) + _r1.f = ((java_util_Hashtable*) _r2.o)->fields.java_util_Hashtable.loadFactor_; + _r0.f = _r0.f * _r1.f; + _r0.i = (JAVA_INT) _r0.f; + XMLVM_CHECK_NPE(2) + ((java_util_Hashtable*) _r2.o)->fields.java_util_Hashtable.threshold_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 335) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_contains___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "contains", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 349) + java_lang_Object_acquireLockRecursive__(_r3.o); + if (_r4.o != JAVA_NULL) goto label12; + XMLVM_TRY_BEGIN(w2948aaac20b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 350) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac20b1b6) + XMLVM_CATCH_SPECIFIC(w2948aaac20b1b6,java_lang_Object,9) + XMLVM_CATCH_END(w2948aaac20b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac20b1b6) + label9:; + java_lang_Thread* curThread_w2948aaac20b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac20b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_TRY_BEGIN(w2948aaac20b1c12) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 353) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac20b1c12) + XMLVM_CATCH_SPECIFIC(w2948aaac20b1c12,java_lang_Object,9) + XMLVM_CATCH_END(w2948aaac20b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac20b1c12) + label15:; + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label22; + XMLVM_SOURCE_POSITION("Hashtable.java", 362) + _r0.i = 0; + label20:; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + XMLVM_TRY_BEGIN(w2948aaac20b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 354) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac20b1c22) + XMLVM_CATCH_SPECIFIC(w2948aaac20b1c22,java_lang_Object,9) + XMLVM_CATCH_END(w2948aaac20b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac20b1c22) + label26:; + XMLVM_TRY_BEGIN(w2948aaac20b1c24) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 355) + if (_r1.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac20b1c24->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac20b1c24, sizeof(XMLVM_JMP_BUF)); goto label15; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 356) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[1])(_r2.o, _r4.o); + if (_r2.i == 0) { XMLVM_MEMCPY(curThread_w2948aaac20b1c24->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac20b1c24, sizeof(XMLVM_JMP_BUF)); goto label38; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 357) + _r0.i = 1; + { XMLVM_MEMCPY(curThread_w2948aaac20b1c24->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac20b1c24, sizeof(XMLVM_JMP_BUF)); goto label20; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 359) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac20b1c24) + XMLVM_CATCH_SPECIFIC(w2948aaac20b1c24,java_lang_Object,9) + XMLVM_CATCH_END(w2948aaac20b1c24) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac20b1c24) + label38:; + XMLVM_TRY_BEGIN(w2948aaac20b1c26) + // Begin try + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_Hashtable_Entry*) _r1.o)->fields.java_util_Hashtable_Entry.next_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac20b1c26) + XMLVM_CATCH_SPECIFIC(w2948aaac20b1c26,java_lang_Object,9) + XMLVM_CATCH_END(w2948aaac20b1c26) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac20b1c26) + goto label26; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_containsKey___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "containsKey", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 377) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w2948aaac21b1b5) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.o = java_util_Hashtable_getEntry___java_lang_Object(_r1.o, _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac21b1b5) + XMLVM_CATCH_SPECIFIC(w2948aaac21b1b5,java_lang_Object,12) + XMLVM_CATCH_END(w2948aaac21b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac21b1b5) + if (_r0.o == JAVA_NULL) goto label10; + _r0.i = 1; + label8:; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label10:; + _r0.i = 0; + goto label8; + label12:; + java_lang_Thread* curThread_w2948aaac21b1c15 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac21b1c15->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_containsValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "containsValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 389) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_Hashtable_contains___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_elements__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_elements__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "elements", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 405) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w2948aaac23b1b4) + // Begin try + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementCount_; + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w2948aaac23b1b4->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac23b1b4, sizeof(XMLVM_JMP_BUF)); goto label9; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 406) + _r0.o = java_util_Hashtable_GET_EMPTY_ENUMERATION(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac23b1b4) + XMLVM_CATCH_SPECIFIC(w2948aaac23b1b4,java_lang_Object,21) + XMLVM_CATCH_END(w2948aaac23b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac23b1b4) + label7:; + XMLVM_SOURCE_POSITION("Hashtable.java", 408) + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + XMLVM_TRY_BEGIN(w2948aaac23b1c10) + // Begin try + + + // Red class access removed: java.util.Hashtable$HashEnumIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$3::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$3:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 412) + _r2.i = 1; + + + // Red class access removed: java.util.Hashtable$HashEnumIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac23b1c10) + XMLVM_CATCH_SPECIFIC(w2948aaac23b1c10,java_lang_Object,21) + XMLVM_CATCH_END(w2948aaac23b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac23b1c10) + goto label7; + label21:; + java_lang_Thread* curThread_w2948aaac23b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac23b1c13->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_entrySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_entrySet__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "entrySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 424) + + + // Red class access removed: java.util.Collections$SynchronizedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 425) + + + // Red class access removed: java.util.Hashtable$4::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$4:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "equals", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r4.i = 1; + _r3.i = 0; + XMLVM_SOURCE_POSITION("Hashtable.java", 481) + java_lang_Object_acquireLockRecursive__(_r5.o); + if (_r5.o != _r6.o) goto label8; + _r0 = _r4; + label6:; + XMLVM_SOURCE_POSITION("Hashtable.java", 482) + XMLVM_SOURCE_POSITION("Hashtable.java", 498) + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_TRY_BEGIN(w2948aaac25b1c15) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 484) + XMLVM_CLASS_INIT(java_util_Map) + _r0.i = XMLVM_ISA(_r6.o, __CLASS_java_util_Map); + if (_r0.i == 0) { XMLVM_MEMCPY(curThread_w2948aaac25b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac25b1c15, sizeof(XMLVM_JMP_BUF)); goto label60; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 485) + _r6.o = _r6.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 486) + //java_util_Hashtable_size__[12] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_Hashtable*) _r5.o)->tib->vtable[12])(_r5.o); + XMLVM_CHECK_NPE(6) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r6.o); + if (_r0.i == _r1.i) { XMLVM_MEMCPY(curThread_w2948aaac25b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac25b1c15, sizeof(XMLVM_JMP_BUF)); goto label26; }; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Hashtable.java", 487) + { XMLVM_MEMCPY(curThread_w2948aaac25b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac25b1c15, sizeof(XMLVM_JMP_BUF)); goto label6; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 490) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac25b1c15) + XMLVM_CATCH_SPECIFIC(w2948aaac25b1c15,java_lang_Object,62) + XMLVM_CATCH_END(w2948aaac25b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac25b1c15) + label26:; + XMLVM_TRY_BEGIN(w2948aaac25b1c17) + // Begin try + //java_util_Hashtable_entrySet__[16] + XMLVM_CHECK_NPE(5) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Hashtable*) _r5.o)->tib->vtable[16])(_r5.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 491) + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_entrySet__])(_r6.o); + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac25b1c17) + XMLVM_CATCH_SPECIFIC(w2948aaac25b1c17,java_lang_Object,62) + XMLVM_CATCH_END(w2948aaac25b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac25b1c17) + label38:; + XMLVM_TRY_BEGIN(w2948aaac25b1c19) + // Begin try + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r2.o); + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w2948aaac25b1c19->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac25b1c19, sizeof(XMLVM_JMP_BUF)); goto label46; }; + _r0 = _r4; + XMLVM_SOURCE_POSITION("Hashtable.java", 496) + { XMLVM_MEMCPY(curThread_w2948aaac25b1c19->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac25b1c19, sizeof(XMLVM_JMP_BUF)); goto label6; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac25b1c19) + XMLVM_CATCH_SPECIFIC(w2948aaac25b1c19,java_lang_Object,62) + XMLVM_CATCH_END(w2948aaac25b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac25b1c19) + label46:; + XMLVM_TRY_BEGIN(w2948aaac25b1c21) + // Begin try + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 492) + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_contains___java_lang_Object])(_r1.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac25b1c21) + XMLVM_CATCH_SPECIFIC(w2948aaac25b1c21,java_lang_Object,62) + XMLVM_CATCH_END(w2948aaac25b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac25b1c21) + if (_r0.i != 0) goto label38; + _r0 = _r3; + XMLVM_SOURCE_POSITION("Hashtable.java", 493) + goto label6; + label60:; + _r0 = _r3; + goto label6; + label62:; + java_lang_Thread* curThread_w2948aaac25b1c30 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac25b1c30->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_get___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "get", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 513) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w2948aaac26b1b5) + // Begin try + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[4])(_r4.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 514) + _r1.i = 2147483647; + _r1.i = _r1.i & _r0.i; + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r1.i = _r1.i % _r2.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 515) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac26b1b5) + XMLVM_CATCH_SPECIFIC(w2948aaac26b1b5,java_lang_Object,34) + XMLVM_CATCH_END(w2948aaac26b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac26b1b5) + label17:; + XMLVM_SOURCE_POSITION("Hashtable.java", 516) + if (_r1.o != JAVA_NULL) goto label22; + XMLVM_SOURCE_POSITION("Hashtable.java", 522) + _r0.o = JAVA_NULL; + label20:; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label22:; + XMLVM_TRY_BEGIN(w2948aaac26b1c15) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 517) + XMLVM_CHECK_NPE(1) + _r2.i = java_util_Hashtable_Entry_equalsKey___java_lang_Object_int(_r1.o, _r4.o, _r0.i); + if (_r2.i == 0) { XMLVM_MEMCPY(curThread_w2948aaac26b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac26b1c15, sizeof(XMLVM_JMP_BUF)); goto label31; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 518) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + { XMLVM_MEMCPY(curThread_w2948aaac26b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac26b1c15, sizeof(XMLVM_JMP_BUF)); goto label20; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 520) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac26b1c15) + XMLVM_CATCH_SPECIFIC(w2948aaac26b1c15,java_lang_Object,34) + XMLVM_CATCH_END(w2948aaac26b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac26b1c15) + label31:; + XMLVM_TRY_BEGIN(w2948aaac26b1c17) + // Begin try + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_Hashtable_Entry*) _r1.o)->fields.java_util_Hashtable_Entry.next_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac26b1c17) + XMLVM_CATCH_SPECIFIC(w2948aaac26b1c17,java_lang_Object,34) + XMLVM_CATCH_END(w2948aaac26b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac26b1c17) + goto label17; + label34:; + java_lang_Thread* curThread_w2948aaac26b1c20 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac26b1c20->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_getEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_getEntry___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "getEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 526) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[4])(_r4.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 527) + _r1.i = 2147483647; + _r1.i = _r1.i & _r0.i; + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r1.i = _r1.i % _r2.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 528) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + label16:; + XMLVM_SOURCE_POSITION("Hashtable.java", 529) + if (_r1.o != JAVA_NULL) goto label20; + XMLVM_SOURCE_POSITION("Hashtable.java", 535) + _r0.o = JAVA_NULL; + label19:; + XMLVM_EXIT_METHOD() + return _r0.o; + label20:; + XMLVM_SOURCE_POSITION("Hashtable.java", 530) + XMLVM_CHECK_NPE(1) + _r2.i = java_util_Hashtable_Entry_equalsKey___java_lang_Object_int(_r1.o, _r4.o, _r0.i); + if (_r2.i == 0) goto label28; + _r0 = _r1; + XMLVM_SOURCE_POSITION("Hashtable.java", 531) + goto label19; + label28:; + XMLVM_SOURCE_POSITION("Hashtable.java", 533) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_Hashtable_Entry*) _r1.o)->fields.java_util_Hashtable_Entry.next_; + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Hashtable_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_hashCode__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "hashCode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.o = me; + _r4.i = 0; + XMLVM_SOURCE_POSITION("Hashtable.java", 540) + java_lang_Object_acquireLockRecursive__(_r5.o); + XMLVM_TRY_BEGIN(w2948aaac28b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 541) + //java_util_Hashtable_entrySet__[16] + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Hashtable*) _r5.o)->tib->vtable[16])(_r5.o); + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + _r2 = _r4; + XMLVM_SOURCE_POSITION("Hashtable.java", 542) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac28b1b5) + XMLVM_CATCH_SPECIFIC(w2948aaac28b1b5,java_lang_Object,57) + XMLVM_CATCH_END(w2948aaac28b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac28b1b5) + label11:; + XMLVM_TRY_BEGIN(w2948aaac28b1b7) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac28b1b7) + XMLVM_CATCH_SPECIFIC(w2948aaac28b1b7,java_lang_Object,57) + XMLVM_CATCH_END(w2948aaac28b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac28b1b7) + if (_r0.i != 0) goto label19; + XMLVM_SOURCE_POSITION("Hashtable.java", 556) + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_EXIT_METHOD() + return _r2.i; + label19:; + XMLVM_TRY_BEGIN(w2948aaac28b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 543) + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 544) + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 545) + if (_r3.o == _r5.o) { XMLVM_MEMCPY(curThread_w2948aaac28b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac28b1c13, sizeof(XMLVM_JMP_BUF)); goto label11; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 548) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 549) + if (_r0.o == _r5.o) { XMLVM_MEMCPY(curThread_w2948aaac28b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac28b1c13, sizeof(XMLVM_JMP_BUF)); goto label11; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 552) + if (_r3.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac28b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac28b1c13, sizeof(XMLVM_JMP_BUF)); goto label53; }; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[4])(_r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac28b1c13) + XMLVM_CATCH_SPECIFIC(w2948aaac28b1c13,java_lang_Object,57) + XMLVM_CATCH_END(w2948aaac28b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac28b1c13) + label43:; + XMLVM_TRY_BEGIN(w2948aaac28b1c15) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 553) + if (_r0.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac28b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac28b1c15, sizeof(XMLVM_JMP_BUF)); goto label55; }; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[4])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac28b1c15) + XMLVM_CATCH_SPECIFIC(w2948aaac28b1c15,java_lang_Object,57) + XMLVM_CATCH_END(w2948aaac28b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac28b1c15) + label49:; + _r0.i = _r0.i ^ _r3.i; + _r0.i = _r0.i + _r2.i; + _r2 = _r0; + XMLVM_SOURCE_POSITION("Hashtable.java", 554) + goto label11; + label53:; + _r3 = _r4; + goto label43; + label55:; + _r0 = _r4; + goto label49; + label57:; + java_lang_Thread* curThread_w2948aaac28b1c29 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac28b1c29->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_isEmpty__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "isEmpty", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 568) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w2948aaac29b1b4) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.elementCount_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac29b1b4) + XMLVM_CATCH_SPECIFIC(w2948aaac29b1b4,java_lang_Object,10) + XMLVM_CATCH_END(w2948aaac29b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac29b1b4) + if (_r0.i != 0) goto label8; + _r0.i = 1; + label6:; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label6; + label10:; + java_lang_Thread* curThread_w2948aaac29b1c14 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac29b1c14->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_keys__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_keys__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "keys", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 584) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w2948aaac30b1b4) + // Begin try + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementCount_; + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w2948aaac30b1b4->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac30b1b4, sizeof(XMLVM_JMP_BUF)); goto label9; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 585) + _r0.o = java_util_Hashtable_GET_EMPTY_ENUMERATION(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac30b1b4) + XMLVM_CATCH_SPECIFIC(w2948aaac30b1b4,java_lang_Object,21) + XMLVM_CATCH_END(w2948aaac30b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac30b1b4) + label7:; + XMLVM_SOURCE_POSITION("Hashtable.java", 587) + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label9:; + XMLVM_TRY_BEGIN(w2948aaac30b1c10) + // Begin try + + + // Red class access removed: java.util.Hashtable$HashEnumIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$5::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$5:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 591) + _r2.i = 1; + + + // Red class access removed: java.util.Hashtable$HashEnumIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac30b1c10) + XMLVM_CATCH_SPECIFIC(w2948aaac30b1c10,java_lang_Object,21) + XMLVM_CATCH_END(w2948aaac30b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac30b1c10) + goto label7; + label21:; + java_lang_Thread* curThread_w2948aaac30b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac30b1c13->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_keySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_keySet__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "keySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 602) + + + // Red class access removed: java.util.Collections$SynchronizedSet::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$6::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$6:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedSet:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_put___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "put", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + _r5.o = me; + _r6.o = n1; + _r7.o = n2; + _r4.i = 2147483647; + XMLVM_SOURCE_POSITION("Hashtable.java", 737) + java_lang_Object_acquireLockRecursive__(_r5.o); + if (_r6.o == JAVA_NULL) goto label97; + if (_r7.o == JAVA_NULL) goto label97; + XMLVM_TRY_BEGIN(w2948aaac32b1b9) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 738) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(6) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r6.o)->tib->vtable[4])(_r6.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 739) + _r1.i = _r0.i & _r4.i; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementData_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r1.i = _r1.i % _r2.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 740) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1b9) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1b9,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1b9) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1b9) + label22:; + XMLVM_TRY_BEGIN(w2948aaac32b1c11) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 741) + if (_r2.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac32b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac32b1c11, sizeof(XMLVM_JMP_BUF)); goto label30; }; + XMLVM_CHECK_NPE(2) + _r3.i = java_util_Hashtable_Entry_equalsKey___java_lang_Object_int(_r2.o, _r6.o, _r0.i); + if (_r3.i == 0) { XMLVM_MEMCPY(curThread_w2948aaac32b1c11->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac32b1c11, sizeof(XMLVM_JMP_BUF)); goto label86; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c11) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c11,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c11) + label30:; + XMLVM_TRY_BEGIN(w2948aaac32b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 744) + if (_r2.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac32b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac32b1c13, sizeof(XMLVM_JMP_BUF)); goto label89; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 745) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.modCount_; + _r2.i = _r2.i + 1; + XMLVM_CHECK_NPE(5) + ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.modCount_ = _r2.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 746) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementCount_; + _r2.i = _r2.i + 1; + XMLVM_CHECK_NPE(5) + ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementCount_ = _r2.i; + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.threshold_; + if (_r2.i <= _r3.i) { XMLVM_MEMCPY(curThread_w2948aaac32b1c13->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac32b1c13, sizeof(XMLVM_JMP_BUF)); goto label57; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 747) + XMLVM_CHECK_NPE(5) + java_util_Hashtable_rehash__(_r5.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 748) + _r1.i = _r0.i & _r4.i; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementData_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r1.i = _r1.i % _r2.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c13) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c13,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c13) + label57:; + XMLVM_TRY_BEGIN(w2948aaac32b1c15) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 750) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.firstSlot_; + if (_r1.i >= _r2.i) { XMLVM_MEMCPY(curThread_w2948aaac32b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac32b1c15, sizeof(XMLVM_JMP_BUF)); goto label63; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 751) + XMLVM_CHECK_NPE(5) + ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.firstSlot_ = _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c15) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c15,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c15) + label63:; + XMLVM_TRY_BEGIN(w2948aaac32b1c17) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 753) + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.lastSlot_; + if (_r1.i <= _r2.i) { XMLVM_MEMCPY(curThread_w2948aaac32b1c17->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac32b1c17, sizeof(XMLVM_JMP_BUF)); goto label69; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 754) + XMLVM_CHECK_NPE(5) + ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.lastSlot_ = _r1.i; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c17) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c17,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c17) + label69:; + XMLVM_TRY_BEGIN(w2948aaac32b1c19) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 756) + _r0.o = java_util_Hashtable_newEntry___java_lang_Object_java_lang_Object_int(_r6.o, _r7.o, _r0.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 757) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(0) + ((java_util_Hashtable_Entry*) _r0.o)->fields.java_util_Hashtable_Entry.next_ = _r2.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 758) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c19) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c19,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c19) + XMLVM_SOURCE_POSITION("Hashtable.java", 759) + _r0.o = JAVA_NULL; + label84:; + XMLVM_SOURCE_POSITION("Hashtable.java", 763) + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label86:; + XMLVM_TRY_BEGIN(w2948aaac32b1c27) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 742) + XMLVM_CHECK_NPE(2) + _r2.o = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_; + { XMLVM_MEMCPY(curThread_w2948aaac32b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac32b1c27, sizeof(XMLVM_JMP_BUF)); goto label22; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 761) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c27) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c27,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c27) + label89:; + XMLVM_TRY_BEGIN(w2948aaac32b1c29) + // Begin try + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_; + XMLVM_SOURCE_POSITION("Hashtable.java", 762) + XMLVM_CHECK_NPE(2) + ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_ = _r7.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c29) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c29,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c29) + goto label84; + label94:; + java_lang_Thread* curThread_w2948aaac32b1c32 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac32b1c32->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_THROW_CUSTOM(_r0.o) + label97:; + XMLVM_TRY_BEGIN(w2948aaac32b1c36) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 765) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac32b1c36) + XMLVM_CATCH_SPECIFIC(w2948aaac32b1c36,java_lang_Object,94) + XMLVM_CATCH_END(w2948aaac32b1c36) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac32b1c36) + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_putAll___java_util_Map] + XMLVM_ENTER_METHOD("java.util.Hashtable", "putAll", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 775) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w2948aaac33b1b5) + // Begin try + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_entrySet__])(_r4.o); + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac33b1b5) + XMLVM_CATCH_SPECIFIC(w2948aaac33b1b5,java_lang_Object,35) + XMLVM_CATCH_END(w2948aaac33b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac33b1b5) + label9:; + XMLVM_TRY_BEGIN(w2948aaac33b1b7) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac33b1b7) + XMLVM_CATCH_SPECIFIC(w2948aaac33b1b7,java_lang_Object,35) + XMLVM_CATCH_END(w2948aaac33b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac33b1b7) + if (_r0.i != 0) goto label17; + XMLVM_SOURCE_POSITION("Hashtable.java", 778) + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_EXIT_METHOD() + return; + label17:; + XMLVM_TRY_BEGIN(w2948aaac33b1c13) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 776) + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + //java_util_Hashtable_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(3) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Hashtable*) _r3.o)->tib->vtable[10])(_r3.o, _r2.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac33b1c13) + XMLVM_CATCH_SPECIFIC(w2948aaac33b1c13,java_lang_Object,35) + XMLVM_CATCH_END(w2948aaac33b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac33b1c13) + goto label9; + label35:; + java_lang_Thread* curThread_w2948aaac33b1c16 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac33b1c16->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable_rehash__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_rehash__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "rehash", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r10.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 785) + XMLVM_CHECK_NPE(10) + _r0.o = ((java_util_Hashtable*) _r10.o)->fields.java_util_Hashtable.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.i = _r0.i << 1; + _r0.i = _r0.i + 1; + if (_r0.i != 0) goto label10; + XMLVM_SOURCE_POSITION("Hashtable.java", 786) + XMLVM_SOURCE_POSITION("Hashtable.java", 787) + _r0.i = 1; + label10:; + XMLVM_SOURCE_POSITION("Hashtable.java", 790) + _r1.i = -1; + XMLVM_SOURCE_POSITION("Hashtable.java", 791) + XMLVM_CHECK_NPE(10) + _r2.o = java_util_Hashtable_newElementArray___int(_r10.o, _r0.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 792) + XMLVM_CHECK_NPE(10) + _r3.i = ((java_util_Hashtable*) _r10.o)->fields.java_util_Hashtable.lastSlot_; + _r3.i = _r3.i + 1; + _r4 = _r0; + _r9 = _r1; + _r1 = _r3; + _r3 = _r9; + label23:; + _r1.i = _r1.i + -1; + XMLVM_CHECK_NPE(10) + _r5.i = ((java_util_Hashtable*) _r10.o)->fields.java_util_Hashtable.firstSlot_; + if (_r1.i >= _r5.i) goto label39; + XMLVM_SOURCE_POSITION("Hashtable.java", 808) + XMLVM_CHECK_NPE(10) + ((java_util_Hashtable*) _r10.o)->fields.java_util_Hashtable.firstSlot_ = _r4.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 809) + XMLVM_CHECK_NPE(10) + ((java_util_Hashtable*) _r10.o)->fields.java_util_Hashtable.lastSlot_ = _r3.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 810) + XMLVM_CHECK_NPE(10) + ((java_util_Hashtable*) _r10.o)->fields.java_util_Hashtable.elementData_ = _r2.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 811) + XMLVM_CHECK_NPE(10) + java_util_Hashtable_computeMaxSize__(_r10.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 812) + XMLVM_EXIT_METHOD() + return; + label39:; + XMLVM_SOURCE_POSITION("Hashtable.java", 793) + XMLVM_CHECK_NPE(10) + _r5.o = ((java_util_Hashtable*) _r10.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r9 = _r5; + _r5 = _r4; + _r4 = _r3; + _r3 = _r9; + label47:; + XMLVM_SOURCE_POSITION("Hashtable.java", 794) + if (_r3.o != JAVA_NULL) goto label52; + _r3 = _r4; + _r4 = _r5; + goto label23; + label52:; + XMLVM_SOURCE_POSITION("Hashtable.java", 795) + XMLVM_CHECK_NPE(3) + _r6.i = java_util_Hashtable_Entry_getKeyHash__(_r3.o); + _r7.i = 2147483647; + _r6.i = _r6.i & _r7.i; + _r6.i = _r6.i % _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 796) + if (_r6.i >= _r5.i) goto label64; + _r5 = _r6; + label64:; + XMLVM_SOURCE_POSITION("Hashtable.java", 797) + XMLVM_SOURCE_POSITION("Hashtable.java", 799) + if (_r6.i <= _r4.i) goto label67; + _r4 = _r6; + label67:; + XMLVM_SOURCE_POSITION("Hashtable.java", 800) + XMLVM_SOURCE_POSITION("Hashtable.java", 802) + XMLVM_CHECK_NPE(3) + _r7.o = ((java_util_Hashtable_Entry*) _r3.o)->fields.java_util_Hashtable_Entry.next_; + XMLVM_SOURCE_POSITION("Hashtable.java", 803) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + _r8.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + XMLVM_CHECK_NPE(3) + ((java_util_Hashtable_Entry*) _r3.o)->fields.java_util_Hashtable_Entry.next_ = _r8.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 804) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + _r3 = _r7; + XMLVM_SOURCE_POSITION("Hashtable.java", 805) + goto label47; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable", "remove", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r7.o = me; + _r8.o = n1; + _r5.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Hashtable.java", 827) + java_lang_Object_acquireLockRecursive__(_r7.o); + XMLVM_TRY_BEGIN(w2948aaac35b1b6) + // Begin try + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(8) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r8.o)->tib->vtable[4])(_r8.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 828) + _r1.i = 2147483647; + _r1.i = _r1.i & _r0.i; + XMLVM_CHECK_NPE(7) + _r2.o = ((java_util_Hashtable*) _r7.o)->fields.java_util_Hashtable.elementData_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r1.i = _r1.i % _r2.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 830) + XMLVM_CHECK_NPE(7) + _r2.o = ((java_util_Hashtable*) _r7.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3 = _r5; + XMLVM_SOURCE_POSITION("Hashtable.java", 831) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac35b1b6) + XMLVM_CATCH_SPECIFIC(w2948aaac35b1b6,java_lang_Object,67) + XMLVM_CATCH_END(w2948aaac35b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac35b1b6) + label19:; + XMLVM_TRY_BEGIN(w2948aaac35b1b8) + // Begin try + if (_r2.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac35b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac35b1b8, sizeof(XMLVM_JMP_BUF)); goto label27; }; + XMLVM_CHECK_NPE(2) + _r4.i = java_util_Hashtable_Entry_equalsKey___java_lang_Object_int(_r2.o, _r8.o, _r0.i); + if (_r4.i == 0) { XMLVM_MEMCPY(curThread_w2948aaac35b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac35b1b8, sizeof(XMLVM_JMP_BUF)); goto label56; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac35b1b8) + XMLVM_CATCH_SPECIFIC(w2948aaac35b1b8,java_lang_Object,67) + XMLVM_CATCH_END(w2948aaac35b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac35b1b8) + label27:; + XMLVM_TRY_BEGIN(w2948aaac35b1c10) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 835) + if (_r2.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac35b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac35b1c10, sizeof(XMLVM_JMP_BUF)); goto label70; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 836) + XMLVM_CHECK_NPE(7) + _r0.i = ((java_util_Hashtable*) _r7.o)->fields.java_util_Hashtable.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(7) + ((java_util_Hashtable*) _r7.o)->fields.java_util_Hashtable.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 837) + if (_r3.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac35b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac35b1c10, sizeof(XMLVM_JMP_BUF)); goto label62; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 838) + XMLVM_CHECK_NPE(7) + _r0.o = ((java_util_Hashtable*) _r7.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + _r3.o = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac35b1c10) + XMLVM_CATCH_SPECIFIC(w2948aaac35b1c10,java_lang_Object,67) + XMLVM_CATCH_END(w2948aaac35b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac35b1c10) + label43:; + XMLVM_TRY_BEGIN(w2948aaac35b1c12) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 842) + XMLVM_CHECK_NPE(7) + _r0.i = ((java_util_Hashtable*) _r7.o)->fields.java_util_Hashtable.elementCount_; + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(7) + ((java_util_Hashtable*) _r7.o)->fields.java_util_Hashtable.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 843) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_; + XMLVM_SOURCE_POSITION("Hashtable.java", 844) + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(2) + ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_ = _r1.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac35b1c12) + XMLVM_CATCH_SPECIFIC(w2948aaac35b1c12,java_lang_Object,67) + XMLVM_CATCH_END(w2948aaac35b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac35b1c12) + label54:; + XMLVM_SOURCE_POSITION("Hashtable.java", 847) + java_lang_Object_releaseLockRecursive__(_r7.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label56:; + XMLVM_TRY_BEGIN(w2948aaac35b1c18) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 833) + XMLVM_CHECK_NPE(2) + _r3.o = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_; + _r6 = _r3; + _r3 = _r2; + _r2 = _r6; + { XMLVM_MEMCPY(curThread_w2948aaac35b1c18->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac35b1c18, sizeof(XMLVM_JMP_BUF)); goto label19; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 840) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac35b1c18) + XMLVM_CATCH_SPECIFIC(w2948aaac35b1c18,java_lang_Object,67) + XMLVM_CATCH_END(w2948aaac35b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac35b1c18) + label62:; + XMLVM_TRY_BEGIN(w2948aaac35b1c20) + // Begin try + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_; + XMLVM_CHECK_NPE(3) + ((java_util_Hashtable_Entry*) _r3.o)->fields.java_util_Hashtable_Entry.next_ = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac35b1c20) + XMLVM_CATCH_SPECIFIC(w2948aaac35b1c20,java_lang_Object,67) + XMLVM_CATCH_END(w2948aaac35b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac35b1c20) + goto label43; + label67:; + java_lang_Thread* curThread_w2948aaac35b1c23 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac35b1c23->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r7.o); + XMLVM_THROW_CUSTOM(_r0.o) + label70:; + _r0 = _r5; + goto label54; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Hashtable_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_size__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "size", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 859) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w2948aaac36b1b4) + // Begin try + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_Hashtable*) _r1.o)->fields.java_util_Hashtable.elementCount_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac36b1b4) + XMLVM_CATCH_SPECIFIC(w2948aaac36b1b4,java_lang_Object,5) + XMLVM_CATCH_END(w2948aaac36b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac36b1b4) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label5:; + java_lang_Thread* curThread_w2948aaac36b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac36b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_toString__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "toString", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.o = me; + // "luni.04" + _r0.o = xmlvm_create_java_string_from_pool(169); + // ")" + _r0.o = xmlvm_create_java_string_from_pool(23); + // "(" + _r0.o = xmlvm_create_java_string_from_pool(85); + XMLVM_SOURCE_POSITION("Hashtable.java", 869) + java_lang_Object_acquireLockRecursive__(_r5.o); + XMLVM_TRY_BEGIN(w2948aaac37b1b7) + // Begin try + //java_util_Hashtable_isEmpty__[8] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_util_Hashtable*) _r5.o)->tib->vtable[8])(_r5.o); + if (_r0.i == 0) { XMLVM_MEMCPY(curThread_w2948aaac37b1b7->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1b7, sizeof(XMLVM_JMP_BUF)); goto label17; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 870) + // "\173\175" + _r0.o = xmlvm_create_java_string_from_pool(6); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1b7) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1b7,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1b7) + label15:; + XMLVM_SOURCE_POSITION("Hashtable.java", 900) + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label17:; + XMLVM_TRY_BEGIN(w2948aaac37b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 873) + _r0.o = __NEW_java_lang_StringBuilder(); + //java_util_Hashtable_size__[12] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_Hashtable*) _r5.o)->tib->vtable[12])(_r5.o); + _r1.i = _r1.i * 28; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 874) + _r1.i = 123; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 875) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.lastSlot_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c13) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c13,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c13) + label35:; + XMLVM_TRY_BEGIN(w2948aaac37b1c15) + // Begin try + XMLVM_CHECK_NPE(5) + _r2.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.firstSlot_; + if (_r1.i >= _r2.i) { XMLVM_MEMCPY(curThread_w2948aaac37b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c15, sizeof(XMLVM_JMP_BUF)); goto label62; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 896) + XMLVM_CHECK_NPE(5) + _r1.i = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementCount_; + if (_r1.i <= 0) { XMLVM_MEMCPY(curThread_w2948aaac37b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c15, sizeof(XMLVM_JMP_BUF)); goto label52; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 897) + XMLVM_CHECK_NPE(0) + _r1.i = java_lang_AbstractStringBuilder_length__(_r0.o); + _r2.i = 2; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_setLength___int(_r0.o, _r1.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c15) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c15,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c15) + label52:; + XMLVM_TRY_BEGIN(w2948aaac37b1c17) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 899) + _r1.i = 125; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + { XMLVM_MEMCPY(curThread_w2948aaac37b1c17->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c17, sizeof(XMLVM_JMP_BUF)); goto label15; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 876) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c17) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c17,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c17) + label62:; + XMLVM_TRY_BEGIN(w2948aaac37b1c19) + // Begin try + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Hashtable*) _r5.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c19) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c19,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c19) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c19) + label66:; + XMLVM_TRY_BEGIN(w2948aaac37b1c21) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 877) + if (_r2.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac37b1c21->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c21, sizeof(XMLVM_JMP_BUF)); goto label71; }; + _r1.i = _r1.i + -1; + { XMLVM_MEMCPY(curThread_w2948aaac37b1c21->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c21, sizeof(XMLVM_JMP_BUF)); goto label35; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 878) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c21) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c21,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c21) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c21) + label71:; + XMLVM_TRY_BEGIN(w2948aaac37b1c23) + // Begin try + XMLVM_CHECK_NPE(2) + _r3.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.key_; + if (_r3.o == _r5.o) { XMLVM_MEMCPY(curThread_w2948aaac37b1c23->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c23, sizeof(XMLVM_JMP_BUF)); goto label102; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 879) + XMLVM_CHECK_NPE(2) + _r3.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.key_; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c23) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c23,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c23) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c23) + label80:; + XMLVM_TRY_BEGIN(w2948aaac37b1c25) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 884) + _r3.i = 61; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 885) + XMLVM_CHECK_NPE(2) + _r3.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_; + if (_r3.o == _r5.o) { XMLVM_MEMCPY(curThread_w2948aaac37b1c25->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c25, sizeof(XMLVM_JMP_BUF)); goto label136; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 886) + XMLVM_CHECK_NPE(2) + _r3.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c25) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c25,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c25) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c25) + label94:; + XMLVM_TRY_BEGIN(w2948aaac37b1c27) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 891) + // ", " + _r3.o = xmlvm_create_java_string_from_pool(7); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 892) + XMLVM_CHECK_NPE(2) + _r2.o = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_; + { XMLVM_MEMCPY(curThread_w2948aaac37b1c27->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac37b1c27, sizeof(XMLVM_JMP_BUF)); goto label66; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 882) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c27) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c27,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c27) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c27) + label102:; + XMLVM_TRY_BEGIN(w2948aaac37b1c29) + // Begin try + _r3.o = __NEW_java_lang_StringBuilder(); + // "(" + _r4.o = xmlvm_create_java_string_from_pool(85); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT____java_lang_String(_r3.o, _r4.o); + // "luni.04" + _r4.o = xmlvm_create_java_string_from_pool(169); + _r4.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r4.o); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + // ")" + _r4.o = xmlvm_create_java_string_from_pool(23); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c29) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c29,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c29) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c29) + goto label80; + label133:; + java_lang_Thread* curThread_w2948aaac37b1c32 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac37b1c32->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_THROW_CUSTOM(_r0.o) + label136:; + XMLVM_TRY_BEGIN(w2948aaac37b1c36) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 889) + _r3.o = __NEW_java_lang_StringBuilder(); + // "(" + _r4.o = xmlvm_create_java_string_from_pool(85); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT____java_lang_String(_r3.o, _r4.o); + // "luni.04" + _r4.o = xmlvm_create_java_string_from_pool(169); + _r4.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r4.o); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + // ")" + _r4.o = xmlvm_create_java_string_from_pool(23); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac37b1c36) + XMLVM_CATCH_SPECIFIC(w2948aaac37b1c36,java_lang_Object,133) + XMLVM_CATCH_END(w2948aaac37b1c36) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac37b1c36) + goto label94; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_values__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_values__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "values", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 911) + + + // Red class access removed: java.util.Collections$SynchronizedCollection::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 912) + + + // Red class access removed: java.util.Hashtable$7::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Hashtable$7:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Collections$SynchronizedCollection:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.Hashtable", "writeObject", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 942) + java_lang_Object_acquireLockRecursive__(_r3.o); + XMLVM_TRY_BEGIN(w2948aaac39b1b5) + // Begin try + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 943) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 944) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementCount_; + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 945) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac39b1b5) + XMLVM_CATCH_SPECIFIC(w2948aaac39b1b5,java_lang_Object,43) + XMLVM_CATCH_END(w2948aaac39b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac39b1b5) + label18:; + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label24; + XMLVM_SOURCE_POSITION("Hashtable.java", 953) + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_EXIT_METHOD() + return; + label24:; + XMLVM_TRY_BEGIN(w2948aaac39b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 946) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Hashtable*) _r3.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac39b1c13) + XMLVM_CATCH_SPECIFIC(w2948aaac39b1c13,java_lang_Object,43) + XMLVM_CATCH_END(w2948aaac39b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac39b1c13) + label28:; + XMLVM_TRY_BEGIN(w2948aaac39b1c15) + // Begin try + XMLVM_SOURCE_POSITION("Hashtable.java", 947) + if (_r1.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w2948aaac39b1c15->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w2948aaac39b1c15, sizeof(XMLVM_JMP_BUF)); goto label18; }; + XMLVM_SOURCE_POSITION("Hashtable.java", 948) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.key_; + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 949) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 950) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_Hashtable_Entry*) _r1.o)->fields.java_util_Hashtable_Entry.next_; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2948aaac39b1c15) + XMLVM_CATCH_SPECIFIC(w2948aaac39b1c15,java_lang_Object,43) + XMLVM_CATCH_END(w2948aaac39b1c15) + XMLVM_RESTORE_EXCEPTION_ENV(w2948aaac39b1c15) + goto label28; + label43:; + java_lang_Thread* curThread_w2948aaac39b1c18 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2948aaac39b1c18->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.util.Hashtable", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 958) + + + // Red class access removed: java.io.ObjectInputStream::defaultReadObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 959) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 960) + XMLVM_CHECK_NPE(6) + _r1.o = java_util_Hashtable_newElementArray___int(_r6.o, _r0.i); + XMLVM_CHECK_NPE(6) + ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.elementData_ = _r1.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 961) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(6) + ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.elementCount_ = _r1.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 962) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.elementCount_; + label21:; + _r1.i = _r1.i + -1; + if (_r1.i >= 0) goto label26; + XMLVM_SOURCE_POSITION("Hashtable.java", 976) + XMLVM_EXIT_METHOD() + return; + label26:; + XMLVM_SOURCE_POSITION("Hashtable.java", 963) + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Hashtable.java", 964) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(2) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[4])(_r2.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 965) + _r4.i = 2147483647; + _r4.i = _r4.i & _r3.i; + _r4.i = _r4.i % _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 966) + XMLVM_CHECK_NPE(6) + _r5.i = ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.firstSlot_; + if (_r4.i >= _r5.i) goto label45; + XMLVM_SOURCE_POSITION("Hashtable.java", 967) + XMLVM_CHECK_NPE(6) + ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.firstSlot_ = _r4.i; + label45:; + XMLVM_SOURCE_POSITION("Hashtable.java", 969) + XMLVM_CHECK_NPE(6) + _r5.i = ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.lastSlot_; + if (_r4.i <= _r5.i) goto label51; + XMLVM_SOURCE_POSITION("Hashtable.java", 970) + XMLVM_CHECK_NPE(6) + ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.lastSlot_ = _r4.i; + label51:; + XMLVM_SOURCE_POSITION("Hashtable.java", 972) + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + _r2.o = java_util_Hashtable_newEntry___java_lang_Object_java_lang_Object_int(_r2.o, _r5.o, _r3.i); + XMLVM_SOURCE_POSITION("Hashtable.java", 973) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_CHECK_NPE(2) + ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_ = _r3.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 974) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_Hashtable*) _r6.o)->fields.java_util_Hashtable.elementData_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r2.o; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_access$0__() +{ + XMLVM_CLASS_INIT(java_util_Hashtable) + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_access$0__] + XMLVM_ENTER_METHOD("java.util.Hashtable", "access$0", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Hashtable.java", 70) + _r0.o = java_util_Hashtable_GET_EMPTY_ITERATOR(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Hashtable.h b/tests/nbody-java/java_util_Hashtable.h new file mode 100644 index 0000000000000..59185d1bf9787 --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable.h @@ -0,0 +1,190 @@ +#ifndef __JAVA_UTIL_HASHTABLE__ +#define __JAVA_UTIL_HASHTABLE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Hashtable 14 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Cloneable.h" +#include "java_util_Map.h" +// Super Class: +#include "java_util_Dictionary.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable_1 +#define XMLVM_FORWARD_DECL_java_util_Hashtable_1 +XMLVM_FORWARD_DECL(java_util_Hashtable_1) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable_2 +#define XMLVM_FORWARD_DECL_java_util_Hashtable_2 +XMLVM_FORWARD_DECL(java_util_Hashtable_2) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable_Entry +#define XMLVM_FORWARD_DECL_java_util_Hashtable_Entry +XMLVM_FORWARD_DECL(java_util_Hashtable_Entry) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map_Entry +#define XMLVM_FORWARD_DECL_java_util_Map_Entry +XMLVM_FORWARD_DECL(java_util_Map_Entry) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for java.util.Hashtable +XMLVM_DEFINE_CLASS(java_util_Hashtable, 20, XMLVM_ITABLE_SIZE_java_util_Hashtable) + +extern JAVA_OBJECT __CLASS_java_util_Hashtable; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Hashtable \ + __INSTANCE_FIELDS_java_util_Dictionary; \ + struct { \ + JAVA_INT elementCount_; \ + JAVA_OBJECT elementData_; \ + JAVA_FLOAT loadFactor_; \ + JAVA_INT threshold_; \ + JAVA_INT firstSlot_; \ + JAVA_INT lastSlot_; \ + JAVA_INT modCount_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable \ + } java_util_Hashtable + +struct java_util_Hashtable { + __TIB_DEFINITION_java_util_Hashtable* tib; + struct { + __INSTANCE_FIELDS_java_util_Hashtable; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable +#define XMLVM_FORWARD_DECL_java_util_Hashtable +typedef struct java_util_Hashtable java_util_Hashtable; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Hashtable 20 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_clear__ 13 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_containsKey___java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_containsValue___java_lang_Object 15 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_elements__ 6 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_entrySet__ 16 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_get___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_isEmpty__ 8 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_keys__ 9 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_keySet__ 17 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_put___java_lang_Object_java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_putAll___java_util_Map 18 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_remove___java_lang_Object 11 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_size__ 12 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_toString__ 5 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_values__ 19 + +void __INIT_java_util_Hashtable(); +void __INIT_IMPL_java_util_Hashtable(); +void __DELETE_java_util_Hashtable(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Hashtable(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable(); +JAVA_LONG java_util_Hashtable_GET_serialVersionUID(); +void java_util_Hashtable_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_util_Hashtable_GET_EMPTY_ENUMERATION(); +void java_util_Hashtable_PUT_EMPTY_ENUMERATION(JAVA_OBJECT v); +JAVA_OBJECT java_util_Hashtable_GET_EMPTY_ITERATOR(); +void java_util_Hashtable_PUT_EMPTY_ITERATOR(JAVA_OBJECT v); +void java_util_Hashtable___CLINIT_(); +JAVA_OBJECT java_util_Hashtable_newEntry___java_lang_Object_java_lang_Object_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3); +void java_util_Hashtable___INIT___(JAVA_OBJECT me); +void java_util_Hashtable___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_Hashtable___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); +void java_util_Hashtable___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Hashtable_newElementArray___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 13 +void java_util_Hashtable_clear__(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_util_Hashtable_clone__(JAVA_OBJECT me); +void java_util_Hashtable_computeMaxSize__(JAVA_OBJECT me); +JAVA_BOOLEAN java_util_Hashtable_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 14 +JAVA_BOOLEAN java_util_Hashtable_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 15 +JAVA_BOOLEAN java_util_Hashtable_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_OBJECT java_util_Hashtable_elements__(JAVA_OBJECT me); +// Vtable index: 16 +JAVA_OBJECT java_util_Hashtable_entrySet__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_util_Hashtable_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_OBJECT java_util_Hashtable_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Hashtable_getEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_util_Hashtable_hashCode__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_BOOLEAN java_util_Hashtable_isEmpty__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_OBJECT java_util_Hashtable_keys__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_Hashtable_keySet__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_OBJECT java_util_Hashtable_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 18 +void java_util_Hashtable_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Hashtable_rehash__(JAVA_OBJECT me); +// Vtable index: 11 +JAVA_OBJECT java_util_Hashtable_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 12 +JAVA_INT java_util_Hashtable_size__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_util_Hashtable_toString__(JAVA_OBJECT me); +// Vtable index: 19 +JAVA_OBJECT java_util_Hashtable_values__(JAVA_OBJECT me); +void java_util_Hashtable_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Hashtable_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Hashtable_access$0__(); + +#endif diff --git a/tests/nbody-java/java_util_Hashtable_1.c b/tests/nbody-java/java_util_Hashtable_1.c new file mode 100644 index 0000000000000..73d7e4c4b430a --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable_1.c @@ -0,0 +1,204 @@ +#include "xmlvm.h" +#include "java_util_Hashtable.h" + +#include "java_util_Hashtable_1.h" + +#define XMLVM_CURRENT_CLASS_NAME Hashtable_1 +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Hashtable_1 + +__TIB_DEFINITION_java_util_Hashtable_1 __TIB_java_util_Hashtable_1 = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Hashtable_1, // classInitializer + "java.util.Hashtable$1", // className + "java.util", // package + "java.util.Hashtable", // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Enumeration;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_Hashtable_1), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Hashtable_1; +JAVA_OBJECT __CLASS_java_util_Hashtable_1_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_1_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_1_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Hashtable_1() +{ + staticInitializerLock(&__TIB_java_util_Hashtable_1); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Hashtable_1.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Hashtable_1.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Hashtable_1); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Hashtable_1.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Hashtable_1.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Hashtable_1.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Hashtable$1") + __INIT_IMPL_java_util_Hashtable_1(); + } +} + +void __INIT_IMPL_java_util_Hashtable_1() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_Hashtable_1.newInstanceFunc = __NEW_INSTANCE_java_util_Hashtable_1; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Hashtable_1.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_Hashtable_1.vtable[6] = (VTABLE_PTR) &java_util_Hashtable_1_hasMoreElements__; + __TIB_java_util_Hashtable_1.vtable[7] = (VTABLE_PTR) &java_util_Hashtable_1_nextElement__; + // Initialize interface information + __TIB_java_util_Hashtable_1.numImplementedInterfaces = 1; + __TIB_java_util_Hashtable_1.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_util_Enumeration) + + __TIB_java_util_Hashtable_1.implementedInterfaces[0][0] = &__TIB_java_util_Enumeration; + // Initialize itable for this class + __TIB_java_util_Hashtable_1.itableBegin = &__TIB_java_util_Hashtable_1.itable[0]; + __TIB_java_util_Hashtable_1.itable[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__] = __TIB_java_util_Hashtable_1.vtable[6]; + __TIB_java_util_Hashtable_1.itable[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__] = __TIB_java_util_Hashtable_1.vtable[7]; + + + __TIB_java_util_Hashtable_1.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Hashtable_1.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Hashtable_1.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Hashtable_1.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Hashtable_1.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Hashtable_1.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Hashtable_1.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Hashtable_1.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Hashtable_1 = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Hashtable_1); + __TIB_java_util_Hashtable_1.clazz = __CLASS_java_util_Hashtable_1; + __TIB_java_util_Hashtable_1.baseType = JAVA_NULL; + __CLASS_java_util_Hashtable_1_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_1); + __CLASS_java_util_Hashtable_1_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_1_1ARRAY); + __CLASS_java_util_Hashtable_1_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_1_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Hashtable_1] + //XMLVM_END_WRAPPER + + __TIB_java_util_Hashtable_1.classInitialized = 1; +} + +void __DELETE_java_util_Hashtable_1(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Hashtable_1] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Hashtable_1] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Hashtable_1() +{ XMLVM_CLASS_INIT(java_util_Hashtable_1) +java_util_Hashtable_1* me = (java_util_Hashtable_1*) XMLVM_MALLOC(sizeof(java_util_Hashtable_1)); + me->tib = &__TIB_java_util_Hashtable_1; + __INIT_INSTANCE_MEMBERS_java_util_Hashtable_1(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Hashtable_1] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable_1() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_Hashtable_1(); + java_util_Hashtable_1___INIT___(me); + return me; +} + +void java_util_Hashtable_1___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_1___INIT___] + XMLVM_ENTER_METHOD("java.util.Hashtable$1", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 60) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 1) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_1_hasMoreElements__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_1_hasMoreElements__] + XMLVM_ENTER_METHOD("java.util.Hashtable$1", "hasMoreElements", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 62) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_1_nextElement__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_1_nextElement__] + XMLVM_ENTER_METHOD("java.util.Hashtable$1", "nextElement", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 66) + + + // Red class access removed: java.util.NoSuchElementException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.NoSuchElementException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Hashtable_1.h b/tests/nbody-java/java_util_Hashtable_1.h new file mode 100644 index 0000000000000..a5d2b43bf3402 --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable_1.h @@ -0,0 +1,62 @@ +#ifndef __JAVA_UTIL_HASHTABLE_1__ +#define __JAVA_UTIL_HASHTABLE_1__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Hashtable_1 2 +// Implemented interfaces: +#include "java_util_Enumeration.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable +#define XMLVM_FORWARD_DECL_java_util_Hashtable +XMLVM_FORWARD_DECL(java_util_Hashtable) +#endif +// Class declarations for java.util.Hashtable$1 +XMLVM_DEFINE_CLASS(java_util_Hashtable_1, 8, XMLVM_ITABLE_SIZE_java_util_Hashtable_1) + +extern JAVA_OBJECT __CLASS_java_util_Hashtable_1; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_1_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_1_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_1_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable_1 +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Hashtable_1 \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable_1 \ + } java_util_Hashtable_1 + +struct java_util_Hashtable_1 { + __TIB_DEFINITION_java_util_Hashtable_1* tib; + struct { + __INSTANCE_FIELDS_java_util_Hashtable_1; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable_1 +#define XMLVM_FORWARD_DECL_java_util_Hashtable_1 +typedef struct java_util_Hashtable_1 java_util_Hashtable_1; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Hashtable_1 8 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_1_hasMoreElements__ 6 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_1_nextElement__ 7 + +void __INIT_java_util_Hashtable_1(); +void __INIT_IMPL_java_util_Hashtable_1(); +void __DELETE_java_util_Hashtable_1(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Hashtable_1(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable_1(); +void java_util_Hashtable_1___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_BOOLEAN java_util_Hashtable_1_hasMoreElements__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_util_Hashtable_1_nextElement__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_Hashtable_2.c b/tests/nbody-java/java_util_Hashtable_2.c new file mode 100644 index 0000000000000..bd16914bb45fa --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable_2.c @@ -0,0 +1,226 @@ +#include "xmlvm.h" +#include "java_util_Hashtable.h" + +#include "java_util_Hashtable_2.h" + +#define XMLVM_CURRENT_CLASS_NAME Hashtable_2 +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Hashtable_2 + +__TIB_DEFINITION_java_util_Hashtable_2 __TIB_java_util_Hashtable_2 = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Hashtable_2, // classInitializer + "java.util.Hashtable$2", // className + "java.util", // package + "java.util.Hashtable", // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Iterator;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_Hashtable_2), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Hashtable_2; +JAVA_OBJECT __CLASS_java_util_Hashtable_2_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_2_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_2_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Hashtable_2() +{ + staticInitializerLock(&__TIB_java_util_Hashtable_2); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Hashtable_2.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Hashtable_2.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Hashtable_2); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Hashtable_2.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Hashtable_2.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Hashtable_2.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Hashtable$2") + __INIT_IMPL_java_util_Hashtable_2(); + } +} + +void __INIT_IMPL_java_util_Hashtable_2() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_Hashtable_2.newInstanceFunc = __NEW_INSTANCE_java_util_Hashtable_2; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Hashtable_2.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_Hashtable_2.vtable[6] = (VTABLE_PTR) &java_util_Hashtable_2_hasNext__; + __TIB_java_util_Hashtable_2.vtable[7] = (VTABLE_PTR) &java_util_Hashtable_2_next__; + __TIB_java_util_Hashtable_2.vtable[8] = (VTABLE_PTR) &java_util_Hashtable_2_remove__; + // Initialize interface information + __TIB_java_util_Hashtable_2.numImplementedInterfaces = 1; + __TIB_java_util_Hashtable_2.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_util_Iterator) + + __TIB_java_util_Hashtable_2.implementedInterfaces[0][0] = &__TIB_java_util_Iterator; + // Initialize itable for this class + __TIB_java_util_Hashtable_2.itableBegin = &__TIB_java_util_Hashtable_2.itable[0]; + __TIB_java_util_Hashtable_2.itable[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__] = __TIB_java_util_Hashtable_2.vtable[6]; + __TIB_java_util_Hashtable_2.itable[XMLVM_ITABLE_IDX_java_util_Iterator_next__] = __TIB_java_util_Hashtable_2.vtable[7]; + __TIB_java_util_Hashtable_2.itable[XMLVM_ITABLE_IDX_java_util_Iterator_remove__] = __TIB_java_util_Hashtable_2.vtable[8]; + + + __TIB_java_util_Hashtable_2.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Hashtable_2.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Hashtable_2.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Hashtable_2.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Hashtable_2.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Hashtable_2.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Hashtable_2.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Hashtable_2.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Hashtable_2 = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Hashtable_2); + __TIB_java_util_Hashtable_2.clazz = __CLASS_java_util_Hashtable_2; + __TIB_java_util_Hashtable_2.baseType = JAVA_NULL; + __CLASS_java_util_Hashtable_2_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_2); + __CLASS_java_util_Hashtable_2_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_2_1ARRAY); + __CLASS_java_util_Hashtable_2_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_2_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Hashtable_2] + //XMLVM_END_WRAPPER + + __TIB_java_util_Hashtable_2.classInitialized = 1; +} + +void __DELETE_java_util_Hashtable_2(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Hashtable_2] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable_2(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Hashtable_2] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Hashtable_2() +{ XMLVM_CLASS_INIT(java_util_Hashtable_2) +java_util_Hashtable_2* me = (java_util_Hashtable_2*) XMLVM_MALLOC(sizeof(java_util_Hashtable_2)); + me->tib = &__TIB_java_util_Hashtable_2; + __INIT_INSTANCE_MEMBERS_java_util_Hashtable_2(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Hashtable_2] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable_2() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_Hashtable_2(); + java_util_Hashtable_2___INIT___(me); + return me; +} + +void java_util_Hashtable_2___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_2___INIT___] + XMLVM_ENTER_METHOD("java.util.Hashtable$2", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 70) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 1) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_2_hasNext__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_2_hasNext__] + XMLVM_ENTER_METHOD("java.util.Hashtable$2", "hasNext", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 73) + _r0.i = 0; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_2_next__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_2_next__] + XMLVM_ENTER_METHOD("java.util.Hashtable$2", "next", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 77) + + + // Red class access removed: java.util.NoSuchElementException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.NoSuchElementException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Hashtable_2_remove__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_2_remove__] + XMLVM_ENTER_METHOD("java.util.Hashtable$2", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 81) + + + // Red class access removed: java.lang.IllegalStateException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalStateException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Hashtable_2.h b/tests/nbody-java/java_util_Hashtable_2.h new file mode 100644 index 0000000000000..73562e4849c9d --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable_2.h @@ -0,0 +1,65 @@ +#ifndef __JAVA_UTIL_HASHTABLE_2__ +#define __JAVA_UTIL_HASHTABLE_2__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Hashtable_2 3 +// Implemented interfaces: +#include "java_util_Iterator.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable +#define XMLVM_FORWARD_DECL_java_util_Hashtable +XMLVM_FORWARD_DECL(java_util_Hashtable) +#endif +// Class declarations for java.util.Hashtable$2 +XMLVM_DEFINE_CLASS(java_util_Hashtable_2, 9, XMLVM_ITABLE_SIZE_java_util_Hashtable_2) + +extern JAVA_OBJECT __CLASS_java_util_Hashtable_2; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_2_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_2_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_2_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable_2 +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Hashtable_2 \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable_2 \ + } java_util_Hashtable_2 + +struct java_util_Hashtable_2 { + __TIB_DEFINITION_java_util_Hashtable_2* tib; + struct { + __INSTANCE_FIELDS_java_util_Hashtable_2; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable_2 +#define XMLVM_FORWARD_DECL_java_util_Hashtable_2 +typedef struct java_util_Hashtable_2 java_util_Hashtable_2; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Hashtable_2 9 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_2_hasNext__ 6 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_2_next__ 7 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_2_remove__ 8 + +void __INIT_java_util_Hashtable_2(); +void __INIT_IMPL_java_util_Hashtable_2(); +void __DELETE_java_util_Hashtable_2(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable_2(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Hashtable_2(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable_2(); +void java_util_Hashtable_2___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_BOOLEAN java_util_Hashtable_2_hasNext__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_util_Hashtable_2_next__(JAVA_OBJECT me); +// Vtable index: 8 +void java_util_Hashtable_2_remove__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_Hashtable_Entry.c b/tests/nbody-java/java_util_Hashtable_Entry.c new file mode 100644 index 0000000000000..d45de22c57ac2 --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable_Entry.c @@ -0,0 +1,338 @@ +#include "xmlvm.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "java_util_Hashtable_Entry.h" + +#define XMLVM_CURRENT_CLASS_NAME Hashtable_Entry +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Hashtable_Entry + +__TIB_DEFINITION_java_util_Hashtable_Entry __TIB_java_util_Hashtable_Entry = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Hashtable_Entry, // classInitializer + "java.util.Hashtable$Entry", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/MapEntry;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_MapEntry, // extends + sizeof(java_util_Hashtable_Entry), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Hashtable_Entry; +JAVA_OBJECT __CLASS_java_util_Hashtable_Entry_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_Entry_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Hashtable_Entry_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Hashtable_Entry() +{ + staticInitializerLock(&__TIB_java_util_Hashtable_Entry); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Hashtable_Entry.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Hashtable_Entry.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Hashtable_Entry); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Hashtable_Entry.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Hashtable_Entry.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Hashtable_Entry.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Hashtable$Entry") + __INIT_IMPL_java_util_Hashtable_Entry(); + } +} + +void __INIT_IMPL_java_util_Hashtable_Entry() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_MapEntry) + __TIB_java_util_Hashtable_Entry.newInstanceFunc = __NEW_INSTANCE_java_util_Hashtable_Entry; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Hashtable_Entry.vtable, __TIB_java_util_MapEntry.vtable, sizeof(__TIB_java_util_MapEntry.vtable)); + // Initialize vtable for this class + __TIB_java_util_Hashtable_Entry.vtable[0] = (VTABLE_PTR) &java_util_Hashtable_Entry_clone__; + __TIB_java_util_Hashtable_Entry.vtable[8] = (VTABLE_PTR) &java_util_Hashtable_Entry_setValue___java_lang_Object; + __TIB_java_util_Hashtable_Entry.vtable[5] = (VTABLE_PTR) &java_util_Hashtable_Entry_toString__; + // Initialize interface information + __TIB_java_util_Hashtable_Entry.numImplementedInterfaces = 2; + __TIB_java_util_Hashtable_Entry.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_Hashtable_Entry.implementedInterfaces[0][0] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_util_Map_Entry) + + __TIB_java_util_Hashtable_Entry.implementedInterfaces[0][1] = &__TIB_java_util_Map_Entry; + // Initialize itable for this class + __TIB_java_util_Hashtable_Entry.itableBegin = &__TIB_java_util_Hashtable_Entry.itable[0]; + __TIB_java_util_Hashtable_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_equals___java_lang_Object] = __TIB_java_util_Hashtable_Entry.vtable[1]; + __TIB_java_util_Hashtable_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__] = __TIB_java_util_Hashtable_Entry.vtable[6]; + __TIB_java_util_Hashtable_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__] = __TIB_java_util_Hashtable_Entry.vtable[7]; + __TIB_java_util_Hashtable_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_hashCode__] = __TIB_java_util_Hashtable_Entry.vtable[4]; + __TIB_java_util_Hashtable_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_setValue___java_lang_Object] = __TIB_java_util_Hashtable_Entry.vtable[8]; + + + __TIB_java_util_Hashtable_Entry.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Hashtable_Entry.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Hashtable_Entry.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Hashtable_Entry.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Hashtable_Entry.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Hashtable_Entry.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Hashtable_Entry.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Hashtable_Entry.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Hashtable_Entry = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Hashtable_Entry); + __TIB_java_util_Hashtable_Entry.clazz = __CLASS_java_util_Hashtable_Entry; + __TIB_java_util_Hashtable_Entry.baseType = JAVA_NULL; + __CLASS_java_util_Hashtable_Entry_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_Entry); + __CLASS_java_util_Hashtable_Entry_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_Entry_1ARRAY); + __CLASS_java_util_Hashtable_Entry_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Hashtable_Entry_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Hashtable_Entry] + //XMLVM_END_WRAPPER + + __TIB_java_util_Hashtable_Entry.classInitialized = 1; +} + +void __DELETE_java_util_Hashtable_Entry(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Hashtable_Entry] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable_Entry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_MapEntry(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_Hashtable_Entry*) me)->fields.java_util_Hashtable_Entry.next_ = (java_util_Hashtable_Entry*) JAVA_NULL; + ((java_util_Hashtable_Entry*) me)->fields.java_util_Hashtable_Entry.hashcode_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Hashtable_Entry] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Hashtable_Entry() +{ XMLVM_CLASS_INIT(java_util_Hashtable_Entry) +java_util_Hashtable_Entry* me = (java_util_Hashtable_Entry*) XMLVM_MALLOC(sizeof(java_util_Hashtable_Entry)); + me->tib = &__TIB_java_util_Hashtable_Entry; + __INIT_INSTANCE_MEMBERS_java_util_Hashtable_Entry(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Hashtable_Entry] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable_Entry() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_util_Hashtable_Entry___INIT____java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_Entry___INIT____java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable$Entry", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Hashtable.java", 95) + XMLVM_CHECK_NPE(1) + java_util_MapEntry___INIT____java_lang_Object_java_lang_Object(_r1.o, _r2.o, _r3.o); + XMLVM_SOURCE_POSITION("Hashtable.java", 96) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[4])(_r2.o); + XMLVM_CHECK_NPE(1) + ((java_util_Hashtable_Entry*) _r1.o)->fields.java_util_Hashtable_Entry.hashcode_ = _r0.i; + XMLVM_SOURCE_POSITION("Hashtable.java", 97) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_Entry_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_Entry_clone__] + XMLVM_ENTER_METHOD("java.util.Hashtable$Entry", "clone", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 102) + XMLVM_CHECK_NPE(2) + _r0.o = java_util_MapEntry_clone__(_r2.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 103) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_; + if (_r1.o == JAVA_NULL) goto label20; + XMLVM_SOURCE_POSITION("Hashtable.java", 104) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.next_; + //java_util_Hashtable_Entry_clone__[0] + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Hashtable_Entry*) _r1.o)->tib->vtable[0])(_r1.o); + _r2.o = _r2.o; + XMLVM_CHECK_NPE(0) + ((java_util_Hashtable_Entry*) _r0.o)->fields.java_util_Hashtable_Entry.next_ = _r2.o; + label20:; + XMLVM_SOURCE_POSITION("Hashtable.java", 106) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_Entry_setValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_Entry_setValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Hashtable$Entry", "setValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Hashtable.java", 111) + if (_r2.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("Hashtable.java", 112) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("Hashtable.java", 114) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + XMLVM_SOURCE_POSITION("Hashtable.java", 115) + XMLVM_CHECK_NPE(1) + ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_ = _r2.o; + XMLVM_SOURCE_POSITION("Hashtable.java", 116) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Hashtable_Entry_getKeyHash__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_Entry_getKeyHash__] + XMLVM_ENTER_METHOD("java.util.Hashtable$Entry", "getKeyHash", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 120) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.key_; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[4])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Hashtable_Entry_equalsKey___java_lang_Object_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_Entry_equalsKey___java_lang_Object_int] + XMLVM_ENTER_METHOD("java.util.Hashtable$Entry", "equalsKey", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Hashtable.java", 124) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_Hashtable_Entry*) _r2.o)->fields.java_util_Hashtable_Entry.hashcode_; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(3) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[4])(_r3.o); + if (_r0.i != _r1.i) goto label18; + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.key_; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[1])(_r0.o, _r3.o); + if (_r0.i == 0) goto label18; + _r0.i = 1; + label17:; + XMLVM_EXIT_METHOD() + return _r0.i; + label18:; + _r0.i = 0; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Hashtable_Entry_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Hashtable_Entry_toString__] + XMLVM_ENTER_METHOD("java.util.Hashtable$Entry", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Hashtable.java", 129) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.key_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r1.o); + // "=" + _r1.o = xmlvm_create_java_string_from_pool(648); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Hashtable_Entry.h b/tests/nbody-java/java_util_Hashtable_Entry.h new file mode 100644 index 0000000000000..fd031c095082b --- /dev/null +++ b/tests/nbody-java/java_util_Hashtable_Entry.h @@ -0,0 +1,80 @@ +#ifndef __JAVA_UTIL_HASHTABLE_ENTRY__ +#define __JAVA_UTIL_HASHTABLE_ENTRY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Hashtable_Entry 5 +// Implemented interfaces: +// Super Class: +#include "java_util_MapEntry.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for java.util.Hashtable$Entry +XMLVM_DEFINE_CLASS(java_util_Hashtable_Entry, 9, XMLVM_ITABLE_SIZE_java_util_Hashtable_Entry) + +extern JAVA_OBJECT __CLASS_java_util_Hashtable_Entry; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_Entry_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_Entry_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Hashtable_Entry_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable_Entry +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Hashtable_Entry \ + __INSTANCE_FIELDS_java_util_MapEntry; \ + struct { \ + JAVA_OBJECT next_; \ + JAVA_INT hashcode_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Hashtable_Entry \ + } java_util_Hashtable_Entry + +struct java_util_Hashtable_Entry { + __TIB_DEFINITION_java_util_Hashtable_Entry* tib; + struct { + __INSTANCE_FIELDS_java_util_Hashtable_Entry; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Hashtable_Entry +#define XMLVM_FORWARD_DECL_java_util_Hashtable_Entry +typedef struct java_util_Hashtable_Entry java_util_Hashtable_Entry; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Hashtable_Entry 9 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_Entry_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_Entry_setValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_Hashtable_Entry_toString__ 5 + +void __INIT_java_util_Hashtable_Entry(); +void __INIT_IMPL_java_util_Hashtable_Entry(); +void __DELETE_java_util_Hashtable_Entry(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Hashtable_Entry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Hashtable_Entry(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Hashtable_Entry(); +void java_util_Hashtable_Entry___INIT____java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 0 +JAVA_OBJECT java_util_Hashtable_Entry_clone__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_OBJECT java_util_Hashtable_Entry_setValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_INT java_util_Hashtable_Entry_getKeyHash__(JAVA_OBJECT me); +JAVA_BOOLEAN java_util_Hashtable_Entry_equalsKey___java_lang_Object_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 5 +JAVA_OBJECT java_util_Hashtable_Entry_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_Iterator.c b/tests/nbody-java/java_util_Iterator.c new file mode 100644 index 0000000000000..19d87dd352ac9 --- /dev/null +++ b/tests/nbody-java/java_util_Iterator.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_util_Iterator.h" + +__TIB_DEFINITION_java_util_Iterator __TIB_java_util_Iterator = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Iterator, // classInitializer + "java.util.Iterator", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Iterator; +JAVA_OBJECT __CLASS_java_util_Iterator_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Iterator_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Iterator_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Iterator() +{ + staticInitializerLock(&__TIB_java_util_Iterator); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Iterator.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Iterator.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Iterator); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Iterator.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Iterator.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Iterator.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Iterator") + __INIT_IMPL_java_util_Iterator(); + } +} + +void __INIT_IMPL_java_util_Iterator() +{ + __TIB_java_util_Iterator.numInterfaces = 0; + __TIB_java_util_Iterator.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Iterator.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Iterator.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Iterator.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Iterator.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Iterator = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Iterator); + __TIB_java_util_Iterator.clazz = __CLASS_java_util_Iterator; + __TIB_java_util_Iterator.baseType = JAVA_NULL; + __CLASS_java_util_Iterator_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Iterator); + __CLASS_java_util_Iterator_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Iterator_1ARRAY); + __CLASS_java_util_Iterator_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Iterator_2ARRAY); + + __TIB_java_util_Iterator.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Iterator.h b/tests/nbody-java/java_util_Iterator.h new file mode 100644 index 0000000000000..88eed20f4248c --- /dev/null +++ b/tests/nbody-java/java_util_Iterator.h @@ -0,0 +1,30 @@ +#ifndef __JAVA_UTIL_ITERATOR__ +#define __JAVA_UTIL_ITERATOR__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__ 0 +#define XMLVM_ITABLE_IDX_java_util_Iterator_next__ 1 +#define XMLVM_ITABLE_IDX_java_util_Iterator_remove__ 2 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_util_Iterator, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Iterator; +extern JAVA_OBJECT __CLASS_java_util_Iterator_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Iterator_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Iterator_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +typedef struct java_util_Iterator java_util_Iterator; +#endif + +void __INIT_java_util_Iterator(); +void __INIT_IMPL_java_util_Iterator(); + +#endif diff --git a/tests/nbody-java/java_util_LinkedList.c b/tests/nbody-java/java_util_LinkedList.c new file mode 100644 index 0000000000000..f6bfe34db9935 --- /dev/null +++ b/tests/nbody-java/java_util_LinkedList.c @@ -0,0 +1,2404 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_IndexOutOfBoundsException.h" +#include "java_lang_Object.h" +#include "java_lang_reflect_Array.h" +#include "java_util_ArrayList.h" +#include "java_util_Collection.h" +#include "java_util_Iterator.h" +#include "java_util_LinkedList_Link.h" + +#include "java_util_LinkedList.h" + +#define XMLVM_CURRENT_CLASS_NAME LinkedList +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_LinkedList + +__TIB_DEFINITION_java_util_LinkedList __TIB_java_util_LinkedList = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_LinkedList, // classInitializer + "java.util.LinkedList", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractSequentialList;Ljava/util/List;Ljava/util/Deque;Ljava/lang/Cloneable;Ljava/io/Serializable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractSequentialList, // extends + sizeof(java_util_LinkedList), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_LinkedList; +JAVA_OBJECT __CLASS_java_util_LinkedList_1ARRAY; +JAVA_OBJECT __CLASS_java_util_LinkedList_2ARRAY; +JAVA_OBJECT __CLASS_java_util_LinkedList_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_LinkedList_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_LinkedList() +{ + staticInitializerLock(&__TIB_java_util_LinkedList); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_LinkedList.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_LinkedList.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_LinkedList); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_LinkedList.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_LinkedList.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_LinkedList.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.LinkedList") + __INIT_IMPL_java_util_LinkedList(); + } +} + +void __INIT_IMPL_java_util_LinkedList() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractSequentialList) + __TIB_java_util_LinkedList.newInstanceFunc = __NEW_INSTANCE_java_util_LinkedList; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_LinkedList.vtable, __TIB_java_util_AbstractSequentialList.vtable, sizeof(__TIB_java_util_AbstractSequentialList.vtable)); + // Initialize vtable for this class + __TIB_java_util_LinkedList.vtable[20] = (VTABLE_PTR) &java_util_LinkedList_add___int_java_lang_Object; + __TIB_java_util_LinkedList.vtable[7] = (VTABLE_PTR) &java_util_LinkedList_add___java_lang_Object; + __TIB_java_util_LinkedList.vtable[19] = (VTABLE_PTR) &java_util_LinkedList_addAll___int_java_util_Collection; + __TIB_java_util_LinkedList.vtable[6] = (VTABLE_PTR) &java_util_LinkedList_addAll___java_util_Collection; + __TIB_java_util_LinkedList.vtable[30] = (VTABLE_PTR) &java_util_LinkedList_addFirst___java_lang_Object; + __TIB_java_util_LinkedList.vtable[31] = (VTABLE_PTR) &java_util_LinkedList_addLast___java_lang_Object; + __TIB_java_util_LinkedList.vtable[8] = (VTABLE_PTR) &java_util_LinkedList_clear__; + __TIB_java_util_LinkedList.vtable[0] = (VTABLE_PTR) &java_util_LinkedList_clone__; + __TIB_java_util_LinkedList.vtable[10] = (VTABLE_PTR) &java_util_LinkedList_contains___java_lang_Object; + __TIB_java_util_LinkedList.vtable[21] = (VTABLE_PTR) &java_util_LinkedList_get___int; + __TIB_java_util_LinkedList.vtable[34] = (VTABLE_PTR) &java_util_LinkedList_getFirst__; + __TIB_java_util_LinkedList.vtable[35] = (VTABLE_PTR) &java_util_LinkedList_getLast__; + __TIB_java_util_LinkedList.vtable[22] = (VTABLE_PTR) &java_util_LinkedList_indexOf___java_lang_Object; + __TIB_java_util_LinkedList.vtable[23] = (VTABLE_PTR) &java_util_LinkedList_lastIndexOf___java_lang_Object; + __TIB_java_util_LinkedList.vtable[25] = (VTABLE_PTR) &java_util_LinkedList_listIterator___int; + __TIB_java_util_LinkedList.vtable[27] = (VTABLE_PTR) &java_util_LinkedList_remove___int; + __TIB_java_util_LinkedList.vtable[14] = (VTABLE_PTR) &java_util_LinkedList_remove___java_lang_Object; + __TIB_java_util_LinkedList.vtable[48] = (VTABLE_PTR) &java_util_LinkedList_removeFirst__; + __TIB_java_util_LinkedList.vtable[50] = (VTABLE_PTR) &java_util_LinkedList_removeLast__; + __TIB_java_util_LinkedList.vtable[32] = (VTABLE_PTR) &java_util_LinkedList_descendingIterator__; + __TIB_java_util_LinkedList.vtable[36] = (VTABLE_PTR) &java_util_LinkedList_offerFirst___java_lang_Object; + __TIB_java_util_LinkedList.vtable[37] = (VTABLE_PTR) &java_util_LinkedList_offerLast___java_lang_Object; + __TIB_java_util_LinkedList.vtable[39] = (VTABLE_PTR) &java_util_LinkedList_peekFirst__; + __TIB_java_util_LinkedList.vtable[40] = (VTABLE_PTR) &java_util_LinkedList_peekLast__; + __TIB_java_util_LinkedList.vtable[42] = (VTABLE_PTR) &java_util_LinkedList_pollFirst__; + __TIB_java_util_LinkedList.vtable[43] = (VTABLE_PTR) &java_util_LinkedList_pollLast__; + __TIB_java_util_LinkedList.vtable[45] = (VTABLE_PTR) &java_util_LinkedList_pop__; + __TIB_java_util_LinkedList.vtable[46] = (VTABLE_PTR) &java_util_LinkedList_push___java_lang_Object; + __TIB_java_util_LinkedList.vtable[47] = (VTABLE_PTR) &java_util_LinkedList_removeFirstOccurrence___java_lang_Object; + __TIB_java_util_LinkedList.vtable[49] = (VTABLE_PTR) &java_util_LinkedList_removeLastOccurrence___java_lang_Object; + __TIB_java_util_LinkedList.vtable[28] = (VTABLE_PTR) &java_util_LinkedList_set___int_java_lang_Object; + __TIB_java_util_LinkedList.vtable[16] = (VTABLE_PTR) &java_util_LinkedList_size__; + __TIB_java_util_LinkedList.vtable[38] = (VTABLE_PTR) &java_util_LinkedList_offer___java_lang_Object; + __TIB_java_util_LinkedList.vtable[44] = (VTABLE_PTR) &java_util_LinkedList_poll__; + __TIB_java_util_LinkedList.vtable[51] = (VTABLE_PTR) &java_util_LinkedList_remove__; + __TIB_java_util_LinkedList.vtable[41] = (VTABLE_PTR) &java_util_LinkedList_peek__; + __TIB_java_util_LinkedList.vtable[33] = (VTABLE_PTR) &java_util_LinkedList_element__; + __TIB_java_util_LinkedList.vtable[17] = (VTABLE_PTR) &java_util_LinkedList_toArray__; + __TIB_java_util_LinkedList.vtable[18] = (VTABLE_PTR) &java_util_LinkedList_toArray___java_lang_Object_1ARRAY; + // Initialize interface information + __TIB_java_util_LinkedList.numImplementedInterfaces = 7; + __TIB_java_util_LinkedList.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 7); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_LinkedList.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_LinkedList.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_lang_Iterable) + + __TIB_java_util_LinkedList.implementedInterfaces[0][2] = &__TIB_java_lang_Iterable; + + XMLVM_CLASS_INIT(java_util_Collection) + + __TIB_java_util_LinkedList.implementedInterfaces[0][3] = &__TIB_java_util_Collection; + + XMLVM_CLASS_INIT(java_util_Deque) + + __TIB_java_util_LinkedList.implementedInterfaces[0][4] = &__TIB_java_util_Deque; + + XMLVM_CLASS_INIT(java_util_List) + + __TIB_java_util_LinkedList.implementedInterfaces[0][5] = &__TIB_java_util_List; + + XMLVM_CLASS_INIT(java_util_Queue) + + __TIB_java_util_LinkedList.implementedInterfaces[0][6] = &__TIB_java_util_Queue; + // Initialize itable for this class + __TIB_java_util_LinkedList.itableBegin = &__TIB_java_util_LinkedList.itable[0]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_LinkedList.vtable[12]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[6]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_LinkedList.vtable[7]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_LinkedList.vtable[8]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[9]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_LinkedList.vtable[10]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_LinkedList.vtable[1]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_LinkedList.vtable[4]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_LinkedList.vtable[11]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_LinkedList.vtable[12]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[13]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_LinkedList.vtable[14]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[15]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_LinkedList.vtable[16]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_LinkedList.vtable[17]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_LinkedList.vtable[18]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_addAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[6]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_addFirst___java_lang_Object] = __TIB_java_util_LinkedList.vtable[30]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_addLast___java_lang_Object] = __TIB_java_util_LinkedList.vtable[31]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_add___java_lang_Object] = __TIB_java_util_LinkedList.vtable[7]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_clear__] = __TIB_java_util_LinkedList.vtable[8]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_containsAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[9]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_contains___java_lang_Object] = __TIB_java_util_LinkedList.vtable[10]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_descendingIterator__] = __TIB_java_util_LinkedList.vtable[32]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_element__] = __TIB_java_util_LinkedList.vtable[33]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_equals___java_lang_Object] = __TIB_java_util_LinkedList.vtable[1]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_getFirst__] = __TIB_java_util_LinkedList.vtable[34]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_getLast__] = __TIB_java_util_LinkedList.vtable[35]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_hashCode__] = __TIB_java_util_LinkedList.vtable[4]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_isEmpty__] = __TIB_java_util_LinkedList.vtable[11]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_iterator__] = __TIB_java_util_LinkedList.vtable[12]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_offerFirst___java_lang_Object] = __TIB_java_util_LinkedList.vtable[36]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_offerLast___java_lang_Object] = __TIB_java_util_LinkedList.vtable[37]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_offer___java_lang_Object] = __TIB_java_util_LinkedList.vtable[38]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_peekFirst__] = __TIB_java_util_LinkedList.vtable[39]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_peekLast__] = __TIB_java_util_LinkedList.vtable[40]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_peek__] = __TIB_java_util_LinkedList.vtable[41]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_pollFirst__] = __TIB_java_util_LinkedList.vtable[42]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_pollLast__] = __TIB_java_util_LinkedList.vtable[43]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_poll__] = __TIB_java_util_LinkedList.vtable[44]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_pop__] = __TIB_java_util_LinkedList.vtable[45]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_push___java_lang_Object] = __TIB_java_util_LinkedList.vtable[46]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_removeAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[13]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_removeFirstOccurrence___java_lang_Object] = __TIB_java_util_LinkedList.vtable[47]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_removeFirst__] = __TIB_java_util_LinkedList.vtable[48]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_removeLastOccurrence___java_lang_Object] = __TIB_java_util_LinkedList.vtable[49]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_removeLast__] = __TIB_java_util_LinkedList.vtable[50]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_remove__] = __TIB_java_util_LinkedList.vtable[51]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_remove___java_lang_Object] = __TIB_java_util_LinkedList.vtable[14]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_retainAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[15]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_size__] = __TIB_java_util_LinkedList.vtable[16]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_toArray__] = __TIB_java_util_LinkedList.vtable[17]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Deque_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_LinkedList.vtable[18]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___int_java_util_Collection] = __TIB_java_util_LinkedList.vtable[19]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[6]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_add___int_java_lang_Object] = __TIB_java_util_LinkedList.vtable[20]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object] = __TIB_java_util_LinkedList.vtable[7]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_clear__] = __TIB_java_util_LinkedList.vtable[8]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_containsAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[9]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_contains___java_lang_Object] = __TIB_java_util_LinkedList.vtable[10]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_equals___java_lang_Object] = __TIB_java_util_LinkedList.vtable[1]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_get___int] = __TIB_java_util_LinkedList.vtable[21]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_hashCode__] = __TIB_java_util_LinkedList.vtable[4]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object] = __TIB_java_util_LinkedList.vtable[22]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_isEmpty__] = __TIB_java_util_LinkedList.vtable[11]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_iterator__] = __TIB_java_util_LinkedList.vtable[12]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object] = __TIB_java_util_LinkedList.vtable[23]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator__] = __TIB_java_util_LinkedList.vtable[24]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator___int] = __TIB_java_util_LinkedList.vtable[25]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_removeAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[13]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___int] = __TIB_java_util_LinkedList.vtable[27]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___java_lang_Object] = __TIB_java_util_LinkedList.vtable[14]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_retainAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[15]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object] = __TIB_java_util_LinkedList.vtable[28]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_size__] = __TIB_java_util_LinkedList.vtable[16]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_subList___int_int] = __TIB_java_util_LinkedList.vtable[29]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray__] = __TIB_java_util_LinkedList.vtable[17]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_LinkedList.vtable[18]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_addAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[6]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_add___java_lang_Object] = __TIB_java_util_LinkedList.vtable[7]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_clear__] = __TIB_java_util_LinkedList.vtable[8]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_containsAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[9]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_contains___java_lang_Object] = __TIB_java_util_LinkedList.vtable[10]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_element__] = __TIB_java_util_LinkedList.vtable[33]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_equals___java_lang_Object] = __TIB_java_util_LinkedList.vtable[1]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_hashCode__] = __TIB_java_util_LinkedList.vtable[4]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_isEmpty__] = __TIB_java_util_LinkedList.vtable[11]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_iterator__] = __TIB_java_util_LinkedList.vtable[12]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_offer___java_lang_Object] = __TIB_java_util_LinkedList.vtable[38]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_peek__] = __TIB_java_util_LinkedList.vtable[41]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_poll__] = __TIB_java_util_LinkedList.vtable[44]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_removeAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[13]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_remove__] = __TIB_java_util_LinkedList.vtable[51]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_remove___java_lang_Object] = __TIB_java_util_LinkedList.vtable[14]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_retainAll___java_util_Collection] = __TIB_java_util_LinkedList.vtable[15]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_size__] = __TIB_java_util_LinkedList.vtable[16]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_toArray__] = __TIB_java_util_LinkedList.vtable[17]; + __TIB_java_util_LinkedList.itable[XMLVM_ITABLE_IDX_java_util_Queue_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_LinkedList.vtable[18]; + + _STATIC_java_util_LinkedList_serialVersionUID = 876323262645176354; + + __TIB_java_util_LinkedList.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_LinkedList.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_LinkedList.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_LinkedList.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_LinkedList.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_LinkedList.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_LinkedList.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_LinkedList.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_LinkedList = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_LinkedList); + __TIB_java_util_LinkedList.clazz = __CLASS_java_util_LinkedList; + __TIB_java_util_LinkedList.baseType = JAVA_NULL; + __CLASS_java_util_LinkedList_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_LinkedList); + __CLASS_java_util_LinkedList_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_LinkedList_1ARRAY); + __CLASS_java_util_LinkedList_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_LinkedList_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_LinkedList] + //XMLVM_END_WRAPPER + + __TIB_java_util_LinkedList.classInitialized = 1; +} + +void __DELETE_java_util_LinkedList(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_LinkedList] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_LinkedList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractSequentialList(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_LinkedList*) me)->fields.java_util_LinkedList.size_ = 0; + ((java_util_LinkedList*) me)->fields.java_util_LinkedList.voidLink_ = (java_util_LinkedList_Link*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_LinkedList] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_LinkedList() +{ XMLVM_CLASS_INIT(java_util_LinkedList) +java_util_LinkedList* me = (java_util_LinkedList*) XMLVM_MALLOC(sizeof(java_util_LinkedList)); + me->tib = &__TIB_java_util_LinkedList; + __INIT_INSTANCE_MEMBERS_java_util_LinkedList(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_LinkedList] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_LinkedList() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_LinkedList(); + java_util_LinkedList___INIT___(me); + return me; +} + +JAVA_LONG java_util_LinkedList_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_LinkedList) + return _STATIC_java_util_LinkedList_serialVersionUID; +} + +void java_util_LinkedList_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_LinkedList) +_STATIC_java_util_LinkedList_serialVersionUID = v; +} + +void java_util_LinkedList___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList___INIT___] + XMLVM_ENTER_METHOD("java.util.LinkedList", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + _r1.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("LinkedList.java", 239) + XMLVM_CHECK_NPE(2) + java_util_AbstractSequentialList___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 39) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 240) + _r0.o = __NEW_java_util_LinkedList_Link(); + XMLVM_CHECK_NPE(0) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r0.o, _r1.o, _r1.o, _r1.o); + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_ = _r0.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 241) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 242) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 243) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList___INIT____java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList___INIT____java_util_Collection] + XMLVM_ENTER_METHOD("java.util.LinkedList", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 255) + XMLVM_CHECK_NPE(0) + java_util_LinkedList___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 256) + //java_util_LinkedList_addAll___java_util_Collection[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_LinkedList*) _r0.o)->tib->vtable[6])(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 257) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_add___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.i = n1; + _r6.o = n2; + XMLVM_SOURCE_POSITION("LinkedList.java", 274) + if (_r5.i < 0) goto label64; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + if (_r5.i > _r0.i) goto label64; + XMLVM_SOURCE_POSITION("LinkedList.java", 275) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_SOURCE_POSITION("LinkedList.java", 276) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + _r1.i = _r1.i / 2; + if (_r5.i >= _r1.i) goto label50; + XMLVM_SOURCE_POSITION("LinkedList.java", 277) + _r1.i = 0; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label18:; + if (_r0.i <= _r5.i) goto label45; + _r0 = _r1; + label21:; + XMLVM_SOURCE_POSITION("LinkedList.java", 285) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 286) + _r2.o = __NEW_java_util_LinkedList_Link(); + XMLVM_CHECK_NPE(2) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r2.o, _r6.o, _r1.o, _r0.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 287) + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 288) + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 289) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(4) + ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 290) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(4) + ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 294) + XMLVM_EXIT_METHOD() + return; + label45:; + XMLVM_SOURCE_POSITION("LinkedList.java", 278) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_; + _r0.i = _r0.i + 1; + goto label18; + label50:; + XMLVM_SOURCE_POSITION("LinkedList.java", 281) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label55:; + if (_r0.i > _r5.i) goto label59; + _r0 = _r1; + goto label21; + label59:; + XMLVM_SOURCE_POSITION("LinkedList.java", 282) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.previous_; + _r0.i = _r0.i + -1; + goto label55; + label64:; + XMLVM_SOURCE_POSITION("LinkedList.java", 292) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_add___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "add", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 305) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_LinkedList_addLastImpl___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_addLastImpl___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_addLastImpl___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "addLastImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 309) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 310) + _r1.o = __NEW_java_util_LinkedList_Link(); + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r1.o, _r4.o, _r0.o, _r2.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 311) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.previous_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 312) + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 313) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 314) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 315) + _r0.i = 1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_addAll___int_java_util_Collection] + XMLVM_ENTER_METHOD("java.util.LinkedList", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r8.o = me; + _r9.i = n1; + _r10.o = n2; + _r4.i = 0; + XMLVM_SOURCE_POSITION("LinkedList.java", 338) + if (_r9.i < 0) goto label7; + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_LinkedList*) _r8.o)->fields.java_util_LinkedList.size_; + if (_r9.i <= _r0.i) goto label13; + label7:; + XMLVM_SOURCE_POSITION("LinkedList.java", 339) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("LinkedList.java", 341) + XMLVM_CHECK_NPE(10) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r10.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_size__])(_r10.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 342) + if (_r1.i != 0) goto label21; + _r0 = _r4; + label20:; + XMLVM_SOURCE_POSITION("LinkedList.java", 343) + XMLVM_SOURCE_POSITION("LinkedList.java", 368) + XMLVM_EXIT_METHOD() + return _r0.i; + label21:; + XMLVM_SOURCE_POSITION("LinkedList.java", 345) + if (_r10.o != _r8.o) goto label70; + XMLVM_SOURCE_POSITION("LinkedList.java", 346) + _r0.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(0) + java_util_ArrayList___INIT____java_util_Collection(_r0.o, _r10.o); + label28:; + XMLVM_SOURCE_POSITION("LinkedList.java", 348) + XMLVM_CHECK_NPE(8) + _r2.o = ((java_util_LinkedList*) _r8.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_SOURCE_POSITION("LinkedList.java", 349) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_LinkedList*) _r8.o)->fields.java_util_LinkedList.size_; + _r3.i = _r3.i / 2; + if (_r9.i >= _r3.i) goto label77; + _r3 = _r2; + _r2 = _r4; + label38:; + XMLVM_SOURCE_POSITION("LinkedList.java", 350) + if (_r2.i < _r9.i) goto label72; + _r2 = _r3; + label41:; + XMLVM_SOURCE_POSITION("LinkedList.java", 358) + XMLVM_CHECK_NPE(2) + _r3.o = ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 359) + XMLVM_CHECK_NPE(0) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r0.o); + label47:; + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r4.o); + if (_r0.i != 0) goto label91; + XMLVM_SOURCE_POSITION("LinkedList.java", 364) + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_ = _r3.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 365) + XMLVM_CHECK_NPE(3) + ((java_util_LinkedList_Link*) _r3.o)->fields.java_util_LinkedList_Link.previous_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 366) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_LinkedList*) _r8.o)->fields.java_util_LinkedList.size_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(8) + ((java_util_LinkedList*) _r8.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 367) + XMLVM_CHECK_NPE(8) + _r0.i = ((java_util_AbstractList*) _r8.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(8) + ((java_util_AbstractList*) _r8.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + _r0.i = 1; + goto label20; + label70:; + _r0 = _r10; + goto label28; + label72:; + XMLVM_SOURCE_POSITION("LinkedList.java", 351) + XMLVM_CHECK_NPE(3) + _r3.o = ((java_util_LinkedList_Link*) _r3.o)->fields.java_util_LinkedList_Link.next_; + _r2.i = _r2.i + 1; + goto label38; + label77:; + XMLVM_SOURCE_POSITION("LinkedList.java", 354) + XMLVM_CHECK_NPE(8) + _r3.i = ((java_util_LinkedList*) _r8.o)->fields.java_util_LinkedList.size_; + _r7 = _r3; + _r3 = _r2; + _r2 = _r7; + label82:; + if (_r2.i >= _r9.i) goto label86; + _r2 = _r3; + goto label41; + label86:; + XMLVM_SOURCE_POSITION("LinkedList.java", 355) + XMLVM_CHECK_NPE(3) + _r3.o = ((java_util_LinkedList_Link*) _r3.o)->fields.java_util_LinkedList_Link.previous_; + _r2.i = _r2.i + -1; + goto label82; + label91:; + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r4.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 360) + _r5.o = __NEW_java_util_LinkedList_Link(); + _r6.o = JAVA_NULL; + XMLVM_CHECK_NPE(5) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r5.o, _r0.o, _r2.o, _r6.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 361) + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_ = _r5.o; + _r2 = _r5; + XMLVM_SOURCE_POSITION("LinkedList.java", 362) + goto label47; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_addAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_addAll___java_util_Collection] + XMLVM_ENTER_METHOD("java.util.LinkedList", "addAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 381) + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_size__])(_r7.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 382) + if (_r1.i != 0) goto label8; + XMLVM_SOURCE_POSITION("LinkedList.java", 383) + _r0.i = 0; + label7:; + XMLVM_SOURCE_POSITION("LinkedList.java", 398) + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_SOURCE_POSITION("LinkedList.java", 385) + if (_r7.o != _r6.o) goto label50; + XMLVM_SOURCE_POSITION("LinkedList.java", 386) + _r0.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(0) + java_util_ArrayList___INIT____java_util_Collection(_r0.o, _r7.o); + label15:; + XMLVM_SOURCE_POSITION("LinkedList.java", 388) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + _r2.o = ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 389) + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r0.o); + label23:; + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r3.o); + if (_r0.i != 0) goto label52; + XMLVM_SOURCE_POSITION("LinkedList.java", 394) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_ = _r0.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 395) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 396) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.size_; + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(6) + ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 397) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_AbstractList*) _r6.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_AbstractList*) _r6.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + _r0.i = 1; + goto label7; + label50:; + _r0 = _r7; + goto label15; + label52:; + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r3.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 390) + _r4.o = __NEW_java_util_LinkedList_Link(); + _r5.o = JAVA_NULL; + XMLVM_CHECK_NPE(4) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r4.o, _r0.o, _r2.o, _r5.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 391) + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_ = _r4.o; + _r2 = _r4; + XMLVM_SOURCE_POSITION("LinkedList.java", 392) + goto label23; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList_addFirst___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_addFirst___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "addFirst", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 408) + XMLVM_CHECK_NPE(0) + java_util_LinkedList_addFirstImpl___java_lang_Object(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 409) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_addFirstImpl___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_addFirstImpl___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "addFirstImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 412) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 413) + _r1.o = __NEW_java_util_LinkedList_Link(); + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r1.o, _r4.o, _r2.o, _r0.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 414) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 415) + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 416) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 417) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 418) + _r0.i = 1; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList_addLast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_addLast___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "addLast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 428) + XMLVM_CHECK_NPE(0) + java_util_LinkedList_addLastImpl___java_lang_Object(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 429) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_clear__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 439) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.size_; + if (_r0.i <= 0) goto label25; + XMLVM_SOURCE_POSITION("LinkedList.java", 440) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 441) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 442) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 443) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_AbstractList*) _r2.o)->fields.java_util_AbstractList.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(2) + ((java_util_AbstractList*) _r2.o)->fields.java_util_AbstractList.modCount_ = _r0.i; + label25:; + XMLVM_SOURCE_POSITION("LinkedList.java", 445) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_clone__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "clone", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r6.o = me; + _r5.o = JAVA_NULL; + XMLVM_TRY_BEGIN(w921aaac14b1b3) + // Begin try + XMLVM_SOURCE_POSITION("LinkedList.java", 458) + XMLVM_CHECK_NPE(6) + _r0.o = java_lang_Object_clone__(_r6.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 459) + _r1.i = 0; + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList*) _r0.o)->fields.java_util_LinkedList.size_ = _r1.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 460) + _r1.o = __NEW_java_util_LinkedList_Link(); + _r2.o = JAVA_NULL; + _r3.o = JAVA_NULL; + _r4.o = JAVA_NULL; + XMLVM_CHECK_NPE(1) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r1.o, _r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList*) _r0.o)->fields.java_util_LinkedList.voidLink_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 461) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList*) _r0.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r2.o = ((java_util_LinkedList*) _r0.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.previous_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 462) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList*) _r0.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r2.o = ((java_util_LinkedList*) _r0.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 463) + //java_util_LinkedList_addAll___java_util_Collection[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_LinkedList*) _r0.o)->tib->vtable[6])(_r0.o, _r6.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w921aaac14b1b3) + XMLVM_CATCH_END(w921aaac14b1b3) + XMLVM_RESTORE_EXCEPTION_ENV(w921aaac14b1b3) + label35:; + XMLVM_SOURCE_POSITION("LinkedList.java", 466) + XMLVM_EXIT_METHOD() + return _r0.o; + label36:; + java_lang_Thread* curThread_w921aaac14b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w921aaac14b1b8->fields.java_lang_Thread.xmlvmException_; + _r0 = _r5; + goto label35; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_contains___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 1; + XMLVM_SOURCE_POSITION("LinkedList.java", 480) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 481) + if (_r4.o == JAVA_NULL) goto label34; + label7:; + XMLVM_SOURCE_POSITION("LinkedList.java", 482) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r1.o) goto label13; + label11:; + XMLVM_SOURCE_POSITION("LinkedList.java", 496) + _r0.i = 0; + label12:; + XMLVM_EXIT_METHOD() + return _r0.i; + label13:; + XMLVM_SOURCE_POSITION("LinkedList.java", 483) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i == 0) goto label23; + _r0 = _r2; + XMLVM_SOURCE_POSITION("LinkedList.java", 484) + goto label12; + label23:; + XMLVM_SOURCE_POSITION("LinkedList.java", 486) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + goto label7; + label26:; + XMLVM_SOURCE_POSITION("LinkedList.java", 490) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + if (_r1.o != JAVA_NULL) goto label32; + _r0 = _r2; + XMLVM_SOURCE_POSITION("LinkedList.java", 491) + goto label12; + label32:; + XMLVM_SOURCE_POSITION("LinkedList.java", 493) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + label34:; + XMLVM_SOURCE_POSITION("LinkedList.java", 489) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r1.o) goto label26; + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_get___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_get___int] + XMLVM_ENTER_METHOD("java.util.LinkedList", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.i = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 501) + if (_r4.i < 0) goto label43; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + if (_r4.i >= _r0.i) goto label43; + XMLVM_SOURCE_POSITION("LinkedList.java", 502) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_SOURCE_POSITION("LinkedList.java", 503) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r1.i = _r1.i / 2; + if (_r4.i >= _r1.i) goto label29; + XMLVM_SOURCE_POSITION("LinkedList.java", 504) + _r1.i = 0; + _r2 = _r1; + _r1 = _r0; + _r0 = _r2; + label18:; + if (_r0.i <= _r4.i) goto label24; + _r0 = _r1; + label21:; + XMLVM_SOURCE_POSITION("LinkedList.java", 512) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_EXIT_METHOD() + return _r0.o; + label24:; + XMLVM_SOURCE_POSITION("LinkedList.java", 505) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_; + _r0.i = _r0.i + 1; + goto label18; + label29:; + XMLVM_SOURCE_POSITION("LinkedList.java", 508) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r2 = _r1; + _r1 = _r0; + _r0 = _r2; + label34:; + if (_r0.i > _r4.i) goto label38; + _r0 = _r1; + goto label21; + label38:; + XMLVM_SOURCE_POSITION("LinkedList.java", 509) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.previous_; + _r0.i = _r0.i + -1; + goto label34; + label43:; + XMLVM_SOURCE_POSITION("LinkedList.java", 514) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_getFirst__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_getFirst__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "getFirst", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 525) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_getFirstImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_getFirstImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_getFirstImpl__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "getFirstImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 529) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 530) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o == _r1.o) goto label11; + XMLVM_SOURCE_POSITION("LinkedList.java", 531) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + XMLVM_SOURCE_POSITION("LinkedList.java", 533) + + + // Red class access removed: java.util.NoSuchElementException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.NoSuchElementException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_getLast__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_getLast__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "getLast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 544) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 545) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o == _r1.o) goto label11; + XMLVM_SOURCE_POSITION("LinkedList.java", 546) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + XMLVM_SOURCE_POSITION("LinkedList.java", 548) + + + // Red class access removed: java.util.NoSuchElementException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.NoSuchElementException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_LinkedList_indexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_indexOf___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "indexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 553) + _r0.i = 0; + XMLVM_SOURCE_POSITION("LinkedList.java", 554) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 555) + if (_r5.o == JAVA_NULL) goto label46; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label10:; + XMLVM_SOURCE_POSITION("LinkedList.java", 556) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r2.o) goto label16; + label14:; + XMLVM_SOURCE_POSITION("LinkedList.java", 572) + _r0.i = -1; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + XMLVM_SOURCE_POSITION("LinkedList.java", 557) + XMLVM_CHECK_NPE(0) + _r2.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o); + if (_r2.i == 0) goto label26; + _r0 = _r1; + XMLVM_SOURCE_POSITION("LinkedList.java", 558) + goto label15; + label26:; + XMLVM_SOURCE_POSITION("LinkedList.java", 560) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 561) + _r1.i = _r1.i + 1; + goto label10; + label31:; + XMLVM_SOURCE_POSITION("LinkedList.java", 565) + XMLVM_CHECK_NPE(0) + _r2.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + if (_r2.o != JAVA_NULL) goto label37; + _r0 = _r1; + XMLVM_SOURCE_POSITION("LinkedList.java", 566) + goto label15; + label37:; + XMLVM_SOURCE_POSITION("LinkedList.java", 568) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 569) + _r1.i = _r1.i + 1; + label41:; + XMLVM_SOURCE_POSITION("LinkedList.java", 564) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r2.o) goto label31; + goto label14; + label46:; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + goto label41; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_LinkedList_lastIndexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_lastIndexOf___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "lastIndexOf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 586) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + XMLVM_SOURCE_POSITION("LinkedList.java", 587) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 588) + if (_r5.o == JAVA_NULL) goto label47; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label11:; + XMLVM_SOURCE_POSITION("LinkedList.java", 589) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r2.o) goto label17; + label15:; + XMLVM_SOURCE_POSITION("LinkedList.java", 605) + _r0.i = -1; + label16:; + XMLVM_EXIT_METHOD() + return _r0.i; + label17:; + XMLVM_SOURCE_POSITION("LinkedList.java", 590) + _r1.i = _r1.i + -1; + XMLVM_SOURCE_POSITION("LinkedList.java", 591) + XMLVM_CHECK_NPE(0) + _r2.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o); + if (_r2.i == 0) goto label29; + _r0 = _r1; + XMLVM_SOURCE_POSITION("LinkedList.java", 592) + goto label16; + label29:; + XMLVM_SOURCE_POSITION("LinkedList.java", 594) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + goto label11; + label32:; + XMLVM_SOURCE_POSITION("LinkedList.java", 598) + _r1.i = _r1.i + -1; + XMLVM_SOURCE_POSITION("LinkedList.java", 599) + XMLVM_CHECK_NPE(0) + _r2.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + if (_r2.o != JAVA_NULL) goto label40; + _r0 = _r1; + XMLVM_SOURCE_POSITION("LinkedList.java", 600) + goto label16; + label40:; + XMLVM_SOURCE_POSITION("LinkedList.java", 602) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + label42:; + XMLVM_SOURCE_POSITION("LinkedList.java", 597) + XMLVM_CHECK_NPE(4) + _r2.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r2.o) goto label32; + goto label15; + label47:; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + goto label42; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_listIterator___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_listIterator___int] + XMLVM_ENTER_METHOD("java.util.LinkedList", "listIterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 622) + + + // Red class access removed: java.util.LinkedList$LinkIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.LinkedList$LinkIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_remove___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_remove___int] + XMLVM_ENTER_METHOD("java.util.LinkedList", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.i = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 636) + if (_r5.i < 0) goto label63; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + if (_r5.i >= _r0.i) goto label63; + XMLVM_SOURCE_POSITION("LinkedList.java", 637) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_SOURCE_POSITION("LinkedList.java", 638) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + _r1.i = _r1.i / 2; + if (_r5.i >= _r1.i) goto label49; + XMLVM_SOURCE_POSITION("LinkedList.java", 639) + _r1.i = 0; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label18:; + if (_r0.i <= _r5.i) goto label44; + _r0 = _r1; + label21:; + XMLVM_SOURCE_POSITION("LinkedList.java", 647) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 648) + XMLVM_CHECK_NPE(0) + _r2.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 649) + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 650) + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.previous_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 651) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(4) + ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_ = _r1.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 652) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_; + _r1.i = _r1.i + 1; + XMLVM_CHECK_NPE(4) + ((java_util_AbstractList*) _r4.o)->fields.java_util_AbstractList.modCount_ = _r1.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 653) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_EXIT_METHOD() + return _r0.o; + label44:; + XMLVM_SOURCE_POSITION("LinkedList.java", 640) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_; + _r0.i = _r0.i + 1; + goto label18; + label49:; + XMLVM_SOURCE_POSITION("LinkedList.java", 643) + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_LinkedList*) _r4.o)->fields.java_util_LinkedList.size_; + _r3 = _r1; + _r1 = _r0; + _r0 = _r3; + label54:; + if (_r0.i > _r5.i) goto label58; + _r0 = _r1; + goto label21; + label58:; + XMLVM_SOURCE_POSITION("LinkedList.java", 644) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.previous_; + _r0.i = _r0.i + -1; + goto label54; + label63:; + XMLVM_SOURCE_POSITION("LinkedList.java", 655) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 660) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_LinkedList_removeFirstOccurrenceImpl___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_removeFirst__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeFirst__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeFirst", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 671) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_removeFirstImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_removeFirstImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeFirstImpl__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeFirstImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 675) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 676) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o == _r1.o) goto label33; + XMLVM_SOURCE_POSITION("LinkedList.java", 677) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 678) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 679) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.previous_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 680) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(3) + ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_ = _r1.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 681) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_; + _r1.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_ = _r1.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 682) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_EXIT_METHOD() + return _r0.o; + label33:; + XMLVM_SOURCE_POSITION("LinkedList.java", 684) + + + // Red class access removed: java.util.NoSuchElementException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.NoSuchElementException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_removeLast__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeLast__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeLast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 695) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_removeLastImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_removeLastImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeLastImpl__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeLastImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 699) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 700) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o == _r1.o) goto label33; + XMLVM_SOURCE_POSITION("LinkedList.java", 701) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 702) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.previous_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 703) + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 704) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r2.i = 1; + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(3) + ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_ = _r1.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 705) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_; + _r1.i = _r1.i + 1; + XMLVM_CHECK_NPE(3) + ((java_util_AbstractList*) _r3.o)->fields.java_util_AbstractList.modCount_ = _r1.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 706) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_EXIT_METHOD() + return _r0.o; + label33:; + XMLVM_SOURCE_POSITION("LinkedList.java", 708) + + + // Red class access removed: java.util.NoSuchElementException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.NoSuchElementException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_descendingIterator__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_descendingIterator__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "descendingIterator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 718) + + + // Red class access removed: java.util.LinkedList$ReverseLinkIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.LinkedList$ReverseLinkIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_offerFirst___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_offerFirst___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "offerFirst", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 728) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_LinkedList_addFirstImpl___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_offerLast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_offerLast___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "offerLast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 738) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_LinkedList_addLastImpl___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_peekFirst__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_peekFirst__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "peekFirst", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 748) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_peekFirstImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_peekLast__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_peekLast__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "peekLast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 758) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_; + XMLVM_SOURCE_POSITION("LinkedList.java", 759) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r1.o) goto label10; + _r0.o = JAVA_NULL; + label9:; + XMLVM_EXIT_METHOD() + return _r0.o; + label10:; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_pollFirst__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_pollFirst__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "pollFirst", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 769) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_LinkedList*) _r1.o)->fields.java_util_LinkedList.size_; + if (_r0.i != 0) goto label6; + _r0.o = JAVA_NULL; + label5:; + XMLVM_EXIT_METHOD() + return _r0.o; + label6:; + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_removeFirstImpl__(_r1.o); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_pollLast__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_pollLast__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "pollLast", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 779) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_LinkedList*) _r1.o)->fields.java_util_LinkedList.size_; + if (_r0.i != 0) goto label6; + _r0.o = JAVA_NULL; + label5:; + XMLVM_EXIT_METHOD() + return _r0.o; + label6:; + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_removeLastImpl__(_r1.o); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_pop__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_pop__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "pop", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 789) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_removeFirstImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList_push___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_push___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "push", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 799) + XMLVM_CHECK_NPE(0) + java_util_LinkedList_addFirstImpl___java_lang_Object(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 800) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_removeFirstOccurrence___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeFirstOccurrence___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeFirstOccurrence", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 809) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_LinkedList_removeFirstOccurrenceImpl___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_removeLastOccurrence___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeLastOccurrence___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeLastOccurrence", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 819) + + + // Red class access removed: java.util.LinkedList$ReverseLinkIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.LinkedList$ReverseLinkIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("LinkedList.java", 820) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_LinkedList_removeOneOccurrence___java_lang_Object_java_util_Iterator(_r1.o, _r2.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_removeFirstOccurrenceImpl___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeFirstOccurrenceImpl___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeFirstOccurrenceImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 824) + + + // Red class access removed: java.util.LinkedList$LinkIterator::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.i = 0; + + + // Red class access removed: java.util.LinkedList$LinkIterator:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("LinkedList.java", 825) + XMLVM_CHECK_NPE(2) + _r0.i = java_util_LinkedList_removeOneOccurrence___java_lang_Object_java_util_Iterator(_r2.o, _r3.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_removeOneOccurrence___java_lang_Object_java_util_Iterator(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_removeOneOccurrence___java_lang_Object_java_util_Iterator] + XMLVM_ENTER_METHOD("java.util.LinkedList", "removeOneOccurrence", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + label0:; + XMLVM_SOURCE_POSITION("LinkedList.java", 829) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r3.o); + if (_r0.i != 0) goto label8; + XMLVM_SOURCE_POSITION("LinkedList.java", 836) + _r0.i = 0; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_SOURCE_POSITION("LinkedList.java", 830) + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r3.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 831) + if (_r2.o != JAVA_NULL) goto label21; + if (_r0.o != JAVA_NULL) goto label0; + label16:; + XMLVM_SOURCE_POSITION("LinkedList.java", 832) + XMLVM_CHECK_NPE(3) + (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r3.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 833) + _r0.i = 1; + goto label7; + label21:; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[1])(_r2.o, _r0.o); + if (_r0.i == 0) goto label0; + goto label16; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_set___int_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "set", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r3.o = me; + _r4.i = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("LinkedList.java", 857) + if (_r4.i < 0) goto label45; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + if (_r4.i >= _r0.i) goto label45; + XMLVM_SOURCE_POSITION("LinkedList.java", 858) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_SOURCE_POSITION("LinkedList.java", 859) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r1.i = _r1.i / 2; + if (_r4.i >= _r1.i) goto label31; + XMLVM_SOURCE_POSITION("LinkedList.java", 860) + _r1.i = 0; + _r2 = _r1; + _r1 = _r0; + _r0 = _r2; + label18:; + if (_r0.i <= _r4.i) goto label26; + _r0 = _r1; + label21:; + XMLVM_SOURCE_POSITION("LinkedList.java", 868) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_SOURCE_POSITION("LinkedList.java", 869) + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_ = _r5.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 870) + XMLVM_EXIT_METHOD() + return _r1.o; + label26:; + XMLVM_SOURCE_POSITION("LinkedList.java", 861) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_; + _r0.i = _r0.i + 1; + goto label18; + label31:; + XMLVM_SOURCE_POSITION("LinkedList.java", 864) + XMLVM_CHECK_NPE(3) + _r1.i = ((java_util_LinkedList*) _r3.o)->fields.java_util_LinkedList.size_; + _r2 = _r1; + _r1 = _r0; + _r0 = _r2; + label36:; + if (_r0.i > _r4.i) goto label40; + _r0 = _r1; + goto label21; + label40:; + XMLVM_SOURCE_POSITION("LinkedList.java", 865) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.previous_; + _r0.i = _r0.i + -1; + goto label36; + label45:; + XMLVM_SOURCE_POSITION("LinkedList.java", 872) + _r0.o = __NEW_java_lang_IndexOutOfBoundsException(); + XMLVM_CHECK_NPE(0) + java_lang_IndexOutOfBoundsException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_LinkedList_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_size__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 882) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_LinkedList*) _r1.o)->fields.java_util_LinkedList.size_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_LinkedList_offer___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_offer___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.LinkedList", "offer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 886) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_LinkedList_addLastImpl___java_lang_Object(_r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_poll__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_poll__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "poll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 890) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_LinkedList*) _r1.o)->fields.java_util_LinkedList.size_; + if (_r0.i != 0) goto label6; + _r0.o = JAVA_NULL; + label5:; + XMLVM_EXIT_METHOD() + return _r0.o; + label6:; + //java_util_LinkedList_removeFirst__[48] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_LinkedList*) _r1.o)->tib->vtable[48])(_r1.o); + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_remove__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_remove__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 894) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_removeFirstImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_peek__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_peek__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "peek", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 898) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_peekFirstImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_peekFirstImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_peekFirstImpl__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "peekFirstImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 902) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + XMLVM_SOURCE_POSITION("LinkedList.java", 903) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r1.o) goto label10; + _r0.o = JAVA_NULL; + label9:; + XMLVM_EXIT_METHOD() + return _r0.o; + label10:; + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + goto label9; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_element__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_element__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "element", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 907) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_LinkedList_getFirstImpl__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_toArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_toArray__] + XMLVM_ENTER_METHOD("java.util.LinkedList", "toArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + XMLVM_SOURCE_POSITION("LinkedList.java", 918) + _r0.i = 0; + XMLVM_SOURCE_POSITION("LinkedList.java", 919) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.size_; + XMLVM_CLASS_INIT(java_lang_Object) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r1.i); + XMLVM_SOURCE_POSITION("LinkedList.java", 920) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + _r2.o = ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_; + _r5 = _r2; + _r2 = _r0; + _r0 = _r5; + label12:; + XMLVM_SOURCE_POSITION("LinkedList.java", 921) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + if (_r0.o != _r3.o) goto label17; + XMLVM_SOURCE_POSITION("LinkedList.java", 925) + XMLVM_EXIT_METHOD() + return _r1.o; + label17:; + XMLVM_SOURCE_POSITION("LinkedList.java", 922) + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(0) + _r4.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r4.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 923) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_; + _r2 = _r3; + goto label12; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_LinkedList_toArray___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_toArray___java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("java.util.LinkedList", "toArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 946) + _r1.i = 0; + XMLVM_SOURCE_POSITION("LinkedList.java", 947) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.size_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + if (_r0.i <= _r2.i) goto label50; + XMLVM_SOURCE_POSITION("LinkedList.java", 948) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(7) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[3])(_r7.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getComponentType__(_r0.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 949) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.size_; + _r0.o = java_lang_reflect_Array_newInstance___java_lang_Class_int(_r0.o, _r2.i); + _r0.o = _r0.o; + label22:; + XMLVM_SOURCE_POSITION("LinkedList.java", 951) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(2) + _r2.o = ((java_util_LinkedList_Link*) _r2.o)->fields.java_util_LinkedList_Link.next_; + _r5 = _r2; + _r2 = _r1; + _r1 = _r5; + label29:; + XMLVM_SOURCE_POSITION("LinkedList.java", 952) + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + if (_r1.o != _r3.o) goto label40; + XMLVM_SOURCE_POSITION("LinkedList.java", 956) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r2.i >= _r1.i) goto label39; + XMLVM_SOURCE_POSITION("LinkedList.java", 957) + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r1.o; + label39:; + XMLVM_SOURCE_POSITION("LinkedList.java", 959) + XMLVM_EXIT_METHOD() + return _r0.o; + label40:; + XMLVM_SOURCE_POSITION("LinkedList.java", 953) + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(1) + _r4.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.data_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r4.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 954) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_; + _r2 = _r3; + goto label29; + label50:; + _r0 = _r7; + goto label22; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.LinkedList", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("LinkedList.java", 963) + + + // Red class access removed: java.io.ObjectOutputStream::defaultWriteObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("LinkedList.java", 964) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_LinkedList*) _r2.o)->fields.java_util_LinkedList.size_; + + + // Red class access removed: java.io.ObjectOutputStream::writeInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("LinkedList.java", 965) + //java_util_LinkedList_iterator__[12] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_LinkedList*) _r2.o)->tib->vtable[12])(_r2.o); + label12:; + XMLVM_SOURCE_POSITION("LinkedList.java", 966) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o); + if (_r1.i != 0) goto label19; + XMLVM_SOURCE_POSITION("LinkedList.java", 969) + XMLVM_EXIT_METHOD() + return; + label19:; + XMLVM_SOURCE_POSITION("LinkedList.java", 967) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o); + + + // Red class access removed: java.io.ObjectOutputStream::writeObject + XMLVM_RED_CLASS_DEPENDENCY(); + goto label12; + //XMLVM_END_WRAPPER +} + +void java_util_LinkedList_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.util.LinkedList", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r4.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("LinkedList.java", 974) + + + // Red class access removed: java.io.ObjectInputStream::defaultReadObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("LinkedList.java", 975) + + + // Red class access removed: java.io.ObjectInputStream::readInt + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(6) + ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.size_ = _r0.i; + XMLVM_SOURCE_POSITION("LinkedList.java", 976) + _r0.o = __NEW_java_util_LinkedList_Link(); + XMLVM_CHECK_NPE(0) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r0.o, _r4.o, _r4.o, _r4.o); + XMLVM_CHECK_NPE(6) + ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_ = _r0.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 977) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_SOURCE_POSITION("LinkedList.java", 978) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.size_; + _r5 = _r1; + _r1 = _r0; + _r0 = _r5; + label24:; + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label37; + XMLVM_SOURCE_POSITION("LinkedList.java", 983) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_ = _r0.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 984) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_LinkedList*) _r6.o)->fields.java_util_LinkedList.voidLink_; + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 985) + XMLVM_EXIT_METHOD() + return; + label37:; + XMLVM_SOURCE_POSITION("LinkedList.java", 979) + _r2.o = __NEW_java_util_LinkedList_Link(); + + + // Red class access removed: java.io.ObjectInputStream::readObject + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(2) + java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(_r2.o, _r3.o, _r1.o, _r4.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 980) + XMLVM_CHECK_NPE(1) + ((java_util_LinkedList_Link*) _r1.o)->fields.java_util_LinkedList_Link.next_ = _r2.o; + _r1 = _r2; + XMLVM_SOURCE_POSITION("LinkedList.java", 981) + goto label24; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_LinkedList.h b/tests/nbody-java/java_util_LinkedList.h new file mode 100644 index 0000000000000..2151ef8f7b7e8 --- /dev/null +++ b/tests/nbody-java/java_util_LinkedList.h @@ -0,0 +1,219 @@ +#ifndef __JAVA_UTIL_LINKEDLIST__ +#define __JAVA_UTIL_LINKEDLIST__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_LinkedList 98 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Cloneable.h" +#include "java_util_Deque.h" +#include "java_util_List.h" +// Super Class: +#include "java_util_AbstractSequentialList.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +#define XMLVM_FORWARD_DECL_java_lang_IndexOutOfBoundsException +XMLVM_FORWARD_DECL(java_lang_IndexOutOfBoundsException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Array +#define XMLVM_FORWARD_DECL_java_lang_reflect_Array +XMLVM_FORWARD_DECL(java_lang_reflect_Array) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_ArrayList +#define XMLVM_FORWARD_DECL_java_util_ArrayList +XMLVM_FORWARD_DECL(java_util_ArrayList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_LinkedList_Link +#define XMLVM_FORWARD_DECL_java_util_LinkedList_Link +XMLVM_FORWARD_DECL(java_util_LinkedList_Link) +#endif +// Class declarations for java.util.LinkedList +XMLVM_DEFINE_CLASS(java_util_LinkedList, 52, XMLVM_ITABLE_SIZE_java_util_LinkedList) + +extern JAVA_OBJECT __CLASS_java_util_LinkedList; +extern JAVA_OBJECT __CLASS_java_util_LinkedList_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_LinkedList_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_LinkedList_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_LinkedList +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_LinkedList \ + __INSTANCE_FIELDS_java_util_AbstractSequentialList; \ + struct { \ + JAVA_INT size_; \ + JAVA_OBJECT voidLink_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_LinkedList \ + } java_util_LinkedList + +struct java_util_LinkedList { + __TIB_DEFINITION_java_util_LinkedList* tib; + struct { + __INSTANCE_FIELDS_java_util_LinkedList; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_LinkedList +#define XMLVM_FORWARD_DECL_java_util_LinkedList +typedef struct java_util_LinkedList java_util_LinkedList; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_LinkedList 52 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_add___int_java_lang_Object 20 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_add___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_addAll___int_java_util_Collection 19 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_addAll___java_util_Collection 6 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_addFirst___java_lang_Object 30 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_addLast___java_lang_Object 31 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_clear__ 8 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_contains___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_get___int 21 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_getFirst__ 34 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_getLast__ 35 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_indexOf___java_lang_Object 22 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_lastIndexOf___java_lang_Object 23 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_listIterator___int 25 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_remove___int 27 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_remove___java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_removeFirst__ 48 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_removeLast__ 50 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_descendingIterator__ 32 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_offerFirst___java_lang_Object 36 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_offerLast___java_lang_Object 37 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_peekFirst__ 39 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_peekLast__ 40 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_pollFirst__ 42 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_pollLast__ 43 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_pop__ 45 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_push___java_lang_Object 46 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_removeFirstOccurrence___java_lang_Object 47 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_removeLastOccurrence___java_lang_Object 49 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_set___int_java_lang_Object 28 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_size__ 16 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_offer___java_lang_Object 38 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_poll__ 44 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_remove__ 51 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_peek__ 41 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_element__ 33 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_toArray__ 17 +#define XMLVM_VTABLE_IDX_java_util_LinkedList_toArray___java_lang_Object_1ARRAY 18 + +void __INIT_java_util_LinkedList(); +void __INIT_IMPL_java_util_LinkedList(); +void __DELETE_java_util_LinkedList(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_LinkedList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_LinkedList(); +JAVA_OBJECT __NEW_INSTANCE_java_util_LinkedList(); +JAVA_LONG java_util_LinkedList_GET_serialVersionUID(); +void java_util_LinkedList_PUT_serialVersionUID(JAVA_LONG v); +void java_util_LinkedList___INIT___(JAVA_OBJECT me); +void java_util_LinkedList___INIT____java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 20 +void java_util_LinkedList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 7 +JAVA_BOOLEAN java_util_LinkedList_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_util_LinkedList_addLastImpl___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 19 +JAVA_BOOLEAN java_util_LinkedList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_BOOLEAN java_util_LinkedList_addAll___java_util_Collection(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 30 +void java_util_LinkedList_addFirst___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_util_LinkedList_addFirstImpl___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 31 +void java_util_LinkedList_addLast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +void java_util_LinkedList_clear__(JAVA_OBJECT me); +// Vtable index: 0 +JAVA_OBJECT java_util_LinkedList_clone__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN java_util_LinkedList_contains___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 21 +JAVA_OBJECT java_util_LinkedList_get___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 34 +JAVA_OBJECT java_util_LinkedList_getFirst__(JAVA_OBJECT me); +JAVA_OBJECT java_util_LinkedList_getFirstImpl__(JAVA_OBJECT me); +// Vtable index: 35 +JAVA_OBJECT java_util_LinkedList_getLast__(JAVA_OBJECT me); +// Vtable index: 22 +JAVA_INT java_util_LinkedList_indexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 23 +JAVA_INT java_util_LinkedList_lastIndexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 25 +JAVA_OBJECT java_util_LinkedList_listIterator___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 27 +JAVA_OBJECT java_util_LinkedList_remove___int(JAVA_OBJECT me, JAVA_INT n1); +// Vtable index: 14 +JAVA_BOOLEAN java_util_LinkedList_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 48 +JAVA_OBJECT java_util_LinkedList_removeFirst__(JAVA_OBJECT me); +JAVA_OBJECT java_util_LinkedList_removeFirstImpl__(JAVA_OBJECT me); +// Vtable index: 50 +JAVA_OBJECT java_util_LinkedList_removeLast__(JAVA_OBJECT me); +JAVA_OBJECT java_util_LinkedList_removeLastImpl__(JAVA_OBJECT me); +// Vtable index: 32 +JAVA_OBJECT java_util_LinkedList_descendingIterator__(JAVA_OBJECT me); +// Vtable index: 36 +JAVA_BOOLEAN java_util_LinkedList_offerFirst___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 37 +JAVA_BOOLEAN java_util_LinkedList_offerLast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 39 +JAVA_OBJECT java_util_LinkedList_peekFirst__(JAVA_OBJECT me); +// Vtable index: 40 +JAVA_OBJECT java_util_LinkedList_peekLast__(JAVA_OBJECT me); +// Vtable index: 42 +JAVA_OBJECT java_util_LinkedList_pollFirst__(JAVA_OBJECT me); +// Vtable index: 43 +JAVA_OBJECT java_util_LinkedList_pollLast__(JAVA_OBJECT me); +// Vtable index: 45 +JAVA_OBJECT java_util_LinkedList_pop__(JAVA_OBJECT me); +// Vtable index: 46 +void java_util_LinkedList_push___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 47 +JAVA_BOOLEAN java_util_LinkedList_removeFirstOccurrence___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 49 +JAVA_BOOLEAN java_util_LinkedList_removeLastOccurrence___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_util_LinkedList_removeFirstOccurrenceImpl___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_util_LinkedList_removeOneOccurrence___java_lang_Object_java_util_Iterator(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 28 +JAVA_OBJECT java_util_LinkedList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +// Vtable index: 16 +JAVA_INT java_util_LinkedList_size__(JAVA_OBJECT me); +// Vtable index: 38 +JAVA_BOOLEAN java_util_LinkedList_offer___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 44 +JAVA_OBJECT java_util_LinkedList_poll__(JAVA_OBJECT me); +// Vtable index: 51 +JAVA_OBJECT java_util_LinkedList_remove__(JAVA_OBJECT me); +// Vtable index: 41 +JAVA_OBJECT java_util_LinkedList_peek__(JAVA_OBJECT me); +JAVA_OBJECT java_util_LinkedList_peekFirstImpl__(JAVA_OBJECT me); +// Vtable index: 33 +JAVA_OBJECT java_util_LinkedList_element__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_LinkedList_toArray__(JAVA_OBJECT me); +// Vtable index: 18 +JAVA_OBJECT java_util_LinkedList_toArray___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_LinkedList_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_LinkedList_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_LinkedList_Link.c b/tests/nbody-java/java_util_LinkedList_Link.c new file mode 100644 index 0000000000000..80dd9f81cd71f --- /dev/null +++ b/tests/nbody-java/java_util_LinkedList_Link.c @@ -0,0 +1,174 @@ +#include "xmlvm.h" + +#include "java_util_LinkedList_Link.h" + +#define XMLVM_CURRENT_CLASS_NAME LinkedList_Link +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_LinkedList_Link + +__TIB_DEFINITION_java_util_LinkedList_Link __TIB_java_util_LinkedList_Link = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_LinkedList_Link, // classInitializer + "java.util.LinkedList$Link", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_LinkedList_Link), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_LinkedList_Link; +JAVA_OBJECT __CLASS_java_util_LinkedList_Link_1ARRAY; +JAVA_OBJECT __CLASS_java_util_LinkedList_Link_2ARRAY; +JAVA_OBJECT __CLASS_java_util_LinkedList_Link_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_LinkedList_Link() +{ + staticInitializerLock(&__TIB_java_util_LinkedList_Link); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_LinkedList_Link.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_LinkedList_Link.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_LinkedList_Link); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_LinkedList_Link.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_LinkedList_Link.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_LinkedList_Link.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.LinkedList$Link") + __INIT_IMPL_java_util_LinkedList_Link(); + } +} + +void __INIT_IMPL_java_util_LinkedList_Link() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_LinkedList_Link.newInstanceFunc = __NEW_INSTANCE_java_util_LinkedList_Link; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_LinkedList_Link.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_util_LinkedList_Link.numImplementedInterfaces = 0; + __TIB_java_util_LinkedList_Link.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_java_util_LinkedList_Link.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_LinkedList_Link.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_LinkedList_Link.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_LinkedList_Link.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_LinkedList_Link.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_LinkedList_Link.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_LinkedList_Link.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_LinkedList_Link.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_LinkedList_Link = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_LinkedList_Link); + __TIB_java_util_LinkedList_Link.clazz = __CLASS_java_util_LinkedList_Link; + __TIB_java_util_LinkedList_Link.baseType = JAVA_NULL; + __CLASS_java_util_LinkedList_Link_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_LinkedList_Link); + __CLASS_java_util_LinkedList_Link_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_LinkedList_Link_1ARRAY); + __CLASS_java_util_LinkedList_Link_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_LinkedList_Link_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_LinkedList_Link] + //XMLVM_END_WRAPPER + + __TIB_java_util_LinkedList_Link.classInitialized = 1; +} + +void __DELETE_java_util_LinkedList_Link(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_LinkedList_Link] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_LinkedList_Link(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_LinkedList_Link*) me)->fields.java_util_LinkedList_Link.data_ = (java_lang_Object*) JAVA_NULL; + ((java_util_LinkedList_Link*) me)->fields.java_util_LinkedList_Link.previous_ = (java_util_LinkedList_Link*) JAVA_NULL; + ((java_util_LinkedList_Link*) me)->fields.java_util_LinkedList_Link.next_ = (java_util_LinkedList_Link*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_LinkedList_Link] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_LinkedList_Link() +{ XMLVM_CLASS_INIT(java_util_LinkedList_Link) +java_util_LinkedList_Link* me = (java_util_LinkedList_Link*) XMLVM_MALLOC(sizeof(java_util_LinkedList_Link)); + me->tib = &__TIB_java_util_LinkedList_Link; + __INIT_INSTANCE_MEMBERS_java_util_LinkedList_Link(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_LinkedList_Link] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_LinkedList_Link() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link] + XMLVM_ENTER_METHOD("java.util.LinkedList$Link", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + XMLVM_SOURCE_POSITION("LinkedList.java", 48) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("LinkedList.java", 49) + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.data_ = _r1.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 50) + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.previous_ = _r2.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 51) + XMLVM_CHECK_NPE(0) + ((java_util_LinkedList_Link*) _r0.o)->fields.java_util_LinkedList_Link.next_ = _r3.o; + XMLVM_SOURCE_POSITION("LinkedList.java", 52) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_LinkedList_Link.h b/tests/nbody-java/java_util_LinkedList_Link.h new file mode 100644 index 0000000000000..48d134b06c1d4 --- /dev/null +++ b/tests/nbody-java/java_util_LinkedList_Link.h @@ -0,0 +1,54 @@ +#ifndef __JAVA_UTIL_LINKEDLIST_LINK__ +#define __JAVA_UTIL_LINKEDLIST_LINK__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_LinkedList_Link 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +// Class declarations for java.util.LinkedList$Link +XMLVM_DEFINE_CLASS(java_util_LinkedList_Link, 6, XMLVM_ITABLE_SIZE_java_util_LinkedList_Link) + +extern JAVA_OBJECT __CLASS_java_util_LinkedList_Link; +extern JAVA_OBJECT __CLASS_java_util_LinkedList_Link_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_LinkedList_Link_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_LinkedList_Link_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_LinkedList_Link +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_LinkedList_Link \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT data_; \ + JAVA_OBJECT previous_; \ + JAVA_OBJECT next_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_LinkedList_Link \ + } java_util_LinkedList_Link + +struct java_util_LinkedList_Link { + __TIB_DEFINITION_java_util_LinkedList_Link* tib; + struct { + __INSTANCE_FIELDS_java_util_LinkedList_Link; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_LinkedList_Link +#define XMLVM_FORWARD_DECL_java_util_LinkedList_Link +typedef struct java_util_LinkedList_Link java_util_LinkedList_Link; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_LinkedList_Link 6 + +void __INIT_java_util_LinkedList_Link(); +void __INIT_IMPL_java_util_LinkedList_Link(); +void __DELETE_java_util_LinkedList_Link(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_LinkedList_Link(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_LinkedList_Link(); +JAVA_OBJECT __NEW_INSTANCE_java_util_LinkedList_Link(); +void java_util_LinkedList_Link___INIT____java_lang_Object_java_util_LinkedList_Link_java_util_LinkedList_Link(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); + +#endif diff --git a/tests/nbody-java/java_util_List.c b/tests/nbody-java/java_util_List.c new file mode 100644 index 0000000000000..a4c975c932b02 --- /dev/null +++ b/tests/nbody-java/java_util_List.c @@ -0,0 +1,78 @@ +#include "xmlvm.h" +#include "java_util_Iterator.h" + +#include "java_util_List.h" + +__TIB_DEFINITION_java_util_List __TIB_java_util_List = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_List, // classInitializer + "java.util.List", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Collection;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_List; +JAVA_OBJECT __CLASS_java_util_List_1ARRAY; +JAVA_OBJECT __CLASS_java_util_List_2ARRAY; +JAVA_OBJECT __CLASS_java_util_List_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_List() +{ + staticInitializerLock(&__TIB_java_util_List); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_List.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_List.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_List); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_List.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_List.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_List.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.List") + __INIT_IMPL_java_util_List(); + } +} + +void __INIT_IMPL_java_util_List() +{ + __TIB_java_util_List.numInterfaces = 1; + //__TIB_java_util_List.baseInterfaces[0] = &__INTERFACE_java_util_Collection; + __TIB_java_util_List.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_List.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_List.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_List.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_List.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_List = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_List); + __TIB_java_util_List.clazz = __CLASS_java_util_List; + __TIB_java_util_List.baseType = JAVA_NULL; + __CLASS_java_util_List_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_List); + __CLASS_java_util_List_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_List_1ARRAY); + __CLASS_java_util_List_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_List_2ARRAY); + + __TIB_java_util_List.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_List.h b/tests/nbody-java/java_util_List.h new file mode 100644 index 0000000000000..a7f291f4e5201 --- /dev/null +++ b/tests/nbody-java/java_util_List.h @@ -0,0 +1,57 @@ +#ifndef __JAVA_UTIL_LIST__ +#define __JAVA_UTIL_LIST__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_List_add___int_java_lang_Object 55 +#define XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object 56 +#define XMLVM_ITABLE_IDX_java_util_List_addAll___int_java_util_Collection 53 +#define XMLVM_ITABLE_IDX_java_util_List_addAll___java_util_Collection 54 +#define XMLVM_ITABLE_IDX_java_util_List_clear__ 57 +#define XMLVM_ITABLE_IDX_java_util_List_contains___java_lang_Object 59 +#define XMLVM_ITABLE_IDX_java_util_List_containsAll___java_util_Collection 58 +#define XMLVM_ITABLE_IDX_java_util_List_equals___java_lang_Object 60 +#define XMLVM_ITABLE_IDX_java_util_List_get___int 61 +#define XMLVM_ITABLE_IDX_java_util_List_hashCode__ 62 +#define XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object 63 +#define XMLVM_ITABLE_IDX_java_util_List_isEmpty__ 64 +#define XMLVM_ITABLE_IDX_java_util_List_iterator__ 65 +#define XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object 66 +#define XMLVM_ITABLE_IDX_java_util_List_listIterator__ 67 +#define XMLVM_ITABLE_IDX_java_util_List_listIterator___int 68 +#define XMLVM_ITABLE_IDX_java_util_List_remove___int 70 +#define XMLVM_ITABLE_IDX_java_util_List_remove___java_lang_Object 71 +#define XMLVM_ITABLE_IDX_java_util_List_removeAll___java_util_Collection 69 +#define XMLVM_ITABLE_IDX_java_util_List_retainAll___java_util_Collection 72 +#define XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object 73 +#define XMLVM_ITABLE_IDX_java_util_List_size__ 74 +#define XMLVM_ITABLE_IDX_java_util_List_subList___int_int 75 +#define XMLVM_ITABLE_IDX_java_util_List_toArray__ 76 +#define XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY 77 +// Implemented interfaces: +#include "java_util_Collection.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif + +XMLVM_DEFINE_CLASS(java_util_List, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_List; +extern JAVA_OBJECT __CLASS_java_util_List_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_List_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_List_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_List +#define XMLVM_FORWARD_DECL_java_util_List +typedef struct java_util_List java_util_List; +#endif + +void __INIT_java_util_List(); +void __INIT_IMPL_java_util_List(); + +#endif diff --git a/tests/nbody-java/java_util_Locale.c b/tests/nbody-java/java_util_Locale.c new file mode 100644 index 0000000000000..3757e0ca25228 --- /dev/null +++ b/tests/nbody-java/java_util_Locale.c @@ -0,0 +1,1706 @@ +#include "xmlvm.h" +#include "java_io_ObjectStreamField.h" +#include "java_lang_Class.h" +#include "java_lang_Integer.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_Throwable.h" +#include "org_xmlvm_runtime_XMLVMUtil.h" + +#include "java_util_Locale.h" + +#define XMLVM_CURRENT_CLASS_NAME Locale +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Locale + +__TIB_DEFINITION_java_util_Locale __TIB_java_util_Locale = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Locale, // classInitializer + "java.util.Locale", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_Locale), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Locale; +JAVA_OBJECT __CLASS_java_util_Locale_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Locale_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Locale_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_Locale_serialVersionUID; +static JAVA_OBJECT _STATIC_java_util_Locale_defaultLocale; +static JAVA_OBJECT _STATIC_java_util_Locale_CANADA; +static JAVA_OBJECT _STATIC_java_util_Locale_CANADA_FRENCH; +static JAVA_OBJECT _STATIC_java_util_Locale_CHINA; +static JAVA_OBJECT _STATIC_java_util_Locale_CHINESE; +static JAVA_OBJECT _STATIC_java_util_Locale_ENGLISH; +static JAVA_OBJECT _STATIC_java_util_Locale_FRANCE; +static JAVA_OBJECT _STATIC_java_util_Locale_FRENCH; +static JAVA_OBJECT _STATIC_java_util_Locale_GERMAN; +static JAVA_OBJECT _STATIC_java_util_Locale_GERMANY; +static JAVA_OBJECT _STATIC_java_util_Locale_ITALIAN; +static JAVA_OBJECT _STATIC_java_util_Locale_ITALY; +static JAVA_OBJECT _STATIC_java_util_Locale_JAPAN; +static JAVA_OBJECT _STATIC_java_util_Locale_JAPANESE; +static JAVA_OBJECT _STATIC_java_util_Locale_KOREA; +static JAVA_OBJECT _STATIC_java_util_Locale_KOREAN; +static JAVA_OBJECT _STATIC_java_util_Locale_PRC; +static JAVA_OBJECT _STATIC_java_util_Locale_SIMPLIFIED_CHINESE; +static JAVA_OBJECT _STATIC_java_util_Locale_TAIWAN; +static JAVA_OBJECT _STATIC_java_util_Locale_TRADITIONAL_CHINESE; +static JAVA_OBJECT _STATIC_java_util_Locale_UK; +static JAVA_OBJECT _STATIC_java_util_Locale_US; +static JAVA_OBJECT _STATIC_java_util_Locale_ROOT; +static JAVA_OBJECT _STATIC_java_util_Locale_serialPersistentFields; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Locale() +{ + staticInitializerLock(&__TIB_java_util_Locale); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Locale.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Locale.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Locale); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Locale.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Locale.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Locale.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Locale") + __INIT_IMPL_java_util_Locale(); + } +} + +void __INIT_IMPL_java_util_Locale() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_Locale.newInstanceFunc = __NEW_INSTANCE_java_util_Locale; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Locale.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_Locale.vtable[0] = (VTABLE_PTR) &java_util_Locale_clone__; + __TIB_java_util_Locale.vtable[1] = (VTABLE_PTR) &java_util_Locale_equals___java_lang_Object; + __TIB_java_util_Locale.vtable[4] = (VTABLE_PTR) &java_util_Locale_hashCode__; + __TIB_java_util_Locale.vtable[5] = (VTABLE_PTR) &java_util_Locale_toString__; + // Initialize interface information + __TIB_java_util_Locale.numImplementedInterfaces = 2; + __TIB_java_util_Locale.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_Locale.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_Locale.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + // Initialize itable for this class + __TIB_java_util_Locale.itableBegin = &__TIB_java_util_Locale.itable[0]; + + _STATIC_java_util_Locale_serialVersionUID = 9149081749638150636; + _STATIC_java_util_Locale_defaultLocale = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_CANADA = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_CANADA_FRENCH = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_CHINA = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_CHINESE = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_ENGLISH = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_FRANCE = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_FRENCH = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_GERMAN = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_GERMANY = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_ITALIAN = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_ITALY = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_JAPAN = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_JAPANESE = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_KOREA = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_KOREAN = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_PRC = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_SIMPLIFIED_CHINESE = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_TAIWAN = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_TRADITIONAL_CHINESE = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_UK = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_US = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_ROOT = (java_util_Locale*) JAVA_NULL; + _STATIC_java_util_Locale_serialPersistentFields = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_util_Locale.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Locale.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Locale.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Locale.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Locale.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Locale.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Locale.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Locale.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Locale = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Locale); + __TIB_java_util_Locale.clazz = __CLASS_java_util_Locale; + __TIB_java_util_Locale.baseType = JAVA_NULL; + __CLASS_java_util_Locale_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Locale); + __CLASS_java_util_Locale_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Locale_1ARRAY); + __CLASS_java_util_Locale_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Locale_2ARRAY); + java_util_Locale___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Locale] + //XMLVM_END_WRAPPER + + __TIB_java_util_Locale.classInitialized = 1; +} + +void __DELETE_java_util_Locale(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Locale] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Locale(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_Locale*) me)->fields.java_util_Locale.countryCode_ = (java_lang_String*) JAVA_NULL; + ((java_util_Locale*) me)->fields.java_util_Locale.languageCode_ = (java_lang_String*) JAVA_NULL; + ((java_util_Locale*) me)->fields.java_util_Locale.variantCode_ = (java_lang_String*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Locale] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Locale() +{ XMLVM_CLASS_INIT(java_util_Locale) +java_util_Locale* me = (java_util_Locale*) XMLVM_MALLOC(sizeof(java_util_Locale)); + me->tib = &__TIB_java_util_Locale; + __INIT_INSTANCE_MEMBERS_java_util_Locale(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Locale] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Locale() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_util_Locale_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_serialVersionUID; +} + +void java_util_Locale_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_serialVersionUID = v; +} + +JAVA_OBJECT java_util_Locale_GET_defaultLocale() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_defaultLocale; +} + +void java_util_Locale_PUT_defaultLocale(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_defaultLocale = v; +} + +JAVA_OBJECT java_util_Locale_GET_CANADA() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_CANADA; +} + +void java_util_Locale_PUT_CANADA(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_CANADA = v; +} + +JAVA_OBJECT java_util_Locale_GET_CANADA_FRENCH() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_CANADA_FRENCH; +} + +void java_util_Locale_PUT_CANADA_FRENCH(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_CANADA_FRENCH = v; +} + +JAVA_OBJECT java_util_Locale_GET_CHINA() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_CHINA; +} + +void java_util_Locale_PUT_CHINA(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_CHINA = v; +} + +JAVA_OBJECT java_util_Locale_GET_CHINESE() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_CHINESE; +} + +void java_util_Locale_PUT_CHINESE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_CHINESE = v; +} + +JAVA_OBJECT java_util_Locale_GET_ENGLISH() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_ENGLISH; +} + +void java_util_Locale_PUT_ENGLISH(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_ENGLISH = v; +} + +JAVA_OBJECT java_util_Locale_GET_FRANCE() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_FRANCE; +} + +void java_util_Locale_PUT_FRANCE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_FRANCE = v; +} + +JAVA_OBJECT java_util_Locale_GET_FRENCH() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_FRENCH; +} + +void java_util_Locale_PUT_FRENCH(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_FRENCH = v; +} + +JAVA_OBJECT java_util_Locale_GET_GERMAN() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_GERMAN; +} + +void java_util_Locale_PUT_GERMAN(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_GERMAN = v; +} + +JAVA_OBJECT java_util_Locale_GET_GERMANY() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_GERMANY; +} + +void java_util_Locale_PUT_GERMANY(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_GERMANY = v; +} + +JAVA_OBJECT java_util_Locale_GET_ITALIAN() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_ITALIAN; +} + +void java_util_Locale_PUT_ITALIAN(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_ITALIAN = v; +} + +JAVA_OBJECT java_util_Locale_GET_ITALY() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_ITALY; +} + +void java_util_Locale_PUT_ITALY(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_ITALY = v; +} + +JAVA_OBJECT java_util_Locale_GET_JAPAN() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_JAPAN; +} + +void java_util_Locale_PUT_JAPAN(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_JAPAN = v; +} + +JAVA_OBJECT java_util_Locale_GET_JAPANESE() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_JAPANESE; +} + +void java_util_Locale_PUT_JAPANESE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_JAPANESE = v; +} + +JAVA_OBJECT java_util_Locale_GET_KOREA() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_KOREA; +} + +void java_util_Locale_PUT_KOREA(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_KOREA = v; +} + +JAVA_OBJECT java_util_Locale_GET_KOREAN() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_KOREAN; +} + +void java_util_Locale_PUT_KOREAN(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_KOREAN = v; +} + +JAVA_OBJECT java_util_Locale_GET_PRC() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_PRC; +} + +void java_util_Locale_PUT_PRC(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_PRC = v; +} + +JAVA_OBJECT java_util_Locale_GET_SIMPLIFIED_CHINESE() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_SIMPLIFIED_CHINESE; +} + +void java_util_Locale_PUT_SIMPLIFIED_CHINESE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_SIMPLIFIED_CHINESE = v; +} + +JAVA_OBJECT java_util_Locale_GET_TAIWAN() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_TAIWAN; +} + +void java_util_Locale_PUT_TAIWAN(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_TAIWAN = v; +} + +JAVA_OBJECT java_util_Locale_GET_TRADITIONAL_CHINESE() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_TRADITIONAL_CHINESE; +} + +void java_util_Locale_PUT_TRADITIONAL_CHINESE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_TRADITIONAL_CHINESE = v; +} + +JAVA_OBJECT java_util_Locale_GET_UK() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_UK; +} + +void java_util_Locale_PUT_UK(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_UK = v; +} + +JAVA_OBJECT java_util_Locale_GET_US() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_US; +} + +void java_util_Locale_PUT_US(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_US = v; +} + +JAVA_OBJECT java_util_Locale_GET_ROOT() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_ROOT; +} + +void java_util_Locale_PUT_ROOT(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_ROOT = v; +} + +JAVA_OBJECT java_util_Locale_GET_serialPersistentFields() +{ + XMLVM_CLASS_INIT(java_util_Locale) + return _STATIC_java_util_Locale_serialPersistentFields; +} + +void java_util_Locale_PUT_serialPersistentFields(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Locale) +_STATIC_java_util_Locale_serialPersistentFields = v; +} + +//XMLVM_NATIVE[void java_util_Locale_initNativeLayer__()] + +void java_util_Locale___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale___INIT___] + XMLVM_ENTER_METHOD("java.util.Locale", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 190) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Locale.java", 191) + // "en" + _r0.o = xmlvm_create_java_string_from_pool(19); + XMLVM_CHECK_NPE(1) + ((java_util_Locale*) _r1.o)->fields.java_util_Locale.languageCode_ = _r0.o; + XMLVM_SOURCE_POSITION("Locale.java", 192) + // "US" + _r0.o = xmlvm_create_java_string_from_pool(20); + XMLVM_CHECK_NPE(1) + ((java_util_Locale*) _r1.o)->fields.java_util_Locale.countryCode_ = _r0.o; + XMLVM_SOURCE_POSITION("Locale.java", 193) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(1) + ((java_util_Locale*) _r1.o)->fields.java_util_Locale.variantCode_ = _r0.o; + XMLVM_SOURCE_POSITION("Locale.java", 194) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Locale___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.util.Locale", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("Locale.java", 203) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(2) + java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String(_r2.o, _r3.o, _r1.o, _r1.o); + XMLVM_SOURCE_POSITION("Locale.java", 204) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Locale___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Locale", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Locale.java", 215) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(1) + java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String(_r1.o, _r2.o, _r3.o, _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 216) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Locale", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r5.o = n3; + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("Locale.java", 232) + XMLVM_CHECK_NPE(2) + java_lang_Object___INIT___(_r2.o); + XMLVM_SOURCE_POSITION("Locale.java", 233) + if (_r3.o == JAVA_NULL) goto label11; + if (_r4.o == JAVA_NULL) goto label11; + if (_r5.o != JAVA_NULL) goto label17; + label11:; + XMLVM_SOURCE_POSITION("Locale.java", 234) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label17:; + XMLVM_SOURCE_POSITION("Locale.java", 236) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o); + if (_r0.i != 0) goto label40; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r4.o)->tib->vtable[8])(_r4.o); + if (_r0.i != 0) goto label40; + XMLVM_SOURCE_POSITION("Locale.java", 237) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(2) + ((java_util_Locale*) _r2.o)->fields.java_util_Locale.languageCode_ = _r1.o; + XMLVM_SOURCE_POSITION("Locale.java", 238) + // "" + _r0.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(2) + ((java_util_Locale*) _r2.o)->fields.java_util_Locale.countryCode_ = _r1.o; + XMLVM_SOURCE_POSITION("Locale.java", 239) + XMLVM_CHECK_NPE(2) + ((java_util_Locale*) _r2.o)->fields.java_util_Locale.variantCode_ = _r5.o; + label39:; + XMLVM_SOURCE_POSITION("Locale.java", 262) + XMLVM_EXIT_METHOD() + return; + label40:; + XMLVM_SOURCE_POSITION("Locale.java", 259) + XMLVM_CHECK_NPE(2) + ((java_util_Locale*) _r2.o)->fields.java_util_Locale.languageCode_ = _r3.o; + XMLVM_SOURCE_POSITION("Locale.java", 260) + XMLVM_CHECK_NPE(2) + ((java_util_Locale*) _r2.o)->fields.java_util_Locale.countryCode_ = _r4.o; + XMLVM_SOURCE_POSITION("Locale.java", 261) + XMLVM_CHECK_NPE(2) + ((java_util_Locale*) _r2.o)->fields.java_util_Locale.variantCode_ = _r5.o; + goto label39; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_clone__] + XMLVM_ENTER_METHOD("java.util.Locale", "clone", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_TRY_BEGIN(w406aaac33b1b2) + // Begin try + XMLVM_SOURCE_POSITION("Locale.java", 274) + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_Object_clone__(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w406aaac33b1b2) + XMLVM_CATCH_END(w406aaac33b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w406aaac33b1b2) + label4:; + XMLVM_SOURCE_POSITION("Locale.java", 276) + XMLVM_EXIT_METHOD() + return _r1.o; + label5:; + XMLVM_SOURCE_POSITION("Locale.java", 275) + java_lang_Thread* curThread_w406aaac33b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w406aaac33b1b8->fields.java_lang_Thread.xmlvmException_; + _r1.o = JAVA_NULL; + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Locale_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.Locale", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("Locale.java", 293) + if (_r7.o != _r6.o) goto label6; + _r2 = _r5; + label5:; + XMLVM_SOURCE_POSITION("Locale.java", 294) + XMLVM_SOURCE_POSITION("Locale.java", 302) + XMLVM_EXIT_METHOD() + return _r2.i; + label6:; + XMLVM_SOURCE_POSITION("Locale.java", 296) + XMLVM_CLASS_INIT(java_util_Locale) + _r2.i = XMLVM_ISA(_r7.o, __CLASS_java_util_Locale); + if (_r2.i == 0) goto label48; + XMLVM_SOURCE_POSITION("Locale.java", 297) + _r0 = _r7; + _r0.o = _r0.o; + _r1 = _r0; + XMLVM_SOURCE_POSITION("Locale.java", 298) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_Locale*) _r6.o)->fields.java_util_Locale.languageCode_; + XMLVM_CHECK_NPE(1) + _r3.o = ((java_util_Locale*) _r1.o)->fields.java_util_Locale.languageCode_; + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r3.o); + if (_r2.i == 0) goto label46; + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_Locale*) _r6.o)->fields.java_util_Locale.countryCode_; + XMLVM_CHECK_NPE(1) + _r3.o = ((java_util_Locale*) _r1.o)->fields.java_util_Locale.countryCode_; + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r3.o); + if (_r2.i == 0) goto label46; + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_Locale*) _r6.o)->fields.java_util_Locale.variantCode_; + XMLVM_CHECK_NPE(1) + _r3.o = ((java_util_Locale*) _r1.o)->fields.java_util_Locale.variantCode_; + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[1])(_r2.o, _r3.o); + if (_r2.i == 0) goto label46; + _r2 = _r5; + goto label5; + label46:; + _r2 = _r4; + goto label5; + label48:; + _r2 = _r4; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getAvailableLocales__() +{ + XMLVM_CLASS_INIT(java_util_Locale) + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getAvailableLocales__] + XMLVM_ENTER_METHOD("java.util.Locale", "getAvailableLocales", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Locale.java", 312) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 313) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getCountry__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getCountry__] + XMLVM_ENTER_METHOD("java.util.Locale", "getCountry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 329) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_Locale*) _r1.o)->fields.java_util_Locale.countryCode_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDefault__() +{ + XMLVM_CLASS_INIT(java_util_Locale) + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDefault__] + XMLVM_ENTER_METHOD("java.util.Locale", "getDefault", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Locale.java", 338) + _r0.o = java_util_Locale_GET_defaultLocale(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayCountry__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayCountry__] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayCountry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 349) + _r0.o = java_util_Locale_getDefault__(); + XMLVM_CHECK_NPE(1) + _r0.o = java_util_Locale_getDisplayCountry___java_util_Locale(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayCountry___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayCountry___java_util_Locale] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayCountry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Locale.java", 362) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 363) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayLanguage__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayLanguage__] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayLanguage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 375) + _r0.o = java_util_Locale_getDefault__(); + XMLVM_CHECK_NPE(1) + _r0.o = java_util_Locale_getDisplayLanguage___java_util_Locale(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayLanguage___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayLanguage___java_util_Locale] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayLanguage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Locale.java", 388) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 389) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayName__] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 400) + _r0.o = java_util_Locale_getDefault__(); + XMLVM_CHECK_NPE(1) + _r0.o = java_util_Locale_getDisplayName___java_util_Locale(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayName___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayName___java_util_Locale] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + _r3.i = 1; + // " (" + _r4.o = xmlvm_create_java_string_from_pool(22); + XMLVM_SOURCE_POSITION("Locale.java", 412) + _r1.i = 0; + XMLVM_SOURCE_POSITION("Locale.java", 413) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 414) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Locale*) _r5.o)->fields.java_util_Locale.languageCode_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r2.i <= 0) goto label26; + XMLVM_SOURCE_POSITION("Locale.java", 415) + XMLVM_CHECK_NPE(5) + _r2.o = java_util_Locale_getDisplayLanguage___java_util_Locale(_r5.o, _r6.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("Locale.java", 416) + _r1.i = _r1.i + 1; + label26:; + XMLVM_SOURCE_POSITION("Locale.java", 418) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Locale*) _r5.o)->fields.java_util_Locale.countryCode_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r2.i <= 0) goto label50; + XMLVM_SOURCE_POSITION("Locale.java", 419) + if (_r1.i != _r3.i) goto label41; + XMLVM_SOURCE_POSITION("Locale.java", 420) + // " (" + _r2.o = xmlvm_create_java_string_from_pool(22); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r4.o); + label41:; + XMLVM_SOURCE_POSITION("Locale.java", 422) + XMLVM_CHECK_NPE(5) + _r2.o = java_util_Locale_getDisplayCountry___java_util_Locale(_r5.o, _r6.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("Locale.java", 423) + _r1.i = _r1.i + 1; + label50:; + XMLVM_SOURCE_POSITION("Locale.java", 425) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_Locale*) _r5.o)->fields.java_util_Locale.variantCode_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(2) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r2.o)->tib->vtable[8])(_r2.o); + if (_r2.i <= 0) goto label74; + XMLVM_SOURCE_POSITION("Locale.java", 426) + if (_r1.i != _r3.i) goto label86; + XMLVM_SOURCE_POSITION("Locale.java", 427) + // " (" + _r2.o = xmlvm_create_java_string_from_pool(22); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r4.o); + label65:; + XMLVM_SOURCE_POSITION("Locale.java", 431) + XMLVM_CHECK_NPE(5) + _r2.o = java_util_Locale_getDisplayVariant___java_util_Locale(_r5.o, _r6.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("Locale.java", 432) + _r1.i = _r1.i + 1; + label74:; + XMLVM_SOURCE_POSITION("Locale.java", 434) + if (_r1.i <= _r3.i) goto label81; + XMLVM_SOURCE_POSITION("Locale.java", 435) + // ")" + _r2.o = xmlvm_create_java_string_from_pool(23); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + label81:; + XMLVM_SOURCE_POSITION("Locale.java", 437) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r2.o; + label86:; + XMLVM_SOURCE_POSITION("Locale.java", 428) + _r2.i = 2; + if (_r1.i != _r2.i) goto label65; + XMLVM_SOURCE_POSITION("Locale.java", 429) + // "," + _r2.o = xmlvm_create_java_string_from_pool(24); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r2.o); + goto label65; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayVariant__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayVariant__] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayVariant", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 448) + _r0.o = java_util_Locale_getDefault__(); + XMLVM_CHECK_NPE(1) + _r0.o = java_util_Locale_getDisplayVariant___java_util_Locale(_r1.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getDisplayVariant___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getDisplayVariant___java_util_Locale] + XMLVM_ENTER_METHOD("java.util.Locale", "getDisplayVariant", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Locale.java", 461) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 462) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getISO3Country__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getISO3Country__] + XMLVM_ENTER_METHOD("java.util.Locale", "getISO3Country", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 475) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 476) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getISO3Language__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getISO3Language__] + XMLVM_ENTER_METHOD("java.util.Locale", "getISO3Language", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 489) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 490) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getISOCountries__() +{ + XMLVM_CLASS_INIT(java_util_Locale) + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getISOCountries__] + XMLVM_ENTER_METHOD("java.util.Locale", "getISOCountries", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Locale.java", 501) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 502) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getISOLanguages__() +{ + XMLVM_CLASS_INIT(java_util_Locale) + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getISOLanguages__] + XMLVM_ENTER_METHOD("java.util.Locale", "getISOLanguages", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Locale.java", 513) + org_xmlvm_runtime_XMLVMUtil_notImplemented__(); + XMLVM_SOURCE_POSITION("Locale.java", 514) + _r0.o = JAVA_NULL; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getLanguage__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getLanguage__] + XMLVM_ENTER_METHOD("java.util.Locale", "getLanguage", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 525) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_Locale*) _r1.o)->fields.java_util_Locale.languageCode_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_getVariant__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_getVariant__] + XMLVM_ENTER_METHOD("java.util.Locale", "getVariant", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 535) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_Locale*) _r1.o)->fields.java_util_Locale.variantCode_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_Locale_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_hashCode__] + XMLVM_ENTER_METHOD("java.util.Locale", "hashCode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Locale.java", 547) + java_lang_Object_acquireLockRecursive__(_r2.o); + XMLVM_TRY_BEGIN(w406aaac52b1b4) + // Begin try + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Locale*) _r2.o)->fields.java_util_Locale.countryCode_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[4])(_r0.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Locale*) _r2.o)->fields.java_util_Locale.languageCode_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[4])(_r1.o); + _r0.i = _r0.i + _r1.i; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Locale*) _r2.o)->fields.java_util_Locale.variantCode_; + //java_lang_String_hashCode__[4] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[4])(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w406aaac52b1b4) + XMLVM_CATCH_SPECIFIC(w406aaac52b1b4,java_lang_Object,23) + XMLVM_CATCH_END(w406aaac52b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w406aaac52b1b4) + _r0.i = _r0.i + _r1.i; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_EXIT_METHOD() + return _r0.i; + label23:; + java_lang_Thread* curThread_w406aaac52b1b9 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w406aaac52b1b9->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r2.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Locale_setDefault___java_util_Locale(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(java_util_Locale) + //XMLVM_BEGIN_WRAPPER[java_util_Locale_setDefault___java_util_Locale] + XMLVM_ENTER_METHOD("java.util.Locale", "setDefault", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Locale.java", 561) + XMLVM_CLASS_INIT(java_util_Locale) + _r0.o = __CLASS_java_util_Locale; + java_lang_Object_acquireLockRecursive__(_r0.o); + if (_r2.o == JAVA_NULL) goto label9; + XMLVM_TRY_BEGIN(w406aaac53b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Locale.java", 566) + java_util_Locale_PUT_defaultLocale( _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w406aaac53b1b6) + XMLVM_CATCH_SPECIFIC(w406aaac53b1b6,java_lang_Object,15) + XMLVM_CATCH_END(w406aaac53b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w406aaac53b1b6) + XMLVM_SOURCE_POSITION("Locale.java", 570) + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_EXIT_METHOD() + return; + label9:; + XMLVM_TRY_BEGIN(w406aaac53b1c11) + // Begin try + XMLVM_SOURCE_POSITION("Locale.java", 568) + _r1.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(1) + java_lang_NullPointerException___INIT___(_r1.o); + XMLVM_THROW_CUSTOM(_r1.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w406aaac53b1c11) + XMLVM_CATCH_SPECIFIC(w406aaac53b1c11,java_lang_Object,15) + XMLVM_CATCH_END(w406aaac53b1c11) + XMLVM_RESTORE_EXCEPTION_ENV(w406aaac53b1c11) + label15:; + java_lang_Thread* curThread_w406aaac53b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w406aaac53b1c13->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r0.o); + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Locale_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_toString__] + XMLVM_ENTER_METHOD("java.util.Locale", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + _r2.i = 95; + XMLVM_SOURCE_POSITION("Locale.java", 587) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 588) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.languageCode_; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Locale.java", 589) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.countryCode_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r1.i <= 0) goto label28; + XMLVM_SOURCE_POSITION("Locale.java", 590) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + XMLVM_SOURCE_POSITION("Locale.java", 591) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.countryCode_; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label28:; + XMLVM_SOURCE_POSITION("Locale.java", 593) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.variantCode_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r1.i <= 0) goto label60; + XMLVM_CHECK_NPE(0) + _r1.i = java_lang_AbstractStringBuilder_length__(_r0.o); + if (_r1.i <= 0) goto label60; + XMLVM_SOURCE_POSITION("Locale.java", 594) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.countryCode_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r1.i != 0) goto label65; + XMLVM_SOURCE_POSITION("Locale.java", 595) + // "__" + _r1.o = xmlvm_create_java_string_from_pool(25); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label55:; + XMLVM_SOURCE_POSITION("Locale.java", 599) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.variantCode_; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + label60:; + XMLVM_SOURCE_POSITION("Locale.java", 601) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r1.o; + label65:; + XMLVM_SOURCE_POSITION("Locale.java", 597) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + goto label55; + //XMLVM_END_WRAPPER +} + +void java_util_Locale_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.Locale", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Locale.java", 611) + + + // Red class access removed: java.io.ObjectOutputStream::putFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Locale.java", 612) + // "country" + _r1.o = xmlvm_create_java_string_from_pool(26); + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.countryCode_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Locale.java", 613) + // "hashcode" + _r1.o = xmlvm_create_java_string_from_pool(27); + _r2.i = -1; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Locale.java", 614) + // "language" + _r1.o = xmlvm_create_java_string_from_pool(28); + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.languageCode_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Locale.java", 615) + // "variant" + _r1.o = xmlvm_create_java_string_from_pool(29); + XMLVM_CHECK_NPE(3) + _r2.o = ((java_util_Locale*) _r3.o)->fields.java_util_Locale.variantCode_; + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Locale.java", 616) + + + // Red class access removed: java.io.ObjectOutputStream::writeFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Locale.java", 617) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Locale_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.util.Locale", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + // "" + _r3.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("Locale.java", 621) + + + // Red class access removed: java.io.ObjectInputStream::readFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Locale.java", 622) + // "country" + _r1.o = xmlvm_create_java_string_from_pool(26); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = _r1.o; + XMLVM_CHECK_NPE(4) + ((java_util_Locale*) _r4.o)->fields.java_util_Locale.countryCode_ = _r1.o; + XMLVM_SOURCE_POSITION("Locale.java", 623) + // "language" + _r1.o = xmlvm_create_java_string_from_pool(28); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = _r1.o; + XMLVM_CHECK_NPE(4) + ((java_util_Locale*) _r4.o)->fields.java_util_Locale.languageCode_ = _r1.o; + XMLVM_SOURCE_POSITION("Locale.java", 624) + // "variant" + _r1.o = xmlvm_create_java_string_from_pool(29); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = _r1.o; + XMLVM_CHECK_NPE(4) + ((java_util_Locale*) _r4.o)->fields.java_util_Locale.variantCode_ = _r1.o; + XMLVM_SOURCE_POSITION("Locale.java", 625) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Locale___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_util_Locale___CLINIT___] + XMLVM_ENTER_METHOD("java.util.Locale", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + // "fr" + _r2.o = xmlvm_create_java_string_from_pool(30); + // "CN" + _r6.o = xmlvm_create_java_string_from_pool(31); + // "en" + _r5.o = xmlvm_create_java_string_from_pool(19); + // "zh" + _r4.o = xmlvm_create_java_string_from_pool(32); + // "" + _r3.o = xmlvm_create_java_string_from_pool(21); + XMLVM_SOURCE_POSITION("Locale.java", 53) + java_util_Locale_initNativeLayer__(); + XMLVM_SOURCE_POSITION("Locale.java", 59) + _r0.o = __NEW_java_util_Locale(); + // "en" + _r1.o = xmlvm_create_java_string_from_pool(19); + // "CA" + _r1.o = xmlvm_create_java_string_from_pool(33); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r5.o, _r1.o); + java_util_Locale_PUT_CANADA( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 64) + _r0.o = __NEW_java_util_Locale(); + // "fr" + _r1.o = xmlvm_create_java_string_from_pool(30); + // "CA" + _r1.o = xmlvm_create_java_string_from_pool(33); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r2.o, _r1.o); + java_util_Locale_PUT_CANADA_FRENCH( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 69) + _r0.o = __NEW_java_util_Locale(); + // "zh" + _r1.o = xmlvm_create_java_string_from_pool(32); + // "CN" + _r1.o = xmlvm_create_java_string_from_pool(31); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r4.o, _r6.o); + java_util_Locale_PUT_CHINA( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 74) + _r0.o = __NEW_java_util_Locale(); + // "zh" + _r1.o = xmlvm_create_java_string_from_pool(32); + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r4.o, _r3.o); + java_util_Locale_PUT_CHINESE( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 79) + _r0.o = __NEW_java_util_Locale(); + // "en" + _r1.o = xmlvm_create_java_string_from_pool(19); + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r5.o, _r3.o); + java_util_Locale_PUT_ENGLISH( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 84) + _r0.o = __NEW_java_util_Locale(); + // "fr" + _r1.o = xmlvm_create_java_string_from_pool(30); + // "FR" + _r1.o = xmlvm_create_java_string_from_pool(34); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r2.o, _r1.o); + java_util_Locale_PUT_FRANCE( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 89) + _r0.o = __NEW_java_util_Locale(); + // "fr" + _r1.o = xmlvm_create_java_string_from_pool(30); + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r2.o, _r3.o); + java_util_Locale_PUT_FRENCH( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 94) + _r0.o = __NEW_java_util_Locale(); + // "de" + _r1.o = xmlvm_create_java_string_from_pool(35); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r3.o); + java_util_Locale_PUT_GERMAN( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 99) + _r0.o = __NEW_java_util_Locale(); + // "de" + _r1.o = xmlvm_create_java_string_from_pool(35); + // "DE" + _r2.o = xmlvm_create_java_string_from_pool(36); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + java_util_Locale_PUT_GERMANY( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 104) + _r0.o = __NEW_java_util_Locale(); + // "it" + _r1.o = xmlvm_create_java_string_from_pool(37); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r3.o); + java_util_Locale_PUT_ITALIAN( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 109) + _r0.o = __NEW_java_util_Locale(); + // "it" + _r1.o = xmlvm_create_java_string_from_pool(37); + // "IT" + _r2.o = xmlvm_create_java_string_from_pool(38); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + java_util_Locale_PUT_ITALY( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 114) + _r0.o = __NEW_java_util_Locale(); + // "ja" + _r1.o = xmlvm_create_java_string_from_pool(39); + // "JP" + _r2.o = xmlvm_create_java_string_from_pool(40); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + java_util_Locale_PUT_JAPAN( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 119) + _r0.o = __NEW_java_util_Locale(); + // "ja" + _r1.o = xmlvm_create_java_string_from_pool(39); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r3.o); + java_util_Locale_PUT_JAPANESE( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 124) + _r0.o = __NEW_java_util_Locale(); + // "ko" + _r1.o = xmlvm_create_java_string_from_pool(41); + // "KR" + _r2.o = xmlvm_create_java_string_from_pool(42); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + java_util_Locale_PUT_KOREA( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 129) + _r0.o = __NEW_java_util_Locale(); + // "ko" + _r1.o = xmlvm_create_java_string_from_pool(41); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r3.o); + java_util_Locale_PUT_KOREAN( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 134) + _r0.o = __NEW_java_util_Locale(); + // "zh" + _r1.o = xmlvm_create_java_string_from_pool(32); + // "CN" + _r1.o = xmlvm_create_java_string_from_pool(31); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r4.o, _r6.o); + java_util_Locale_PUT_PRC( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 139) + _r0.o = __NEW_java_util_Locale(); + // "zh" + _r1.o = xmlvm_create_java_string_from_pool(32); + // "CN" + _r1.o = xmlvm_create_java_string_from_pool(31); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r4.o, _r6.o); + java_util_Locale_PUT_SIMPLIFIED_CHINESE( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 144) + _r0.o = __NEW_java_util_Locale(); + // "zh" + _r1.o = xmlvm_create_java_string_from_pool(32); + // "TW" + _r1.o = xmlvm_create_java_string_from_pool(43); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r4.o, _r1.o); + java_util_Locale_PUT_TAIWAN( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 149) + _r0.o = __NEW_java_util_Locale(); + // "zh" + _r1.o = xmlvm_create_java_string_from_pool(32); + // "TW" + _r1.o = xmlvm_create_java_string_from_pool(43); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r4.o, _r1.o); + java_util_Locale_PUT_TRADITIONAL_CHINESE( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 154) + _r0.o = __NEW_java_util_Locale(); + // "en" + _r1.o = xmlvm_create_java_string_from_pool(19); + // "GB" + _r1.o = xmlvm_create_java_string_from_pool(44); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r5.o, _r1.o); + java_util_Locale_PUT_UK( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 159) + _r0.o = __NEW_java_util_Locale(); + // "en" + _r1.o = xmlvm_create_java_string_from_pool(19); + // "US" + _r1.o = xmlvm_create_java_string_from_pool(20); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String(_r0.o, _r5.o, _r1.o); + java_util_Locale_PUT_US( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 165) + _r0.o = __NEW_java_util_Locale(); + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(0) + java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String(_r0.o, _r3.o, _r3.o, _r3.o); + java_util_Locale_PUT_ROOT( _r0.o); + XMLVM_SOURCE_POSITION("Locale.java", 604) + _r0.i = 4; + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_io_ObjectStreamField, _r0.i); + _r1.i = 0; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "country" + _r3.o = xmlvm_create_java_string_from_pool(26); + XMLVM_CLASS_INIT(java_lang_String) + _r4.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 1; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "hashcode" + _r3.o = xmlvm_create_java_string_from_pool(27); + _r4.o = java_lang_Integer_GET_TYPE(); + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 2; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "language" + _r3.o = xmlvm_create_java_string_from_pool(28); + XMLVM_CLASS_INIT(java_lang_String) + _r4.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 3; + _r2.o = __NEW_java_io_ObjectStreamField(); + // "variant" + _r3.o = xmlvm_create_java_string_from_pool(29); + XMLVM_CLASS_INIT(java_lang_String) + _r4.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + java_util_Locale_PUT_serialPersistentFields( _r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Locale.h b/tests/nbody-java/java_util_Locale.h new file mode 100644 index 0000000000000..3d88d02849e11 --- /dev/null +++ b/tests/nbody-java/java_util_Locale.h @@ -0,0 +1,175 @@ +#ifndef __JAVA_UTIL_LOCALE__ +#define __JAVA_UTIL_LOCALE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Locale 0 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Cloneable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_ObjectStreamField +#define XMLVM_FORWARD_DECL_java_io_ObjectStreamField +XMLVM_FORWARD_DECL(java_io_ObjectStreamField) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMUtil +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMUtil +XMLVM_FORWARD_DECL(org_xmlvm_runtime_XMLVMUtil) +#endif +// Class declarations for java.util.Locale +XMLVM_DEFINE_CLASS(java_util_Locale, 6, XMLVM_ITABLE_SIZE_java_util_Locale) + +extern JAVA_OBJECT __CLASS_java_util_Locale; +extern JAVA_OBJECT __CLASS_java_util_Locale_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Locale_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Locale_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Locale +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Locale \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT countryCode_; \ + JAVA_OBJECT languageCode_; \ + JAVA_OBJECT variantCode_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Locale \ + } java_util_Locale + +struct java_util_Locale { + __TIB_DEFINITION_java_util_Locale* tib; + struct { + __INSTANCE_FIELDS_java_util_Locale; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Locale +#define XMLVM_FORWARD_DECL_java_util_Locale +typedef struct java_util_Locale java_util_Locale; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Locale 6 +#define XMLVM_VTABLE_IDX_java_util_Locale_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_Locale_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_Locale_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_Locale_toString__ 5 + +void __INIT_java_util_Locale(); +void __INIT_IMPL_java_util_Locale(); +void __DELETE_java_util_Locale(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Locale(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Locale(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Locale(); +JAVA_LONG java_util_Locale_GET_serialVersionUID(); +void java_util_Locale_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_util_Locale_GET_defaultLocale(); +void java_util_Locale_PUT_defaultLocale(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_CANADA(); +void java_util_Locale_PUT_CANADA(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_CANADA_FRENCH(); +void java_util_Locale_PUT_CANADA_FRENCH(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_CHINA(); +void java_util_Locale_PUT_CHINA(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_CHINESE(); +void java_util_Locale_PUT_CHINESE(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_ENGLISH(); +void java_util_Locale_PUT_ENGLISH(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_FRANCE(); +void java_util_Locale_PUT_FRANCE(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_FRENCH(); +void java_util_Locale_PUT_FRENCH(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_GERMAN(); +void java_util_Locale_PUT_GERMAN(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_GERMANY(); +void java_util_Locale_PUT_GERMANY(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_ITALIAN(); +void java_util_Locale_PUT_ITALIAN(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_ITALY(); +void java_util_Locale_PUT_ITALY(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_JAPAN(); +void java_util_Locale_PUT_JAPAN(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_JAPANESE(); +void java_util_Locale_PUT_JAPANESE(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_KOREA(); +void java_util_Locale_PUT_KOREA(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_KOREAN(); +void java_util_Locale_PUT_KOREAN(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_PRC(); +void java_util_Locale_PUT_PRC(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_SIMPLIFIED_CHINESE(); +void java_util_Locale_PUT_SIMPLIFIED_CHINESE(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_TAIWAN(); +void java_util_Locale_PUT_TAIWAN(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_TRADITIONAL_CHINESE(); +void java_util_Locale_PUT_TRADITIONAL_CHINESE(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_UK(); +void java_util_Locale_PUT_UK(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_US(); +void java_util_Locale_PUT_US(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_ROOT(); +void java_util_Locale_PUT_ROOT(JAVA_OBJECT v); +JAVA_OBJECT java_util_Locale_GET_serialPersistentFields(); +void java_util_Locale_PUT_serialPersistentFields(JAVA_OBJECT v); +void java_util_Locale_initNativeLayer__(); +void java_util_Locale___INIT___(JAVA_OBJECT me); +void java_util_Locale___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Locale___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +// Vtable index: 0 +JAVA_OBJECT java_util_Locale_clone__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_util_Locale_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Locale_getAvailableLocales__(); +JAVA_OBJECT java_util_Locale_getCountry__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getDefault__(); +JAVA_OBJECT java_util_Locale_getDisplayCountry__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getDisplayCountry___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Locale_getDisplayLanguage__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getDisplayLanguage___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Locale_getDisplayName__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getDisplayName___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Locale_getDisplayVariant__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getDisplayVariant___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Locale_getISO3Country__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getISO3Language__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getISOCountries__(); +JAVA_OBJECT java_util_Locale_getISOLanguages__(); +JAVA_OBJECT java_util_Locale_getLanguage__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Locale_getVariant__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_util_Locale_hashCode__(JAVA_OBJECT me); +void java_util_Locale_setDefault___java_util_Locale(JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT java_util_Locale_toString__(JAVA_OBJECT me); +void java_util_Locale_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Locale_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Locale___CLINIT_(); + +#endif diff --git a/tests/nbody-java/java_util_Map.c b/tests/nbody-java/java_util_Map.c new file mode 100644 index 0000000000000..eacd013ce9b3d --- /dev/null +++ b/tests/nbody-java/java_util_Map.c @@ -0,0 +1,78 @@ +#include "xmlvm.h" +#include "java_util_Collection.h" +#include "java_util_Set.h" + +#include "java_util_Map.h" + +__TIB_DEFINITION_java_util_Map __TIB_java_util_Map = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Map, // classInitializer + "java.util.Map", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Map; +JAVA_OBJECT __CLASS_java_util_Map_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Map_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Map_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Map() +{ + staticInitializerLock(&__TIB_java_util_Map); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Map.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Map.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Map); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Map.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Map.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Map.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Map") + __INIT_IMPL_java_util_Map(); + } +} + +void __INIT_IMPL_java_util_Map() +{ + __TIB_java_util_Map.numInterfaces = 0; + __TIB_java_util_Map.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Map.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Map.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Map.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Map.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Map = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Map); + __TIB_java_util_Map.clazz = __CLASS_java_util_Map; + __TIB_java_util_Map.baseType = JAVA_NULL; + __CLASS_java_util_Map_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Map); + __CLASS_java_util_Map_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Map_1ARRAY); + __CLASS_java_util_Map_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Map_2ARRAY); + + __TIB_java_util_Map.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Map.h b/tests/nbody-java/java_util_Map.h new file mode 100644 index 0000000000000..533fd5867281c --- /dev/null +++ b/tests/nbody-java/java_util_Map.h @@ -0,0 +1,49 @@ +#ifndef __JAVA_UTIL_MAP__ +#define __JAVA_UTIL_MAP__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Map_clear__ 0 +#define XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object 1 +#define XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object 2 +#define XMLVM_ITABLE_IDX_java_util_Map_entrySet__ 3 +#define XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object 4 +#define XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object 5 +#define XMLVM_ITABLE_IDX_java_util_Map_hashCode__ 6 +#define XMLVM_ITABLE_IDX_java_util_Map_isEmpty__ 7 +#define XMLVM_ITABLE_IDX_java_util_Map_keySet__ 8 +#define XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object 10 +#define XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map 9 +#define XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object 11 +#define XMLVM_ITABLE_IDX_java_util_Map_size__ 12 +#define XMLVM_ITABLE_IDX_java_util_Map_values__ 13 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif + +XMLVM_DEFINE_CLASS(java_util_Map, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Map; +extern JAVA_OBJECT __CLASS_java_util_Map_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Map_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Map_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Map +#define XMLVM_FORWARD_DECL_java_util_Map +typedef struct java_util_Map java_util_Map; +#endif + +void __INIT_java_util_Map(); +void __INIT_IMPL_java_util_Map(); + +#endif diff --git a/tests/nbody-java/java_util_MapEntry.c b/tests/nbody-java/java_util_MapEntry.c new file mode 100644 index 0000000000000..fccd17a2dcef3 --- /dev/null +++ b/tests/nbody-java/java_util_MapEntry.c @@ -0,0 +1,444 @@ +#include "xmlvm.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "java_util_MapEntry.h" + +#define XMLVM_CURRENT_CLASS_NAME MapEntry +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_MapEntry + +__TIB_DEFINITION_java_util_MapEntry __TIB_java_util_MapEntry = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_MapEntry, // classInitializer + "java.util.MapEntry", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Map$Entry;Ljava/lang/Cloneable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_MapEntry), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_MapEntry; +JAVA_OBJECT __CLASS_java_util_MapEntry_1ARRAY; +JAVA_OBJECT __CLASS_java_util_MapEntry_2ARRAY; +JAVA_OBJECT __CLASS_java_util_MapEntry_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_MapEntry() +{ + staticInitializerLock(&__TIB_java_util_MapEntry); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_MapEntry.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_MapEntry.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_MapEntry); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_MapEntry.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_MapEntry.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_MapEntry.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.MapEntry") + __INIT_IMPL_java_util_MapEntry(); + } +} + +void __INIT_IMPL_java_util_MapEntry() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_MapEntry.newInstanceFunc = __NEW_INSTANCE_java_util_MapEntry; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_MapEntry.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_MapEntry.vtable[0] = (VTABLE_PTR) &java_util_MapEntry_clone__; + __TIB_java_util_MapEntry.vtable[1] = (VTABLE_PTR) &java_util_MapEntry_equals___java_lang_Object; + __TIB_java_util_MapEntry.vtable[6] = (VTABLE_PTR) &java_util_MapEntry_getKey__; + __TIB_java_util_MapEntry.vtable[7] = (VTABLE_PTR) &java_util_MapEntry_getValue__; + __TIB_java_util_MapEntry.vtable[4] = (VTABLE_PTR) &java_util_MapEntry_hashCode__; + __TIB_java_util_MapEntry.vtable[8] = (VTABLE_PTR) &java_util_MapEntry_setValue___java_lang_Object; + __TIB_java_util_MapEntry.vtable[5] = (VTABLE_PTR) &java_util_MapEntry_toString__; + // Initialize interface information + __TIB_java_util_MapEntry.numImplementedInterfaces = 2; + __TIB_java_util_MapEntry.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_MapEntry.implementedInterfaces[0][0] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_util_Map_Entry) + + __TIB_java_util_MapEntry.implementedInterfaces[0][1] = &__TIB_java_util_Map_Entry; + // Initialize itable for this class + __TIB_java_util_MapEntry.itableBegin = &__TIB_java_util_MapEntry.itable[0]; + __TIB_java_util_MapEntry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_equals___java_lang_Object] = __TIB_java_util_MapEntry.vtable[1]; + __TIB_java_util_MapEntry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__] = __TIB_java_util_MapEntry.vtable[6]; + __TIB_java_util_MapEntry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__] = __TIB_java_util_MapEntry.vtable[7]; + __TIB_java_util_MapEntry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_hashCode__] = __TIB_java_util_MapEntry.vtable[4]; + __TIB_java_util_MapEntry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_setValue___java_lang_Object] = __TIB_java_util_MapEntry.vtable[8]; + + + __TIB_java_util_MapEntry.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_MapEntry.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_MapEntry.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_MapEntry.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_MapEntry.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_MapEntry.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_MapEntry.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_MapEntry.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_MapEntry = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_MapEntry); + __TIB_java_util_MapEntry.clazz = __CLASS_java_util_MapEntry; + __TIB_java_util_MapEntry.baseType = JAVA_NULL; + __CLASS_java_util_MapEntry_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_MapEntry); + __CLASS_java_util_MapEntry_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_MapEntry_1ARRAY); + __CLASS_java_util_MapEntry_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_MapEntry_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_MapEntry] + //XMLVM_END_WRAPPER + + __TIB_java_util_MapEntry.classInitialized = 1; +} + +void __DELETE_java_util_MapEntry(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_MapEntry] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_MapEntry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_MapEntry*) me)->fields.java_util_MapEntry.key_ = (java_lang_Object*) JAVA_NULL; + ((java_util_MapEntry*) me)->fields.java_util_MapEntry.value_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_MapEntry] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_MapEntry() +{ XMLVM_CLASS_INIT(java_util_MapEntry) +java_util_MapEntry* me = (java_util_MapEntry*) XMLVM_MALLOC(sizeof(java_util_MapEntry)); + me->tib = &__TIB_java_util_MapEntry; + __INIT_INSTANCE_MEMBERS_java_util_MapEntry(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_MapEntry] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_MapEntry() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_util_MapEntry___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry___INIT____java_lang_Object] + XMLVM_ENTER_METHOD("java.util.MapEntry", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("MapEntry.java", 32) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("MapEntry.java", 33) + XMLVM_CHECK_NPE(0) + ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.key_ = _r1.o; + XMLVM_SOURCE_POSITION("MapEntry.java", 34) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_MapEntry___INIT____java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry___INIT____java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.MapEntry", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("MapEntry.java", 36) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("MapEntry.java", 37) + XMLVM_CHECK_NPE(0) + ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.key_ = _r1.o; + XMLVM_SOURCE_POSITION("MapEntry.java", 38) + XMLVM_CHECK_NPE(0) + ((java_util_MapEntry*) _r0.o)->fields.java_util_MapEntry.value_ = _r2.o; + XMLVM_SOURCE_POSITION("MapEntry.java", 39) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_MapEntry_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry_clone__] + XMLVM_ENTER_METHOD("java.util.MapEntry", "clone", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + _r1.o = me; + XMLVM_TRY_BEGIN(w6243aaab4b1b2) + // Begin try + XMLVM_SOURCE_POSITION("MapEntry.java", 44) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_Object_clone__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6243aaab4b1b2) + XMLVM_CATCH_END(w6243aaab4b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w6243aaab4b1b2) + label4:; + XMLVM_SOURCE_POSITION("MapEntry.java", 46) + XMLVM_EXIT_METHOD() + return _r0.o; + label5:; + java_lang_Thread* curThread_w6243aaab4b1b7 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w6243aaab4b1b7->fields.java_lang_Thread.xmlvmException_; + _r0.o = JAVA_NULL; + goto label4; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_MapEntry_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.MapEntry", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("MapEntry.java", 52) + if (_r4.o != _r5.o) goto label6; + _r0 = _r3; + label5:; + XMLVM_SOURCE_POSITION("MapEntry.java", 53) + XMLVM_SOURCE_POSITION("MapEntry.java", 62) + XMLVM_EXIT_METHOD() + return _r0.i; + label6:; + XMLVM_SOURCE_POSITION("MapEntry.java", 55) + XMLVM_CLASS_INIT(java_util_Map_Entry) + _r0.i = XMLVM_ISA(_r5.o, __CLASS_java_util_Map_Entry); + if (_r0.i == 0) goto label61; + XMLVM_SOURCE_POSITION("MapEntry.java", 56) + _r5.o = _r5.o; + XMLVM_SOURCE_POSITION("MapEntry.java", 57) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_MapEntry*) _r4.o)->fields.java_util_MapEntry.key_; + if (_r0.o != JAVA_NULL) goto label34; + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r5.o); + if (_r0.o != JAVA_NULL) goto label46; + label22:; + XMLVM_SOURCE_POSITION("MapEntry.java", 59) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_MapEntry*) _r4.o)->fields.java_util_MapEntry.value_; + if (_r0.o != JAVA_NULL) goto label48; + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r5.o); + if (_r0.o != JAVA_NULL) goto label46; + label32:; + _r0 = _r3; + XMLVM_SOURCE_POSITION("MapEntry.java", 60) + goto label5; + label34:; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_MapEntry*) _r4.o)->fields.java_util_MapEntry.key_; + XMLVM_SOURCE_POSITION("MapEntry.java", 58) + XMLVM_CHECK_NPE(5) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r5.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r0.i != 0) goto label22; + label46:; + _r0 = _r2; + goto label5; + label48:; + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_MapEntry*) _r4.o)->fields.java_util_MapEntry.value_; + XMLVM_CHECK_NPE(5) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r5.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r0.i == 0) goto label46; + goto label32; + label61:; + _r0 = _r2; + goto label5; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_MapEntry_getKey__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry_getKey__] + XMLVM_ENTER_METHOD("java.util.MapEntry", "getKey", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("MapEntry.java", 66) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.key_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_MapEntry_getValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry_getValue__] + XMLVM_ENTER_METHOD("java.util.MapEntry", "getValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("MapEntry.java", 70) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_MapEntry_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry_hashCode__] + XMLVM_ENTER_METHOD("java.util.MapEntry", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.o = me; + _r2.i = 0; + XMLVM_SOURCE_POSITION("MapEntry.java", 75) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_MapEntry*) _r3.o)->fields.java_util_MapEntry.key_; + if (_r0.o != JAVA_NULL) goto label13; + _r0 = _r2; + label6:; + XMLVM_SOURCE_POSITION("MapEntry.java", 76) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_MapEntry*) _r3.o)->fields.java_util_MapEntry.value_; + if (_r1.o != JAVA_NULL) goto label20; + _r1 = _r2; + label11:; + _r0.i = _r0.i ^ _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + label13:; + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_MapEntry*) _r3.o)->fields.java_util_MapEntry.key_; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[4])(_r0.o); + goto label6; + label20:; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_MapEntry*) _r3.o)->fields.java_util_MapEntry.value_; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[4])(_r1.o); + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_MapEntry_setValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry_setValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.MapEntry", "setValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("MapEntry.java", 80) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_; + XMLVM_SOURCE_POSITION("MapEntry.java", 81) + XMLVM_CHECK_NPE(1) + ((java_util_MapEntry*) _r1.o)->fields.java_util_MapEntry.value_ = _r2.o; + XMLVM_SOURCE_POSITION("MapEntry.java", 82) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_MapEntry_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_MapEntry_toString__] + XMLVM_ENTER_METHOD("java.util.MapEntry", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("MapEntry.java", 87) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.key_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r1.o); + // "=" + _r1.o = xmlvm_create_java_string_from_pool(648); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_MapEntry*) _r2.o)->fields.java_util_MapEntry.value_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_MapEntry.h b/tests/nbody-java/java_util_MapEntry.h new file mode 100644 index 0000000000000..f27c6c112e977 --- /dev/null +++ b/tests/nbody-java/java_util_MapEntry.h @@ -0,0 +1,85 @@ +#ifndef __JAVA_UTIL_MAPENTRY__ +#define __JAVA_UTIL_MAPENTRY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_MapEntry 5 +// Implemented interfaces: +#include "java_lang_Cloneable.h" +#include "java_util_Map_Entry.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for java.util.MapEntry +XMLVM_DEFINE_CLASS(java_util_MapEntry, 9, XMLVM_ITABLE_SIZE_java_util_MapEntry) + +extern JAVA_OBJECT __CLASS_java_util_MapEntry; +extern JAVA_OBJECT __CLASS_java_util_MapEntry_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_MapEntry_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_MapEntry_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_MapEntry +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_MapEntry \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT key_; \ + JAVA_OBJECT value_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_MapEntry \ + } java_util_MapEntry + +struct java_util_MapEntry { + __TIB_DEFINITION_java_util_MapEntry* tib; + struct { + __INSTANCE_FIELDS_java_util_MapEntry; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_MapEntry +#define XMLVM_FORWARD_DECL_java_util_MapEntry +typedef struct java_util_MapEntry java_util_MapEntry; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_MapEntry 9 +#define XMLVM_VTABLE_IDX_java_util_MapEntry_clone__ 0 +#define XMLVM_VTABLE_IDX_java_util_MapEntry_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_MapEntry_getKey__ 6 +#define XMLVM_VTABLE_IDX_java_util_MapEntry_getValue__ 7 +#define XMLVM_VTABLE_IDX_java_util_MapEntry_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_MapEntry_setValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_MapEntry_toString__ 5 + +void __INIT_java_util_MapEntry(); +void __INIT_IMPL_java_util_MapEntry(); +void __DELETE_java_util_MapEntry(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_MapEntry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_MapEntry(); +JAVA_OBJECT __NEW_INSTANCE_java_util_MapEntry(); +void java_util_MapEntry___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_MapEntry___INIT____java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 0 +JAVA_OBJECT java_util_MapEntry_clone__(JAVA_OBJECT me); +// Vtable index: 1 +JAVA_BOOLEAN java_util_MapEntry_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +JAVA_OBJECT java_util_MapEntry_getKey__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_util_MapEntry_getValue__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_util_MapEntry_hashCode__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_OBJECT java_util_MapEntry_setValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT java_util_MapEntry_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/java_util_Map_Entry.c b/tests/nbody-java/java_util_Map_Entry.c new file mode 100644 index 0000000000000..2f5320e834cd1 --- /dev/null +++ b/tests/nbody-java/java_util_Map_Entry.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_util_Map_Entry.h" + +__TIB_DEFINITION_java_util_Map_Entry __TIB_java_util_Map_Entry = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Map_Entry, // classInitializer + "java.util.Map$Entry", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Map_Entry; +JAVA_OBJECT __CLASS_java_util_Map_Entry_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Map_Entry_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Map_Entry_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Map_Entry() +{ + staticInitializerLock(&__TIB_java_util_Map_Entry); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Map_Entry.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Map_Entry.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Map_Entry); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Map_Entry.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Map_Entry.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Map_Entry.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Map$Entry") + __INIT_IMPL_java_util_Map_Entry(); + } +} + +void __INIT_IMPL_java_util_Map_Entry() +{ + __TIB_java_util_Map_Entry.numInterfaces = 0; + __TIB_java_util_Map_Entry.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Map_Entry.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Map_Entry.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Map_Entry.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Map_Entry.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Map_Entry = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Map_Entry); + __TIB_java_util_Map_Entry.clazz = __CLASS_java_util_Map_Entry; + __TIB_java_util_Map_Entry.baseType = JAVA_NULL; + __CLASS_java_util_Map_Entry_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Map_Entry); + __CLASS_java_util_Map_Entry_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Map_Entry_1ARRAY); + __CLASS_java_util_Map_Entry_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Map_Entry_2ARRAY); + + __TIB_java_util_Map_Entry.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Map_Entry.h b/tests/nbody-java/java_util_Map_Entry.h new file mode 100644 index 0000000000000..27e5b1691b155 --- /dev/null +++ b/tests/nbody-java/java_util_Map_Entry.h @@ -0,0 +1,32 @@ +#ifndef __JAVA_UTIL_MAP_ENTRY__ +#define __JAVA_UTIL_MAP_ENTRY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Map_Entry_equals___java_lang_Object 0 +#define XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__ 1 +#define XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__ 2 +#define XMLVM_ITABLE_IDX_java_util_Map_Entry_hashCode__ 3 +#define XMLVM_ITABLE_IDX_java_util_Map_Entry_setValue___java_lang_Object 4 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_util_Map_Entry, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Map_Entry; +extern JAVA_OBJECT __CLASS_java_util_Map_Entry_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Map_Entry_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Map_Entry_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Map_Entry +#define XMLVM_FORWARD_DECL_java_util_Map_Entry +typedef struct java_util_Map_Entry java_util_Map_Entry; +#endif + +void __INIT_java_util_Map_Entry(); +void __INIT_IMPL_java_util_Map_Entry(); + +#endif diff --git a/tests/nbody-java/java_util_Properties.c b/tests/nbody-java/java_util_Properties.c new file mode 100644 index 0000000000000..f9ac47fe2b349 --- /dev/null +++ b/tests/nbody-java/java_util_Properties.c @@ -0,0 +1,2783 @@ +#include "xmlvm.h" +#include "java_io_IOException.h" +#include "java_io_OutputStream.h" +#include "java_io_PrintStream.h" +#include "java_lang_Character.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_lang_Throwable.h" +#include "java_nio_charset_Charset.h" +#include "java_security_AccessController.h" +#include "java_util_Collections.h" +#include "java_util_Enumeration.h" +#include "java_util_Iterator.h" +#include "java_util_Map_Entry.h" +#include "java_util_Set.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" +#include "org_apache_harmony_luni_util_PriviAction.h" + +#include "java_util_Properties.h" + +#define XMLVM_CURRENT_CLASS_NAME Properties +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_Properties + +__TIB_DEFINITION_java_util_Properties __TIB_java_util_Properties = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Properties, // classInitializer + "java.util.Properties", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/Hashtable;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_Hashtable, // extends + sizeof(java_util_Properties), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_Properties; +JAVA_OBJECT __CLASS_java_util_Properties_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Properties_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Properties_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_Properties_serialVersionUID; +static JAVA_OBJECT _STATIC_java_util_Properties_PROP_DTD_NAME; +static JAVA_OBJECT _STATIC_java_util_Properties_PROP_DTD; +static JAVA_INT _STATIC_java_util_Properties_NONE; +static JAVA_INT _STATIC_java_util_Properties_SLASH; +static JAVA_INT _STATIC_java_util_Properties_UNICODE; +static JAVA_INT _STATIC_java_util_Properties_CONTINUE; +static JAVA_INT _STATIC_java_util_Properties_KEY_DONE; +static JAVA_INT _STATIC_java_util_Properties_IGNORE; +static JAVA_OBJECT _STATIC_java_util_Properties_lineSeparator; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_Properties() +{ + staticInitializerLock(&__TIB_java_util_Properties); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Properties.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Properties.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Properties); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Properties.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Properties.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Properties.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Properties") + __INIT_IMPL_java_util_Properties(); + } +} + +void __INIT_IMPL_java_util_Properties() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_Hashtable) + __TIB_java_util_Properties.newInstanceFunc = __NEW_INSTANCE_java_util_Properties; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_Properties.vtable, __TIB_java_util_Hashtable.vtable, sizeof(__TIB_java_util_Hashtable.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_java_util_Properties.numImplementedInterfaces = 3; + __TIB_java_util_Properties.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_Properties.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_java_util_Properties.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + + XMLVM_CLASS_INIT(java_util_Map) + + __TIB_java_util_Properties.implementedInterfaces[0][2] = &__TIB_java_util_Map; + // Initialize itable for this class + __TIB_java_util_Properties.itableBegin = &__TIB_java_util_Properties.itable[0]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_clear__] = __TIB_java_util_Properties.vtable[13]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object] = __TIB_java_util_Properties.vtable[14]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object] = __TIB_java_util_Properties.vtable[15]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_entrySet__] = __TIB_java_util_Properties.vtable[16]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object] = __TIB_java_util_Properties.vtable[1]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object] = __TIB_java_util_Properties.vtable[7]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_hashCode__] = __TIB_java_util_Properties.vtable[4]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__] = __TIB_java_util_Properties.vtable[8]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_keySet__] = __TIB_java_util_Properties.vtable[17]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map] = __TIB_java_util_Properties.vtable[18]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object] = __TIB_java_util_Properties.vtable[10]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object] = __TIB_java_util_Properties.vtable[11]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_size__] = __TIB_java_util_Properties.vtable[12]; + __TIB_java_util_Properties.itable[XMLVM_ITABLE_IDX_java_util_Map_values__] = __TIB_java_util_Properties.vtable[19]; + + _STATIC_java_util_Properties_serialVersionUID = 4112578634029874840; + _STATIC_java_util_Properties_PROP_DTD_NAME = (java_lang_String*) xmlvm_create_java_string_from_pool(102); + _STATIC_java_util_Properties_PROP_DTD = (java_lang_String*) xmlvm_create_java_string_from_pool(103); + _STATIC_java_util_Properties_NONE = 0; + _STATIC_java_util_Properties_SLASH = 1; + _STATIC_java_util_Properties_UNICODE = 2; + _STATIC_java_util_Properties_CONTINUE = 3; + _STATIC_java_util_Properties_KEY_DONE = 4; + _STATIC_java_util_Properties_IGNORE = 5; + _STATIC_java_util_Properties_lineSeparator = (java_lang_String*) JAVA_NULL; + + __TIB_java_util_Properties.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Properties.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_Properties.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_Properties.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_Properties.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_Properties.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Properties.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Properties.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_Properties = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Properties); + __TIB_java_util_Properties.clazz = __CLASS_java_util_Properties; + __TIB_java_util_Properties.baseType = JAVA_NULL; + __CLASS_java_util_Properties_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Properties); + __CLASS_java_util_Properties_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Properties_1ARRAY); + __CLASS_java_util_Properties_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Properties_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_Properties] + //XMLVM_END_WRAPPER + + __TIB_java_util_Properties.classInitialized = 1; +} + +void __DELETE_java_util_Properties(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_Properties] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_Properties(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_Hashtable(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_Properties*) me)->fields.java_util_Properties.builder_ = (java_lang_Object*) JAVA_NULL; + ((java_util_Properties*) me)->fields.java_util_Properties.defaults_ = (java_util_Properties*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_Properties] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_Properties() +{ XMLVM_CLASS_INIT(java_util_Properties) +java_util_Properties* me = (java_util_Properties*) XMLVM_MALLOC(sizeof(java_util_Properties)); + me->tib = &__TIB_java_util_Properties; + __INIT_INSTANCE_MEMBERS_java_util_Properties(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_Properties] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_Properties() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_Properties(); + java_util_Properties___INIT___(me); + return me; +} + +JAVA_LONG java_util_Properties_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_serialVersionUID; +} + +void java_util_Properties_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_serialVersionUID = v; +} + +JAVA_OBJECT java_util_Properties_GET_PROP_DTD_NAME() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_PROP_DTD_NAME; +} + +void java_util_Properties_PUT_PROP_DTD_NAME(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_PROP_DTD_NAME = v; +} + +JAVA_OBJECT java_util_Properties_GET_PROP_DTD() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_PROP_DTD; +} + +void java_util_Properties_PUT_PROP_DTD(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_PROP_DTD = v; +} + +JAVA_INT java_util_Properties_GET_NONE() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_NONE; +} + +void java_util_Properties_PUT_NONE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_NONE = v; +} + +JAVA_INT java_util_Properties_GET_SLASH() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_SLASH; +} + +void java_util_Properties_PUT_SLASH(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_SLASH = v; +} + +JAVA_INT java_util_Properties_GET_UNICODE() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_UNICODE; +} + +void java_util_Properties_PUT_UNICODE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_UNICODE = v; +} + +JAVA_INT java_util_Properties_GET_CONTINUE() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_CONTINUE; +} + +void java_util_Properties_PUT_CONTINUE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_CONTINUE = v; +} + +JAVA_INT java_util_Properties_GET_KEY_DONE() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_KEY_DONE; +} + +void java_util_Properties_PUT_KEY_DONE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_KEY_DONE = v; +} + +JAVA_INT java_util_Properties_GET_IGNORE() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_IGNORE; +} + +void java_util_Properties_PUT_IGNORE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_IGNORE = v; +} + +JAVA_OBJECT java_util_Properties_GET_lineSeparator() +{ + XMLVM_CLASS_INIT(java_util_Properties) + return _STATIC_java_util_Properties_lineSeparator; +} + +void java_util_Properties_PUT_lineSeparator(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_Properties) +_STATIC_java_util_Properties_lineSeparator = v; +} + +void java_util_Properties___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties___INIT___] + XMLVM_ENTER_METHOD("java.util.Properties", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Properties.java", 90) + XMLVM_CHECK_NPE(1) + java_util_Hashtable___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Properties.java", 66) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(1) + ((java_util_Properties*) _r1.o)->fields.java_util_Properties.builder_ = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 91) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Properties___INIT____java_util_Properties(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties___INIT____java_util_Properties] + XMLVM_ENTER_METHOD("java.util.Properties", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Properties.java", 100) + XMLVM_CHECK_NPE(1) + java_util_Hashtable___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("Properties.java", 66) + _r0.o = JAVA_NULL; + XMLVM_CHECK_NPE(1) + ((java_util_Properties*) _r1.o)->fields.java_util_Properties.builder_ = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 101) + XMLVM_CHECK_NPE(1) + ((java_util_Properties*) _r1.o)->fields.java_util_Properties.defaults_ = _r2.o; + XMLVM_SOURCE_POSITION("Properties.java", 102) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_dumpString___java_lang_StringBuilder_java_lang_String_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3, JAVA_BOOLEAN n4) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_dumpString___java_lang_StringBuilder_java_lang_String_boolean_boolean] + XMLVM_ENTER_METHOD("java.util.Properties", "dumpString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r5.o = me; + _r6.o = n1; + _r7.o = n2; + _r8.i = n3; + _r9.i = n4; + _r4.i = 32; + XMLVM_SOURCE_POSITION("Properties.java", 106) + _r0.i = 0; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(7) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[8])(_r7.o); + XMLVM_SOURCE_POSITION("Properties.java", 107) + if (_r8.i != 0) goto label24; + if (_r0.i >= _r1.i) goto label24; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(7) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r7.o)->tib->vtable[6])(_r7.o, _r0.i); + if (_r2.i != _r4.i) goto label24; + XMLVM_SOURCE_POSITION("Properties.java", 108) + // "\134 " + _r2.o = xmlvm_create_java_string_from_pool(104); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___java_lang_String(_r6.o, _r2.o); + XMLVM_SOURCE_POSITION("Properties.java", 109) + _r0.i = _r0.i + 1; + label24:; + XMLVM_SOURCE_POSITION("Properties.java", 112) + if (_r0.i < _r1.i) goto label27; + XMLVM_SOURCE_POSITION("Properties.java", 142) + XMLVM_EXIT_METHOD() + return; + label27:; + XMLVM_SOURCE_POSITION("Properties.java", 113) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(7) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r7.o)->tib->vtable[6])(_r7.o, _r0.i); + XMLVM_SOURCE_POSITION("Properties.java", 114) + switch (_r2.i) { + case 9: goto label63; + case 10: goto label69; + case 12: goto label75; + case 13: goto label81; + } + XMLVM_SOURCE_POSITION("Properties.java", 128) + // "\134#!=:" + _r3.o = xmlvm_create_java_string_from_pool(105); + XMLVM_CHECK_NPE(3) + _r3.i = java_lang_String_indexOf___int(_r3.o, _r2.i); + if (_r3.i >= 0) goto label46; + if (_r8.i == 0) goto label51; + if (_r2.i != _r4.i) goto label51; + label46:; + XMLVM_SOURCE_POSITION("Properties.java", 129) + _r3.i = 92; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(6) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[6])(_r6.o, _r3.i); + label51:; + XMLVM_SOURCE_POSITION("Properties.java", 131) + if (_r2.i < _r4.i) goto label87; + _r3.i = 126; + if (_r2.i > _r3.i) goto label87; + XMLVM_SOURCE_POSITION("Properties.java", 132) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(6) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[6])(_r6.o, _r2.i); + label60:; + _r0.i = _r0.i + 1; + goto label24; + label63:; + XMLVM_SOURCE_POSITION("Properties.java", 116) + // "\134t" + _r2.o = xmlvm_create_java_string_from_pool(106); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___java_lang_String(_r6.o, _r2.o); + goto label60; + label69:; + XMLVM_SOURCE_POSITION("Properties.java", 119) + // "\134n" + _r2.o = xmlvm_create_java_string_from_pool(107); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___java_lang_String(_r6.o, _r2.o); + goto label60; + label75:; + XMLVM_SOURCE_POSITION("Properties.java", 122) + // "\134f" + _r2.o = xmlvm_create_java_string_from_pool(108); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___java_lang_String(_r6.o, _r2.o); + goto label60; + label81:; + XMLVM_SOURCE_POSITION("Properties.java", 125) + // "\134r" + _r2.o = xmlvm_create_java_string_from_pool(109); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___java_lang_String(_r6.o, _r2.o); + goto label60; + label87:; + XMLVM_SOURCE_POSITION("Properties.java", 134) + if (_r9.i == 0) goto label97; + XMLVM_SOURCE_POSITION("Properties.java", 135) + XMLVM_CHECK_NPE(5) + _r2.o = java_util_Properties_toHexaDecimal___int(_r5.o, _r2.i); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___char_1ARRAY(_r6.o, _r2.o); + goto label60; + label97:; + XMLVM_SOURCE_POSITION("Properties.java", 137) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(6) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[6])(_r6.o, _r2.i); + goto label60; + label102:; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Properties_toHexaDecimal___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_toHexaDecimal___int] + XMLVM_ENTER_METHOD("java.util.Properties", "toHexaDecimal", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.i = n1; + XMLVM_SOURCE_POSITION("Properties.java", 145) + _r0.i = 6; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_CHAR[]){92, 117, 48, 48, 48, 48, }); + XMLVM_SOURCE_POSITION("Properties.java", 146) + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r2 = _r1; + _r1 = _r6; + label9:; + XMLVM_SOURCE_POSITION("Properties.java", 148) + _r3.i = _r1.i & 15; + _r4.i = 9; + if (_r3.i <= _r4.i) goto label30; + XMLVM_SOURCE_POSITION("Properties.java", 149) + XMLVM_SOURCE_POSITION("Properties.java", 150) + _r4.i = 10; + _r3.i = _r3.i - _r4.i; + _r3.i = _r3.i + 65; + label20:; + XMLVM_SOURCE_POSITION("Properties.java", 154) + _r2.i = _r2.i + -1; + _r3.i = _r3.i & 0xffff; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i; + XMLVM_SOURCE_POSITION("Properties.java", 155) + _r1.i = ((JAVA_UINT) _r1.i) >> (0x1f & ((JAVA_UINT) 4)); + if (_r1.i != 0) goto label9; + XMLVM_SOURCE_POSITION("Properties.java", 156) + XMLVM_EXIT_METHOD() + return _r0.o; + label30:; + XMLVM_SOURCE_POSITION("Properties.java", 152) + _r3.i = _r3.i + 48; + goto label20; + label34:; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Properties_getProperty___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_getProperty___java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "getProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("Properties.java", 169) + XMLVM_CHECK_NPE(2) + _r0.o = java_util_Hashtable_get___java_lang_Object(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("Properties.java", 170) + XMLVM_CLASS_INIT(java_lang_String) + _r1.i = XMLVM_ISA(_r0.o, __CLASS_java_lang_String); + if (_r1.i == 0) goto label23; + _r0.o = _r0.o; + label10:; + XMLVM_SOURCE_POSITION("Properties.java", 171) + if (_r0.o != JAVA_NULL) goto label22; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Properties*) _r2.o)->fields.java_util_Properties.defaults_; + if (_r1.o == JAVA_NULL) goto label22; + XMLVM_SOURCE_POSITION("Properties.java", 172) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Properties*) _r2.o)->fields.java_util_Properties.defaults_; + XMLVM_CHECK_NPE(0) + _r0.o = java_util_Properties_getProperty___java_lang_String(_r0.o, _r3.o); + label22:; + XMLVM_SOURCE_POSITION("Properties.java", 174) + XMLVM_EXIT_METHOD() + return _r0.o; + label23:; + _r0.o = JAVA_NULL; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Properties_getProperty___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_getProperty___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "getProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("Properties.java", 190) + XMLVM_CHECK_NPE(2) + _r0.o = java_util_Hashtable_get___java_lang_Object(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("Properties.java", 191) + XMLVM_CLASS_INIT(java_lang_String) + _r1.i = XMLVM_ISA(_r0.o, __CLASS_java_lang_String); + if (_r1.i == 0) goto label26; + _r0.o = _r0.o; + label10:; + XMLVM_SOURCE_POSITION("Properties.java", 192) + if (_r0.o != JAVA_NULL) goto label22; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_Properties*) _r2.o)->fields.java_util_Properties.defaults_; + if (_r1.o == JAVA_NULL) goto label22; + XMLVM_SOURCE_POSITION("Properties.java", 193) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_Properties*) _r2.o)->fields.java_util_Properties.defaults_; + XMLVM_CHECK_NPE(0) + _r0.o = java_util_Properties_getProperty___java_lang_String(_r0.o, _r3.o); + label22:; + XMLVM_SOURCE_POSITION("Properties.java", 195) + if (_r0.o != JAVA_NULL) goto label25; + _r0 = _r4; + label25:; + XMLVM_SOURCE_POSITION("Properties.java", 196) + XMLVM_SOURCE_POSITION("Properties.java", 198) + XMLVM_EXIT_METHOD() + return _r0.o; + label26:; + _r0.o = JAVA_NULL; + goto label10; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_list___java_io_PrintStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_list___java_io_PrintStream] + XMLVM_ENTER_METHOD("java.util.Properties", "list", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 0; + XMLVM_SOURCE_POSITION("Properties.java", 211) + if (_r7.o != JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("Properties.java", 212) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label9:; + XMLVM_SOURCE_POSITION("Properties.java", 214) + _r2.o = __NEW_java_lang_StringBuilder(); + _r0.i = 80; + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT____int(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("Properties.java", 215) + XMLVM_CHECK_NPE(6) + _r3.o = java_util_Properties_propertyNames__(_r6.o); + label20:; + XMLVM_SOURCE_POSITION("Properties.java", 216) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r3.o); + if (_r0.i != 0) goto label27; + XMLVM_SOURCE_POSITION("Properties.java", 235) + XMLVM_EXIT_METHOD() + return; + label27:; + XMLVM_SOURCE_POSITION("Properties.java", 217) + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r3.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 218) + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 219) + _r1.i = 61; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(2) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[6])(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("Properties.java", 220) + XMLVM_CHECK_NPE(6) + _r1.o = java_util_Hashtable_get___java_lang_Object(_r6.o, _r0.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("Properties.java", 221) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_util_Properties*) _r6.o)->fields.java_util_Properties.defaults_; + label49:; + XMLVM_SOURCE_POSITION("Properties.java", 222) + if (_r1.o == JAVA_NULL) goto label84; + XMLVM_SOURCE_POSITION("Properties.java", 226) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + _r4.i = 40; + if (_r0.i <= _r4.i) goto label93; + XMLVM_SOURCE_POSITION("Properties.java", 227) + _r0.i = 37; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_substring___int_int(_r1.o, _r5.i, _r0.i); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 228) + // "..." + _r0.o = xmlvm_create_java_string_from_pool(110); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + label73:; + XMLVM_SOURCE_POSITION("Properties.java", 232) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_CHECK_NPE(7) + java_io_PrintStream_println___java_lang_String(_r7.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 233) + XMLVM_CHECK_NPE(2) + java_lang_AbstractStringBuilder_setLength___int(_r2.o, _r5.i); + goto label20; + label84:; + XMLVM_SOURCE_POSITION("Properties.java", 223) + //java_util_Properties_get___java_lang_Object[7] + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r4.o)->tib->vtable[7])(_r4.o, _r0.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("Properties.java", 224) + XMLVM_CHECK_NPE(4) + _r4.o = ((java_util_Properties*) _r4.o)->fields.java_util_Properties.defaults_; + goto label49; + label93:; + XMLVM_SOURCE_POSITION("Properties.java", 230) + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r1.o); + goto label73; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_list___java_io_PrintWriter(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_list___java_io_PrintWriter] + XMLVM_ENTER_METHOD("java.util.Properties", "list", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r5.i = 0; + XMLVM_SOURCE_POSITION("Properties.java", 247) + if (_r7.o != JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("Properties.java", 248) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label9:; + XMLVM_SOURCE_POSITION("Properties.java", 250) + _r2.o = __NEW_java_lang_StringBuilder(); + _r0.i = 80; + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT____int(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("Properties.java", 251) + XMLVM_CHECK_NPE(6) + _r3.o = java_util_Properties_propertyNames__(_r6.o); + label20:; + XMLVM_SOURCE_POSITION("Properties.java", 252) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r3.o); + if (_r0.i != 0) goto label27; + XMLVM_SOURCE_POSITION("Properties.java", 271) + XMLVM_EXIT_METHOD() + return; + label27:; + XMLVM_SOURCE_POSITION("Properties.java", 253) + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r3.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 254) + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 255) + _r1.i = 61; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(2) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[6])(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("Properties.java", 256) + XMLVM_CHECK_NPE(6) + _r1.o = java_util_Hashtable_get___java_lang_Object(_r6.o, _r0.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("Properties.java", 257) + XMLVM_CHECK_NPE(6) + _r4.o = ((java_util_Properties*) _r6.o)->fields.java_util_Properties.defaults_; + label49:; + XMLVM_SOURCE_POSITION("Properties.java", 258) + if (_r1.o == JAVA_NULL) goto label84; + XMLVM_SOURCE_POSITION("Properties.java", 262) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + _r4.i = 40; + if (_r0.i <= _r4.i) goto label93; + XMLVM_SOURCE_POSITION("Properties.java", 263) + _r0.i = 37; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_substring___int_int(_r1.o, _r5.i, _r0.i); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 264) + // "..." + _r0.o = xmlvm_create_java_string_from_pool(110); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + label73:; + XMLVM_SOURCE_POSITION("Properties.java", 268) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + + + // Red class access removed: java.io.PrintWriter::println + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 269) + XMLVM_CHECK_NPE(2) + java_lang_AbstractStringBuilder_setLength___int(_r2.o, _r5.i); + goto label20; + label84:; + XMLVM_SOURCE_POSITION("Properties.java", 259) + //java_util_Properties_get___java_lang_Object[7] + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r4.o)->tib->vtable[7])(_r4.o, _r0.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("Properties.java", 260) + XMLVM_CHECK_NPE(4) + _r4.o = ((java_util_Properties*) _r4.o)->fields.java_util_Properties.defaults_; + goto label49; + label93:; + XMLVM_SOURCE_POSITION("Properties.java", 266) + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r1.o); + goto label73; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_load___java_io_InputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_load___java_io_InputStream] + XMLVM_ENTER_METHOD("java.util.Properties", "load", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Properties.java", 283) + java_lang_Object_acquireLockRecursive__(_r3.o); + if (_r4.o != JAVA_NULL) goto label12; + XMLVM_TRY_BEGIN(w1975aaac20b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 284) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac20b1b6) + XMLVM_CATCH_SPECIFIC(w1975aaac20b1b6,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac20b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac20b1b6) + label9:; + java_lang_Thread* curThread_w1975aaac20b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac20b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_TRY_BEGIN(w1975aaac20b1c12) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 286) + + + // Red class access removed: java.io.BufferedInputStream::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.BufferedInputStream:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 287) + _r1.i = 2147483647; + + + // Red class access removed: java.io.BufferedInputStream::mark + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 288) + XMLVM_CHECK_NPE(3) + _r1.i = java_util_Properties_isEbcdic___java_io_BufferedInputStream(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 289) + + + // Red class access removed: java.io.BufferedInputStream::reset + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 291) + if (_r1.i != 0) { XMLVM_MEMCPY(curThread_w1975aaac20b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac20b1c12, sizeof(XMLVM_JMP_BUF)); goto label44; }; + XMLVM_SOURCE_POSITION("Properties.java", 292) + + + // Red class access removed: java.io.InputStreamReader::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "ISO8859-1" + _r2.o = xmlvm_create_java_string_from_pool(111); + + + // Red class access removed: java.io.InputStreamReader:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_util_Properties_loadImpl___java_io_Reader(_r3.o, _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac20b1c12) + XMLVM_CATCH_SPECIFIC(w1975aaac20b1c12,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac20b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac20b1c12) + label42:; + XMLVM_SOURCE_POSITION("Properties.java", 296) + java_lang_Object_releaseLockRecursive__(_r3.o); + XMLVM_EXIT_METHOD() + return; + label44:; + XMLVM_TRY_BEGIN(w1975aaac20b1c18) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 294) + + + // Red class access removed: java.io.InputStreamReader::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.InputStreamReader:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(3) + java_util_Properties_loadImpl___java_io_Reader(_r3.o, _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac20b1c18) + XMLVM_CATCH_SPECIFIC(w1975aaac20b1c18,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac20b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac20b1c18) + goto label42; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_Properties_isEbcdic___java_io_BufferedInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_isEbcdic___java_io_BufferedInputStream] + XMLVM_ENTER_METHOD("java.util.Properties", "isEbcdic", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 0; + label1:; + XMLVM_SOURCE_POSITION("Properties.java", 300) + + + // Red class access removed: java.io.BufferedInputStream::read + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.i = (_r0.i << 24) >> 24; + _r1.i = -1; + if (_r0.i != _r1.i) goto label11; + _r0 = _r2; + label10:; + XMLVM_SOURCE_POSITION("Properties.java", 311) + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_SOURCE_POSITION("Properties.java", 301) + _r1.i = 35; + if (_r0.i == _r1.i) goto label23; + _r1.i = 10; + if (_r0.i == _r1.i) goto label23; + _r1.i = 61; + if (_r0.i != _r1.i) goto label25; + label23:; + _r0 = _r2; + XMLVM_SOURCE_POSITION("Properties.java", 302) + goto label10; + label25:; + XMLVM_SOURCE_POSITION("Properties.java", 304) + _r1.i = 21; + if (_r0.i != _r1.i) goto label1; + XMLVM_SOURCE_POSITION("Properties.java", 305) + _r0.i = 1; + goto label10; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_load___java_io_Reader(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_load___java_io_Reader] + XMLVM_ENTER_METHOD("java.util.Properties", "load", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Properties.java", 343) + java_lang_Object_acquireLockRecursive__(_r1.o); + XMLVM_TRY_BEGIN(w1975aaac22b1b5) + // Begin try + XMLVM_CHECK_NPE(1) + java_util_Properties_loadImpl___java_io_Reader(_r1.o, _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac22b1b5) + XMLVM_CATCH_SPECIFIC(w1975aaac22b1b5,java_lang_Object,6) + XMLVM_CATCH_END(w1975aaac22b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac22b1b5) + XMLVM_SOURCE_POSITION("Properties.java", 344) + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_EXIT_METHOD() + return; + label6:; + java_lang_Thread* curThread_w1975aaac22b1c10 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac22b1c10->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r1.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Properties_loadImpl___java_io_Reader(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_loadImpl___java_io_Reader] + XMLVM_ENTER_METHOD("java.util.Properties", "loadImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + XMLVMElem _r16; + XMLVMElem _r17; + XMLVMElem _r18; + XMLVMElem _r19; + _r18.o = me; + _r19.o = n1; + XMLVM_SOURCE_POSITION("Properties.java", 347) + _r3.i = 0; + _r4.i = 0; + _r5.i = 0; + _r6.i = 40; + XMLVM_SOURCE_POSITION("Properties.java", 348) + XMLVM_CLASS_INIT(char) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_char, _r6.i); + XMLVM_SOURCE_POSITION("Properties.java", 349) + _r7.i = 0; + _r8.i = -1; + _r9.i = 1; + XMLVM_SOURCE_POSITION("Properties.java", 351) + + + // Red class access removed: java.io.BufferedReader::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r0 = _r10; + _r1 = _r19; + + + // Red class access removed: java.io.BufferedReader:: + XMLVM_RED_CLASS_DEPENDENCY(); + _r15 = _r9; + _r9 = _r3; + _r3 = _r15; + _r16 = _r7; + _r7 = _r5; + _r5 = _r16; + _r17 = _r4; + _r4 = _r8; + _r8 = _r17; + label31:; + XMLVM_SOURCE_POSITION("Properties.java", 354) + + + // Red class access removed: java.io.BufferedReader::read + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 355) + _r12.i = -1; + if (_r11.i != _r12.i) goto label56; + XMLVM_SOURCE_POSITION("Properties.java", 488) + _r3.i = 2; + if (_r9.i != _r3.i) goto label297; + _r3.i = 4; + if (_r7.i > _r3.i) goto label297; + XMLVM_SOURCE_POSITION("Properties.java", 490) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.08" + _r4.o = xmlvm_create_java_string_from_pool(112); + _r4.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r4.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + label56:; + XMLVM_SOURCE_POSITION("Properties.java", 356) + _r11.i = _r11.i & 0xffff; + XMLVM_SOURCE_POSITION("Properties.java", 358) + _r12.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + if (_r5.i != _r12.i) goto label71; + XMLVM_SOURCE_POSITION("Properties.java", 359) + _r12.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r12.i = _r12.i * 2; + XMLVM_CLASS_INIT(char) + _r12.o = XMLVMArray_createSingleDimension(__CLASS_char, _r12.i); + XMLVM_SOURCE_POSITION("Properties.java", 360) + _r13.i = 0; + _r14.i = 0; + java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r6.o, _r13.i, _r12.o, _r14.i, _r5.i); + _r6 = _r12; + label71:; + XMLVM_SOURCE_POSITION("Properties.java", 361) + XMLVM_SOURCE_POSITION("Properties.java", 363) + _r12.i = 2; + if (_r9.i != _r12.i) goto label122; + XMLVM_SOURCE_POSITION("Properties.java", 364) + _r12.i = 16; + _r12.i = java_lang_Character_digit___char_int(_r11.i, _r12.i); + XMLVM_SOURCE_POSITION("Properties.java", 365) + if (_r12.i < 0) goto label106; + XMLVM_SOURCE_POSITION("Properties.java", 366) + _r8.i = _r8.i << 4; + _r8.i = _r8.i + _r12.i; + _r7.i = _r7.i + 1; + _r12.i = 4; + if (_r7.i < _r12.i) goto label31; + label90:; + XMLVM_SOURCE_POSITION("Properties.java", 367) + XMLVM_SOURCE_POSITION("Properties.java", 374) + _r9.i = 0; + _r12.i = _r5.i + 1; + _r13.i = _r8.i & 0xffff; + XMLVM_SOURCE_POSITION("Properties.java", 375) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r13.i; + XMLVM_SOURCE_POSITION("Properties.java", 376) + _r5.i = 10; + if (_r11.i == _r5.i) goto label121; + _r5.i = 133; + if (_r11.i == _r5.i) goto label121; + _r5 = _r12; + XMLVM_SOURCE_POSITION("Properties.java", 377) + goto label31; + label106:; + XMLVM_SOURCE_POSITION("Properties.java", 370) + _r9.i = 4; + if (_r7.i > _r9.i) goto label90; + XMLVM_SOURCE_POSITION("Properties.java", 372) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.09" + _r4.o = xmlvm_create_java_string_from_pool(113); + _r4.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(_r4.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r3.o) + label121:; + _r5 = _r12; + label122:; + XMLVM_SOURCE_POSITION("Properties.java", 380) + _r12.i = 1; + if (_r9.i != _r12.i) goto label169; + XMLVM_SOURCE_POSITION("Properties.java", 381) + _r9.i = 0; + XMLVM_SOURCE_POSITION("Properties.java", 382) + switch (_r11.i) { + case 10: goto label146; + case 13: goto label144; + case 98: goto label148; + case 102: goto label151; + case 110: goto label154; + case 114: goto label157; + case 116: goto label160; + case 117: goto label163; + case 133: goto label146; + } + _r3 = _r11; + label130:; + XMLVM_SOURCE_POSITION("Properties.java", 409) + XMLVM_SOURCE_POSITION("Properties.java", 481) + _r11.i = 0; + _r12.i = 4; + if (_r9.i != _r12.i) goto label137; + XMLVM_SOURCE_POSITION("Properties.java", 482) + XMLVM_SOURCE_POSITION("Properties.java", 484) + _r4.i = 0; + _r9 = _r4; + _r4 = _r5; + label137:; + XMLVM_SOURCE_POSITION("Properties.java", 486) + _r12.i = _r5.i + 1; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r5.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r3.i; + _r3 = _r11; + _r5 = _r12; + XMLVM_SOURCE_POSITION("Properties.java", 353) + goto label31; + label144:; + XMLVM_SOURCE_POSITION("Properties.java", 384) + _r9.i = 3; + XMLVM_SOURCE_POSITION("Properties.java", 385) + goto label31; + label146:; + XMLVM_SOURCE_POSITION("Properties.java", 388) + _r9.i = 5; + XMLVM_SOURCE_POSITION("Properties.java", 389) + goto label31; + label148:; + XMLVM_SOURCE_POSITION("Properties.java", 391) + _r3.i = 8; + XMLVM_SOURCE_POSITION("Properties.java", 392) + goto label130; + label151:; + XMLVM_SOURCE_POSITION("Properties.java", 394) + _r3.i = 12; + XMLVM_SOURCE_POSITION("Properties.java", 395) + goto label130; + label154:; + XMLVM_SOURCE_POSITION("Properties.java", 397) + _r3.i = 10; + XMLVM_SOURCE_POSITION("Properties.java", 398) + goto label130; + label157:; + XMLVM_SOURCE_POSITION("Properties.java", 400) + _r3.i = 13; + XMLVM_SOURCE_POSITION("Properties.java", 401) + goto label130; + label160:; + XMLVM_SOURCE_POSITION("Properties.java", 403) + _r3.i = 9; + XMLVM_SOURCE_POSITION("Properties.java", 404) + goto label130; + label163:; + XMLVM_SOURCE_POSITION("Properties.java", 406) + _r7.i = 2; + _r8.i = 0; + _r9 = _r7; + _r7 = _r8; + XMLVM_SOURCE_POSITION("Properties.java", 408) + goto label31; + label169:; + XMLVM_SOURCE_POSITION("Properties.java", 411) + switch (_r11.i) { + case 10: goto label223; + case 13: goto label229; + case 33: goto label199; + case 35: goto label199; + case 58: goto label277; + case 61: goto label277; + case 92: goto label270; + case 133: goto label229; + } + label172:; + XMLVM_SOURCE_POSITION("Properties.java", 464) + _r12.i = 256; + if (_r11.i >= _r12.i) goto label285; + _r12.i = java_lang_Character_isWhitespace___char(_r11.i); + if (_r12.i == 0) goto label285; + XMLVM_SOURCE_POSITION("Properties.java", 465) + _r12.i = 3; + if (_r9.i != _r12.i) goto label186; + XMLVM_SOURCE_POSITION("Properties.java", 466) + _r9.i = 5; + label186:; + XMLVM_SOURCE_POSITION("Properties.java", 469) + if (_r5.i == 0) goto label31; + if (_r5.i == _r4.i) goto label31; + _r12.i = 5; + if (_r9.i == _r12.i) goto label31; + XMLVM_SOURCE_POSITION("Properties.java", 472) + _r12.i = -1; + if (_r4.i != _r12.i) goto label285; + XMLVM_SOURCE_POSITION("Properties.java", 473) + _r9.i = 4; + XMLVM_SOURCE_POSITION("Properties.java", 474) + goto label31; + label199:; + XMLVM_SOURCE_POSITION("Properties.java", 414) + if (_r3.i == 0) goto label172; + label201:; + XMLVM_SOURCE_POSITION("Properties.java", 416) + + + // Red class access removed: java.io.BufferedReader::read + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 417) + _r12.i = -1; + if (_r11.i == _r12.i) goto label31; + XMLVM_SOURCE_POSITION("Properties.java", 418) + _r11.i = _r11.i & 0xffff; + _r12.i = 13; + if (_r11.i == _r12.i) goto label31; + XMLVM_SOURCE_POSITION("Properties.java", 421) + _r12.i = 10; + if (_r11.i == _r12.i) goto label31; + _r12.i = 133; + if (_r11.i != _r12.i) goto label201; + goto label31; + label223:; + XMLVM_SOURCE_POSITION("Properties.java", 429) + _r11.i = 3; + if (_r9.i != _r11.i) goto label229; + XMLVM_SOURCE_POSITION("Properties.java", 430) + _r9.i = 5; + XMLVM_SOURCE_POSITION("Properties.java", 431) + goto label31; + label229:; + XMLVM_SOURCE_POSITION("Properties.java", 436) + _r3.i = 0; + _r9.i = 1; + if (_r5.i > 0) goto label237; + XMLVM_SOURCE_POSITION("Properties.java", 438) + if (_r5.i != 0) goto label263; + if (_r4.i != 0) goto label263; + label237:; + XMLVM_SOURCE_POSITION("Properties.java", 439) + _r11.i = -1; + if (_r4.i != _r11.i) goto label241; + _r4 = _r5; + label241:; + XMLVM_SOURCE_POSITION("Properties.java", 440) + XMLVM_SOURCE_POSITION("Properties.java", 442) + _r11.o = __NEW_java_lang_String(); + _r12.i = 0; + XMLVM_CHECK_NPE(11) + java_lang_String___INIT____char_1ARRAY_int_int(_r11.o, _r6.o, _r12.i, _r5.i); + XMLVM_SOURCE_POSITION("Properties.java", 443) + _r5.i = 0; + XMLVM_CHECK_NPE(11) + _r5.o = java_lang_String_substring___int_int(_r11.o, _r5.i, _r4.i); + XMLVM_SOURCE_POSITION("Properties.java", 444) + XMLVM_CHECK_NPE(11) + _r4.o = java_lang_String_substring___int(_r11.o, _r4.i); + _r0 = _r18; + _r1 = _r5; + _r2 = _r4; + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r0.o)->tib->vtable[10])(_r0.o, _r1.o, _r2.o); + label263:; + XMLVM_SOURCE_POSITION("Properties.java", 446) + _r4.i = -1; + _r5.i = 0; + _r15 = _r9; + _r9 = _r3; + _r3 = _r15; + XMLVM_SOURCE_POSITION("Properties.java", 448) + goto label31; + label270:; + XMLVM_SOURCE_POSITION("Properties.java", 450) + _r11.i = 4; + if (_r9.i != _r11.i) goto label274; + _r4 = _r5; + label274:; + XMLVM_SOURCE_POSITION("Properties.java", 451) + XMLVM_SOURCE_POSITION("Properties.java", 453) + _r9.i = 1; + XMLVM_SOURCE_POSITION("Properties.java", 454) + goto label31; + label277:; + XMLVM_SOURCE_POSITION("Properties.java", 457) + _r12.i = -1; + if (_r4.i != _r12.i) goto label172; + XMLVM_SOURCE_POSITION("Properties.java", 458) + _r4.i = 0; + _r9 = _r4; + _r4 = _r5; + XMLVM_SOURCE_POSITION("Properties.java", 460) + goto label31; + label285:; + _r3 = _r9; + XMLVM_SOURCE_POSITION("Properties.java", 477) + _r9.i = 5; + if (_r3.i == _r9.i) goto label292; + _r9.i = 3; + if (_r3.i != _r9.i) goto label352; + label292:; + XMLVM_SOURCE_POSITION("Properties.java", 478) + _r3.i = 0; + _r9 = _r3; + _r3 = _r11; + goto label130; + label297:; + XMLVM_SOURCE_POSITION("Properties.java", 492) + _r3.i = -1; + if (_r4.i != _r3.i) goto label350; + if (_r5.i <= 0) goto label350; + _r3 = _r5; + label303:; + XMLVM_SOURCE_POSITION("Properties.java", 493) + XMLVM_SOURCE_POSITION("Properties.java", 495) + if (_r3.i < 0) goto label349; + XMLVM_SOURCE_POSITION("Properties.java", 496) + _r4.o = __NEW_java_lang_String(); + _r7.i = 0; + XMLVM_CHECK_NPE(4) + java_lang_String___INIT____char_1ARRAY_int_int(_r4.o, _r6.o, _r7.i, _r5.i); + XMLVM_SOURCE_POSITION("Properties.java", 497) + _r5.i = 0; + XMLVM_CHECK_NPE(4) + _r5.o = java_lang_String_substring___int_int(_r4.o, _r5.i, _r3.i); + XMLVM_SOURCE_POSITION("Properties.java", 498) + XMLVM_CHECK_NPE(4) + _r3.o = java_lang_String_substring___int(_r4.o, _r3.i); + XMLVM_SOURCE_POSITION("Properties.java", 499) + _r4.i = 1; + if (_r9.i != _r4.i) goto label342; + XMLVM_SOURCE_POSITION("Properties.java", 500) + _r4.o = __NEW_java_lang_StringBuilder(); + _r3.o = java_lang_String_valueOf___java_lang_Object(_r3.o); + XMLVM_CHECK_NPE(4) + java_lang_StringBuilder___INIT____java_lang_String(_r4.o, _r3.o); + // "\000" + _r3.o = xmlvm_create_java_string_from_pool(114); + XMLVM_CHECK_NPE(4) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o); + label342:; + XMLVM_SOURCE_POSITION("Properties.java", 502) + _r0 = _r18; + _r1 = _r5; + _r2 = _r3; + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r0.o)->tib->vtable[10])(_r0.o, _r1.o, _r2.o); + label349:; + XMLVM_SOURCE_POSITION("Properties.java", 504) + XMLVM_EXIT_METHOD() + return; + label350:; + _r3 = _r4; + goto label303; + label352:; + _r9 = _r3; + _r3 = _r11; + goto label130; + label356:; + label394:; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Properties_propertyNames__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_propertyNames__] + XMLVM_ENTER_METHOD("java.util.Properties", "propertyNames", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Properties.java", 514) + _r0.o = __NEW_java_util_Hashtable(); + XMLVM_CHECK_NPE(0) + java_util_Hashtable___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 515) + _r1.i = 0; + XMLVM_CHECK_NPE(2) + java_util_Properties_selectProperties___java_util_Hashtable_boolean(_r2.o, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("Properties.java", 516) + //java_util_Hashtable_keys__[9] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Hashtable*) _r0.o)->tib->vtable[9])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Properties_stringPropertyNames__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_stringPropertyNames__] + XMLVM_ENTER_METHOD("java.util.Properties", "stringPropertyNames", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("Properties.java", 528) + _r0.o = __NEW_java_util_Hashtable(); + XMLVM_CHECK_NPE(0) + java_util_Hashtable___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 529) + _r1.i = 1; + XMLVM_CHECK_NPE(2) + java_util_Properties_selectProperties___java_util_Hashtable_boolean(_r2.o, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("Properties.java", 530) + //java_util_Hashtable_keySet__[17] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Hashtable*) _r0.o)->tib->vtable[17])(_r0.o); + _r0.o = java_util_Collections_unmodifiableSet___java_util_Set(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_selectProperties___java_util_Hashtable_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_selectProperties___java_util_Hashtable_boolean] + XMLVM_ENTER_METHOD("java.util.Properties", "selectProperties", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.o = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("Properties.java", 538) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_Properties*) _r4.o)->fields.java_util_Properties.defaults_; + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("Properties.java", 539) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_Properties*) _r4.o)->fields.java_util_Properties.defaults_; + XMLVM_CHECK_NPE(0) + java_util_Properties_selectProperties___java_util_Hashtable_boolean(_r0.o, _r5.o, _r6.i); + label9:; + XMLVM_SOURCE_POSITION("Properties.java", 542) + //java_util_Properties_keys__[9] + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Properties*) _r4.o)->tib->vtable[9])(_r4.o); + label13:; + XMLVM_SOURCE_POSITION("Properties.java", 544) + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__])(_r0.o); + if (_r1.i != 0) goto label20; + XMLVM_SOURCE_POSITION("Properties.java", 559) + XMLVM_EXIT_METHOD() + return; + label20:; + XMLVM_SOURCE_POSITION("Properties.java", 545) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__])(_r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 546) + if (_r6.i == 0) goto label42; + XMLVM_SOURCE_POSITION("Properties.java", 548) + XMLVM_CLASS_INIT(java_lang_String) + _r2.i = XMLVM_ISA(_r1.o, __CLASS_java_lang_String); + if (_r2.i == 0) goto label13; + XMLVM_SOURCE_POSITION("Properties.java", 549) + //java_util_Properties_get___java_lang_Object[7] + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r4.o)->tib->vtable[7])(_r4.o, _r1.o); + XMLVM_SOURCE_POSITION("Properties.java", 550) + XMLVM_CLASS_INIT(java_lang_String) + _r3.i = XMLVM_ISA(_r2.o, __CLASS_java_lang_String); + if (_r3.i == 0) goto label13; + XMLVM_SOURCE_POSITION("Properties.java", 551) + //java_util_Hashtable_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(5) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Hashtable*) _r5.o)->tib->vtable[10])(_r5.o, _r1.o, _r2.o); + goto label13; + label42:; + XMLVM_SOURCE_POSITION("Properties.java", 555) + //java_util_Properties_get___java_lang_Object[7] + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r4.o)->tib->vtable[7])(_r4.o, _r1.o); + XMLVM_SOURCE_POSITION("Properties.java", 556) + //java_util_Hashtable_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(5) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Hashtable*) _r5.o)->tib->vtable[10])(_r5.o, _r1.o, _r2.o); + goto label13; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_save___java_io_OutputStream_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_save___java_io_OutputStream_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "save", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_TRY_BEGIN(w1975aaac27b1b4) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 578) + XMLVM_CHECK_NPE(1) + java_util_Properties_store___java_io_OutputStream_java_lang_String(_r1.o, _r2.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac27b1b4) + XMLVM_CATCH_SPECIFIC(w1975aaac27b1b4,java_io_IOException,4) + XMLVM_CATCH_END(w1975aaac27b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac27b1b4) + label3:; + XMLVM_SOURCE_POSITION("Properties.java", 581) + XMLVM_EXIT_METHOD() + return; + label4:; + java_lang_Thread* curThread_w1975aaac27b1b9 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac27b1b9->fields.java_lang_Thread.xmlvmException_; + goto label3; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Properties_setProperty___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_setProperty___java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "setProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Properties.java", 594) + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r1.o)->tib->vtable[10])(_r1.o, _r2.o, _r3.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_store___java_io_OutputStream_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_store___java_io_OutputStream_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "store", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + _r7.o = me; + _r8.o = n1; + _r9.o = n2; + XMLVM_SOURCE_POSITION("Properties.java", 615) + java_lang_Object_acquireLockRecursive__(_r7.o); + XMLVM_TRY_BEGIN(w1975aaac29b1b6) + // Begin try + _r0.o = java_util_Properties_GET_lineSeparator(); + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w1975aaac29b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac29b1b6, sizeof(XMLVM_JMP_BUF)); goto label20; }; + XMLVM_SOURCE_POSITION("Properties.java", 617) + _r0.o = __NEW_org_apache_harmony_luni_util_PriviAction(); + // "line.separator" + _r1.o = xmlvm_create_java_string_from_pool(115); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String(_r0.o, _r1.o); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r0.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 616) + java_util_Properties_PUT_lineSeparator( _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac29b1b6) + XMLVM_CATCH_SPECIFIC(w1975aaac29b1b6,java_lang_Object,130) + XMLVM_CATCH_END(w1975aaac29b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac29b1b6) + label20:; + XMLVM_TRY_BEGIN(w1975aaac29b1b8) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 620) + _r2.o = __NEW_java_lang_StringBuilder(); + _r0.i = 200; + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT____int(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("Properties.java", 621) + + + // Red class access removed: java.io.OutputStreamWriter::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "ISO8859_1" + _r0.o = xmlvm_create_java_string_from_pool(116); + + + // Red class access removed: java.io.OutputStreamWriter:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 622) + if (_r9.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w1975aaac29b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac29b1b8, sizeof(XMLVM_JMP_BUF)); goto label39; }; + XMLVM_SOURCE_POSITION("Properties.java", 623) + XMLVM_CHECK_NPE(7) + java_util_Properties_writeComments___java_io_Writer_java_lang_String(_r7.o, _r3.o, _r9.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac29b1b8) + XMLVM_CATCH_SPECIFIC(w1975aaac29b1b8,java_lang_Object,130) + XMLVM_CATCH_END(w1975aaac29b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac29b1b8) + label39:; + XMLVM_TRY_BEGIN(w1975aaac29b1c10) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 625) + _r0.i = 35; + + + // Red class access removed: java.io.OutputStreamWriter::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 626) + + + // Red class access removed: java.util.Date::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Date:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Date::toString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.OutputStreamWriter::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 627) + _r0.o = java_util_Properties_GET_lineSeparator(); + + + // Red class access removed: java.io.OutputStreamWriter::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 629) + //java_util_Properties_entrySet__[16] + XMLVM_CHECK_NPE(7) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Properties*) _r7.o)->tib->vtable[16])(_r7.o); + XMLVM_CHECK_NPE(0) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac29b1c10) + XMLVM_CATCH_SPECIFIC(w1975aaac29b1c10,java_lang_Object,130) + XMLVM_CATCH_END(w1975aaac29b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac29b1c10) + label69:; + XMLVM_TRY_BEGIN(w1975aaac29b1c12) + // Begin try + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r4.o); + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w1975aaac29b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac29b1c12, sizeof(XMLVM_JMP_BUF)); goto label80; }; + XMLVM_SOURCE_POSITION("Properties.java", 638) + + + // Red class access removed: java.io.OutputStreamWriter::flush + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac29b1c12) + XMLVM_CATCH_SPECIFIC(w1975aaac29b1c12,java_lang_Object,130) + XMLVM_CATCH_END(w1975aaac29b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac29b1c12) + XMLVM_SOURCE_POSITION("Properties.java", 639) + java_lang_Object_releaseLockRecursive__(_r7.o); + XMLVM_EXIT_METHOD() + return; + label80:; + XMLVM_TRY_BEGIN(w1975aaac29b1c17) + // Begin try + XMLVM_CHECK_NPE(4) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r4.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 630) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("Properties.java", 631) + _r5.i = 1; + _r6.i = 1; + XMLVM_CHECK_NPE(7) + java_util_Properties_dumpString___java_lang_StringBuilder_java_lang_String_boolean_boolean(_r7.o, _r2.o, _r1.o, _r5.i, _r6.i); + XMLVM_SOURCE_POSITION("Properties.java", 632) + _r1.i = 61; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(2) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[6])(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("Properties.java", 633) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + _r0.o = _r0.o; + _r1.i = 0; + _r5.i = 1; + XMLVM_CHECK_NPE(7) + java_util_Properties_dumpString___java_lang_StringBuilder_java_lang_String_boolean_boolean(_r7.o, _r2.o, _r0.o, _r1.i, _r5.i); + XMLVM_SOURCE_POSITION("Properties.java", 634) + _r0.o = java_util_Properties_GET_lineSeparator(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 635) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + + + // Red class access removed: java.io.OutputStreamWriter::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 636) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + java_lang_AbstractStringBuilder_setLength___int(_r2.o, _r0.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac29b1c17) + XMLVM_CATCH_SPECIFIC(w1975aaac29b1c17,java_lang_Object,130) + XMLVM_CATCH_END(w1975aaac29b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac29b1c17) + goto label69; + label130:; + java_lang_Thread* curThread_w1975aaac29b1c20 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac29b1c20->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r7.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Properties_store___java_io_Writer_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_store___java_io_Writer_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "store", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r6.o = me; + _r7.o = n1; + _r8.o = n2; + XMLVM_SOURCE_POSITION("Properties.java", 656) + java_lang_Object_acquireLockRecursive__(_r6.o); + XMLVM_TRY_BEGIN(w1975aaac30b1b6) + // Begin try + _r0.o = java_util_Properties_GET_lineSeparator(); + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w1975aaac30b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac30b1b6, sizeof(XMLVM_JMP_BUF)); goto label20; }; + XMLVM_SOURCE_POSITION("Properties.java", 658) + _r0.o = __NEW_org_apache_harmony_luni_util_PriviAction(); + // "line.separator" + _r1.o = xmlvm_create_java_string_from_pool(115); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String(_r0.o, _r1.o); + _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r0.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 657) + java_util_Properties_PUT_lineSeparator( _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac30b1b6) + XMLVM_CATCH_SPECIFIC(w1975aaac30b1b6,java_lang_Object,123) + XMLVM_CATCH_END(w1975aaac30b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac30b1b6) + label20:; + XMLVM_TRY_BEGIN(w1975aaac30b1b8) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 660) + if (_r8.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w1975aaac30b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac30b1b8, sizeof(XMLVM_JMP_BUF)); goto label25; }; + XMLVM_SOURCE_POSITION("Properties.java", 661) + XMLVM_CHECK_NPE(6) + java_util_Properties_writeComments___java_io_Writer_java_lang_String(_r6.o, _r7.o, _r8.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac30b1b8) + XMLVM_CATCH_SPECIFIC(w1975aaac30b1b8,java_lang_Object,123) + XMLVM_CATCH_END(w1975aaac30b1b8) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac30b1b8) + label25:; + XMLVM_TRY_BEGIN(w1975aaac30b1c10) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 663) + _r0.i = 35; + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 664) + + + // Red class access removed: java.util.Date::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Date:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Date::toString + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 665) + _r0.o = java_util_Properties_GET_lineSeparator(); + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 667) + _r2.o = __NEW_java_lang_StringBuilder(); + _r0.i = 200; + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT____int(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("Properties.java", 668) + //java_util_Properties_entrySet__[16] + XMLVM_CHECK_NPE(6) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Properties*) _r6.o)->tib->vtable[16])(_r6.o); + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac30b1c10) + XMLVM_CATCH_SPECIFIC(w1975aaac30b1c10,java_lang_Object,123) + XMLVM_CATCH_END(w1975aaac30b1c10) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac30b1c10) + label62:; + XMLVM_TRY_BEGIN(w1975aaac30b1c12) + // Begin try + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r3.o); + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w1975aaac30b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac30b1c12, sizeof(XMLVM_JMP_BUF)); goto label73; }; + XMLVM_SOURCE_POSITION("Properties.java", 677) + + + // Red class access removed: java.io.Writer::flush + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac30b1c12) + XMLVM_CATCH_SPECIFIC(w1975aaac30b1c12,java_lang_Object,123) + XMLVM_CATCH_END(w1975aaac30b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac30b1c12) + XMLVM_SOURCE_POSITION("Properties.java", 678) + java_lang_Object_releaseLockRecursive__(_r6.o); + XMLVM_EXIT_METHOD() + return; + label73:; + XMLVM_TRY_BEGIN(w1975aaac30b1c17) + // Begin try + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r3.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 669) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("Properties.java", 670) + _r4.i = 1; + _r5.i = 0; + XMLVM_CHECK_NPE(6) + java_util_Properties_dumpString___java_lang_StringBuilder_java_lang_String_boolean_boolean(_r6.o, _r2.o, _r1.o, _r4.i, _r5.i); + XMLVM_SOURCE_POSITION("Properties.java", 671) + _r1.i = 61; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(2) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[6])(_r2.o, _r1.i); + XMLVM_SOURCE_POSITION("Properties.java", 672) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + _r0.o = _r0.o; + _r1.i = 0; + _r4.i = 0; + XMLVM_CHECK_NPE(6) + java_util_Properties_dumpString___java_lang_StringBuilder_java_lang_String_boolean_boolean(_r6.o, _r2.o, _r0.o, _r1.i, _r4.i); + XMLVM_SOURCE_POSITION("Properties.java", 673) + _r0.o = java_util_Properties_GET_lineSeparator(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 674) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 675) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + java_lang_AbstractStringBuilder_setLength___int(_r2.o, _r0.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac30b1c17) + XMLVM_CATCH_SPECIFIC(w1975aaac30b1c17,java_lang_Object,123) + XMLVM_CATCH_END(w1975aaac30b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac30b1c17) + goto label62; + label123:; + java_lang_Thread* curThread_w1975aaac30b1c20 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac30b1c20->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r6.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_Properties_writeComments___java_io_Writer_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_writeComments___java_io_Writer_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "writeComments", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r7.o = me; + _r8.o = n1; + _r9.o = n2; + _r6.i = 13; + _r5.i = 10; + _r4.i = 35; + XMLVM_SOURCE_POSITION("Properties.java", 682) + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 683) + XMLVM_CHECK_NPE(9) + _r0.o = java_lang_String_toCharArray__(_r9.o); + XMLVM_SOURCE_POSITION("Properties.java", 684) + _r1.i = 0; + label14:; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r1.i < _r2.i) goto label23; + XMLVM_SOURCE_POSITION("Properties.java", 707) + _r0.o = java_util_Properties_GET_lineSeparator(); + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 708) + XMLVM_EXIT_METHOD() + return; + label23:; + XMLVM_SOURCE_POSITION("Properties.java", 685) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r3.i = 256; + if (_r2.i >= _r3.i) goto label81; + XMLVM_SOURCE_POSITION("Properties.java", 686) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r2.i == _r6.i) goto label37; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r2.i != _r5.i) goto label75; + label37:; + XMLVM_SOURCE_POSITION("Properties.java", 687) + _r2.i = _r1.i + 1; + XMLVM_SOURCE_POSITION("Properties.java", 688) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + if (_r3.i != _r6.i) goto label53; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r2.i >= _r3.i) goto label53; + XMLVM_SOURCE_POSITION("Properties.java", 689) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + if (_r3.i != _r5.i) goto label53; + label50:; + _r1.i = _r1.i + 1; + goto label14; + label53:; + XMLVM_SOURCE_POSITION("Properties.java", 693) + _r3.o = java_util_Properties_GET_lineSeparator(); + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 694) + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + if (_r2.i >= _r3.i) goto label71; + XMLVM_SOURCE_POSITION("Properties.java", 695) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + if (_r3.i == _r4.i) goto label50; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r3.i = 33; + if (_r2.i == _r3.i) goto label50; + label71:; + XMLVM_SOURCE_POSITION("Properties.java", 699) + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + goto label50; + label75:; + XMLVM_SOURCE_POSITION("Properties.java", 701) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + goto label50; + label81:; + XMLVM_SOURCE_POSITION("Properties.java", 704) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_CHECK_NPE(7) + _r2.o = java_util_Properties_toHexaDecimal___int(_r7.o, _r2.i); + + + // Red class access removed: java.io.Writer::write + XMLVM_RED_CLASS_DEPENDENCY(); + goto label50; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_loadFromXML___java_io_InputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_loadFromXML___java_io_InputStream] + XMLVM_ENTER_METHOD("java.util.Properties", "loadFromXML", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("Properties.java", 730) + java_lang_Object_acquireLockRecursive__(_r5.o); + if (_r6.o != JAVA_NULL) goto label12; + XMLVM_TRY_BEGIN(w1975aaac32b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 731) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1b6) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1b6,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1b6) + label9:; + java_lang_Thread* curThread_w1975aaac32b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac32b1b8->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_TRY_BEGIN(w1975aaac32b1c12) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 734) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_Properties*) _r5.o)->fields.java_util_Properties.builder_; + if (_r0.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w1975aaac32b1c12->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac32b1c12, sizeof(XMLVM_JMP_BUF)); goto label50; }; + XMLVM_SOURCE_POSITION("Properties.java", 736) + + + // Red class access removed: javax.xml.parsers.DocumentBuilderFactory::newInstance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 737) + _r1.i = 1; + + + // Red class access removed: javax.xml.parsers.DocumentBuilderFactory::setValidating + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c12) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c12,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c12) + XMLVM_TRY_BEGIN(w1975aaac32b1c13) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 740) + + + // Red class access removed: javax.xml.parsers.DocumentBuilderFactory::newDocumentBuilder + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(5) + ((java_util_Properties*) _r5.o)->fields.java_util_Properties.builder_ = _r0.o; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c13) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c13,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c13) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c13) + XMLVM_TRY_BEGIN(w1975aaac32b1c14) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 745) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_Properties*) _r5.o)->fields.java_util_Properties.builder_; + + + // Red class access removed: java.util.Properties$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Properties$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: javax.xml.parsers.DocumentBuilder::setErrorHandler + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 759) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_Properties*) _r5.o)->fields.java_util_Properties.builder_; + + + // Red class access removed: java.util.Properties$2::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Properties$2:: + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: javax.xml.parsers.DocumentBuilder::setEntityResolver + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c14) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c14,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c14) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c14) + label50:; + XMLVM_TRY_BEGIN(w1975aaac32b1c16) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 775) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_Properties*) _r5.o)->fields.java_util_Properties.builder_; + + + // Red class access removed: javax.xml.parsers.DocumentBuilder::parse + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 776) + // "entry" + _r1.o = xmlvm_create_java_string_from_pool(117); + + + // Red class access removed: org.w3c.dom.Document::getElementsByTagName + XMLVM_RED_CLASS_DEPENDENCY(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c16) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c16,java_io_IOException,104) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c16,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c16) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c16) + XMLVM_SOURCE_POSITION("Properties.java", 777) + if (_r1.o != JAVA_NULL) goto label73; + label64:; + XMLVM_SOURCE_POSITION("Properties.java", 798) + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_EXIT_METHOD() + return; + label66:; + XMLVM_SOURCE_POSITION("Properties.java", 741) + java_lang_Thread* curThread_w1975aaac32b1c25 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac32b1c25->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w1975aaac32b1c26) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 742) + + + // Red class access removed: java.lang.Error::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.Error:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c26) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c26,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c26) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c26) + label73:; + XMLVM_TRY_BEGIN(w1975aaac32b1c28) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 780) + + + // Red class access removed: org.w3c.dom.NodeList::getLength + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 782) + _r0.i = 0; + _r3 = _r0; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c28) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c28,java_io_IOException,104) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c28,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c28) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c28) + label79:; + XMLVM_TRY_BEGIN(w1975aaac32b1c30) + // Begin try + if (_r3.i >= _r2.i) { XMLVM_MEMCPY(curThread_w1975aaac32b1c30->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac32b1c30, sizeof(XMLVM_JMP_BUF)); goto label64; }; + XMLVM_SOURCE_POSITION("Properties.java", 783) + + + // Red class access removed: org.w3c.dom.NodeList::item + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: org.w3c.dom.Element::check-cast + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 784) + // "key" + _r4.o = xmlvm_create_java_string_from_pool(118); + + + // Red class access removed: org.w3c.dom.Element::getAttribute + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 785) + + + // Red class access removed: org.w3c.dom.Element::getTextContent + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Properties.java", 791) + //java_util_Properties_put___java_lang_Object_java_lang_Object[10] + XMLVM_CHECK_NPE(5) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) ((java_util_Properties*) _r5.o)->tib->vtable[10])(_r5.o, _r4.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c30) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c30,java_io_IOException,104) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c30,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c30) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c30) + _r0.i = _r3.i + 1; + _r3 = _r0; + goto label79; + label104:; + XMLVM_SOURCE_POSITION("Properties.java", 793) + java_lang_Thread* curThread_w1975aaac32b1c36 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac32b1c36->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w1975aaac32b1c37) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 794) + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c37) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c37,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c37) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c37) + label106:; + XMLVM_TRY_BEGIN(w1975aaac32b1c39) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 795) + java_lang_Thread* curThread_w1975aaac32b1c39ab1 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac32b1c39ab1->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("Properties.java", 796) + + + // Red class access removed: java.util.InvalidPropertiesFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.InvalidPropertiesFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac32b1c39) + XMLVM_CATCH_SPECIFIC(w1975aaac32b1c39,java_lang_Object,9) + XMLVM_CATCH_END(w1975aaac32b1c39) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac32b1c39) + //XMLVM_END_WRAPPER +} + +void java_util_Properties_storeToXML___java_io_OutputStream_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_storeToXML___java_io_OutputStream_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "storeToXML", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Properties.java", 818) + // "UTF-8" + _r0.o = xmlvm_create_java_string_from_pool(100); + XMLVM_CHECK_NPE(1) + java_util_Properties_storeToXML___java_io_OutputStream_java_lang_String_java_lang_String(_r1.o, _r2.o, _r3.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 819) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_Properties_storeToXML___java_io_OutputStream_java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_storeToXML___java_io_OutputStream_java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "storeToXML", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + _r5.o = me; + _r6.o = n1; + _r7.o = n2; + _r8.o = n3; + // "UTF-8" + _r3.o = xmlvm_create_java_string_from_pool(100); + // "\042>" + _r0.o = xmlvm_create_java_string_from_pool(119); + XMLVM_SOURCE_POSITION("Properties.java", 842) + java_lang_Object_acquireLockRecursive__(_r5.o); + if (_r6.o == JAVA_NULL) goto label9; + if (_r8.o != JAVA_NULL) goto label18; + label9:; + XMLVM_TRY_BEGIN(w1975aaac34b1c12) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 843) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c12) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c12,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c12) + label15:; + java_lang_Thread* curThread_w1975aaac34b1c14 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac34b1c14->fields.java_lang_Thread.xmlvmException_; + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_THROW_CUSTOM(_r0.o) + label18:; + XMLVM_TRY_BEGIN(w1975aaac34b1c18) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 855) + _r0.o = java_nio_charset_Charset_forName___java_lang_String(_r8.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_nio_charset_Charset_name__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c18) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c18,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c18) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c18) + label26:; + XMLVM_TRY_BEGIN(w1975aaac34b1c20) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 866) + _r2.o = __NEW_java_io_PrintStream(); + _r1.i = 0; + XMLVM_CHECK_NPE(2) + java_io_PrintStream___INIT____java_io_OutputStream_boolean_java_lang_String(_r2.o, _r6.o, _r1.i, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 869) + // "" + _r0.o = xmlvm_create_java_string_from_pool(121); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 873) + // "" + _r0.o = xmlvm_create_java_string_from_pool(119); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 877) + // "" + _r0.o = xmlvm_create_java_string_from_pool(123); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 879) + if (_r7.o == JAVA_NULL) { XMLVM_MEMCPY(curThread_w1975aaac34b1c20->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac34b1c20, sizeof(XMLVM_JMP_BUF)); goto label84; }; + XMLVM_SOURCE_POSITION("Properties.java", 880) + // "" + _r0.o = xmlvm_create_java_string_from_pool(124); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_print___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 881) + XMLVM_CHECK_NPE(5) + _r0.o = java_util_Properties_substitutePredefinedEntries___java_lang_String(_r5.o, _r7.o); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_print___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 882) + // "" + _r0.o = xmlvm_create_java_string_from_pool(125); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c20) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c20,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c20) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c20) + label84:; + XMLVM_TRY_BEGIN(w1975aaac34b1c22) + // Begin try + XMLVM_SOURCE_POSITION("Properties.java", 885) + //java_util_Properties_entrySet__[16] + XMLVM_CHECK_NPE(5) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_Properties*) _r5.o)->tib->vtable[16])(_r5.o); + XMLVM_CHECK_NPE(0) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Set_iterator__])(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c22) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c22,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c22) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c22) + label92:; + XMLVM_TRY_BEGIN(w1975aaac34b1c24) + // Begin try + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r3.o); + if (_r0.i != 0) { XMLVM_MEMCPY(curThread_w1975aaac34b1c24->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac34b1c24, sizeof(XMLVM_JMP_BUF)); goto label171; }; + XMLVM_SOURCE_POSITION("Properties.java", 894) + // "" + _r0.o = xmlvm_create_java_string_from_pool(126); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 895) + //java_io_PrintStream_flush__[8] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT)) ((java_io_PrintStream*) _r2.o)->tib->vtable[8])(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c24) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c24,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c24) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c24) + XMLVM_SOURCE_POSITION("Properties.java", 896) + java_lang_Object_releaseLockRecursive__(_r5.o); + XMLVM_EXIT_METHOD() + return; + label108:; + XMLVM_SOURCE_POSITION("Properties.java", 857) + java_lang_Thread* curThread_w1975aaac34b1c30 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac34b1c30->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w1975aaac34b1c31) + // Begin try + _r0.o = java_lang_System_GET_out(); + _r1.o = __NEW_java_lang_StringBuilder(); + // "Warning: encoding name " + _r2.o = xmlvm_create_java_string_from_pool(127); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r8.o); + XMLVM_SOURCE_POSITION("Properties.java", 858) + // " is illegal, using UTF-8 as default encoding" + _r2.o = xmlvm_create_java_string_from_pool(128); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + XMLVM_CHECK_NPE(0) + java_io_PrintStream_println___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Properties.java", 859) + // "UTF-8" + _r0.o = xmlvm_create_java_string_from_pool(100); + _r0 = _r3; + { XMLVM_MEMCPY(curThread_w1975aaac34b1c31->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac34b1c31, sizeof(XMLVM_JMP_BUF)); goto label26; }; + XMLVM_SOURCE_POSITION("Properties.java", 861) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c31) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c31,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c31) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c31) + label139:; + XMLVM_TRY_BEGIN(w1975aaac34b1c33) + // Begin try + java_lang_Thread* curThread_w1975aaac34b1c33aa = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1975aaac34b1c33aa->fields.java_lang_Thread.xmlvmException_; + _r0.o = java_lang_System_GET_out(); + _r1.o = __NEW_java_lang_StringBuilder(); + // "Warning: encoding " + _r2.o = xmlvm_create_java_string_from_pool(129); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____java_lang_String(_r1.o, _r2.o); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r8.o); + XMLVM_SOURCE_POSITION("Properties.java", 862) + // " is not supported, using UTF-8 as default encoding" + _r2.o = xmlvm_create_java_string_from_pool(130); + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(1) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o); + XMLVM_CHECK_NPE(0) + java_io_PrintStream_println___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Properties.java", 863) + // "UTF-8" + _r0.o = xmlvm_create_java_string_from_pool(100); + _r0 = _r3; + { XMLVM_MEMCPY(curThread_w1975aaac34b1c33->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1975aaac34b1c33, sizeof(XMLVM_JMP_BUF)); goto label26; }; + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c33) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c33,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c33) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c33) + label171:; + XMLVM_TRY_BEGIN(w1975aaac34b1c35) + // Begin try + XMLVM_CHECK_NPE(3) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r3.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 886) + XMLVM_CHECK_NPE(0) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r0.o); + _r1.o = _r1.o; + XMLVM_SOURCE_POSITION("Properties.java", 887) + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r0.o); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("Properties.java", 888) + // "" + _r1.o = xmlvm_create_java_string_from_pool(119); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_print___java_lang_String(_r2.o, _r1.o); + XMLVM_SOURCE_POSITION("Properties.java", 891) + XMLVM_CHECK_NPE(5) + _r0.o = java_util_Properties_substitutePredefinedEntries___java_lang_String(_r5.o, _r0.o); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_print___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("Properties.java", 892) + // "" + _r0.o = xmlvm_create_java_string_from_pool(132); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1975aaac34b1c35) + XMLVM_CATCH_SPECIFIC(w1975aaac34b1c35,java_lang_Object,15) + XMLVM_CATCH_END(w1975aaac34b1c35) + XMLVM_RESTORE_EXCEPTION_ENV(w1975aaac34b1c35) + goto label92; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_Properties_substitutePredefinedEntries___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_Properties_substitutePredefinedEntries___java_lang_String] + XMLVM_ENTER_METHOD("java.util.Properties", "substitutePredefinedEntries", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("Properties.java", 904) + // "&" + _r0.o = xmlvm_create_java_string_from_pool(133); + // "&" + _r1.o = xmlvm_create_java_string_from_pool(134); + XMLVM_CHECK_NPE(4) + _r0.o = java_lang_String_replaceAll___java_lang_String_java_lang_String(_r4.o, _r0.o, _r1.o); + // "<" + _r1.o = xmlvm_create_java_string_from_pool(135); + // "<" + _r2.o = xmlvm_create_java_string_from_pool(136); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_replaceAll___java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + XMLVM_SOURCE_POSITION("Properties.java", 905) + // ">" + _r1.o = xmlvm_create_java_string_from_pool(137); + // ">" + _r2.o = xmlvm_create_java_string_from_pool(138); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_replaceAll___java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + // "'" + _r1.o = xmlvm_create_java_string_from_pool(139); + // "'" + _r2.o = xmlvm_create_java_string_from_pool(140); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_replaceAll___java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + // "\042" + _r1.o = xmlvm_create_java_string_from_pool(141); + XMLVM_SOURCE_POSITION("Properties.java", 906) + // """ + _r2.o = xmlvm_create_java_string_from_pool(142); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_String_replaceAll___java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_Properties.h b/tests/nbody-java/java_util_Properties.h new file mode 100644 index 0000000000000..44f3e883ac4d4 --- /dev/null +++ b/tests/nbody-java/java_util_Properties.h @@ -0,0 +1,176 @@ +#ifndef __JAVA_UTIL_PROPERTIES__ +#define __JAVA_UTIL_PROPERTIES__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_Properties 14 +// Implemented interfaces: +// Super Class: +#include "java_util_Hashtable.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +XMLVM_FORWARD_DECL(java_io_IOException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_OutputStream +#define XMLVM_FORWARD_DECL_java_io_OutputStream +XMLVM_FORWARD_DECL(java_io_OutputStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +XMLVM_FORWARD_DECL(java_io_PrintStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections +#define XMLVM_FORWARD_DECL_java_util_Collections +XMLVM_FORWARD_DECL(java_util_Collections) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Enumeration +#define XMLVM_FORWARD_DECL_java_util_Enumeration +XMLVM_FORWARD_DECL(java_util_Enumeration) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map_Entry +#define XMLVM_FORWARD_DECL_java_util_Map_Entry +XMLVM_FORWARD_DECL(java_util_Map_Entry) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_PriviAction) +#endif +// Class declarations for java.util.Properties +XMLVM_DEFINE_CLASS(java_util_Properties, 20, XMLVM_ITABLE_SIZE_java_util_Properties) + +extern JAVA_OBJECT __CLASS_java_util_Properties; +extern JAVA_OBJECT __CLASS_java_util_Properties_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Properties_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Properties_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_Properties +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_Properties \ + __INSTANCE_FIELDS_java_util_Hashtable; \ + struct { \ + JAVA_OBJECT builder_; \ + JAVA_OBJECT defaults_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_Properties \ + } java_util_Properties + +struct java_util_Properties { + __TIB_DEFINITION_java_util_Properties* tib; + struct { + __INSTANCE_FIELDS_java_util_Properties; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_Properties +#define XMLVM_FORWARD_DECL_java_util_Properties +typedef struct java_util_Properties java_util_Properties; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_Properties 20 + +void __INIT_java_util_Properties(); +void __INIT_IMPL_java_util_Properties(); +void __DELETE_java_util_Properties(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_Properties(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_Properties(); +JAVA_OBJECT __NEW_INSTANCE_java_util_Properties(); +JAVA_LONG java_util_Properties_GET_serialVersionUID(); +void java_util_Properties_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_util_Properties_GET_PROP_DTD_NAME(); +void java_util_Properties_PUT_PROP_DTD_NAME(JAVA_OBJECT v); +JAVA_OBJECT java_util_Properties_GET_PROP_DTD(); +void java_util_Properties_PUT_PROP_DTD(JAVA_OBJECT v); +JAVA_INT java_util_Properties_GET_NONE(); +void java_util_Properties_PUT_NONE(JAVA_INT v); +JAVA_INT java_util_Properties_GET_SLASH(); +void java_util_Properties_PUT_SLASH(JAVA_INT v); +JAVA_INT java_util_Properties_GET_UNICODE(); +void java_util_Properties_PUT_UNICODE(JAVA_INT v); +JAVA_INT java_util_Properties_GET_CONTINUE(); +void java_util_Properties_PUT_CONTINUE(JAVA_INT v); +JAVA_INT java_util_Properties_GET_KEY_DONE(); +void java_util_Properties_PUT_KEY_DONE(JAVA_INT v); +JAVA_INT java_util_Properties_GET_IGNORE(); +void java_util_Properties_PUT_IGNORE(JAVA_INT v); +JAVA_OBJECT java_util_Properties_GET_lineSeparator(); +void java_util_Properties_PUT_lineSeparator(JAVA_OBJECT v); +void java_util_Properties___INIT___(JAVA_OBJECT me); +void java_util_Properties___INIT____java_util_Properties(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Properties_dumpString___java_lang_StringBuilder_java_lang_String_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3, JAVA_BOOLEAN n4); +JAVA_OBJECT java_util_Properties_toHexaDecimal___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_OBJECT java_util_Properties_getProperty___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Properties_getProperty___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Properties_list___java_io_PrintStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Properties_list___java_io_PrintWriter(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Properties_load___java_io_InputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN java_util_Properties_isEbcdic___java_io_BufferedInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Properties_load___java_io_Reader(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Properties_loadImpl___java_io_Reader(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_Properties_propertyNames__(JAVA_OBJECT me); +JAVA_OBJECT java_util_Properties_stringPropertyNames__(JAVA_OBJECT me); +void java_util_Properties_selectProperties___java_util_Hashtable_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +void java_util_Properties_save___java_io_OutputStream_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT java_util_Properties_setProperty___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Properties_store___java_io_OutputStream_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Properties_store___java_io_Writer_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Properties_writeComments___java_io_Writer_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Properties_loadFromXML___java_io_InputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_Properties_storeToXML___java_io_OutputStream_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_Properties_storeToXML___java_io_OutputStream_java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT java_util_Properties_substitutePredefinedEntries___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_PropertyPermission.c b/tests/nbody-java/java_util_PropertyPermission.c new file mode 100644 index 0000000000000..fe1e4c5ef4003 --- /dev/null +++ b/tests/nbody-java/java_util_PropertyPermission.c @@ -0,0 +1,565 @@ +#include "xmlvm.h" +#include "java_io_ObjectStreamField.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_security_Permission.h" +#include "java_util_StringTokenizer.h" +#include "org_apache_harmony_luni_util_Util.h" + +#include "java_util_PropertyPermission.h" + +#define XMLVM_CURRENT_CLASS_NAME PropertyPermission +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_PropertyPermission + +__TIB_DEFINITION_java_util_PropertyPermission __TIB_java_util_PropertyPermission = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_PropertyPermission, // classInitializer + "java.util.PropertyPermission", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_security_BasicPermission, // extends + sizeof(java_util_PropertyPermission), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_PropertyPermission; +JAVA_OBJECT __CLASS_java_util_PropertyPermission_1ARRAY; +JAVA_OBJECT __CLASS_java_util_PropertyPermission_2ARRAY; +JAVA_OBJECT __CLASS_java_util_PropertyPermission_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_java_util_PropertyPermission_serialVersionUID; +static JAVA_OBJECT _STATIC_java_util_PropertyPermission_serialPersistentFields; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_PropertyPermission() +{ + staticInitializerLock(&__TIB_java_util_PropertyPermission); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_PropertyPermission.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_PropertyPermission.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_PropertyPermission); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_PropertyPermission.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_PropertyPermission.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_PropertyPermission.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.PropertyPermission") + __INIT_IMPL_java_util_PropertyPermission(); + } +} + +void __INIT_IMPL_java_util_PropertyPermission() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_security_BasicPermission) + __TIB_java_util_PropertyPermission.newInstanceFunc = __NEW_INSTANCE_java_util_PropertyPermission; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_PropertyPermission.vtable, __TIB_java_security_BasicPermission.vtable, sizeof(__TIB_java_security_BasicPermission.vtable)); + // Initialize vtable for this class + __TIB_java_util_PropertyPermission.vtable[1] = (VTABLE_PTR) &java_util_PropertyPermission_equals___java_lang_Object; + __TIB_java_util_PropertyPermission.vtable[7] = (VTABLE_PTR) &java_util_PropertyPermission_getActions__; + __TIB_java_util_PropertyPermission.vtable[4] = (VTABLE_PTR) &java_util_PropertyPermission_hashCode__; + __TIB_java_util_PropertyPermission.vtable[8] = (VTABLE_PTR) &java_util_PropertyPermission_implies___java_security_Permission; + __TIB_java_util_PropertyPermission.vtable[9] = (VTABLE_PTR) &java_util_PropertyPermission_newPermissionCollection__; + // Initialize interface information + __TIB_java_util_PropertyPermission.numImplementedInterfaces = 2; + __TIB_java_util_PropertyPermission.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_java_util_PropertyPermission.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_security_Guard) + + __TIB_java_util_PropertyPermission.implementedInterfaces[0][1] = &__TIB_java_security_Guard; + // Initialize itable for this class + __TIB_java_util_PropertyPermission.itableBegin = &__TIB_java_util_PropertyPermission.itable[0]; + __TIB_java_util_PropertyPermission.itable[XMLVM_ITABLE_IDX_java_security_Guard_checkGuard___java_lang_Object] = __TIB_java_util_PropertyPermission.vtable[6]; + + _STATIC_java_util_PropertyPermission_serialVersionUID = 885438825399942851; + _STATIC_java_util_PropertyPermission_serialPersistentFields = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_java_util_PropertyPermission.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_PropertyPermission.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_PropertyPermission.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_PropertyPermission.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_PropertyPermission.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_PropertyPermission.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_PropertyPermission.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_PropertyPermission.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_PropertyPermission = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_PropertyPermission); + __TIB_java_util_PropertyPermission.clazz = __CLASS_java_util_PropertyPermission; + __TIB_java_util_PropertyPermission.baseType = JAVA_NULL; + __CLASS_java_util_PropertyPermission_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_PropertyPermission); + __CLASS_java_util_PropertyPermission_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_PropertyPermission_1ARRAY); + __CLASS_java_util_PropertyPermission_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_PropertyPermission_2ARRAY); + java_util_PropertyPermission___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_PropertyPermission] + //XMLVM_END_WRAPPER + + __TIB_java_util_PropertyPermission.classInitialized = 1; +} + +void __DELETE_java_util_PropertyPermission(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_PropertyPermission] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_PropertyPermission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_security_BasicPermission(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_PropertyPermission*) me)->fields.java_util_PropertyPermission.read_ = 0; + ((java_util_PropertyPermission*) me)->fields.java_util_PropertyPermission.write_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_PropertyPermission] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_PropertyPermission() +{ XMLVM_CLASS_INIT(java_util_PropertyPermission) +java_util_PropertyPermission* me = (java_util_PropertyPermission*) XMLVM_MALLOC(sizeof(java_util_PropertyPermission)); + me->tib = &__TIB_java_util_PropertyPermission; + __INIT_INSTANCE_MEMBERS_java_util_PropertyPermission(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_PropertyPermission] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_PropertyPermission() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG java_util_PropertyPermission_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(java_util_PropertyPermission) + return _STATIC_java_util_PropertyPermission_serialVersionUID; +} + +void java_util_PropertyPermission_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(java_util_PropertyPermission) +_STATIC_java_util_PropertyPermission_serialVersionUID = v; +} + +JAVA_OBJECT java_util_PropertyPermission_GET_serialPersistentFields() +{ + XMLVM_CLASS_INIT(java_util_PropertyPermission) + return _STATIC_java_util_PropertyPermission_serialPersistentFields; +} + +void java_util_PropertyPermission_PUT_serialPersistentFields(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(java_util_PropertyPermission) +_STATIC_java_util_PropertyPermission_serialPersistentFields = v; +} + +void java_util_PropertyPermission___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission___CLINIT___] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 157) + _r0.i = 1; + XMLVM_CLASS_INIT(java_io_ObjectStreamField) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_io_ObjectStreamField, _r0.i); + _r1.i = 0; + _r2.o = __NEW_java_io_ObjectStreamField(); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 158) + // "actions" + _r3.o = xmlvm_create_java_string_from_pool(668); + XMLVM_CLASS_INIT(java_lang_String) + _r4.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(2) + java_io_ObjectStreamField___INIT____java_lang_String_java_lang_Class(_r2.o, _r3.o, _r4.o); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + java_util_PropertyPermission_PUT_serialPersistentFields( _r0.o); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 43) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_PropertyPermission___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 59) + XMLVM_CHECK_NPE(0) + java_security_BasicPermission___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 60) + XMLVM_CHECK_NPE(0) + java_util_PropertyPermission_decodeActions___java_lang_String(_r0.o, _r2.o); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 61) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_PropertyPermission_decodeActions___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_decodeActions___java_lang_String] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "decodeActions", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 1; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 64) + _r0.o = __NEW_java_util_StringTokenizer(); + _r1.o = org_apache_harmony_luni_util_Util_toASCIILowerCase___java_lang_String(_r5.o); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 65) + // " \011\012\015," + _r2.o = xmlvm_create_java_string_from_pool(669); + XMLVM_CHECK_NPE(0) + java_util_StringTokenizer___INIT____java_lang_String_java_lang_String(_r0.o, _r1.o, _r2.o); + label12:; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 66) + XMLVM_CHECK_NPE(0) + _r1.i = java_util_StringTokenizer_hasMoreTokens__(_r0.o); + if (_r1.i != 0) goto label32; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 76) + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_PropertyPermission*) _r4.o)->fields.java_util_PropertyPermission.read_; + if (_r0.i != 0) goto label64; + XMLVM_CHECK_NPE(4) + _r0.i = ((java_util_PropertyPermission*) _r4.o)->fields.java_util_PropertyPermission.write_; + if (_r0.i != 0) goto label64; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 77) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label32:; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 67) + XMLVM_CHECK_NPE(0) + _r1.o = java_util_StringTokenizer_nextToken__(_r0.o); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 68) + // "read" + _r2.o = xmlvm_create_java_string_from_pool(670); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[1])(_r1.o, _r2.o); + if (_r2.i == 0) goto label47; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 69) + XMLVM_CHECK_NPE(4) + ((java_util_PropertyPermission*) _r4.o)->fields.java_util_PropertyPermission.read_ = _r3.i; + goto label12; + label47:; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 70) + // "write" + _r2.o = xmlvm_create_java_string_from_pool(671); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[1])(_r1.o, _r2.o); + if (_r1.i == 0) goto label58; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 71) + XMLVM_CHECK_NPE(4) + ((java_util_PropertyPermission*) _r4.o)->fields.java_util_PropertyPermission.write_ = _r3.i; + goto label12; + label58:; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 73) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label64:; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 79) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_PropertyPermission_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 97) + XMLVM_CHECK_NPE(3) + _r0.i = java_security_BasicPermission_equals___java_lang_Object(_r3.o, _r4.o); + if (_r0.i == 0) goto label25; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 98) + _r4.o = _r4.o; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 99) + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_PropertyPermission*) _r3.o)->fields.java_util_PropertyPermission.read_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_PropertyPermission*) _r4.o)->fields.java_util_PropertyPermission.read_; + if (_r0.i != _r1.i) goto label23; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_PropertyPermission*) _r3.o)->fields.java_util_PropertyPermission.write_; + XMLVM_CHECK_NPE(4) + _r1.i = ((java_util_PropertyPermission*) _r4.o)->fields.java_util_PropertyPermission.write_; + if (_r0.i != _r1.i) goto label23; + _r0.i = 1; + label22:; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 101) + XMLVM_EXIT_METHOD() + return _r0.i; + label23:; + _r0 = _r2; + goto label22; + label25:; + _r0 = _r2; + goto label22; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_PropertyPermission_getActions__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_getActions__] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "getActions", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 112) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_PropertyPermission*) _r1.o)->fields.java_util_PropertyPermission.read_; + if (_r0.i == 0) goto label14; + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_PropertyPermission*) _r1.o)->fields.java_util_PropertyPermission.write_; + if (_r0.i == 0) goto label11; + // "read,write" + _r0.o = xmlvm_create_java_string_from_pool(672); + label10:; + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + // "read" + _r0.o = xmlvm_create_java_string_from_pool(670); + goto label10; + label14:; + // "write" + _r0.o = xmlvm_create_java_string_from_pool(671); + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_PropertyPermission_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_hashCode__] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 125) + XMLVM_CHECK_NPE(1) + _r0.i = java_security_BasicPermission_hashCode__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_PropertyPermission_implies___java_security_Permission(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_implies___java_security_Permission] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "implies", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + _r1.i = 0; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 138) + XMLVM_CHECK_NPE(2) + _r0.i = java_security_BasicPermission_implies___java_security_Permission(_r2.o, _r3.o); + if (_r0.i == 0) goto label29; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 139) + _r3.o = _r3.o; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 140) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_PropertyPermission*) _r2.o)->fields.java_util_PropertyPermission.read_; + if (_r0.i != 0) goto label17; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_PropertyPermission*) _r3.o)->fields.java_util_PropertyPermission.read_; + if (_r0.i != 0) goto label27; + label17:; + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_PropertyPermission*) _r2.o)->fields.java_util_PropertyPermission.write_; + if (_r0.i != 0) goto label25; + XMLVM_CHECK_NPE(3) + _r0.i = ((java_util_PropertyPermission*) _r3.o)->fields.java_util_PropertyPermission.write_; + if (_r0.i != 0) goto label27; + label25:; + _r0.i = 1; + label26:; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 142) + XMLVM_EXIT_METHOD() + return _r0.i; + label27:; + _r0 = _r1; + goto label26; + label29:; + _r0 = _r1; + goto label26; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_PropertyPermission_newPermissionCollection__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_newPermissionCollection__] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "newPermissionCollection", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 154) + + + // Red class access removed: java.util.PropertyPermissionCollection::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.PropertyPermissionCollection:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_PropertyPermission_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_writeObject___java_io_ObjectOutputStream] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "writeObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 161) + + + // Red class access removed: java.io.ObjectOutputStream::putFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 162) + // "actions" + _r1.o = xmlvm_create_java_string_from_pool(668); + //java_util_PropertyPermission_getActions__[7] + XMLVM_CHECK_NPE(3) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_PropertyPermission*) _r3.o)->tib->vtable[7])(_r3.o); + + + // Red class access removed: java.io.ObjectOutputStream$PutField::put + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 163) + + + // Red class access removed: java.io.ObjectOutputStream::writeFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 164) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_PropertyPermission_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_PropertyPermission_readObject___java_io_ObjectInputStream] + XMLVM_ENTER_METHOD("java.util.PropertyPermission", "readObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 168) + + + // Red class access removed: java.io.ObjectInputStream::readFields + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 169) + // "actions" + _r1.o = xmlvm_create_java_string_from_pool(668); + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + + + // Red class access removed: java.io.ObjectInputStream$GetField::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.o = _r0.o; + XMLVM_SOURCE_POSITION("PropertyPermission.java", 170) + XMLVM_CHECK_NPE(3) + java_util_PropertyPermission_decodeActions___java_lang_String(_r3.o, _r0.o); + XMLVM_SOURCE_POSITION("PropertyPermission.java", 171) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_PropertyPermission.h b/tests/nbody-java/java_util_PropertyPermission.h new file mode 100644 index 0000000000000..1119bd1d82765 --- /dev/null +++ b/tests/nbody-java/java_util_PropertyPermission.h @@ -0,0 +1,104 @@ +#ifndef __JAVA_UTIL_PROPERTYPERMISSION__ +#define __JAVA_UTIL_PROPERTYPERMISSION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_PropertyPermission 1 +// Implemented interfaces: +// Super Class: +#include "java_security_BasicPermission.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_ObjectStreamField +#define XMLVM_FORWARD_DECL_java_io_ObjectStreamField +XMLVM_FORWARD_DECL(java_io_ObjectStreamField) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_Permission +#define XMLVM_FORWARD_DECL_java_security_Permission +XMLVM_FORWARD_DECL(java_security_Permission) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_StringTokenizer +#define XMLVM_FORWARD_DECL_java_util_StringTokenizer +XMLVM_FORWARD_DECL(java_util_StringTokenizer) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_Util +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_Util +XMLVM_FORWARD_DECL(org_apache_harmony_luni_util_Util) +#endif +// Class declarations for java.util.PropertyPermission +XMLVM_DEFINE_CLASS(java_util_PropertyPermission, 10, XMLVM_ITABLE_SIZE_java_util_PropertyPermission) + +extern JAVA_OBJECT __CLASS_java_util_PropertyPermission; +extern JAVA_OBJECT __CLASS_java_util_PropertyPermission_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_PropertyPermission_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_PropertyPermission_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_PropertyPermission +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_PropertyPermission \ + __INSTANCE_FIELDS_java_security_BasicPermission; \ + struct { \ + JAVA_BOOLEAN read_; \ + JAVA_BOOLEAN write_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_PropertyPermission \ + } java_util_PropertyPermission + +struct java_util_PropertyPermission { + __TIB_DEFINITION_java_util_PropertyPermission* tib; + struct { + __INSTANCE_FIELDS_java_util_PropertyPermission; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_PropertyPermission +#define XMLVM_FORWARD_DECL_java_util_PropertyPermission +typedef struct java_util_PropertyPermission java_util_PropertyPermission; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_PropertyPermission 10 +#define XMLVM_VTABLE_IDX_java_util_PropertyPermission_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_PropertyPermission_getActions__ 7 +#define XMLVM_VTABLE_IDX_java_util_PropertyPermission_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_PropertyPermission_implies___java_security_Permission 8 +#define XMLVM_VTABLE_IDX_java_util_PropertyPermission_newPermissionCollection__ 9 + +void __INIT_java_util_PropertyPermission(); +void __INIT_IMPL_java_util_PropertyPermission(); +void __DELETE_java_util_PropertyPermission(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_PropertyPermission(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_PropertyPermission(); +JAVA_OBJECT __NEW_INSTANCE_java_util_PropertyPermission(); +JAVA_LONG java_util_PropertyPermission_GET_serialVersionUID(); +void java_util_PropertyPermission_PUT_serialVersionUID(JAVA_LONG v); +JAVA_OBJECT java_util_PropertyPermission_GET_serialPersistentFields(); +void java_util_PropertyPermission_PUT_serialPersistentFields(JAVA_OBJECT v); +void java_util_PropertyPermission___CLINIT_(); +void java_util_PropertyPermission___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_PropertyPermission_decodeActions___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 1 +JAVA_BOOLEAN java_util_PropertyPermission_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_OBJECT java_util_PropertyPermission_getActions__(JAVA_OBJECT me); +// Vtable index: 4 +JAVA_INT java_util_PropertyPermission_hashCode__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_BOOLEAN java_util_PropertyPermission_implies___java_security_Permission(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_util_PropertyPermission_newPermissionCollection__(JAVA_OBJECT me); +void java_util_PropertyPermission_writeObject___java_io_ObjectOutputStream(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_PropertyPermission_readObject___java_io_ObjectInputStream(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_Queue.c b/tests/nbody-java/java_util_Queue.c new file mode 100644 index 0000000000000..0ea378ca2e2c9 --- /dev/null +++ b/tests/nbody-java/java_util_Queue.c @@ -0,0 +1,77 @@ +#include "xmlvm.h" + +#include "java_util_Queue.h" + +__TIB_DEFINITION_java_util_Queue __TIB_java_util_Queue = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Queue, // classInitializer + "java.util.Queue", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Collection;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Queue; +JAVA_OBJECT __CLASS_java_util_Queue_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Queue_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Queue_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Queue() +{ + staticInitializerLock(&__TIB_java_util_Queue); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Queue.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Queue.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Queue); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Queue.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Queue.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Queue.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Queue") + __INIT_IMPL_java_util_Queue(); + } +} + +void __INIT_IMPL_java_util_Queue() +{ + __TIB_java_util_Queue.numInterfaces = 1; + //__TIB_java_util_Queue.baseInterfaces[0] = &__INTERFACE_java_util_Collection; + __TIB_java_util_Queue.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Queue.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Queue.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Queue.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Queue.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Queue = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Queue); + __TIB_java_util_Queue.clazz = __CLASS_java_util_Queue; + __TIB_java_util_Queue.baseType = JAVA_NULL; + __CLASS_java_util_Queue_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Queue); + __CLASS_java_util_Queue_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Queue_1ARRAY); + __CLASS_java_util_Queue_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Queue_2ARRAY); + + __TIB_java_util_Queue.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Queue.h b/tests/nbody-java/java_util_Queue.h new file mode 100644 index 0000000000000..ca878fd05ae84 --- /dev/null +++ b/tests/nbody-java/java_util_Queue.h @@ -0,0 +1,48 @@ +#ifndef __JAVA_UTIL_QUEUE__ +#define __JAVA_UTIL_QUEUE__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Queue_offer___java_lang_Object 88 +#define XMLVM_ITABLE_IDX_java_util_Queue_poll__ 90 +#define XMLVM_ITABLE_IDX_java_util_Queue_remove__ 92 +#define XMLVM_ITABLE_IDX_java_util_Queue_peek__ 89 +#define XMLVM_ITABLE_IDX_java_util_Queue_element__ 83 +#define XMLVM_ITABLE_IDX_java_util_Queue_addAll___java_util_Collection 78 +#define XMLVM_ITABLE_IDX_java_util_Queue_add___java_lang_Object 79 +#define XMLVM_ITABLE_IDX_java_util_Queue_clear__ 80 +#define XMLVM_ITABLE_IDX_java_util_Queue_containsAll___java_util_Collection 81 +#define XMLVM_ITABLE_IDX_java_util_Queue_contains___java_lang_Object 82 +#define XMLVM_ITABLE_IDX_java_util_Queue_equals___java_lang_Object 84 +#define XMLVM_ITABLE_IDX_java_util_Queue_hashCode__ 85 +#define XMLVM_ITABLE_IDX_java_util_Queue_isEmpty__ 86 +#define XMLVM_ITABLE_IDX_java_util_Queue_iterator__ 87 +#define XMLVM_ITABLE_IDX_java_util_Queue_removeAll___java_util_Collection 91 +#define XMLVM_ITABLE_IDX_java_util_Queue_remove___java_lang_Object 93 +#define XMLVM_ITABLE_IDX_java_util_Queue_retainAll___java_util_Collection 94 +#define XMLVM_ITABLE_IDX_java_util_Queue_size__ 95 +#define XMLVM_ITABLE_IDX_java_util_Queue_toArray__ 96 +#define XMLVM_ITABLE_IDX_java_util_Queue_toArray___java_lang_Object_1ARRAY 97 +// Implemented interfaces: +#include "java_util_Collection.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_util_Queue, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Queue; +extern JAVA_OBJECT __CLASS_java_util_Queue_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Queue_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Queue_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Queue +#define XMLVM_FORWARD_DECL_java_util_Queue +typedef struct java_util_Queue java_util_Queue; +#endif + +void __INIT_java_util_Queue(); +void __INIT_IMPL_java_util_Queue(); + +#endif diff --git a/tests/nbody-java/java_util_RandomAccess.c b/tests/nbody-java/java_util_RandomAccess.c new file mode 100644 index 0000000000000..54602981f8f47 --- /dev/null +++ b/tests/nbody-java/java_util_RandomAccess.c @@ -0,0 +1,76 @@ +#include "xmlvm.h" + +#include "java_util_RandomAccess.h" + +__TIB_DEFINITION_java_util_RandomAccess __TIB_java_util_RandomAccess = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_RandomAccess, // classInitializer + "java.util.RandomAccess", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_RandomAccess; +JAVA_OBJECT __CLASS_java_util_RandomAccess_1ARRAY; +JAVA_OBJECT __CLASS_java_util_RandomAccess_2ARRAY; +JAVA_OBJECT __CLASS_java_util_RandomAccess_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_RandomAccess() +{ + staticInitializerLock(&__TIB_java_util_RandomAccess); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_RandomAccess.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_RandomAccess.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_RandomAccess); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_RandomAccess.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_RandomAccess.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_RandomAccess.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.RandomAccess") + __INIT_IMPL_java_util_RandomAccess(); + } +} + +void __INIT_IMPL_java_util_RandomAccess() +{ + __TIB_java_util_RandomAccess.numInterfaces = 0; + __TIB_java_util_RandomAccess.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_RandomAccess.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_RandomAccess.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_RandomAccess.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_RandomAccess.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_RandomAccess = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_RandomAccess); + __TIB_java_util_RandomAccess.clazz = __CLASS_java_util_RandomAccess; + __TIB_java_util_RandomAccess.baseType = JAVA_NULL; + __CLASS_java_util_RandomAccess_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_RandomAccess); + __CLASS_java_util_RandomAccess_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_RandomAccess_1ARRAY); + __CLASS_java_util_RandomAccess_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_RandomAccess_2ARRAY); + + __TIB_java_util_RandomAccess.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_RandomAccess.h b/tests/nbody-java/java_util_RandomAccess.h new file mode 100644 index 0000000000000..36e60c8a3ef69 --- /dev/null +++ b/tests/nbody-java/java_util_RandomAccess.h @@ -0,0 +1,27 @@ +#ifndef __JAVA_UTIL_RANDOMACCESS__ +#define __JAVA_UTIL_RANDOMACCESS__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: + +XMLVM_DEFINE_CLASS(java_util_RandomAccess, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_RandomAccess; +extern JAVA_OBJECT __CLASS_java_util_RandomAccess_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_RandomAccess_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_RandomAccess_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_RandomAccess +#define XMLVM_FORWARD_DECL_java_util_RandomAccess +typedef struct java_util_RandomAccess java_util_RandomAccess; +#endif + +void __INIT_java_util_RandomAccess(); +void __INIT_IMPL_java_util_RandomAccess(); + +#endif diff --git a/tests/nbody-java/java_util_Set.c b/tests/nbody-java/java_util_Set.c new file mode 100644 index 0000000000000..df9670f023e76 --- /dev/null +++ b/tests/nbody-java/java_util_Set.c @@ -0,0 +1,78 @@ +#include "xmlvm.h" +#include "java_util_Iterator.h" + +#include "java_util_Set.h" + +__TIB_DEFINITION_java_util_Set __TIB_java_util_Set = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_Set, // classInitializer + "java.util.Set", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Collection;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_java_util_Set; +JAVA_OBJECT __CLASS_java_util_Set_1ARRAY; +JAVA_OBJECT __CLASS_java_util_Set_2ARRAY; +JAVA_OBJECT __CLASS_java_util_Set_3ARRAY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_java_util_Set() +{ + staticInitializerLock(&__TIB_java_util_Set); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_Set.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_Set.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_Set); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_Set.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_Set.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_Set.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.Set") + __INIT_IMPL_java_util_Set(); + } +} + +void __INIT_IMPL_java_util_Set() +{ + __TIB_java_util_Set.numInterfaces = 1; + //__TIB_java_util_Set.baseInterfaces[0] = &__INTERFACE_java_util_Collection; + __TIB_java_util_Set.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_Set.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_java_util_Set.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_Set.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_Set.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_java_util_Set = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_Set); + __TIB_java_util_Set.clazz = __CLASS_java_util_Set; + __TIB_java_util_Set.baseType = JAVA_NULL; + __CLASS_java_util_Set_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Set); + __CLASS_java_util_Set_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Set_1ARRAY); + __CLASS_java_util_Set_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_Set_2ARRAY); + + __TIB_java_util_Set.classInitialized = 1; +} + diff --git a/tests/nbody-java/java_util_Set.h b/tests/nbody-java/java_util_Set.h new file mode 100644 index 0000000000000..d9198b8e53cae --- /dev/null +++ b/tests/nbody-java/java_util_Set.h @@ -0,0 +1,47 @@ +#ifndef __JAVA_UTIL_SET__ +#define __JAVA_UTIL_SET__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_java_util_Set_add___java_lang_Object 17 +#define XMLVM_ITABLE_IDX_java_util_Set_addAll___java_util_Collection 16 +#define XMLVM_ITABLE_IDX_java_util_Set_clear__ 18 +#define XMLVM_ITABLE_IDX_java_util_Set_contains___java_lang_Object 20 +#define XMLVM_ITABLE_IDX_java_util_Set_containsAll___java_util_Collection 19 +#define XMLVM_ITABLE_IDX_java_util_Set_equals___java_lang_Object 21 +#define XMLVM_ITABLE_IDX_java_util_Set_hashCode__ 22 +#define XMLVM_ITABLE_IDX_java_util_Set_isEmpty__ 23 +#define XMLVM_ITABLE_IDX_java_util_Set_iterator__ 24 +#define XMLVM_ITABLE_IDX_java_util_Set_remove___java_lang_Object 26 +#define XMLVM_ITABLE_IDX_java_util_Set_removeAll___java_util_Collection 25 +#define XMLVM_ITABLE_IDX_java_util_Set_retainAll___java_util_Collection 27 +#define XMLVM_ITABLE_IDX_java_util_Set_size__ 28 +#define XMLVM_ITABLE_IDX_java_util_Set_toArray__ 29 +#define XMLVM_ITABLE_IDX_java_util_Set_toArray___java_lang_Object_1ARRAY 30 +// Implemented interfaces: +#include "java_util_Collection.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif + +XMLVM_DEFINE_CLASS(java_util_Set, 0, 0) + +extern JAVA_OBJECT __CLASS_java_util_Set; +extern JAVA_OBJECT __CLASS_java_util_Set_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Set_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_Set_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +typedef struct java_util_Set java_util_Set; +#endif + +void __INIT_java_util_Set(); +void __INIT_IMPL_java_util_Set(); + +#endif diff --git a/tests/nbody-java/java_util_StringTokenizer.c b/tests/nbody-java/java_util_StringTokenizer.c new file mode 100644 index 0000000000000..2b628ccefc7c4 --- /dev/null +++ b/tests/nbody-java/java_util_StringTokenizer.c @@ -0,0 +1,636 @@ +#include "xmlvm.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" + +#include "java_util_StringTokenizer.h" + +#define XMLVM_CURRENT_CLASS_NAME StringTokenizer +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_StringTokenizer + +__TIB_DEFINITION_java_util_StringTokenizer __TIB_java_util_StringTokenizer = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_StringTokenizer, // classInitializer + "java.util.StringTokenizer", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/util/Enumeration;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(java_util_StringTokenizer), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_StringTokenizer; +JAVA_OBJECT __CLASS_java_util_StringTokenizer_1ARRAY; +JAVA_OBJECT __CLASS_java_util_StringTokenizer_2ARRAY; +JAVA_OBJECT __CLASS_java_util_StringTokenizer_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_StringTokenizer() +{ + staticInitializerLock(&__TIB_java_util_StringTokenizer); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_StringTokenizer.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_StringTokenizer.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_StringTokenizer); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_StringTokenizer.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_StringTokenizer.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_StringTokenizer.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.StringTokenizer") + __INIT_IMPL_java_util_StringTokenizer(); + } +} + +void __INIT_IMPL_java_util_StringTokenizer() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_java_util_StringTokenizer.newInstanceFunc = __NEW_INSTANCE_java_util_StringTokenizer; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_StringTokenizer.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_java_util_StringTokenizer.vtable[6] = (VTABLE_PTR) &java_util_StringTokenizer_hasMoreElements__; + __TIB_java_util_StringTokenizer.vtable[7] = (VTABLE_PTR) &java_util_StringTokenizer_nextElement__; + // Initialize interface information + __TIB_java_util_StringTokenizer.numImplementedInterfaces = 1; + __TIB_java_util_StringTokenizer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_util_Enumeration) + + __TIB_java_util_StringTokenizer.implementedInterfaces[0][0] = &__TIB_java_util_Enumeration; + // Initialize itable for this class + __TIB_java_util_StringTokenizer.itableBegin = &__TIB_java_util_StringTokenizer.itable[0]; + __TIB_java_util_StringTokenizer.itable[XMLVM_ITABLE_IDX_java_util_Enumeration_hasMoreElements__] = __TIB_java_util_StringTokenizer.vtable[6]; + __TIB_java_util_StringTokenizer.itable[XMLVM_ITABLE_IDX_java_util_Enumeration_nextElement__] = __TIB_java_util_StringTokenizer.vtable[7]; + + + __TIB_java_util_StringTokenizer.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_StringTokenizer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_StringTokenizer.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_StringTokenizer.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_StringTokenizer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_StringTokenizer.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_StringTokenizer.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_StringTokenizer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_StringTokenizer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_StringTokenizer); + __TIB_java_util_StringTokenizer.clazz = __CLASS_java_util_StringTokenizer; + __TIB_java_util_StringTokenizer.baseType = JAVA_NULL; + __CLASS_java_util_StringTokenizer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_StringTokenizer); + __CLASS_java_util_StringTokenizer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_StringTokenizer_1ARRAY); + __CLASS_java_util_StringTokenizer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_StringTokenizer_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_StringTokenizer] + //XMLVM_END_WRAPPER + + __TIB_java_util_StringTokenizer.classInitialized = 1; +} + +void __DELETE_java_util_StringTokenizer(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_StringTokenizer] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_StringTokenizer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_StringTokenizer*) me)->fields.java_util_StringTokenizer.string_ = (java_lang_String*) JAVA_NULL; + ((java_util_StringTokenizer*) me)->fields.java_util_StringTokenizer.delimiters_ = (java_lang_String*) JAVA_NULL; + ((java_util_StringTokenizer*) me)->fields.java_util_StringTokenizer.returnDelimiters_ = 0; + ((java_util_StringTokenizer*) me)->fields.java_util_StringTokenizer.position_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_StringTokenizer] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_StringTokenizer() +{ XMLVM_CLASS_INIT(java_util_StringTokenizer) +java_util_StringTokenizer* me = (java_util_StringTokenizer*) XMLVM_MALLOC(sizeof(java_util_StringTokenizer)); + me->tib = &__TIB_java_util_StringTokenizer; + __INIT_INSTANCE_MEMBERS_java_util_StringTokenizer(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_StringTokenizer] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_StringTokenizer() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_util_StringTokenizer___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer___INIT____java_lang_String] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 123) + // " \011\012\015\014" + _r0.o = xmlvm_create_java_string_from_pool(649); + _r1.i = 0; + XMLVM_CHECK_NPE(2) + java_util_StringTokenizer___INIT____java_lang_String_java_lang_String_boolean(_r2.o, _r3.o, _r0.o, _r1.i); + XMLVM_SOURCE_POSITION("StringTokenizer.java", 124) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_StringTokenizer___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 139) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + java_util_StringTokenizer___INIT____java_lang_String_java_lang_String_boolean(_r1.o, _r2.o, _r3.o, _r0.i); + XMLVM_SOURCE_POSITION("StringTokenizer.java", 140) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_StringTokenizer___INIT____java_lang_String_java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer___INIT____java_lang_String_java_lang_String_boolean] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 156) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("StringTokenizer.java", 158) + if (_r2.o == JAVA_NULL) goto label15; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 159) + XMLVM_CHECK_NPE(1) + ((java_util_StringTokenizer*) _r1.o)->fields.java_util_StringTokenizer.string_ = _r2.o; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 160) + XMLVM_CHECK_NPE(1) + ((java_util_StringTokenizer*) _r1.o)->fields.java_util_StringTokenizer.delimiters_ = _r3.o; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 161) + XMLVM_CHECK_NPE(1) + ((java_util_StringTokenizer*) _r1.o)->fields.java_util_StringTokenizer.returnDelimiters_ = _r4.i; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 162) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_util_StringTokenizer*) _r1.o)->fields.java_util_StringTokenizer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 165) + XMLVM_EXIT_METHOD() + return; + label15:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 164) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_StringTokenizer_countTokens__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer_countTokens__] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "countTokens", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.o = me; + _r6.i = 0; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 174) + XMLVM_SOURCE_POSITION("StringTokenizer.java", 176) + XMLVM_CHECK_NPE(7) + _r0.i = ((java_util_StringTokenizer*) _r7.o)->fields.java_util_StringTokenizer.position_; + XMLVM_CHECK_NPE(7) + _r1.o = ((java_util_StringTokenizer*) _r7.o)->fields.java_util_StringTokenizer.string_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + _r2 = _r6; + _r3 = _r6; + label11:; + if (_r0.i < _r1.i) goto label18; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 188) + if (_r2.i == 0) goto label49; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 189) + _r0.i = _r3.i + 1; + label17:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 190) + XMLVM_EXIT_METHOD() + return _r0.i; + label18:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 177) + XMLVM_CHECK_NPE(7) + _r4.o = ((java_util_StringTokenizer*) _r7.o)->fields.java_util_StringTokenizer.delimiters_; + XMLVM_CHECK_NPE(7) + _r5.o = ((java_util_StringTokenizer*) _r7.o)->fields.java_util_StringTokenizer.string_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r5.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r0.i); + XMLVM_CHECK_NPE(4) + _r4.i = java_lang_String_indexOf___int_int(_r4.o, _r5.i, _r6.i); + if (_r4.i < 0) goto label47; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 178) + XMLVM_CHECK_NPE(7) + _r4.i = ((java_util_StringTokenizer*) _r7.o)->fields.java_util_StringTokenizer.returnDelimiters_; + if (_r4.i == 0) goto label38; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 179) + _r3.i = _r3.i + 1; + label38:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 180) + if (_r2.i == 0) goto label44; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 181) + _r2.i = _r3.i + 1; + _r3 = _r2; + _r2 = _r6; + label44:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 182) + _r0.i = _r0.i + 1; + goto label11; + label47:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 185) + _r2.i = 1; + goto label44; + label49:; + _r0 = _r3; + goto label17; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_StringTokenizer_hasMoreElements__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer_hasMoreElements__] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "hasMoreElements", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 200) + XMLVM_CHECK_NPE(1) + _r0.i = java_util_StringTokenizer_hasMoreTokens__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_StringTokenizer_hasMoreTokens__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer_hasMoreTokens__] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "hasMoreTokens", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + _r5.i = 1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 209) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.delimiters_; + if (_r0.o != JAVA_NULL) goto label12; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 210) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 212) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + XMLVM_SOURCE_POSITION("StringTokenizer.java", 213) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + if (_r1.i >= _r0.i) goto label32; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 214) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.returnDelimiters_; + if (_r1.i == 0) goto label28; + _r0 = _r5; + label27:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 215) + XMLVM_SOURCE_POSITION("StringTokenizer.java", 223) + XMLVM_EXIT_METHOD() + return _r0.i; + label28:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 219) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + label30:; + if (_r1.i < _r0.i) goto label34; + label32:; + _r0 = _r4; + goto label27; + label34:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 220) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.delimiters_; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r1.i); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___int_int(_r2.o, _r3.i, _r4.i); + _r3.i = -1; + if (_r2.i != _r3.i) goto label51; + _r0 = _r5; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 221) + goto label27; + label51:; + _r1.i = _r1.i + 1; + goto label30; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_StringTokenizer_nextElement__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer_nextElement__] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "nextElement", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 235) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_StringTokenizer_nextToken__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_StringTokenizer_nextToken__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer_nextToken__] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "nextToken", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r6.o = me; + _r5.i = 0; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 246) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.delimiters_; + if (_r0.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 247) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label11:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 249) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 250) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + XMLVM_SOURCE_POSITION("StringTokenizer.java", 252) + if (_r0.i >= _r1.i) goto label178; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 253) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.returnDelimiters_; + if (_r2.i == 0) goto label109; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 254) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.delimiters_; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r4.i); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___int_int(_r2.o, _r3.i, _r5.i); + if (_r2.i < 0) goto label58; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 255) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_ = _r2.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + _r0.o = java_lang_String_valueOf___char(_r0.i); + label57:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 269) + XMLVM_EXIT_METHOD() + return _r0.o; + label58:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 256) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + _r2.i = _r2.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_ = _r2.i; + label64:; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + if (_r2.i < _r1.i) goto label75; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 259) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_substring___int(_r1.o, _r0.i); + goto label57; + label75:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 257) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.delimiters_; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r4.i); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___int_int(_r2.o, _r3.i, _r5.i); + if (_r2.i < 0) goto label100; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 258) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_substring___int_int(_r1.o, _r0.i, _r2.i); + goto label57; + label100:; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + _r2.i = _r2.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_ = _r2.i; + goto label64; + label107:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 263) + _r0.i = _r0.i + 1; + label109:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 262) + if (_r0.i >= _r1.i) goto label125; + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.delimiters_; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r0.i); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___int_int(_r2.o, _r3.i, _r5.i); + if (_r2.i >= 0) goto label107; + label125:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 264) + XMLVM_CHECK_NPE(6) + ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_ = _r0.i; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 265) + if (_r0.i >= _r1.i) goto label178; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 266) + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + _r2.i = _r2.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_ = _r2.i; + label135:; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + if (_r2.i < _r1.i) goto label146; + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_substring___int(_r1.o, _r0.i); + goto label57; + label146:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 267) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.delimiters_; + XMLVM_CHECK_NPE(6) + _r3.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(6) + _r4.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r4.i); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___int_int(_r2.o, _r3.i, _r5.i); + if (_r2.i < 0) goto label171; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 268) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.string_; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_substring___int_int(_r1.o, _r0.i, _r2.i); + goto label57; + label171:; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_; + _r2.i = _r2.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_StringTokenizer*) _r6.o)->fields.java_util_StringTokenizer.position_ = _r2.i; + goto label135; + label178:; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 272) + + + // Red class access removed: java.util.NoSuchElementException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.NoSuchElementException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_StringTokenizer_nextToken___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_StringTokenizer_nextToken___java_lang_String] + XMLVM_ENTER_METHOD("java.util.StringTokenizer", "nextToken", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 286) + XMLVM_CHECK_NPE(1) + ((java_util_StringTokenizer*) _r1.o)->fields.java_util_StringTokenizer.delimiters_ = _r2.o; + XMLVM_SOURCE_POSITION("StringTokenizer.java", 287) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_StringTokenizer_nextToken__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_StringTokenizer.h b/tests/nbody-java/java_util_StringTokenizer.h new file mode 100644 index 0000000000000..17e482b459166 --- /dev/null +++ b/tests/nbody-java/java_util_StringTokenizer.h @@ -0,0 +1,76 @@ +#ifndef __JAVA_UTIL_STRINGTOKENIZER__ +#define __JAVA_UTIL_STRINGTOKENIZER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_StringTokenizer 2 +// Implemented interfaces: +#include "java_util_Enumeration.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for java.util.StringTokenizer +XMLVM_DEFINE_CLASS(java_util_StringTokenizer, 8, XMLVM_ITABLE_SIZE_java_util_StringTokenizer) + +extern JAVA_OBJECT __CLASS_java_util_StringTokenizer; +extern JAVA_OBJECT __CLASS_java_util_StringTokenizer_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_StringTokenizer_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_StringTokenizer_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_StringTokenizer +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_StringTokenizer \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT string_; \ + JAVA_OBJECT delimiters_; \ + JAVA_BOOLEAN returnDelimiters_; \ + JAVA_INT position_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_StringTokenizer \ + } java_util_StringTokenizer + +struct java_util_StringTokenizer { + __TIB_DEFINITION_java_util_StringTokenizer* tib; + struct { + __INSTANCE_FIELDS_java_util_StringTokenizer; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_StringTokenizer +#define XMLVM_FORWARD_DECL_java_util_StringTokenizer +typedef struct java_util_StringTokenizer java_util_StringTokenizer; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_StringTokenizer 8 +#define XMLVM_VTABLE_IDX_java_util_StringTokenizer_hasMoreElements__ 6 +#define XMLVM_VTABLE_IDX_java_util_StringTokenizer_nextElement__ 7 + +void __INIT_java_util_StringTokenizer(); +void __INIT_IMPL_java_util_StringTokenizer(); +void __DELETE_java_util_StringTokenizer(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_StringTokenizer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_StringTokenizer(); +JAVA_OBJECT __NEW_INSTANCE_java_util_StringTokenizer(); +void java_util_StringTokenizer___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void java_util_StringTokenizer___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_StringTokenizer___INIT____java_lang_String_java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_BOOLEAN n3); +JAVA_INT java_util_StringTokenizer_countTokens__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_BOOLEAN java_util_StringTokenizer_hasMoreElements__(JAVA_OBJECT me); +JAVA_BOOLEAN java_util_StringTokenizer_hasMoreTokens__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_util_StringTokenizer_nextElement__(JAVA_OBJECT me); +JAVA_OBJECT java_util_StringTokenizer_nextToken__(JAVA_OBJECT me); +JAVA_OBJECT java_util_StringTokenizer_nextToken___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_WeakHashMap.c b/tests/nbody-java/java_util_WeakHashMap.c new file mode 100644 index 0000000000000..4b7c79885cde5 --- /dev/null +++ b/tests/nbody-java/java_util_WeakHashMap.c @@ -0,0 +1,1428 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_lang_ref_Reference.h" +#include "java_lang_ref_ReferenceQueue.h" +#include "java_util_Collection.h" +#include "java_util_Set.h" +#include "java_util_WeakHashMap_Entry.h" + +#include "java_util_WeakHashMap.h" + +#define XMLVM_CURRENT_CLASS_NAME WeakHashMap +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_WeakHashMap + +__TIB_DEFINITION_java_util_WeakHashMap __TIB_java_util_WeakHashMap = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_WeakHashMap, // classInitializer + "java.util.WeakHashMap", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/util/AbstractMap;Ljava/util/Map;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractMap, // extends + sizeof(java_util_WeakHashMap), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_WeakHashMap; +JAVA_OBJECT __CLASS_java_util_WeakHashMap_1ARRAY; +JAVA_OBJECT __CLASS_java_util_WeakHashMap_2ARRAY; +JAVA_OBJECT __CLASS_java_util_WeakHashMap_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_java_util_WeakHashMap_DEFAULT_SIZE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_WeakHashMap() +{ + staticInitializerLock(&__TIB_java_util_WeakHashMap); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_WeakHashMap.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_WeakHashMap.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_WeakHashMap); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_WeakHashMap.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_WeakHashMap.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_WeakHashMap.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.WeakHashMap") + __INIT_IMPL_java_util_WeakHashMap(); + } +} + +void __INIT_IMPL_java_util_WeakHashMap() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_util_AbstractMap) + __TIB_java_util_WeakHashMap.newInstanceFunc = __NEW_INSTANCE_java_util_WeakHashMap; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_WeakHashMap.vtable, __TIB_java_util_AbstractMap.vtable, sizeof(__TIB_java_util_AbstractMap.vtable)); + // Initialize vtable for this class + __TIB_java_util_WeakHashMap.vtable[6] = (VTABLE_PTR) &java_util_WeakHashMap_clear__; + __TIB_java_util_WeakHashMap.vtable[7] = (VTABLE_PTR) &java_util_WeakHashMap_containsKey___java_lang_Object; + __TIB_java_util_WeakHashMap.vtable[9] = (VTABLE_PTR) &java_util_WeakHashMap_entrySet__; + __TIB_java_util_WeakHashMap.vtable[12] = (VTABLE_PTR) &java_util_WeakHashMap_keySet__; + __TIB_java_util_WeakHashMap.vtable[17] = (VTABLE_PTR) &java_util_WeakHashMap_values__; + __TIB_java_util_WeakHashMap.vtable[10] = (VTABLE_PTR) &java_util_WeakHashMap_get___java_lang_Object; + __TIB_java_util_WeakHashMap.vtable[8] = (VTABLE_PTR) &java_util_WeakHashMap_containsValue___java_lang_Object; + __TIB_java_util_WeakHashMap.vtable[11] = (VTABLE_PTR) &java_util_WeakHashMap_isEmpty__; + __TIB_java_util_WeakHashMap.vtable[14] = (VTABLE_PTR) &java_util_WeakHashMap_put___java_lang_Object_java_lang_Object; + __TIB_java_util_WeakHashMap.vtable[13] = (VTABLE_PTR) &java_util_WeakHashMap_putAll___java_util_Map; + __TIB_java_util_WeakHashMap.vtable[15] = (VTABLE_PTR) &java_util_WeakHashMap_remove___java_lang_Object; + __TIB_java_util_WeakHashMap.vtable[16] = (VTABLE_PTR) &java_util_WeakHashMap_size__; + // Initialize interface information + __TIB_java_util_WeakHashMap.numImplementedInterfaces = 1; + __TIB_java_util_WeakHashMap.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_util_Map) + + __TIB_java_util_WeakHashMap.implementedInterfaces[0][0] = &__TIB_java_util_Map; + // Initialize itable for this class + __TIB_java_util_WeakHashMap.itableBegin = &__TIB_java_util_WeakHashMap.itable[0]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_clear__] = __TIB_java_util_WeakHashMap.vtable[6]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsKey___java_lang_Object] = __TIB_java_util_WeakHashMap.vtable[7]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_containsValue___java_lang_Object] = __TIB_java_util_WeakHashMap.vtable[8]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_entrySet__] = __TIB_java_util_WeakHashMap.vtable[9]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_equals___java_lang_Object] = __TIB_java_util_WeakHashMap.vtable[1]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object] = __TIB_java_util_WeakHashMap.vtable[10]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_hashCode__] = __TIB_java_util_WeakHashMap.vtable[4]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_isEmpty__] = __TIB_java_util_WeakHashMap.vtable[11]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_keySet__] = __TIB_java_util_WeakHashMap.vtable[12]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_putAll___java_util_Map] = __TIB_java_util_WeakHashMap.vtable[13]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object] = __TIB_java_util_WeakHashMap.vtable[14]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_remove___java_lang_Object] = __TIB_java_util_WeakHashMap.vtable[15]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_size__] = __TIB_java_util_WeakHashMap.vtable[16]; + __TIB_java_util_WeakHashMap.itable[XMLVM_ITABLE_IDX_java_util_Map_values__] = __TIB_java_util_WeakHashMap.vtable[17]; + + _STATIC_java_util_WeakHashMap_DEFAULT_SIZE = 16; + + __TIB_java_util_WeakHashMap.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_WeakHashMap.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_WeakHashMap.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_WeakHashMap.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_WeakHashMap.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_WeakHashMap.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_WeakHashMap.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_WeakHashMap.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_WeakHashMap = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_WeakHashMap); + __TIB_java_util_WeakHashMap.clazz = __CLASS_java_util_WeakHashMap; + __TIB_java_util_WeakHashMap.baseType = JAVA_NULL; + __CLASS_java_util_WeakHashMap_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_WeakHashMap); + __CLASS_java_util_WeakHashMap_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_WeakHashMap_1ARRAY); + __CLASS_java_util_WeakHashMap_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_WeakHashMap_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_WeakHashMap] + //XMLVM_END_WRAPPER + + __TIB_java_util_WeakHashMap.classInitialized = 1; +} + +void __DELETE_java_util_WeakHashMap(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_WeakHashMap] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_WeakHashMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_util_AbstractMap(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_WeakHashMap*) me)->fields.java_util_WeakHashMap.referenceQueue_ = (java_lang_ref_ReferenceQueue*) JAVA_NULL; + ((java_util_WeakHashMap*) me)->fields.java_util_WeakHashMap.elementCount_ = 0; + ((java_util_WeakHashMap*) me)->fields.java_util_WeakHashMap.elementData_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((java_util_WeakHashMap*) me)->fields.java_util_WeakHashMap.loadFactor_ = 0; + ((java_util_WeakHashMap*) me)->fields.java_util_WeakHashMap.threshold_ = 0; + ((java_util_WeakHashMap*) me)->fields.java_util_WeakHashMap.modCount_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_WeakHashMap] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_WeakHashMap() +{ XMLVM_CLASS_INIT(java_util_WeakHashMap) +java_util_WeakHashMap* me = (java_util_WeakHashMap*) XMLVM_MALLOC(sizeof(java_util_WeakHashMap)); + me->tib = &__TIB_java_util_WeakHashMap; + __INIT_INSTANCE_MEMBERS_java_util_WeakHashMap(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_WeakHashMap] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_WeakHashMap() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_java_util_WeakHashMap(); + java_util_WeakHashMap___INIT___(me); + return me; +} + +JAVA_INT java_util_WeakHashMap_GET_DEFAULT_SIZE() +{ + XMLVM_CLASS_INIT(java_util_WeakHashMap) + return _STATIC_java_util_WeakHashMap_DEFAULT_SIZE; +} + +void java_util_WeakHashMap_PUT_DEFAULT_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(java_util_WeakHashMap) +_STATIC_java_util_WeakHashMap_DEFAULT_SIZE = v; +} + +JAVA_OBJECT java_util_WeakHashMap_newEntryArray___int(JAVA_INT n1) +{ + XMLVM_CLASS_INIT(java_util_WeakHashMap) + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_newEntryArray___int] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "newEntryArray", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 53) + XMLVM_CLASS_INIT(java_util_WeakHashMap_Entry) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_util_WeakHashMap_Entry, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap___INIT___] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 188) + _r0.i = 16; + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap___INIT____int(_r1.o, _r0.i); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 189) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap___INIT____int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap___INIT____int] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 200) + XMLVM_CHECK_NPE(1) + java_util_AbstractMap___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 201) + if (_r2.i < 0) goto label34; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 202) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 203) + if (_r2.i != 0) goto label32; + _r0.i = 1; + label11:; + _r0.o = java_util_WeakHashMap_newEntryArray___int(_r0.i); + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.elementData_ = _r0.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 204) + _r0.i = 7500; + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.loadFactor_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 205) + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_computeMaxSize__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 206) + _r0.o = __NEW_java_lang_ref_ReferenceQueue(); + XMLVM_CHECK_NPE(0) + java_lang_ref_ReferenceQueue___INIT___(_r0.o); + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.referenceQueue_ = _r0.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 210) + XMLVM_EXIT_METHOD() + return; + label32:; + _r0 = _r2; + goto label11; + label34:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 208) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap___INIT____int_float] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.i = n1; + _r3.f = n2; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 224) + XMLVM_CHECK_NPE(1) + java_util_AbstractMap___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 225) + if (_r2.i < 0) goto label42; + _r0.f = 0.0; + _r0.i = _r3.f > _r0.f ? 1 : (_r3.f == _r0.f ? 0 : -1); + if (_r0.i <= 0) goto label42; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 226) + _r0.i = 0; + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 227) + if (_r2.i != 0) goto label40; + _r0.i = 1; + label16:; + _r0.o = java_util_WeakHashMap_newEntryArray___int(_r0.i); + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.elementData_ = _r0.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 228) + _r0.f = 10000.0; + _r0.f = _r0.f * _r3.f; + _r0.i = (JAVA_INT) _r0.f; + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.loadFactor_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 229) + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_computeMaxSize__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 230) + _r0.o = __NEW_java_lang_ref_ReferenceQueue(); + XMLVM_CHECK_NPE(0) + java_lang_ref_ReferenceQueue___INIT___(_r0.o); + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.referenceQueue_ = _r0.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 234) + XMLVM_EXIT_METHOD() + return; + label40:; + _r0 = _r2; + goto label16; + label42:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 232) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap___INIT____java_util_Map] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 244) + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r3.o); + _r1.i = 6; + if (_r0.i >= _r1.i) goto label16; + _r0.i = 11; + label9:; + XMLVM_CHECK_NPE(2) + java_util_WeakHashMap___INIT____int(_r2.o, _r0.i); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 245) + XMLVM_CHECK_NPE(2) + java_util_WeakHashMap_putAllImpl___java_util_Map(_r2.o, _r3.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 246) + XMLVM_EXIT_METHOD() + return; + label16:; + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r3.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_size__])(_r3.o); + _r0.i = _r0.i * 2; + goto label9; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap_clear__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_clear__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "clear", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 256) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_WeakHashMap*) _r2.o)->fields.java_util_WeakHashMap.elementCount_; + if (_r0.i <= 0) goto label27; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 257) + _r0.i = 0; + XMLVM_CHECK_NPE(2) + ((java_util_WeakHashMap*) _r2.o)->fields.java_util_WeakHashMap.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 258) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_WeakHashMap*) _r2.o)->fields.java_util_WeakHashMap.elementData_; + _r1.o = JAVA_NULL; + + + // Red class access removed: java.util.Arrays::fill + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 259) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_WeakHashMap*) _r2.o)->fields.java_util_WeakHashMap.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(2) + ((java_util_WeakHashMap*) _r2.o)->fields.java_util_WeakHashMap.modCount_ = _r0.i; + label19:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 260) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_WeakHashMap*) _r2.o)->fields.java_util_WeakHashMap.referenceQueue_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_ref_ReferenceQueue_poll__(_r0.o); + if (_r0.o != JAVA_NULL) goto label19; + label27:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 264) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap_computeMaxSize__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_computeMaxSize__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "computeMaxSize", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 267) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_WeakHashMap*) _r4.o)->fields.java_util_WeakHashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.l = (JAVA_LONG) _r0.i; + XMLVM_CHECK_NPE(4) + _r2.i = ((java_util_WeakHashMap*) _r4.o)->fields.java_util_WeakHashMap.loadFactor_; + _r2.l = (JAVA_LONG) _r2.i; + _r0.l = _r0.l * _r2.l; + _r2.l = 10000; + _r0.l = _r0.l / _r2.l; + _r0.i = (JAVA_INT) _r0.l; + XMLVM_CHECK_NPE(4) + ((java_util_WeakHashMap*) _r4.o)->fields.java_util_WeakHashMap.threshold_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 268) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_WeakHashMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_containsKey___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "containsKey", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 280) + XMLVM_CHECK_NPE(1) + _r0.o = java_util_WeakHashMap_getEntry___java_lang_Object(_r1.o, _r2.o); + if (_r0.o == JAVA_NULL) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_entrySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_entrySet__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "entrySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 293) + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_poll__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 294) + + + // Red class access removed: java.util.WeakHashMap$1::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.WeakHashMap$1:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_keySet__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_keySet__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "keySet", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 351) + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_poll__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 352) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_; + if (_r0.o != JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 353) + + + // Red class access removed: java.util.WeakHashMap$2::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.WeakHashMap$2:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_ = _r0.o; + label14:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 408) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.keySet_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_values__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_values__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "values", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 432) + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_poll__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 433) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_; + if (_r0.o != JAVA_NULL) goto label14; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 434) + + + // Red class access removed: java.util.WeakHashMap$3::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.WeakHashMap$3:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(1) + ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_ = _r0.o; + label14:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 460) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_AbstractMap*) _r1.o)->fields.java_util_AbstractMap.valuesCollection_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_get___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "get", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 473) + XMLVM_CHECK_NPE(3) + java_util_WeakHashMap_poll__(_r3.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 474) + if (_r4.o == JAVA_NULL) goto label42; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 475) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[4])(_r4.o); + _r1.i = 2147483647; + _r0.i = _r0.i & _r1.i; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_WeakHashMap*) _r3.o)->fields.java_util_WeakHashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r0.i = _r0.i % _r1.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 476) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_WeakHashMap*) _r3.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label22:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 477) + if (_r0.o != JAVA_NULL) goto label26; + _r0 = _r2; + label25:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 483) + XMLVM_SOURCE_POSITION("WeakHashMap.java", 492) + XMLVM_EXIT_METHOD() + return _r0.o; + label26:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 478) + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_ref_Reference_get__(_r0.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i == 0) goto label39; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 479) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.value_; + goto label25; + label39:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 481) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label22; + label42:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 485) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_WeakHashMap*) _r3.o)->fields.java_util_WeakHashMap.elementData_; + _r1.i = 0; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + label47:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 486) + if (_r0.o != JAVA_NULL) goto label51; + _r0 = _r2; + goto label25; + label51:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 487) + XMLVM_CHECK_NPE(0) + _r1.i = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r1.i == 0) goto label58; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 488) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.value_; + goto label25; + label58:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 490) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label47; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_getEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_getEntry___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "getEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 496) + XMLVM_CHECK_NPE(3) + java_util_WeakHashMap_poll__(_r3.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 497) + if (_r4.o == JAVA_NULL) goto label39; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 498) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(4) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[4])(_r4.o); + _r1.i = 2147483647; + _r0.i = _r0.i & _r1.i; + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_WeakHashMap*) _r3.o)->fields.java_util_WeakHashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r0.i = _r0.i % _r1.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 499) + XMLVM_CHECK_NPE(3) + _r1.o = ((java_util_WeakHashMap*) _r3.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label22:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 500) + if (_r0.o != JAVA_NULL) goto label26; + _r0 = _r2; + label25:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 506) + XMLVM_SOURCE_POSITION("WeakHashMap.java", 515) + XMLVM_EXIT_METHOD() + return _r0.o; + label26:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 501) + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_ref_Reference_get__(_r0.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(4) + _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[1])(_r4.o, _r1.o); + if (_r1.i != 0) goto label25; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 504) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label22; + label39:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 508) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_WeakHashMap*) _r3.o)->fields.java_util_WeakHashMap.elementData_; + _r1.i = 0; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + label44:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 509) + if (_r0.o != JAVA_NULL) goto label48; + _r0 = _r2; + goto label25; + label48:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 510) + XMLVM_CHECK_NPE(0) + _r1.i = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r1.i != 0) goto label25; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 513) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label44; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_WeakHashMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_containsValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "containsValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = me; + _r5.o = n1; + _r3.i = 1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 528) + XMLVM_CHECK_NPE(4) + java_util_WeakHashMap_poll__(_r4.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 529) + if (_r5.o == JAVA_NULL) goto label44; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 530) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_WeakHashMap*) _r4.o)->fields.java_util_WeakHashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + label9:; + _r0.i = _r0.i + -1; + if (_r0.i >= 0) goto label15; + label13:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 553) + _r0.i = 0; + label14:; + XMLVM_EXIT_METHOD() + return _r0.i; + label15:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 531) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_WeakHashMap*) _r4.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label19:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 532) + if (_r1.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 533) + XMLVM_CHECK_NPE(1) + _r2.o = java_lang_ref_Reference_get__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 534) + if (_r2.o != JAVA_NULL) goto label31; + XMLVM_CHECK_NPE(1) + _r2.i = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r2.i == 0) goto label41; + label31:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 535) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.value_; + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(5) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o); + if (_r2.i == 0) goto label41; + _r0 = _r3; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 536) + goto label14; + label41:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 538) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label19; + label44:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 542) + XMLVM_CHECK_NPE(4) + _r0.o = ((java_util_WeakHashMap*) _r4.o)->fields.java_util_WeakHashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + label47:; + _r0.i = _r0.i + -1; + if (_r0.i < 0) goto label13; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 543) + XMLVM_CHECK_NPE(4) + _r1.o = ((java_util_WeakHashMap*) _r4.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label55:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 544) + if (_r1.o == JAVA_NULL) goto label47; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 545) + XMLVM_CHECK_NPE(1) + _r2.o = java_lang_ref_Reference_get__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 546) + if (_r2.o != JAVA_NULL) goto label67; + XMLVM_CHECK_NPE(1) + _r2.i = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r2.i == 0) goto label73; + label67:; + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.value_; + if (_r2.o != JAVA_NULL) goto label73; + _r0 = _r3; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 547) + goto label14; + label73:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 549) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label55; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_WeakHashMap_isEmpty__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_isEmpty__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "isEmpty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 563) + //java_util_WeakHashMap_size__[16] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_WeakHashMap*) _r1.o)->tib->vtable[16])(_r1.o); + if (_r0.i != 0) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap_poll__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_poll__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "poll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + label0:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 569) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.referenceQueue_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_ref_ReferenceQueue_poll__(_r0.o); + _r0.o = _r0.o; + if (_r0.o != JAVA_NULL) goto label11; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 572) + XMLVM_EXIT_METHOD() + return; + label11:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 570) + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_removeEntry___java_util_WeakHashMap_Entry(_r1.o, _r0.o); + goto label0; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap_removeEntry___java_util_WeakHashMap_Entry(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_removeEntry___java_util_WeakHashMap_Entry] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "removeEntry", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r5.o = me; + _r6.o = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 575) + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 576) + XMLVM_CHECK_NPE(6) + _r1.i = ((java_util_WeakHashMap_Entry*) _r6.o)->fields.java_util_WeakHashMap_Entry.hash_; + _r2.i = 2147483647; + _r1.i = _r1.i & _r2.i; + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_WeakHashMap*) _r5.o)->fields.java_util_WeakHashMap.elementData_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r1.i = _r1.i % _r2.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 577) + XMLVM_CHECK_NPE(5) + _r2.o = ((java_util_WeakHashMap*) _r5.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + label15:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 580) + if (_r2.o != JAVA_NULL) goto label18; + label17:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 594) + XMLVM_EXIT_METHOD() + return; + label18:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 581) + if (_r6.o != _r2.o) goto label46; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 582) + XMLVM_CHECK_NPE(5) + _r3.i = ((java_util_WeakHashMap*) _r5.o)->fields.java_util_WeakHashMap.modCount_; + _r3.i = _r3.i + 1; + XMLVM_CHECK_NPE(5) + ((java_util_WeakHashMap*) _r5.o)->fields.java_util_WeakHashMap.modCount_ = _r3.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 583) + if (_r0.o != JAVA_NULL) goto label41; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 584) + XMLVM_CHECK_NPE(5) + _r0.o = ((java_util_WeakHashMap*) _r5.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(2) + _r2.o = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.next_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + label34:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 588) + XMLVM_CHECK_NPE(5) + _r0.i = ((java_util_WeakHashMap*) _r5.o)->fields.java_util_WeakHashMap.elementCount_; + _r1.i = 1; + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(5) + ((java_util_WeakHashMap*) _r5.o)->fields.java_util_WeakHashMap.elementCount_ = _r0.i; + goto label17; + label41:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 586) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.next_; + XMLVM_CHECK_NPE(0) + ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.next_ = _r1.o; + goto label34; + label46:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 592) + XMLVM_CHECK_NPE(2) + _r0.o = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.next_; + _r4 = _r2; + _r2 = _r0; + _r0 = _r4; + goto label15; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_put___java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "put", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r6.o = me; + _r7.o = n1; + _r8.o = n2; + _r4.i = 2147483647; + _r3.i = 0; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 608) + XMLVM_CHECK_NPE(6) + java_util_WeakHashMap_poll__(_r6.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 611) + if (_r7.o == JAVA_NULL) goto label83; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 612) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[4])(_r7.o); + _r0.i = _r0.i & _r4.i; + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r0.i = _r0.i % _r1.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 613) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + label22:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 614) + if (_r1.o == JAVA_NULL) goto label116; + XMLVM_CHECK_NPE(1) + _r2.o = java_lang_ref_Reference_get__(_r1.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[1])(_r7.o, _r2.o); + if (_r2.i == 0) goto label80; + _r5 = _r1; + _r1 = _r0; + _r0 = _r5; + label37:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 623) + if (_r0.o != JAVA_NULL) goto label108; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 624) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.modCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.modCount_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 625) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementCount_; + _r0.i = _r0.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementCount_ = _r0.i; + XMLVM_CHECK_NPE(6) + _r2.i = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.threshold_; + if (_r0.i <= _r2.i) goto label114; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 626) + XMLVM_CHECK_NPE(6) + java_util_WeakHashMap_rehash__(_r6.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 627) + if (_r7.o != JAVA_NULL) goto label98; + _r0 = _r3; + label61:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 630) + _r1.o = __NEW_java_util_WeakHashMap_Entry(); + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.referenceQueue_; + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_Entry___INIT____java_lang_Object_java_lang_Object_java_lang_ref_ReferenceQueue(_r1.o, _r7.o, _r8.o, _r2.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 631) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.next_ = _r2.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 632) + XMLVM_CHECK_NPE(6) + _r2.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 633) + _r0.o = JAVA_NULL; + label79:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 637) + XMLVM_EXIT_METHOD() + return _r0.o; + label80:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 615) + XMLVM_CHECK_NPE(1) + _r1.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label22; + label83:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 618) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + label87:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 619) + if (_r0.o == JAVA_NULL) goto label93; + XMLVM_CHECK_NPE(0) + _r1.i = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r1.i == 0) goto label95; + label93:; + _r1 = _r3; + goto label37; + label95:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 620) + XMLVM_CHECK_NPE(0) + _r0.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.next_; + goto label87; + label98:; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[4])(_r7.o); + _r0.i = _r0.i & _r4.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 628) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r0.i = _r0.i % _r1.i; + goto label61; + label108:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 635) + XMLVM_CHECK_NPE(0) + _r1.o = ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.value_; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 636) + XMLVM_CHECK_NPE(0) + ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.value_ = _r8.o; + _r0 = _r1; + goto label79; + label114:; + _r0 = _r1; + goto label61; + label116:; + _r5 = _r1; + _r1 = _r0; + _r0 = _r5; + goto label37; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap_rehash__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_rehash__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "rehash", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r8.o = me; + _r7.i = 0; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 641) + XMLVM_CHECK_NPE(8) + _r0.o = ((java_util_WeakHashMap*) _r8.o)->fields.java_util_WeakHashMap.elementData_; + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o)); + _r0.i = _r0.i << 1; + if (_r0.i != 0) goto label9; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 642) + XMLVM_SOURCE_POSITION("WeakHashMap.java", 643) + _r0.i = 1; + label9:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 645) + _r1.o = java_util_WeakHashMap_newEntryArray___int(_r0.i); + _r2 = _r7; + label14:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 646) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_WeakHashMap*) _r8.o)->fields.java_util_WeakHashMap.elementData_; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r2.i < _r3.i) goto label25; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 657) + XMLVM_CHECK_NPE(8) + ((java_util_WeakHashMap*) _r8.o)->fields.java_util_WeakHashMap.elementData_ = _r1.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 658) + XMLVM_CHECK_NPE(8) + java_util_WeakHashMap_computeMaxSize__(_r8.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 659) + XMLVM_EXIT_METHOD() + return; + label25:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 647) + XMLVM_CHECK_NPE(8) + _r3.o = ((java_util_WeakHashMap*) _r8.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + label29:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 648) + if (_r3.o != JAVA_NULL) goto label34; + _r2.i = _r2.i + 1; + goto label14; + label34:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 649) + XMLVM_CHECK_NPE(3) + _r4.i = ((java_util_WeakHashMap_Entry*) _r3.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r4.i == 0) goto label49; + _r4 = _r7; + label39:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 651) + XMLVM_CHECK_NPE(3) + _r5.o = ((java_util_WeakHashMap_Entry*) _r3.o)->fields.java_util_WeakHashMap_Entry.next_; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 652) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + XMLVM_CHECK_NPE(3) + ((java_util_WeakHashMap_Entry*) _r3.o)->fields.java_util_WeakHashMap_Entry.next_ = _r6.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 653) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r3.o; + _r3 = _r5; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 654) + goto label29; + label49:; + XMLVM_CHECK_NPE(3) + _r4.i = ((java_util_WeakHashMap_Entry*) _r3.o)->fields.java_util_WeakHashMap_Entry.hash_; + _r5.i = 2147483647; + _r4.i = _r4.i & _r5.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 650) + _r4.i = _r4.i % _r0.i; + goto label39; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_putAll___java_util_Map] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "putAll", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 673) + XMLVM_CHECK_NPE(0) + java_util_WeakHashMap_putAllImpl___java_util_Map(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 674) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_remove___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "remove", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + _r4.o = JAVA_NULL; + _r3.i = 0; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 686) + XMLVM_CHECK_NPE(6) + java_util_WeakHashMap_poll__(_r6.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 689) + if (_r7.o == JAVA_NULL) goto label72; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 690) + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(7) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[4])(_r7.o); + _r1.i = 2147483647; + _r0.i = _r0.i & _r1.i; + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r0.i = _r0.i % _r1.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 691) + XMLVM_CHECK_NPE(6) + _r1.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r2 = _r1; + _r1 = _r4; + label25:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 692) + if (_r2.o == JAVA_NULL) goto label99; + XMLVM_CHECK_NPE(2) + _r3.o = java_lang_ref_Reference_get__(_r2.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(7) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r7.o)->tib->vtable[1])(_r7.o, _r3.o); + if (_r3.i == 0) goto label66; + _r5 = _r1; + _r1 = _r2; + _r2 = _r0; + _r0 = _r5; + label41:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 703) + if (_r1.o == JAVA_NULL) goto label97; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 704) + XMLVM_CHECK_NPE(6) + _r3.i = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.modCount_; + _r3.i = _r3.i + 1; + XMLVM_CHECK_NPE(6) + ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.modCount_ = _r3.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 705) + if (_r0.o != JAVA_NULL) goto label92; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 706) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(1) + _r3.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.next_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.o; + label57:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 710) + XMLVM_CHECK_NPE(6) + _r0.i = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementCount_; + _r2.i = 1; + _r0.i = _r0.i - _r2.i; + XMLVM_CHECK_NPE(6) + ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementCount_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 711) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.value_; + label65:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 713) + XMLVM_EXIT_METHOD() + return _r0.o; + label66:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 694) + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.next_; + _r5 = _r2; + _r2 = _r1; + _r1 = _r5; + goto label25; + label72:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 697) + XMLVM_CHECK_NPE(6) + _r0.o = ((java_util_WeakHashMap*) _r6.o)->fields.java_util_WeakHashMap.elementData_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r1 = _r0; + _r0 = _r4; + label78:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 698) + if (_r1.o == JAVA_NULL) goto label84; + XMLVM_CHECK_NPE(1) + _r2.i = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r2.i == 0) goto label86; + label84:; + _r2 = _r3; + goto label41; + label86:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 700) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.next_; + _r5 = _r1; + _r1 = _r0; + _r0 = _r5; + goto label78; + label92:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 708) + XMLVM_CHECK_NPE(1) + _r2.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.next_; + XMLVM_CHECK_NPE(0) + ((java_util_WeakHashMap_Entry*) _r0.o)->fields.java_util_WeakHashMap_Entry.next_ = _r2.o; + goto label57; + label97:; + _r0 = _r4; + goto label65; + label99:; + _r5 = _r1; + _r1 = _r2; + _r2 = _r0; + _r0 = _r5; + goto label41; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_WeakHashMap_size__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_size__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 723) + XMLVM_CHECK_NPE(1) + java_util_WeakHashMap_poll__(_r1.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 724) + XMLVM_CHECK_NPE(1) + _r0.i = ((java_util_WeakHashMap*) _r1.o)->fields.java_util_WeakHashMap.elementCount_; + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void java_util_WeakHashMap_putAllImpl___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_putAllImpl___java_util_Map] + XMLVM_ENTER_METHOD("java.util.WeakHashMap", "putAllImpl", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 728) + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r2.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_entrySet__])(_r2.o); + if (_r0.o == JAVA_NULL) goto label9; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 729) + XMLVM_CHECK_NPE(1) + java_util_AbstractMap_putAll___java_util_Map(_r1.o, _r2.o); + label9:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 731) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_WeakHashMap.h b/tests/nbody-java/java_util_WeakHashMap.h new file mode 100644 index 0000000000000..c89b54f963dd2 --- /dev/null +++ b/tests/nbody-java/java_util_WeakHashMap.h @@ -0,0 +1,130 @@ +#ifndef __JAVA_UTIL_WEAKHASHMAP__ +#define __JAVA_UTIL_WEAKHASHMAP__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_WeakHashMap 14 +// Implemented interfaces: +#include "java_util_Map.h" +// Super Class: +#include "java_util_AbstractMap.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_Reference +#define XMLVM_FORWARD_DECL_java_lang_ref_Reference +XMLVM_FORWARD_DECL(java_lang_ref_Reference) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +#define XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +XMLVM_FORWARD_DECL(java_lang_ref_ReferenceQueue) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collection +#define XMLVM_FORWARD_DECL_java_util_Collection +XMLVM_FORWARD_DECL(java_util_Collection) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Set +#define XMLVM_FORWARD_DECL_java_util_Set +XMLVM_FORWARD_DECL(java_util_Set) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_WeakHashMap_Entry +#define XMLVM_FORWARD_DECL_java_util_WeakHashMap_Entry +XMLVM_FORWARD_DECL(java_util_WeakHashMap_Entry) +#endif +// Class declarations for java.util.WeakHashMap +XMLVM_DEFINE_CLASS(java_util_WeakHashMap, 18, XMLVM_ITABLE_SIZE_java_util_WeakHashMap) + +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap; +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_WeakHashMap +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_WeakHashMap \ + __INSTANCE_FIELDS_java_util_AbstractMap; \ + struct { \ + JAVA_OBJECT referenceQueue_; \ + JAVA_INT elementCount_; \ + JAVA_OBJECT elementData_; \ + JAVA_INT loadFactor_; \ + JAVA_INT threshold_; \ + JAVA_INT modCount_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_WeakHashMap \ + } java_util_WeakHashMap + +struct java_util_WeakHashMap { + __TIB_DEFINITION_java_util_WeakHashMap* tib; + struct { + __INSTANCE_FIELDS_java_util_WeakHashMap; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_WeakHashMap +#define XMLVM_FORWARD_DECL_java_util_WeakHashMap +typedef struct java_util_WeakHashMap java_util_WeakHashMap; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_WeakHashMap 18 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_clear__ 6 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_containsKey___java_lang_Object 7 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_entrySet__ 9 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_keySet__ 12 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_values__ 17 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_get___java_lang_Object 10 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_containsValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_isEmpty__ 11 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_put___java_lang_Object_java_lang_Object 14 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_putAll___java_util_Map 13 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_remove___java_lang_Object 15 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_size__ 16 + +void __INIT_java_util_WeakHashMap(); +void __INIT_IMPL_java_util_WeakHashMap(); +void __DELETE_java_util_WeakHashMap(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_WeakHashMap(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_WeakHashMap(); +JAVA_OBJECT __NEW_INSTANCE_java_util_WeakHashMap(); +JAVA_INT java_util_WeakHashMap_GET_DEFAULT_SIZE(); +void java_util_WeakHashMap_PUT_DEFAULT_SIZE(JAVA_INT v); +JAVA_OBJECT java_util_WeakHashMap_newEntryArray___int(JAVA_INT n1); +void java_util_WeakHashMap___INIT___(JAVA_OBJECT me); +void java_util_WeakHashMap___INIT____int(JAVA_OBJECT me, JAVA_INT n1); +void java_util_WeakHashMap___INIT____int_float(JAVA_OBJECT me, JAVA_INT n1, JAVA_FLOAT n2); +void java_util_WeakHashMap___INIT____java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 6 +void java_util_WeakHashMap_clear__(JAVA_OBJECT me); +void java_util_WeakHashMap_computeMaxSize__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_BOOLEAN java_util_WeakHashMap_containsKey___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +JAVA_OBJECT java_util_WeakHashMap_entrySet__(JAVA_OBJECT me); +// Vtable index: 12 +JAVA_OBJECT java_util_WeakHashMap_keySet__(JAVA_OBJECT me); +// Vtable index: 17 +JAVA_OBJECT java_util_WeakHashMap_values__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_OBJECT java_util_WeakHashMap_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT java_util_WeakHashMap_getEntry___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_BOOLEAN java_util_WeakHashMap_containsValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 11 +JAVA_BOOLEAN java_util_WeakHashMap_isEmpty__(JAVA_OBJECT me); +void java_util_WeakHashMap_poll__(JAVA_OBJECT me); +void java_util_WeakHashMap_removeEntry___java_util_WeakHashMap_Entry(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 14 +JAVA_OBJECT java_util_WeakHashMap_put___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void java_util_WeakHashMap_rehash__(JAVA_OBJECT me); +// Vtable index: 13 +void java_util_WeakHashMap_putAll___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 15 +JAVA_OBJECT java_util_WeakHashMap_remove___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 16 +JAVA_INT java_util_WeakHashMap_size__(JAVA_OBJECT me); +void java_util_WeakHashMap_putAllImpl___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/java_util_WeakHashMap_Entry.c b/tests/nbody-java/java_util_WeakHashMap_Entry.c new file mode 100644 index 0000000000000..5bea2e984a3bf --- /dev/null +++ b/tests/nbody-java/java_util_WeakHashMap_Entry.c @@ -0,0 +1,398 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_ref_ReferenceQueue.h" + +#include "java_util_WeakHashMap_Entry.h" + +#define XMLVM_CURRENT_CLASS_NAME WeakHashMap_Entry +#define XMLVM_CURRENT_PKG_CLASS_NAME java_util_WeakHashMap_Entry + +__TIB_DEFINITION_java_util_WeakHashMap_Entry __TIB_java_util_WeakHashMap_Entry = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_java_util_WeakHashMap_Entry, // classInitializer + "java.util.WeakHashMap$Entry", // className + "java.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/ref/WeakReference;Ljava/util/Map$Entry;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_ref_WeakReference, // extends + sizeof(java_util_WeakHashMap_Entry), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry; +JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry_1ARRAY; +JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry_2ARRAY; +JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_java_util_WeakHashMap_Entry() +{ + staticInitializerLock(&__TIB_java_util_WeakHashMap_Entry); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_java_util_WeakHashMap_Entry.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_java_util_WeakHashMap_Entry.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_java_util_WeakHashMap_Entry); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_java_util_WeakHashMap_Entry.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_java_util_WeakHashMap_Entry.classInitialized) { + // do nothing + } + } + } else { + __TIB_java_util_WeakHashMap_Entry.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("java.util.WeakHashMap$Entry") + __INIT_IMPL_java_util_WeakHashMap_Entry(); + } +} + +void __INIT_IMPL_java_util_WeakHashMap_Entry() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_ref_WeakReference) + __TIB_java_util_WeakHashMap_Entry.newInstanceFunc = __NEW_INSTANCE_java_util_WeakHashMap_Entry; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_java_util_WeakHashMap_Entry.vtable, __TIB_java_lang_ref_WeakReference.vtable, sizeof(__TIB_java_lang_ref_WeakReference.vtable)); + // Initialize vtable for this class + __TIB_java_util_WeakHashMap_Entry.vtable[6] = (VTABLE_PTR) &java_util_WeakHashMap_Entry_getKey__; + __TIB_java_util_WeakHashMap_Entry.vtable[7] = (VTABLE_PTR) &java_util_WeakHashMap_Entry_getValue__; + __TIB_java_util_WeakHashMap_Entry.vtable[8] = (VTABLE_PTR) &java_util_WeakHashMap_Entry_setValue___java_lang_Object; + __TIB_java_util_WeakHashMap_Entry.vtable[1] = (VTABLE_PTR) &java_util_WeakHashMap_Entry_equals___java_lang_Object; + __TIB_java_util_WeakHashMap_Entry.vtable[4] = (VTABLE_PTR) &java_util_WeakHashMap_Entry_hashCode__; + __TIB_java_util_WeakHashMap_Entry.vtable[5] = (VTABLE_PTR) &java_util_WeakHashMap_Entry_toString__; + // Initialize interface information + __TIB_java_util_WeakHashMap_Entry.numImplementedInterfaces = 1; + __TIB_java_util_WeakHashMap_Entry.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_util_Map_Entry) + + __TIB_java_util_WeakHashMap_Entry.implementedInterfaces[0][0] = &__TIB_java_util_Map_Entry; + // Initialize itable for this class + __TIB_java_util_WeakHashMap_Entry.itableBegin = &__TIB_java_util_WeakHashMap_Entry.itable[0]; + __TIB_java_util_WeakHashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_equals___java_lang_Object] = __TIB_java_util_WeakHashMap_Entry.vtable[1]; + __TIB_java_util_WeakHashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__] = __TIB_java_util_WeakHashMap_Entry.vtable[6]; + __TIB_java_util_WeakHashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__] = __TIB_java_util_WeakHashMap_Entry.vtable[7]; + __TIB_java_util_WeakHashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_hashCode__] = __TIB_java_util_WeakHashMap_Entry.vtable[4]; + __TIB_java_util_WeakHashMap_Entry.itable[XMLVM_ITABLE_IDX_java_util_Map_Entry_setValue___java_lang_Object] = __TIB_java_util_WeakHashMap_Entry.vtable[8]; + + + __TIB_java_util_WeakHashMap_Entry.declaredFields = &__field_reflection_data[0]; + __TIB_java_util_WeakHashMap_Entry.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_java_util_WeakHashMap_Entry.constructorDispatcherFunc = constructor_dispatcher; + __TIB_java_util_WeakHashMap_Entry.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_java_util_WeakHashMap_Entry.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_java_util_WeakHashMap_Entry.methodDispatcherFunc = method_dispatcher; + __TIB_java_util_WeakHashMap_Entry.declaredMethods = &__method_reflection_data[0]; + __TIB_java_util_WeakHashMap_Entry.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_java_util_WeakHashMap_Entry = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_WeakHashMap_Entry); + __TIB_java_util_WeakHashMap_Entry.clazz = __CLASS_java_util_WeakHashMap_Entry; + __TIB_java_util_WeakHashMap_Entry.baseType = JAVA_NULL; + __CLASS_java_util_WeakHashMap_Entry_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_WeakHashMap_Entry); + __CLASS_java_util_WeakHashMap_Entry_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_WeakHashMap_Entry_1ARRAY); + __CLASS_java_util_WeakHashMap_Entry_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_WeakHashMap_Entry_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_java_util_WeakHashMap_Entry] + //XMLVM_END_WRAPPER + + __TIB_java_util_WeakHashMap_Entry.classInitialized = 1; +} + +void __DELETE_java_util_WeakHashMap_Entry(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_WeakHashMap_Entry] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_java_util_WeakHashMap_Entry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_ref_WeakReference(me, 0 || derivedClassWillRegisterFinalizer); + ((java_util_WeakHashMap_Entry*) me)->fields.java_util_WeakHashMap_Entry.hash_ = 0; + ((java_util_WeakHashMap_Entry*) me)->fields.java_util_WeakHashMap_Entry.isNull_ = 0; + ((java_util_WeakHashMap_Entry*) me)->fields.java_util_WeakHashMap_Entry.value_ = (java_lang_Object*) JAVA_NULL; + ((java_util_WeakHashMap_Entry*) me)->fields.java_util_WeakHashMap_Entry.next_ = (java_util_WeakHashMap_Entry*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_WeakHashMap_Entry] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_java_util_WeakHashMap_Entry() +{ XMLVM_CLASS_INIT(java_util_WeakHashMap_Entry) +java_util_WeakHashMap_Entry* me = (java_util_WeakHashMap_Entry*) XMLVM_MALLOC(sizeof(java_util_WeakHashMap_Entry)); + me->tib = &__TIB_java_util_WeakHashMap_Entry; + __INIT_INSTANCE_MEMBERS_java_util_WeakHashMap_Entry(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_java_util_WeakHashMap_Entry] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_java_util_WeakHashMap_Entry() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void java_util_WeakHashMap_Entry___INIT____java_lang_Object_java_lang_Object_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_Entry___INIT____java_lang_Object_java_lang_Object_java_lang_ref_ReferenceQueue] + XMLVM_ENTER_METHOD("java.util.WeakHashMap$Entry", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + _r5.o = n3; + _r1.i = 0; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 71) + XMLVM_CHECK_NPE(2) + java_lang_ref_WeakReference___INIT____java_lang_Object_java_lang_ref_ReferenceQueue(_r2.o, _r3.o, _r5.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 72) + if (_r3.o != JAVA_NULL) goto label19; + _r0.i = 1; + label7:; + XMLVM_CHECK_NPE(2) + ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.isNull_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 73) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.isNull_; + if (_r0.i == 0) goto label21; + _r0 = _r1; + label14:; + XMLVM_CHECK_NPE(2) + ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.hash_ = _r0.i; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 74) + XMLVM_CHECK_NPE(2) + ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.value_ = _r4.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 75) + XMLVM_EXIT_METHOD() + return; + label19:; + _r0 = _r1; + goto label7; + label21:; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(3) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[4])(_r3.o); + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_Entry_getKey__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_Entry_getKey__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap$Entry", "getKey", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 78) + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_ref_Reference_get__(_r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_Entry_getValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_Entry_getValue__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap$Entry", "getValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 82) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.value_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_Entry_setValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_Entry_setValue___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap$Entry", "setValue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 86) + XMLVM_CHECK_NPE(1) + _r0.o = ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.value_; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 87) + XMLVM_CHECK_NPE(1) + ((java_util_WeakHashMap_Entry*) _r1.o)->fields.java_util_WeakHashMap_Entry.value_ = _r2.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 88) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN java_util_WeakHashMap_Entry_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_Entry_equals___java_lang_Object] + XMLVM_ENTER_METHOD("java.util.WeakHashMap$Entry", "equals", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.o = n1; + _r2.i = 0; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 93) + XMLVM_CLASS_INIT(java_util_Map_Entry) + _r0.i = XMLVM_ISA(_r4.o, __CLASS_java_util_Map_Entry); + if (_r0.i != 0) goto label7; + _r0 = _r2; + label6:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 94) + XMLVM_SOURCE_POSITION("WeakHashMap.java", 101) + XMLVM_EXIT_METHOD() + return _r0.i; + label7:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 96) + _r4.o = _r4.o; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 97) + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_ref_Reference_get__(_r3.o); + XMLVM_SOURCE_POSITION("WeakHashMap.java", 98) + if (_r0.o != JAVA_NULL) goto label35; + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r4.o); + if (_r0.o != _r1.o) goto label45; + label21:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 100) + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_WeakHashMap_Entry*) _r3.o)->fields.java_util_WeakHashMap_Entry.value_; + if (_r0.o != JAVA_NULL) goto label47; + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_WeakHashMap_Entry*) _r3.o)->fields.java_util_WeakHashMap_Entry.value_; + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r4.o); + if (_r0.o != _r1.o) goto label45; + label33:; + _r0.i = 1; + goto label6; + label35:; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 99) + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getKey__])(_r4.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r0.i != 0) goto label21; + label45:; + _r0 = _r2; + goto label6; + label47:; + XMLVM_CHECK_NPE(3) + _r0.o = ((java_util_WeakHashMap_Entry*) _r3.o)->fields.java_util_WeakHashMap_Entry.value_; + XMLVM_CHECK_NPE(4) + _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_Entry_getValue__])(_r4.o); + //java_lang_Object_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(0) + _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r0.o)->tib->vtable[1])(_r0.o, _r1.o); + if (_r0.i == 0) goto label45; + goto label33; + //XMLVM_END_WRAPPER +} + +JAVA_INT java_util_WeakHashMap_Entry_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_Entry_hashCode__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap$Entry", "hashCode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 106) + XMLVM_CHECK_NPE(2) + _r0.i = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.hash_; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.value_; + if (_r1.o != JAVA_NULL) goto label9; + _r1.i = 0; + label7:; + _r0.i = _r0.i + _r1.i; + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.value_; + //java_lang_Object_hashCode__[4] + XMLVM_CHECK_NPE(1) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[4])(_r1.o); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT java_util_WeakHashMap_Entry_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[java_util_WeakHashMap_Entry_toString__] + XMLVM_ENTER_METHOD("java.util.WeakHashMap$Entry", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("WeakHashMap.java", 111) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_ref_Reference_get__(_r2.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r1.o); + // "=" + _r1.o = xmlvm_create_java_string_from_pool(648); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(2) + _r1.o = ((java_util_WeakHashMap_Entry*) _r2.o)->fields.java_util_WeakHashMap_Entry.value_; + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_Object(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/java_util_WeakHashMap_Entry.h b/tests/nbody-java/java_util_WeakHashMap_Entry.h new file mode 100644 index 0000000000000..ba2ac7c371b16 --- /dev/null +++ b/tests/nbody-java/java_util_WeakHashMap_Entry.h @@ -0,0 +1,90 @@ +#ifndef __JAVA_UTIL_WEAKHASHMAP_ENTRY__ +#define __JAVA_UTIL_WEAKHASHMAP_ENTRY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_java_util_WeakHashMap_Entry 5 +// Implemented interfaces: +#include "java_util_Map_Entry.h" +// Super Class: +#include "java_lang_ref_WeakReference.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +#define XMLVM_FORWARD_DECL_java_lang_ref_ReferenceQueue +XMLVM_FORWARD_DECL(java_lang_ref_ReferenceQueue) +#endif +// Class declarations for java.util.WeakHashMap$Entry +XMLVM_DEFINE_CLASS(java_util_WeakHashMap_Entry, 9, XMLVM_ITABLE_SIZE_java_util_WeakHashMap_Entry) + +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry; +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry_1ARRAY; +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry_2ARRAY; +extern JAVA_OBJECT __CLASS_java_util_WeakHashMap_Entry_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_java_util_WeakHashMap_Entry +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_java_util_WeakHashMap_Entry \ + __INSTANCE_FIELDS_java_lang_ref_WeakReference; \ + struct { \ + JAVA_INT hash_; \ + JAVA_BOOLEAN isNull_; \ + JAVA_OBJECT value_; \ + JAVA_OBJECT next_; \ + __ADDITIONAL_INSTANCE_FIELDS_java_util_WeakHashMap_Entry \ + } java_util_WeakHashMap_Entry + +struct java_util_WeakHashMap_Entry { + __TIB_DEFINITION_java_util_WeakHashMap_Entry* tib; + struct { + __INSTANCE_FIELDS_java_util_WeakHashMap_Entry; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_java_util_WeakHashMap_Entry +#define XMLVM_FORWARD_DECL_java_util_WeakHashMap_Entry +typedef struct java_util_WeakHashMap_Entry java_util_WeakHashMap_Entry; +#endif + +#define XMLVM_VTABLE_SIZE_java_util_WeakHashMap_Entry 9 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_Entry_getKey__ 6 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_Entry_getValue__ 7 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_Entry_setValue___java_lang_Object 8 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_Entry_equals___java_lang_Object 1 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_Entry_hashCode__ 4 +#define XMLVM_VTABLE_IDX_java_util_WeakHashMap_Entry_toString__ 5 + +void __INIT_java_util_WeakHashMap_Entry(); +void __INIT_IMPL_java_util_WeakHashMap_Entry(); +void __DELETE_java_util_WeakHashMap_Entry(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_java_util_WeakHashMap_Entry(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_java_util_WeakHashMap_Entry(); +JAVA_OBJECT __NEW_INSTANCE_java_util_WeakHashMap_Entry(); +void java_util_WeakHashMap_Entry___INIT____java_lang_Object_java_lang_Object_java_lang_ref_ReferenceQueue(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +// Vtable index: 6 +JAVA_OBJECT java_util_WeakHashMap_Entry_getKey__(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT java_util_WeakHashMap_Entry_getValue__(JAVA_OBJECT me); +// Vtable index: 8 +JAVA_OBJECT java_util_WeakHashMap_Entry_setValue___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 1 +JAVA_BOOLEAN java_util_WeakHashMap_Entry_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 4 +JAVA_INT java_util_WeakHashMap_Entry_hashCode__(JAVA_OBJECT me); +// Vtable index: 5 +JAVA_OBJECT java_util_WeakHashMap_Entry_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/native_java_io_File.c b/tests/nbody-java/native_java_io_File.c new file mode 100644 index 0000000000000..b10e85e57750f --- /dev/null +++ b/tests/nbody-java/native_java_io_File.c @@ -0,0 +1,309 @@ + +#include "xmlvm.h" +#include "java_io_File.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include +#include +#include +#include "xmlvm-util.h" + +char * readlink_malloc (const char *filename) +{ + int size = 100; + char *buffer = NULL; + + while (1) + { + buffer = (char *) XMLVM_ATOMIC_MALLOC (size); + int nchars = readlink (filename, buffer, size); + if (nchars < 0) + { + XMLVM_FREE(buffer); + return NULL; + } + if (nchars < size) + return buffer; + XMLVM_FREE(buffer); + size *= 2; + } +} +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_io_File_oneTimeInitialization__() +{ + //XMLVM_BEGIN_NATIVE[java_io_File_oneTimeInitialization__] + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_io_File_rootsImpl__() +{ + //XMLVM_BEGIN_NATIVE[java_io_File_rootsImpl__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_isCaseSensitiveImpl__() +{ + //XMLVM_BEGIN_NATIVE[java_io_File_isCaseSensitiveImpl__] + return 1; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_deleteDirImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_deleteDirImpl___byte_1ARRAY] + char* fileName = XMLVMUtil_convertFromByteArray(n1); + return rmdir(fileName) == 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_deleteFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_deleteFileImpl___byte_1ARRAY] + char* fileName = XMLVMUtil_convertFromByteArray(n1); + return remove(fileName) == 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_existsImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_existsImpl___byte_1ARRAY] + char* fileName = XMLVMUtil_convertFromByteArray(n1); + struct stat buf; + int err; + err = stat(fileName, &buf); + return err != -1; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_io_File_getCanonImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_getCanonImpl___byte_1ARRAY] + //See HARMONY/classlib/modules/luni/src/main/native/luni/shared/file.c + //They don't seem to do more either on a UNIX file system + return n1; + //XMLVM_END_NATIVE +} + +JAVA_LONG java_io_File_getTotalSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_getTotalSpaceImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG java_io_File_getUsableSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_getUsableSpaceImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG java_io_File_getFreeSpaceImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_getFreeSpaceImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_isDirectoryImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_isDirectoryImpl___byte_1ARRAY] + char* fileName = XMLVMUtil_convertFromByteArray(n1); + struct stat buf; + int err; + err = stat(fileName, &buf); + return buf.st_mode & S_IFDIR; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_isFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_isFileImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_isHiddenImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_isHiddenImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_isReadOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_isReadOnlyImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_isWriteOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_isWriteOnlyImpl___byte_1ARRAY] + return (JAVA_BOOLEAN) 0; //TODO: Check this natively + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_io_File_getLinkImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_getLinkImpl___byte_1ARRAY] + const char* fileName = XMLVMUtil_convertFromByteArray(n1); + char* resolved = readlink_malloc(fileName); + if(resolved == NULL) { + return n1; + } else { + XMLVMElem _r0; + int length = strlen(resolved); + _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, length); + char* data = (char*) ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_; + XMLVM_MEMCPY(data, resolved, length); + return _r0.o; + } + //XMLVM_END_NATIVE +} + +JAVA_LONG java_io_File_lastModifiedImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_lastModifiedImpl___byte_1ARRAY] + char* fileName = XMLVMUtil_convertFromByteArray(n1); + struct stat buf; + int err; + err = stat(fileName, &buf); + return buf.st_mtime; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_setLastModifiedImpl___byte_1ARRAY_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_setLastModifiedImpl___byte_1ARRAY_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_setReadOnlyImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_setReadOnlyImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_setReadableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_setReadableImpl___byte_1ARRAY_boolean_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_setWritableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_setWritableImpl___byte_1ARRAY_boolean_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG java_io_File_lengthImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_lengthImpl___byte_1ARRAY] + char* fileName = XMLVMUtil_convertFromByteArray(n1); + FILE* fp = fopen(fileName, "rb"); + fseek(fp, 0L, SEEK_END); + JAVA_LONG size = ftell(fp); + fclose(fp); + return size; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_io_File_listImpl___byte_1ARRAY(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_listImpl___byte_1ARRAY] + // TODO: There may be memory management issues in this implementation + org_xmlvm_runtime_XMLVMArray *array = + (org_xmlvm_runtime_XMLVMArray *) __NEW_org_xmlvm_runtime_XMLVMArray(); + array->fields.org_xmlvm_runtime_XMLVMArray.type_ = __CLASS_org_xmlvm_runtime_XMLVMArray; + array->fields.org_xmlvm_runtime_XMLVMArray.length_ = 256; + array->fields.org_xmlvm_runtime_XMLVMArray.array_ = XMLVM_MALLOC(sizeof(JAVA_OBJECT) * 256); + + JAVA_OBJECT *subarray = (JAVA_OBJECT *) array->fields.org_xmlvm_runtime_XMLVMArray.array_; + + int i = 0; + for (i = 0; i < 256; i++) { + org_xmlvm_runtime_XMLVMArray *array2 = + (org_xmlvm_runtime_XMLVMArray *) __NEW_org_xmlvm_runtime_XMLVMArray(); + array2->fields.org_xmlvm_runtime_XMLVMArray.type_ = __CLASS_byte; + array2->fields.org_xmlvm_runtime_XMLVMArray.length_ = 256; + array2->fields.org_xmlvm_runtime_XMLVMArray.array_ = XMLVM_MALLOC(sizeof(char) * 256); + subarray[i] = (JAVA_OBJECT) array2; + } + + // Get the + char* fileName = XMLVMUtil_convertFromByteArray(n1); + + DIR *d; + struct dirent *e; + if (d = opendir(fileName)) { + i = 0; + int j = 0; + while (e = readdir(d)) { + if (i < 256) { // TODO: What if there are more than 256 files? + org_xmlvm_runtime_XMLVMArray *array2 = (org_xmlvm_runtime_XMLVMArray *) (subarray[i]); + char *bytearray = array2->fields.org_xmlvm_runtime_XMLVMArray.array_; + for (j = 0; j < 256; j++) { + bytearray[j] = e->d_name[j]; + if (e->d_name[j] == 0) { + array2->fields.org_xmlvm_runtime_XMLVMArray.length_ = j; + break; + } + } + i++; + + } + + // Add e->d_name to array! + } + array->fields.org_xmlvm_runtime_XMLVMArray.length_ = i; + closedir(d); + } else { + // TODO: Throw IOException? + } + return array; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_mkdirImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_mkdirImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_io_File_newFileImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_newFileImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_renameToImpl___byte_1ARRAY_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_renameToImpl___byte_1ARRAY_byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_setExecutableImpl___byte_1ARRAY_boolean_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_setExecutableImpl___byte_1ARRAY_boolean_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_io_File_isExecutableImpl___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_io_File_isExecutableImpl___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_io_FileDescriptor.c b/tests/nbody-java/native_java_io_FileDescriptor.c new file mode 100644 index 0000000000000..aa065e9607153 --- /dev/null +++ b/tests/nbody-java/native_java_io_FileDescriptor.c @@ -0,0 +1,21 @@ + +#include "xmlvm.h" +#include "java_io_FileDescriptor.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_io_FileDescriptor_oneTimeInitialization__() +{ + //XMLVM_BEGIN_NATIVE[java_io_FileDescriptor_oneTimeInitialization__] + //XMLVM_END_NATIVE +} + +void java_io_FileDescriptor_syncImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_io_FileDescriptor_syncImpl__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_lang_Class.c b/tests/nbody-java/native_java_lang_Class.c new file mode 100644 index 0000000000000..f04c95e58bfd1 --- /dev/null +++ b/tests/nbody-java/native_java_lang_Class.c @@ -0,0 +1,899 @@ + +#include "xmlvm.h" +#include "java_lang_Class.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#include "java_lang_reflect_Field.h" +#include "java_lang_reflect_Constructor.h" +#include "java_lang_reflect_Method.h" +#include "org_xmlvm_runtime_XMLVMArray.h" +#include "java_lang_ClassNotFoundException.h" +#include "xmlvm-util.h" + + +__TIB_DEFINITION_boolean __TIB_boolean; +__TIB_DEFINITION_byte __TIB_byte; +__TIB_DEFINITION_char __TIB_char; +__TIB_DEFINITION_short __TIB_short; +__TIB_DEFINITION_int __TIB_int; +__TIB_DEFINITION_long __TIB_long; +__TIB_DEFINITION_float __TIB_float; +__TIB_DEFINITION_double __TIB_double; +__TIB_DEFINITION_void __TIB_void; + +JAVA_OBJECT __CLASS_boolean; +JAVA_OBJECT __CLASS_byte; +JAVA_OBJECT __CLASS_char; +JAVA_OBJECT __CLASS_short; +JAVA_OBJECT __CLASS_int; +JAVA_OBJECT __CLASS_long; +JAVA_OBJECT __CLASS_float; +JAVA_OBJECT __CLASS_double; +JAVA_OBJECT __CLASS_void; + + +JAVA_OBJECT __CLASS_boolean_1ARRAY; +JAVA_OBJECT __CLASS_byte_1ARRAY; +JAVA_OBJECT __CLASS_char_1ARRAY; +JAVA_OBJECT __CLASS_short_1ARRAY; +JAVA_OBJECT __CLASS_int_1ARRAY; +JAVA_OBJECT __CLASS_long_1ARRAY; +JAVA_OBJECT __CLASS_float_1ARRAY; +JAVA_OBJECT __CLASS_double_1ARRAY; + +JAVA_OBJECT __CLASS_boolean_2ARRAY; +JAVA_OBJECT __CLASS_byte_2ARRAY; +JAVA_OBJECT __CLASS_char_2ARRAY; +JAVA_OBJECT __CLASS_short_2ARRAY; +JAVA_OBJECT __CLASS_int_2ARRAY; +JAVA_OBJECT __CLASS_long_2ARRAY; +JAVA_OBJECT __CLASS_float_2ARRAY; +JAVA_OBJECT __CLASS_double_2ARRAY; + +JAVA_OBJECT __CLASS_boolean_3ARRAY; +JAVA_OBJECT __CLASS_byte_3ARRAY; +JAVA_OBJECT __CLASS_char_3ARRAY; +JAVA_OBJECT __CLASS_short_3ARRAY; +JAVA_OBJECT __CLASS_int_3ARRAY; +JAVA_OBJECT __CLASS_long_3ARRAY; +JAVA_OBJECT __CLASS_float_3ARRAY; +JAVA_OBJECT __CLASS_double_3ARRAY; + + +void init_primitive_class(void* clazz, const char* name) +{ + __TIB_DEFINITION_TEMPLATE* c = (__TIB_DEFINITION_TEMPLATE*) clazz; + //TODO who is initializing this class? + c->classInitializationBegan = 1; + c->classInitialized = 1; + c->initializerThreadId = -1; + c->className = name; + c->extends = (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Class; + c->flags = XMLVM_TYPE_PRIMITIVE; + XMLVM_MEMCPY(c->vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); +} + +void __INIT_boolean() +{ + init_primitive_class(&__TIB_boolean, "boolean"); +} + +void __INIT_byte() +{ + init_primitive_class(&__TIB_byte, "byte"); +} + +void __INIT_char() +{ + init_primitive_class(&__TIB_char, "char"); +} + +void __INIT_short() +{ + init_primitive_class(&__TIB_short, "short"); +} + +void __INIT_int() +{ + init_primitive_class(&__TIB_int, "int"); +} + +void __INIT_long() +{ + init_primitive_class(&__TIB_long, "long"); +} + +void __INIT_float() +{ + init_primitive_class(&__TIB_float, "float"); +} + +void __INIT_double() +{ + init_primitive_class(&__TIB_double, "double"); +} + +void __INIT_void() +{ + init_primitive_class(&__TIB_void, "void"); +} + +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_lang_Class_initNativeLayer__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_initNativeLayer__] + __INIT_boolean(); + __INIT_byte(); + __INIT_char(); + __INIT_short(); + __INIT_int(); + __INIT_long(); + __INIT_float(); + __INIT_double(); + __INIT_void(); + + __CLASS_boolean = XMLVM_CREATE_CLASS_OBJECT(&__TIB_boolean); + __CLASS_byte = XMLVM_CREATE_CLASS_OBJECT(&__TIB_byte); + __CLASS_char = XMLVM_CREATE_CLASS_OBJECT(&__TIB_char); + __CLASS_short = XMLVM_CREATE_CLASS_OBJECT(&__TIB_short); + __CLASS_int = XMLVM_CREATE_CLASS_OBJECT(&__TIB_int); + __CLASS_long = XMLVM_CREATE_CLASS_OBJECT(&__TIB_long); + __CLASS_float = XMLVM_CREATE_CLASS_OBJECT(&__TIB_float); + __CLASS_double = XMLVM_CREATE_CLASS_OBJECT(&__TIB_double); + __CLASS_void = XMLVM_CREATE_CLASS_OBJECT(&__TIB_void); + + __CLASS_boolean_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_boolean); + __CLASS_byte_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_byte); + __CLASS_char_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_char); + __CLASS_short_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_short); + __CLASS_int_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_int); + __CLASS_long_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_long); + __CLASS_float_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_float); + __CLASS_double_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_double); + + __CLASS_boolean_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_boolean_1ARRAY); + __CLASS_byte_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_byte_1ARRAY); + __CLASS_char_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_char_1ARRAY); + __CLASS_short_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_short_1ARRAY); + __CLASS_int_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_int_1ARRAY); + __CLASS_long_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_long_1ARRAY); + __CLASS_float_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_float_1ARRAY); + __CLASS_double_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_double_1ARRAY); + + __CLASS_boolean_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_boolean_2ARRAY); + __CLASS_byte_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_byte_2ARRAY); + __CLASS_char_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_char_2ARRAY); + __CLASS_short_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_short_2ARRAY); + __CLASS_int_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_int_2ARRAY); + __CLASS_long_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_long_2ARRAY); + __CLASS_float_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_float_2ARRAY); + __CLASS_double_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_double_2ARRAY); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getStackClasses___int_boolean(JAVA_INT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getStackClasses___int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader] + static JAVA_OBJECT classMap = JAVA_NULL; + if (classMap == JAVA_NULL) { + classMap = XMLVMUtil_NEW_HashMap(); + } + java_lang_Class* clazz = XMLVMUtil_HashMap_get(classMap, n1); + if (clazz != JAVA_NULL) { + return clazz; + } + int i = 0; + __TIB_DEFINITION_TEMPLATE* tib; + for (i = 0; i < __xmlvm_num_tib; i++) { + tib = __xmlvm_tib_list[i]; + if (xmlvm_java_string_cmp(n1, tib->className)) { + XMLVM_REFLECTION_USED(tib->className) + break; + } + } + if (i == __xmlvm_num_tib) { + // Class not found + XMLVM_THROW(java_lang_ClassNotFoundException) + } + if (!tib->classInitialized) { + Func_V initFunc = tib->classInitializer; + initFunc(); + //TODO: static initializers should only be run if n2==true + //but can't skip initFunf here, since that initializes the core data structues + } + clazz = tib->clazz; + XMLVMUtil_HashMap_put(classMap, n1, clazz); + return clazz; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getClasses__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getClasses__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Class_verify__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_verify__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getAnnotation___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getAnnotation___java_lang_Class] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getAnnotations__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getAnnotations__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getComponentType__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getComponentType__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + if ((tib->flags & XMLVM_TYPE_ARRAY) == 0) { + // This is not an array + return JAVA_NULL; + } + return tib->baseType; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getConstructors__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getConstructors__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getDeclaredAnnotations__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getDeclaredAnnotations__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getDeclaredClasses__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getDeclaredClasses__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getDeclaredConstructors__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getDeclaredConstructors__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + int numConstructors = tib->numDeclaredConstructors; + Func_OOO dispatcher = tib->constructorDispatcherFunc; + if (!__TIB_java_lang_reflect_Constructor.classInitialized) __INIT_java_lang_reflect_Constructor(); + org_xmlvm_runtime_XMLVMArray* constructors = XMLVMArray_createSingleDimension(__CLASS_java_lang_reflect_Constructor, numConstructors); + JAVA_ARRAY_OBJECT* constructorArray = (JAVA_ARRAY_OBJECT*) constructors->fields.org_xmlvm_runtime_XMLVMArray.array_; + JAVA_INT slot = 0; + for (slot = 0; slot < numConstructors; slot++) { + java_lang_reflect_Constructor* constructor = __NEW_java_lang_reflect_Constructor(); + XMLVM_CONSTRUCTOR_REFLECTION_DATA* currentConstructor = (tib->declaredConstructors) + slot; + int numParameters = currentConstructor->numParameterTypes; + org_xmlvm_runtime_XMLVMArray* parameters = XMLVMArray_createSingleDimension(__CLASS_java_lang_Class, numParameters); + JAVA_ARRAY_OBJECT* parameterArray = (JAVA_ARRAY_OBJECT*) parameters->fields.org_xmlvm_runtime_XMLVMArray.array_; + int j = 0; + JAVA_OBJECT** paramTypes = currentConstructor->parameterTypes; + for (j = 0; j < numParameters; j++) { + parameterArray[j] = *(paramTypes[j]); + } + JAVA_OBJECT* checkedExceptions = JAVA_NULL; + int numCheckedExceptions = 0; + int modifiers = 0; + java_lang_String* signature = xmlvm_create_java_string(currentConstructor->signature); + JAVA_OBJECT annotations = JAVA_NULL; + JAVA_OBJECT parameterAnnotations = JAVA_NULL; + java_lang_reflect_Constructor___INIT____java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY(constructor, tib->clazz, parameters, checkedExceptions, modifiers, dispatcher, slot, signature, annotations, parameterAnnotations); + constructorArray[slot] = constructor; + } + return constructors; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getDeclaredField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getDeclaredField___java_lang_String] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + int numFields = tib->numDeclaredFields; + if (!__TIB_java_lang_reflect_Field.classInitialized) __INIT_java_lang_reflect_Field(); + int i = 0; + for (i = 0; i < numFields; i++) { + XMLVM_FIELD_REFLECTION_DATA* currentField = (tib->declaredFields) + i; + java_lang_String* name = xmlvm_create_java_string(currentField->name); + if(java_lang_Object_equals___java_lang_Object(name, n1)) + { + java_lang_reflect_Field* field = __NEW_java_lang_reflect_Field(); + java_lang_Class* declaringClass = tib->clazz; + java_lang_Class* type = *(currentField->type); + JAVA_INT modifiers = currentField->modifiers; + JAVA_INT offset = currentField->offset; + JAVA_OBJECT* address = currentField->address; + java_lang_String* signature = xmlvm_create_java_string(currentField->signature); + org_xmlvm_runtime_XMLVMArray* annotations = currentField->annotations; + java_lang_reflect_Field___INIT____java_lang_Class_java_lang_String_java_lang_Class_int_int_java_lang_Object_java_lang_String_byte_1ARRAY(field, declaringClass, name, type, modifiers, offset, address, signature, annotations); + + return field; + } + } + + XMLVM_THROW(java_lang_NoSuchFieldException) + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getDeclaredFields__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getDeclaredFields__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + int numFields = tib->numDeclaredFields; + if (!__TIB_java_lang_reflect_Field.classInitialized) __INIT_java_lang_reflect_Field(); + org_xmlvm_runtime_XMLVMArray* fields = XMLVMArray_createSingleDimension(__CLASS_java_lang_reflect_Field, numFields); + JAVA_ARRAY_OBJECT* fieldsArray = (JAVA_ARRAY_OBJECT*) fields->fields.org_xmlvm_runtime_XMLVMArray.array_; + int i = 0; + for (i = 0; i < numFields; i++) { + java_lang_reflect_Field* field = __NEW_java_lang_reflect_Field(); + XMLVM_FIELD_REFLECTION_DATA* currentField = (tib->declaredFields) + i; + java_lang_Class* declaringClass = tib->clazz; + java_lang_String* name = xmlvm_create_java_string(currentField->name); + java_lang_Class* type = *(currentField->type); + JAVA_INT modifiers = currentField->modifiers; + JAVA_INT offset = currentField->offset; + JAVA_OBJECT* address = currentField->address; + java_lang_String* signature = xmlvm_create_java_string(currentField->signature); + org_xmlvm_runtime_XMLVMArray* annotations = currentField->annotations; + java_lang_reflect_Field___INIT____java_lang_Class_java_lang_String_java_lang_Class_int_int_java_lang_Object_java_lang_String_byte_1ARRAY(field, declaringClass, name, type, modifiers, offset, address, signature, annotations); + fieldsArray[i] = field; + } + return fields; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getDeclaredMethods__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getDeclaredMethods__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + int numMethods = tib->numDeclaredMethods; + Func_OOOO dispatcher = tib->methodDispatcherFunc; + if (!__TIB_java_lang_reflect_Method.classInitialized) __INIT_java_lang_reflect_Method(); + org_xmlvm_runtime_XMLVMArray* methods = XMLVMArray_createSingleDimension(__CLASS_java_lang_reflect_Method, numMethods); + JAVA_ARRAY_OBJECT* methodArray = (JAVA_ARRAY_OBJECT*) methods->fields.org_xmlvm_runtime_XMLVMArray.array_; + JAVA_INT slot = 0; + for (slot = 0; slot < numMethods; slot++) { + java_lang_reflect_Method* method = __NEW_java_lang_reflect_Method(); + XMLVM_METHOD_REFLECTION_DATA* currentMethod = (tib->declaredMethods) + slot; + int numParameters = currentMethod->numParameterTypes; + org_xmlvm_runtime_XMLVMArray* parameters = XMLVMArray_createSingleDimension(__CLASS_java_lang_Class, numParameters); + JAVA_ARRAY_OBJECT* parameterArray = (JAVA_ARRAY_OBJECT*) parameters->fields.org_xmlvm_runtime_XMLVMArray.array_; + int j = 0; + JAVA_OBJECT** paramTypes = currentMethod->parameterTypes; + for (j = 0; j < numParameters; j++) { + parameterArray[j] = *(paramTypes[j]); + } + java_lang_String* name = xmlvm_create_java_string(currentMethod->name); + JAVA_OBJECT* checkedExceptions = JAVA_NULL; + int numCheckedExceptions = 0; + int modifiers = 0; + java_lang_String* signature = xmlvm_create_java_string(currentMethod->signature); + JAVA_OBJECT annotations = JAVA_NULL; + JAVA_OBJECT parameterAnnotations = JAVA_NULL; + java_lang_reflect_Method___INIT____java_lang_String_java_lang_Class_java_lang_Class_1ARRAY_java_lang_Class_1ARRAY_int_java_lang_Object_int_java_lang_String_byte_1ARRAY_byte_1ARRAY(method, name, tib->clazz, parameters, checkedExceptions, modifiers, dispatcher, slot, signature, annotations, parameterAnnotations); + methodArray[slot] = method; + } + return methods; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getEnclosingClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getEnclosingClass__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_java_lang_Object* tib = (__TIB_DEFINITION_java_lang_Object*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + if(!tib->enclosingClassName) + return JAVA_NULL; + else + return java_lang_Class_forName___java_lang_String(xmlvm_create_java_string(tib->enclosingClassName)); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getEnclosingConstructor__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getEnclosingConstructor__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getEnclosingMethod__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getEnclosingMethod__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_java_lang_Class* tib = (__TIB_DEFINITION_java_lang_Class*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + java_lang_Class* enclosingClass=java_lang_Class_getEnclosingClass__(me); + + if(enclosingClass!=JAVA_NULL) + { + if(tib->enclosingMethodName!=JAVA_NULL) + { + org_xmlvm_runtime_XMLVMArray* methods=java_lang_Class_getDeclaredMethods__(enclosingClass); + JAVA_ARRAY_OBJECT* methodArray = (JAVA_ARRAY_OBJECT*) methods->fields.org_xmlvm_runtime_XMLVMArray.array_; + + for (int i=0;ifields.org_xmlvm_runtime_XMLVMArray.length_;i++) + { + java_lang_reflect_Method* method=methodArray[i]; + + java_lang_String* methodName=java_lang_reflect_Method_getName__(method); + + //this is just a quick hack, we need to check for parameters etc... + if(strstr(tib->enclosingMethodName, xmlvm_java_string_to_const_char(methodName))) + { + return method; + } + } + } + } + return JAVA_NULL; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getEnumConstants__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getEnumConstants__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getField___java_lang_String] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getFields__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getFields__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getInterfaces__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getInterfaces__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_Class_getModifiers__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getModifiers__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getName__] + //TODO not quite correct + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + return xmlvm_create_java_string(tib->className); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getSimpleName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getSimpleName__] + //TODO not quite correct + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + return xmlvm_create_java_string(tib->className); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getProtectionDomain__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getProtectionDomain__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getPDImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getPDImpl__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getSigners__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getSigners__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getSuperclass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getSuperclass__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + __TIB_DEFINITION_TEMPLATE* baseTIP = tib->extends; + if (baseTIP == JAVA_NULL) { + return JAVA_NULL; + } + return baseTIP->clazz; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isAnnotation__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isAnnotation__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isAnnotationPresent___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isAnnotationPresent___java_lang_Class] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isAnonymousClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isAnonymousClass__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + //TODO correct check for anonymous + return 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isArray__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isArray__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + return (tib->flags & XMLVM_TYPE_ARRAY) != 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isAssignableFrom___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isAssignableFrom___java_lang_Class] + java_lang_Class* thiz = (java_lang_Class*) me; + java_lang_Class* that = (java_lang_Class*) n1; + + // check parameters + if (!that) + { + XMLVM_THROW_WITH_CSTRING(java_lang_NullPointerException, "fromClazz argument"); + } + + // if primitive class + if (java_lang_Class_isPrimitive__(thiz)) + return thiz==that; + + // if non primitive + java_lang_Class* compareTo=thiz; + while(compareTo!=JAVA_NULL) + { + if (compareTo==that) + return 1; + compareTo = java_lang_Class_getSuperclass__(compareTo); + } + return 0; + + + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isEnum__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isEnum__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + return (tib->flags & XMLVM_TYPE_ENUM) != 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isInstance___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isInstance___java_lang_Object] + return XMLVM_ISA(n1, me); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isInterface__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isInterface__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + return (tib->flags & XMLVM_TYPE_INTERFACE) != 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isLocalClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isLocalClass__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + //TODO correct check for local + return 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isMemberClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isMemberClass__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isPrimitive__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isPrimitive__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + return (tib->flags & XMLVM_TYPE_PRIMITIVE) != 0; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_isSynthetic__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_isSynthetic__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_newInstance__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_newInstance__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + Func_O func = tib->newInstanceFunc; + return (*func)(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getPackageString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getPackageString__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + return tib->packageName?xmlvm_create_java_string(tib->packageName):JAVA_NULL; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Class_desiredAssertionStatus__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_desiredAssertionStatus__] + return 0; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_asSubclass___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_asSubclass___java_lang_Class] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Class_getSignatureAttribute__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Class_getSignatureAttribute__] + java_lang_Class* thiz = (java_lang_Class*) me; + __TIB_DEFINITION_TEMPLATE* tib = (__TIB_DEFINITION_TEMPLATE*) thiz->fields.java_lang_Class.tib_; + XMLVM_REFLECTION_USED(tib->className) + return tib->signature?xmlvm_create_java_string(tib->signature):JAVA_NULL; + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_Class() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getClasses__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getClasses__] = + (VTABLE_PTR) java_lang_Class_getClasses__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_verify__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_verify__] = + (VTABLE_PTR) java_lang_Class_verify__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getAnnotation___java_lang_Class + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getAnnotation___java_lang_Class] = + (VTABLE_PTR) java_lang_Class_getAnnotation___java_lang_Class; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getAnnotations__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getAnnotations__] = + (VTABLE_PTR) java_lang_Class_getAnnotations__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getComponentType__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getComponentType__] = + (VTABLE_PTR) java_lang_Class_getComponentType__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getConstructors__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getConstructors__] = + (VTABLE_PTR) java_lang_Class_getConstructors__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredAnnotations__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredAnnotations__] = + (VTABLE_PTR) java_lang_Class_getDeclaredAnnotations__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredClasses__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredClasses__] = + (VTABLE_PTR) java_lang_Class_getDeclaredClasses__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredConstructors__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredConstructors__] = + (VTABLE_PTR) java_lang_Class_getDeclaredConstructors__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredField___java_lang_String + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredField___java_lang_String] = + (VTABLE_PTR) java_lang_Class_getDeclaredField___java_lang_String; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredFields__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredFields__] = + (VTABLE_PTR) java_lang_Class_getDeclaredFields__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredMethods__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredMethods__] = + (VTABLE_PTR) java_lang_Class_getDeclaredMethods__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getEnclosingClass__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getEnclosingClass__] = + (VTABLE_PTR) java_lang_Class_getEnclosingClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getEnclosingConstructor__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getEnclosingConstructor__] = + (VTABLE_PTR) java_lang_Class_getEnclosingConstructor__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getEnclosingMethod__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getEnclosingMethod__] = + (VTABLE_PTR) java_lang_Class_getEnclosingMethod__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getEnumConstants__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getEnumConstants__] = + (VTABLE_PTR) java_lang_Class_getEnumConstants__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getField___java_lang_String + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getField___java_lang_String] = + (VTABLE_PTR) java_lang_Class_getField___java_lang_String; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getFields__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getFields__] = + (VTABLE_PTR) java_lang_Class_getFields__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getInterfaces__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getInterfaces__] = + (VTABLE_PTR) java_lang_Class_getInterfaces__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getModifiers__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getModifiers__] = + (VTABLE_PTR) java_lang_Class_getModifiers__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getName__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getName__] = + (VTABLE_PTR) java_lang_Class_getName__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getSimpleName__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getSimpleName__] = + (VTABLE_PTR) java_lang_Class_getSimpleName__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getProtectionDomain__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getProtectionDomain__] = + (VTABLE_PTR) java_lang_Class_getProtectionDomain__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getPDImpl__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getPDImpl__] = + (VTABLE_PTR) java_lang_Class_getPDImpl__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getSigners__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getSigners__] = + (VTABLE_PTR) java_lang_Class_getSigners__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_getSuperclass__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_getSuperclass__] = + (VTABLE_PTR) java_lang_Class_getSuperclass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isAnnotation__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isAnnotation__] = + (VTABLE_PTR) java_lang_Class_isAnnotation__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isAnnotationPresent___java_lang_Class + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isAnnotationPresent___java_lang_Class] = + (VTABLE_PTR) java_lang_Class_isAnnotationPresent___java_lang_Class; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isAnonymousClass__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isAnonymousClass__] = + (VTABLE_PTR) java_lang_Class_isAnonymousClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isArray__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isArray__] = + (VTABLE_PTR) java_lang_Class_isArray__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isAssignableFrom___java_lang_Class + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isAssignableFrom___java_lang_Class] = + (VTABLE_PTR) java_lang_Class_isAssignableFrom___java_lang_Class; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isEnum__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isEnum__] = + (VTABLE_PTR) java_lang_Class_isEnum__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isInstance___java_lang_Object + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isInstance___java_lang_Object] = + (VTABLE_PTR) java_lang_Class_isInstance___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isInterface__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isInterface__] = + (VTABLE_PTR) java_lang_Class_isInterface__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isLocalClass__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isLocalClass__] = + (VTABLE_PTR) java_lang_Class_isLocalClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isMemberClass__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isMemberClass__] = + (VTABLE_PTR) java_lang_Class_isMemberClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isPrimitive__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isPrimitive__] = + (VTABLE_PTR) java_lang_Class_isPrimitive__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_isSynthetic__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_isSynthetic__] = + (VTABLE_PTR) java_lang_Class_isSynthetic__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_newInstance__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_newInstance__] = + (VTABLE_PTR) java_lang_Class_newInstance__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_desiredAssertionStatus__ + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_desiredAssertionStatus__] = + (VTABLE_PTR) java_lang_Class_desiredAssertionStatus__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Class_asSubclass___java_lang_Class + __TIB_java_lang_Class.vtable[XMLVM_VTABLE_IDX_java_lang_Class_asSubclass___java_lang_Class] = + (VTABLE_PTR) java_lang_Class_asSubclass___java_lang_Class; +#endif +} diff --git a/tests/nbody-java/native_java_lang_Double.c b/tests/nbody-java/native_java_lang_Double.c new file mode 100644 index 0000000000000..e94abc4e80981 --- /dev/null +++ b/tests/nbody-java/native_java_lang_Double.c @@ -0,0 +1,47 @@ + +#include "xmlvm.h" +#include "java_lang_Double.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_LONG java_lang_Double_doubleToLongBits___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Double_doubleToLongBits___double] + union { + JAVA_DOUBLE d; + JAVA_LONG l; + } u; + + u.d = n1; + return u.l; + //XMLVM_END_NATIVE +} + +JAVA_LONG java_lang_Double_doubleToRawLongBits___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Double_doubleToRawLongBits___double] + union { + JAVA_DOUBLE d; + JAVA_LONG l; + } u; + + u.d = n1; + return u.l; + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Double_longBitsToDouble___long(JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Double_longBitsToDouble___long] + union { + JAVA_DOUBLE d; + JAVA_LONG l; + } u; + + u.l = n1; + return u.d; + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_lang_Float.c b/tests/nbody-java/native_java_lang_Float.c new file mode 100644 index 0000000000000..09c2d68edd913 --- /dev/null +++ b/tests/nbody-java/native_java_lang_Float.c @@ -0,0 +1,52 @@ + +#include "xmlvm.h" +#include "java_lang_Float.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_INT java_lang_Float_floatToIntBits___float(JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Float_floatToIntBits___float] + union { + JAVA_FLOAT f; + JAVA_INT i; + } u; + + if (isnan(n1)) { + return 0x7fc00000; + } else { + u.f = n1; + return u.i; + } + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_Float_floatToRawIntBits___float(JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Float_floatToRawIntBits___float] + union { + JAVA_FLOAT f; + JAVA_INT i; + } u; + + u.f = n1; + return u.i; + //XMLVM_END_NATIVE +} + +JAVA_FLOAT java_lang_Float_intBitsToFloat___int(JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Float_intBitsToFloat___int] + union { + JAVA_FLOAT f; + JAVA_INT i; + } u; + + u.i = n1; + return u.f; + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_lang_Math.c b/tests/nbody-java/native_java_lang_Math.c new file mode 100644 index 0000000000000..4163f187be68a --- /dev/null +++ b/tests/nbody-java/native_java_lang_Math.c @@ -0,0 +1,186 @@ + +#include "xmlvm.h" +#include "java_lang_Math.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#include + +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_DOUBLE java_lang_Math_acos___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_acos___double] + return acos(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_asin___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_asin___double] + return asin(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_atan___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_atan___double] + return atan(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_atan2___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_atan2___double_double] + return atan2(n1, n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_cbrt___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_cbrt___double] + return cbrt(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_ceil___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_ceil___double] + return ceil(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_cos___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_cos___double] + return cos(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_cosh___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_cosh___double] + return cosh(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_exp___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_exp___double] + return exp(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_expm1___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_expm1___double] + return expm1(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_floor___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_floor___double] + return floor(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_hypot___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_hypot___double_double] + return hypot(n1, n2); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_IEEEremainder___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_IEEEremainder___double_double] + return remainder(n1, n2); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_log___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_log___double] + return log(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_log10___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_log10___double] + return log10(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_log1p___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_log1p___double] + return log1p(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_pow___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_pow___double_double] + return pow(n1, n2); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_rint___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_rint___double] + return rint(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_sin___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_sin___double] + return sin(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_sinh___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_sinh___double] + return sinh(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_sqrt___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_sqrt___double] + return sqrt(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_tan___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_tan___double] + return tan(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_tanh___double(JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_tanh___double] + return tanh(n1); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_Math_nextafter___double_double(JAVA_DOUBLE n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_nextafter___double_double] + return nextafter(n1, n2); + //XMLVM_END_NATIVE +} + +JAVA_FLOAT java_lang_Math_nextafterf___float_float(JAVA_FLOAT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Math_nextafterf___float_float] + return nextafterf(n1, n2); + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_lang_Object.c b/tests/nbody-java/native_java_lang_Object.c new file mode 100644 index 0000000000000..55f4c0c67decf --- /dev/null +++ b/tests/nbody-java/native_java_lang_Object.c @@ -0,0 +1,96 @@ + +#include "xmlvm.h" +#include "java_lang_Object.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_lang_Object_initNativeLayer__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Object_initNativeLayer__] + // Nothing to be done + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Object_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Object_clone__] + //TODO check for ImplementsClonable interface + java_lang_Object* thiz = me; + int sizeInstance = thiz->tib->sizeInstance; + if (sizeInstance == -1) { + XMLVM_INTERNAL_ERROR(); + } + JAVA_OBJECT clone = XMLVM_MALLOC(sizeInstance); + XMLVM_MEMCPY(clone, me, sizeInstance); + return clone; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Object_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Object_equals___java_lang_Object] + return me == n1; + //XMLVM_END_NATIVE +} + +void java_lang_Object_finalize_java_lang_Object__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Object_finalize_java_lang_Object__] + // do nothing + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Object_getClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Object_getClass__] + java_lang_Object* o = (java_lang_Object*) me; + return o->tib->clazz; + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_Object_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Object_hashCode__] + return (JAVA_INT) me; + //XMLVM_END_NATIVE +} + +void java_lang_Object_wait___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Object_wait___long_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_Object() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_Object_clone__ + __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_clone__] = + (VTABLE_PTR) java_lang_Object_clone__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Object_equals___java_lang_Object + __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_equals___java_lang_Object] = + (VTABLE_PTR) java_lang_Object_equals___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Object_finalize_java_lang_Object__ + __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_finalize_java_lang_Object__] = + (VTABLE_PTR) java_lang_Object_finalize_java_lang_Object__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Object_getClass__ + __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_getClass__] = + (VTABLE_PTR) java_lang_Object_getClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Object_hashCode__ + __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_hashCode__] = + (VTABLE_PTR) java_lang_Object_hashCode__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Object_wait___long_int + __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_wait___long_int] = + (VTABLE_PTR) java_lang_Object_wait___long_int; +#endif +} diff --git a/tests/nbody-java/native_java_lang_Runtime.c b/tests/nbody-java/native_java_lang_Runtime.c new file mode 100644 index 0000000000000..86b4d98a64cce --- /dev/null +++ b/tests/nbody-java/native_java_lang_Runtime.c @@ -0,0 +1,57 @@ + +#include "xmlvm.h" +#include "java_lang_Runtime.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_LONG java_lang_Runtime_freeMemory__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Runtime_freeMemory__] +#ifndef XMLVM_NO_GC + return GC_get_free_bytes(); +#else + return 0L; +#endif + //XMLVM_END_NATIVE +} + +void java_lang_Runtime_gc__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Runtime_gc__] +#ifndef XMLVM_NO_GC + GC_gcollect(); +#endif + //XMLVM_END_NATIVE +} + +JAVA_LONG java_lang_Runtime_totalMemory__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Runtime_totalMemory__] +#ifndef XMLVM_NO_GC + return GC_get_heap_size(); +#else + return 0L; +#endif + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_Runtime() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_Runtime_freeMemory__ + __TIB_java_lang_Runtime.vtable[XMLVM_VTABLE_IDX_java_lang_Runtime_freeMemory__] = + (VTABLE_PTR) java_lang_Runtime_freeMemory__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Runtime_gc__ + __TIB_java_lang_Runtime.vtable[XMLVM_VTABLE_IDX_java_lang_Runtime_gc__] = + (VTABLE_PTR) java_lang_Runtime_gc__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Runtime_totalMemory__ + __TIB_java_lang_Runtime.vtable[XMLVM_VTABLE_IDX_java_lang_Runtime_totalMemory__] = + (VTABLE_PTR) java_lang_Runtime_totalMemory__; +#endif +} diff --git a/tests/nbody-java/native_java_lang_String.c b/tests/nbody-java/native_java_lang_String.c new file mode 100644 index 0000000000000..5ccf21dfa6975 --- /dev/null +++ b/tests/nbody-java/native_java_lang_String.c @@ -0,0 +1,45 @@ + +#include "xmlvm.h" +#include "java_lang_String.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_INT java_lang_String_toLowerCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_String_toLowerCaseImpl___int] +#ifdef EMSCRIPTEN + return tolower(n1); +#else + return towlower(n1); +#endif + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_String_toUpperCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_String_toUpperCaseImpl___int] +#ifdef EMSCRIPTEN + return toupper(n1); +#else + return towupper(n1); +#endif + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_String() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_String_toLowerCaseImpl___int + __TIB_java_lang_String.vtable[XMLVM_VTABLE_IDX_java_lang_String_toLowerCaseImpl___int] = + (VTABLE_PTR) java_lang_String_toLowerCaseImpl___int; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_String_toUpperCaseImpl___int + __TIB_java_lang_String.vtable[XMLVM_VTABLE_IDX_java_lang_String_toUpperCaseImpl___int] = + (VTABLE_PTR) java_lang_String_toUpperCaseImpl___int; +#endif +} diff --git a/tests/nbody-java/native_java_lang_System.c b/tests/nbody-java/native_java_lang_System.c new file mode 100644 index 0000000000000..861781ca4a73a --- /dev/null +++ b/tests/nbody-java/native_java_lang_System.c @@ -0,0 +1,116 @@ + +#include "xmlvm.h" +#include "java_lang_System.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include +#include +#include "java_lang_String.h" + +//From HARMONY/classlib/modules/luni/src/main/native/luni/shared/luniglob.c +#define CHARSETBUFF 64 + +//From HARMONY/classlib/modules/luni/src/main/native/luni/unix/helpers.c +void getOSCharset(char *locale, const size_t size) { + char * codec = NULL; + size_t cur = 0; + short flag = 0; + setlocale(LC_CTYPE, ""); + codec = setlocale(LC_CTYPE, NULL); + // get codeset from language[_territory][.codeset][@modifier] + while (*codec) { + if (!flag) { + if (*codec != '.') { + codec++; + continue; + } else { + flag = 1; + codec++; + } + } else { + if (*codec == '@') { + break; + } else { + locale[cur++] = (*codec); + codec++; + if (cur >= size) { + // Not enough size + cur = 0; + break; + } + } + } + } + locale[cur] = '\0'; + if (!strlen(locale)) { + strcpy(locale, "8859_1"); + } + return; +} + +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_lang_System_initNativeLayer__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_System_initNativeLayer__] + // Nothing to be done + //XMLVM_END_NATIVE +} + +JAVA_LONG java_lang_System_currentTimeMillis__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_System_currentTimeMillis__] + struct timeval now; + gettimeofday(&now, NULL); + + JAVA_LONG msec = ((JAVA_LONG) now.tv_sec) * 1000; + msec += now.tv_usec / 1000; + + return msec; + //XMLVM_END_NATIVE +} + +JAVA_LONG java_lang_System_nanoTime__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_System_nanoTime__] + //TODO implement + return java_lang_System_nanoTime__() * 1000000L; + //XMLVM_END_NATIVE +} + +void java_lang_System_nativeExit___int(JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_System_nativeExit___int] + exit(n1); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_System_getPropertyList__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_System_getPropertyList__] + return XMLVMArray_createSingleDimension(__CLASS_java_lang_String, 0); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_System_getEncoding___int(JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_System_getEncoding___int] + //Get charset from the OS +#ifdef EMSCRIPTEN + return xmlvm_create_java_string("UTF-8"); +#else + char charset[CHARSETBUFF]; + getOSCharset(charset, CHARSETBUFF); + return xmlvm_create_java_string(charset); +#endif + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_System_identityHashCode___java_lang_Object(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_System_identityHashCode___java_lang_Object] + return (JAVA_INT) n1; + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_lang_Thread.c b/tests/nbody-java/native_java_lang_Thread.c new file mode 100644 index 0000000000000..c2631b1c2f5c4 --- /dev/null +++ b/tests/nbody-java/native_java_lang_Thread.c @@ -0,0 +1,310 @@ + +#include "xmlvm.h" +#include "java_lang_Thread.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include +#ifdef __OBJC__ +#import +#endif + + +void threadRunner(JAVA_OBJECT me) +{ + java_lang_Thread* thiz = me; + XMLVM_JMP_BUF xmlvm_exception_env; + JAVA_LONG nativeThreadId = (JAVA_LONG) pthread_self(); + +#ifdef __OBJC__ + NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init]; +#endif +#ifdef XMLVM_ENABLE_STACK_TRACES + createStackForNewThread(nativeThreadId); +#endif + + if (XMLVM_SETJMP(xmlvm_exception_env)) { + // Technically, XMLVM_UNWIND_EXCEPTION() should be called, but + // exceptions will not be used anymore and XMLVM_ENTER_METHOD() wasn't + // called (excessive), so a compilation error would occur + + xmlvm_unhandled_exception(); + } else { + thiz->fields.java_lang_Thread.xmlvmExceptionEnv_ = &xmlvm_exception_env; + java_lang_Thread_run0___long(thiz, nativeThreadId); + } + +#ifdef XMLVM_ENABLE_STACK_TRACES + destroyStackForExitingThread(nativeThreadId); +#endif +#ifdef __OBJC__ + [pool release]; +#endif +} +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_lang_Thread_initMainThread__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_initMainThread__] + ((java_lang_Thread*)me)->fields.java_lang_Thread.xmlvmExceptionEnv_ = xmlvm_exception_env_main_thread; + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_Thread_activeCount__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_activeCount__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_checkAccess__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_checkAccess__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_Thread_countStackFrames__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_countStackFrames__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG java_lang_Thread_getCurrentThreadNativeId__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_getCurrentThreadNativeId__] + JAVA_LONG nativeThreadId = (JAVA_LONG)pthread_self(); + return nativeThreadId; + //XMLVM_END_NATIVE +} + +void java_lang_Thread_destroy__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_destroy__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_dumpStack__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_dumpStack__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_Thread_enumerate___java_lang_Thread_1ARRAY(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_enumerate___java_lang_Thread_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Thread_getAllStackTraces__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_getAllStackTraces__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Thread_getContextClassLoader__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_getContextClassLoader__] + XMLVMElem _r0; + _r0.o = __NEW_org_xmlvm_runtime_XMLVMClassLoader(); + org_xmlvm_runtime_XMLVMClassLoader___INIT___(_r0.o); + return _r0.o; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Thread_getDefaultUncaughtExceptionHandler__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_getDefaultUncaughtExceptionHandler__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Thread_getStackTrace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_getStackTrace__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Thread_getUncaughtExceptionHandler__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_getUncaughtExceptionHandler__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_join___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_join___long_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_resume__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_resume__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Thread_stackTracesEnabled__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_stackTracesEnabled__] +#ifdef XMLVM_ENABLE_STACK_TRACES + return 1; +#else + return 0; +#endif + //XMLVM_END_NATIVE +} + +void java_lang_Thread_setContextClassLoader___java_lang_ClassLoader(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_setContextClassLoader___java_lang_ClassLoader] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_setDefaultUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_setDefaultUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_setPriority___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_setPriority___int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_setUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_setUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_start0__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_start0__] + pthread_t pt; + pthread_attr_t attr; + pthread_attr_init(&attr); + pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_JOINABLE); + int rc = pthread_create(&pt, &attr, threadRunner, (void *)me); + if (rc != 0) { + printf("ERROR creating thread. Return code: %i", rc); + exit(-1); + } + pthread_attr_destroy(&attr); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_stop__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_stop__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_stop___java_lang_Throwable(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_stop___java_lang_Throwable] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_suspend__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_suspend__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_Thread_yield__() +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_yield__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_Thread_holdsLock___java_lang_Object(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Thread_holdsLock___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_Thread() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_checkAccess__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_checkAccess__] = + (VTABLE_PTR) java_lang_Thread_checkAccess__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_countStackFrames__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_countStackFrames__] = + (VTABLE_PTR) java_lang_Thread_countStackFrames__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_destroy__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_destroy__] = + (VTABLE_PTR) java_lang_Thread_destroy__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_getContextClassLoader__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_getContextClassLoader__] = + (VTABLE_PTR) java_lang_Thread_getContextClassLoader__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_getStackTrace__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_getStackTrace__] = + (VTABLE_PTR) java_lang_Thread_getStackTrace__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_getUncaughtExceptionHandler__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_getUncaughtExceptionHandler__] = + (VTABLE_PTR) java_lang_Thread_getUncaughtExceptionHandler__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_join___long_int + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_join___long_int] = + (VTABLE_PTR) java_lang_Thread_join___long_int; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_resume__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_resume__] = + (VTABLE_PTR) java_lang_Thread_resume__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_setContextClassLoader___java_lang_ClassLoader + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_setContextClassLoader___java_lang_ClassLoader] = + (VTABLE_PTR) java_lang_Thread_setContextClassLoader___java_lang_ClassLoader; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_setPriority___int + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_setPriority___int] = + (VTABLE_PTR) java_lang_Thread_setPriority___int; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_setUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_setUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler] = + (VTABLE_PTR) java_lang_Thread_setUncaughtExceptionHandler___java_lang_Thread_UncaughtExceptionHandler; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_start0__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_start0__] = + (VTABLE_PTR) java_lang_Thread_start0__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_stop__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_stop__] = + (VTABLE_PTR) java_lang_Thread_stop__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_stop___java_lang_Throwable + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_stop___java_lang_Throwable] = + (VTABLE_PTR) java_lang_Thread_stop___java_lang_Throwable; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_Thread_suspend__ + __TIB_java_lang_Thread.vtable[XMLVM_VTABLE_IDX_java_lang_Thread_suspend__] = + (VTABLE_PTR) java_lang_Thread_suspend__; +#endif +} diff --git a/tests/nbody-java/native_java_lang_Throwable.c b/tests/nbody-java/native_java_lang_Throwable.c new file mode 100644 index 0000000000000..5204e0a08bbb3 --- /dev/null +++ b/tests/nbody-java/native_java_lang_Throwable.c @@ -0,0 +1,82 @@ + +#include "xmlvm.h" +#include "java_lang_Throwable.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#ifdef XMLVM_ENABLE_STACK_TRACES + +#include "java_lang_StackTraceElement.h" + +java_lang_StackTraceElement* createStackTraceElement(XMLVM_STACK_TRACE_ELEMENT* elem) +{ + java_lang_StackTraceElement* ste = (java_lang_StackTraceElement*)__NEW_java_lang_StackTraceElement(); + java_lang_StackTraceElement___INIT____java_lang_String_java_lang_String_java_lang_String_int(ste, + xmlvm_create_java_string(elem->className), + xmlvm_create_java_string(elem->methodName), + xmlvm_create_java_string(elem->fileName), + elem->lineNumber); + return ste; +} +#endif + +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_OBJECT java_lang_Throwable_fillInStackTrace__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Throwable_fillInStackTrace__] +#ifdef XMLVM_ENABLE_STACK_TRACES + + XMLVM_STACK_TRACE_CURRENT* threadStack = getCurrentStackTrace(); + int size = threadStack->stackSize; + + if (!__TIB_java_lang_StackTraceElement.classInitialized) __INIT_java_lang_StackTraceElement(); + JAVA_OBJECT array = XMLVMArray_createSingleDimension(__CLASS_java_lang_StackTraceElement, size); + + // Put the currentLocation at the beginning of the array + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) array)->fields.org_xmlvm_runtime_XMLVMArray.array_))[0] = createStackTraceElement(threadStack->topOfStack->currentLocation); + + XMLVM_STACK_TRACE_LINK* curLink = threadStack->topOfStack; + for (int index = 1; index < size; index++) { + java_lang_StackTraceElement* ste = createStackTraceElement(curLink->element); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) array)->fields.org_xmlvm_runtime_XMLVMArray.array_))[index] = ste; + curLink = curLink->nextLink; + } + + ((java_lang_Throwable*) me)->fields.java_lang_Throwable.stackTrace_ = array; + + return me; +#else + return JAVA_NULL; +#endif + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_Throwable_getStackTraceImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_Throwable_getStackTraceImpl__] +#ifdef XMLVM_ENABLE_STACK_TRACES + + return ((java_lang_Throwable*) me)->fields.java_lang_Throwable.stackTrace_; + +#else + +// TODO throw RuntimeException with the following message instead of printf + printf("Stack traces are not enabled natively! To enable stack traces, define XMLVM_ENABLE_STACK_TRACES. Keep in mind this will decrease performance!\n"); + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + +#endif + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_Throwable() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_Throwable_fillInStackTrace__ + __TIB_java_lang_Throwable.vtable[XMLVM_VTABLE_IDX_java_lang_Throwable_fillInStackTrace__] = + (VTABLE_PTR) java_lang_Throwable_fillInStackTrace__; +#endif +} diff --git a/tests/nbody-java/native_java_lang_reflect_AccessibleObject.c b/tests/nbody-java/native_java_lang_reflect_AccessibleObject.c new file mode 100644 index 0000000000000..7093b4bf49a85 --- /dev/null +++ b/tests/nbody-java/native_java_lang_reflect_AccessibleObject.c @@ -0,0 +1,83 @@ + +#include "xmlvm.h" +#include "java_lang_reflect_AccessibleObject.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_lang_reflect_AccessibleObject_initializeClass___java_lang_Class(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_AccessibleObject_initializeClass___java_lang_Class] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_getStackClass___int(JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_AccessibleObject_getStackClass___int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_getParameterTypesImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_AccessibleObject_getParameterTypesImpl__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_AccessibleObject_getModifiers__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_AccessibleObject_getModifiers__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_getExceptionTypesImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_AccessibleObject_getExceptionTypesImpl__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_AccessibleObject_getSignature__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_AccessibleObject_getSignature__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_AccessibleObject_checkAccessibility___java_lang_Class_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_AccessibleObject_checkAccessibility___java_lang_Class_java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_reflect_AccessibleObject() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getParameterTypesImpl__ + __TIB_java_lang_reflect_AccessibleObject.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getParameterTypesImpl__] = + (VTABLE_PTR) java_lang_reflect_AccessibleObject_getParameterTypesImpl__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getModifiers__ + __TIB_java_lang_reflect_AccessibleObject.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getModifiers__] = + (VTABLE_PTR) java_lang_reflect_AccessibleObject_getModifiers__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getExceptionTypesImpl__ + __TIB_java_lang_reflect_AccessibleObject.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getExceptionTypesImpl__] = + (VTABLE_PTR) java_lang_reflect_AccessibleObject_getExceptionTypesImpl__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getSignature__ + __TIB_java_lang_reflect_AccessibleObject.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_getSignature__] = + (VTABLE_PTR) java_lang_reflect_AccessibleObject_getSignature__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_checkAccessibility___java_lang_Class_java_lang_Object + __TIB_java_lang_reflect_AccessibleObject.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_AccessibleObject_checkAccessibility___java_lang_Class_java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_AccessibleObject_checkAccessibility___java_lang_Class_java_lang_Object; +#endif +} diff --git a/tests/nbody-java/native_java_lang_reflect_Array.c b/tests/nbody-java/native_java_lang_reflect_Array.c new file mode 100644 index 0000000000000..cfd13f8e50c10 --- /dev/null +++ b/tests/nbody-java/native_java_lang_reflect_Array.c @@ -0,0 +1,196 @@ + +#include "xmlvm.h" +#include "java_lang_reflect_Array.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#include "java_lang_Class.h" + +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_OBJECT java_lang_reflect_Array_multiNewArrayImpl___java_lang_Class_int_int_1ARRAY(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_multiNewArrayImpl___java_lang_Class_int_int_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Array_newArrayImpl___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_newArrayImpl___java_lang_Class_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Array_get___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_get___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Array_getBoolean___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getBoolean___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BYTE java_lang_reflect_Array_getByte___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getByte___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_CHAR java_lang_reflect_Array_getChar___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getChar___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_reflect_Array_getDouble___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getDouble___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_FLOAT java_lang_reflect_Array_getFloat___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getFloat___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_Array_getInt___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getInt___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_Array_getLength___java_lang_Object(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getLength___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG java_lang_reflect_Array_getLong___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getLong___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_SHORT java_lang_reflect_Array_getShort___java_lang_Object_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_getShort___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Array_newInstance___java_lang_Class_int_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_newInstance___java_lang_Class_int_1ARRAY] + return XMLVMArray_createMultiDimensions(n1, n2); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Array_newInstance___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_newInstance___java_lang_Class_int] + return XMLVMArray_createSingleDimension(n1, n2); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_set___java_lang_Object_int_java_lang_Object(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_set___java_lang_Object_int_java_lang_Object] + org_xmlvm_runtime_XMLVMArray* array = n1; + JAVA_INT index = n2; + JAVA_OBJECT obj = n3; + + JAVA_OBJECT arrayType = array->fields.org_xmlvm_runtime_XMLVMArray.type_; + if (arrayType == __CLASS_boolean_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else if (arrayType == __CLASS_byte_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else if (arrayType == __CLASS_char_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else if (arrayType == __CLASS_short_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else if (arrayType == __CLASS_int_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else if (arrayType == __CLASS_float_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else if (arrayType == __CLASS_long_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else if (arrayType == __CLASS_double_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } else { + JAVA_ARRAY_OBJECT* data = (JAVA_ARRAY_OBJECT*) array->fields.org_xmlvm_runtime_XMLVMArray.array_; + data[index] = obj; + } + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setBoolean___java_lang_Object_int_boolean(JAVA_OBJECT n1, JAVA_INT n2, JAVA_BOOLEAN n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setBoolean___java_lang_Object_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setByte___java_lang_Object_int_byte(JAVA_OBJECT n1, JAVA_INT n2, JAVA_BYTE n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setByte___java_lang_Object_int_byte] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setChar___java_lang_Object_int_char(JAVA_OBJECT n1, JAVA_INT n2, JAVA_CHAR n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setChar___java_lang_Object_int_char] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setDouble___java_lang_Object_int_double(JAVA_OBJECT n1, JAVA_INT n2, JAVA_DOUBLE n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setDouble___java_lang_Object_int_double] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setFloat___java_lang_Object_int_float(JAVA_OBJECT n1, JAVA_INT n2, JAVA_FLOAT n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setFloat___java_lang_Object_int_float] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setInt___java_lang_Object_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setInt___java_lang_Object_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setLong___java_lang_Object_int_long(JAVA_OBJECT n1, JAVA_INT n2, JAVA_LONG n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setLong___java_lang_Object_int_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Array_setShort___java_lang_Object_int_short(JAVA_OBJECT n1, JAVA_INT n2, JAVA_SHORT n3) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Array_setShort___java_lang_Object_int_short] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_lang_reflect_Constructor.c b/tests/nbody-java/native_java_lang_reflect_Constructor.c new file mode 100644 index 0000000000000..81c029c21f525 --- /dev/null +++ b/tests/nbody-java/native_java_lang_reflect_Constructor.c @@ -0,0 +1,193 @@ + +#include "xmlvm.h" +#include "java_lang_reflect_Constructor.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_OBJECT java_lang_reflect_Constructor_getTypeParameters__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getTypeParameters__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_toGenericString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_toGenericString__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_getGenericParameterTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getGenericParameterTypes__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_getGenericExceptionTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getGenericExceptionTypes__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_getParameterAnnotations__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getParameterAnnotations__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Constructor_isVarArgs__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_isVarArgs__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Constructor_isSynthetic__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_isSynthetic__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Constructor_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_equals___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_getDeclaringClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getDeclaringClass__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_getExceptionTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getExceptionTypes__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_Constructor_getModifiers__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getModifiers__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getName__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_getParameterTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_getParameterTypes__] + java_lang_reflect_Constructor* thiz = (java_lang_reflect_Constructor*) me; + return thiz->fields.java_lang_reflect_Constructor.parameterTypes_; + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_Constructor_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_hashCode__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY] + java_lang_reflect_Constructor* thiz = (java_lang_reflect_Constructor*) me; + Func_OOO dispatcher = (Func_OOO) thiz->fields.java_lang_reflect_Constructor.address_; + return (*dispatcher)(me, n1); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Constructor_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Constructor_toString__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_reflect_Constructor() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getTypeParameters__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getTypeParameters__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getTypeParameters__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_toGenericString__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_toGenericString__] = + (VTABLE_PTR) java_lang_reflect_Constructor_toGenericString__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getGenericParameterTypes__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getGenericParameterTypes__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getGenericParameterTypes__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getGenericExceptionTypes__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getGenericExceptionTypes__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getGenericExceptionTypes__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getParameterAnnotations__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getParameterAnnotations__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getParameterAnnotations__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_isVarArgs__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_isVarArgs__] = + (VTABLE_PTR) java_lang_reflect_Constructor_isVarArgs__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_isSynthetic__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_isSynthetic__] = + (VTABLE_PTR) java_lang_reflect_Constructor_isSynthetic__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_equals___java_lang_Object + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_equals___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Constructor_equals___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getDeclaringClass__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getDeclaringClass__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getDeclaringClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getExceptionTypes__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getExceptionTypes__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getExceptionTypes__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getModifiers__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getModifiers__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getModifiers__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getName__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getName__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getName__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getParameterTypes__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_getParameterTypes__] = + (VTABLE_PTR) java_lang_reflect_Constructor_getParameterTypes__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_hashCode__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_hashCode__] = + (VTABLE_PTR) java_lang_reflect_Constructor_hashCode__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY] = + (VTABLE_PTR) java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_toString__ + __TIB_java_lang_reflect_Constructor.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Constructor_toString__] = + (VTABLE_PTR) java_lang_reflect_Constructor_toString__; +#endif +} diff --git a/tests/nbody-java/native_java_lang_reflect_Field.c b/tests/nbody-java/native_java_lang_reflect_Field.c new file mode 100644 index 0000000000000..90d7d82287772 --- /dev/null +++ b/tests/nbody-java/native_java_lang_reflect_Field.c @@ -0,0 +1,405 @@ + +#include "xmlvm.h" +#include "java_lang_reflect_Field.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include "java_lang_Boolean.h" +#include "java_lang_Byte.h" +#include "java_lang_Character.h" +#include "java_lang_Short.h" +#include "java_lang_Integer.h" +#include "java_lang_Long.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" + +#define VALUE_PTR(THIZ, OBJECT)\ +(thiz->fields.java_lang_reflect_Field.modifiers_ & java_lang_reflect_Modifier_STATIC)?\ +(char*) THIZ->fields.java_lang_reflect_Field.address_:\ +((char*) OBJECT) + THIZ->fields.java_lang_reflect_Field.offset_ + +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_OBJECT java_lang_reflect_Field_getSignature__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getSignature__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Field_isSynthetic__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_isSynthetic__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Field_toGenericString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_toGenericString__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Field_isEnumConstant__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_isEnumConstant__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Field_getGenericType__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getGenericType__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Field_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_equals___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Field_get___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_get___java_lang_Object] + java_lang_reflect_Field* thiz = (java_lang_reflect_Field*) me; + JAVA_OBJECT type = thiz->fields.java_lang_reflect_Field.type_; + char* valuePtr; + if (thiz->fields.java_lang_reflect_Field.modifiers_ & java_lang_reflect_Modifier_STATIC) { + valuePtr = (char*) thiz->fields.java_lang_reflect_Field.address_; + } else { + valuePtr = ((char*) n1) + thiz->fields.java_lang_reflect_Field.offset_; + } + JAVA_OBJECT obj; + if (type == __CLASS_boolean) { + JAVA_BOOLEAN value = *((JAVA_BOOLEAN*) valuePtr); + obj = __NEW_java_lang_Boolean(); + java_lang_Boolean___INIT____boolean(obj, value); + } else if (type == __CLASS_byte) { + JAVA_BYTE value = *((JAVA_BYTE*) valuePtr); + obj = __NEW_java_lang_Byte(); + java_lang_Byte___INIT____byte(obj, value); + } else if (type == __CLASS_char) { + JAVA_CHAR value = *((JAVA_CHAR*) valuePtr); + obj = __NEW_java_lang_Character(); + java_lang_Character___INIT____char(obj, value); + } else if (type == __CLASS_short) { + JAVA_SHORT value = *((JAVA_SHORT*) valuePtr); + obj = __NEW_java_lang_Short(); + java_lang_Short___INIT____short(obj, value); + } else if (type == __CLASS_int) { + JAVA_INT value = *((JAVA_INT*) valuePtr); + obj = __NEW_java_lang_Integer(); + java_lang_Integer___INIT____int(obj, value); + } else if (type == __CLASS_long) { + JAVA_LONG value = *((JAVA_LONG*) valuePtr); + obj = __NEW_java_lang_Long(); + java_lang_Long___INIT____long(obj, value); + } else if (type == __CLASS_float) { + JAVA_FLOAT value = *((JAVA_FLOAT*) valuePtr); + obj = __NEW_java_lang_Float(); + java_lang_Float___INIT____float(obj, value); + } else if (type == __CLASS_double) { + JAVA_DOUBLE value = *((JAVA_DOUBLE*) valuePtr); + obj = __NEW_java_lang_Double(); + java_lang_Double___INIT____double(obj, value); + } else { + // Has to be object type if it is not a primitive type + obj = *((JAVA_OBJECT*) valuePtr); + } + return obj; + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Field_getBoolean___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getBoolean___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BYTE java_lang_reflect_Field_getByte___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getByte___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_CHAR java_lang_reflect_Field_getChar___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getChar___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Field_getDeclaringClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getDeclaringClass__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE java_lang_reflect_Field_getDouble___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getDouble___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_FLOAT java_lang_reflect_Field_getFloat___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getFloat___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_Field_getInt___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getInt___java_lang_Object] + java_lang_reflect_Field* thiz = (java_lang_reflect_Field*) me; + JAVA_OBJECT type = thiz->fields.java_lang_reflect_Field.type_; + char* valuePtr=VALUE_PTR(thiz, n1); + if (type == __CLASS_int) { + JAVA_INT value = *((JAVA_INT*) valuePtr); + return value; + } + XMLVM_ERROR("bad type", __FILE__, __FUNCTION__, __LINE__); + return 0; + //XMLVM_END_NATIVE +} + +JAVA_LONG java_lang_reflect_Field_getLong___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getLong___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Field_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getName__] + java_lang_reflect_Field* thiz = (java_lang_reflect_Field*) me; + return thiz->fields.java_lang_reflect_Field.name_; + //XMLVM_END_NATIVE +} + +JAVA_SHORT java_lang_reflect_Field_getShort___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getShort___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Field_getType__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_getType__] + java_lang_reflect_Field* thiz = (java_lang_reflect_Field*) me; + return thiz->fields.java_lang_reflect_Field.type_; + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_Field_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_hashCode__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_set___java_lang_Object_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_set___java_lang_Object_java_lang_Object] + java_lang_reflect_Field* thiz = (java_lang_reflect_Field*) me; + JAVA_OBJECT type = thiz->fields.java_lang_reflect_Field.type_; + char* valuePtr=VALUE_PTR(thiz, n2); + memcpy(valuePtr, &n1, 4); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setBoolean___java_lang_Object_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setBoolean___java_lang_Object_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setByte___java_lang_Object_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setByte___java_lang_Object_byte] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setChar___java_lang_Object_char(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_CHAR n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setChar___java_lang_Object_char] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setDouble___java_lang_Object_double(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setDouble___java_lang_Object_double] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setFloat___java_lang_Object_float(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setFloat___java_lang_Object_float] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setInt___java_lang_Object_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setInt___java_lang_Object_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setLong___java_lang_Object_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setLong___java_lang_Object_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void java_lang_reflect_Field_setShort___java_lang_Object_short(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_SHORT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_setShort___java_lang_Object_short] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Field_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Field_toString__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_reflect_Field() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getSignature__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getSignature__] = + (VTABLE_PTR) java_lang_reflect_Field_getSignature__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_isSynthetic__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_isSynthetic__] = + (VTABLE_PTR) java_lang_reflect_Field_isSynthetic__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_toGenericString__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_toGenericString__] = + (VTABLE_PTR) java_lang_reflect_Field_toGenericString__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_isEnumConstant__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_isEnumConstant__] = + (VTABLE_PTR) java_lang_reflect_Field_isEnumConstant__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getGenericType__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getGenericType__] = + (VTABLE_PTR) java_lang_reflect_Field_getGenericType__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_equals___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_equals___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_equals___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_get___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_get___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_get___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getBoolean___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getBoolean___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getBoolean___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getByte___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getByte___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getByte___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getChar___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getChar___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getChar___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getDeclaringClass__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getDeclaringClass__] = + (VTABLE_PTR) java_lang_reflect_Field_getDeclaringClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getDouble___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getDouble___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getDouble___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getFloat___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getFloat___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getFloat___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getInt___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getInt___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getInt___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getLong___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getLong___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getLong___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getName__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getName__] = + (VTABLE_PTR) java_lang_reflect_Field_getName__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getShort___java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getShort___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_getShort___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_getType__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_getType__] = + (VTABLE_PTR) java_lang_reflect_Field_getType__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_hashCode__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_hashCode__] = + (VTABLE_PTR) java_lang_reflect_Field_hashCode__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_set___java_lang_Object_java_lang_Object + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_set___java_lang_Object_java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Field_set___java_lang_Object_java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setBoolean___java_lang_Object_boolean + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setBoolean___java_lang_Object_boolean] = + (VTABLE_PTR) java_lang_reflect_Field_setBoolean___java_lang_Object_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setByte___java_lang_Object_byte + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setByte___java_lang_Object_byte] = + (VTABLE_PTR) java_lang_reflect_Field_setByte___java_lang_Object_byte; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setChar___java_lang_Object_char + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setChar___java_lang_Object_char] = + (VTABLE_PTR) java_lang_reflect_Field_setChar___java_lang_Object_char; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setDouble___java_lang_Object_double + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setDouble___java_lang_Object_double] = + (VTABLE_PTR) java_lang_reflect_Field_setDouble___java_lang_Object_double; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setFloat___java_lang_Object_float + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setFloat___java_lang_Object_float] = + (VTABLE_PTR) java_lang_reflect_Field_setFloat___java_lang_Object_float; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setInt___java_lang_Object_int + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setInt___java_lang_Object_int] = + (VTABLE_PTR) java_lang_reflect_Field_setInt___java_lang_Object_int; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setLong___java_lang_Object_long + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setLong___java_lang_Object_long] = + (VTABLE_PTR) java_lang_reflect_Field_setLong___java_lang_Object_long; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_setShort___java_lang_Object_short + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_setShort___java_lang_Object_short] = + (VTABLE_PTR) java_lang_reflect_Field_setShort___java_lang_Object_short; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Field_toString__ + __TIB_java_lang_reflect_Field.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Field_toString__] = + (VTABLE_PTR) java_lang_reflect_Field_toString__; +#endif +} diff --git a/tests/nbody-java/native_java_lang_reflect_Method.c b/tests/nbody-java/native_java_lang_reflect_Method.c new file mode 100644 index 0000000000000..2d7efa99ab07d --- /dev/null +++ b/tests/nbody-java/native_java_lang_reflect_Method.c @@ -0,0 +1,207 @@ + +#include "xmlvm.h" +#include "java_lang_reflect_Method.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include "java_lang_Class.h" +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_OBJECT java_lang_reflect_Method_getTypeParameters__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getTypeParameters__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_toGenericString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_toGenericString__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getGenericParameterTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getGenericParameterTypes__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getGenericExceptionTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getGenericExceptionTypes__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getGenericReturnType__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getGenericReturnType__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getParameterAnnotations__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getParameterAnnotations__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Method_isVarArgs__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_isVarArgs__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Method_isBridge__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_isBridge__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Method_isSynthetic__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_isSynthetic__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getDefaultValue__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getDefaultValue__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN java_lang_reflect_Method_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_equals___java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getDeclaringClass__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getDeclaringClass__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getExceptionTypes__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getExceptionTypes__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_getName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_getName__] + java_lang_reflect_Method* thiz = me; + return thiz->fields.java_lang_reflect_Method.name_; + //XMLVM_END_NATIVE +} + +JAVA_INT java_lang_reflect_Method_hashCode__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_hashCode__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY] + java_lang_reflect_Method* thiz = me; + java_lang_Class* declaringClass = thiz->fields.java_lang_reflect_Method.clazz_; + __TIB_DEFINITION_TEMPLATE* tib = declaringClass->fields.java_lang_Class.tib_; + Func_OOOO dispatcher = tib->methodDispatcherFunc; + return dispatcher(me, n1, n2); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_lang_reflect_Method_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[java_lang_reflect_Method_toString__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_java_lang_reflect_Method() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getTypeParameters__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getTypeParameters__] = + (VTABLE_PTR) java_lang_reflect_Method_getTypeParameters__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_toGenericString__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_toGenericString__] = + (VTABLE_PTR) java_lang_reflect_Method_toGenericString__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getGenericParameterTypes__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getGenericParameterTypes__] = + (VTABLE_PTR) java_lang_reflect_Method_getGenericParameterTypes__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getGenericExceptionTypes__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getGenericExceptionTypes__] = + (VTABLE_PTR) java_lang_reflect_Method_getGenericExceptionTypes__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getGenericReturnType__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getGenericReturnType__] = + (VTABLE_PTR) java_lang_reflect_Method_getGenericReturnType__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getParameterAnnotations__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getParameterAnnotations__] = + (VTABLE_PTR) java_lang_reflect_Method_getParameterAnnotations__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_isVarArgs__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_isVarArgs__] = + (VTABLE_PTR) java_lang_reflect_Method_isVarArgs__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_isBridge__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_isBridge__] = + (VTABLE_PTR) java_lang_reflect_Method_isBridge__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_isSynthetic__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_isSynthetic__] = + (VTABLE_PTR) java_lang_reflect_Method_isSynthetic__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getDefaultValue__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getDefaultValue__] = + (VTABLE_PTR) java_lang_reflect_Method_getDefaultValue__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_equals___java_lang_Object + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_equals___java_lang_Object] = + (VTABLE_PTR) java_lang_reflect_Method_equals___java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getDeclaringClass__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getDeclaringClass__] = + (VTABLE_PTR) java_lang_reflect_Method_getDeclaringClass__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getExceptionTypes__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getExceptionTypes__] = + (VTABLE_PTR) java_lang_reflect_Method_getExceptionTypes__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_getName__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_getName__] = + (VTABLE_PTR) java_lang_reflect_Method_getName__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_hashCode__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_hashCode__] = + (VTABLE_PTR) java_lang_reflect_Method_hashCode__; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY] = + (VTABLE_PTR) java_lang_reflect_Method_invoke___java_lang_Object_java_lang_Object_1ARRAY; +#endif +#ifdef XMLVM_VTABLE_IDX_java_lang_reflect_Method_toString__ + __TIB_java_lang_reflect_Method.vtable[XMLVM_VTABLE_IDX_java_lang_reflect_Method_toString__] = + (VTABLE_PTR) java_lang_reflect_Method_toString__; +#endif +} diff --git a/tests/nbody-java/native_java_net_InetAddress.c b/tests/nbody-java/native_java_net_InetAddress.c new file mode 100644 index 0000000000000..beac443998541 --- /dev/null +++ b/tests/nbody-java/native_java_net_InetAddress.c @@ -0,0 +1,92 @@ + +#include "xmlvm.h" +#include "java_net_InetAddress.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include "xmlvm-util.h" +#include "xmlvm-sock.h" +#include "java_net_UnknownHostException.h" +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_net_InetAddress_oneTimeInitialization___boolean(JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_NATIVE[java_net_InetAddress_oneTimeInitialization___boolean] + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_net_InetAddress_getAliasesByNameImpl___java_lang_String(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_net_InetAddress_getAliasesByNameImpl___java_lang_String] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_net_InetAddress_getHostByAddrImpl___byte_1ARRAY(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_net_InetAddress_getHostByAddrImpl___byte_1ARRAY] + org_xmlvm_runtime_XMLVMArray* addr = n1; + I_32 result = 0; + hysockaddr_struct in_addr; + U_32 length; + char hostName[OSNIMAXHOST]; + JAVA_ARRAY_BYTE ipaddr[HYSOCK_INADDR6_LEN]; + int address_family = HYADDR_FAMILY_AFINET4; + length = addr->fields.org_xmlvm_runtime_XMLVMArray.length_; + + /* If it's a valid length for an IP address then do the work */ + if (length == HYSOCK_INADDR6_LEN || length == HYSOCK_INADDR_LEN) + { + + if (length == HYSOCK_INADDR6_LEN) + { + address_family = HYADDR_FAMILY_AFINET6; + } + + JAVA_ARRAY_BYTE* addrData = (JAVA_ARRAY_BYTE*) addr->fields.org_xmlvm_runtime_XMLVMArray.array_; + XMLVM_MEMCPY(ipaddr, addrData, length); + hysock_sockaddr_init6 (&in_addr, (U_8 *) ipaddr, length, + (I_16) address_family, 0, 0, 0, NULL); + result = + hysock_getnameinfo (&in_addr, sizeof (in_addr.addr), hostName, + OSNIMAXHOST, 0); + if (0 == result) + { + return newJavaNetInetAddressGenericBS (ipaddr, length, hostName, 0); + } + } + + XMLVM_THROW_WITH_CSTRING(java_net_UnknownHostException, netLookupErrorString(result)) + + return JAVA_NULL; + //XMLVM_END_NATIVE +} + +JAVA_INT java_net_InetAddress_inetAddrImpl___java_lang_String(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[java_net_InetAddress_inetAddrImpl___java_lang_String] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_net_InetAddress_inetNtoaImpl___int(JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[java_net_InetAddress_inetNtoaImpl___int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_net_InetAddress_getHostByNameImpl___java_lang_String_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[java_net_InetAddress_getHostByNameImpl___java_lang_String_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT java_net_InetAddress_getHostNameImpl__() +{ + //XMLVM_BEGIN_NATIVE[java_net_InetAddress_getHostNameImpl__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_java_util_Locale.c b/tests/nbody-java/native_java_util_Locale.c new file mode 100644 index 0000000000000..c9ed1416b1968 --- /dev/null +++ b/tests/nbody-java/native_java_util_Locale.c @@ -0,0 +1,36 @@ + +#include "xmlvm.h" +#include "java_util_Locale.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#ifdef __OBJC__ +#import +#endif +//XMLVM_END_NATIVE_IMPLEMENTATION + +void java_util_Locale_initNativeLayer__() +{ + //XMLVM_BEGIN_NATIVE[java_util_Locale_initNativeLayer__] +#ifdef __OBJC__ + NSUserDefaults* defs = [NSUserDefaults standardUserDefaults]; + NSArray* languages = [defs objectForKey:@"AppleLanguages"]; + NSString* language_ = [languages objectAtIndex:0]; + JAVA_OBJECT language = fromNSString(language_); + JAVA_OBJECT country = xmlvm_create_java_string("US"); + JAVA_OBJECT variant = xmlvm_create_java_string(""); + JAVA_OBJECT defaultLocale = __NEW_java_util_Locale(); + java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String(defaultLocale, language, country, variant); + java_util_Locale_setDefault___java_util_Locale(defaultLocale); +#else + //TODO we need a Posix implementation, this is just a dummy implementation + JAVA_OBJECT language = xmlvm_create_java_string("en"); + JAVA_OBJECT country = xmlvm_create_java_string("US"); + JAVA_OBJECT variant = xmlvm_create_java_string(""); + JAVA_OBJECT defaultLocale = __NEW_java_util_Locale(); + java_util_Locale___INIT____java_lang_String_java_lang_String_java_lang_String(defaultLocale, language, country, variant); + java_util_Locale_setDefault___java_util_Locale(defaultLocale); +#endif + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_org_apache_harmony_luni_platform_OSFileSystem.c b/tests/nbody-java/native_org_apache_harmony_luni_platform_OSFileSystem.c new file mode 100644 index 0000000000000..649da08e62b17 --- /dev/null +++ b/tests/nbody-java/native_org_apache_harmony_luni_platform_OSFileSystem.c @@ -0,0 +1,272 @@ + +#include "xmlvm.h" +#include "org_apache_harmony_luni_platform_OSFileSystem.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#include + +#include "xmlvm-util.h" +#include "xmlvm-hy.h" +#include "hycomp.h" +#include "xmlvm-file.h" +#include "xmlvm-sock.h" + +#include "java_io_IOException.h" + + + +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_apache_harmony_luni_platform_OSFileSystem_oneTimeInitializationImpl__() +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_oneTimeInitializationImpl__] + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_lockImpl___long_long_long_int_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4, JAVA_BOOLEAN n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_lockImpl___long_long_long_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_unlockImpl___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_unlockImpl___long_long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_fflushImpl___long_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_fflushImpl___long_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int] + I_32 hywhence = 0; /* The HY PPL equivalent of our whence arg.*/ + JAVA_LONG* fd = n1; + JAVA_LONG offset = n2; + JAVA_INT whence = n3; + + /* Convert whence argument */ + switch (whence) + { + case org_apache_harmony_luni_platform_IFileSystem_SEEK_SET: + hywhence = HySeekSet; + break; + case org_apache_harmony_luni_platform_IFileSystem_SEEK_CUR: + hywhence = HySeekCur; + break; + case org_apache_harmony_luni_platform_IFileSystem_SEEK_END: + hywhence = HySeekEnd; + break; + default: + return -1; + } + + return (JAVA_LONG) hyfile_seek (fd, (I_64) offset, hywhence); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readDirectImpl___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_readDirectImpl___long_long_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeDirectImpl___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_writeDirectImpl___long_long_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readImpl___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_readImpl___long_byte_1ARRAY_int_int] + JAVA_LONG fd = n1; + org_xmlvm_runtime_XMLVMArray* byteArray = n2; + JAVA_INT offset = n3; + JAVA_INT nbytes = n4; + + JAVA_ARRAY_BYTE *bytes = byteArray->fields.org_xmlvm_runtime_XMLVMArray.array_; + JAVA_LONG result; + + result = (JAVA_LONG) hyfile_read ((IDATA) fd, (void*) (bytes + offset), (IDATA) nbytes); + if(result == -1 && hyerror_last_error_number() == HYPORT_ERROR_FILE_LOCKED){ + XMLVM_THROW_WITH_CSTRING(java_io_IOException, netLookupErrorString(HYPORT_ERROR_FILE_LOCKED)) + } + + return result; + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeImpl___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_writeImpl___long_byte_1ARRAY_int_int] + JAVA_LONG fd = n1; + org_xmlvm_runtime_XMLVMArray* byteArray = n2; + JAVA_INT offset = n3; + JAVA_INT nbytes = n4; + + JAVA_ARRAY_BYTE* bytes = byteArray->fields.org_xmlvm_runtime_XMLVMArray.array_; + JAVA_LONG result; + + result = (JAVA_LONG) hyfile_write ((IDATA) fd, (void *) (bytes + offset), (IDATA) nbytes); + if(result == -1 && hyerror_last_error_number() == HYPORT_ERROR_FILE_LOCKED){ + XMLVM_THROW_WITH_CSTRING(java_io_IOException, netLookupErrorString(HYPORT_ERROR_FILE_LOCKED)) + } + + return result; + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readvImpl___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_readvImpl___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_closeImpl___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_closeImpl___long] + JAVA_LONG fd = n1; + return (JAVA_INT) hyfile_close ((IDATA) fd); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_truncateImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_truncateImpl___long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_openImpl___byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_openImpl___byte_1ARRAY_int] + org_xmlvm_runtime_XMLVMArray* path = n1; + JAVA_INT jflags = n2; + + I_32 flags = 0; + I_32 mode = 0; + IDATA portFD; + jsize length; + char pathCopy[HyMaxPath]; + + switch(jflags){ + case org_apache_harmony_luni_platform_IFileSystem_O_RDONLY: + flags = HyOpenRead; + mode = 0; + break; + case org_apache_harmony_luni_platform_IFileSystem_O_WRONLY: + flags = HyOpenCreate | HyOpenWrite | HyOpenTruncate; + mode = 0666; + break; + case org_apache_harmony_luni_platform_IFileSystem_O_RDWR: + flags = HyOpenRead | HyOpenWrite | HyOpenCreate; + mode = 0666; + break; + case org_apache_harmony_luni_platform_IFileSystem_O_APPEND: + flags = HyOpenWrite | HyOpenCreate | HyOpenAppend; + mode = 0666; + break; + case org_apache_harmony_luni_platform_IFileSystem_O_RDWRSYNC: + flags = HyOpenRead | HyOpenWrite | HyOpenCreate | HyOpenSync; + mode = 0666; + break; + } + + length = XMLVMArray_count(path); + length = length < HyMaxPath - 1 ? length : HyMaxPath - 1; + XMLVM_MEMCPY(pathCopy, path->fields.org_xmlvm_runtime_XMLVMArray.array_, length); + pathCopy[length] = '\0'; + ioh_convertToPlatform (pathCopy); + + portFD = hyfile_open (pathCopy, flags, mode); + return (JAVA_LONG) portFD; + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_transferImpl___long_java_io_FileDescriptor_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_LONG n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_transferImpl___long_java_io_FileDescriptor_long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyAvailableImpl__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_ttyAvailableImpl__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_availableImpl___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_availableImpl___long] + JAVA_OBJECT thiz = me; + JAVA_LONG fd = n1; + + JAVA_LONG currentPosition = + org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int(thiz, fd, 0, org_apache_harmony_luni_platform_IFileSystem_SEEK_CUR); + + JAVA_LONG endPosition = + org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int(thiz, fd, 0, org_apache_harmony_luni_platform_IFileSystem_SEEK_END); + + org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int(thiz, fd, currentPosition, org_apache_harmony_luni_platform_IFileSystem_SEEK_SET); + + return (JAVA_LONG) (endPosition - currentPosition); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_sizeImpl___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_sizeImpl___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyReadImpl___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSFileSystem_ttyReadImpl___byte_1ARRAY_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_org_apache_harmony_luni_platform_OSFileSystem() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__ + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int; +#endif +} diff --git a/tests/nbody-java/native_org_apache_harmony_luni_platform_OSMemory.c b/tests/nbody-java/native_org_apache_harmony_luni_platform_OSMemory.c new file mode 100644 index 0000000000000..e5e898ac56747 --- /dev/null +++ b/tests/nbody-java/native_org_apache_harmony_luni_platform_OSMemory.c @@ -0,0 +1,288 @@ + +#include "xmlvm.h" +#include "org_apache_harmony_luni_platform_OSMemory.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLittleEndianImpl__() +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_isLittleEndianImpl__] + struct { + int x; + char c[sizeof(int)]; + } u; + u.x = 1; + return u.c[0] != 0; + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getPointerSizeImpl__() +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getPointerSizeImpl__] + return sizeof(JAVA_OBJECT); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_malloc___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_malloc___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_free___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_free___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BYTE n2, JAVA_LONG n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BYTE org_apache_harmony_luni_platform_OSMemory_getByte___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getByte___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setByte___long_byte(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BYTE n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setByte___long_byte] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_SHORT org_apache_harmony_luni_platform_OSMemory_getShort___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getShort___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setShort___long_short(JAVA_OBJECT me, JAVA_LONG n1, JAVA_SHORT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setShort___long_short] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getInt___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getInt___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setInt___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setInt___long_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getLong___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getLong___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setLong___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setLong___long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_FLOAT org_apache_harmony_luni_platform_OSMemory_getFloat___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getFloat___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setFloat___long_float(JAVA_OBJECT me, JAVA_LONG n1, JAVA_FLOAT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setFloat___long_float] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_DOUBLE org_apache_harmony_luni_platform_OSMemory_getDouble___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getDouble___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setDouble___long_double(JAVA_OBJECT me, JAVA_LONG n1, JAVA_DOUBLE n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setDouble___long_double] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getAddress___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_getAddress___long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_setAddress___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_setAddress___long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_mmapImpl___long_long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_mmapImpl___long_long_long_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSMemory_unmapImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_unmapImpl___long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_loadImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_loadImpl___long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLoadedImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_isLoadedImpl___long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_flushImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSMemory_flushImpl___long_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_org_apache_harmony_luni_platform_OSMemory() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_malloc___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_malloc___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_malloc___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_free___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_free___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_free___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getByte___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getByte___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getByte___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setByte___long_byte + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setByte___long_byte] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setByte___long_byte; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getShort___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getShort___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getShort___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setShort___long_short + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setShort___long_short] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setShort___long_short; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getInt___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getInt___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getInt___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setInt___long_int + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setInt___long_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setInt___long_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getLong___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getLong___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getLong___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setLong___long_long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setLong___long_long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setLong___long_long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getFloat___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getFloat___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getFloat___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setFloat___long_float + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setFloat___long_float] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setFloat___long_float; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getDouble___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getDouble___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getDouble___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setDouble___long_double + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setDouble___long_double] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setDouble___long_double; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getAddress___long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getAddress___long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_getAddress___long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setAddress___long_long + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setAddress___long_long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSMemory_setAddress___long_long; +#endif +} diff --git a/tests/nbody-java/native_org_apache_harmony_luni_platform_OSNetworkSystem.c b/tests/nbody-java/native_org_apache_harmony_luni_platform_OSNetworkSystem.c new file mode 100644 index 0000000000000..fc6339bc6c245 --- /dev/null +++ b/tests/nbody-java/native_org_apache_harmony_luni_platform_OSNetworkSystem.c @@ -0,0 +1,1041 @@ + +#include "xmlvm.h" +#include "org_apache_harmony_luni_platform_OSNetworkSystem.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#include +//#include +//#include +//#include +#include +#include "poll.h" +#include "java_io_FileDescriptor.h" +#include "java_net_SocketException.h" +#include "java_net_BindException.h" +#include "java_net_ConnectException.h" +#include "java_lang_Thread.h" +#include "xmlvm-sock.h" +#include "java_io_InterruptedIOException.h" + + +void createSocket (JAVA_OBJECT thisObjFD, int sockType, BOOLEAN preferIPv4Stack) +{ + I_32 result; + hysocket_t sockdesc; + int family = HYADDR_FAMILY_AFINET4; + int supportsIPv6 = 0; //HARMONY_CACHE_GET (env, harmony_supports_ipv6); + + if (supportsIPv6 && !(preferIPv4Stack)) + { + /* We are creating a server socket on the any address */ + family = HYADDR_FAMILY_UNSPEC; + } + + result = hysock_socket (&sockdesc, family, sockType, HYSOCK_DEFPROTOCOL); + if (0 != result) + { + /* ok now if we tried to create an IPv6 socket and it failed it could be that the + platform does not have IPv6 enabled. In this case we should revert back to + creating an IPv4 socket */ + if (HYADDR_FAMILY_UNSPEC == family) + { + /* now try to create an IPv4 socket */ + family = HYADDR_FAMILY_AFINET4; + result = hysock_socket (&sockdesc, family, sockType, HYSOCK_DEFPROTOCOL); + } + + if (0 != result) + { + throwJavaNetSocketException (result); + } + } + + if (0 == result) + { + setJavaIoFileDescriptorContents (thisObjFD, sockdesc); + } +} + + +int selectRead(hysocket_t hysocketP, I_32 uSecTime, BOOLEAN accept) +{ + I_32 result = 0; + I_32 timeout; + struct pollfd my_pollfd; + + timeout = uSecTime >= 0 ? TO_MILLIS(0, uSecTime) : -1; + my_pollfd.fd = hysocketP->sock; + my_pollfd.events = POLLIN | POLLPRI; + my_pollfd.revents = 0; + do { + result = poll (&my_pollfd, 1, timeout); + } while (result == -1 && errno == EINTR); + + if (result == 0) + return HYPORT_ERROR_SOCKET_TIMEOUT; + + if (result == -1) + return HYPORT_ERROR_SOCKET_OPFAILED; + + return result; +} + + + +UDATA hytime_msec_clock () +{ + struct timeval tp; + struct timezone tzp; + + gettimeofday (&tp, &tzp); + return (tp.tv_sec * 1000) + (tp.tv_usec / 1000); +} + + +int pollSelectRead (JAVA_OBJECT fileDescriptor, JAVA_INT timeout, BOOLEAN poll) +{ + + I_32 result; + hysocket_t hysocketP; + + //PORT_ACCESS_FROM_ENV (env); + + if (!poll) { + UDATA finishTime; + + /* + * A zero timeout means wait forever. If not polling, return success + * and call receive() or accept() to block. + */ + + if (!timeout) { + return 0; + } + + finishTime = hytime_msec_clock() + (UDATA) timeout; + + SELECT_NOPOLL: + + hysocketP = getJavaIoFileDescriptorContentsAsAPointer (fileDescriptor); + + if (!hysock_socketIsValid (hysocketP)) { + throwJavaNetSocketException (HYPORT_ERROR_SOCKET_BADSOCKET); + return - 1; + } + + result = hysock_select_read (hysocketP, timeout / 1000, + (timeout % 1000) * 1000, FALSE); + + /* + * if we time out, then throw the InterruptedIO exception + * which gets converted by a caller into the appropriate thing + * + * if we are interrupted, recalculate our timeout and if we + * have time left or 0, try again. If no time lest, throw InterruptedIO + * Exception + * + * If some other error, just throw exceptionand bail + */ + if (HYPORT_ERROR_SOCKET_TIMEOUT == result) { + XMLVM_THROW_WITH_CSTRING(java_io_InterruptedIOException, netLookupErrorString(result)) + } + else if (HYPORT_ERROR_SOCKET_INTERRUPTED == result) { + + timeout = finishTime - hytime_msec_clock(); + + if (timeout < 0) { + XMLVM_THROW_WITH_CSTRING(java_io_InterruptedIOException, netLookupErrorString(result)) + } + else { + goto SELECT_NOPOLL; + } + } + else if (0 > result) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + } + } + else /* we are polling */ + { + I_32 pollTimeoutUSec = 100000, pollMsec = 100; + UDATA finishTime = 0; + IDATA timeLeft = timeout; + BOOLEAN hasTimeout = timeout > 0; + + if (hasTimeout) { + finishTime = hytime_msec_clock () + (UDATA) timeout; + } + + select: + + /* + * Fetch the handle every time in case the socket is closed. + */ + + hysocketP = + getJavaIoFileDescriptorContentsAsAPointer (fileDescriptor); + + if (!hysock_socketIsValid (hysocketP)) + { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_INTERRUPTED)) + return - 1; + } + + if (hasTimeout) + { + if (timeLeft - 10 < pollMsec) { + pollTimeoutUSec = timeLeft <= 0 ? 0 : (timeLeft * 1000); + } + + result = hysock_select_read (hysocketP, 0, pollTimeoutUSec, FALSE); + + /* + * because we are polling at a time smaller than timeout (presumably) + * lets treat an interrupt and timeout the same - go see if we're done + * timewise, and then just try again if not + */ + if (HYPORT_ERROR_SOCKET_TIMEOUT == result || + HYPORT_ERROR_SOCKET_INTERRUPTED == result) + { + timeLeft = finishTime - hytime_msec_clock (); + + if (timeLeft <= 0) { + XMLVM_THROW_WITH_CSTRING(java_io_InterruptedIOException, netLookupErrorString(result)) + } + else + { + goto select; + } + } + else if (0 > result) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + } + } + else /* polling with no timeout (why would you do this?)*/ + { + result = hysock_select_read (hysocketP, 0, pollTimeoutUSec, FALSE); + + /* + * if interrupted (or a timeout) just retry + */ + if (HYPORT_ERROR_SOCKET_TIMEOUT == result || + HYPORT_ERROR_SOCKET_INTERRUPTED == result) + { + goto select; + } + else if (0 > result) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + } + } + } + + return result; +} + + +void updateSocket(hysockaddr_t sockaddrP, hysocket_t socketNew, JAVA_OBJECT socketImpl, JAVA_OBJECT fileDescriptorSocketImpl) +{ + //PORT_ACCESS_FROM_ENV(env); + U_8 nipAddress[HYSOCK_INADDR6_LEN]; + U_32 length; + JAVA_OBJECT anInetAddress; + U_16 nPort; + U_32 scope_id = 0; + + //hysock_sockaddr_address6(sockaddrP, nipAddress, &length, &scope_id); + //nPort = hysock_sockaddr_port(sockaddrP); + //anInetAddress = newJavaNetInetAddressGenericB((jbyte *) nipAddress, length, scope_id); + + setJavaIoFileDescriptorContents(fileDescriptorSocketImpl, socketNew); + //setSocketImplAddress(env, socketImpl, anInetAddress); + //setSocketImplPort(env, socketImpl, hysock_ntohs(nPort)); +} + + +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int] + java_io_FileDescriptor* fdServer = n1; + JAVA_OBJECT socketImpl = n2; + JAVA_OBJECT fdSocketImpl = n3; + JAVA_INT timeout = n4; + + //PORT_ACCESS_FROM_ENV(env); + I_32 result; + hysocket_t socketS, socketNew; + hysockaddr_struct sockaddrP; + JAVA_ARRAY_BYTE nlocalAddrBytes[HYSOCK_INADDR6_LEN]; + +select_accept: + result = pollSelectRead(fdServer, timeout, TRUE); + if (0 > result) { + return; + } + + socketS = getJavaIoFileDescriptorContentsAsAPointer(fdServer); + if (!hysock_socketIsValid(socketS)) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_BADSOCKET)) + return; + } + + hysock_sockaddr_init6(&sockaddrP, (U_8 *) nlocalAddrBytes, + HYSOCK_INADDR_LEN, HYADDR_FAMILY_AFINET4, 0, 0, 0, + socketS); + + result = hysock_accept(socketS, &sockaddrP, &socketNew); + if (0 != result) { + // repeat accept if the server was reset + if (errno == ECONNABORTED) { + goto select_accept; + } else { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + return; + } + } + + updateSocket(&sockaddrP, socketNew, socketImpl, fdSocketImpl); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor] + java_io_FileDescriptor* fileDescriptor = (java_io_FileDescriptor*) n1; + + hysocket_t hysocketP; + U_32 nbytes = 0; + I_32 result; + + hysocketP = getJavaIoFileDescriptorContentsAsAPointer(fileDescriptor); + if (!hysock_socketIsValid(hysocketP)) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_BADSOCKET)) + return (JAVA_INT) 0; + } + + result = ioctl(hysocketP->sock, FIONREAD, &nbytes); + if (result != 0) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)); + return (JAVA_INT) 0; + } + + return (JAVA_INT) nbytes; + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int] + JAVA_ARRAY_BYTE nlocalAddrBytes[HYSOCK_INADDR6_LEN]; + int length; + U_16 nPort; + I_32 result; + hysocket_t socketP; + hysockaddr_struct sockaddrP; + U_32 scope_id = 0; + java_io_FileDescriptor* fileDescriptor = (java_io_FileDescriptor*) n1; + java_net_InetAddress* inetAddress = n2; + JAVA_INT localPort = n3; + + socketP = getJavaIoFileDescriptorContentsAsAPointer(fileDescriptor); + if (!hysock_socketIsValid(socketP)) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_BADSOCKET)) + return; + } else { + netGetJavaNetInetAddressValue(inetAddress, (U_8*) nlocalAddrBytes, (U_32*) &length); + + nPort = hysock_htons((U_16) localPort); + if (length == HYSOCK_INADDR6_LEN) { + netGetJavaNetInetAddressScopeId(inetAddress, &scope_id); + hysock_sockaddr_init6(&sockaddrP, (U_8 *) nlocalAddrBytes, length, + HYADDR_FAMILY_AFINET6, nPort, 0, scope_id, + socketP); + } else { + hysock_sockaddr_init6(&sockaddrP, (U_8 *) nlocalAddrBytes, length, + HYADDR_FAMILY_AFINET4, nPort, 0, scope_id, + socketP); + } + result = hysock_bind(socketP, &sockaddrP); + if (0 != result) { + XMLVM_THROW_WITH_CSTRING(java_net_BindException, netLookupErrorString(result)) + return; + } + } + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int] + U_8 nAddrBytes[HYSOCK_INADDR6_LEN]; + U_32 length = 0; + U_16 nPort; + I_32 result; + hysocket_t socketP; + hysockaddr_struct sockaddrP; + U_32 scope_id = 0; + + java_io_FileDescriptor* fd = n1; + JAVA_INT trafficClass = n2; + java_net_InetAddress* inetAddress = n3; + JAVA_INT remotePort = n4; + + socketP = getJavaIoFileDescriptorContentsAsAPointer(fd); + if (!hysock_socketIsValid(socketP)) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_BADSOCKET)) + return -1; + } + + netGetJavaNetInetAddressValue(inetAddress, nAddrBytes, &length); + nPort = hysock_htons((U_16) remotePort); + + if (length == HYSOCK_INADDR_LEN) { + // IPv4 + hysock_sockaddr_init6(&sockaddrP, nAddrBytes, length, + HYADDR_FAMILY_AFINET4, nPort, 0, 0, socketP); + } else { + // IPv6 + netGetJavaNetInetAddressScopeId(inetAddress, &scope_id); + hysock_sockaddr_init6(&sockaddrP, nAddrBytes, length, + HYADDR_FAMILY_AFINET6, nPort, + (trafficClass & 0xFF) << 20, scope_id, socketP); + } + + result = hysock_connect(socketP, &sockaddrP); + if (0 != result) { + XMLVM_THROW_WITH_CSTRING(java_net_ConnectException, netLookupErrorString(result)) + return result; + } + + return result; + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_OBJECT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_OBJECT n4, JAVA_INT n5, JAVA_INT n6, JAVA_OBJECT n7) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean] + hysocket_t socketP; + BOOLEAN value = TRUE; + + createSocket(n1, HYSOCK_STREAM, n2); + + /* Also sets HY_SO_REUSEADDR = TRUE on Linux only */ + socketP = (hysocket_t) getJavaIoFileDescriptorContentsAsAPointer(n1); + hysock_setopt_bool (socketP, HY_SOL_SOCKET, HY_SO_REUSEADDR, &value); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean] + createSocket(n1, HYSOCK_STREAM, n2); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__] + return 0; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean] + I_32 result; + hysockaddr_struct sockaddrP; + U_16 nPort, hPort; + java_io_FileDescriptor* fileDescriptor = n1; + JAVA_BOOLEAN preferIPv6Addresses = n2; + + result = netGetSockAddr(fileDescriptor, &sockaddrP, preferIPv6Addresses); + if (0 != result) { + /* The java spec does not indicate any exceptions on this call */ + return (JAVA_INT) 0; + } + + nPort = hysock_sockaddr_port(&sockaddrP); + hPort = hysock_ntohs(nPort); + return (JAVA_INT) hPort; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMPImpl___java_net_InetAddress_java_net_InetAddress_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMPImpl___java_net_InetAddress_java_net_InetAddress_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int] + java_io_FileDescriptor* fd = n1; + JAVA_INT backlog = n2; + + hysocket_t socketP; + I_32 result; + + socketP = getJavaIoFileDescriptorContentsAsAPointer(fd); + + if (!hysock_socketIsValid(socketP)) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_BADSOCKET)) + return; + } + + result = hysock_listen(socketP, (I_32) backlog); + if (result < 0) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + return; + } + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitializationImpl___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitializationImpl___boolean] + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int] + JAVA_ARRAY_BYTE* message; + JAVA_INT result; + + java_io_FileDescriptor* fd = n1; + org_xmlvm_runtime_XMLVMArray* data = n2; + JAVA_INT offset = n3; + JAVA_INT count = n4; + JAVA_INT timeout = n5; + + /* Get a pointer to the start of the bytearray */ + message = data->fields.org_xmlvm_runtime_XMLVMArray.array_; + + /* Read directly into the byte array */ + result = + org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int + (me, fd, (JAVA_LONG) (message + offset), count, timeout); + + return result; + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int] + java_io_FileDescriptor* fd = n1; + JAVA_LONG address = n2; + JAVA_INT count = n3; + JAVA_INT timeout = n4; + + hysocket_t hysocketP; + U_8 *message = (U_8 *) address; + I_32 result, localCount; + + hysocketP = getJavaIoFileDescriptorContentsAsAPointer(fd); + if (!hysock_socketIsValid(hysocketP)) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_BADSOCKET)) + return (JAVA_INT) 0; + } + + /* A non-zero timeout will first check, and potentially wait, to see if any + * bytes are available + */ + if (timeout != 0) { + result = selectRead(hysocketP, timeout * 1000, FALSE); + if (0 > result) { + if (result == HYPORT_ERROR_SOCKET_TIMEOUT) { + return (JAVA_INT) 0; // return zero bytes to indicate timeout + } + + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + return (JAVA_INT) 0; // Unused, exception takes precedence + } + } + + /* Limit size of read to 64k bytes */ + localCount = (count < 65536) ? count : 65536; + result = hysock_read(hysocketP, message, localCount, HYSOCK_NOFLAGS); + if (0 > result) { + if (HYPORT_ERROR_SOCKET_WOULDBLOCK == result) { + /* We were asked to read on a nonblocking socket and there is no data available */ + return (JAVA_INT) 0; + } + + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + return (JAVA_INT) 0; + } + + /* If no bytes are read, return -1 to signal 'endOfFile' to the Java input stream */ + return (0 == result) ? (JAVA_INT) -1 : (JAVA_INT) result; + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_selectImpl___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_int_1ARRAY_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5, JAVA_LONG n6) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_selectImpl___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_int_1ARRAY_long] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_BOOLEAN n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4, JAVA_BOOLEAN n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_BOOLEAN n6, JAVA_INT n7, JAVA_OBJECT n8) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_OBJECT n6) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_BOOLEAN n6, JAVA_INT n7, JAVA_OBJECT n8) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor] + hysocket_t socketP; + I_32 result = 0; + + java_io_FileDescriptor* fileDescriptor = n1; + + socketP = getJavaIoFileDescriptorContentsAsAPointer(fileDescriptor); + if (hysock_socketIsValid(socketP)) { + /* Set the file descriptor before closing so the select polling loop will terminate. */ + /* Some platforms wait in the socket close. */ + fileDescriptor->fields.java_io_FileDescriptor.descriptor_ = -1; + result = hysock_close(&socketP); + } + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int] + JAVA_ARRAY_BYTE *message; + JAVA_INT result; + + java_io_FileDescriptor* fd = n1; + org_xmlvm_runtime_XMLVMArray* data = n2; + JAVA_INT offset = n3; + JAVA_INT count = n4; + + /* Get a pointer to the start of the bytearray */ + message = data->fields.org_xmlvm_runtime_XMLVMArray.array_; + + /* Write directly from the byte array */ + result = org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int + (me, fd, (JAVA_LONG) (message + offset), count); + + return result; + //XMLVM_END_NATIVE +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int] + java_io_FileDescriptor* fd = n1; + JAVA_LONG address = n2; + JAVA_INT count = n3; + + JAVA_ARRAY_BYTE *message = (JAVA_ARRAY_BYTE*) address; + I_32 result; + + hysocket_t socketP = getJavaIoFileDescriptorContentsAsAPointer(fd); + if (!hysock_socketIsValid(socketP)) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(HYPORT_ERROR_SOCKET_BADSOCKET)) + return (JAVA_INT) 0; + } + + result = hysock_write(socketP, (U_8 *) message, (I_32) count, HYSOCK_NOFLAGS); + if (0 > result) { + XMLVM_THROW_WITH_CSTRING(java_net_SocketException, netLookupErrorString(result)) + return (JAVA_INT) 0; + } + + return (JAVA_INT) result; + //XMLVM_END_NATIVE +} + +JAVA_LONG org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_org_apache_harmony_luni_platform_OSNetworkSystem() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__ + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__ + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int; +#endif +#ifdef XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int] = + (VTABLE_PTR) org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int; +#endif +} diff --git a/tests/nbody-java/native_org_apache_harmony_luni_util_FloatingPointParser.c b/tests/nbody-java/native_org_apache_harmony_luni_util_FloatingPointParser.c new file mode 100644 index 0000000000000..081c6180f3dac --- /dev/null +++ b/tests/nbody-java/native_org_apache_harmony_luni_util_FloatingPointParser.c @@ -0,0 +1,33 @@ + +#include "xmlvm.h" +#include "org_apache_harmony_luni_util_FloatingPointParser.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_DOUBLE org_apache_harmony_luni_util_FloatingPointParser_parseDblImpl___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_util_FloatingPointParser_parseDblImpl___java_lang_String_int] + const char* doubleNumStr = xmlvm_java_string_to_const_char(n1); + JAVA_DOUBLE doubleNum = atof(doubleNumStr); + if (n2 == 0) { + return doubleNum; + } + return doubleNum * pow(10, n2); + //XMLVM_END_NATIVE +} + +JAVA_FLOAT org_apache_harmony_luni_util_FloatingPointParser_parseFltImpl___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_util_FloatingPointParser_parseFltImpl___java_lang_String_int] + const char* floatNumStr = xmlvm_java_string_to_const_char(n1); + JAVA_FLOAT floatNum = atof(floatNumStr); + if (n2 == 0) { + return floatNum; + } + return floatNum * pow(10, n2); + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_org_apache_harmony_luni_util_NumberConverter.c b/tests/nbody-java/native_org_apache_harmony_luni_util_NumberConverter.c new file mode 100644 index 0000000000000..fa92d18fe4c5f --- /dev/null +++ b/tests/nbody-java/native_org_apache_harmony_luni_util_NumberConverter.c @@ -0,0 +1,186 @@ + +#include "xmlvm.h" +#include "org_apache_harmony_luni_util_NumberConverter.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include "xmlvm-hy.h" +#include "hycomp.h" + +#define RM_SIZE 21 +#define STemp_SIZE 22 +#define INV_LOG_OF_TEN_BASE_2 (0.30102999566398114) + +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_apache_harmony_luni_util_NumberConverter_bigIntDigitGeneratorInstImpl___long_int_boolean_boolean_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2, JAVA_BOOLEAN n3, JAVA_BOOLEAN n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_NATIVE[org_apache_harmony_luni_util_NumberConverter_bigIntDigitGeneratorInstImpl___long_int_boolean_boolean_int] + JAVA_LONG f = n1; + JAVA_INT e = n2; + JAVA_BOOLEAN isDenormalized = n3; + JAVA_BOOLEAN mantissaIsZero = n4; + JAVA_INT p = n5; + + JAVA_INT RLength, SLength, TempLength, mplus_Length, mminus_Length; + JAVA_INT high, low, i; + JAVA_LONG k, firstK, U; + JAVA_LONG getCount, setCount; + JAVA_ARRAY_INT* uArray; + + U_64 R[RM_SIZE], S[STemp_SIZE], mplus[RM_SIZE], mminus[RM_SIZE],Temp[STemp_SIZE]; + + memset (R, 0, RM_SIZE * sizeof (U_64)); + memset (S, 0, STemp_SIZE * sizeof (U_64)); + memset (mplus, 0, RM_SIZE * sizeof (U_64)); + memset (mminus, 0, RM_SIZE * sizeof (U_64)); + memset (Temp, 0, STemp_SIZE * sizeof (U_64)); + + if (e >= 0) + { + *R = f; + *mplus = *mminus = 1; + simpleShiftLeftHighPrecision (mminus, RM_SIZE, e); + if (f != (2 << (p - 1))) + { + simpleShiftLeftHighPrecision (R, RM_SIZE, e + 1); + *S = 2; + simpleShiftLeftHighPrecision (mplus, RM_SIZE, e); + } + else { + simpleShiftLeftHighPrecision (R, RM_SIZE, e+2); + *S = 4; + simpleShiftLeftHighPrecision (mplus, RM_SIZE, e + 1); + + } + } + else { + if (isDenormalized || (f != (2 << (p - 1)))) + { + *R = f << 1; + *S = 1; + simpleShiftLeftHighPrecision (S, STemp_SIZE, 1 - e); + *mplus = *mminus = 1; + } + else + { + *R = f << 2; + *S = 1; + simpleShiftLeftHighPrecision (S, STemp_SIZE, 2 - e); + *mplus = 2; + *mminus = 1; + } + } + k = (int) ceil ((e + p - 1) * INV_LOG_OF_TEN_BASE_2 - 1e-10); + + if (k > 0) + { + timesTenToTheEHighPrecision (S, STemp_SIZE, k); + } + else + { + timesTenToTheEHighPrecision (R, RM_SIZE, -k); + timesTenToTheEHighPrecision (mplus, RM_SIZE, -k); + timesTenToTheEHighPrecision (mminus, RM_SIZE, -k); + } + + RLength = mplus_Length = mminus_Length = RM_SIZE; + SLength = TempLength = STemp_SIZE; + + memset (Temp + RM_SIZE, 0, (STemp_SIZE - RM_SIZE) * sizeof (U_64)); + memcpy (Temp, R, RM_SIZE * sizeof (U_64)); + + while (RLength > 1 && R[RLength - 1] == 0) + --RLength; + while (mplus_Length > 1 && mplus[mplus_Length - 1] == 0) + --mplus_Length; + while (mminus_Length > 1 && mminus[mminus_Length - 1] == 0) + --mminus_Length; + while (SLength > 1 && S[SLength - 1] == 0) + --SLength; + TempLength = (RLength > mplus_Length ? RLength : mplus_Length) + 1; + addHighPrecision (Temp, TempLength, mplus, mplus_Length); + + if (compareHighPrecision (Temp, TempLength, S, SLength) >= 0) + { + firstK = k; + } + else + { + firstK = k - 1; + simpleAppendDecimalDigitHighPrecision (R, ++RLength, 0); + simpleAppendDecimalDigitHighPrecision (mplus, ++mplus_Length, 0); + simpleAppendDecimalDigitHighPrecision (mminus, ++mminus_Length, 0); + while (RLength > 1 && R[RLength - 1] == 0) + --RLength; + while (mplus_Length > 1 && mplus[mplus_Length - 1] == 0) + --mplus_Length; + while (mminus_Length > 1 && mminus[mminus_Length - 1] == 0) + --mminus_Length; + } + + org_apache_harmony_luni_util_NumberConverter* inst = (org_apache_harmony_luni_util_NumberConverter*)me; + org_xmlvm_runtime_XMLVMArray* uArrayObject = inst->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + uArray = uArrayObject->fields.org_xmlvm_runtime_XMLVMArray.array_; + + getCount = setCount = 0; + do + { + U = 0; + for (i = 3; i >= 0; --i) + { + TempLength = SLength + 1; + Temp[SLength] = 0; + memcpy (Temp, S, SLength * sizeof (U_64)); + simpleShiftLeftHighPrecision (Temp, TempLength, i); + if (compareHighPrecision (R, RLength, Temp, TempLength) >= 0) + { + subtractHighPrecision (R, RLength, Temp, TempLength); + U += 1 << i; + } + } + + low = compareHighPrecision (R, RLength, mminus, mminus_Length) <= 0; + + memset (Temp + RLength, 0, (STemp_SIZE - RLength) * sizeof (U_64)); + memcpy (Temp, R, RLength * sizeof (U_64)); + TempLength = (RLength > mplus_Length ? RLength : mplus_Length) + 1; + addHighPrecision (Temp, TempLength, mplus, mplus_Length); + + high = compareHighPrecision (Temp, TempLength, S, SLength) >= 0; + + if (low || high) + break; + + simpleAppendDecimalDigitHighPrecision (R, ++RLength, 0); + simpleAppendDecimalDigitHighPrecision (mplus, ++mplus_Length, 0); + simpleAppendDecimalDigitHighPrecision (mminus, ++mminus_Length, 0); + while (RLength > 1 && R[RLength - 1] == 0) + --RLength; + while (mplus_Length > 1 && mplus[mplus_Length - 1] == 0) + --mplus_Length; + while (mminus_Length > 1 && mminus[mminus_Length - 1] == 0) + --mminus_Length; + uArray[setCount++] = U; + + } + while (1); + + simpleShiftLeftHighPrecision (R, ++RLength, 1); + if (low && !high) + uArray[setCount++] = U; + else if (high && !low) + uArray[setCount++] = U + 1; + else if (compareHighPrecision (R, RLength, S, SLength) < 0) + uArray[setCount++] = U; + else + uArray[setCount++] = U + 1; + + inst->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = setCount; + inst->fields.org_apache_harmony_luni_util_NumberConverter.getCount_ = getCount; + inst->fields.org_apache_harmony_luni_util_NumberConverter.firstK_ = firstK; + + + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_org_xmlvm_runtime_Condition.c b/tests/nbody-java/native_org_xmlvm_runtime_Condition.c new file mode 100644 index 0000000000000..9d5daa0d2adb1 --- /dev/null +++ b/tests/nbody-java/native_org_xmlvm_runtime_Condition.c @@ -0,0 +1,116 @@ + +#include "xmlvm.h" +#include "org_xmlvm_runtime_Condition.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#include "java_lang_Object_AddedMembers.h" +#include "org_xmlvm_runtime_Mutex.h" +#include +#include + +pthread_cond_t* getConditionPtr(org_xmlvm_runtime_Condition* me) +{ + return (pthread_cond_t*)(me->fields.org_xmlvm_runtime_Condition.pthreadCondT_); +} + +void nativeConditionCleanup(void* me, void* client_data) +{ + pthread_cond_t* condPtr = getConditionPtr((org_xmlvm_runtime_Condition*)me); + pthread_cond_destroy(condPtr); + free(condPtr); +} + +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_xmlvm_runtime_Condition_initNativeConditionInstance__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Condition_initNativeConditionInstance__] + ((org_xmlvm_runtime_Condition*)me)->fields.org_xmlvm_runtime_Condition.pthreadCondT_ = malloc(sizeof(pthread_cond_t)); + pthread_cond_init(getConditionPtr(me), NULL); + + // Register a finalizer for native cleanup + XMLVM_FINALIZE(me, nativeConditionCleanup); + //XMLVM_END_NATIVE +} + +void org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex] + pthread_cond_t* condPtr = getConditionPtr(me); + JAVA_OBJECT mutex = ((org_xmlvm_runtime_Mutex*)n1)->fields.org_xmlvm_runtime_Mutex.nativeMutex_; + int result = pthread_cond_wait(condPtr, mutex); + if (result != 0) { + printf("ERROR: pthread_cond_wait response was %i\n", result); + } + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long] + pthread_cond_t* condPtr = getConditionPtr(me); + JAVA_OBJECT mutex = ((org_xmlvm_runtime_Mutex*)n1)->fields.org_xmlvm_runtime_Mutex.nativeMutex_; + + struct timeval now; + gettimeofday(&now, NULL); + + struct timespec to; + // To avoid an overflow error, we drop precision on microseconds (usec) in favor of milliseconds. + // The loss of precision at the microsecond level is not of concern. + JAVA_LONG msec = (now.tv_usec / 1000) + n2; + to.tv_sec = now.tv_sec + (msec / 1000); + to.tv_nsec = (msec % 1000) * 1000000; + + int result = pthread_cond_timedwait(condPtr, mutex, &to); + int timedOut = 0; + if (result == ETIMEDOUT) { + timedOut = 1; + } else if (result != 0) { + printf("ERROR: pthread_cond_timedwait response was %i\n", result); + } + return timedOut; + //XMLVM_END_NATIVE +} + +void org_xmlvm_runtime_Condition_signal__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Condition_signal__] + XMLVM_UNIMPLEMENTED_NATIVE_METHOD(); + //XMLVM_END_NATIVE +} + +void org_xmlvm_runtime_Condition_broadcast__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Condition_broadcast__] + pthread_cond_t* condPtr = getConditionPtr(me); + int result = pthread_cond_broadcast(condPtr); + if (result != 0) { + printf("ERROR: pthread_cond_broadcast response was %i\n", result); + } + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_org_xmlvm_runtime_Condition() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex + __TIB_org_xmlvm_runtime_Condition.vtable[XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex] = + (VTABLE_PTR) org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex; +#endif +#ifdef XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long + __TIB_org_xmlvm_runtime_Condition.vtable[XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long] = + (VTABLE_PTR) org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long; +#endif +#ifdef XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_signal__ + __TIB_org_xmlvm_runtime_Condition.vtable[XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_signal__] = + (VTABLE_PTR) org_xmlvm_runtime_Condition_signal__; +#endif +#ifdef XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_broadcast__ + __TIB_org_xmlvm_runtime_Condition.vtable[XMLVM_VTABLE_IDX_org_xmlvm_runtime_Condition_broadcast__] = + (VTABLE_PTR) org_xmlvm_runtime_Condition_broadcast__; +#endif +} diff --git a/tests/nbody-java/native_org_xmlvm_runtime_FinalizerNotifier.c b/tests/nbody-java/native_org_xmlvm_runtime_FinalizerNotifier.c new file mode 100644 index 0000000000000..a855416b1c80b --- /dev/null +++ b/tests/nbody-java/native_org_xmlvm_runtime_FinalizerNotifier.c @@ -0,0 +1,63 @@ + +#include "xmlvm.h" +#include "org_xmlvm_runtime_FinalizerNotifier.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_xmlvm_runtime_FinalizerNotifier_preventGarbageCollection___boolean(JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_FinalizerNotifier_preventGarbageCollection___boolean] +#ifndef XMLVM_NO_GC + if (n1) { + // Disable garbage collection. Even GC_gcollect calls will be ineffective. + GC_disable(); + } else { + // Reenable garbage collection. GC_disable() and GC_enable() calls + // nest. Garbage collection is enabled if the number of calls to both + // functions is equal. + GC_enable(); + } +#endif + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_currentThreadIsFinalizerThread___java_lang_Thread(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_FinalizerNotifier_currentThreadIsFinalizerThread___java_lang_Thread] + + // Determine if the current thread is the finalizer thread (the 1st + // parameter). + + // This method is native since any methods added to proxy classes are not + // visible to this class, such as Thread.getCurrentThreadNativeId(). + + // return Thread.getCurrentThreadNativeId() == finalizerThread.getNativeThreadId(); + return java_lang_Thread_getCurrentThreadNativeId__() == java_lang_Thread_getNativeThreadId__(n1); + + //XMLVM_END_NATIVE +} + +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_shouldInvokeFinalizers__() +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_FinalizerNotifier_shouldInvokeFinalizers__] +#ifndef XMLVM_NO_GC + return GC_should_invoke_finalizers(); +#else + return 0; +#endif + //XMLVM_END_NATIVE +} + +JAVA_INT org_xmlvm_runtime_FinalizerNotifier_invokeFinalizers__() +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_FinalizerNotifier_invokeFinalizers__] +#ifndef XMLVM_NO_GC + return GC_invoke_finalizers(); +#else + return 0; +#endif + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_org_xmlvm_runtime_Mutex.c b/tests/nbody-java/native_org_xmlvm_runtime_Mutex.c new file mode 100644 index 0000000000000..0466ba0ac3ba4 --- /dev/null +++ b/tests/nbody-java/native_org_xmlvm_runtime_Mutex.c @@ -0,0 +1,70 @@ + +#include "xmlvm.h" +#include "org_xmlvm_runtime_Mutex.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include + +void nativeCleanup(void* me, void* client_data) +{ + JAVA_OBJECT m = ((org_xmlvm_runtime_Mutex*) me)->fields.org_xmlvm_runtime_Mutex.nativeMutex_; + org_xmlvm_runtime_Mutex_addNativeMutexToFinalizerQueue___java_lang_Object(m); +} +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_xmlvm_runtime_Mutex_destroyNativeMutex___java_lang_Object(JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Mutex_destroyNativeMutex___java_lang_Object] + pthread_mutex_destroy(n1); + free(n1); + //XMLVM_END_NATIVE +} + +void org_xmlvm_runtime_Mutex_initNativeInstance__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Mutex_initNativeInstance__] + pthread_mutex_t* m = malloc(sizeof(pthread_mutex_t)); + pthread_mutex_init(m, NULL); + ((org_xmlvm_runtime_Mutex*) me)->fields.org_xmlvm_runtime_Mutex.nativeMutex_ = m; + // Register a finalizer for native cleanup + XMLVM_FINALIZE(me, nativeCleanup); + //XMLVM_END_NATIVE +} + +void org_xmlvm_runtime_Mutex_lock__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Mutex_lock__] + JAVA_OBJECT m = ((org_xmlvm_runtime_Mutex*) me)->fields.org_xmlvm_runtime_Mutex.nativeMutex_; + int result = pthread_mutex_lock(m); + if (result != 0) { + printf("Error locking mutex! %i\n", result); + } + //XMLVM_END_NATIVE +} + +void org_xmlvm_runtime_Mutex_unlock__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_Mutex_unlock__] + JAVA_OBJECT m = ((org_xmlvm_runtime_Mutex*) me)->fields.org_xmlvm_runtime_Mutex.nativeMutex_; + int result = pthread_mutex_unlock(m); + if (result != 0) { + printf("Error unlocking mutex! %i\n", result); + } + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_org_xmlvm_runtime_Mutex() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_org_xmlvm_runtime_Mutex_lock__ + __TIB_org_xmlvm_runtime_Mutex.vtable[XMLVM_VTABLE_IDX_org_xmlvm_runtime_Mutex_lock__] = + (VTABLE_PTR) org_xmlvm_runtime_Mutex_lock__; +#endif +#ifdef XMLVM_VTABLE_IDX_org_xmlvm_runtime_Mutex_unlock__ + __TIB_org_xmlvm_runtime_Mutex.vtable[XMLVM_VTABLE_IDX_org_xmlvm_runtime_Mutex_unlock__] = + (VTABLE_PTR) org_xmlvm_runtime_Mutex_unlock__; +#endif +} diff --git a/tests/nbody-java/native_org_xmlvm_runtime_XMLVMArray.c b/tests/nbody-java/native_org_xmlvm_runtime_XMLVMArray.c new file mode 100644 index 0000000000000..3e6934b0ac740 --- /dev/null +++ b/tests/nbody-java/native_org_xmlvm_runtime_XMLVMArray.c @@ -0,0 +1,181 @@ + +#include "xmlvm.h" +#include "org_xmlvm_runtime_XMLVMArray.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION + +#include "java_lang_Class.h" + +typedef struct { + short sizeOfBaseType; + short useAtomicMalloc; +} TYPE_INFO; + + +org_xmlvm_runtime_XMLVMArray* __NEW_XMLVMArray(JAVA_OBJECT type, JAVA_INT length, JAVA_OBJECT data) +{ + org_xmlvm_runtime_XMLVMArray* array = __NEW_org_xmlvm_runtime_XMLVMArray(); + org_xmlvm_runtime_XMLVMArray___INIT____java_lang_Class_int_java_lang_Object(array, type, length, data); + return array; +} + +/** + * This function determines two pieces of information of a type: the size of the type in byte + * and whether or not an atomic malloc() should be used. For arrays of primitive type it is possible + * to use an atomic malloc() offered by the GC. In this case the GC knows that the memory region cannot + * contain any pointers and can therefore skip scanning the memory region. + */ +TYPE_INFO XMLVMArray_getTypeInfo(JAVA_OBJECT type) +{ + TYPE_INFO info; + info.useAtomicMalloc = 1; + + if (type == __CLASS_byte || type == __CLASS_boolean) { + info.sizeOfBaseType = sizeof(JAVA_ARRAY_BYTE); + } else if (type == __CLASS_char || type == __CLASS_short) { + info.sizeOfBaseType = sizeof(JAVA_ARRAY_SHORT); + } else if (type == __CLASS_int) { + info.sizeOfBaseType = sizeof(JAVA_ARRAY_INT); + } else if (type == __CLASS_float) { + info.sizeOfBaseType = sizeof(JAVA_ARRAY_FLOAT); + } else if (type == __CLASS_double) { + info.sizeOfBaseType = sizeof(JAVA_ARRAY_DOUBLE); + } else if (type == __CLASS_long) { + info.sizeOfBaseType = sizeof(JAVA_ARRAY_LONG); + } else { + info.sizeOfBaseType = sizeof(void*); + // For arrays of object references we need to use the regular malloc() as the + // GC needs to scan this memory region. + info.useAtomicMalloc = 0; + } + + return info; +} + +static org_xmlvm_runtime_XMLVMArray* XMLVMArray_createMultiDimensionsWithCount(JAVA_OBJECT type, JAVA_ARRAY_INT* dim, int count) +{ + JAVA_ARRAY_INT dimensions = *dim; + org_xmlvm_runtime_XMLVMArray* slice; + int i; + dim++; + count--; + if (count == 0) { + return XMLVMArray_createSingleDimension(type, dimensions); + } + slice = XMLVMArray_createSingleDimension(type, dimensions); + JAVA_ARRAY_OBJECT* sliceData = (JAVA_ARRAY_OBJECT*) slice->fields.org_xmlvm_runtime_XMLVMArray.array_; + // Get base type + java_lang_Class* typeClass = (java_lang_Class*) type; + __TIB_DEFINITION_TEMPLATE* typeTIB = (__TIB_DEFINITION_TEMPLATE*) typeClass->fields.java_lang_Class.tib_; + JAVA_OBJECT baseType = typeTIB->baseType; + for (i = 0; i < dimensions; i++) { + //TODO should 'type' be baseType of this type? + sliceData[i] = XMLVMArray_createMultiDimensionsWithCount(baseType, dim, count); + } + return slice; +} + +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_getClass__(JAVA_OBJECT me) +{ + org_xmlvm_runtime_XMLVMArray* thiz = me; + return thiz->fields.org_xmlvm_runtime_XMLVMArray.type_; +} + +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_xmlvm_runtime_XMLVMArray_initNativeLayer__() +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMArray_initNativeLayer__] + __TIB_org_xmlvm_runtime_XMLVMArray.vtable[XMLVM_VTABLE_IDX_java_lang_Object_getClass__] = + (VTABLE_PTR) org_xmlvm_runtime_XMLVMArray_getClass__; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createSingleDimension___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMArray_createSingleDimension___java_lang_Class_int] + JAVA_OBJECT type = n1; + JAVA_INT size = n2; + TYPE_INFO info = XMLVMArray_getTypeInfo(type); + int mem_size = info.sizeOfBaseType * size; + JAVA_OBJECT data = info.useAtomicMalloc ? XMLVM_ATOMIC_MALLOC(mem_size) : XMLVM_MALLOC(mem_size); + XMLVM_BZERO(data, mem_size); + return org_xmlvm_runtime_XMLVMArray_createSingleDimensionWithData___java_lang_Class_int_java_lang_Object(type, size, data); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createSingleDimensionWithData___java_lang_Class_int_java_lang_Object(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMArray_createSingleDimensionWithData___java_lang_Class_int_java_lang_Object] + org_xmlvm_runtime_XMLVMArray* array = __NEW_org_xmlvm_runtime_XMLVMArray(); + java_lang_Class* baseType = n1; + __TIB_DEFINITION_TEMPLATE* baseTIB = baseType->fields.java_lang_Class.tib_; + JAVA_OBJECT arrayType = baseTIB->arrayType; + if (arrayType == JAVA_NULL) { + XMLVM_INTERNAL_ERROR(); + } + org_xmlvm_runtime_XMLVMArray___INIT____java_lang_Class_int_java_lang_Object(array, arrayType, n2, n3); + return array; + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createMultiDimensions___java_lang_Class_org_xmlvm_runtime_XMLVMArray(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMArray_createMultiDimensions___java_lang_Class_org_xmlvm_runtime_XMLVMArray] + org_xmlvm_runtime_XMLVMArray* dimArray = (org_xmlvm_runtime_XMLVMArray*) n2; + if (dimArray->fields.org_xmlvm_runtime_XMLVMArray.type_ != __CLASS_int_1ARRAY) { + XMLVM_INTERNAL_ERROR(); + } + int count = dimArray->fields.org_xmlvm_runtime_XMLVMArray.length_; + JAVA_ARRAY_INT* data = (JAVA_ARRAY_INT*) dimArray->fields.org_xmlvm_runtime_XMLVMArray.array_; + int i; + java_lang_Class* arrayType = n1; + for (i = 0; i < count - 1; i++) { + __TIB_DEFINITION_TEMPLATE* arrayTIB = arrayType->fields.java_lang_Class.tib_; + arrayType = arrayTIB->arrayType; + if (arrayType == JAVA_NULL) { + XMLVM_INTERNAL_ERROR(); + } + } + return XMLVMArray_createMultiDimensionsWithCount(arrayType, data, count); + //XMLVM_END_NATIVE +} + +void org_xmlvm_runtime_XMLVMArray_fillArray___org_xmlvm_runtime_XMLVMArray_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMArray_fillArray___org_xmlvm_runtime_XMLVMArray_java_lang_Object] + org_xmlvm_runtime_XMLVMArray* array = (org_xmlvm_runtime_XMLVMArray*) n1; + java_lang_Class* arrayType = array->fields.org_xmlvm_runtime_XMLVMArray.type_; + __TIB_DEFINITION_TEMPLATE* arrayTIB = arrayType->fields.java_lang_Class.tib_; + TYPE_INFO info = XMLVMArray_getTypeInfo(arrayTIB->baseType); + int n = info.sizeOfBaseType * array->fields.org_xmlvm_runtime_XMLVMArray.length_; + XMLVM_MEMCPY(array->fields.org_xmlvm_runtime_XMLVMArray.array_, n2, n); + //XMLVM_END_NATIVE +} + +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_clone__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMArray_clone__] + org_xmlvm_runtime_XMLVMArray* thiz = (org_xmlvm_runtime_XMLVMArray*) me; + JAVA_OBJECT type = thiz->fields.org_xmlvm_runtime_XMLVMArray.type_; + JAVA_INT length = thiz->fields.org_xmlvm_runtime_XMLVMArray.length_; + JAVA_OBJECT data = thiz->fields.org_xmlvm_runtime_XMLVMArray.array_; + TYPE_INFO info = XMLVMArray_getTypeInfo(type); + int sizeOfArrayInBytes = info.sizeOfBaseType * length; + JAVA_OBJECT copyData = info.useAtomicMalloc ? XMLVM_ATOMIC_MALLOC(sizeOfArrayInBytes) : XMLVM_MALLOC(sizeOfArrayInBytes); + XMLVM_MEMCPY(copyData, data, sizeOfArrayInBytes); + return XMLVMArray_createSingleDimensionWithData(type, length, copyData); + //XMLVM_END_NATIVE +} + + +void xmlvm_init_native_org_xmlvm_runtime_XMLVMArray() +{ + //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT + //XMLVM_END_NATIVE_IMPLEMENTATION_INIT +#ifdef XMLVM_VTABLE_IDX_org_xmlvm_runtime_XMLVMArray_clone__ + __TIB_org_xmlvm_runtime_XMLVMArray.vtable[XMLVM_VTABLE_IDX_org_xmlvm_runtime_XMLVMArray_clone__] = + (VTABLE_PTR) org_xmlvm_runtime_XMLVMArray_clone__; +#endif +} diff --git a/tests/nbody-java/native_org_xmlvm_runtime_XMLVMOutputStream.c b/tests/nbody-java/native_org_xmlvm_runtime_XMLVMOutputStream.c new file mode 100644 index 0000000000000..113b36dac4fdb --- /dev/null +++ b/tests/nbody-java/native_org_xmlvm_runtime_XMLVMOutputStream.c @@ -0,0 +1,15 @@ + +#include "xmlvm.h" +#include "org_xmlvm_runtime_XMLVMOutputStream.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +//XMLVM_END_NATIVE_IMPLEMENTATION + +void org_xmlvm_runtime_XMLVMOutputStream_nativeWrite___int(JAVA_INT n1) +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMOutputStream_nativeWrite___int] + printf("%c", (char) n1); + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/native_org_xmlvm_runtime_XMLVMUtil.c b/tests/nbody-java/native_org_xmlvm_runtime_XMLVMUtil.c new file mode 100644 index 0000000000000..46932210502a3 --- /dev/null +++ b/tests/nbody-java/native_org_xmlvm_runtime_XMLVMUtil.c @@ -0,0 +1,37 @@ + +#include "xmlvm.h" +#include "org_xmlvm_runtime_XMLVMUtil.h" + + +//XMLVM_BEGIN_NATIVE_IMPLEMENTATION +#include +#ifdef __OBJC__ +#ifndef XMLVM_NEW_IOS_API +#include "org_xmlvm_iphone_NSString.h" +#else +#include "org_xmlvm_ios_NSString.h" +#endif +#endif +//XMLVM_END_NATIVE_IMPLEMENTATION + +JAVA_OBJECT org_xmlvm_runtime_XMLVMUtil_getCurrentWorkingDirectory__() +{ + //XMLVM_BEGIN_NATIVE[org_xmlvm_runtime_XMLVMUtil_getCurrentWorkingDirectory__] +#ifdef __OBJC__ + // Base directory is /Documents/ + // http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/FilesandNetworking/FilesandNetworking.html + NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSString* path = [paths objectAtIndex:0]; + JAVA_OBJECT jpath = fromNSString(path); + return jpath; +#else + char buf[1024]; + char* err = getcwd(buf, sizeof(buf)); + if (err == NULL) { + XMLVM_INTERNAL_ERROR(); + } + return xmlvm_create_java_string(buf); +#endif + //XMLVM_END_NATIVE +} + diff --git a/tests/nbody-java/nbody_Body.c b/tests/nbody-java/nbody_Body.c new file mode 100644 index 0000000000000..ca172c060d28e --- /dev/null +++ b/tests/nbody-java/nbody_Body.c @@ -0,0 +1,453 @@ +#include "xmlvm.h" + +#include "nbody_Body.h" + +#define XMLVM_CURRENT_CLASS_NAME Body +#define XMLVM_CURRENT_PKG_CLASS_NAME nbody_Body + +__TIB_DEFINITION_nbody_Body __TIB_nbody_Body = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_nbody_Body, // classInitializer + "nbody.Body", // className + "nbody", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(nbody_Body), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_nbody_Body; +JAVA_OBJECT __CLASS_nbody_Body_1ARRAY; +JAVA_OBJECT __CLASS_nbody_Body_2ARRAY; +JAVA_OBJECT __CLASS_nbody_Body_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_DOUBLE _STATIC_nbody_Body_PI; +static JAVA_DOUBLE _STATIC_nbody_Body_SOLAR_MASS; +static JAVA_DOUBLE _STATIC_nbody_Body_DAYS_PER_YEAR; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_nbody_Body() +{ + staticInitializerLock(&__TIB_nbody_Body); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_nbody_Body.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_nbody_Body.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_nbody_Body); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_nbody_Body.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_nbody_Body.classInitialized) { + // do nothing + } + } + } else { + __TIB_nbody_Body.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("nbody.Body") + __INIT_IMPL_nbody_Body(); + } +} + +void __INIT_IMPL_nbody_Body() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_nbody_Body.newInstanceFunc = __NEW_INSTANCE_nbody_Body; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_nbody_Body.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_nbody_Body.numImplementedInterfaces = 0; + __TIB_nbody_Body.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_nbody_Body_PI = 3.141592653589793; + _STATIC_nbody_Body_SOLAR_MASS = 39.47841760435743; + _STATIC_nbody_Body_DAYS_PER_YEAR = 365.24; + + __TIB_nbody_Body.declaredFields = &__field_reflection_data[0]; + __TIB_nbody_Body.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_nbody_Body.constructorDispatcherFunc = constructor_dispatcher; + __TIB_nbody_Body.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_nbody_Body.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_nbody_Body.methodDispatcherFunc = method_dispatcher; + __TIB_nbody_Body.declaredMethods = &__method_reflection_data[0]; + __TIB_nbody_Body.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_nbody_Body = XMLVM_CREATE_CLASS_OBJECT(&__TIB_nbody_Body); + __TIB_nbody_Body.clazz = __CLASS_nbody_Body; + __TIB_nbody_Body.baseType = JAVA_NULL; + __CLASS_nbody_Body_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_Body); + __CLASS_nbody_Body_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_Body_1ARRAY); + __CLASS_nbody_Body_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_Body_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_nbody_Body] + //XMLVM_END_WRAPPER + + __TIB_nbody_Body.classInitialized = 1; +} + +void __DELETE_nbody_Body(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_nbody_Body] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_nbody_Body(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((nbody_Body*) me)->fields.nbody_Body.x_ = 0; + ((nbody_Body*) me)->fields.nbody_Body.y_ = 0; + ((nbody_Body*) me)->fields.nbody_Body.z_ = 0; + ((nbody_Body*) me)->fields.nbody_Body.vx_ = 0; + ((nbody_Body*) me)->fields.nbody_Body.vy_ = 0; + ((nbody_Body*) me)->fields.nbody_Body.vz_ = 0; + ((nbody_Body*) me)->fields.nbody_Body.mass_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_nbody_Body] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_nbody_Body() +{ XMLVM_CLASS_INIT(nbody_Body) +nbody_Body* me = (nbody_Body*) XMLVM_MALLOC(sizeof(nbody_Body)); + me->tib = &__TIB_nbody_Body; + __INIT_INSTANCE_MEMBERS_nbody_Body(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_nbody_Body] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_nbody_Body() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_nbody_Body(); + nbody_Body___INIT___(me); + return me; +} + +JAVA_DOUBLE nbody_Body_GET_PI() +{ + XMLVM_CLASS_INIT(nbody_Body) + return _STATIC_nbody_Body_PI; +} + +void nbody_Body_PUT_PI(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(nbody_Body) +_STATIC_nbody_Body_PI = v; +} + +JAVA_DOUBLE nbody_Body_GET_SOLAR_MASS() +{ + XMLVM_CLASS_INIT(nbody_Body) + return _STATIC_nbody_Body_SOLAR_MASS; +} + +void nbody_Body_PUT_SOLAR_MASS(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(nbody_Body) +_STATIC_nbody_Body_SOLAR_MASS = v; +} + +JAVA_DOUBLE nbody_Body_GET_DAYS_PER_YEAR() +{ + XMLVM_CLASS_INIT(nbody_Body) + return _STATIC_nbody_Body_DAYS_PER_YEAR; +} + +void nbody_Body_PUT_DAYS_PER_YEAR(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(nbody_Body) +_STATIC_nbody_Body_DAYS_PER_YEAR = v; +} + +void nbody_Body___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[nbody_Body___INIT___] + XMLVM_ENTER_METHOD("nbody.Body", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("nbody.java", 122) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT nbody_Body_jupiter__() +{ + XMLVM_CLASS_INIT(nbody_Body) + //XMLVM_BEGIN_WRAPPER[nbody_Body_jupiter__] + XMLVM_ENTER_METHOD("nbody.Body", "jupiter", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("nbody.java", 125) + _r0.o = __NEW_nbody_Body(); + XMLVM_CHECK_NPE(0) + nbody_Body___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("nbody.java", 126) + _r1.d = 4.841431442464721; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.x_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 127) + _r1.d = -1.1603200440274284; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.y_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 128) + _r1.d = -0.10362204447112311; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.z_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 129) + _r1.d = 0.606326392995832; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vx_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 130) + _r1.d = 2.81198684491626; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vy_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 131) + _r1.d = -0.02521836165988763; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vz_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 132) + _r1.d = 0.03769367487038949; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.mass_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 133) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT nbody_Body_saturn__() +{ + XMLVM_CLASS_INIT(nbody_Body) + //XMLVM_BEGIN_WRAPPER[nbody_Body_saturn__] + XMLVM_ENTER_METHOD("nbody.Body", "saturn", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("nbody.java", 137) + _r0.o = __NEW_nbody_Body(); + XMLVM_CHECK_NPE(0) + nbody_Body___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("nbody.java", 138) + _r1.d = 8.34336671824458; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.x_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 139) + _r1.d = 4.124798564124305; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.y_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 140) + _r1.d = -0.4035234171143214; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.z_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 141) + _r1.d = -1.0107743461787924; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vx_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 142) + _r1.d = 1.8256623712304119; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vy_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 143) + _r1.d = 0.008415761376584154; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vz_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 144) + _r1.d = 0.011286326131968767; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.mass_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 145) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT nbody_Body_uranus__() +{ + XMLVM_CLASS_INIT(nbody_Body) + //XMLVM_BEGIN_WRAPPER[nbody_Body_uranus__] + XMLVM_ENTER_METHOD("nbody.Body", "uranus", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("nbody.java", 149) + _r0.o = __NEW_nbody_Body(); + XMLVM_CHECK_NPE(0) + nbody_Body___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("nbody.java", 150) + _r1.d = 12.894369562139131; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.x_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 151) + _r1.d = -15.111151401698631; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.y_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 152) + _r1.d = -0.22330757889265573; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.z_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 153) + _r1.d = 1.0827910064415354; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vx_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 154) + _r1.d = 0.8687130181696082; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vy_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 155) + _r1.d = -0.010832637401363636; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vz_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 156) + _r1.d = 0.0017237240570597112; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.mass_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 157) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT nbody_Body_neptune__() +{ + XMLVM_CLASS_INIT(nbody_Body) + //XMLVM_BEGIN_WRAPPER[nbody_Body_neptune__] + XMLVM_ENTER_METHOD("nbody.Body", "neptune", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("nbody.java", 161) + _r0.o = __NEW_nbody_Body(); + XMLVM_CHECK_NPE(0) + nbody_Body___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("nbody.java", 162) + _r1.d = 15.379697114850917; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.x_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 163) + _r1.d = -25.919314609987964; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.y_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 164) + _r1.d = 0.17925877295037118; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.z_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 165) + _r1.d = 0.979090732243898; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vx_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 166) + _r1.d = 0.5946989986476762; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vy_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 167) + _r1.d = -0.034755955504078104; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.vz_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 168) + _r1.d = 0.0020336868699246304; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.mass_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 169) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT nbody_Body_sun__() +{ + XMLVM_CLASS_INIT(nbody_Body) + //XMLVM_BEGIN_WRAPPER[nbody_Body_sun__] + XMLVM_ENTER_METHOD("nbody.Body", "sun", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVM_SOURCE_POSITION("nbody.java", 173) + _r0.o = __NEW_nbody_Body(); + XMLVM_CHECK_NPE(0) + nbody_Body___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("nbody.java", 174) + _r1.d = 39.47841760435743; + XMLVM_CHECK_NPE(0) + ((nbody_Body*) _r0.o)->fields.nbody_Body.mass_ = _r1.d; + XMLVM_SOURCE_POSITION("nbody.java", 175) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT nbody_Body_offsetMomentum___double_double_double(JAVA_OBJECT me, JAVA_DOUBLE n1, JAVA_DOUBLE n2, JAVA_DOUBLE n3) +{ + //XMLVM_BEGIN_WRAPPER[nbody_Body_offsetMomentum___double_double_double] + XMLVM_ENTER_METHOD("nbody.Body", "offsetMomentum", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r4.o = me; + _r5.d = n1; + _r7.d = n2; + _r9.d = n3; + _r2.d = 39.47841760435743; + XMLVM_SOURCE_POSITION("nbody.java", 179) + _r0.d = -_r5.d; + _r0.d = _r0.d / _r2.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.vx_ = _r0.d; + XMLVM_SOURCE_POSITION("nbody.java", 180) + _r0.d = -_r7.d; + _r0.d = _r0.d / _r2.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.vy_ = _r0.d; + XMLVM_SOURCE_POSITION("nbody.java", 181) + _r0.d = -_r9.d; + _r0.d = _r0.d / _r2.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.vz_ = _r0.d; + XMLVM_SOURCE_POSITION("nbody.java", 182) + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/nbody_Body.h b/tests/nbody-java/nbody_Body.h new file mode 100644 index 0000000000000..1a8f0ab1e8761 --- /dev/null +++ b/tests/nbody-java/nbody_Body.h @@ -0,0 +1,70 @@ +#ifndef __NBODY_BODY__ +#define __NBODY_BODY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_nbody_Body 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +// Class declarations for nbody.Body +XMLVM_DEFINE_CLASS(nbody_Body, 6, XMLVM_ITABLE_SIZE_nbody_Body) + +extern JAVA_OBJECT __CLASS_nbody_Body; +extern JAVA_OBJECT __CLASS_nbody_Body_1ARRAY; +extern JAVA_OBJECT __CLASS_nbody_Body_2ARRAY; +extern JAVA_OBJECT __CLASS_nbody_Body_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_nbody_Body +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_nbody_Body \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_DOUBLE x_; \ + JAVA_DOUBLE y_; \ + JAVA_DOUBLE z_; \ + JAVA_DOUBLE vx_; \ + JAVA_DOUBLE vy_; \ + JAVA_DOUBLE vz_; \ + JAVA_DOUBLE mass_; \ + __ADDITIONAL_INSTANCE_FIELDS_nbody_Body \ + } nbody_Body + +struct nbody_Body { + __TIB_DEFINITION_nbody_Body* tib; + struct { + __INSTANCE_FIELDS_nbody_Body; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_nbody_Body +#define XMLVM_FORWARD_DECL_nbody_Body +typedef struct nbody_Body nbody_Body; +#endif + +#define XMLVM_VTABLE_SIZE_nbody_Body 6 + +void __INIT_nbody_Body(); +void __INIT_IMPL_nbody_Body(); +void __DELETE_nbody_Body(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_nbody_Body(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_nbody_Body(); +JAVA_OBJECT __NEW_INSTANCE_nbody_Body(); +JAVA_DOUBLE nbody_Body_GET_PI(); +void nbody_Body_PUT_PI(JAVA_DOUBLE v); +JAVA_DOUBLE nbody_Body_GET_SOLAR_MASS(); +void nbody_Body_PUT_SOLAR_MASS(JAVA_DOUBLE v); +JAVA_DOUBLE nbody_Body_GET_DAYS_PER_YEAR(); +void nbody_Body_PUT_DAYS_PER_YEAR(JAVA_DOUBLE v); +void nbody_Body___INIT___(JAVA_OBJECT me); +JAVA_OBJECT nbody_Body_jupiter__(); +JAVA_OBJECT nbody_Body_saturn__(); +JAVA_OBJECT nbody_Body_uranus__(); +JAVA_OBJECT nbody_Body_neptune__(); +JAVA_OBJECT nbody_Body_sun__(); +JAVA_OBJECT nbody_Body_offsetMomentum___double_double_double(JAVA_OBJECT me, JAVA_DOUBLE n1, JAVA_DOUBLE n2, JAVA_DOUBLE n3); + +#endif diff --git a/tests/nbody-java/nbody_NBodySystem.c b/tests/nbody-java/nbody_NBodySystem.c new file mode 100644 index 0000000000000..b43c61e001a94 --- /dev/null +++ b/tests/nbody-java/nbody_NBodySystem.c @@ -0,0 +1,670 @@ +#include "xmlvm.h" +#include "java_lang_Math.h" +#include "nbody_Body.h" + +#include "nbody_NBodySystem.h" + +#define XMLVM_CURRENT_CLASS_NAME NBodySystem +#define XMLVM_CURRENT_PKG_CLASS_NAME nbody_NBodySystem + +__TIB_DEFINITION_nbody_NBodySystem __TIB_nbody_NBodySystem = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_nbody_NBodySystem, // classInitializer + "nbody.NBodySystem", // className + "nbody", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(nbody_NBodySystem), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_nbody_NBodySystem; +JAVA_OBJECT __CLASS_nbody_NBodySystem_1ARRAY; +JAVA_OBJECT __CLASS_nbody_NBodySystem_2ARRAY; +JAVA_OBJECT __CLASS_nbody_NBodySystem_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_nbody_NBodySystem() +{ + staticInitializerLock(&__TIB_nbody_NBodySystem); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_nbody_NBodySystem.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_nbody_NBodySystem.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_nbody_NBodySystem); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_nbody_NBodySystem.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_nbody_NBodySystem.classInitialized) { + // do nothing + } + } + } else { + __TIB_nbody_NBodySystem.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("nbody.NBodySystem") + __INIT_IMPL_nbody_NBodySystem(); + } +} + +void __INIT_IMPL_nbody_NBodySystem() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_nbody_NBodySystem.newInstanceFunc = __NEW_INSTANCE_nbody_NBodySystem; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_nbody_NBodySystem.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_nbody_NBodySystem.numImplementedInterfaces = 0; + __TIB_nbody_NBodySystem.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_nbody_NBodySystem.declaredFields = &__field_reflection_data[0]; + __TIB_nbody_NBodySystem.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_nbody_NBodySystem.constructorDispatcherFunc = constructor_dispatcher; + __TIB_nbody_NBodySystem.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_nbody_NBodySystem.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_nbody_NBodySystem.methodDispatcherFunc = method_dispatcher; + __TIB_nbody_NBodySystem.declaredMethods = &__method_reflection_data[0]; + __TIB_nbody_NBodySystem.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_nbody_NBodySystem = XMLVM_CREATE_CLASS_OBJECT(&__TIB_nbody_NBodySystem); + __TIB_nbody_NBodySystem.clazz = __CLASS_nbody_NBodySystem; + __TIB_nbody_NBodySystem.baseType = JAVA_NULL; + __CLASS_nbody_NBodySystem_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_NBodySystem); + __CLASS_nbody_NBodySystem_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_NBodySystem_1ARRAY); + __CLASS_nbody_NBodySystem_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_NBodySystem_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_nbody_NBodySystem] + //XMLVM_END_WRAPPER + + __TIB_nbody_NBodySystem.classInitialized = 1; +} + +void __DELETE_nbody_NBodySystem(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_nbody_NBodySystem] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_nbody_NBodySystem(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((nbody_NBodySystem*) me)->fields.nbody_NBodySystem.bodies_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_nbody_NBodySystem] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_nbody_NBodySystem() +{ XMLVM_CLASS_INIT(nbody_NBodySystem) +nbody_NBodySystem* me = (nbody_NBodySystem*) XMLVM_MALLOC(sizeof(nbody_NBodySystem)); + me->tib = &__TIB_nbody_NBodySystem; + __INIT_INSTANCE_MEMBERS_nbody_NBodySystem(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_nbody_NBodySystem] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_nbody_NBodySystem() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_nbody_NBodySystem(); + nbody_NBodySystem___INIT___(me); + return me; +} + +void nbody_NBodySystem___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[nbody_NBodySystem___INIT___] + XMLVM_ENTER_METHOD("nbody.NBodySystem", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + _r12.o = me; + _r11.i = 0; + _r3.d = 0.0; + XMLVM_SOURCE_POSITION("nbody.java", 39) + XMLVM_CHECK_NPE(12) + java_lang_Object___INIT___(_r12.o); + XMLVM_SOURCE_POSITION("nbody.java", 40) + _r0.i = 5; + XMLVM_CLASS_INIT(nbody_Body) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_nbody_Body, _r0.i); + _r1.o = nbody_Body_sun__(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r11.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r11.i] = _r1.o; + _r1.i = 1; + _r2.o = nbody_Body_jupiter__(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 2; + _r2.o = nbody_Body_saturn__(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 3; + _r2.o = nbody_Body_uranus__(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 4; + _r2.o = nbody_Body_neptune__(); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + XMLVM_CHECK_NPE(12) + ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_ = _r0.o; + _r0 = _r11; + _r5 = _r3; + _r1 = _r3; + label48:; + XMLVM_SOURCE_POSITION("nbody.java", 51) + XMLVM_CHECK_NPE(12) + _r7.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + _r7.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + if (_r0.i >= _r7.i) goto label98; + XMLVM_SOURCE_POSITION("nbody.java", 52) + XMLVM_CHECK_NPE(12) + _r7.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r0.i); + _r7.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(7) + _r7.d = ((nbody_Body*) _r7.o)->fields.nbody_Body.vx_; + XMLVM_CHECK_NPE(12) + _r9.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + XMLVM_CHECK_NPE(9) + XMLVM_CHECK_ARRAY_BOUNDS(_r9.o, _r0.i); + _r9.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r9.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(9) + _r9.d = ((nbody_Body*) _r9.o)->fields.nbody_Body.mass_; + _r7.d = _r7.d * _r9.d; + _r1.d = _r1.d + _r7.d; + XMLVM_SOURCE_POSITION("nbody.java", 53) + XMLVM_CHECK_NPE(12) + _r7.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r0.i); + _r7.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(7) + _r7.d = ((nbody_Body*) _r7.o)->fields.nbody_Body.vy_; + XMLVM_CHECK_NPE(12) + _r9.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + XMLVM_CHECK_NPE(9) + XMLVM_CHECK_ARRAY_BOUNDS(_r9.o, _r0.i); + _r9.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r9.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(9) + _r9.d = ((nbody_Body*) _r9.o)->fields.nbody_Body.mass_; + _r7.d = _r7.d * _r9.d; + _r3.d = _r3.d + _r7.d; + XMLVM_SOURCE_POSITION("nbody.java", 54) + XMLVM_CHECK_NPE(12) + _r7.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r0.i); + _r7.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(7) + _r7.d = ((nbody_Body*) _r7.o)->fields.nbody_Body.vz_; + XMLVM_CHECK_NPE(12) + _r9.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + XMLVM_CHECK_NPE(9) + XMLVM_CHECK_ARRAY_BOUNDS(_r9.o, _r0.i); + _r9.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r9.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(9) + _r9.d = ((nbody_Body*) _r9.o)->fields.nbody_Body.mass_; + _r7.d = _r7.d * _r9.d; + _r5.d = _r5.d + _r7.d; + _r0.i = _r0.i + 1; + goto label48; + label98:; + XMLVM_SOURCE_POSITION("nbody.java", 56) + XMLVM_CHECK_NPE(12) + _r0.o = ((nbody_NBodySystem*) _r12.o)->fields.nbody_NBodySystem.bodies_; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r11.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r11.i]; + XMLVM_CHECK_NPE(0) + nbody_Body_offsetMomentum___double_double_double(_r0.o, _r1.d, _r3.d, _r5.d); + XMLVM_SOURCE_POSITION("nbody.java", 57) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void nbody_NBodySystem_advance___double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[nbody_NBodySystem_advance___double] + XMLVM_ENTER_METHOD("nbody.NBodySystem", "advance", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + XMLVMElem _r16; + XMLVMElem _r17; + XMLVMElem _r18; + XMLVMElem _r19; + _r17.o = me; + _r18.d = n1; + XMLVM_SOURCE_POSITION("nbody.java", 61) + _r1.i = 0; + label1:; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r2 = _r0; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r1.i >= _r2.i) goto label183; + XMLVM_SOURCE_POSITION("nbody.java", 62) + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r2 = _r0; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("nbody.java", 63) + _r3.i = _r1.i + 1; + label18:; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r4 = _r0; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r3.i >= _r4.i) goto label179; + XMLVM_SOURCE_POSITION("nbody.java", 64) + XMLVM_CHECK_NPE(2) + _r4.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.x_; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r6 = _r0; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r3.i); + _r6.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(6) + _r6.d = ((nbody_Body*) _r6.o)->fields.nbody_Body.x_; + _r4.d = _r4.d - _r6.d; + XMLVM_SOURCE_POSITION("nbody.java", 65) + XMLVM_CHECK_NPE(2) + _r6.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.y_; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r8 = _r0; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r3.i); + _r8.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(8) + _r8.d = ((nbody_Body*) _r8.o)->fields.nbody_Body.y_; + _r6.d = _r6.d - _r8.d; + XMLVM_SOURCE_POSITION("nbody.java", 66) + XMLVM_CHECK_NPE(2) + _r8.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.z_; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r10 = _r0; + XMLVM_CHECK_NPE(10) + XMLVM_CHECK_ARRAY_BOUNDS(_r10.o, _r3.i); + _r10.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r10.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(10) + _r10.d = ((nbody_Body*) _r10.o)->fields.nbody_Body.z_; + _r8.d = _r8.d - _r10.d; + _r10.d = _r4.d * _r4.d; + _r12.d = _r6.d * _r6.d; + _r10.d = _r10.d + _r12.d; + _r12.d = _r8.d * _r8.d; + _r10.d = _r10.d + _r12.d; + XMLVM_SOURCE_POSITION("nbody.java", 69) + _r12.d = java_lang_Math_sqrt___double(_r10.d); + XMLVM_SOURCE_POSITION("nbody.java", 70) + _r10.d = _r10.d * _r12.d; + _r10.d = _r18.d / _r10.d; + XMLVM_SOURCE_POSITION("nbody.java", 72) + XMLVM_CHECK_NPE(2) + _r12.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.vx_; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r14 = _r0; + XMLVM_CHECK_NPE(14) + XMLVM_CHECK_ARRAY_BOUNDS(_r14.o, _r3.i); + _r14.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r14.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(14) + _r14.d = ((nbody_Body*) _r14.o)->fields.nbody_Body.mass_; + _r14.d = _r14.d * _r4.d; + _r14.d = _r14.d * _r10.d; + _r12.d = _r12.d - _r14.d; + XMLVM_CHECK_NPE(2) + ((nbody_Body*) _r2.o)->fields.nbody_Body.vx_ = _r12.d; + XMLVM_SOURCE_POSITION("nbody.java", 73) + XMLVM_CHECK_NPE(2) + _r12.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.vy_; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r14 = _r0; + XMLVM_CHECK_NPE(14) + XMLVM_CHECK_ARRAY_BOUNDS(_r14.o, _r3.i); + _r14.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r14.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(14) + _r14.d = ((nbody_Body*) _r14.o)->fields.nbody_Body.mass_; + _r14.d = _r14.d * _r6.d; + _r14.d = _r14.d * _r10.d; + _r12.d = _r12.d - _r14.d; + XMLVM_CHECK_NPE(2) + ((nbody_Body*) _r2.o)->fields.nbody_Body.vy_ = _r12.d; + XMLVM_SOURCE_POSITION("nbody.java", 74) + XMLVM_CHECK_NPE(2) + _r12.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.vz_; + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r14 = _r0; + XMLVM_CHECK_NPE(14) + XMLVM_CHECK_ARRAY_BOUNDS(_r14.o, _r3.i); + _r14.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r14.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(14) + _r14.d = ((nbody_Body*) _r14.o)->fields.nbody_Body.mass_; + _r14.d = _r14.d * _r8.d; + _r14.d = _r14.d * _r10.d; + _r12.d = _r12.d - _r14.d; + XMLVM_CHECK_NPE(2) + ((nbody_Body*) _r2.o)->fields.nbody_Body.vz_ = _r12.d; + XMLVM_SOURCE_POSITION("nbody.java", 76) + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r12 = _r0; + XMLVM_CHECK_NPE(12) + XMLVM_CHECK_ARRAY_BOUNDS(_r12.o, _r3.i); + _r12.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r12.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(12) + _r13.d = ((nbody_Body*) _r12.o)->fields.nbody_Body.vx_; + XMLVM_CHECK_NPE(2) + _r15.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.mass_; + _r4.d = _r4.d * _r15.d; + _r4.d = _r4.d * _r10.d; + _r4.d = _r4.d + _r13.d; + XMLVM_CHECK_NPE(12) + ((nbody_Body*) _r12.o)->fields.nbody_Body.vx_ = _r4.d; + XMLVM_SOURCE_POSITION("nbody.java", 77) + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r4 = _r0; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(4) + _r12.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vy_; + XMLVM_CHECK_NPE(2) + _r14.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.mass_; + _r5.d = _r6.d * _r14.d; + _r5.d = _r5.d * _r10.d; + _r5.d = _r5.d + _r12.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.vy_ = _r5.d; + XMLVM_SOURCE_POSITION("nbody.java", 78) + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r4 = _r0; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(4) + _r5.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vz_; + XMLVM_CHECK_NPE(2) + _r12.d = ((nbody_Body*) _r2.o)->fields.nbody_Body.mass_; + _r7.d = _r8.d * _r12.d; + _r7.d = _r7.d * _r10.d; + _r5.d = _r5.d + _r7.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.vz_ = _r5.d; + _r3.i = _r3.i + 1; + goto label18; + label179:; + _r1.i = _r1.i + 1; + goto label1; + label183:; + XMLVM_SOURCE_POSITION("nbody.java", 82) + _r0 = _r17; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r1 = _r0; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + _r3.i = 0; + label190:; + if (_r3.i >= _r2.i) goto label224; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_SOURCE_POSITION("nbody.java", 83) + XMLVM_CHECK_NPE(4) + _r5.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.x_; + XMLVM_CHECK_NPE(4) + _r7.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vx_; + _r7.d = _r7.d * _r18.d; + _r5.d = _r5.d + _r7.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.x_ = _r5.d; + XMLVM_SOURCE_POSITION("nbody.java", 84) + XMLVM_CHECK_NPE(4) + _r5.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.y_; + XMLVM_CHECK_NPE(4) + _r7.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vy_; + _r7.d = _r7.d * _r18.d; + _r5.d = _r5.d + _r7.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.y_ = _r5.d; + XMLVM_SOURCE_POSITION("nbody.java", 85) + XMLVM_CHECK_NPE(4) + _r5.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.z_; + XMLVM_CHECK_NPE(4) + _r7.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vz_; + _r7.d = _r7.d * _r18.d; + _r5.d = _r5.d + _r7.d; + XMLVM_CHECK_NPE(4) + ((nbody_Body*) _r4.o)->fields.nbody_Body.z_ = _r5.d; + _r3.i = _r3.i + 1; + goto label190; + label224:; + XMLVM_SOURCE_POSITION("nbody.java", 87) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE nbody_NBodySystem_energy__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[nbody_NBodySystem_energy__] + XMLVM_ENTER_METHOD("nbody.NBodySystem", "energy", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + XMLVMElem _r16; + XMLVMElem _r17; + XMLVMElem _r18; + _r18.o = me; + XMLVM_SOURCE_POSITION("nbody.java", 91) + _r1.d = 0.0; + _r3.i = 0; + _r15 = _r3; + _r16 = _r1; + _r2 = _r16; + _r1 = _r15; + label9:; + XMLVM_SOURCE_POSITION("nbody.java", 93) + _r0 = _r18; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r4 = _r0; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r1.i >= _r4.i) goto label108; + XMLVM_SOURCE_POSITION("nbody.java", 94) + _r0 = _r18; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r4 = _r0; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r1.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("nbody.java", 95) + _r5.d = 0.5; + XMLVM_CHECK_NPE(4) + _r7.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.mass_; + _r5.d = _r5.d * _r7.d; + XMLVM_CHECK_NPE(4) + _r7.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vx_; + XMLVM_CHECK_NPE(4) + _r9.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vx_; + _r7.d = _r7.d * _r9.d; + XMLVM_CHECK_NPE(4) + _r9.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vy_; + XMLVM_CHECK_NPE(4) + _r11.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vy_; + _r9.d = _r9.d * _r11.d; + _r7.d = _r7.d + _r9.d; + XMLVM_CHECK_NPE(4) + _r9.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vz_; + XMLVM_CHECK_NPE(4) + _r11.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.vz_; + _r9.d = _r9.d * _r11.d; + _r7.d = _r7.d + _r9.d; + _r5.d = _r5.d * _r7.d; + _r2.d = _r2.d + _r5.d; + _r5.i = _r1.i + 1; + _r15 = _r5; + _r5 = _r2; + _r2 = _r15; + label53:; + XMLVM_SOURCE_POSITION("nbody.java", 100) + _r0 = _r18; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r3 = _r0; + _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o)); + if (_r2.i >= _r3.i) goto label104; + XMLVM_SOURCE_POSITION("nbody.java", 101) + _r0 = _r18; + XMLVM_CHECK_NPE(0) + _r0.o = ((nbody_NBodySystem*) _r0.o)->fields.nbody_NBodySystem.bodies_; + _r3 = _r0; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("nbody.java", 102) + XMLVM_CHECK_NPE(4) + _r7.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.x_; + XMLVM_CHECK_NPE(3) + _r9.d = ((nbody_Body*) _r3.o)->fields.nbody_Body.x_; + _r7.d = _r7.d - _r9.d; + XMLVM_SOURCE_POSITION("nbody.java", 103) + XMLVM_CHECK_NPE(4) + _r9.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.y_; + XMLVM_CHECK_NPE(3) + _r11.d = ((nbody_Body*) _r3.o)->fields.nbody_Body.y_; + _r9.d = _r9.d - _r11.d; + XMLVM_SOURCE_POSITION("nbody.java", 104) + XMLVM_CHECK_NPE(4) + _r11.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.z_; + XMLVM_CHECK_NPE(3) + _r13.d = ((nbody_Body*) _r3.o)->fields.nbody_Body.z_; + _r11.d = _r11.d - _r13.d; + _r7.d = _r7.d * _r7.d; + _r9.d = _r9.d * _r9.d; + _r7.d = _r7.d + _r9.d; + _r9.d = _r11.d * _r11.d; + _r7.d = _r7.d + _r9.d; + XMLVM_SOURCE_POSITION("nbody.java", 106) + _r7.d = java_lang_Math_sqrt___double(_r7.d); + XMLVM_SOURCE_POSITION("nbody.java", 107) + XMLVM_CHECK_NPE(4) + _r9.d = ((nbody_Body*) _r4.o)->fields.nbody_Body.mass_; + XMLVM_CHECK_NPE(3) + _r11.d = ((nbody_Body*) _r3.o)->fields.nbody_Body.mass_; + _r9.d = _r9.d * _r11.d; + _r7.d = _r9.d / _r7.d; + _r5.d = _r5.d - _r7.d; + _r2.i = _r2.i + 1; + goto label53; + label104:; + _r1.i = _r1.i + 1; + _r2 = _r5; + goto label9; + label108:; + XMLVM_SOURCE_POSITION("nbody.java", 110) + XMLVM_EXIT_METHOD() + return _r2.d; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/nbody_NBodySystem.h b/tests/nbody-java/nbody_NBodySystem.h new file mode 100644 index 0000000000000..5eea9f2f45541 --- /dev/null +++ b/tests/nbody-java/nbody_NBodySystem.h @@ -0,0 +1,62 @@ +#ifndef __NBODY_NBODYSYSTEM__ +#define __NBODY_NBODYSYSTEM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_nbody_NBodySystem 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Math +#define XMLVM_FORWARD_DECL_java_lang_Math +XMLVM_FORWARD_DECL(java_lang_Math) +#endif +#ifndef XMLVM_FORWARD_DECL_nbody_Body +#define XMLVM_FORWARD_DECL_nbody_Body +XMLVM_FORWARD_DECL(nbody_Body) +#endif +// Class declarations for nbody.NBodySystem +XMLVM_DEFINE_CLASS(nbody_NBodySystem, 6, XMLVM_ITABLE_SIZE_nbody_NBodySystem) + +extern JAVA_OBJECT __CLASS_nbody_NBodySystem; +extern JAVA_OBJECT __CLASS_nbody_NBodySystem_1ARRAY; +extern JAVA_OBJECT __CLASS_nbody_NBodySystem_2ARRAY; +extern JAVA_OBJECT __CLASS_nbody_NBodySystem_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_nbody_NBodySystem +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_nbody_NBodySystem \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT bodies_; \ + __ADDITIONAL_INSTANCE_FIELDS_nbody_NBodySystem \ + } nbody_NBodySystem + +struct nbody_NBodySystem { + __TIB_DEFINITION_nbody_NBodySystem* tib; + struct { + __INSTANCE_FIELDS_nbody_NBodySystem; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_nbody_NBodySystem +#define XMLVM_FORWARD_DECL_nbody_NBodySystem +typedef struct nbody_NBodySystem nbody_NBodySystem; +#endif + +#define XMLVM_VTABLE_SIZE_nbody_NBodySystem 6 + +void __INIT_nbody_NBodySystem(); +void __INIT_IMPL_nbody_NBodySystem(); +void __DELETE_nbody_NBodySystem(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_nbody_NBodySystem(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_nbody_NBodySystem(); +JAVA_OBJECT __NEW_INSTANCE_nbody_NBodySystem(); +void nbody_NBodySystem___INIT___(JAVA_OBJECT me); +void nbody_NBodySystem_advance___double(JAVA_OBJECT me, JAVA_DOUBLE n1); +JAVA_DOUBLE nbody_NBodySystem_energy__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/nbody_nbody.c b/tests/nbody-java/nbody_nbody.c new file mode 100644 index 0000000000000..b6fa969581bf0 --- /dev/null +++ b/tests/nbody-java/nbody_nbody.c @@ -0,0 +1,270 @@ +#include "xmlvm.h" +#include "java_io_PrintStream.h" +#include "java_lang_Integer.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "nbody_NBodySystem.h" + +#include "nbody_nbody.h" + +#define XMLVM_CURRENT_CLASS_NAME nbody +#define XMLVM_CURRENT_PKG_CLASS_NAME nbody_nbody + +__TIB_DEFINITION_nbody_nbody __TIB_nbody_nbody = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_nbody_nbody, // classInitializer + "nbody.nbody", // className + "nbody", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(nbody_nbody), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_nbody_nbody; +JAVA_OBJECT __CLASS_nbody_nbody_1ARRAY; +JAVA_OBJECT __CLASS_nbody_nbody_2ARRAY; +JAVA_OBJECT __CLASS_nbody_nbody_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_nbody_nbody() +{ + staticInitializerLock(&__TIB_nbody_nbody); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_nbody_nbody.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_nbody_nbody.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_nbody_nbody); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_nbody_nbody.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_nbody_nbody.classInitialized) { + // do nothing + } + } + } else { + __TIB_nbody_nbody.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("nbody.nbody") + __INIT_IMPL_nbody_nbody(); + } +} + +void __INIT_IMPL_nbody_nbody() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_nbody_nbody.newInstanceFunc = __NEW_INSTANCE_nbody_nbody; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_nbody_nbody.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_nbody_nbody.numImplementedInterfaces = 0; + __TIB_nbody_nbody.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_nbody_nbody.declaredFields = &__field_reflection_data[0]; + __TIB_nbody_nbody.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_nbody_nbody.constructorDispatcherFunc = constructor_dispatcher; + __TIB_nbody_nbody.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_nbody_nbody.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_nbody_nbody.methodDispatcherFunc = method_dispatcher; + __TIB_nbody_nbody.declaredMethods = &__method_reflection_data[0]; + __TIB_nbody_nbody.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_nbody_nbody = XMLVM_CREATE_CLASS_OBJECT(&__TIB_nbody_nbody); + __TIB_nbody_nbody.clazz = __CLASS_nbody_nbody; + __TIB_nbody_nbody.baseType = JAVA_NULL; + __CLASS_nbody_nbody_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_nbody); + __CLASS_nbody_nbody_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_nbody_1ARRAY); + __CLASS_nbody_nbody_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_nbody_nbody_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_nbody_nbody] + //XMLVM_END_WRAPPER + + __TIB_nbody_nbody.classInitialized = 1; +} + +void __DELETE_nbody_nbody(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_nbody_nbody] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_nbody_nbody(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_nbody_nbody] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_nbody_nbody() +{ XMLVM_CLASS_INIT(nbody_nbody) +nbody_nbody* me = (nbody_nbody*) XMLVM_MALLOC(sizeof(nbody_nbody)); + me->tib = &__TIB_nbody_nbody; + __INIT_INSTANCE_MEMBERS_nbody_nbody(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_nbody_nbody] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_nbody_nbody() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_nbody_nbody(); + nbody_nbody___INIT___(me); + return me; +} + +void nbody_nbody___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[nbody_nbody___INIT___] + XMLVM_ENTER_METHOD("nbody.nbody", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("nbody.java", 15) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void nbody_nbody_main___java_lang_String_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(nbody_nbody) + //XMLVM_BEGIN_WRAPPER[nbody_nbody_main___java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("nbody.nbody", "main", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.o = n1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("nbody.java", 17) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o)); + if (_r0.i <= 0) goto label32; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r4.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r0.i = java_lang_Integer_parseInt___java_lang_String(_r0.o); + label10:; + XMLVM_SOURCE_POSITION("nbody.java", 19) + _r1.l = java_lang_System_currentTimeMillis__(); + XMLVM_SOURCE_POSITION("nbody.java", 21) + _r3.o = __NEW_nbody_NBodySystem(); + XMLVM_CHECK_NPE(3) + nbody_NBodySystem___INIT___(_r3.o); + label19:; + XMLVM_SOURCE_POSITION("nbody.java", 23) + if (_r4.i >= _r0.i) goto label36; + XMLVM_SOURCE_POSITION("nbody.java", 24) + _r5.d = 0.01; + XMLVM_CHECK_NPE(3) + nbody_NBodySystem_advance___double(_r3.o, _r5.d); + _r4.i = _r4.i + 1; + goto label19; + label32:; + _r0.i = 5000000; + goto label10; + label36:; + XMLVM_SOURCE_POSITION("nbody.java", 27) + _r4.l = java_lang_System_currentTimeMillis__(); + XMLVM_SOURCE_POSITION("nbody.java", 29) + _r0.l = _r4.l - _r1.l; + _r0.d = (JAVA_DOUBLE) _r0.l; + _r4.d = 0.001; + _r0.d = _r0.d * _r4.d; + XMLVM_SOURCE_POSITION("nbody.java", 31) + _r2.o = java_lang_System_GET_out(); + XMLVM_CHECK_NPE(3) + _r3.d = nbody_NBodySystem_energy__(_r3.o); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___double(_r2.o, _r3.d); + XMLVM_SOURCE_POSITION("nbody.java", 32) + _r2.o = java_lang_System_GET_out(); + _r3.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(3) + java_lang_StringBuilder___INIT___(_r3.o); + // "Time(s): " + _r4.o = xmlvm_create_java_string_from_pool(813); + XMLVM_CHECK_NPE(3) + _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o); + XMLVM_CHECK_NPE(3) + _r0.o = java_lang_StringBuilder_append___double(_r3.o, _r0.d); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_CHECK_NPE(2) + java_io_PrintStream_println___java_lang_String(_r2.o, _r0.o); + XMLVM_SOURCE_POSITION("nbody.java", 33) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + + + +//#if 0 + +#include // for pthread_exit so the main thread doesn't terminate early + +int main(int argc, char* argv[]) +{ + xmlvm_init(); + + // Initialize the main thread before entering XMLVM_SETJMP + java_lang_Thread* mainThread = java_lang_Thread_currentThread__(); + if (XMLVM_SETJMP(xmlvm_exception_env_main_thread)) { + // Technically, XMLVM_UNWIND_EXCEPTION() should be called, but + // exceptions will not be used anymore and XMLVM_ENTER_METHOD() wasn't + // called (excessive), so a compilation error would occur + + xmlvm_unhandled_exception(); + } else { + // Convert command-line args to String[]. First C-arg is omitted. + JAVA_OBJECT args = xmlvm_create_java_string_array(argc-1, argv+1); + nbody_nbody_main___java_lang_String_1ARRAY(args); + } + + xmlvm_destroy(mainThread); + + return 0; +} +//#endif + diff --git a/tests/nbody-java/nbody_nbody.h b/tests/nbody-java/nbody_nbody.h new file mode 100644 index 0000000000000..f3a9a277c5c52 --- /dev/null +++ b/tests/nbody-java/nbody_nbody.h @@ -0,0 +1,76 @@ +#ifndef __NBODY_NBODY__ +#define __NBODY_NBODY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_nbody_nbody 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +XMLVM_FORWARD_DECL(java_io_PrintStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_nbody_NBodySystem +#define XMLVM_FORWARD_DECL_nbody_NBodySystem +XMLVM_FORWARD_DECL(nbody_NBodySystem) +#endif +// Class declarations for nbody.nbody +XMLVM_DEFINE_CLASS(nbody_nbody, 6, XMLVM_ITABLE_SIZE_nbody_nbody) + +extern JAVA_OBJECT __CLASS_nbody_nbody; +extern JAVA_OBJECT __CLASS_nbody_nbody_1ARRAY; +extern JAVA_OBJECT __CLASS_nbody_nbody_2ARRAY; +extern JAVA_OBJECT __CLASS_nbody_nbody_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_nbody_nbody +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_nbody_nbody \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_nbody_nbody \ + } nbody_nbody + +struct nbody_nbody { + __TIB_DEFINITION_nbody_nbody* tib; + struct { + __INSTANCE_FIELDS_nbody_nbody; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_nbody_nbody +#define XMLVM_FORWARD_DECL_nbody_nbody +typedef struct nbody_nbody nbody_nbody; +#endif + +#define XMLVM_VTABLE_SIZE_nbody_nbody 6 + +void __INIT_nbody_nbody(); +void __INIT_IMPL_nbody_nbody(); +void __DELETE_nbody_nbody(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_nbody_nbody(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_nbody_nbody(); +JAVA_OBJECT __NEW_INSTANCE_nbody_nbody(); +void nbody_nbody___INIT___(JAVA_OBJECT me); +void nbody_nbody_main___java_lang_String_1ARRAY(JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.c b/tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.c new file mode 100644 index 0000000000000..c351de7706b5b --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.c @@ -0,0 +1,565 @@ +#include "xmlvm.h" +#include "java_lang_Character.h" +#include "java_lang_Integer.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#define XMLVM_CURRENT_CLASS_NAME Messages +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_internal_nls_Messages + +__TIB_DEFINITION_org_apache_harmony_luni_internal_nls_Messages __TIB_org_apache_harmony_luni_internal_nls_Messages = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_internal_nls_Messages, // classInitializer + "org.apache.harmony.luni.internal.nls.Messages", // className + "org.apache.harmony.luni.internal.nls", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_internal_nls_Messages), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_internal_nls_Messages() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_internal_nls_Messages); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_internal_nls_Messages.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_internal_nls_Messages.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_internal_nls_Messages); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_internal_nls_Messages.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_internal_nls_Messages.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_internal_nls_Messages.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.internal.nls.Messages") + __INIT_IMPL_org_apache_harmony_luni_internal_nls_Messages(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_internal_nls_Messages() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_internal_nls_Messages.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_internal_nls_Messages; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_internal_nls_Messages.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_org_apache_harmony_luni_internal_nls_Messages.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_luni_internal_nls_Messages.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_apache_harmony_luni_internal_nls_Messages.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_internal_nls_Messages.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_internal_nls_Messages.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_internal_nls_Messages.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_internal_nls_Messages.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_internal_nls_Messages.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_internal_nls_Messages.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_internal_nls_Messages.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_internal_nls_Messages = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_internal_nls_Messages); + __TIB_org_apache_harmony_luni_internal_nls_Messages.clazz = __CLASS_org_apache_harmony_luni_internal_nls_Messages; + __TIB_org_apache_harmony_luni_internal_nls_Messages.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_internal_nls_Messages_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_internal_nls_Messages); + __CLASS_org_apache_harmony_luni_internal_nls_Messages_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_internal_nls_Messages_1ARRAY); + __CLASS_org_apache_harmony_luni_internal_nls_Messages_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_internal_nls_Messages_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_internal_nls_Messages] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_internal_nls_Messages.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_internal_nls_Messages(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_internal_nls_Messages] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_internal_nls_Messages(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_internal_nls_Messages] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_internal_nls_Messages() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) +org_apache_harmony_luni_internal_nls_Messages* me = (org_apache_harmony_luni_internal_nls_Messages*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_internal_nls_Messages)); + me->tib = &__TIB_org_apache_harmony_luni_internal_nls_Messages; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_internal_nls_Messages(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_internal_nls_Messages] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_internal_nls_Messages() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_apache_harmony_luni_internal_nls_Messages(); + org_apache_harmony_luni_internal_nls_Messages___INIT___(me); + return me; +} + +void org_apache_harmony_luni_internal_nls_Messages___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Messages.java", 49) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "getString", "?") + XMLVMElem _r0; + _r0.o = n1; + XMLVM_SOURCE_POSITION("Messages.java", 62) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "getString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("Messages.java", 82) + _r0.i = 1; + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + _r1.i = 0; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.o; + _r0.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(_r2.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "getString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Messages.java", 95) + _r0.i = 1; + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + _r1.i = 0; + _r2.o = java_lang_Integer_toString___int(_r4.i); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r0.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(_r3.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_char(JAVA_OBJECT n1, JAVA_CHAR n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_char] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "getString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = n1; + _r4.i = n2; + XMLVM_SOURCE_POSITION("Messages.java", 108) + _r0.i = 1; + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + _r1.i = 0; + _r2.o = java_lang_String_valueOf___char(_r4.i); + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r0.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(_r3.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "getString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = n1; + _r3.o = n2; + _r4.o = n3; + XMLVM_SOURCE_POSITION("Messages.java", 123) + _r0.i = 2; + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r0.i); + _r1.i = 0; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r3.o; + _r1.i = 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.o; + _r0.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(_r2.o, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "getString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r4.o = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("Messages.java", 136) + _r0 = _r4; + if (_r5.o == JAVA_NULL) goto label79; + XMLVM_SOURCE_POSITION("Messages.java", 137) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r2.i <= 0) goto label79; + XMLVM_SOURCE_POSITION("Messages.java", 138) + _r2.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT___(_r2.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + // ": " + _r3.o = xmlvm_create_java_string_from_pool(49); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + _r1.i = 0; + label26:; + XMLVM_SOURCE_POSITION("Messages.java", 140) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + if (_r1.i >= _r2.i) goto label79; + XMLVM_SOURCE_POSITION("Messages.java", 141) + _r2.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT___(_r2.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(3) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[5])(_r3.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + XMLVM_SOURCE_POSITION("Messages.java", 142) + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r3.i = 1; + _r2.i = _r2.i - _r3.i; + if (_r1.i >= _r2.i) goto label76; + XMLVM_SOURCE_POSITION("Messages.java", 143) + _r2.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(2) + java_lang_StringBuilder___INIT___(_r2.o); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r0.o); + // ", " + _r3.o = xmlvm_create_java_string_from_pool(7); + XMLVM_CHECK_NPE(2) + _r2.o = java_lang_StringBuilder_append___java_lang_String(_r2.o, _r3.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(2) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r2.o)->tib->vtable[5])(_r2.o); + label76:; + _r1.i = _r1.i + 1; + goto label26; + label79:; + XMLVM_SOURCE_POSITION("Messages.java", 148) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_format___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_internal_nls_Messages) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_internal_nls_Messages_format___java_lang_String_java_lang_Object_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.internal.nls.Messages", "format", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r9.o = n1; + _r10.o = n2; + _r8.i = 123; + _r7.i = 1; + XMLVM_SOURCE_POSITION("Messages.java", 181) + _r0.o = __NEW_java_lang_StringBuilder(); + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r9.o)->tib->vtable[8])(_r9.o); + _r6.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r10.o)); + _r6.i = _r6.i * 20; + _r5.i = _r5.i + _r6.i; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r5.i); + XMLVM_SOURCE_POSITION("Messages.java", 183) + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r10.o)); + XMLVM_CLASS_INIT(java_lang_String) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r5.i); + _r3.i = 0; + label20:; + XMLVM_SOURCE_POSITION("Messages.java", 184) + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r10.o)); + if (_r3.i >= _r5.i) goto label43; + XMLVM_SOURCE_POSITION("Messages.java", 185) + XMLVM_CHECK_NPE(10) + XMLVM_CHECK_ARRAY_BOUNDS(_r10.o, _r3.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r10.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + if (_r5.o != JAVA_NULL) goto label34; + XMLVM_SOURCE_POSITION("Messages.java", 186) + // "" + _r5.o = xmlvm_create_java_string_from_pool(143); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r5.o; + label31:; + _r3.i = _r3.i + 1; + goto label20; + label34:; + XMLVM_SOURCE_POSITION("Messages.java", 188) + XMLVM_CHECK_NPE(10) + XMLVM_CHECK_ARRAY_BOUNDS(_r10.o, _r3.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r10.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + //java_lang_Object_toString__[5] + XMLVM_CHECK_NPE(5) + _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r5.o)->tib->vtable[5])(_r5.o); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r5.o; + goto label31; + label43:; + XMLVM_SOURCE_POSITION("Messages.java", 190) + _r4.i = 0; + _r5.i = 0; + XMLVM_SOURCE_POSITION("Messages.java", 191) + XMLVM_CHECK_NPE(9) + _r3.i = java_lang_String_indexOf___int_int(_r9.o, _r8.i, _r5.i); + label49:; + if (_r3.i < 0) goto label169; + XMLVM_SOURCE_POSITION("Messages.java", 193) + if (_r3.i == 0) goto label84; + _r5.i = _r3.i - _r7.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r9.o)->tib->vtable[6])(_r9.o, _r5.i); + _r6.i = 92; + if (_r5.i != _r6.i) goto label84; + XMLVM_SOURCE_POSITION("Messages.java", 195) + if (_r3.i == _r7.i) goto label74; + XMLVM_SOURCE_POSITION("Messages.java", 196) + _r5.i = _r3.i - _r7.i; + XMLVM_CHECK_NPE(9) + _r5.o = java_lang_String_substring___int_int(_r9.o, _r4.i, _r5.i); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r5.o); + label74:; + XMLVM_SOURCE_POSITION("Messages.java", 197) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r8.i); + XMLVM_SOURCE_POSITION("Messages.java", 198) + _r4.i = _r3.i + 1; + label79:; + XMLVM_CHECK_NPE(9) + _r3.i = java_lang_String_indexOf___int_int(_r9.o, _r8.i, _r4.i); + goto label49; + label84:; + XMLVM_SOURCE_POSITION("Messages.java", 201) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r9.o)->tib->vtable[8])(_r9.o); + _r6.i = 3; + _r5.i = _r5.i - _r6.i; + if (_r3.i <= _r5.i) goto label108; + XMLVM_SOURCE_POSITION("Messages.java", 203) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r9.o)->tib->vtable[8])(_r9.o); + XMLVM_CHECK_NPE(9) + _r5.o = java_lang_String_substring___int_int(_r9.o, _r4.i, _r5.i); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r5.o); + XMLVM_SOURCE_POSITION("Messages.java", 204) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(9) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r9.o)->tib->vtable[8])(_r9.o); + goto label79; + label108:; + XMLVM_SOURCE_POSITION("Messages.java", 206) + _r5.i = _r3.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r9.o)->tib->vtable[6])(_r9.o, _r5.i); + _r6.i = 10; + _r5.i = java_lang_Character_digit___char_int(_r5.i, _r6.i); + _r2.i = (_r5.i << 24) >> 24; + if (_r2.i < 0) goto label133; + XMLVM_SOURCE_POSITION("Messages.java", 208) + _r5.i = _r3.i + 2; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r9.o)->tib->vtable[6])(_r9.o, _r5.i); + _r6.i = 125; + if (_r5.i == _r6.i) goto label145; + label133:; + XMLVM_SOURCE_POSITION("Messages.java", 210) + _r5.i = _r3.i + 1; + XMLVM_CHECK_NPE(9) + _r5.o = java_lang_String_substring___int_int(_r9.o, _r4.i, _r5.i); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r5.o); + XMLVM_SOURCE_POSITION("Messages.java", 211) + _r4.i = _r3.i + 1; + goto label79; + label145:; + XMLVM_SOURCE_POSITION("Messages.java", 214) + XMLVM_CHECK_NPE(9) + _r5.o = java_lang_String_substring___int_int(_r9.o, _r4.i, _r3.i); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r5.o); + XMLVM_SOURCE_POSITION("Messages.java", 215) + _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r2.i < _r5.i) goto label163; + XMLVM_SOURCE_POSITION("Messages.java", 216) + // "" + _r5.o = xmlvm_create_java_string_from_pool(144); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r5.o); + label160:; + XMLVM_SOURCE_POSITION("Messages.java", 219) + _r4.i = _r3.i + 3; + goto label79; + label163:; + XMLVM_SOURCE_POSITION("Messages.java", 218) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r5.o); + goto label160; + label169:; + XMLVM_SOURCE_POSITION("Messages.java", 224) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r9.o)->tib->vtable[8])(_r9.o); + if (_r4.i >= _r5.i) goto label186; + XMLVM_SOURCE_POSITION("Messages.java", 225) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(9) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r9.o)->tib->vtable[8])(_r9.o); + XMLVM_CHECK_NPE(9) + _r5.o = java_lang_String_substring___int_int(_r9.o, _r4.i, _r5.i); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r5.o); + label186:; + XMLVM_SOURCE_POSITION("Messages.java", 226) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r5.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.h b/tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.h new file mode 100644 index 0000000000000..089b46f56cc1d --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_internal_nls_Messages.h @@ -0,0 +1,74 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_INTERNAL_NLS_MESSAGES__ +#define __ORG_APACHE_HARMONY_LUNI_INTERNAL_NLS_MESSAGES__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_internal_nls_Messages 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for org.apache.harmony.luni.internal.nls.Messages +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_internal_nls_Messages, 6, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_internal_nls_Messages) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_internal_nls_Messages_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_internal_nls_Messages +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_internal_nls_Messages \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_internal_nls_Messages \ + } org_apache_harmony_luni_internal_nls_Messages + +struct org_apache_harmony_luni_internal_nls_Messages { + __TIB_DEFINITION_org_apache_harmony_luni_internal_nls_Messages* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_internal_nls_Messages; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +typedef struct org_apache_harmony_luni_internal_nls_Messages org_apache_harmony_luni_internal_nls_Messages; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_internal_nls_Messages 6 + +void __INIT_org_apache_harmony_luni_internal_nls_Messages(); +void __INIT_IMPL_org_apache_harmony_luni_internal_nls_Messages(); +void __DELETE_org_apache_harmony_luni_internal_nls_Messages(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_internal_nls_Messages(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_internal_nls_Messages(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_internal_nls_Messages(); +void org_apache_harmony_luni_internal_nls_Messages___INIT___(JAVA_OBJECT me); +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_char(JAVA_OBJECT n1, JAVA_CHAR n2); +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT org_apache_harmony_luni_internal_nls_Messages_format___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_Endianness.c b/tests/nbody-java/org_apache_harmony_luni_platform_Endianness.c new file mode 100644 index 0000000000000..65f57c15c2318 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_Endianness.c @@ -0,0 +1,235 @@ +#include "xmlvm.h" +#include "java_lang_String.h" + +#include "org_apache_harmony_luni_platform_Endianness.h" + +#define XMLVM_CURRENT_CLASS_NAME Endianness +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_platform_Endianness + +__TIB_DEFINITION_org_apache_harmony_luni_platform_Endianness __TIB_org_apache_harmony_luni_platform_Endianness = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_platform_Endianness, // classInitializer + "org.apache.harmony.luni.platform.Endianness", // className + "org.apache.harmony.luni.platform", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_platform_Endianness), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_platform_Endianness_BIG_ENDIAN; +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_platform_Endianness_LITTLE_ENDIAN; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_platform_Endianness() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_platform_Endianness); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_platform_Endianness.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_platform_Endianness.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_platform_Endianness); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_platform_Endianness.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_platform_Endianness.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_platform_Endianness.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.platform.Endianness") + __INIT_IMPL_org_apache_harmony_luni_platform_Endianness(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_platform_Endianness() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_platform_Endianness.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_platform_Endianness; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_platform_Endianness.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_luni_platform_Endianness.vtable[5] = (VTABLE_PTR) &org_apache_harmony_luni_platform_Endianness_toString__; + // Initialize interface information + __TIB_org_apache_harmony_luni_platform_Endianness.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_luni_platform_Endianness.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_org_apache_harmony_luni_platform_Endianness_BIG_ENDIAN = (org_apache_harmony_luni_platform_Endianness*) JAVA_NULL; + _STATIC_org_apache_harmony_luni_platform_Endianness_LITTLE_ENDIAN = (org_apache_harmony_luni_platform_Endianness*) JAVA_NULL; + + __TIB_org_apache_harmony_luni_platform_Endianness.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_Endianness.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_Endianness.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_platform_Endianness.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_Endianness.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_Endianness.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_platform_Endianness.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_Endianness.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_platform_Endianness = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_platform_Endianness); + __TIB_org_apache_harmony_luni_platform_Endianness.clazz = __CLASS_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_Endianness.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_platform_Endianness_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_Endianness); + __CLASS_org_apache_harmony_luni_platform_Endianness_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_Endianness_1ARRAY); + __CLASS_org_apache_harmony_luni_platform_Endianness_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_Endianness_2ARRAY); + org_apache_harmony_luni_platform_Endianness___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_platform_Endianness] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_platform_Endianness.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_platform_Endianness(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_platform_Endianness] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((org_apache_harmony_luni_platform_Endianness*) me)->fields.org_apache_harmony_luni_platform_Endianness.displayName_ = (java_lang_String*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_Endianness] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_Endianness() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_Endianness) +org_apache_harmony_luni_platform_Endianness* me = (org_apache_harmony_luni_platform_Endianness*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_platform_Endianness)); + me->tib = &__TIB_org_apache_harmony_luni_platform_Endianness; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_Endianness(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_platform_Endianness] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_Endianness() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_Endianness) + return _STATIC_org_apache_harmony_luni_platform_Endianness_BIG_ENDIAN; +} + +void org_apache_harmony_luni_platform_Endianness_PUT_BIG_ENDIAN(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_Endianness) +_STATIC_org_apache_harmony_luni_platform_Endianness_BIG_ENDIAN = v; +} + +JAVA_OBJECT org_apache_harmony_luni_platform_Endianness_GET_LITTLE_ENDIAN() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_Endianness) + return _STATIC_org_apache_harmony_luni_platform_Endianness_LITTLE_ENDIAN; +} + +void org_apache_harmony_luni_platform_Endianness_PUT_LITTLE_ENDIAN(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_Endianness) +_STATIC_org_apache_harmony_luni_platform_Endianness_LITTLE_ENDIAN = v; +} + +void org_apache_harmony_luni_platform_Endianness___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_Endianness___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.Endianness", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("Endianness.java", 28) + _r0.o = __NEW_org_apache_harmony_luni_platform_Endianness(); + // "BIG_ENDIAN" + _r1.o = xmlvm_create_java_string_from_pool(727); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_Endianness___INIT____java_lang_String(_r0.o, _r1.o); + org_apache_harmony_luni_platform_Endianness_PUT_BIG_ENDIAN( _r0.o); + XMLVM_SOURCE_POSITION("Endianness.java", 33) + _r0.o = __NEW_org_apache_harmony_luni_platform_Endianness(); + XMLVM_SOURCE_POSITION("Endianness.java", 34) + // "LITTLE_ENDIAN" + _r1.o = xmlvm_create_java_string_from_pool(728); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_Endianness___INIT____java_lang_String(_r0.o, _r1.o); + org_apache_harmony_luni_platform_Endianness_PUT_LITTLE_ENDIAN( _r0.o); + XMLVM_SOURCE_POSITION("Endianness.java", 24) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_platform_Endianness___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_Endianness___INIT____java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.Endianness", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Endianness.java", 43) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Endianness.java", 44) + XMLVM_CHECK_NPE(0) + ((org_apache_harmony_luni_platform_Endianness*) _r0.o)->fields.org_apache_harmony_luni_platform_Endianness.displayName_ = _r1.o; + XMLVM_SOURCE_POSITION("Endianness.java", 45) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_platform_Endianness_toString__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_Endianness_toString__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.Endianness", "toString", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Endianness.java", 53) + XMLVM_CHECK_NPE(1) + _r0.o = ((org_apache_harmony_luni_platform_Endianness*) _r1.o)->fields.org_apache_harmony_luni_platform_Endianness.displayName_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_Endianness.h b/tests/nbody-java/org_apache_harmony_luni_platform_Endianness.h new file mode 100644 index 0000000000000..be1433e3d402b --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_Endianness.h @@ -0,0 +1,64 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_PLATFORM_ENDIANNESS__ +#define __ORG_APACHE_HARMONY_LUNI_PLATFORM_ENDIANNESS__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_Endianness 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for org.apache.harmony.luni.platform.Endianness +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_platform_Endianness, 6, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_Endianness) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_Endianness_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_Endianness +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_platform_Endianness \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT displayName_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_Endianness \ + } org_apache_harmony_luni_platform_Endianness + +struct org_apache_harmony_luni_platform_Endianness { + __TIB_DEFINITION_org_apache_harmony_luni_platform_Endianness* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_platform_Endianness; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +typedef struct org_apache_harmony_luni_platform_Endianness org_apache_harmony_luni_platform_Endianness; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_platform_Endianness 6 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_Endianness_toString__ 5 + +void __INIT_org_apache_harmony_luni_platform_Endianness(); +void __INIT_IMPL_org_apache_harmony_luni_platform_Endianness(); +void __DELETE_org_apache_harmony_luni_platform_Endianness(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_Endianness(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_Endianness(); +JAVA_OBJECT org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); +void org_apache_harmony_luni_platform_Endianness_PUT_BIG_ENDIAN(JAVA_OBJECT v); +JAVA_OBJECT org_apache_harmony_luni_platform_Endianness_GET_LITTLE_ENDIAN(); +void org_apache_harmony_luni_platform_Endianness_PUT_LITTLE_ENDIAN(JAVA_OBJECT v); +void org_apache_harmony_luni_platform_Endianness___CLINIT_(); +void org_apache_harmony_luni_platform_Endianness___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 5 +JAVA_OBJECT org_apache_harmony_luni_platform_Endianness_toString__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.c b/tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.c new file mode 100644 index 0000000000000..9ff33bbf82c74 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.c @@ -0,0 +1,272 @@ +#include "xmlvm.h" +#include "java_io_FileDescriptor.h" + +#include "org_apache_harmony_luni_platform_IFileSystem.h" + +__TIB_DEFINITION_org_apache_harmony_luni_platform_IFileSystem __TIB_org_apache_harmony_luni_platform_IFileSystem = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_platform_IFileSystem, // classInitializer + "org.apache.harmony.luni.platform.IFileSystem", // className + "org.apache.harmony.luni.platform", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem_3ARRAY; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_SHARED_LOCK_TYPE; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_EXCLUSIVE_LOCK_TYPE; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_SET; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_CUR; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_END; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDONLY; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_WRONLY; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWR; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWRSYNC; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_APPEND; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_CREAT; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_EXCL; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NOCTTY; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NONBLOCK; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_TRUNC; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_org_apache_harmony_luni_platform_IFileSystem() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_platform_IFileSystem); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_platform_IFileSystem.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_platform_IFileSystem.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_platform_IFileSystem); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_platform_IFileSystem.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_platform_IFileSystem.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_platform_IFileSystem.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.platform.IFileSystem") + __INIT_IMPL_org_apache_harmony_luni_platform_IFileSystem(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_platform_IFileSystem() +{ + __TIB_org_apache_harmony_luni_platform_IFileSystem.numInterfaces = 0; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SHARED_LOCK_TYPE = 1; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_EXCLUSIVE_LOCK_TYPE = 2; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_SET = 1; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_CUR = 2; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_END = 4; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDONLY = 0; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_WRONLY = 1; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWR = 16; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWRSYNC = 32; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_APPEND = 256; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_CREAT = 4096; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_EXCL = 65536; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NOCTTY = 1048576; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NONBLOCK = 16777216; + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_TRUNC = 268435456; + __TIB_org_apache_harmony_luni_platform_IFileSystem.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_IFileSystem.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_org_apache_harmony_luni_platform_IFileSystem.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_platform_IFileSystem.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_IFileSystem.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_org_apache_harmony_luni_platform_IFileSystem = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_platform_IFileSystem); + __TIB_org_apache_harmony_luni_platform_IFileSystem.clazz = __CLASS_org_apache_harmony_luni_platform_IFileSystem; + __TIB_org_apache_harmony_luni_platform_IFileSystem.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_platform_IFileSystem_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_IFileSystem); + __CLASS_org_apache_harmony_luni_platform_IFileSystem_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_IFileSystem_1ARRAY); + __CLASS_org_apache_harmony_luni_platform_IFileSystem_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_IFileSystem_2ARRAY); + + __TIB_org_apache_harmony_luni_platform_IFileSystem.classInitialized = 1; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SHARED_LOCK_TYPE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_SHARED_LOCK_TYPE; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_SHARED_LOCK_TYPE(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SHARED_LOCK_TYPE = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_EXCLUSIVE_LOCK_TYPE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_EXCLUSIVE_LOCK_TYPE; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_EXCLUSIVE_LOCK_TYPE(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_EXCLUSIVE_LOCK_TYPE = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SEEK_SET() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_SET; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_SEEK_SET(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_SET = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SEEK_CUR() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_CUR; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_SEEK_CUR(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_CUR = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SEEK_END() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_END; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_SEEK_END(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_SEEK_END = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_RDONLY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDONLY; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_RDONLY(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDONLY = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_WRONLY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_WRONLY; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_WRONLY(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_WRONLY = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_RDWR() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWR; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_RDWR(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWR = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_RDWRSYNC() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWRSYNC; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_RDWRSYNC(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_RDWRSYNC = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_APPEND() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_APPEND; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_APPEND(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_APPEND = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_CREAT() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_CREAT; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_CREAT(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_CREAT = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_EXCL() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_EXCL; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_EXCL(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_EXCL = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_NOCTTY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NOCTTY; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_NOCTTY(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NOCTTY = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_NONBLOCK() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NONBLOCK; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_NONBLOCK(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_NONBLOCK = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_TRUNC() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + return _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_TRUNC; +} + +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_TRUNC(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IFileSystem_O_TRUNC = v; +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.h b/tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.h new file mode 100644 index 0000000000000..b2debb1717eef --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_IFileSystem.h @@ -0,0 +1,80 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_PLATFORM_IFILESYSTEM__ +#define __ORG_APACHE_HARMONY_LUNI_PLATFORM_IFILESYSTEM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_read___long_byte_1ARRAY_int_int 7 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_write___long_byte_1ARRAY_int_int 17 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_readv___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int 8 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int 18 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_readDirect___long_long_int_int 6 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_writeDirect___long_long_int_int 16 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_lock___long_long_long_int_boolean 4 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_unlock___long_long_long 15 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_seek___long_long_int 9 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_fflush___long_boolean 2 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_close___long 1 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_truncate___long_long 12 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_getAllocGranularity__ 3 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_open___byte_1ARRAY_int 5 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_transfer___long_java_io_FileDescriptor_long_long 11 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_ttyAvailable__ 13 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_available___long 0 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_size___long 10 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_ttyRead___byte_1ARRAY_int_int 14 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_FileDescriptor +#define XMLVM_FORWARD_DECL_java_io_FileDescriptor +XMLVM_FORWARD_DECL(java_io_FileDescriptor) +#endif + +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_platform_IFileSystem, 0, 0) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IFileSystem_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_IFileSystem +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_IFileSystem +typedef struct org_apache_harmony_luni_platform_IFileSystem org_apache_harmony_luni_platform_IFileSystem; +#endif + +void __INIT_org_apache_harmony_luni_platform_IFileSystem(); +void __INIT_IMPL_org_apache_harmony_luni_platform_IFileSystem(); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SHARED_LOCK_TYPE(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_SHARED_LOCK_TYPE(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_EXCLUSIVE_LOCK_TYPE(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_EXCLUSIVE_LOCK_TYPE(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SEEK_SET(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_SEEK_SET(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SEEK_CUR(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_SEEK_CUR(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_SEEK_END(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_SEEK_END(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_RDONLY(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_RDONLY(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_WRONLY(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_WRONLY(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_RDWR(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_RDWR(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_RDWRSYNC(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_RDWRSYNC(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_APPEND(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_APPEND(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_CREAT(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_CREAT(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_EXCL(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_EXCL(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_NOCTTY(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_NOCTTY(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_NONBLOCK(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_NONBLOCK(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IFileSystem_GET_O_TRUNC(); +void org_apache_harmony_luni_platform_IFileSystem_PUT_O_TRUNC(JAVA_INT v); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.c b/tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.c new file mode 100644 index 0000000000000..f08832efbb775 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.c @@ -0,0 +1,116 @@ +#include "xmlvm.h" +#include "org_apache_harmony_luni_platform_Endianness.h" + +#include "org_apache_harmony_luni_platform_IMemorySystem.h" + +__TIB_DEFINITION_org_apache_harmony_luni_platform_IMemorySystem __TIB_org_apache_harmony_luni_platform_IMemorySystem = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_platform_IMemorySystem, // classInitializer + "org.apache.harmony.luni.platform.IMemorySystem", // className + "org.apache.harmony.luni.platform", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem_3ARRAY; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_ONLY; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_WRITE; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_WRITE_COPY; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_org_apache_harmony_luni_platform_IMemorySystem() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_platform_IMemorySystem); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_platform_IMemorySystem.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_platform_IMemorySystem.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_platform_IMemorySystem); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_platform_IMemorySystem.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_platform_IMemorySystem.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_platform_IMemorySystem.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.platform.IMemorySystem") + __INIT_IMPL_org_apache_harmony_luni_platform_IMemorySystem(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_platform_IMemorySystem() +{ + __TIB_org_apache_harmony_luni_platform_IMemorySystem.numInterfaces = 0; + _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_ONLY = 1; + _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_WRITE = 2; + _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_WRITE_COPY = 4; + __TIB_org_apache_harmony_luni_platform_IMemorySystem.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_IMemorySystem.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_org_apache_harmony_luni_platform_IMemorySystem.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_platform_IMemorySystem.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_IMemorySystem.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_org_apache_harmony_luni_platform_IMemorySystem = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_platform_IMemorySystem); + __TIB_org_apache_harmony_luni_platform_IMemorySystem.clazz = __CLASS_org_apache_harmony_luni_platform_IMemorySystem; + __TIB_org_apache_harmony_luni_platform_IMemorySystem.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_platform_IMemorySystem_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_IMemorySystem); + __CLASS_org_apache_harmony_luni_platform_IMemorySystem_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_IMemorySystem_1ARRAY); + __CLASS_org_apache_harmony_luni_platform_IMemorySystem_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_IMemorySystem_2ARRAY); + + __TIB_org_apache_harmony_luni_platform_IMemorySystem.classInitialized = 1; +} + +JAVA_INT org_apache_harmony_luni_platform_IMemorySystem_GET_MMAP_READ_ONLY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IMemorySystem) + return _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_ONLY; +} + +void org_apache_harmony_luni_platform_IMemorySystem_PUT_MMAP_READ_ONLY(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_ONLY = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IMemorySystem_GET_MMAP_READ_WRITE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IMemorySystem) + return _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_WRITE; +} + +void org_apache_harmony_luni_platform_IMemorySystem_PUT_MMAP_READ_WRITE(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_READ_WRITE = v; +} + +JAVA_INT org_apache_harmony_luni_platform_IMemorySystem_GET_MMAP_WRITE_COPY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IMemorySystem) + return _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_WRITE_COPY; +} + +void org_apache_harmony_luni_platform_IMemorySystem_PUT_MMAP_WRITE_COPY(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_IMemorySystem_MMAP_WRITE_COPY = v; +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.h b/tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.h new file mode 100644 index 0000000000000..6e5aa313d5acd --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_IMemorySystem.h @@ -0,0 +1,74 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_PLATFORM_IMEMORYSYSTEM__ +#define __ORG_APACHE_HARMONY_LUNI_PLATFORM_IMEMORYSYSTEM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_isLittleEndian__ 16 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getPointerSize__ 13 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_malloc___long 19 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_free___long 1 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_memset___long_byte_long 21 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_memmove___long_long_long 20 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getByteArray___long_byte_1ARRAY_int_int 3 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setByteArray___long_byte_1ARRAY_int_int 24 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getByte___long 4 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setByte___long_byte 25 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getShort___long 14 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getShort___long_org_apache_harmony_luni_platform_Endianness 15 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setShort___long_short 34 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setShort___long_short_org_apache_harmony_luni_platform_Endianness 35 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getInt___long 9 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getInt___long_org_apache_harmony_luni_platform_Endianness 10 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setInt___long_int 30 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setInt___long_int_org_apache_harmony_luni_platform_Endianness 31 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getLong___long 11 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getLong___long_org_apache_harmony_luni_platform_Endianness 12 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setLong___long_long 32 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setLong___long_long_org_apache_harmony_luni_platform_Endianness 33 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getFloat___long 7 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getFloat___long_org_apache_harmony_luni_platform_Endianness 8 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setFloat___long_float 28 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setFloat___long_float_org_apache_harmony_luni_platform_Endianness 29 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getDouble___long 5 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getDouble___long_org_apache_harmony_luni_platform_Endianness 6 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setDouble___long_double 26 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setDouble___long_double_org_apache_harmony_luni_platform_Endianness 27 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getAddress___long 2 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setAddress___long_long 23 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_mmap___long_long_long_int 22 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_unmap___long_long 36 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_load___long_long 18 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_isLoaded___long_long 17 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_flush___long_long 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +XMLVM_FORWARD_DECL(org_apache_harmony_luni_platform_Endianness) +#endif + +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_platform_IMemorySystem, 0, 0) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_IMemorySystem_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_IMemorySystem +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_IMemorySystem +typedef struct org_apache_harmony_luni_platform_IMemorySystem org_apache_harmony_luni_platform_IMemorySystem; +#endif + +void __INIT_org_apache_harmony_luni_platform_IMemorySystem(); +void __INIT_IMPL_org_apache_harmony_luni_platform_IMemorySystem(); +JAVA_INT org_apache_harmony_luni_platform_IMemorySystem_GET_MMAP_READ_ONLY(); +void org_apache_harmony_luni_platform_IMemorySystem_PUT_MMAP_READ_ONLY(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IMemorySystem_GET_MMAP_READ_WRITE(); +void org_apache_harmony_luni_platform_IMemorySystem_PUT_MMAP_READ_WRITE(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_IMemorySystem_GET_MMAP_WRITE_COPY(); +void org_apache_harmony_luni_platform_IMemorySystem_PUT_MMAP_WRITE_COPY(JAVA_INT v); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.c b/tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.c new file mode 100644 index 0000000000000..a1d2d8fa8ca44 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.c @@ -0,0 +1,106 @@ +#include "xmlvm.h" +#include "java_io_FileDescriptor.h" +#include "java_lang_Long.h" +#include "java_lang_String.h" +#include "java_net_InetAddress.h" + +#include "org_apache_harmony_luni_platform_INetworkSystem.h" + +__TIB_DEFINITION_org_apache_harmony_luni_platform_INetworkSystem __TIB_org_apache_harmony_luni_platform_INetworkSystem = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_platform_INetworkSystem, // classInitializer + "org.apache.harmony.luni.platform.INetworkSystem", // className + "org.apache.harmony.luni.platform", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + -1, // sizeInstance + XMLVM_TYPE_INTERFACE}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem_3ARRAY; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_START; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_CHECK; + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +void __INIT_org_apache_harmony_luni_platform_INetworkSystem() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_platform_INetworkSystem); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_platform_INetworkSystem.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_platform_INetworkSystem.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_platform_INetworkSystem); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_platform_INetworkSystem.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_platform_INetworkSystem.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_platform_INetworkSystem.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.platform.INetworkSystem") + __INIT_IMPL_org_apache_harmony_luni_platform_INetworkSystem(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_platform_INetworkSystem() +{ + __TIB_org_apache_harmony_luni_platform_INetworkSystem.numInterfaces = 0; + _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_START = 0; + _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_CHECK = 1; + __TIB_org_apache_harmony_luni_platform_INetworkSystem.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_INetworkSystem.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + //__TIB_org_apache_harmony_luni_platform_INetworkSystem.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_platform_INetworkSystem.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_INetworkSystem.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + + __CLASS_org_apache_harmony_luni_platform_INetworkSystem = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_platform_INetworkSystem); + __TIB_org_apache_harmony_luni_platform_INetworkSystem.clazz = __CLASS_org_apache_harmony_luni_platform_INetworkSystem; + __TIB_org_apache_harmony_luni_platform_INetworkSystem.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_platform_INetworkSystem_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_INetworkSystem); + __CLASS_org_apache_harmony_luni_platform_INetworkSystem_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_INetworkSystem_1ARRAY); + __CLASS_org_apache_harmony_luni_platform_INetworkSystem_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_INetworkSystem_2ARRAY); + + __TIB_org_apache_harmony_luni_platform_INetworkSystem.classInitialized = 1; +} + +JAVA_INT org_apache_harmony_luni_platform_INetworkSystem_GET_SOCKET_CONNECT_STEP_START() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_INetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_START; +} + +void org_apache_harmony_luni_platform_INetworkSystem_PUT_SOCKET_CONNECT_STEP_START(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_START = v; +} + +JAVA_INT org_apache_harmony_luni_platform_INetworkSystem_GET_SOCKET_CONNECT_STEP_CHECK() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_INetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_CHECK; +} + +void org_apache_harmony_luni_platform_INetworkSystem_PUT_SOCKET_CONNECT_STEP_CHECK(JAVA_INT v) +{ + _STATIC_org_apache_harmony_luni_platform_INetworkSystem_SOCKET_CONNECT_STEP_CHECK = v; +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.h b/tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.h new file mode 100644 index 0000000000000..e8189335ba4b1 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_INetworkSystem.h @@ -0,0 +1,94 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_PLATFORM_INETWORKSYSTEM__ +#define __ORG_APACHE_HARMONY_LUNI_PLATFORM_INETWORKSYSTEM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int 1 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int 3 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int 24 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_readDirect___java_io_FileDescriptor_long_int_int 23 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int 45 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_writeDirect___java_io_FileDescriptor_long_int 44 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int 46 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean 38 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int 7 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long 6 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress 35 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress 34 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean 26 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean 25 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean 29 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean 28 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int 22 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean 32 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean 31 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_disconnectDatagram___java_io_FileDescriptor 11 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean 8 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress 4 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int 27 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_shutdownInput___java_io_FileDescriptor 40 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_shutdownOutput___java_io_FileDescriptor 41 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_supportsUrgentData___java_io_FileDescriptor 43 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendUrgentData___java_io_FileDescriptor_byte 36 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_availableStream___java_io_FileDescriptor 2 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int 0 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean 9 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean 10 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_listenStreamSocket___java_io_FileDescriptor_int 20 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress 5 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress 33 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean 15 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_select___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_long_int_1ARRAY 30 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean 16 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketOption___java_io_FileDescriptor_int 17 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object 39 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketFlags__ 14 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_socketClose___java_io_FileDescriptor 42 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getHostByAddr___byte_1ARRAY 12 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getHostByName___java_lang_String_boolean 13 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY 37 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int 19 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_inheritedChannel__ 18 +#define XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_oneTimeInitialization___boolean 21 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_FileDescriptor +#define XMLVM_FORWARD_DECL_java_io_FileDescriptor +XMLVM_FORWARD_DECL(java_io_FileDescriptor) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_net_InetAddress +#define XMLVM_FORWARD_DECL_java_net_InetAddress +XMLVM_FORWARD_DECL(java_net_InetAddress) +#endif + +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_platform_INetworkSystem, 0, 0) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_INetworkSystem_3ARRAY; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_INetworkSystem +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_INetworkSystem +typedef struct org_apache_harmony_luni_platform_INetworkSystem org_apache_harmony_luni_platform_INetworkSystem; +#endif + +void __INIT_org_apache_harmony_luni_platform_INetworkSystem(); +void __INIT_IMPL_org_apache_harmony_luni_platform_INetworkSystem(); +JAVA_INT org_apache_harmony_luni_platform_INetworkSystem_GET_SOCKET_CONNECT_STEP_START(); +void org_apache_harmony_luni_platform_INetworkSystem_PUT_SOCKET_CONNECT_STEP_START(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_INetworkSystem_GET_SOCKET_CONNECT_STEP_CHECK(); +void org_apache_harmony_luni_platform_INetworkSystem_PUT_SOCKET_CONNECT_STEP_CHECK(JAVA_INT v); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.c b/tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.c new file mode 100644 index 0000000000000..97f406a2022cb --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.c @@ -0,0 +1,1050 @@ +#include "xmlvm.h" +#include "java_io_FileDescriptor.h" +#include "java_io_IOException.h" +#include "java_lang_Class.h" +#include "java_lang_NullPointerException.h" +#include "java_lang_String.h" + +#include "org_apache_harmony_luni_platform_OSFileSystem.h" + +#define XMLVM_CURRENT_CLASS_NAME OSFileSystem +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_platform_OSFileSystem + +__TIB_DEFINITION_org_apache_harmony_luni_platform_OSFileSystem __TIB_org_apache_harmony_luni_platform_OSFileSystem = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_platform_OSFileSystem, // classInitializer + "org.apache.harmony.luni.platform.OSFileSystem", // className + "org.apache.harmony.luni.platform", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_platform_OSFileSystem), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_platform_OSFileSystem_singleton; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_platform_OSFileSystem() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_platform_OSFileSystem); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_platform_OSFileSystem.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_platform_OSFileSystem.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_platform_OSFileSystem); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_platform_OSFileSystem.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_platform_OSFileSystem.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_platform_OSFileSystem.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.platform.OSFileSystem") + __INIT_IMPL_org_apache_harmony_luni_platform_OSFileSystem(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_platform_OSFileSystem() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_platform_OSFileSystem.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_platform_OSFileSystem; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[9] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[10] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_lock___long_long_long_int_boolean; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[21] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_unlock___long_long_long; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[8] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_fflush___long_boolean; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[15] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_seek___long_long_int; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[12] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_readDirect___long_long_int_int; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[22] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_writeDirect___long_long_int_int; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[13] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_read___long_byte_1ARRAY_int_int; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[23] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_write___long_byte_1ARRAY_int_int; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[14] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_readv___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[24] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[7] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_close___long; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[18] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_truncate___long_long; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[11] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_open___byte_1ARRAY_int; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[17] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_transfer___long_java_io_FileDescriptor_long_long; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[19] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_ttyAvailable__; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[6] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_available___long; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[16] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_size___long; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[20] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSFileSystem_ttyRead___byte_1ARRAY_int_int; + xmlvm_init_native_org_apache_harmony_luni_platform_OSFileSystem(); + // Initialize interface information + __TIB_org_apache_harmony_luni_platform_OSFileSystem.numImplementedInterfaces = 1; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IFileSystem) + + __TIB_org_apache_harmony_luni_platform_OSFileSystem.implementedInterfaces[0][0] = &__TIB_org_apache_harmony_luni_platform_IFileSystem; + // Initialize itable for this class + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itableBegin = &__TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[0]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_available___long] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[6]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_close___long] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[7]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_fflush___long_boolean] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[8]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_getAllocGranularity__] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[9]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_lock___long_long_long_int_boolean] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[10]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_open___byte_1ARRAY_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[11]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_readDirect___long_long_int_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[12]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_read___long_byte_1ARRAY_int_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[13]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_readv___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[14]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_seek___long_long_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[15]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_size___long] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[16]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_transfer___long_java_io_FileDescriptor_long_long] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[17]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_truncate___long_long] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[18]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_ttyAvailable__] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[19]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_ttyRead___byte_1ARRAY_int_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[20]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_unlock___long_long_long] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[21]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_writeDirect___long_long_int_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[22]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_write___long_byte_1ARRAY_int_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[23]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int] = __TIB_org_apache_harmony_luni_platform_OSFileSystem.vtable[24]; + + _STATIC_org_apache_harmony_luni_platform_OSFileSystem_singleton = (org_apache_harmony_luni_platform_OSFileSystem*) JAVA_NULL; + + __TIB_org_apache_harmony_luni_platform_OSFileSystem.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_OSFileSystem.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_OSFileSystem.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_platform_OSFileSystem = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_platform_OSFileSystem); + __TIB_org_apache_harmony_luni_platform_OSFileSystem.clazz = __CLASS_org_apache_harmony_luni_platform_OSFileSystem; + __TIB_org_apache_harmony_luni_platform_OSFileSystem.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_platform_OSFileSystem_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSFileSystem); + __CLASS_org_apache_harmony_luni_platform_OSFileSystem_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSFileSystem_1ARRAY); + __CLASS_org_apache_harmony_luni_platform_OSFileSystem_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSFileSystem_2ARRAY); + org_apache_harmony_luni_platform_OSFileSystem___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_platform_OSFileSystem] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_platform_OSFileSystem.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_platform_OSFileSystem(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_platform_OSFileSystem] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSFileSystem(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSFileSystem] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_OSFileSystem() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSFileSystem) +org_apache_harmony_luni_platform_OSFileSystem* me = (org_apache_harmony_luni_platform_OSFileSystem*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_platform_OSFileSystem)); + me->tib = &__TIB_org_apache_harmony_luni_platform_OSFileSystem; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSFileSystem(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_platform_OSFileSystem] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_OSFileSystem() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSFileSystem_GET_singleton() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSFileSystem) + return _STATIC_org_apache_harmony_luni_platform_OSFileSystem_singleton; +} + +void org_apache_harmony_luni_platform_OSFileSystem_PUT_singleton(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSFileSystem) +_STATIC_org_apache_harmony_luni_platform_OSFileSystem_singleton = v; +} + +void org_apache_harmony_luni_platform_OSFileSystem___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 32) + org_apache_harmony_luni_platform_OSFileSystem_oneTimeInitializationImpl__(); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 35) + _r0.o = __NEW_org_apache_harmony_luni_platform_OSFileSystem(); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSFileSystem___INIT___(_r0.o); + org_apache_harmony_luni_platform_OSFileSystem_PUT_singleton( _r0.o); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 29) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSFileSystem_getOSFileSystem__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSFileSystem) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_getOSFileSystem__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "getOSFileSystem", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 38) + _r0.o = org_apache_harmony_luni_platform_OSFileSystem_GET_singleton(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_platform_OSFileSystem___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 42) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 43) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSFileSystem_oneTimeInitializationImpl__()] + +void org_apache_harmony_luni_platform_OSFileSystem_validateLockArgs___int_long_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2, JAVA_LONG n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_validateLockArgs___int_long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "validateLockArgs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r3.o = me; + _r4.i = n1; + _r5.l = n2; + _r7.l = n3; + _r1.l = 0; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 48) + _r0.i = 1; + if (_r4.i == _r0.i) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 49) + _r0.i = 2; + if (_r4.i == _r0.i) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 50) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "Illegal lock type requested." + _r1.o = xmlvm_create_java_string_from_pool(97); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 54) + _r0.i = _r5.l > _r1.l ? 1 : (_r5.l == _r1.l ? 0 : -1); + if (_r0.i >= 0) goto label28; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 55) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 56) + // "Lock start position must be non-negative" + _r1.o = xmlvm_create_java_string_from_pool(98); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label28:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 60) + _r0.i = _r7.l > _r1.l ? 1 : (_r7.l == _r1.l ? 0 : -1); + if (_r0.i >= 0) goto label40; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 61) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 62) + // "Lock length must be non-negative" + _r1.o = xmlvm_create_java_string_from_pool(99); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label40:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 64) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_lockImpl___long_long_long_int_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4, JAVA_BOOLEAN n5)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__(JAVA_OBJECT me)] + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSFileSystem_lock___long_long_long_int_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4, JAVA_BOOLEAN n5) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_lock___long_long_long_int_boolean] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "lock", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + _r6.o = me; + _r7.l = n1; + _r9.l = n2; + _r11.l = n3; + _r13.i = n4; + _r14.i = n5; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 79) + _r0 = _r6; + _r1 = _r13; + _r2 = _r9; + _r4 = _r11; + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSFileSystem_validateLockArgs___int_long_long(_r0.o, _r1.i, _r2.l, _r4.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 80) + XMLVM_CHECK_NPE(6) + _r0.i = org_apache_harmony_luni_platform_OSFileSystem_lockImpl___long_long_long_int_boolean(_r6.o, _r7.l, _r9.l, _r11.l, _r13.i, _r14.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 81) + _r1.i = -1; + if (_r0.i == _r1.i) goto label16; + _r0.i = 1; + label15:; + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + _r0.i = 0; + goto label15; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_unlockImpl___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3)] + +void org_apache_harmony_luni_platform_OSFileSystem_unlock___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_unlock___long_long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "unlock", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + _r6.o = me; + _r7.l = n1; + _r9.l = n2; + _r11.l = n3; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 89) + _r1.i = 1; + _r0 = _r6; + _r2 = _r9; + _r4 = _r11; + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSFileSystem_validateLockArgs___int_long_long(_r0.o, _r1.i, _r2.l, _r4.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 90) + XMLVM_CHECK_NPE(6) + _r0.i = org_apache_harmony_luni_platform_OSFileSystem_unlockImpl___long_long_long(_r6.o, _r7.l, _r9.l, _r11.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 91) + _r1.i = -1; + if (_r0.i != _r1.i) goto label20; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 92) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label20:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 94) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_fflushImpl___long_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BOOLEAN n2)] + +void org_apache_harmony_luni_platform_OSFileSystem_fflush___long_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BOOLEAN n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_fflush___long_boolean] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "fflush", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.l = n1; + _r5.i = n2; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 100) + XMLVM_CHECK_NPE(2) + _r0.i = org_apache_harmony_luni_platform_OSFileSystem_fflushImpl___long_boolean(_r2.o, _r3.l, _r5.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 101) + _r1.i = -1; + if (_r0.i != _r1.i) goto label13; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 102) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 104) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_seek___long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_seek___long_long_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "seek", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r4.o = me; + _r5.l = n1; + _r7.l = n2; + _r9.i = n3; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 114) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int(_r4.o, _r5.l, _r7.l, _r9.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 115) + _r2.l = -1; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i != 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 116) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 118) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readDirectImpl___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readDirect___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_readDirect___long_long_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "readDirect", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r4.o = me; + _r5.l = n1; + _r7.l = n2; + _r9.i = n3; + _r10.i = n4; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 129) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_readDirectImpl___long_long_int_int(_r4.o, _r5.l, _r7.l, _r9.i, _r10.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 130) + _r2.l = -1; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 131) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 133) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeDirectImpl___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeDirect___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_writeDirect___long_long_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "writeDirect", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r4.o = me; + _r5.l = n1; + _r7.l = n2; + _r9.i = n3; + _r10.i = n4; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 141) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_writeDirectImpl___long_long_int_int(_r4.o, _r5.l, _r7.l, _r9.i, _r10.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 143) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 144) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 146) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readImpl___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_read___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_read___long_byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "read", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r4.o = me; + _r5.l = n1; + _r7.o = n2; + _r8.i = n3; + _r9.i = n4; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 157) + if (_r7.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 158) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 160) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_readImpl___long_byte_1ARRAY_int_int(_r4.o, _r5.l, _r7.o, _r8.i, _r9.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 161) + _r2.l = -1; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label24; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 170) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label24:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 172) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeImpl___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_write___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_write___long_byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "write", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r4.o = me; + _r5.l = n1; + _r7.o = n2; + _r8.i = n3; + _r9.i = n4; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 180) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_writeImpl___long_byte_1ARRAY_int_int(_r4.o, _r5.l, _r7.o, _r8.i, _r9.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 181) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 182) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 184) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readv___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_readv___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "readv", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r4.o = me; + _r5.l = n1; + _r7.o = n2; + _r8.o = n3; + _r9.o = n4; + _r10.i = n5; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 192) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_readvImpl___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int(_r4.o, _r5.l, _r7.o, _r8.o, _r9.o, _r10.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 194) + _r2.l = -1; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 195) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 197) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readvImpl___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5)] + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_closeImpl___long(JAVA_OBJECT me, JAVA_LONG n1)] + +void org_apache_harmony_luni_platform_OSFileSystem_close___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_close___long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "close", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.l = n1; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 214) + XMLVM_CHECK_NPE(2) + _r0.i = org_apache_harmony_luni_platform_OSFileSystem_closeImpl___long(_r2.o, _r3.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 215) + _r1.i = -1; + if (_r0.i != _r1.i) goto label13; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 216) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label13:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 218) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_platform_OSFileSystem_truncate___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_truncate___long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "truncate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.o = me; + _r2.l = n1; + _r4.l = n2; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 221) + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSFileSystem_truncateImpl___long_long(_r1.o, _r2.l, _r4.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 222) + if (_r0.i >= 0) goto label12; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 223) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label12:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 225) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_truncateImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_open___byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_open___byte_1ARRAY_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "open", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r4.o = me; + _r5.o = n1; + _r6.i = n2; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 230) + if (_r5.o != JAVA_NULL) goto label8; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 231) + _r0.o = __NEW_java_lang_NullPointerException(); + XMLVM_CHECK_NPE(0) + java_lang_NullPointerException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label8:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 233) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_openImpl___byte_1ARRAY_int(_r4.o, _r5.o, _r6.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 234) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label51; + XMLVM_TRY_BEGIN(w1838aaac30b1c17) + // Begin try + XMLVM_SOURCE_POSITION("OSFileSystem.java", 236) + + + // Red class access removed: java.io.FileNotFoundException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.o = __NEW_java_lang_String(); + // "UTF-8" + _r2.o = xmlvm_create_java_string_from_pool(100); + XMLVM_CHECK_NPE(1) + java_lang_String___INIT____byte_1ARRAY_java_lang_String(_r1.o, _r5.o, _r2.o); + + + // Red class access removed: java.io.FileNotFoundException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1838aaac30b1c17) + XMLVM_CATCH_END(w1838aaac30b1c17) + XMLVM_RESTORE_EXCEPTION_ENV(w1838aaac30b1c17) + label31:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 237) + java_lang_Thread* curThread_w1838aaac30b1c20 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w1838aaac30b1c20->fields.java_lang_Thread.xmlvmException_; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 239) + + + // Red class access removed: java.io.FileNotFoundException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + _r2.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____byte_1ARRAY(_r2.o, _r5.o); + + + // Red class access removed: java.io.FileNotFoundException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 240) + + + // Red class access removed: java.io.UnsupportedEncodingException::initCause + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 241) + + + // Red class access removed: java.lang.AssertionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.AssertionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label51:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 244) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_openImpl___byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_transfer___long_java_io_FileDescriptor_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_LONG n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_transfer___long_java_io_FileDescriptor_long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "transfer", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r4.o = me; + _r5.l = n1; + _r7.o = n2; + _r8.l = n3; + _r10.l = n4; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 251) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_transferImpl___long_java_io_FileDescriptor_long_long(_r4.o, _r5.l, _r7.o, _r8.l, _r10.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 252) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 253) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 254) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_transferImpl___long_java_io_FileDescriptor_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_LONG n4)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyAvailable__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_ttyAvailable__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "ttyAvailable", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 261) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_ttyAvailableImpl__(_r4.o); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 262) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 263) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 265) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyAvailableImpl__(JAVA_OBJECT me)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_available___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_available___long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "available", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.l = n1; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 271) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_availableImpl___long(_r4.o, _r5.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 272) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 273) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 275) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_availableImpl___long(JAVA_OBJECT me, JAVA_LONG n1)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_size___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_size___long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "size", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.l = n1; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 281) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_sizeImpl___long(_r4.o, _r5.l); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 282) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 283) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 285) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_sizeImpl___long(JAVA_OBJECT me, JAVA_LONG n1)] + +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyRead___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSFileSystem_ttyRead___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSFileSystem", "ttyRead", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r4.o = me; + _r5.o = n1; + _r6.i = n2; + _r7.i = n3; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 291) + XMLVM_CHECK_NPE(4) + _r0.l = org_apache_harmony_luni_platform_OSFileSystem_ttyReadImpl___byte_1ARRAY_int_int(_r4.o, _r5.o, _r6.i, _r7.i); + XMLVM_SOURCE_POSITION("OSFileSystem.java", 292) + _r2.l = 0; + _r2.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r2.i >= 0) goto label16; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 293) + _r0.o = __NEW_java_io_IOException(); + XMLVM_CHECK_NPE(0) + java_io_IOException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + label16:; + XMLVM_SOURCE_POSITION("OSFileSystem.java", 295) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyReadImpl___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)] + diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.h b/tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.h new file mode 100644 index 0000000000000..e8c69804e0bac --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_OSFileSystem.h @@ -0,0 +1,153 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_PLATFORM_OSFILESYSTEM__ +#define __ORG_APACHE_HARMONY_LUNI_PLATFORM_OSFILESYSTEM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_OSFileSystem 19 +// Implemented interfaces: +#include "org_apache_harmony_luni_platform_IFileSystem.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_FileDescriptor +#define XMLVM_FORWARD_DECL_java_io_FileDescriptor +XMLVM_FORWARD_DECL(java_io_FileDescriptor) +#endif +#ifndef XMLVM_FORWARD_DECL_java_io_IOException +#define XMLVM_FORWARD_DECL_java_io_IOException +XMLVM_FORWARD_DECL(java_io_IOException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_NullPointerException +#define XMLVM_FORWARD_DECL_java_lang_NullPointerException +XMLVM_FORWARD_DECL(java_lang_NullPointerException) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for org.apache.harmony.luni.platform.OSFileSystem +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_platform_OSFileSystem, 25, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_OSFileSystem) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSFileSystem_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSFileSystem +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSFileSystem \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSFileSystem \ + } org_apache_harmony_luni_platform_OSFileSystem + +struct org_apache_harmony_luni_platform_OSFileSystem { + __TIB_DEFINITION_org_apache_harmony_luni_platform_OSFileSystem* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSFileSystem; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_OSFileSystem +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_OSFileSystem +typedef struct org_apache_harmony_luni_platform_OSFileSystem org_apache_harmony_luni_platform_OSFileSystem; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_platform_OSFileSystem 25 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__ 9 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_lock___long_long_long_int_boolean 10 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_unlock___long_long_long 21 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_fflush___long_boolean 8 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_seek___long_long_int 15 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_readDirect___long_long_int_int 12 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_writeDirect___long_long_int_int 22 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_read___long_byte_1ARRAY_int_int 13 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_write___long_byte_1ARRAY_int_int 23 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_readv___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int 14 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int 24 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_close___long 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_truncate___long_long 18 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_open___byte_1ARRAY_int 11 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_transfer___long_java_io_FileDescriptor_long_long 17 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_ttyAvailable__ 19 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_available___long 6 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_size___long 16 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSFileSystem_ttyRead___byte_1ARRAY_int_int 20 + +void __INIT_org_apache_harmony_luni_platform_OSFileSystem(); +void __INIT_IMPL_org_apache_harmony_luni_platform_OSFileSystem(); +void __DELETE_org_apache_harmony_luni_platform_OSFileSystem(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSFileSystem(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_OSFileSystem(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_OSFileSystem(); +void xmlvm_init_native_org_apache_harmony_luni_platform_OSFileSystem(); +JAVA_OBJECT org_apache_harmony_luni_platform_OSFileSystem_GET_singleton(); +void org_apache_harmony_luni_platform_OSFileSystem_PUT_singleton(JAVA_OBJECT v); +void org_apache_harmony_luni_platform_OSFileSystem___CLINIT_(); +JAVA_OBJECT org_apache_harmony_luni_platform_OSFileSystem_getOSFileSystem__(); +void org_apache_harmony_luni_platform_OSFileSystem___INIT___(JAVA_OBJECT me); +void org_apache_harmony_luni_platform_OSFileSystem_oneTimeInitializationImpl__(); +void org_apache_harmony_luni_platform_OSFileSystem_validateLockArgs___int_long_long(JAVA_OBJECT me, JAVA_INT n1, JAVA_LONG n2, JAVA_LONG n3); +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_lockImpl___long_long_long_int_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4, JAVA_BOOLEAN n5); +// Vtable index: 9 +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_getAllocGranularity__(JAVA_OBJECT me); +// Vtable index: 10 +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSFileSystem_lock___long_long_long_int_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4, JAVA_BOOLEAN n5); +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_unlockImpl___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3); +// Vtable index: 21 +void org_apache_harmony_luni_platform_OSFileSystem_unlock___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3); +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_fflushImpl___long_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BOOLEAN n2); +// Vtable index: 8 +void org_apache_harmony_luni_platform_OSFileSystem_fflush___long_boolean(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BOOLEAN n2); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_seekImpl___long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3); +// Vtable index: 15 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_seek___long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readDirectImpl___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 12 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readDirect___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeDirectImpl___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 22 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeDirect___long_long_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readImpl___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 13 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_read___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writeImpl___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 23 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_write___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 14 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readv___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_readvImpl___long_long_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5); +// Vtable index: 24 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_writev___long_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5); +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_closeImpl___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 7 +void org_apache_harmony_luni_platform_OSFileSystem_close___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 18 +void org_apache_harmony_luni_platform_OSFileSystem_truncate___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +JAVA_INT org_apache_harmony_luni_platform_OSFileSystem_truncateImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +// Vtable index: 11 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_open___byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_openImpl___byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 17 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_transfer___long_java_io_FileDescriptor_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_LONG n4); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_transferImpl___long_java_io_FileDescriptor_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_LONG n4); +// Vtable index: 19 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyAvailable__(JAVA_OBJECT me); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyAvailableImpl__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_available___long(JAVA_OBJECT me, JAVA_LONG n1); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_availableImpl___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 16 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_size___long(JAVA_OBJECT me, JAVA_LONG n1); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_sizeImpl___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 20 +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyRead___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_LONG org_apache_harmony_luni_platform_OSFileSystem_ttyReadImpl___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.c b/tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.c new file mode 100644 index 0000000000000..b96742a5ced21 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.c @@ -0,0 +1,1000 @@ +#include "xmlvm.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "org_apache_harmony_luni_platform_Endianness.h" + +#include "org_apache_harmony_luni_platform_OSMemory.h" + +#define XMLVM_CURRENT_CLASS_NAME OSMemory +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_platform_OSMemory + +__TIB_DEFINITION_org_apache_harmony_luni_platform_OSMemory __TIB_org_apache_harmony_luni_platform_OSMemory = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_platform_OSMemory, // classInitializer + "org.apache.harmony.luni.platform.OSMemory", // className + "org.apache.harmony.luni.platform", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_platform_OSMemory), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_OSMemory_POINTER_SIZE; +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_platform_OSMemory_NATIVE_ORDER; +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_platform_OSMemory_singleton; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_platform_OSMemory() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_platform_OSMemory); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_platform_OSMemory.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_platform_OSMemory.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_platform_OSMemory); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_platform_OSMemory.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_platform_OSMemory.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_platform_OSMemory.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.platform.OSMemory") + __INIT_IMPL_org_apache_harmony_luni_platform_OSMemory(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_platform_OSMemory() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_platform_OSMemory.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_platform_OSMemory; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_platform_OSMemory.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[22] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_isLittleEndian__; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[19] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_getPointerSize__; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[25] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[7] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[27] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[26] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[9] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[30] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[10] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[31] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[20] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[21] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_getShort___long_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[40] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[41] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_setShort___long_short_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[15] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[16] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_getInt___long_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[36] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[37] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_setInt___long_int_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[17] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[18] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_getLong___long_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[38] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[39] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_setLong___long_long_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[13] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[14] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_getFloat___long_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[34] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[35] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_setFloat___long_float_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[11] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[12] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_getDouble___long_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[32] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[33] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_setDouble___long_double_org_apache_harmony_luni_platform_Endianness; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[8] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[29] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[28] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_mmap___long_long_long_int; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[42] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_unmap___long_long; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[24] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_load___long_long; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[23] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_isLoaded___long_long; + __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[6] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSMemory_flush___long_long; + xmlvm_init_native_org_apache_harmony_luni_platform_OSMemory(); + // Initialize interface information + __TIB_org_apache_harmony_luni_platform_OSMemory.numImplementedInterfaces = 1; + __TIB_org_apache_harmony_luni_platform_OSMemory.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_IMemorySystem) + + __TIB_org_apache_harmony_luni_platform_OSMemory.implementedInterfaces[0][0] = &__TIB_org_apache_harmony_luni_platform_IMemorySystem; + // Initialize itable for this class + __TIB_org_apache_harmony_luni_platform_OSMemory.itableBegin = &__TIB_org_apache_harmony_luni_platform_OSMemory.itable[0]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_flush___long_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[6]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_free___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[7]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getAddress___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[8]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getByteArray___long_byte_1ARRAY_int_int] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[9]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getByte___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[10]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getDouble___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[11]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getDouble___long_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[12]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getFloat___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[13]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getFloat___long_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[14]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getInt___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[15]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getInt___long_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[16]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getLong___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[17]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getLong___long_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[18]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getPointerSize__] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[19]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getShort___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[20]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_getShort___long_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[21]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_isLittleEndian__] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[22]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_isLoaded___long_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[23]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_load___long_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[24]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_malloc___long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[25]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_memmove___long_long_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[26]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_memset___long_byte_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[27]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_mmap___long_long_long_int] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[28]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setAddress___long_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[29]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setByteArray___long_byte_1ARRAY_int_int] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[30]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setByte___long_byte] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[31]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setDouble___long_double] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[32]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setDouble___long_double_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[33]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setFloat___long_float] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[34]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setFloat___long_float_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[35]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setInt___long_int] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[36]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setInt___long_int_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[37]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setLong___long_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[38]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setLong___long_long_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[39]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setShort___long_short] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[40]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_setShort___long_short_org_apache_harmony_luni_platform_Endianness] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[41]; + __TIB_org_apache_harmony_luni_platform_OSMemory.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_IMemorySystem_unmap___long_long] = __TIB_org_apache_harmony_luni_platform_OSMemory.vtable[42]; + + _STATIC_org_apache_harmony_luni_platform_OSMemory_POINTER_SIZE = 0; + _STATIC_org_apache_harmony_luni_platform_OSMemory_NATIVE_ORDER = (org_apache_harmony_luni_platform_Endianness*) JAVA_NULL; + _STATIC_org_apache_harmony_luni_platform_OSMemory_singleton = (org_apache_harmony_luni_platform_OSMemory*) JAVA_NULL; + + __TIB_org_apache_harmony_luni_platform_OSMemory.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSMemory.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_OSMemory.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_platform_OSMemory.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSMemory.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_OSMemory.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_platform_OSMemory.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSMemory.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_platform_OSMemory = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_platform_OSMemory); + __TIB_org_apache_harmony_luni_platform_OSMemory.clazz = __CLASS_org_apache_harmony_luni_platform_OSMemory; + __TIB_org_apache_harmony_luni_platform_OSMemory.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_platform_OSMemory_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSMemory); + __CLASS_org_apache_harmony_luni_platform_OSMemory_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSMemory_1ARRAY); + __CLASS_org_apache_harmony_luni_platform_OSMemory_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSMemory_2ARRAY); + org_apache_harmony_luni_platform_OSMemory___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_platform_OSMemory] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_platform_OSMemory.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_platform_OSMemory(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_platform_OSMemory] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSMemory(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSMemory] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_OSMemory() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) +org_apache_harmony_luni_platform_OSMemory* me = (org_apache_harmony_luni_platform_OSMemory*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_platform_OSMemory)); + me->tib = &__TIB_org_apache_harmony_luni_platform_OSMemory; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSMemory(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_platform_OSMemory] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_OSMemory() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_GET_POINTER_SIZE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) + return _STATIC_org_apache_harmony_luni_platform_OSMemory_POINTER_SIZE; +} + +void org_apache_harmony_luni_platform_OSMemory_PUT_POINTER_SIZE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) +_STATIC_org_apache_harmony_luni_platform_OSMemory_POINTER_SIZE = v; +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) + return _STATIC_org_apache_harmony_luni_platform_OSMemory_NATIVE_ORDER; +} + +void org_apache_harmony_luni_platform_OSMemory_PUT_NATIVE_ORDER(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) +_STATIC_org_apache_harmony_luni_platform_OSMemory_NATIVE_ORDER = v; +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_GET_singleton() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) + return _STATIC_org_apache_harmony_luni_platform_OSMemory_singleton; +} + +void org_apache_harmony_luni_platform_OSMemory_PUT_singleton(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) +_STATIC_org_apache_harmony_luni_platform_OSMemory_singleton = v; +} + +void org_apache_harmony_luni_platform_OSMemory___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("OSMemory.java", 56) + _r0.o = __NEW_org_apache_harmony_luni_platform_OSMemory(); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSMemory___INIT___(_r0.o); + org_apache_harmony_luni_platform_OSMemory_PUT_singleton( _r0.o); + XMLVM_SOURCE_POSITION("OSMemory.java", 59) + _r0.i = org_apache_harmony_luni_platform_OSMemory_getPointerSizeImpl__(); + org_apache_harmony_luni_platform_OSMemory_PUT_POINTER_SIZE( _r0.i); + XMLVM_SOURCE_POSITION("OSMemory.java", 61) + _r0.i = org_apache_harmony_luni_platform_OSMemory_isLittleEndianImpl__(); + if (_r0.i == 0) goto label24; + XMLVM_SOURCE_POSITION("OSMemory.java", 62) + _r0.o = org_apache_harmony_luni_platform_Endianness_GET_LITTLE_ENDIAN(); + org_apache_harmony_luni_platform_OSMemory_PUT_NATIVE_ORDER( _r0.o); + label23:; + XMLVM_SOURCE_POSITION("OSMemory.java", 42) + XMLVM_EXIT_METHOD() + return; + label24:; + XMLVM_SOURCE_POSITION("OSMemory.java", 64) + _r0.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN(); + org_apache_harmony_luni_platform_OSMemory_PUT_NATIVE_ORDER( _r0.o); + goto label23; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_getOSMemory__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSMemory) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getOSMemory__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getOSMemory", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("OSMemory.java", 69) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_singleton(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLittleEndianImpl__()] + +void org_apache_harmony_luni_platform_OSMemory___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("OSMemory.java", 87) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("OSMemory.java", 88) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLittleEndian__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_isLittleEndian__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "isLittleEndian", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("OSMemory.java", 97) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + _r1.o = org_apache_harmony_luni_platform_Endianness_GET_LITTLE_ENDIAN(); + if (_r0.o != _r1.o) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_getNativeOrder__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getNativeOrder__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getNativeOrder", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("OSMemory.java", 106) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSMemory_getPointerSizeImpl__()] + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getPointerSize__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getPointerSize__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getPointerSize", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("OSMemory.java", 117) + _r0.i = org_apache_harmony_luni_platform_OSMemory_GET_POINTER_SIZE(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSMemory_malloc___long(JAVA_OBJECT me, JAVA_LONG n1)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_free___long(JAVA_OBJECT me, JAVA_LONG n1)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BYTE n2, JAVA_LONG n3)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[JAVA_BYTE org_apache_harmony_luni_platform_OSMemory_getByte___long(JAVA_OBJECT me, JAVA_LONG n1)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setByte___long_byte(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BYTE n2)] + +//XMLVM_NATIVE[JAVA_SHORT org_apache_harmony_luni_platform_OSMemory_getShort___long(JAVA_OBJECT me, JAVA_LONG n1)] + +JAVA_SHORT org_apache_harmony_luni_platform_OSMemory_getShort___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getShort___long_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.l = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 291) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r4.o != _r0.o) goto label9; + //org_apache_harmony_luni_platform_OSMemory_getShort___long[20] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_SHORT (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[20])(_r1.o, _r2.l); + label8:; + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_SOURCE_POSITION("OSMemory.java", 292) + //org_apache_harmony_luni_platform_OSMemory_getShort___long[20] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_SHORT (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[20])(_r1.o, _r2.l); + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___short(_r1.o, _r0.i); + goto label8; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setShort___long_short(JAVA_OBJECT me, JAVA_LONG n1, JAVA_SHORT n2)] + +void org_apache_harmony_luni_platform_OSMemory_setShort___long_short_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_SHORT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_setShort___long_short_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "setShort", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.o = me; + _r2.l = n1; + _r4.i = n2; + _r5.o = n3; + XMLVM_SOURCE_POSITION("OSMemory.java", 312) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r5.o != _r0.o) goto label8; + XMLVM_SOURCE_POSITION("OSMemory.java", 313) + //org_apache_harmony_luni_platform_OSMemory_setShort___long_short[40] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_SHORT)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[40])(_r1.o, _r2.l, _r4.i); + label7:; + XMLVM_SOURCE_POSITION("OSMemory.java", 317) + XMLVM_EXIT_METHOD() + return; + label8:; + XMLVM_SOURCE_POSITION("OSMemory.java", 315) + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___short(_r1.o, _r4.i); + //org_apache_harmony_luni_platform_OSMemory_setShort___long_short[40] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_SHORT)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[40])(_r1.o, _r2.l, _r0.i); + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSMemory_getInt___long(JAVA_OBJECT me, JAVA_LONG n1)] + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getInt___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getInt___long_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.l = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 335) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r4.o != _r0.o) goto label9; + //org_apache_harmony_luni_platform_OSMemory_getInt___long[15] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[15])(_r1.o, _r2.l); + label8:; + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_SOURCE_POSITION("OSMemory.java", 336) + //org_apache_harmony_luni_platform_OSMemory_getInt___long[15] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[15])(_r1.o, _r2.l); + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___int(_r1.o, _r0.i); + goto label8; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setInt___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2)] + +void org_apache_harmony_luni_platform_OSMemory_setInt___long_int_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_setInt___long_int_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "setInt", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.o = me; + _r2.l = n1; + _r4.i = n2; + _r5.o = n3; + XMLVM_SOURCE_POSITION("OSMemory.java", 356) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r5.o != _r0.o) goto label8; + XMLVM_SOURCE_POSITION("OSMemory.java", 357) + //org_apache_harmony_luni_platform_OSMemory_setInt___long_int[36] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_INT)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[36])(_r1.o, _r2.l, _r4.i); + label7:; + XMLVM_SOURCE_POSITION("OSMemory.java", 361) + XMLVM_EXIT_METHOD() + return; + label8:; + XMLVM_SOURCE_POSITION("OSMemory.java", 359) + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___int(_r1.o, _r4.i); + //org_apache_harmony_luni_platform_OSMemory_setInt___long_int[36] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_INT)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[36])(_r1.o, _r2.l, _r0.i); + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getLong___long(JAVA_OBJECT me, JAVA_LONG n1)] + +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getLong___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getLong___long_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.l = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 379) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r5.o != _r0.o) goto label9; + //org_apache_harmony_luni_platform_OSMemory_getLong___long[17] + XMLVM_CHECK_NPE(2) + _r0.l = (*(JAVA_LONG (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[17])(_r2.o, _r3.l); + label8:; + XMLVM_EXIT_METHOD() + return _r0.l; + label9:; + XMLVM_SOURCE_POSITION("OSMemory.java", 380) + //org_apache_harmony_luni_platform_OSMemory_getLong___long[17] + XMLVM_CHECK_NPE(2) + _r0.l = (*(JAVA_LONG (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[17])(_r2.o, _r3.l); + XMLVM_CHECK_NPE(2) + _r0.l = org_apache_harmony_luni_platform_OSMemory_swap___long(_r2.o, _r0.l); + goto label8; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setLong___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2)] + +void org_apache_harmony_luni_platform_OSMemory_setLong___long_long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_setLong___long_long_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "setLong", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r2.o = me; + _r3.l = n1; + _r5.l = n2; + _r7.o = n3; + XMLVM_SOURCE_POSITION("OSMemory.java", 401) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r7.o != _r0.o) goto label8; + XMLVM_SOURCE_POSITION("OSMemory.java", 402) + //org_apache_harmony_luni_platform_OSMemory_setLong___long_long[38] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[38])(_r2.o, _r3.l, _r5.l); + label7:; + XMLVM_SOURCE_POSITION("OSMemory.java", 406) + XMLVM_EXIT_METHOD() + return; + label8:; + XMLVM_SOURCE_POSITION("OSMemory.java", 404) + XMLVM_CHECK_NPE(2) + _r0.l = org_apache_harmony_luni_platform_OSMemory_swap___long(_r2.o, _r5.l); + //org_apache_harmony_luni_platform_OSMemory_setLong___long_long[38] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[38])(_r2.o, _r3.l, _r0.l); + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_FLOAT org_apache_harmony_luni_platform_OSMemory_getFloat___long(JAVA_OBJECT me, JAVA_LONG n1)] + +JAVA_FLOAT org_apache_harmony_luni_platform_OSMemory_getFloat___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getFloat___long_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r1.o = me; + _r2.l = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 424) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r4.o != _r0.o) goto label9; + XMLVM_SOURCE_POSITION("OSMemory.java", 425) + //org_apache_harmony_luni_platform_OSMemory_getFloat___long[13] + XMLVM_CHECK_NPE(1) + _r0.f = (*(JAVA_FLOAT (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[13])(_r1.o, _r2.l); + label8:; + XMLVM_SOURCE_POSITION("OSMemory.java", 428) + XMLVM_EXIT_METHOD() + return _r0.f; + label9:; + XMLVM_SOURCE_POSITION("OSMemory.java", 427) + //org_apache_harmony_luni_platform_OSMemory_getInt___long[15] + XMLVM_CHECK_NPE(1) + _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[15])(_r1.o, _r2.l); + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___int(_r1.o, _r0.i); + _r0.f = java_lang_Float_intBitsToFloat___int(_r0.i); + goto label8; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setFloat___long_float(JAVA_OBJECT me, JAVA_LONG n1, JAVA_FLOAT n2)] + +void org_apache_harmony_luni_platform_OSMemory_setFloat___long_float_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_FLOAT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_setFloat___long_float_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "setFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.o = me; + _r2.l = n1; + _r4.f = n2; + _r5.o = n3; + XMLVM_SOURCE_POSITION("OSMemory.java", 448) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r5.o != _r0.o) goto label8; + XMLVM_SOURCE_POSITION("OSMemory.java", 449) + //org_apache_harmony_luni_platform_OSMemory_setFloat___long_float[34] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_FLOAT)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[34])(_r1.o, _r2.l, _r4.f); + label7:; + XMLVM_SOURCE_POSITION("OSMemory.java", 454) + XMLVM_EXIT_METHOD() + return; + label8:; + XMLVM_SOURCE_POSITION("OSMemory.java", 451) + _r0.i = java_lang_Float_floatToIntBits___float(_r4.f); + XMLVM_SOURCE_POSITION("OSMemory.java", 452) + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___int(_r1.o, _r0.i); + //org_apache_harmony_luni_platform_OSMemory_setInt___long_int[36] + XMLVM_CHECK_NPE(1) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_INT)) ((org_apache_harmony_luni_platform_OSMemory*) _r1.o)->tib->vtable[36])(_r1.o, _r2.l, _r0.i); + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_DOUBLE org_apache_harmony_luni_platform_OSMemory_getDouble___long(JAVA_OBJECT me, JAVA_LONG n1)] + +JAVA_DOUBLE org_apache_harmony_luni_platform_OSMemory_getDouble___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_getDouble___long_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "getDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r2.o = me; + _r3.l = n1; + _r5.o = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 472) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r5.o != _r0.o) goto label9; + XMLVM_SOURCE_POSITION("OSMemory.java", 473) + //org_apache_harmony_luni_platform_OSMemory_getDouble___long[11] + XMLVM_CHECK_NPE(2) + _r0.d = (*(JAVA_DOUBLE (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[11])(_r2.o, _r3.l); + label8:; + XMLVM_SOURCE_POSITION("OSMemory.java", 476) + XMLVM_EXIT_METHOD() + return _r0.d; + label9:; + XMLVM_SOURCE_POSITION("OSMemory.java", 475) + //org_apache_harmony_luni_platform_OSMemory_getLong___long[17] + XMLVM_CHECK_NPE(2) + _r0.l = (*(JAVA_LONG (*)(JAVA_OBJECT, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[17])(_r2.o, _r3.l); + XMLVM_CHECK_NPE(2) + _r0.l = org_apache_harmony_luni_platform_OSMemory_swap___long(_r2.o, _r0.l); + _r0.d = java_lang_Double_longBitsToDouble___long(_r0.l); + goto label8; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setDouble___long_double(JAVA_OBJECT me, JAVA_LONG n1, JAVA_DOUBLE n2)] + +void org_apache_harmony_luni_platform_OSMemory_setDouble___long_double_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_DOUBLE n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_setDouble___long_double_org_apache_harmony_luni_platform_Endianness] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "setDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r2.o = me; + _r3.l = n1; + _r5.d = n2; + _r7.o = n3; + XMLVM_SOURCE_POSITION("OSMemory.java", 497) + _r0.o = org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); + if (_r7.o != _r0.o) goto label8; + XMLVM_SOURCE_POSITION("OSMemory.java", 498) + //org_apache_harmony_luni_platform_OSMemory_setDouble___long_double[32] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_DOUBLE)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[32])(_r2.o, _r3.l, _r5.d); + label7:; + XMLVM_SOURCE_POSITION("OSMemory.java", 503) + XMLVM_EXIT_METHOD() + return; + label8:; + XMLVM_SOURCE_POSITION("OSMemory.java", 500) + _r0.l = java_lang_Double_doubleToLongBits___double(_r5.d); + XMLVM_SOURCE_POSITION("OSMemory.java", 501) + XMLVM_CHECK_NPE(2) + _r0.l = org_apache_harmony_luni_platform_OSMemory_swap___long(_r2.o, _r0.l); + //org_apache_harmony_luni_platform_OSMemory_setLong___long_long[38] + XMLVM_CHECK_NPE(2) + (*(void (*)(JAVA_OBJECT, JAVA_LONG, JAVA_LONG)) ((org_apache_harmony_luni_platform_OSMemory*) _r2.o)->tib->vtable[38])(_r2.o, _r3.l, _r0.l); + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getAddress___long(JAVA_OBJECT me, JAVA_LONG n1)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_setAddress___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2)] + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSMemory_mmapImpl___long_long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4)] + +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_mmap___long_long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_mmap___long_long_long_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "mmap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r2.o = me; + _r3.l = n1; + _r5.l = n2; + _r7.l = n3; + _r9.i = n4; + XMLVM_SOURCE_POSITION("OSMemory.java", 550) + XMLVM_CHECK_NPE(2) + _r0.l = org_apache_harmony_luni_platform_OSMemory_mmapImpl___long_long_long_int(_r2.o, _r3.l, _r5.l, _r7.l, _r9.i); + XMLVM_SOURCE_POSITION("OSMemory.java", 551) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSMemory_unmapImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2)] + +void org_apache_harmony_luni_platform_OSMemory_unmap___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_unmap___long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "unmap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r0.o = me; + _r1.l = n1; + _r3.l = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 557) + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSMemory_unmapImpl___long_long(_r0.o, _r1.l, _r3.l); + XMLVM_SOURCE_POSITION("OSMemory.java", 558) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_platform_OSMemory_load___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_load___long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "load", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r0.o = me; + _r1.l = n1; + _r3.l = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 561) + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSMemory_loadImpl___long_long(_r0.o, _r1.l, _r3.l); + XMLVM_SOURCE_POSITION("OSMemory.java", 562) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSMemory_loadImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2)] + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLoaded___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_isLoaded___long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "isLoaded", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r2.o = me; + _r3.l = n1; + _r5.l = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 567) + _r0.l = 0; + _r0.i = _r5.l > _r0.l ? 1 : (_r5.l == _r0.l ? 0 : -1); + if (_r0.i != 0) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + XMLVM_CHECK_NPE(2) + _r0.i = org_apache_harmony_luni_platform_OSMemory_isLoadedImpl___long_long(_r2.o, _r3.l, _r5.l); + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLoadedImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2)] + +void org_apache_harmony_luni_platform_OSMemory_flush___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_flush___long_long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "flush", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r0.o = me; + _r1.l = n1; + _r3.l = n2; + XMLVM_SOURCE_POSITION("OSMemory.java", 573) + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSMemory_flushImpl___long_long(_r0.o, _r1.l, _r3.l); + XMLVM_SOURCE_POSITION("OSMemory.java", 574) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSMemory_flushImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2)] + +JAVA_SHORT org_apache_harmony_luni_platform_OSMemory_swap___short(JAVA_OBJECT me, JAVA_SHORT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_swap___short] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "swap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.i = n1; + XMLVM_SOURCE_POSITION("OSMemory.java", 582) + _r0.i = _r3.i << 8; + _r1.i = _r3.i >> 8; + _r1.i = _r1.i & 255; + _r0.i = _r0.i | _r1.i; + _r0.i = (_r0.i << 16) >> 16; + XMLVM_SOURCE_POSITION("OSMemory.java", 584) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_INT org_apache_harmony_luni_platform_OSMemory_swap___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_swap___int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "swap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r3.o = me; + _r4.i = n1; + XMLVM_SOURCE_POSITION("OSMemory.java", 588) + _r0.i = _r4.i >> 16; + _r0.i = (_r0.i << 16) >> 16; + _r1.i = (_r4.i << 16) >> 16; + XMLVM_SOURCE_POSITION("OSMemory.java", 590) + XMLVM_CHECK_NPE(3) + _r1.i = org_apache_harmony_luni_platform_OSMemory_swap___short(_r3.o, _r1.i); + _r1.i = _r1.i << 16; + XMLVM_SOURCE_POSITION("OSMemory.java", 591) + XMLVM_CHECK_NPE(3) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___short(_r3.o, _r0.i); + _r2.i = 65535; + _r0.i = _r0.i & _r2.i; + _r0.i = _r0.i | _r1.i; + XMLVM_SOURCE_POSITION("OSMemory.java", 592) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_swap___long(JAVA_OBJECT me, JAVA_LONG n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSMemory_swap___long] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSMemory", "swap", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r7.o = me; + _r8.l = n1; + _r3.i = 32; + XMLVM_SOURCE_POSITION("OSMemory.java", 596) + _r0.l = _r8.l >> (0x3f & _r3.l); + _r0.i = (JAVA_INT) _r0.l; + _r1.i = (JAVA_INT) _r8.l; + XMLVM_SOURCE_POSITION("OSMemory.java", 598) + XMLVM_CHECK_NPE(7) + _r1.i = org_apache_harmony_luni_platform_OSMemory_swap___int(_r7.o, _r1.i); + _r1.l = (JAVA_LONG) _r1.i; + _r1.l = _r1.l << (0x3f & _r3.l); + XMLVM_SOURCE_POSITION("OSMemory.java", 599) + XMLVM_CHECK_NPE(7) + _r0.i = org_apache_harmony_luni_platform_OSMemory_swap___int(_r7.o, _r0.i); + _r3.l = (JAVA_LONG) _r0.i; + _r5.l = 4294967295; + _r3.l = _r3.l & _r5.l; + _r0.l = _r1.l | _r3.l; + XMLVM_SOURCE_POSITION("OSMemory.java", 600) + XMLVM_EXIT_METHOD() + return _r0.l; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.h b/tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.h new file mode 100644 index 0000000000000..9dc56cf7123d9 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_OSMemory.h @@ -0,0 +1,195 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_PLATFORM_OSMEMORY__ +#define __ORG_APACHE_HARMONY_LUNI_PLATFORM_OSMEMORY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_OSMemory 37 +// Implemented interfaces: +#include "org_apache_harmony_luni_platform_IMemorySystem.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_Endianness +XMLVM_FORWARD_DECL(org_apache_harmony_luni_platform_Endianness) +#endif +// Class declarations for org.apache.harmony.luni.platform.OSMemory +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_platform_OSMemory, 43, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_OSMemory) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSMemory_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSMemory +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSMemory \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSMemory \ + } org_apache_harmony_luni_platform_OSMemory + +struct org_apache_harmony_luni_platform_OSMemory { + __TIB_DEFINITION_org_apache_harmony_luni_platform_OSMemory* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSMemory; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_OSMemory +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_OSMemory +typedef struct org_apache_harmony_luni_platform_OSMemory org_apache_harmony_luni_platform_OSMemory; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_platform_OSMemory 43 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_isLittleEndian__ 22 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getPointerSize__ 19 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_malloc___long 25 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_free___long 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long 27 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long 26 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int 9 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int 30 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getByte___long 10 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setByte___long_byte 31 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getShort___long 20 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getShort___long_org_apache_harmony_luni_platform_Endianness 21 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setShort___long_short 40 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setShort___long_short_org_apache_harmony_luni_platform_Endianness 41 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getInt___long 15 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getInt___long_org_apache_harmony_luni_platform_Endianness 16 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setInt___long_int 36 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setInt___long_int_org_apache_harmony_luni_platform_Endianness 37 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getLong___long 17 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getLong___long_org_apache_harmony_luni_platform_Endianness 18 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setLong___long_long 38 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setLong___long_long_org_apache_harmony_luni_platform_Endianness 39 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getFloat___long 13 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getFloat___long_org_apache_harmony_luni_platform_Endianness 14 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setFloat___long_float 34 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setFloat___long_float_org_apache_harmony_luni_platform_Endianness 35 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getDouble___long 11 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getDouble___long_org_apache_harmony_luni_platform_Endianness 12 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setDouble___long_double 32 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setDouble___long_double_org_apache_harmony_luni_platform_Endianness 33 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_getAddress___long 8 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_setAddress___long_long 29 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_mmap___long_long_long_int 28 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_unmap___long_long 42 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_load___long_long 24 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_isLoaded___long_long 23 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSMemory_flush___long_long 6 + +void __INIT_org_apache_harmony_luni_platform_OSMemory(); +void __INIT_IMPL_org_apache_harmony_luni_platform_OSMemory(); +void __DELETE_org_apache_harmony_luni_platform_OSMemory(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSMemory(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_OSMemory(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_OSMemory(); +void xmlvm_init_native_org_apache_harmony_luni_platform_OSMemory(); +JAVA_INT org_apache_harmony_luni_platform_OSMemory_GET_POINTER_SIZE(); +void org_apache_harmony_luni_platform_OSMemory_PUT_POINTER_SIZE(JAVA_INT v); +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_GET_NATIVE_ORDER(); +void org_apache_harmony_luni_platform_OSMemory_PUT_NATIVE_ORDER(JAVA_OBJECT v); +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_GET_singleton(); +void org_apache_harmony_luni_platform_OSMemory_PUT_singleton(JAVA_OBJECT v); +void org_apache_harmony_luni_platform_OSMemory___CLINIT_(); +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_getOSMemory__(); +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLittleEndianImpl__(); +void org_apache_harmony_luni_platform_OSMemory___INIT___(JAVA_OBJECT me); +// Vtable index: 22 +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLittleEndian__(JAVA_OBJECT me); +JAVA_OBJECT org_apache_harmony_luni_platform_OSMemory_getNativeOrder__(JAVA_OBJECT me); +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getPointerSizeImpl__(); +// Vtable index: 19 +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getPointerSize__(JAVA_OBJECT me); +// Vtable index: 25 +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_malloc___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 7 +void org_apache_harmony_luni_platform_OSMemory_free___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 27 +void org_apache_harmony_luni_platform_OSMemory_memset___long_byte_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BYTE n2, JAVA_LONG n3); +// Vtable index: 26 +void org_apache_harmony_luni_platform_OSMemory_memmove___long_long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3); +// Vtable index: 9 +void org_apache_harmony_luni_platform_OSMemory_getByteArray___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 30 +void org_apache_harmony_luni_platform_OSMemory_setByteArray___long_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 10 +JAVA_BYTE org_apache_harmony_luni_platform_OSMemory_getByte___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 31 +void org_apache_harmony_luni_platform_OSMemory_setByte___long_byte(JAVA_OBJECT me, JAVA_LONG n1, JAVA_BYTE n2); +// Vtable index: 20 +JAVA_SHORT org_apache_harmony_luni_platform_OSMemory_getShort___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 21 +JAVA_SHORT org_apache_harmony_luni_platform_OSMemory_getShort___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2); +// Vtable index: 40 +void org_apache_harmony_luni_platform_OSMemory_setShort___long_short(JAVA_OBJECT me, JAVA_LONG n1, JAVA_SHORT n2); +// Vtable index: 41 +void org_apache_harmony_luni_platform_OSMemory_setShort___long_short_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_SHORT n2, JAVA_OBJECT n3); +// Vtable index: 15 +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getInt___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 16 +JAVA_INT org_apache_harmony_luni_platform_OSMemory_getInt___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2); +// Vtable index: 36 +void org_apache_harmony_luni_platform_OSMemory_setInt___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2); +// Vtable index: 37 +void org_apache_harmony_luni_platform_OSMemory_setInt___long_int_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2, JAVA_OBJECT n3); +// Vtable index: 17 +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getLong___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 18 +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getLong___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2); +// Vtable index: 38 +void org_apache_harmony_luni_platform_OSMemory_setLong___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +// Vtable index: 39 +void org_apache_harmony_luni_platform_OSMemory_setLong___long_long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_OBJECT n3); +// Vtable index: 13 +JAVA_FLOAT org_apache_harmony_luni_platform_OSMemory_getFloat___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 14 +JAVA_FLOAT org_apache_harmony_luni_platform_OSMemory_getFloat___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2); +// Vtable index: 34 +void org_apache_harmony_luni_platform_OSMemory_setFloat___long_float(JAVA_OBJECT me, JAVA_LONG n1, JAVA_FLOAT n2); +// Vtable index: 35 +void org_apache_harmony_luni_platform_OSMemory_setFloat___long_float_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_FLOAT n2, JAVA_OBJECT n3); +// Vtable index: 11 +JAVA_DOUBLE org_apache_harmony_luni_platform_OSMemory_getDouble___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 12 +JAVA_DOUBLE org_apache_harmony_luni_platform_OSMemory_getDouble___long_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_OBJECT n2); +// Vtable index: 32 +void org_apache_harmony_luni_platform_OSMemory_setDouble___long_double(JAVA_OBJECT me, JAVA_LONG n1, JAVA_DOUBLE n2); +// Vtable index: 33 +void org_apache_harmony_luni_platform_OSMemory_setDouble___long_double_org_apache_harmony_luni_platform_Endianness(JAVA_OBJECT me, JAVA_LONG n1, JAVA_DOUBLE n2, JAVA_OBJECT n3); +// Vtable index: 8 +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_getAddress___long(JAVA_OBJECT me, JAVA_LONG n1); +// Vtable index: 29 +void org_apache_harmony_luni_platform_OSMemory_setAddress___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_mmapImpl___long_long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4); +// Vtable index: 28 +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_mmap___long_long_long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2, JAVA_LONG n3, JAVA_INT n4); +void org_apache_harmony_luni_platform_OSMemory_unmapImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +// Vtable index: 42 +void org_apache_harmony_luni_platform_OSMemory_unmap___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +// Vtable index: 24 +void org_apache_harmony_luni_platform_OSMemory_load___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +JAVA_INT org_apache_harmony_luni_platform_OSMemory_loadImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +// Vtable index: 23 +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLoaded___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSMemory_isLoadedImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +// Vtable index: 6 +void org_apache_harmony_luni_platform_OSMemory_flush___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +JAVA_INT org_apache_harmony_luni_platform_OSMemory_flushImpl___long_long(JAVA_OBJECT me, JAVA_LONG n1, JAVA_LONG n2); +JAVA_SHORT org_apache_harmony_luni_platform_OSMemory_swap___short(JAVA_OBJECT me, JAVA_SHORT n1); +JAVA_INT org_apache_harmony_luni_platform_OSMemory_swap___int(JAVA_OBJECT me, JAVA_INT n1); +JAVA_LONG org_apache_harmony_luni_platform_OSMemory_swap___long(JAVA_OBJECT me, JAVA_LONG n1); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.c b/tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.c new file mode 100644 index 0000000000000..0df1f523496e2 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.c @@ -0,0 +1,769 @@ +#include "xmlvm.h" +#include "java_io_FileDescriptor.h" +#include "java_lang_Class.h" +#include "java_lang_Long.h" +#include "java_lang_String.h" +#include "java_net_InetAddress.h" +#include "java_net_SocketException.h" + +#include "org_apache_harmony_luni_platform_OSNetworkSystem.h" + +#define XMLVM_CURRENT_CLASS_NAME OSNetworkSystem +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_platform_OSNetworkSystem + +__TIB_DEFINITION_org_apache_harmony_luni_platform_OSNetworkSystem __TIB_org_apache_harmony_luni_platform_OSNetworkSystem = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_platform_OSNetworkSystem, // classInitializer + "org.apache.harmony.luni.platform.OSNetworkSystem", // className + "org.apache.harmony.luni.platform", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_platform_OSNetworkSystem), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_TIMEOUT; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_INTERRUPTED; +static JAVA_INT _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_INETADDR_REACHABLE; +static JAVA_BOOLEAN _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_isNetworkInited; +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_singleton; +static JAVA_BOOLEAN _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem__assertionsDisabled; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_platform_OSNetworkSystem() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_platform_OSNetworkSystem); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_platform_OSNetworkSystem); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_platform_OSNetworkSystem.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_platform_OSNetworkSystem.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.platform.OSNetworkSystem") + __INIT_IMPL_org_apache_harmony_luni_platform_OSNetworkSystem(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_platform_OSNetworkSystem() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_platform_OSNetworkSystem; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[7] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[6] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[8] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[9] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[13] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[10] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[11] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[12] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[14] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[15] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[16] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[17] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[18] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[19] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[20] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[21] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[22] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[23] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[24] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[25] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[26] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[27] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitialization___boolean; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[28] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[30] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[29] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[32] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[31] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[33] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[35] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[34] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[36] = (VTABLE_PTR) &org_apache_harmony_luni_platform_OSNetworkSystem_select___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_long_int_1ARRAY; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[38] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[37] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[41] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[39] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[40] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[42] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[43] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[44] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[45] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[46] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[47] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[48] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[49] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[51] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[50] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[52] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + xmlvm_init_native_org_apache_harmony_luni_platform_OSNetworkSystem(); + // Initialize interface information + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.numImplementedInterfaces = 1; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_INetworkSystem) + + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.implementedInterfaces[0][0] = &__TIB_org_apache_harmony_luni_platform_INetworkSystem; + // Initialize itable for this class + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itableBegin = &__TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[0]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[6]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[7]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_availableStream___java_io_FileDescriptor] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[8]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[9]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[10]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[11]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[12]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[13]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[14]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[15]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[16]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_disconnectDatagram___java_io_FileDescriptor] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[17]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getHostByAddr___byte_1ARRAY] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[18]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getHostByName___java_lang_String_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[19]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketFlags__] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[20]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[21]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[22]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_getSocketOption___java_io_FileDescriptor_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[23]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_inheritedChannel__] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[24]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[25]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_listenStreamSocket___java_io_FileDescriptor_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[26]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_oneTimeInitialization___boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[27]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[28]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_readDirect___java_io_FileDescriptor_long_int_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[29]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[30]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[31]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[32]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[33]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[34]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[35]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_select___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_long_int_1ARRAY] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[36]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[37]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[38]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[39]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[40]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[41]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_sendUrgentData___java_io_FileDescriptor_byte] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[42]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[43]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[44]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[45]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_shutdownInput___java_io_FileDescriptor] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[46]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_shutdownOutput___java_io_FileDescriptor] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[47]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_socketClose___java_io_FileDescriptor] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[48]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_supportsUrgentData___java_io_FileDescriptor] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[49]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_writeDirect___java_io_FileDescriptor_long_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[50]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[51]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.itable[XMLVM_ITABLE_IDX_org_apache_harmony_luni_platform_INetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int] = __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.vtable[52]; + + _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_TIMEOUT = -209; + _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_INTERRUPTED = -208; + _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_INETADDR_REACHABLE = 0; + _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_isNetworkInited = 0; + _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_singleton = (org_apache_harmony_luni_platform_OSNetworkSystem*) JAVA_NULL; + _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem__assertionsDisabled = 0; + + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_platform_OSNetworkSystem); + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.clazz = __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem; + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSNetworkSystem); + __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_1ARRAY); + __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_2ARRAY); + org_apache_harmony_luni_platform_OSNetworkSystem___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_platform_OSNetworkSystem] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_platform_OSNetworkSystem.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_platform_OSNetworkSystem(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_platform_OSNetworkSystem] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSNetworkSystem(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSNetworkSystem] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_OSNetworkSystem() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) +org_apache_harmony_luni_platform_OSNetworkSystem* me = (org_apache_harmony_luni_platform_OSNetworkSystem*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_platform_OSNetworkSystem)); + me->tib = &__TIB_org_apache_harmony_luni_platform_OSNetworkSystem; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSNetworkSystem(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_platform_OSNetworkSystem] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_OSNetworkSystem() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_GET_ERRORCODE_SOCKET_TIMEOUT() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_TIMEOUT; +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_ERRORCODE_SOCKET_TIMEOUT(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) +_STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_TIMEOUT = v; +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_GET_ERRORCODE_SOCKET_INTERRUPTED() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_INTERRUPTED; +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_ERRORCODE_SOCKET_INTERRUPTED(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) +_STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_ERRORCODE_SOCKET_INTERRUPTED = v; +} + +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_GET_INETADDR_REACHABLE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_INETADDR_REACHABLE; +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_INETADDR_REACHABLE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) +_STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_INETADDR_REACHABLE = v; +} + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_GET_isNetworkInited() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_isNetworkInited; +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_isNetworkInited(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) +_STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_isNetworkInited = v; +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_GET_singleton() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_singleton; +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_singleton(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) +_STATIC_org_apache_harmony_luni_platform_OSNetworkSystem_singleton = v; +} + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_GET__assertionsDisabled() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + return _STATIC_org_apache_harmony_luni_platform_OSNetworkSystem__assertionsDisabled; +} + +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT__assertionsDisabled(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) +_STATIC_org_apache_harmony_luni_platform_OSNetworkSystem__assertionsDisabled = v; +} + +void org_apache_harmony_luni_platform_OSNetworkSystem___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = 0; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 32) + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + _r0.o = __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_Class_desiredAssertionStatus__(_r0.o); + if (_r0.i != 0) goto label22; + _r0.i = 1; + label10:; + org_apache_harmony_luni_platform_OSNetworkSystem_PUT__assertionsDisabled( _r0.i); + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 39) + org_apache_harmony_luni_platform_OSNetworkSystem_PUT_isNetworkInited( _r1.i); + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 41) + _r0.o = __NEW_org_apache_harmony_luni_platform_OSNetworkSystem(); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_platform_OSNetworkSystem___INIT___(_r0.o); + org_apache_harmony_luni_platform_OSNetworkSystem_PUT_singleton( _r0.o); + XMLVM_EXIT_METHOD() + return; + label22:; + _r0 = _r1; + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getOSNetworkSystem__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_platform_OSNetworkSystem) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem_getOSNetworkSystem__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "getOSNetworkSystem", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 49) + _r0.o = org_apache_harmony_luni_platform_OSNetworkSystem_GET_singleton(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_platform_OSNetworkSystem___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 54) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 55) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_OBJECT n4)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_OBJECT n4, JAVA_INT n5, JAVA_INT n6, JAVA_OBJECT n7)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__(JAVA_OBJECT me)] + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "isReachableByICMP", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r4.i = n3; + _r5.i = n4; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 156) + XMLVM_CHECK_NPE(1) + _r0.i = org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMPImpl___java_net_InetAddress_java_net_InetAddress_int_int(_r1.o, _r2.o, _r3.o, _r4.i, _r5.i); + if (_r0.i != 0) goto label8; + _r0.i = 1; + label7:; + XMLVM_EXIT_METHOD() + return _r0.i; + label8:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMPImpl___java_net_InetAddress_java_net_InetAddress_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)] + +void org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitialization___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitialization___boolean] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "oneTimeInitialization", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.i = n1; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 167) + _r0.i = org_apache_harmony_luni_platform_OSNetworkSystem_GET_isNetworkInited(); + if (_r0.i != 0) goto label10; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 168) + XMLVM_CHECK_NPE(1) + org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitializationImpl___boolean(_r1.o, _r2.i); + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 169) + _r0.i = 1; + org_apache_harmony_luni_platform_OSNetworkSystem_PUT_isNetworkInited( _r0.i); + label10:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 171) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitializationImpl___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7)] + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_select___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_long_int_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_LONG n5, JAVA_OBJECT n6) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem_select___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_long_int_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "select", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + _r8.o = me; + _r9.o = n1; + _r10.o = n2; + _r11.i = n3; + _r12.i = n4; + _r13.l = n5; + _r15.o = n6; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 334) + if (_r11.i < 0) goto label4; + if (_r12.i >= 0) goto label10; + label4:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 335) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label10:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 338) + _r0.i = _r11.i + _r12.i; + if (_r0.i != 0) goto label16; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 339) + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 340) + _r0.i = 1; + label15:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 352) + XMLVM_EXIT_METHOD() + return _r0.i; + label16:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 343) + _r0.i = org_apache_harmony_luni_platform_OSNetworkSystem_GET__assertionsDisabled(); + if (_r0.i != 0) goto label34; + XMLVM_CHECK_NPE(8) + _r0.i = org_apache_harmony_luni_platform_OSNetworkSystem_validateFDs___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int(_r8.o, _r9.o, _r10.o, _r11.i, _r12.i); + if (_r0.i != 0) goto label34; + + + // Red class access removed: java.lang.AssertionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "Invalid file descriptor arrays" + _r1.o = xmlvm_create_java_string_from_pool(84); + + + // Red class access removed: java.lang.AssertionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label34:; + _r0 = _r8; + _r1 = _r9; + _r2 = _r10; + _r3 = _r11; + _r4 = _r12; + _r5 = _r15; + _r6 = _r13; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 346) + XMLVM_CHECK_NPE(0) + _r0.i = org_apache_harmony_luni_platform_OSNetworkSystem_selectImpl___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_int_1ARRAY_long(_r0.o, _r1.o, _r2.o, _r3.i, _r4.i, _r5.o, _r6.l); + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 347) + if (_r0.i < 0) goto label49; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 348) + _r0.i = 1; + goto label15; + label49:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 350) + _r1.i = -209; + if (_r0.i == _r1.i) goto label57; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 351) + _r1.i = -208; + if (_r0.i != _r1.i) goto label59; + label57:; + _r0.i = 0; + goto label15; + label59:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 354) + _r0.o = __NEW_java_net_SocketException(); + XMLVM_CHECK_NPE(0) + java_net_SocketException___INIT___(_r0.o); + XMLVM_THROW_CUSTOM(_r0.o) + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_selectImpl___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_int_1ARRAY_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5, JAVA_LONG n6)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_BOOLEAN n5)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4, JAVA_BOOLEAN n5)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_BOOLEAN n6, JAVA_INT n7, JAVA_OBJECT n8)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_OBJECT n6)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_BOOLEAN n6, JAVA_INT n7, JAVA_OBJECT n8)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[void org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1)] + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_validateFDs___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem_validateFDs___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "validateFDs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + _r4.o = me; + _r5.o = n1; + _r6.o = n2; + _r3.i = 0; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 464) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r1 = _r3; + label3:; + if (_r1.i < _r0.i) goto label11; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 470) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o)); + _r1 = _r3; + label7:; + if (_r1.i < _r0.i) goto label24; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 475) + _r0.i = 1; + label10:; + XMLVM_EXIT_METHOD() + return _r0.i; + label11:; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 466) + XMLVM_CHECK_NPE(2) + _r2.i = java_io_FileDescriptor_valid__(_r2.o); + if (_r2.i != 0) goto label21; + _r0 = _r3; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 467) + goto label10; + label21:; + _r1.i = _r1.i + 1; + goto label3; + label24:; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r1.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 471) + XMLVM_CHECK_NPE(2) + _r2.i = java_io_FileDescriptor_valid__(_r2.o); + if (_r2.i != 0) goto label34; + _r0 = _r3; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 472) + goto label10; + label34:; + _r1.i = _r1.i + 1; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_validateFDs___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_platform_OSNetworkSystem_validateFDs___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.platform.OSNetworkSystem", "validateFDs", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r3.o = me; + _r4.o = n1; + _r5.o = n2; + _r6.i = n3; + _r7.i = n4; + _r2.i = 0; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 480) + _r0 = _r2; + label2:; + if (_r0.i < _r6.i) goto label9; + _r0 = _r2; + label5:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 486) + if (_r0.i < _r7.i) goto label22; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 491) + _r0.i = 1; + label8:; + XMLVM_EXIT_METHOD() + return _r0.i; + label9:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 482) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(1) + _r1.i = java_io_FileDescriptor_valid__(_r1.o); + if (_r1.i != 0) goto label19; + _r0 = _r2; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 483) + goto label8; + label19:; + _r0.i = _r0.i + 1; + goto label2; + label22:; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 487) + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r0.i); + _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + XMLVM_CHECK_NPE(1) + _r1.i = java_io_FileDescriptor_valid__(_r1.o); + if (_r1.i != 0) goto label32; + _r0 = _r2; + XMLVM_SOURCE_POSITION("OSNetworkSystem.java", 488) + goto label8; + label32:; + _r0.i = _r0.i + 1; + goto label5; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4)] + +//XMLVM_NATIVE[JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3)] + +//XMLVM_NATIVE[JAVA_LONG org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5)] + diff --git a/tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.h b/tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.h new file mode 100644 index 0000000000000..ca9d2989a75d6 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_platform_OSNetworkSystem.h @@ -0,0 +1,237 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_PLATFORM_OSNETWORKSYSTEM__ +#define __ORG_APACHE_HARMONY_LUNI_PLATFORM_OSNETWORKSYSTEM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_OSNetworkSystem 47 +// Implemented interfaces: +#include "org_apache_harmony_luni_platform_INetworkSystem.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_FileDescriptor +#define XMLVM_FORWARD_DECL_java_io_FileDescriptor +XMLVM_FORWARD_DECL(java_io_FileDescriptor) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Long +#define XMLVM_FORWARD_DECL_java_lang_Long +XMLVM_FORWARD_DECL(java_lang_Long) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_net_InetAddress +#define XMLVM_FORWARD_DECL_java_net_InetAddress +XMLVM_FORWARD_DECL(java_net_InetAddress) +#endif +#ifndef XMLVM_FORWARD_DECL_java_net_SocketException +#define XMLVM_FORWARD_DECL_java_net_SocketException +XMLVM_FORWARD_DECL(java_net_SocketException) +#endif +// Class declarations for org.apache.harmony.luni.platform.OSNetworkSystem +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_platform_OSNetworkSystem, 53, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_platform_OSNetworkSystem) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_platform_OSNetworkSystem_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSNetworkSystem +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSNetworkSystem \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSNetworkSystem \ + } org_apache_harmony_luni_platform_OSNetworkSystem + +struct org_apache_harmony_luni_platform_OSNetworkSystem { + __TIB_DEFINITION_org_apache_harmony_luni_platform_OSNetworkSystem* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_platform_OSNetworkSystem; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_OSNetworkSystem +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_platform_OSNetworkSystem +typedef struct org_apache_harmony_luni_platform_OSNetworkSystem org_apache_harmony_luni_platform_OSNetworkSystem; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_platform_OSNetworkSystem 53 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int 6 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor 8 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int 9 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int 13 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress 10 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress 11 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long 12 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean 14 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean 15 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean 16 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor 17 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY 18 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean 19 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__ 20 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean 21 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean 22 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int 23 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__ 24 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int 25 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int 26 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitialization___boolean 27 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int 28 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int 30 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int 29 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean 32 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean 31 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int 33 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean 35 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean 34 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_select___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_long_int_1ARRAY 36 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean 38 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean 37 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress 41 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress 39 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress 40 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte 42 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY 43 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean 44 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object 45 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor 46 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor 47 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor 48 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor 49 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int 51 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int 50 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int 52 + +void __INIT_org_apache_harmony_luni_platform_OSNetworkSystem(); +void __INIT_IMPL_org_apache_harmony_luni_platform_OSNetworkSystem(); +void __DELETE_org_apache_harmony_luni_platform_OSNetworkSystem(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_platform_OSNetworkSystem(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_platform_OSNetworkSystem(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_platform_OSNetworkSystem(); +void xmlvm_init_native_org_apache_harmony_luni_platform_OSNetworkSystem(); +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_GET_ERRORCODE_SOCKET_TIMEOUT(); +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_ERRORCODE_SOCKET_TIMEOUT(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_GET_ERRORCODE_SOCKET_INTERRUPTED(); +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_ERRORCODE_SOCKET_INTERRUPTED(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_GET_INETADDR_REACHABLE(); +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_INETADDR_REACHABLE(JAVA_INT v); +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_GET_isNetworkInited(); +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_isNetworkInited(JAVA_BOOLEAN v); +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_GET_singleton(); +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT_singleton(JAVA_OBJECT v); +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_GET__assertionsDisabled(); +void org_apache_harmony_luni_platform_OSNetworkSystem_PUT__assertionsDisabled(JAVA_BOOLEAN v); +void org_apache_harmony_luni_platform_OSNetworkSystem___CLINIT_(); +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getOSNetworkSystem__(); +void org_apache_harmony_luni_platform_OSNetworkSystem___INIT___(JAVA_OBJECT me); +// Vtable index: 7 +void org_apache_harmony_luni_platform_OSNetworkSystem_accept___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4); +// Vtable index: 6 +void org_apache_harmony_luni_platform_OSNetworkSystem_acceptStreamSocket___java_io_FileDescriptor_java_net_SocketImpl_java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4); +// Vtable index: 8 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_availableStream___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 9 +void org_apache_harmony_luni_platform_OSNetworkSystem_bind___java_io_FileDescriptor_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3); +// Vtable index: 13 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_connect___java_io_FileDescriptor_int_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4); +// Vtable index: 10 +void org_apache_harmony_luni_platform_OSNetworkSystem_connectDatagram___java_io_FileDescriptor_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_OBJECT n4); +// Vtable index: 11 +void org_apache_harmony_luni_platform_OSNetworkSystem_connectStreamWithTimeoutSocket___java_io_FileDescriptor_int_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5); +// Vtable index: 12 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_connectWithTimeout___java_io_FileDescriptor_int_int_java_net_InetAddress_int_int_java_lang_Long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_OBJECT n4, JAVA_INT n5, JAVA_INT n6, JAVA_OBJECT n7); +// Vtable index: 14 +void org_apache_harmony_luni_platform_OSNetworkSystem_createDatagramSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 15 +void org_apache_harmony_luni_platform_OSNetworkSystem_createServerStreamSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 16 +void org_apache_harmony_luni_platform_OSNetworkSystem_createStreamSocket___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 17 +void org_apache_harmony_luni_platform_OSNetworkSystem_disconnectDatagram___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 18 +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getHostByAddr___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 19 +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getHostByName___java_lang_String_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 20 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketFlags__(JAVA_OBJECT me); +// Vtable index: 21 +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalAddress___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 22 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketLocalPort___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 23 +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_getSocketOption___java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 24 +JAVA_OBJECT org_apache_harmony_luni_platform_OSNetworkSystem_inheritedChannel__(JAVA_OBJECT me); +// Vtable index: 25 +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMP___java_net_InetAddress_java_net_InetAddress_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_isReachableByICMPImpl___java_net_InetAddress_java_net_InetAddress_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 26 +void org_apache_harmony_luni_platform_OSNetworkSystem_listenStreamSocket___java_io_FileDescriptor_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2); +// Vtable index: 27 +void org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitialization___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +void org_apache_harmony_luni_platform_OSNetworkSystem_oneTimeInitializationImpl___boolean(JAVA_OBJECT me, JAVA_BOOLEAN n1); +// Vtable index: 28 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_peekDatagram___java_io_FileDescriptor_java_net_InetAddress_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3); +// Vtable index: 30 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_read___java_io_FileDescriptor_byte_1ARRAY_int_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5); +// Vtable index: 29 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_readDirect___java_io_FileDescriptor_long_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 32 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7); +// Vtable index: 31 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7); +// Vtable index: 33 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_receiveStream___java_io_FileDescriptor_byte_1ARRAY_int_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5); +// Vtable index: 35 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagram___java_io_FileDescriptor_java_net_DatagramPacket_byte_1ARRAY_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7); +// Vtable index: 34 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_recvConnectedDatagramDirect___java_io_FileDescriptor_java_net_DatagramPacket_long_int_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_LONG n3, JAVA_INT n4, JAVA_INT n5, JAVA_INT n6, JAVA_BOOLEAN n7); +// Vtable index: 36 +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_select___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_long_int_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_LONG n5, JAVA_OBJECT n6); +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_selectImpl___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int_int_1ARRAY_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_OBJECT n5, JAVA_LONG n6); +// Vtable index: 38 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_BOOLEAN n5); +// Vtable index: 37 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendConnectedDatagramDirect___java_io_FileDescriptor_long_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4, JAVA_BOOLEAN n5); +// Vtable index: 41 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram___java_io_FileDescriptor_byte_1ARRAY_int_int_int_boolean_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_BOOLEAN n6, JAVA_INT n7, JAVA_OBJECT n8); +// Vtable index: 39 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagram2___java_io_FileDescriptor_byte_1ARRAY_int_int_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_OBJECT n6); +// Vtable index: 40 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_sendDatagramDirect___java_io_FileDescriptor_long_int_int_int_boolean_int_java_net_InetAddress(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3, JAVA_INT n4, JAVA_INT n5, JAVA_BOOLEAN n6, JAVA_INT n7, JAVA_OBJECT n8); +// Vtable index: 42 +void org_apache_harmony_luni_platform_OSNetworkSystem_sendUrgentData___java_io_FileDescriptor_byte(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BYTE n2); +// Vtable index: 43 +void org_apache_harmony_luni_platform_OSNetworkSystem_setInetAddress___java_net_InetAddress_byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 44 +void org_apache_harmony_luni_platform_OSNetworkSystem_setNonBlocking___java_io_FileDescriptor_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_BOOLEAN n2); +// Vtable index: 45 +void org_apache_harmony_luni_platform_OSNetworkSystem_setSocketOption___java_io_FileDescriptor_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3); +// Vtable index: 46 +void org_apache_harmony_luni_platform_OSNetworkSystem_shutdownInput___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 47 +void org_apache_harmony_luni_platform_OSNetworkSystem_shutdownOutput___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 48 +void org_apache_harmony_luni_platform_OSNetworkSystem_socketClose___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 49 +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_supportsUrgentData___java_io_FileDescriptor(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_validateFDs___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_BOOLEAN org_apache_harmony_luni_platform_OSNetworkSystem_validateFDs___java_io_FileDescriptor_1ARRAY_java_io_FileDescriptor_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 51 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_write___java_io_FileDescriptor_byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +// Vtable index: 50 +JAVA_INT org_apache_harmony_luni_platform_OSNetworkSystem_writeDirect___java_io_FileDescriptor_long_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2, JAVA_INT n3); +// Vtable index: 52 +JAVA_LONG org_apache_harmony_luni_platform_OSNetworkSystem_writev___java_io_FileDescriptor_java_lang_Object_1ARRAY_int_1ARRAY_int_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4, JAVA_INT n5); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.c b/tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.c new file mode 100644 index 0000000000000..42fd6b27aa447 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.c @@ -0,0 +1,903 @@ +#include "xmlvm.h" +#include "java_lang_Integer.h" +#include "java_lang_Math.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "org_apache_harmony_luni_util_FloatingPointParser.h" + +#define XMLVM_CURRENT_CLASS_NAME FloatingPointParser +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_util_FloatingPointParser + +__TIB_DEFINITION_org_apache_harmony_luni_util_FloatingPointParser __TIB_org_apache_harmony_luni_util_FloatingPointParser = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_util_FloatingPointParser, // classInitializer + "org.apache.harmony.luni.util.FloatingPointParser", // className + "org.apache.harmony.luni.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_util_FloatingPointParser), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_util_FloatingPointParser() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_util_FloatingPointParser); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_util_FloatingPointParser.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_util_FloatingPointParser.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_util_FloatingPointParser); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_util_FloatingPointParser.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_util_FloatingPointParser.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_util_FloatingPointParser.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.util.FloatingPointParser") + __INIT_IMPL_org_apache_harmony_luni_util_FloatingPointParser(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_util_FloatingPointParser() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_util_FloatingPointParser.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_util_FloatingPointParser; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_util_FloatingPointParser.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_org_apache_harmony_luni_util_FloatingPointParser.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_luni_util_FloatingPointParser.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_apache_harmony_luni_util_FloatingPointParser.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_FloatingPointParser.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_FloatingPointParser.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_util_FloatingPointParser.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_FloatingPointParser.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_FloatingPointParser.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_util_FloatingPointParser.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_FloatingPointParser.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_util_FloatingPointParser = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_util_FloatingPointParser); + __TIB_org_apache_harmony_luni_util_FloatingPointParser.clazz = __CLASS_org_apache_harmony_luni_util_FloatingPointParser; + __TIB_org_apache_harmony_luni_util_FloatingPointParser.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_util_FloatingPointParser_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_FloatingPointParser); + __CLASS_org_apache_harmony_luni_util_FloatingPointParser_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_FloatingPointParser_1ARRAY); + __CLASS_org_apache_harmony_luni_util_FloatingPointParser_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_FloatingPointParser_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_util_FloatingPointParser] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_util_FloatingPointParser.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_util_FloatingPointParser(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_util_FloatingPointParser] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_FloatingPointParser(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_FloatingPointParser] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_FloatingPointParser() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_util_FloatingPointParser) +org_apache_harmony_luni_util_FloatingPointParser* me = (org_apache_harmony_luni_util_FloatingPointParser*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_util_FloatingPointParser)); + me->tib = &__TIB_org_apache_harmony_luni_util_FloatingPointParser; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_FloatingPointParser(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_util_FloatingPointParser] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_FloatingPointParser() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_apache_harmony_luni_util_FloatingPointParser(); + org_apache_harmony_luni_util_FloatingPointParser___INIT___(me); + return me; +} + +void org_apache_harmony_luni_util_FloatingPointParser___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_FloatingPointParser___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.FloatingPointParser", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 25) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_DOUBLE org_apache_harmony_luni_util_FloatingPointParser_parseDblImpl___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_FLOAT org_apache_harmony_luni_util_FloatingPointParser_parseFltImpl___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2)] + +JAVA_OBJECT org_apache_harmony_luni_util_FloatingPointParser_initialParse___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_FloatingPointParser) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_FloatingPointParser_initialParse___java_lang_String_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.FloatingPointParser", "initialParse", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + volatile XMLVMElem _r12; + volatile XMLVMElem _r13; + _r12.o = n1; + _r13.i = n2; + _r6.i = 43; + _r5.i = -1; + _r10.i = -359; + _r9.i = 0; + _r8.i = 1; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 95) + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 101) + if (_r13.i != 0) goto label15; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 102) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label15:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 104) + _r0.i = _r13.i - _r8.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r0.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 105) + _r1.i = 68; + if (_r0.i == _r1.i) goto label37; + _r1.i = 100; + if (_r0.i == _r1.i) goto label37; + _r1.i = 70; + if (_r0.i == _r1.i) goto label37; + _r1.i = 102; + if (_r0.i != _r1.i) goto label47; + label37:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 106) + _r0.i = _r13.i + -1; + if (_r0.i != 0) goto label48; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 107) + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 108) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label47:; + _r0 = _r13; + label48:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 111) + _r1.i = 69; + XMLVM_CHECK_NPE(12) + _r1.i = java_lang_String_indexOf___int(_r12.o, _r1.i); + _r2.i = 101; + XMLVM_CHECK_NPE(12) + _r2.i = java_lang_String_indexOf___int(_r12.o, _r2.i); + _r1.i = java_lang_Math_max___int_int(_r1.i, _r2.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 112) + if (_r1.i <= _r5.i) goto label128; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 113) + _r2.i = _r1.i + 1; + if (_r2.i != _r0.i) goto label76; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 114) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label76:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 116) + _r2.i = _r1.i + 1; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 117) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r2.i); + if (_r3.i != _r6.i) goto label102; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 118) + _r3.i = _r2.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r3.i); + _r4.i = 45; + if (_r3.i != _r4.i) goto label100; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 119) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label100:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 121) + _r2.i = _r2.i + 1; + label102:; + XMLVM_TRY_BEGIN(w2089aaab3b1c74) + // Begin try + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 124) + XMLVM_CHECK_NPE(12) + _r2.o = java_lang_String_substring___int_int(_r12.o, _r2.i, _r0.i); + _r2.i = java_lang_Integer_parseInt___java_lang_String(_r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w2089aaab3b1c74) + XMLVM_CATCH_END(w2089aaab3b1c74) + XMLVM_RESTORE_EXCEPTION_ENV(w2089aaab3b1c74) + _r11 = _r2; + _r2 = _r1; + _r1 = _r11; + label113:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 136) + if (_r0.i != 0) goto label131; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 137) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label121:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 130) + java_lang_Thread* curThread_w2089aaab3b1c87 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w2089aaab3b1c87->fields.java_lang_Thread.xmlvmException_; + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label128:; + _r1 = _r9; + _r2 = _r0; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 134) + goto label113; + label131:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 139) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r9.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 140) + _r4.i = 45; + if (_r3.i != _r4.i) goto label154; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 141) + _r3.i = _r9.i + 1; + _r0.i = _r0.i + -1; + _r4 = _r0; + _r0 = _r3; + _r3 = _r8; + label146:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 143) + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 148) + if (_r4.i != 0) goto label164; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 149) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label154:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 144) + if (_r3.i != _r6.i) goto label298; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 145) + _r3.i = _r9.i + 1; + _r0.i = _r0.i + -1; + _r4 = _r0; + _r0 = _r3; + _r3 = _r9; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 146) + goto label146; + label164:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 151) + _r4.i = 46; + XMLVM_CHECK_NPE(12) + _r4.i = java_lang_String_indexOf___int(_r12.o, _r4.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 152) + if (_r4.i <= _r5.i) goto label218; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 153) + _r5.i = _r2.i - _r4.i; + _r5.i = _r5.i - _r8.i; + _r1.i = _r1.i - _r5.i; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 154) + _r5.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(12) + _r0.o = java_lang_String_substring___int_int(_r12.o, _r0.i, _r4.i); + _r0.o = java_lang_String_valueOf___java_lang_Object(_r0.o); + XMLVM_CHECK_NPE(5) + java_lang_StringBuilder___INIT____java_lang_String(_r5.o, _r0.o); + _r0.i = _r4.i + 1; + XMLVM_CHECK_NPE(12) + _r0.o = java_lang_String_substring___int_int(_r12.o, _r0.i, _r2.i); + XMLVM_CHECK_NPE(5) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r5.o, _r0.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + _r11 = _r1; + _r1 = _r0; + _r0 = _r11; + label206:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 159) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + if (_r2.i != 0) goto label226; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 160) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label218:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 156) + XMLVM_CHECK_NPE(12) + _r0.o = java_lang_String_substring___int_int(_r12.o, _r0.i, _r2.i); + _r11 = _r1; + _r1 = _r0; + _r0 = _r11; + goto label206; + label226:; + _r4 = _r2; + label227:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 163) + if (_r4.i <= _r8.i) goto label239; + _r5.i = _r4.i - _r8.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(1) + _r5.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r1.o)->tib->vtable[6])(_r1.o, _r5.i); + _r6.i = 48; + if (_r5.i == _r6.i) goto label292; + label239:; + _r5 = _r9; + label240:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 167) + _r6.i = _r4.i - _r8.i; + if (_r5.i >= _r6.i) goto label252; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(1) + _r6.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r1.o)->tib->vtable[6])(_r1.o, _r5.i); + _r7.i = 48; + if (_r6.i == _r7.i) goto label295; + label252:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 170) + if (_r4.i != _r2.i) goto label256; + if (_r5.i == 0) goto label262; + label256:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 171) + _r2.i = _r2.i - _r4.i; + _r0.i = _r0.i + _r2.i; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 172) + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_String_substring___int_int(_r1.o, _r5.i, _r4.i); + label262:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 179) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(1) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 180) + _r4.i = 52; + if (_r2.i <= _r4.i) goto label286; + if (_r0.i >= _r10.i) goto label286; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 181) + _r4.i = _r10.i - _r0.i; + _r5.i = _r2.i - _r8.i; + _r4.i = java_lang_Math_min___int_int(_r4.i, _r5.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 182) + _r2.i = _r2.i - _r4.i; + XMLVM_CHECK_NPE(1) + _r1.o = java_lang_String_substring___int_int(_r1.o, _r9.i, _r2.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 183) + _r0.i = _r0.i + _r4.i; + label286:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 186) + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r2.o; + label292:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 164) + _r4.i = _r4.i + -1; + goto label227; + label295:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 168) + _r5.i = _r5.i + 1; + goto label240; + label298:; + _r3 = _r9; + _r4 = _r0; + _r0 = _r9; + goto label146; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE org_apache_harmony_luni_util_FloatingPointParser_parseDblName___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_FloatingPointParser) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_FloatingPointParser_parseDblName___java_lang_String_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.FloatingPointParser", "parseDblName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r8.o = n1; + _r9.i = n2; + _r5.i = 8; + _r7.i = 3; + _r2.i = 1; + _r1.i = 0; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 195) + if (_r9.i == _r7.i) goto label22; + _r0.i = 4; + if (_r9.i == _r0.i) goto label22; + if (_r9.i == _r5.i) goto label22; + _r0.i = 9; + if (_r9.i == _r0.i) goto label22; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 196) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 201) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(8) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r8.o)->tib->vtable[6])(_r8.o, _r1.i); + switch (_r0.i) { + case 43: goto label72; + case 45: goto label46; + } + _r2 = _r1; + _r6 = _r1; + label31:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 209) + // "Infinity" + _r3.o = xmlvm_create_java_string_from_pool(9); + _r0 = _r8; + _r4 = _r1; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_regionMatches___boolean_int_java_lang_String_int_int(_r0.o, _r1.i, _r2.i, _r3.o, _r4.i, _r5.i); + if (_r0.i == 0) goto label52; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 210) + if (_r6.i == 0) goto label49; + _r0.d = -Infinity; + label45:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 215) + XMLVM_EXIT_METHOD() + return _r0.d; + label46:; + _r0 = _r2; + label47:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 203) + _r6 = _r0; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 205) + goto label31; + label49:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 211) + _r0.d = Infinity; + goto label45; + label52:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 214) + // "NaN" + _r3.o = xmlvm_create_java_string_from_pool(8); + _r0 = _r8; + _r4 = _r1; + _r5 = _r7; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_regionMatches___boolean_int_java_lang_String_int_int(_r0.o, _r1.i, _r2.i, _r3.o, _r4.i, _r5.i); + if (_r0.i == 0) goto label66; + _r0.d = NaN; + goto label45; + label66:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 218) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label72:; + _r0 = _r1; + goto label47; + label74:; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT org_apache_harmony_luni_util_FloatingPointParser_parseFltName___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_FloatingPointParser) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_FloatingPointParser_parseFltName___java_lang_String_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.FloatingPointParser", "parseFltName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + _r8.o = n1; + _r9.i = n2; + _r5.i = 8; + _r7.i = 3; + _r2.i = 1; + _r1.i = 0; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 227) + if (_r9.i == _r7.i) goto label22; + _r0.i = 4; + if (_r9.i == _r0.i) goto label22; + if (_r9.i == _r5.i) goto label22; + _r0.i = 9; + if (_r9.i == _r0.i) goto label22; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 228) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label22:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 233) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(8) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r8.o)->tib->vtable[6])(_r8.o, _r1.i); + switch (_r0.i) { + case 43: goto label72; + case 45: goto label46; + } + _r2 = _r1; + _r6 = _r1; + label31:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 241) + // "Infinity" + _r3.o = xmlvm_create_java_string_from_pool(9); + _r0 = _r8; + _r4 = _r1; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_regionMatches___boolean_int_java_lang_String_int_int(_r0.o, _r1.i, _r2.i, _r3.o, _r4.i, _r5.i); + if (_r0.i == 0) goto label52; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 242) + if (_r6.i == 0) goto label49; + _r0.f = -Infinity; + label45:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 246) + XMLVM_EXIT_METHOD() + return _r0.f; + label46:; + _r0 = _r2; + label47:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 235) + _r6 = _r0; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 237) + goto label31; + label49:; + _r0.f = Infinity; + goto label45; + label52:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 245) + // "NaN" + _r3.o = xmlvm_create_java_string_from_pool(8); + _r0 = _r8; + _r4 = _r1; + _r5 = _r7; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_regionMatches___boolean_int_java_lang_String_int_int(_r0.o, _r1.i, _r2.i, _r3.o, _r4.i, _r5.i); + if (_r0.i == 0) goto label66; + _r0.f = NaN; + goto label45; + label66:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 249) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r0.o) + label72:; + _r0 = _r1; + goto label47; + label74:; + //XMLVM_END_WRAPPER +} + +JAVA_DOUBLE org_apache_harmony_luni_util_FloatingPointParser_parseDouble___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_FloatingPointParser) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_FloatingPointParser_parseDouble___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.FloatingPointParser", "parseDouble", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = n1; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 263) + XMLVM_CHECK_NPE(4) + _r0.o = java_lang_String_trim__(_r4.o); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 264) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 266) + if (_r1.i != 0) goto label16; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 267) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label16:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 271) + _r2.i = 1; + _r2.i = _r1.i - _r2.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 272) + _r3.i = 121; + if (_r2.i == _r3.i) goto label31; + _r3.i = 78; + if (_r2.i != _r3.i) goto label36; + label31:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 273) + _r0.d = org_apache_harmony_luni_util_FloatingPointParser_parseDblName___java_lang_String_int(_r0.o, _r1.i); + label35:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 287) + XMLVM_EXIT_METHOD() + return _r0.d; + label36:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 277) + XMLVM_CHECK_NPE(0) + _r2.o = java_lang_String_toLowerCase__(_r0.o); + // "0x" + _r3.o = xmlvm_create_java_string_from_pool(16); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___java_lang_String(_r2.o, _r3.o); + _r3.i = -1; + if (_r2.i == _r3.i) goto label54; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 278) + + + // Red class access removed: org.apache.harmony.luni.util.HexStringParser::parseDouble + XMLVM_RED_CLASS_DEPENDENCY(); + goto label35; + label54:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 281) + _r0.o = org_apache_harmony_luni_util_FloatingPointParser_initialParse___java_lang_String_int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 283) + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair,java.lang.String::s + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair,int::e + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.d = org_apache_harmony_luni_util_FloatingPointParser_parseDblImpl___java_lang_String_int(_r1.o, _r2.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 284) + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair,boolean::negative + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i == 0) goto label72; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 285) + _r0.d = -_r1.d; + goto label35; + label72:; + _r0 = _r1; + goto label35; + //XMLVM_END_WRAPPER +} + +JAVA_FLOAT org_apache_harmony_luni_util_FloatingPointParser_parseFloat___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_FloatingPointParser) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_FloatingPointParser_parseFloat___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.FloatingPointParser", "parseFloat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = n1; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 301) + XMLVM_CHECK_NPE(4) + _r0.o = java_lang_String_trim__(_r4.o); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 302) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(0) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r0.o)->tib->vtable[8])(_r0.o); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 304) + if (_r1.i != 0) goto label16; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 305) + + + // Red class access removed: java.lang.NumberFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.NumberFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r1.o) + label16:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 309) + _r2.i = 1; + _r2.i = _r1.i - _r2.i; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(0) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 310) + _r3.i = 121; + if (_r2.i == _r3.i) goto label31; + _r3.i = 78; + if (_r2.i != _r3.i) goto label36; + label31:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 311) + _r0.f = org_apache_harmony_luni_util_FloatingPointParser_parseFltName___java_lang_String_int(_r0.o, _r1.i); + label35:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 325) + XMLVM_EXIT_METHOD() + return _r0.f; + label36:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 315) + XMLVM_CHECK_NPE(0) + _r2.o = java_lang_String_toLowerCase__(_r0.o); + // "0x" + _r3.o = xmlvm_create_java_string_from_pool(16); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___java_lang_String(_r2.o, _r3.o); + _r3.i = -1; + if (_r2.i == _r3.i) goto label54; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 316) + + + // Red class access removed: org.apache.harmony.luni.util.HexStringParser::parseFloat + XMLVM_RED_CLASS_DEPENDENCY(); + goto label35; + label54:; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 319) + _r0.o = org_apache_harmony_luni_util_FloatingPointParser_initialParse___java_lang_String_int(_r0.o, _r1.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 321) + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair,java.lang.String::s + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair,int::e + XMLVM_RED_CLASS_DEPENDENCY(); + _r1.f = org_apache_harmony_luni_util_FloatingPointParser_parseFltImpl___java_lang_String_int(_r1.o, _r2.i); + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 322) + + + // Red class access removed: org.apache.harmony.luni.util.FloatingPointParser$StringExponentPair,boolean::negative + XMLVM_RED_CLASS_DEPENDENCY(); + if (_r0.i == 0) goto label72; + XMLVM_SOURCE_POSITION("FloatingPointParser.java", 323) + _r0.f = -_r1.f; + goto label35; + label72:; + _r0 = _r1; + goto label35; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.h b/tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.h new file mode 100644 index 0000000000000..a68309797435f --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_FloatingPointParser.h @@ -0,0 +1,74 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_UTIL_FLOATINGPOINTPARSER__ +#define __ORG_APACHE_HARMONY_LUNI_UTIL_FLOATINGPOINTPARSER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_FloatingPointParser 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Math +#define XMLVM_FORWARD_DECL_java_lang_Math +XMLVM_FORWARD_DECL(java_lang_Math) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for org.apache.harmony.luni.util.FloatingPointParser +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_util_FloatingPointParser, 6, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_FloatingPointParser) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_FloatingPointParser_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_FloatingPointParser +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_util_FloatingPointParser \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_FloatingPointParser \ + } org_apache_harmony_luni_util_FloatingPointParser + +struct org_apache_harmony_luni_util_FloatingPointParser { + __TIB_DEFINITION_org_apache_harmony_luni_util_FloatingPointParser* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_util_FloatingPointParser; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_FloatingPointParser +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_FloatingPointParser +typedef struct org_apache_harmony_luni_util_FloatingPointParser org_apache_harmony_luni_util_FloatingPointParser; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_util_FloatingPointParser 6 + +void __INIT_org_apache_harmony_luni_util_FloatingPointParser(); +void __INIT_IMPL_org_apache_harmony_luni_util_FloatingPointParser(); +void __DELETE_org_apache_harmony_luni_util_FloatingPointParser(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_FloatingPointParser(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_FloatingPointParser(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_FloatingPointParser(); +void org_apache_harmony_luni_util_FloatingPointParser___INIT___(JAVA_OBJECT me); +JAVA_DOUBLE org_apache_harmony_luni_util_FloatingPointParser_parseDblImpl___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_FLOAT org_apache_harmony_luni_util_FloatingPointParser_parseFltImpl___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT org_apache_harmony_luni_util_FloatingPointParser_initialParse___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_DOUBLE org_apache_harmony_luni_util_FloatingPointParser_parseDblName___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_FLOAT org_apache_harmony_luni_util_FloatingPointParser_parseFltName___java_lang_String_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_DOUBLE org_apache_harmony_luni_util_FloatingPointParser_parseDouble___java_lang_String(JAVA_OBJECT n1); +JAVA_FLOAT org_apache_harmony_luni_util_FloatingPointParser_parseFloat___java_lang_String(JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.c b/tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.c new file mode 100644 index 0000000000000..6f49e4c06780c --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.c @@ -0,0 +1,1357 @@ +#include "xmlvm.h" +#include "java_lang_Double.h" +#include "java_lang_Float.h" +#include "java_lang_Integer.h" +#include "java_lang_Math.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" + +#include "org_apache_harmony_luni_util_NumberConverter.h" + +#define XMLVM_CURRENT_CLASS_NAME NumberConverter +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_util_NumberConverter + +__TIB_DEFINITION_org_apache_harmony_luni_util_NumberConverter __TIB_org_apache_harmony_luni_util_NumberConverter = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_util_NumberConverter, // classInitializer + "org.apache.harmony.luni.util.NumberConverter", // className + "org.apache.harmony.luni.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_util_NumberConverter), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_DOUBLE _STATIC_org_apache_harmony_luni_util_NumberConverter_invLogOfTenBaseTwo; +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_util_NumberConverter_TEN_TO_THE; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_util_NumberConverter() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_util_NumberConverter); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_util_NumberConverter.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_util_NumberConverter.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_util_NumberConverter); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_util_NumberConverter.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_util_NumberConverter.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_util_NumberConverter.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.util.NumberConverter") + __INIT_IMPL_org_apache_harmony_luni_util_NumberConverter(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_util_NumberConverter() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_util_NumberConverter.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_util_NumberConverter; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_util_NumberConverter.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_org_apache_harmony_luni_util_NumberConverter.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_luni_util_NumberConverter.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_org_apache_harmony_luni_util_NumberConverter_invLogOfTenBaseTwo = 0; + _STATIC_org_apache_harmony_luni_util_NumberConverter_TEN_TO_THE = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_org_apache_harmony_luni_util_NumberConverter.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_NumberConverter.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_NumberConverter.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_util_NumberConverter.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_NumberConverter.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_NumberConverter.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_util_NumberConverter.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_NumberConverter.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_util_NumberConverter = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_util_NumberConverter); + __TIB_org_apache_harmony_luni_util_NumberConverter.clazz = __CLASS_org_apache_harmony_luni_util_NumberConverter; + __TIB_org_apache_harmony_luni_util_NumberConverter.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_util_NumberConverter_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_NumberConverter); + __CLASS_org_apache_harmony_luni_util_NumberConverter_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_NumberConverter_1ARRAY); + __CLASS_org_apache_harmony_luni_util_NumberConverter_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_NumberConverter_2ARRAY); + org_apache_harmony_luni_util_NumberConverter___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_util_NumberConverter] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_util_NumberConverter.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_util_NumberConverter(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_util_NumberConverter] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_NumberConverter(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((org_apache_harmony_luni_util_NumberConverter*) me)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = 0; + ((org_apache_harmony_luni_util_NumberConverter*) me)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_ = 0; + ((org_apache_harmony_luni_util_NumberConverter*) me)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((org_apache_harmony_luni_util_NumberConverter*) me)->fields.org_apache_harmony_luni_util_NumberConverter.firstK_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_NumberConverter] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_NumberConverter() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) +org_apache_harmony_luni_util_NumberConverter* me = (org_apache_harmony_luni_util_NumberConverter*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_util_NumberConverter)); + me->tib = &__TIB_org_apache_harmony_luni_util_NumberConverter; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_NumberConverter(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_util_NumberConverter] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_NumberConverter() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_apache_harmony_luni_util_NumberConverter(); + org_apache_harmony_luni_util_NumberConverter___INIT___(me); + return me; +} + +JAVA_DOUBLE org_apache_harmony_luni_util_NumberConverter_GET_invLogOfTenBaseTwo() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) + return _STATIC_org_apache_harmony_luni_util_NumberConverter_invLogOfTenBaseTwo; +} + +void org_apache_harmony_luni_util_NumberConverter_PUT_invLogOfTenBaseTwo(JAVA_DOUBLE v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) +_STATIC_org_apache_harmony_luni_util_NumberConverter_invLogOfTenBaseTwo = v; +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) + return _STATIC_org_apache_harmony_luni_util_NumberConverter_TEN_TO_THE; +} + +void org_apache_harmony_luni_util_NumberConverter_PUT_TEN_TO_THE(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) +_STATIC_org_apache_harmony_luni_util_NumberConverter_TEN_TO_THE = v; +} + +void org_apache_harmony_luni_util_NumberConverter___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.i = 1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 31) + _r0.d = 2.0; + _r0.d = java_lang_Math_log___double(_r0.d); + XMLVM_SOURCE_POSITION("NumberConverter.java", 32) + _r2.d = 10.0; + _r2.d = java_lang_Math_log___double(_r2.d); + _r0.d = _r0.d / _r2.d; + org_apache_harmony_luni_util_NumberConverter_PUT_invLogOfTenBaseTwo( _r0.d); + XMLVM_SOURCE_POSITION("NumberConverter.java", 34) + _r0.i = 20; + XMLVM_CLASS_INIT(long) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_long, _r0.i); + org_apache_harmony_luni_util_NumberConverter_PUT_TEN_TO_THE( _r0.o); + XMLVM_SOURCE_POSITION("NumberConverter.java", 37) + _r0.o = org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE(); + _r1.i = 0; + _r2.l = 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.l; + _r0 = _r7; + label30:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 38) + _r1.o = org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE(); + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r0.i < _r1.i) goto label36; + XMLVM_SOURCE_POSITION("NumberConverter.java", 21) + XMLVM_EXIT_METHOD() + return; + label36:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 39) + _r1.o = org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE(); + _r2.i = _r0.i - _r7.i; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.l = ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + XMLVM_SOURCE_POSITION("NumberConverter.java", 40) + _r3.o = org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE(); + _r4.l = _r1.l << (0x3f & _r7.l); + _r6.i = 3; + _r1.l = _r1.l << (0x3f & _r6.l); + _r1.l = _r1.l + _r4.l; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.l; + _r0.i = _r0.i + 1; + goto label30; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_util_NumberConverter___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("NumberConverter.java", 21) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("NumberConverter.java", 27) + _r0.i = 64; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_NumberConverter*) _r1.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_ = _r0.o; + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_getConverter__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_getConverter__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "getConverter", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("NumberConverter.java", 45) + _r0.o = __NEW_org_apache_harmony_luni_util_NumberConverter(); + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_NumberConverter___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convert___double(JAVA_DOUBLE n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_convert___double] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "convert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.d = n1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 49) + _r0.o = org_apache_harmony_luni_util_NumberConverter_getConverter__(); + XMLVM_CHECK_NPE(0) + _r0.o = org_apache_harmony_luni_util_NumberConverter_convertD___double(_r0.o, _r1.d); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convert___float(JAVA_FLOAT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_NumberConverter) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_convert___float] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "convert", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.f = n1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 53) + _r0.o = org_apache_harmony_luni_util_NumberConverter_getConverter__(); + XMLVM_CHECK_NPE(0) + _r0.o = org_apache_harmony_luni_util_NumberConverter_convertF___float(_r0.o, _r1.f); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convertD___double(JAVA_OBJECT me, JAVA_DOUBLE n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_convertD___double] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "convertD", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + XMLVMElem _r16; + _r14.o = me; + _r15.d = n1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 57) + _r0.i = 1075; + _r1.l = -9223372036854775808; + _r3.l = 9218868437227405312; + _r5.l = 4503599627370495; + XMLVM_SOURCE_POSITION("NumberConverter.java", 64) + _r7.l = java_lang_Double_doubleToLongBits___double(_r15.d); + XMLVM_SOURCE_POSITION("NumberConverter.java", 66) + _r1.l = _r1.l & _r7.l; + _r9.l = 0; + _r1.i = _r1.l > _r9.l ? 1 : (_r1.l == _r9.l ? 0 : -1); + if (_r1.i != 0) goto label69; + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + _r9 = _r1; + label25:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 68) + _r1.l = _r7.l & _r3.l; + _r3.i = 52; + _r1.l = _r1.l >> (0x3f & _r3.l); + _r4.i = (JAVA_INT) _r1.l; + _r1.l = _r7.l & _r5.l; + _r5.l = 0; + _r3.i = _r1.l > _r5.l ? 1 : (_r1.l == _r5.l ? 0 : -1); + if (_r3.i != 0) goto label73; + XMLVM_SOURCE_POSITION("NumberConverter.java", 71) + _r3.i = 1; + _r5 = _r3; + label41:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 72) + _r3.i = 52; + _r6.i = 2047; + if (_r4.i != _r6.i) goto label79; + XMLVM_SOURCE_POSITION("NumberConverter.java", 74) + XMLVM_SOURCE_POSITION("NumberConverter.java", 75) + if (_r5.i == 0) goto label76; + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r9.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + // "Infinity" + _r1.o = xmlvm_create_java_string_from_pool(9); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + label68:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 106) + XMLVM_EXIT_METHOD() + return _r0.o; + label69:; + // "-" + _r1.o = xmlvm_create_java_string_from_pool(92); + _r9 = _r1; + goto label25; + label73:; + _r3.i = 0; + _r5 = _r3; + goto label41; + label76:; + // "NaN" + _r0.o = xmlvm_create_java_string_from_pool(8); + goto label68; + label79:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 76) + if (_r4.i != 0) goto label229; + XMLVM_SOURCE_POSITION("NumberConverter.java", 77) + if (_r5.i == 0) goto label103; + XMLVM_SOURCE_POSITION("NumberConverter.java", 78) + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r9.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + // "0.0" + _r1.o = xmlvm_create_java_string_from_pool(93); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label68; + label103:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 79) + _r6.l = 1; + _r6.i = _r1.l > _r6.l ? 1 : (_r1.l == _r6.l ? 0 : -1); + if (_r6.i != 0) goto label129; + XMLVM_SOURCE_POSITION("NumberConverter.java", 82) + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r9.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + // "4.9E-324" + _r1.o = xmlvm_create_java_string_from_pool(94); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label68; + label129:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 83) + _r6.i = 1; + _r0.i = _r6.i - _r0.i; + _r6 = _r1; + label133:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 85) + _r10.l = 4503599627370496; + _r10.l = _r10.l & _r6.l; + _r12.l = 0; + _r8.i = _r10.l > _r12.l ? 1 : (_r10.l == _r12.l ? 0 : -1); + if (_r8.i == 0) goto label224; + _r6 = _r3; + _r3 = _r0; + label144:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 96) + _r0.i = -59; + if (_r0.i >= _r3.i) goto label151; + _r0.i = 6; + if (_r3.i < _r0.i) goto label157; + label151:; + _r0.i = -59; + if (_r3.i != _r0.i) goto label240; + if (_r5.i != 0) goto label240; + label157:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 97) + if (_r4.i != 0) goto label237; + _r0.i = 1; + _r4 = _r0; + label161:; + _r0 = _r14; + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_NumberConverter_longDigitGenerator___long_int_boolean_boolean_int(_r0.o, _r1.l, _r3.i, _r4.i, _r5.i, _r6.i); + label165:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 102) + _r0.d = 1.0E7; + _r0.i = _r15.d > _r0.d ? 1 : (_r15.d == _r0.d ? 0 : -1); + if (_r0.i >= 0) goto label201; + _r0.d = -1.0E7; + _r0.i = _r15.d > _r0.d ? 1 : (_r15.d == _r0.d ? 0 : -1); + if (_r0.i <= 0) goto label201; + XMLVM_SOURCE_POSITION("NumberConverter.java", 103) + _r0.d = -0.001; + _r0.i = _r15.d > _r0.d ? 1 : (_r15.d == _r0.d ? 0 : -1); + if (_r0.i <= 0) goto label252; + _r0.d = 0.001; + _r0.i = _r15.d > _r0.d ? 1 : (_r15.d == _r0.d ? 0 : -1); + if (_r0.i >= 0) goto label252; + label201:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 104) + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r9.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(14) + _r1.o = org_apache_harmony_luni_util_NumberConverter_freeFormatExponential__(_r14.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label68; + label224:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 86) + _r8.i = 1; + _r6.l = _r6.l << (0x3f & _r8.l); + _r3.i = _r3.i + -1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 87) + goto label133; + label229:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 92) + _r6.l = 4503599627370496; + _r1.l = _r1.l | _r6.l; + _r0.i = _r4.i - _r0.i; + _r6 = _r3; + _r3 = _r0; + XMLVM_SOURCE_POSITION("NumberConverter.java", 93) + goto label144; + label237:; + _r0.i = 0; + _r4 = _r0; + goto label161; + label240:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 99) + if (_r4.i != 0) goto label249; + _r0.i = 1; + _r4 = _r0; + label244:; + _r0 = _r14; + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_NumberConverter_bigIntDigitGeneratorInstImpl___long_int_boolean_boolean_int(_r0.o, _r1.l, _r3.i, _r4.i, _r5.i, _r6.i); + goto label165; + label249:; + _r0.i = 0; + _r4 = _r0; + goto label244; + label252:; + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r9.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(14) + _r1.o = org_apache_harmony_luni_util_NumberConverter_freeFormat__(_r14.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label68; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convertF___float(JAVA_OBJECT me, JAVA_FLOAT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_convertF___float] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "convertF", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + _r12.o = me; + _r13.f = n1; + _r6.i = 8388608; + _r11.i = -59; + _r10.i = 0; + _r9.i = 1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 110) + _r0.i = 150; + _r1.i = -2147483648; + _r2.i = 2139095040; + _r3.i = 8388607; + XMLVM_SOURCE_POSITION("NumberConverter.java", 115) + _r4.i = java_lang_Float_floatToIntBits___float(_r13.f); + XMLVM_SOURCE_POSITION("NumberConverter.java", 117) + _r1.i = _r1.i & _r4.i; + if (_r1.i != 0) goto label62; + // "" + _r1.o = xmlvm_create_java_string_from_pool(21); + _r7 = _r1; + label25:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 119) + _r1.i = _r4.i & _r2.i; + _r8.i = _r1.i >> 23; + _r1.i = _r4.i & _r3.i; + if (_r1.i != 0) goto label66; + XMLVM_SOURCE_POSITION("NumberConverter.java", 122) + _r5 = _r9; + label34:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 123) + _r2.i = 23; + _r3.i = 255; + if (_r8.i != _r3.i) goto label71; + XMLVM_SOURCE_POSITION("NumberConverter.java", 125) + XMLVM_SOURCE_POSITION("NumberConverter.java", 126) + if (_r5.i == 0) goto label68; + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r7.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + // "Infinity" + _r1.o = xmlvm_create_java_string_from_pool(9); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + label61:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 156) + XMLVM_EXIT_METHOD() + return _r0.o; + label62:; + // "-" + _r1.o = xmlvm_create_java_string_from_pool(92); + _r7 = _r1; + goto label25; + label66:; + _r5 = _r10; + goto label34; + label68:; + // "NaN" + _r0.o = xmlvm_create_java_string_from_pool(8); + goto label61; + label71:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 127) + if (_r8.i != 0) goto label187; + XMLVM_SOURCE_POSITION("NumberConverter.java", 128) + if (_r5.i == 0) goto label95; + XMLVM_SOURCE_POSITION("NumberConverter.java", 129) + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r7.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + // "0.0" + _r1.o = xmlvm_create_java_string_from_pool(93); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label61; + label95:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 130) + _r0.i = _r9.i - _r0.i; + _r3.i = 8; + if (_r1.i >= _r3.i) goto label105; + XMLVM_SOURCE_POSITION("NumberConverter.java", 131) + XMLVM_SOURCE_POSITION("NumberConverter.java", 132) + _r1.i = _r1.i << 2; + _r0.i = _r0.i + -2; + label105:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 133) + _r3 = _r2; + _r2 = _r1; + label107:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 136) + _r4.i = _r2.i & _r6.i; + if (_r4.i == 0) goto label182; + _r6 = _r3; + _r3 = _r0; + _r0 = _r1; + label114:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 147) + if (_r11.i >= _r3.i) goto label120; + _r1.i = 35; + if (_r3.i < _r1.i) goto label124; + label120:; + if (_r3.i != _r11.i) goto label196; + if (_r5.i != 0) goto label196; + label124:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 148) + _r1.l = (JAVA_LONG) _r0.i; + if (_r8.i != 0) goto label194; + _r4 = _r9; + label128:; + _r0 = _r12; + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_NumberConverter_longDigitGenerator___long_int_boolean_boolean_int(_r0.o, _r1.l, _r3.i, _r4.i, _r5.i, _r6.i); + label132:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 152) + _r0.f = 1.0E7; + _r0.i = _r13.f > _r0.f ? 1 : (_r13.f == _r0.f ? 0 : -1); + if (_r0.i >= 0) goto label160; + _r0.f = -1.0E7; + _r0.i = _r13.f > _r0.f ? 1 : (_r13.f == _r0.f ? 0 : -1); + if (_r0.i <= 0) goto label160; + XMLVM_SOURCE_POSITION("NumberConverter.java", 153) + _r0.f = -0.001; + _r0.i = _r13.f > _r0.f ? 1 : (_r13.f == _r0.f ? 0 : -1); + if (_r0.i <= 0) goto label207; + _r0.f = 0.001; + _r0.i = _r13.f > _r0.f ? 1 : (_r13.f == _r0.f ? 0 : -1); + if (_r0.i >= 0) goto label207; + label160:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 154) + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r7.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(12) + _r1.o = org_apache_harmony_luni_util_NumberConverter_freeFormatExponential__(_r12.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label61; + label182:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 137) + _r2.i = _r2.i << 1; + _r3.i = _r3.i + -1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 138) + goto label107; + label187:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 143) + _r1.i = _r1.i | _r6.i; + _r0.i = _r8.i - _r0.i; + _r6 = _r2; + _r3 = _r0; + _r0 = _r1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 144) + goto label114; + label194:; + _r4 = _r10; + goto label128; + label196:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 150) + _r1.l = (JAVA_LONG) _r0.i; + if (_r8.i != 0) goto label205; + _r4 = _r9; + label200:; + _r0 = _r12; + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_NumberConverter_bigIntDigitGeneratorInstImpl___long_int_boolean_boolean_int(_r0.o, _r1.l, _r3.i, _r4.i, _r5.i, _r6.i); + goto label132; + label205:; + _r4 = _r10; + goto label200; + label207:; + _r0.o = __NEW_java_lang_StringBuilder(); + _r1.o = java_lang_String_valueOf___java_lang_Object(_r7.o); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____java_lang_String(_r0.o, _r1.o); + XMLVM_CHECK_NPE(12) + _r1.o = org_apache_harmony_luni_util_NumberConverter_freeFormat__(_r12.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + goto label61; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_freeFormatExponential__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_freeFormatExponential__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "freeFormatExponential", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + _r10.o = me; + _r9.i = 1; + _r8.i = 0; + XMLVM_SOURCE_POSITION("NumberConverter.java", 161) + _r0.i = 25; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("NumberConverter.java", 162) + XMLVM_CHECK_NPE(10) + _r1.o = ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(10) + _r2.i = ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_; + _r3.i = _r2.i + 1; + XMLVM_CHECK_NPE(10) + ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_ = _r3.i; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r2.i); + _r1.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i]; + _r1.i = _r1.i + 48; + _r1.i = _r1.i & 0xffff; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r8.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r1.i; + XMLVM_SOURCE_POSITION("NumberConverter.java", 163) + _r1.i = 46; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r9.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r1.i; + XMLVM_SOURCE_POSITION("NumberConverter.java", 166) + _r1.i = 2; + XMLVM_SOURCE_POSITION("NumberConverter.java", 168) + XMLVM_CHECK_NPE(10) + _r2.i = ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.firstK_; + _r3 = _r1; + _r1 = _r2; + label30:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 169) + XMLVM_SOURCE_POSITION("NumberConverter.java", 171) + _r1.i = _r1.i + -1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 172) + XMLVM_CHECK_NPE(10) + _r4.i = ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_; + XMLVM_CHECK_NPE(10) + _r5.i = ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_; + if (_r4.i < _r5.i) goto label81; + XMLVM_SOURCE_POSITION("NumberConverter.java", 178) + _r4.i = _r2.i - _r9.i; + if (_r1.i != _r4.i) goto label100; + XMLVM_SOURCE_POSITION("NumberConverter.java", 179) + _r1.i = _r3.i + 1; + _r4.i = 48; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.i; + label48:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 180) + _r3.i = _r1.i + 1; + _r4.i = 69; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + XMLVM_SOURCE_POSITION("NumberConverter.java", 181) + _r1.o = __NEW_java_lang_StringBuilder(); + _r4.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(4) + java_lang_String___INIT____char_1ARRAY_int_int(_r4.o, _r0.o, _r8.i, _r3.i); + _r0.o = java_lang_String_valueOf___java_lang_Object(_r4.o); + XMLVM_CHECK_NPE(1) + java_lang_StringBuilder___INIT____java_lang_String(_r1.o, _r0.o); + XMLVM_SOURCE_POSITION("NumberConverter.java", 182) + _r0.o = java_lang_Integer_toString___int(_r2.i); + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r0.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + label81:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 175) + _r4.i = _r3.i + 1; + XMLVM_CHECK_NPE(10) + _r5.o = ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(10) + _r6.i = ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_; + _r7.i = _r6.i + 1; + XMLVM_CHECK_NPE(10) + ((org_apache_harmony_luni_util_NumberConverter*) _r10.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_ = _r7.i; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r6.i); + _r5.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r5.i = _r5.i + 48; + _r5.i = _r5.i & 0xffff; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r5.i; + _r3 = _r4; + XMLVM_SOURCE_POSITION("NumberConverter.java", 170) + goto label30; + label100:; + _r1 = _r3; + goto label48; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_freeFormat__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_freeFormat__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "freeFormat", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r11.o = me; + _r9.i = 46; + _r8.i = 48; + _r7.i = 0; + _r6.i = -1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 187) + _r0.i = 25; + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i); + XMLVM_SOURCE_POSITION("NumberConverter.java", 191) + XMLVM_CHECK_NPE(11) + _r1.i = ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.firstK_; + XMLVM_SOURCE_POSITION("NumberConverter.java", 192) + if (_r1.i >= 0) goto label111; + XMLVM_SOURCE_POSITION("NumberConverter.java", 193) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r8.i; + XMLVM_SOURCE_POSITION("NumberConverter.java", 194) + _r2.i = 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r2.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r9.i; + XMLVM_SOURCE_POSITION("NumberConverter.java", 195) + _r2.i = _r7.i + 2; + _r3.i = _r1.i + 1; + _r10 = _r3; + _r3 = _r2; + _r2 = _r10; + label26:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 196) + if (_r2.i < 0) goto label88; + _r2 = _r3; + label29:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 200) + XMLVM_CHECK_NPE(11) + _r3.o = ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(11) + _r4.i = ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_; + _r5.i = _r4.i + 1; + XMLVM_CHECK_NPE(11) + ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_ = _r5.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r10 = _r3; + _r3 = _r2; + _r2 = _r1; + _r1 = _r10; + label43:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 202) + if (_r1.i == _r6.i) goto label96; + XMLVM_SOURCE_POSITION("NumberConverter.java", 203) + _r4.i = _r3.i + 1; + _r1.i = _r1.i + 48; + _r1.i = _r1.i & 0xffff; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r1.i; + _r1 = _r4; + label53:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 207) + if (_r2.i != 0) goto label60; + XMLVM_SOURCE_POSITION("NumberConverter.java", 208) + _r3.i = _r1.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r9.i; + _r1 = _r3; + label60:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 210) + _r2.i = _r2.i + -1; + XMLVM_SOURCE_POSITION("NumberConverter.java", 211) + XMLVM_CHECK_NPE(11) + _r3.i = ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_; + XMLVM_CHECK_NPE(11) + _r4.i = ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_; + if (_r3.i >= _r4.i) goto label103; + XMLVM_CHECK_NPE(11) + _r3.o = ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(11) + _r4.i = ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_; + _r5.i = _r4.i + 1; + XMLVM_CHECK_NPE(11) + ((org_apache_harmony_luni_util_NumberConverter*) _r11.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_ = _r5.i; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + label78:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 212) + if (_r3.i != _r6.i) goto label105; + if (_r2.i >= _r6.i) goto label105; + XMLVM_SOURCE_POSITION("NumberConverter.java", 213) + _r2.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(2) + java_lang_String___INIT____char_1ARRAY_int_int(_r2.o, _r0.o, _r7.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r2.o; + label88:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 197) + _r4.i = _r3.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r8.i; + _r2.i = _r2.i + 1; + _r3 = _r4; + goto label26; + label96:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 204) + if (_r2.i < _r6.i) goto label109; + XMLVM_SOURCE_POSITION("NumberConverter.java", 205) + _r1.i = _r3.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r3.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r8.i; + goto label53; + label103:; + _r3 = _r6; + goto label78; + label105:; + _r10 = _r3; + _r3 = _r1; + _r1 = _r10; + goto label43; + label109:; + _r1 = _r3; + goto label53; + label111:; + _r2 = _r7; + goto label29; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_apache_harmony_luni_util_NumberConverter_bigIntDigitGeneratorInstImpl___long_int_boolean_boolean_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2, JAVA_BOOLEAN n3, JAVA_BOOLEAN n4, JAVA_INT n5)] + +void org_apache_harmony_luni_util_NumberConverter_longDigitGenerator___long_int_boolean_boolean_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2, JAVA_BOOLEAN n3, JAVA_BOOLEAN n4, JAVA_INT n5) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_NumberConverter_longDigitGenerator___long_int_boolean_boolean_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.NumberConverter", "longDigitGenerator", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + XMLVMElem _r16; + XMLVMElem _r17; + XMLVMElem _r18; + XMLVMElem _r19; + XMLVMElem _r20; + XMLVMElem _r21; + _r15.o = me; + _r16.l = n1; + _r18.i = n2; + _r19.i = n3; + _r20.i = n4; + _r21.i = n5; + XMLVM_SOURCE_POSITION("NumberConverter.java", 222) + if (_r18.i < 0) goto label130; + XMLVM_SOURCE_POSITION("NumberConverter.java", 223) + _r0.l = 1; + _r0.l = _r0.l << (0x3f & _r18.l); + if (_r20.i != 0) goto label120; + XMLVM_SOURCE_POSITION("NumberConverter.java", 224) + XMLVM_SOURCE_POSITION("NumberConverter.java", 225) + _r2.i = _r18.i + 1; + _r2.l = _r16.l << (0x3f & _r2.l); + _r4.l = 2; + _r13 = _r4; + _r4 = _r2; + _r2 = _r13; + label17:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 226) + XMLVM_SOURCE_POSITION("NumberConverter.java", 242) + _r6.i = _r18.i + _r21.i; + _r7.i = 1; + _r6.i = _r6.i - _r7.i; + _r6.d = (JAVA_DOUBLE) _r6.i; + _r8.d = org_apache_harmony_luni_util_NumberConverter_GET_invLogOfTenBaseTwo(); + _r6.d = _r6.d * _r8.d; + _r8.d = 1.0E-10; + _r6.d = _r6.d - _r8.d; + _r6.d = java_lang_Math_ceil___double(_r6.d); + _r6.i = (JAVA_INT) _r6.d; + if (_r6.i <= 0) goto label164; + XMLVM_SOURCE_POSITION("NumberConverter.java", 244) + XMLVM_SOURCE_POSITION("NumberConverter.java", 245) + _r7.o = org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE(); + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i); + _r7.l = ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r2.l = _r2.l * _r7.l; + label43:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 252) + _r7.l = _r4.l + _r0.l; + _r7.i = _r7.l > _r2.l ? 1 : (_r7.l == _r2.l ? 0 : -1); + if (_r7.i <= 0) goto label184; + XMLVM_SOURCE_POSITION("NumberConverter.java", 253) + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.firstK_ = _r6.i; + label51:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 260) + _r6.i = 0; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = _r6.i; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.getCount_ = _r6.i; + XMLVM_SOURCE_POSITION("NumberConverter.java", 263) + _r6.i = 4; + XMLVM_CLASS_INIT(long) + _r6.o = XMLVMArray_createSingleDimension(__CLASS_long, _r6.i); + _r7.i = 0; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r7.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r2.l; + _r7.i = 1; + _r8.i = 1; + _r8.l = _r2.l << (0x3f & _r8.l); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r7.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r8.l; + _r7.i = 2; + _r8.i = 2; + _r8.l = _r2.l << (0x3f & _r8.l); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r7.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r8.l; + _r7.i = 3; + _r8.i = 3; + _r8.l = _r2.l << (0x3f & _r8.l); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r7.i); + ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r8.l; + label80:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 269) + _r7.i = 0; + _r8.i = 3; + _r13 = _r8; + _r14 = _r7; + _r7 = _r4; + _r4 = _r13; + _r5 = _r14; + label87:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 271) + if (_r4.i >= 0) goto label196; + XMLVM_SOURCE_POSITION("NumberConverter.java", 279) + _r4.i = _r7.l > _r0.l ? 1 : (_r7.l == _r0.l ? 0 : -1); + if (_r4.i >= 0) goto label213; + _r4.i = 1; + label94:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 280) + _r9.l = _r7.l + _r0.l; + _r9.i = _r9.l > _r2.l ? 1 : (_r9.l == _r2.l ? 0 : -1); + if (_r9.i <= 0) goto label215; + _r9.i = 1; + label101:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 282) + if (_r4.i != 0) goto label105; + if (_r9.i == 0) goto label217; + label105:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 289) + if (_r4.i == 0) goto label236; + if (_r9.i != 0) goto label236; + XMLVM_SOURCE_POSITION("NumberConverter.java", 290) + XMLVM_CHECK_NPE(15) + _r0.o = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(15) + _r1.i = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + label119:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 297) + XMLVM_EXIT_METHOD() + return; + label120:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 228) + _r2.i = _r18.i + 2; + _r2.l = _r16.l << (0x3f & _r2.l); + _r4.l = 4; + _r13 = _r4; + _r4 = _r2; + _r2 = _r13; + XMLVM_SOURCE_POSITION("NumberConverter.java", 229) + goto label17; + label130:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 232) + _r0.l = 1; + if (_r19.i != 0) goto label136; + XMLVM_SOURCE_POSITION("NumberConverter.java", 233) + if (_r20.i != 0) goto label150; + label136:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 234) + _r2.i = 1; + _r2.l = _r16.l << (0x3f & _r2.l); + _r4.l = 1; + _r6.i = 1; + _r6.i = _r6.i - _r18.i; + _r4.l = _r4.l << (0x3f & _r6.l); + _r13 = _r4; + _r4 = _r2; + _r2 = _r13; + XMLVM_SOURCE_POSITION("NumberConverter.java", 235) + goto label17; + label150:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 237) + _r2.i = 2; + _r2.l = _r16.l << (0x3f & _r2.l); + _r4.l = 1; + _r6.i = 2; + _r6.i = _r6.i - _r18.i; + _r4.l = _r4.l << (0x3f & _r6.l); + _r13 = _r4; + _r4 = _r2; + _r2 = _r13; + XMLVM_SOURCE_POSITION("NumberConverter.java", 238) + goto label17; + label164:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 246) + if (_r6.i >= 0) goto label43; + XMLVM_SOURCE_POSITION("NumberConverter.java", 247) + _r7.o = org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE(); + _r8.i = -_r6.i; + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r8.i); + _r7.l = ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + XMLVM_SOURCE_POSITION("NumberConverter.java", 248) + _r4.l = _r4.l * _r7.l; + _r9.l = 1; + _r9.i = _r0.l > _r9.l ? 1 : (_r0.l == _r9.l ? 0 : -1); + if (_r9.i != 0) goto label181; + XMLVM_SOURCE_POSITION("NumberConverter.java", 249) + _r0 = _r7; + goto label43; + label181:; + _r0.l = _r0.l * _r7.l; + goto label43; + label184:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 255) + _r7.i = 1; + _r6.i = _r6.i - _r7.i; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.firstK_ = _r6.i; + XMLVM_SOURCE_POSITION("NumberConverter.java", 256) + _r6.l = 10; + _r4.l = _r4.l * _r6.l; + _r6.l = 10; + _r0.l = _r0.l * _r6.l; + XMLVM_SOURCE_POSITION("NumberConverter.java", 257) + goto label51; + label196:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 272) + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r4.i); + _r9.l = ((JAVA_ARRAY_LONG*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r9.l = _r7.l - _r9.l; + _r11.l = 0; + _r11.i = _r9.l > _r11.l ? 1 : (_r9.l == _r11.l ? 0 : -1); + if (_r11.i < 0) goto label210; + XMLVM_SOURCE_POSITION("NumberConverter.java", 273) + XMLVM_SOURCE_POSITION("NumberConverter.java", 275) + _r7.i = 1; + _r7.i = _r7.i << _r4.i; + _r5.i = _r5.i + _r7.i; + _r7 = _r9; + label210:; + _r4.i = _r4.i + -1; + goto label87; + label213:; + _r4.i = 0; + goto label94; + label215:; + _r9.i = 0; + goto label101; + label217:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 285) + _r9.l = 10; + _r7.l = _r7.l * _r9.l; + _r9.l = 10; + _r0.l = _r0.l * _r9.l; + XMLVM_SOURCE_POSITION("NumberConverter.java", 287) + XMLVM_CHECK_NPE(15) + _r4.o = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(15) + _r9.i = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_; + _r10.i = _r9.i + 1; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = _r10.i; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r9.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r5.i; + _r4 = _r7; + XMLVM_SOURCE_POSITION("NumberConverter.java", 264) + goto label80; + label236:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 291) + if (_r9.i == 0) goto label254; + if (_r4.i != 0) goto label254; + XMLVM_SOURCE_POSITION("NumberConverter.java", 292) + XMLVM_CHECK_NPE(15) + _r0.o = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(15) + _r1.i = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = _r2.i; + _r2.i = _r5.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + goto label119; + label254:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 293) + _r0.i = 1; + _r0.l = _r7.l << (0x3f & _r0.l); + _r0.i = _r0.l > _r2.l ? 1 : (_r0.l == _r2.l ? 0 : -1); + if (_r0.i >= 0) goto label273; + XMLVM_SOURCE_POSITION("NumberConverter.java", 294) + XMLVM_CHECK_NPE(15) + _r0.o = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(15) + _r1.i = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = _r2.i; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r5.i; + goto label119; + label273:; + XMLVM_SOURCE_POSITION("NumberConverter.java", 296) + XMLVM_CHECK_NPE(15) + _r0.o = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.uArray_; + XMLVM_CHECK_NPE(15) + _r1.i = ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_; + _r2.i = _r1.i + 1; + XMLVM_CHECK_NPE(15) + ((org_apache_harmony_luni_util_NumberConverter*) _r15.o)->fields.org_apache_harmony_luni_util_NumberConverter.setCount_ = _r2.i; + _r2.i = _r5.i + 1; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + goto label119; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.h b/tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.h new file mode 100644 index 0000000000000..8f6643b03b51d --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_NumberConverter.h @@ -0,0 +1,94 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_UTIL_NUMBERCONVERTER__ +#define __ORG_APACHE_HARMONY_LUNI_UTIL_NUMBERCONVERTER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_NumberConverter 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Double +#define XMLVM_FORWARD_DECL_java_lang_Double +XMLVM_FORWARD_DECL(java_lang_Double) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Float +#define XMLVM_FORWARD_DECL_java_lang_Float +XMLVM_FORWARD_DECL(java_lang_Float) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Math +#define XMLVM_FORWARD_DECL_java_lang_Math +XMLVM_FORWARD_DECL(java_lang_Math) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +// Class declarations for org.apache.harmony.luni.util.NumberConverter +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_util_NumberConverter, 6, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_NumberConverter) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_NumberConverter_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_NumberConverter +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_util_NumberConverter \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_INT setCount_; \ + JAVA_INT getCount_; \ + JAVA_OBJECT uArray_; \ + JAVA_INT firstK_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_NumberConverter \ + } org_apache_harmony_luni_util_NumberConverter + +struct org_apache_harmony_luni_util_NumberConverter { + __TIB_DEFINITION_org_apache_harmony_luni_util_NumberConverter* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_util_NumberConverter; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_NumberConverter +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_NumberConverter +typedef struct org_apache_harmony_luni_util_NumberConverter org_apache_harmony_luni_util_NumberConverter; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_util_NumberConverter 6 + +void __INIT_org_apache_harmony_luni_util_NumberConverter(); +void __INIT_IMPL_org_apache_harmony_luni_util_NumberConverter(); +void __DELETE_org_apache_harmony_luni_util_NumberConverter(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_NumberConverter(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_NumberConverter(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_NumberConverter(); +void xmlvm_init_native_org_apache_harmony_luni_util_NumberConverter(); +JAVA_DOUBLE org_apache_harmony_luni_util_NumberConverter_GET_invLogOfTenBaseTwo(); +void org_apache_harmony_luni_util_NumberConverter_PUT_invLogOfTenBaseTwo(JAVA_DOUBLE v); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_GET_TEN_TO_THE(); +void org_apache_harmony_luni_util_NumberConverter_PUT_TEN_TO_THE(JAVA_OBJECT v); +void org_apache_harmony_luni_util_NumberConverter___CLINIT_(); +void org_apache_harmony_luni_util_NumberConverter___INIT___(JAVA_OBJECT me); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_getConverter__(); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convert___double(JAVA_DOUBLE n1); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convert___float(JAVA_FLOAT n1); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convertD___double(JAVA_OBJECT me, JAVA_DOUBLE n1); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_convertF___float(JAVA_OBJECT me, JAVA_FLOAT n1); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_freeFormatExponential__(JAVA_OBJECT me); +JAVA_OBJECT org_apache_harmony_luni_util_NumberConverter_freeFormat__(JAVA_OBJECT me); +void org_apache_harmony_luni_util_NumberConverter_bigIntDigitGeneratorInstImpl___long_int_boolean_boolean_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2, JAVA_BOOLEAN n3, JAVA_BOOLEAN n4, JAVA_INT n5); +void org_apache_harmony_luni_util_NumberConverter_longDigitGenerator___long_int_boolean_boolean_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2, JAVA_BOOLEAN n3, JAVA_BOOLEAN n4, JAVA_INT n5); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_util_PriviAction.c b/tests/nbody-java/org_apache_harmony_luni_util_PriviAction.c new file mode 100644 index 0000000000000..367e3fec97f05 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_PriviAction.c @@ -0,0 +1,420 @@ +#include "xmlvm.h" +#include "java_lang_String.h" +#include "java_lang_System.h" +#include "java_lang_reflect_AccessibleObject.h" + +#include "org_apache_harmony_luni_util_PriviAction.h" + +#define XMLVM_CURRENT_CLASS_NAME PriviAction +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_util_PriviAction + +__TIB_DEFINITION_org_apache_harmony_luni_util_PriviAction __TIB_org_apache_harmony_luni_util_PriviAction = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_util_PriviAction, // classInitializer + "org.apache.harmony.luni.util.PriviAction", // className + "org.apache.harmony.luni.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + "Ljava/lang/Object;Ljava/security/PrivilegedAction;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_util_PriviAction), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_INT _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SYSTEM_PROPERTY; +static JAVA_INT _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_POLICY; +static JAVA_INT _STATIC_org_apache_harmony_luni_util_PriviAction_SET_ACCESSIBLE; +static JAVA_INT _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_PROPERTY; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_util_PriviAction() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_util_PriviAction); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_util_PriviAction.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_util_PriviAction.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_util_PriviAction); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_util_PriviAction.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_util_PriviAction.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_util_PriviAction.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.util.PriviAction") + __INIT_IMPL_org_apache_harmony_luni_util_PriviAction(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_util_PriviAction() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_util_PriviAction.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_util_PriviAction; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_util_PriviAction.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_luni_util_PriviAction.vtable[6] = (VTABLE_PTR) &org_apache_harmony_luni_util_PriviAction_run__; + // Initialize interface information + __TIB_org_apache_harmony_luni_util_PriviAction.numImplementedInterfaces = 1; + __TIB_org_apache_harmony_luni_util_PriviAction.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_security_PrivilegedAction) + + __TIB_org_apache_harmony_luni_util_PriviAction.implementedInterfaces[0][0] = &__TIB_java_security_PrivilegedAction; + // Initialize itable for this class + __TIB_org_apache_harmony_luni_util_PriviAction.itableBegin = &__TIB_org_apache_harmony_luni_util_PriviAction.itable[0]; + __TIB_org_apache_harmony_luni_util_PriviAction.itable[XMLVM_ITABLE_IDX_java_security_PrivilegedAction_run__] = __TIB_org_apache_harmony_luni_util_PriviAction.vtable[6]; + + _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SYSTEM_PROPERTY = 1; + _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_POLICY = 2; + _STATIC_org_apache_harmony_luni_util_PriviAction_SET_ACCESSIBLE = 3; + _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_PROPERTY = 4; + + __TIB_org_apache_harmony_luni_util_PriviAction.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_PriviAction.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_PriviAction.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_util_PriviAction.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_PriviAction.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_PriviAction.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_util_PriviAction.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_PriviAction.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_util_PriviAction = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_util_PriviAction); + __TIB_org_apache_harmony_luni_util_PriviAction.clazz = __CLASS_org_apache_harmony_luni_util_PriviAction; + __TIB_org_apache_harmony_luni_util_PriviAction.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_util_PriviAction_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_PriviAction); + __CLASS_org_apache_harmony_luni_util_PriviAction_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_PriviAction_1ARRAY); + __CLASS_org_apache_harmony_luni_util_PriviAction_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_PriviAction_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_util_PriviAction] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_util_PriviAction.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_util_PriviAction(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_util_PriviAction] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_PriviAction(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((org_apache_harmony_luni_util_PriviAction*) me)->fields.org_apache_harmony_luni_util_PriviAction.arg1_ = (java_lang_Object*) JAVA_NULL; + ((org_apache_harmony_luni_util_PriviAction*) me)->fields.org_apache_harmony_luni_util_PriviAction.arg2_ = (java_lang_Object*) JAVA_NULL; + ((org_apache_harmony_luni_util_PriviAction*) me)->fields.org_apache_harmony_luni_util_PriviAction.action_ = 0; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_PriviAction] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_PriviAction() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) +org_apache_harmony_luni_util_PriviAction* me = (org_apache_harmony_luni_util_PriviAction*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_util_PriviAction)); + me->tib = &__TIB_org_apache_harmony_luni_util_PriviAction; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_PriviAction(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_util_PriviAction] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_PriviAction() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_apache_harmony_luni_util_PriviAction(); + org_apache_harmony_luni_util_PriviAction___INIT___(me); + return me; +} + +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_GET_SYSTEM_PROPERTY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) + return _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SYSTEM_PROPERTY; +} + +void org_apache_harmony_luni_util_PriviAction_PUT_GET_SYSTEM_PROPERTY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) +_STATIC_org_apache_harmony_luni_util_PriviAction_GET_SYSTEM_PROPERTY = v; +} + +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_GET_SECURITY_POLICY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) + return _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_POLICY; +} + +void org_apache_harmony_luni_util_PriviAction_PUT_GET_SECURITY_POLICY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) +_STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_POLICY = v; +} + +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_SET_ACCESSIBLE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) + return _STATIC_org_apache_harmony_luni_util_PriviAction_SET_ACCESSIBLE; +} + +void org_apache_harmony_luni_util_PriviAction_PUT_SET_ACCESSIBLE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) +_STATIC_org_apache_harmony_luni_util_PriviAction_SET_ACCESSIBLE = v; +} + +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_GET_SECURITY_PROPERTY() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) + return _STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_PROPERTY; +} + +void org_apache_harmony_luni_util_PriviAction_PUT_GET_SECURITY_PROPERTY(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) +_STATIC_org_apache_harmony_luni_util_PriviAction_GET_SECURITY_PROPERTY = v; +} + +JAVA_OBJECT org_apache_harmony_luni_util_PriviAction_getSecurityProperty___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_PriviAction) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_PriviAction_getSecurityProperty___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.PriviAction", "getSecurityProperty", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PriviAction.java", 57) + _r0.o = __NEW_org_apache_harmony_luni_util_PriviAction(); + _r1.i = 4; + XMLVM_CHECK_NPE(0) + org_apache_harmony_luni_util_PriviAction___INIT____int_java_lang_Object(_r0.o, _r1.i, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_util_PriviAction___INIT____int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_PriviAction___INIT____int_java_lang_Object] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.PriviAction", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.i = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("PriviAction.java", 60) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("PriviAction.java", 61) + XMLVM_CHECK_NPE(0) + ((org_apache_harmony_luni_util_PriviAction*) _r0.o)->fields.org_apache_harmony_luni_util_PriviAction.action_ = _r1.i; + XMLVM_SOURCE_POSITION("PriviAction.java", 62) + XMLVM_CHECK_NPE(0) + ((org_apache_harmony_luni_util_PriviAction*) _r0.o)->fields.org_apache_harmony_luni_util_PriviAction.arg1_ = _r2.o; + XMLVM_SOURCE_POSITION("PriviAction.java", 63) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_util_PriviAction___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_PriviAction___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.PriviAction", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PriviAction.java", 70) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("PriviAction.java", 71) + _r0.i = 2; + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.action_ = _r0.i; + XMLVM_SOURCE_POSITION("PriviAction.java", 72) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_util_PriviAction___INIT____java_lang_reflect_AccessibleObject(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_PriviAction___INIT____java_lang_reflect_AccessibleObject] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.PriviAction", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PriviAction.java", 84) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("PriviAction.java", 85) + _r0.i = 3; + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.action_ = _r0.i; + XMLVM_SOURCE_POSITION("PriviAction.java", 86) + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg1_ = _r2.o; + XMLVM_SOURCE_POSITION("PriviAction.java", 87) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.PriviAction", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("PriviAction.java", 98) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("PriviAction.java", 99) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.action_ = _r0.i; + XMLVM_SOURCE_POSITION("PriviAction.java", 100) + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg1_ = _r2.o; + XMLVM_SOURCE_POSITION("PriviAction.java", 101) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String_java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.PriviAction", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + XMLVM_SOURCE_POSITION("PriviAction.java", 114) + XMLVM_CHECK_NPE(1) + java_lang_Object___INIT___(_r1.o); + XMLVM_SOURCE_POSITION("PriviAction.java", 115) + _r0.i = 1; + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.action_ = _r0.i; + XMLVM_SOURCE_POSITION("PriviAction.java", 116) + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg1_ = _r2.o; + XMLVM_SOURCE_POSITION("PriviAction.java", 117) + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg2_ = _r3.o; + XMLVM_SOURCE_POSITION("PriviAction.java", 118) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_PriviAction_run__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_PriviAction_run__] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.PriviAction", "run", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("PriviAction.java", 127) + XMLVM_CHECK_NPE(1) + _r0.i = ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.action_; + switch (_r0.i) { + case 1: goto label7; + case 2: goto label29; + case 3: goto label34; + case 4: goto label20; + } + label5:; + XMLVM_SOURCE_POSITION("PriviAction.java", 137) + _r0.o = JAVA_NULL; + label6:; + XMLVM_EXIT_METHOD() + return _r0.o; + label7:; + XMLVM_SOURCE_POSITION("PriviAction.java", 129) + XMLVM_CHECK_NPE(1) + _r0.o = ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg1_; + _r0.o = _r0.o; + XMLVM_CHECK_NPE(1) + _r1.o = ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg2_; + _r1.o = _r1.o; + _r0.o = java_lang_System_getProperty___java_lang_String_java_lang_String(_r0.o, _r1.o); + goto label6; + label20:; + XMLVM_SOURCE_POSITION("PriviAction.java", 131) + XMLVM_CHECK_NPE(1) + _r1.o = ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg1_; + _r1.o = _r1.o; + + + // Red class access removed: java.security.Security::getProperty + XMLVM_RED_CLASS_DEPENDENCY(); + goto label6; + label29:; + XMLVM_SOURCE_POSITION("PriviAction.java", 133) + + + // Red class access removed: java.security.Policy::getPolicy + XMLVM_RED_CLASS_DEPENDENCY(); + goto label6; + label34:; + XMLVM_SOURCE_POSITION("PriviAction.java", 135) + XMLVM_CHECK_NPE(1) + _r1.o = ((org_apache_harmony_luni_util_PriviAction*) _r1.o)->fields.org_apache_harmony_luni_util_PriviAction.arg1_; + _r1.o = _r1.o; + _r0.i = 1; + XMLVM_CHECK_NPE(1) + java_lang_reflect_AccessibleObject_setAccessible___boolean(_r1.o, _r0.i); + goto label5; + label44:; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_util_PriviAction.h b/tests/nbody-java/org_apache_harmony_luni_util_PriviAction.h new file mode 100644 index 0000000000000..a9515a5b75c6e --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_PriviAction.h @@ -0,0 +1,83 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_UTIL_PRIVIACTION__ +#define __ORG_APACHE_HARMONY_LUNI_UTIL_PRIVIACTION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_PriviAction 1 +// Implemented interfaces: +#include "java_security_PrivilegedAction.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_AccessibleObject +#define XMLVM_FORWARD_DECL_java_lang_reflect_AccessibleObject +XMLVM_FORWARD_DECL(java_lang_reflect_AccessibleObject) +#endif +// Class declarations for org.apache.harmony.luni.util.PriviAction +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_util_PriviAction, 7, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_PriviAction) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_PriviAction_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_PriviAction +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_util_PriviAction \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT arg1_; \ + JAVA_OBJECT arg2_; \ + JAVA_INT action_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_PriviAction \ + } org_apache_harmony_luni_util_PriviAction + +struct org_apache_harmony_luni_util_PriviAction { + __TIB_DEFINITION_org_apache_harmony_luni_util_PriviAction* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_util_PriviAction; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_PriviAction +typedef struct org_apache_harmony_luni_util_PriviAction org_apache_harmony_luni_util_PriviAction; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_util_PriviAction 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_luni_util_PriviAction_run__ 6 + +void __INIT_org_apache_harmony_luni_util_PriviAction(); +void __INIT_IMPL_org_apache_harmony_luni_util_PriviAction(); +void __DELETE_org_apache_harmony_luni_util_PriviAction(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_PriviAction(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_PriviAction(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_PriviAction(); +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_GET_SYSTEM_PROPERTY(); +void org_apache_harmony_luni_util_PriviAction_PUT_GET_SYSTEM_PROPERTY(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_GET_SECURITY_POLICY(); +void org_apache_harmony_luni_util_PriviAction_PUT_GET_SECURITY_POLICY(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_SET_ACCESSIBLE(); +void org_apache_harmony_luni_util_PriviAction_PUT_SET_ACCESSIBLE(JAVA_INT v); +JAVA_INT org_apache_harmony_luni_util_PriviAction_GET_GET_SECURITY_PROPERTY(); +void org_apache_harmony_luni_util_PriviAction_PUT_GET_SECURITY_PROPERTY(JAVA_INT v); +JAVA_OBJECT org_apache_harmony_luni_util_PriviAction_getSecurityProperty___java_lang_String(JAVA_OBJECT n1); +void org_apache_harmony_luni_util_PriviAction___INIT____int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2); +void org_apache_harmony_luni_util_PriviAction___INIT___(JAVA_OBJECT me); +void org_apache_harmony_luni_util_PriviAction___INIT____java_lang_reflect_AccessibleObject(JAVA_OBJECT me, JAVA_OBJECT n1); +void org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_OBJECT org_apache_harmony_luni_util_PriviAction_run__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_luni_util_Util.c b/tests/nbody-java/org_apache_harmony_luni_util_Util.c new file mode 100644 index 0000000000000..d6af2bb032120 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_Util.c @@ -0,0 +1,1992 @@ +#include "xmlvm.h" +#include "java_lang_Character.h" +#include "java_lang_Integer.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_lang_System.h" +#include "java_lang_Throwable.h" +#include "org_apache_harmony_luni_internal_nls_Messages.h" + +#include "org_apache_harmony_luni_util_Util.h" + +#define XMLVM_CURRENT_CLASS_NAME Util +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_luni_util_Util + +__TIB_DEFINITION_org_apache_harmony_luni_util_Util __TIB_org_apache_harmony_luni_util_Util = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_luni_util_Util, // classInitializer + "org.apache.harmony.luni.util.Util", // className + "org.apache.harmony.luni.util", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_luni_util_Util), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_util_Util_WEEKDAYS; +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_util_Util_MONTHS; +static JAVA_OBJECT _STATIC_org_apache_harmony_luni_util_Util_defaultEncoding; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_luni_util_Util() +{ + staticInitializerLock(&__TIB_org_apache_harmony_luni_util_Util); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_luni_util_Util.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_luni_util_Util.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_luni_util_Util); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_luni_util_Util.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_luni_util_Util.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_luni_util_Util.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.luni.util.Util") + __INIT_IMPL_org_apache_harmony_luni_util_Util(); + } +} + +void __INIT_IMPL_org_apache_harmony_luni_util_Util() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_luni_util_Util.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_luni_util_Util; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_luni_util_Util.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_org_apache_harmony_luni_util_Util.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_luni_util_Util.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_org_apache_harmony_luni_util_Util_WEEKDAYS = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_org_apache_harmony_luni_util_Util_MONTHS = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_org_apache_harmony_luni_util_Util_defaultEncoding = (java_lang_String*) JAVA_NULL; + + __TIB_org_apache_harmony_luni_util_Util.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_Util.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_Util.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_luni_util_Util.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_Util.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_luni_util_Util.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_luni_util_Util.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_luni_util_Util.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_luni_util_Util = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_luni_util_Util); + __TIB_org_apache_harmony_luni_util_Util.clazz = __CLASS_org_apache_harmony_luni_util_Util; + __TIB_org_apache_harmony_luni_util_Util.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_luni_util_Util_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_Util); + __CLASS_org_apache_harmony_luni_util_Util_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_Util_1ARRAY); + __CLASS_org_apache_harmony_luni_util_Util_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_luni_util_Util_2ARRAY); + org_apache_harmony_luni_util_Util___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_luni_util_Util] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_luni_util_Util.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_luni_util_Util(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_luni_util_Util] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_Util(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_Util] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_Util() +{ XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) +org_apache_harmony_luni_util_Util* me = (org_apache_harmony_luni_util_Util*) XMLVM_MALLOC(sizeof(org_apache_harmony_luni_util_Util)); + me->tib = &__TIB_org_apache_harmony_luni_util_Util; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_Util(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_luni_util_Util] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_Util() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_apache_harmony_luni_util_Util(); + org_apache_harmony_luni_util_Util___INIT___(me); + return me; +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_GET_WEEKDAYS() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + return _STATIC_org_apache_harmony_luni_util_Util_WEEKDAYS; +} + +void org_apache_harmony_luni_util_Util_PUT_WEEKDAYS(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) +_STATIC_org_apache_harmony_luni_util_Util_WEEKDAYS = v; +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_GET_MONTHS() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + return _STATIC_org_apache_harmony_luni_util_Util_MONTHS; +} + +void org_apache_harmony_luni_util_Util_PUT_MONTHS(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) +_STATIC_org_apache_harmony_luni_util_Util_MONTHS = v; +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_GET_defaultEncoding() +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + return _STATIC_org_apache_harmony_luni_util_Util_defaultEncoding; +} + +void org_apache_harmony_luni_util_Util_PUT_defaultEncoding(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) +_STATIC_org_apache_harmony_luni_util_Util_defaultEncoding = v; +} + +void org_apache_harmony_luni_util_Util___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Util.java", 28) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_getBytes___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_getBytes___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "getBytes", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Util.java", 58) + _r0.o = org_apache_harmony_luni_util_Util_GET_defaultEncoding(); + if (_r0.o == JAVA_NULL) goto label12; + XMLVM_TRY_BEGIN(w5509aaab4b1b5) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 60) + _r0.o = org_apache_harmony_luni_util_Util_GET_defaultEncoding(); + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_getBytes___java_lang_String(_r1.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaab4b1b5) + XMLVM_CATCH_END(w5509aaab4b1b5) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaab4b1b5) + label10:; + XMLVM_SOURCE_POSITION("Util.java", 64) + XMLVM_EXIT_METHOD() + return _r0.o; + label11:; + XMLVM_SOURCE_POSITION("Util.java", 61) + java_lang_Thread* curThread_w5509aaab4b1c11 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5509aaab4b1c11->fields.java_lang_Thread.xmlvmException_; + label12:; + XMLVM_CHECK_NPE(1) + _r0.o = java_lang_String_getBytes__(_r1.o); + goto label10; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_getUTF8Bytes___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_getUTF8Bytes___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "getUTF8Bytes", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + _r2.o = n1; + XMLVM_TRY_BEGIN(w5509aaab5b1b2) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 75) + // "UTF-8" + _r1.o = xmlvm_create_java_string_from_pool(100); + XMLVM_CHECK_NPE(2) + _r1.o = java_lang_String_getBytes___java_lang_String(_r2.o, _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaab5b1b2) + XMLVM_CATCH_END(w5509aaab5b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaab5b1b2) + label6:; + XMLVM_SOURCE_POSITION("Util.java", 77) + XMLVM_EXIT_METHOD() + return _r1.o; + label7:; + XMLVM_SOURCE_POSITION("Util.java", 76) + java_lang_Thread* curThread_w5509aaab5b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5509aaab5b1b8->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + _r1.o = org_apache_harmony_luni_util_Util_getBytes___java_lang_String(_r2.o); + goto label6; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_toString___byte_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_toString___byte_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "toString", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r5.o = n1; + _r4.i = 0; + XMLVM_SOURCE_POSITION("Util.java", 82) + _r0.o = org_apache_harmony_luni_util_Util_GET_defaultEncoding(); + if (_r0.o == JAVA_NULL) goto label16; + XMLVM_TRY_BEGIN(w5509aaab6b1b6) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 84) + _r0.o = __NEW_java_lang_String(); + _r1.i = 0; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + _r3.o = org_apache_harmony_luni_util_Util_GET_defaultEncoding(); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String(_r0.o, _r5.o, _r1.i, _r2.i, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaab6b1b6) + XMLVM_CATCH_END(w5509aaab6b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaab6b1b6) + label14:; + XMLVM_SOURCE_POSITION("Util.java", 88) + XMLVM_EXIT_METHOD() + return _r0.o; + label15:; + XMLVM_SOURCE_POSITION("Util.java", 85) + java_lang_Thread* curThread_w5509aaab6b1c12 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5509aaab6b1c12->fields.java_lang_Thread.xmlvmException_; + label16:; + _r0.o = __NEW_java_lang_String(); + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o)); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____byte_1ARRAY_int_int(_r0.o, _r5.o, _r4.i, _r1.i); + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "toUTF8String", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = n1; + XMLVM_SOURCE_POSITION("Util.java", 92) + _r0.i = 0; + _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + _r0.o = org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY_int_int(_r2.o, _r0.i, _r1.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_toString___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_toString___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "toString", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + _r2.o = n1; + _r3.i = n2; + _r4.i = n3; + XMLVM_SOURCE_POSITION("Util.java", 96) + _r0.o = org_apache_harmony_luni_util_Util_GET_defaultEncoding(); + if (_r0.o == JAVA_NULL) goto label13; + XMLVM_TRY_BEGIN(w5509aaab8b1b7) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 98) + _r0.o = __NEW_java_lang_String(); + _r1.o = org_apache_harmony_luni_util_Util_GET_defaultEncoding(); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String(_r0.o, _r2.o, _r3.i, _r4.i, _r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaab8b1b7) + XMLVM_CATCH_END(w5509aaab8b1b7) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaab8b1b7) + label11:; + XMLVM_SOURCE_POSITION("Util.java", 102) + XMLVM_EXIT_METHOD() + return _r0.o; + label12:; + XMLVM_SOURCE_POSITION("Util.java", 99) + java_lang_Thread* curThread_w5509aaab8b1c13 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w5509aaab8b1c13->fields.java_lang_Thread.xmlvmException_; + label13:; + _r0.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(0) + java_lang_String___INIT____byte_1ARRAY_int_int(_r0.o, _r2.o, _r3.i, _r4.i); + goto label11; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "toUTF8String", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + _r3.o = n1; + _r4.i = n2; + _r5.i = n3; + XMLVM_TRY_BEGIN(w5509aaab9b1b4) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 107) + _r1.o = __NEW_java_lang_String(); + // "UTF-8" + _r2.o = xmlvm_create_java_string_from_pool(100); + XMLVM_CHECK_NPE(1) + java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String(_r1.o, _r3.o, _r4.i, _r5.i, _r2.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaab9b1b4) + XMLVM_CATCH_END(w5509aaab9b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaab9b1b4) + label7:; + XMLVM_SOURCE_POSITION("Util.java", 109) + XMLVM_EXIT_METHOD() + return _r1.o; + label8:; + XMLVM_SOURCE_POSITION("Util.java", 108) + java_lang_Thread* curThread_w5509aaab9b1c10 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w5509aaab9b1c10->fields.java_lang_Thread.xmlvmException_; + _r0 = _r1; + _r1.o = org_apache_harmony_luni_util_Util_toString___byte_1ARRAY_int_int(_r3.o, _r4.i, _r5.i); + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_LONG org_apache_harmony_luni_util_Util_parseDate___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_parseDate___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "parseDate", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + _r15.o = n1; + XMLVM_SOURCE_POSITION("Util.java", 122) + _r6.i = 0; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(15) + _r4.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r15.o)->tib->vtable[8])(_r15.o); + _r8.i = 0; + _r9.i = -1; + _r5.i = -1; + _r1.i = -1; + _r2.i = -1; + _r3.i = -1; + _r7.i = -1; + _r0.i = 0; + _r0.i = 1; + _r0.i = 2; + XMLVM_SOURCE_POSITION("Util.java", 126) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT___(_r0.o); + _r10 = _r7; + _r12 = _r9; + _r11 = _r8; + _r14 = _r5; + _r5 = _r3; + _r3 = _r2; + _r2 = _r6; + _r6 = _r14; + label28:; + XMLVM_SOURCE_POSITION("Util.java", 128) + if (_r2.i > _r4.i) goto label367; + XMLVM_SOURCE_POSITION("Util.java", 129) + if (_r2.i >= _r4.i) goto label99; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(15) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r15.o)->tib->vtable[6])(_r15.o, _r2.i); + label36:; + _r9.i = _r2.i + 1; + _r2.i = 97; + if (_r7.i < _r2.i) goto label46; + XMLVM_SOURCE_POSITION("Util.java", 133) + _r2.i = 122; + if (_r7.i <= _r2.i) goto label54; + label46:; + _r2.i = 65; + if (_r7.i < _r2.i) goto label102; + _r2.i = 90; + if (_r7.i > _r2.i) goto label102; + label54:; + XMLVM_SOURCE_POSITION("Util.java", 134) + _r2.i = 1; + _r8 = _r2; + label56:; + XMLVM_SOURCE_POSITION("Util.java", 142) + _r2.i = 2; + if (_r11.i != _r2.i) goto label277; + _r2.i = 2; + if (_r8.i == _r2.i) goto label277; + XMLVM_SOURCE_POSITION("Util.java", 143) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + _r2.i = java_lang_Integer_parseInt___java_lang_String(_r2.o); + _r11.i = 0; + XMLVM_SOURCE_POSITION("Util.java", 144) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_setLength___int(_r0.o, _r11.i); + XMLVM_SOURCE_POSITION("Util.java", 145) + _r11.i = 70; + if (_r2.i < _r11.i) goto label159; + XMLVM_SOURCE_POSITION("Util.java", 146) + _r11.i = -1; + if (_r12.i != _r11.i) goto label93; + _r11.i = 32; + if (_r7.i == _r11.i) goto label131; + _r11.i = 44; + if (_r7.i == _r11.i) goto label131; + _r11.i = 13; + if (_r7.i == _r11.i) goto label131; + label93:; + XMLVM_SOURCE_POSITION("Util.java", 148) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label99:; + _r7.i = 13; + goto label36; + label102:; + XMLVM_SOURCE_POSITION("Util.java", 135) + _r2.i = 48; + if (_r7.i < _r2.i) goto label113; + _r2.i = 57; + if (_r7.i > _r2.i) goto label113; + XMLVM_SOURCE_POSITION("Util.java", 136) + _r2.i = 2; + _r8 = _r2; + goto label56; + label113:; + XMLVM_SOURCE_POSITION("Util.java", 137) + // " ,-:\015\011" + _r2.o = xmlvm_create_java_string_from_pool(749); + XMLVM_CHECK_NPE(2) + _r2.i = java_lang_String_indexOf___int(_r2.o, _r7.i); + _r8.i = -1; + if (_r2.i != _r8.i) goto label128; + XMLVM_SOURCE_POSITION("Util.java", 138) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label128:; + XMLVM_SOURCE_POSITION("Util.java", 140) + _r2.i = 0; + _r8 = _r2; + goto label56; + label131:; + XMLVM_SOURCE_POSITION("Util.java", 149) + _r2 = _r2; + _r14 = _r10; + _r10 = _r2; + _r2 = _r3; + _r3 = _r5; + _r5 = _r14; + label137:; + _r14 = _r5; + _r5 = _r6; + _r6 = _r14; + label140:; + XMLVM_SOURCE_POSITION("Util.java", 173) + XMLVM_SOURCE_POSITION("Util.java", 185) + _r11.i = 1; + if (_r8.i == _r11.i) goto label146; + _r11.i = 2; + if (_r8.i != _r11.i) goto label149; + label146:; + XMLVM_SOURCE_POSITION("Util.java", 186) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r7.i); + label149:; + XMLVM_SOURCE_POSITION("Util.java", 187) + _r7 = _r8; + _r12 = _r10; + _r11 = _r7; + _r10 = _r6; + _r6 = _r5; + _r5 = _r3; + _r3 = _r2; + _r2 = _r9; + XMLVM_SOURCE_POSITION("Util.java", 188) + goto label28; + label159:; + XMLVM_SOURCE_POSITION("Util.java", 150) + _r11.i = 58; + if (_r7.i != _r11.i) goto label187; + XMLVM_SOURCE_POSITION("Util.java", 151) + _r11.i = -1; + if (_r3.i != _r11.i) goto label171; + XMLVM_SOURCE_POSITION("Util.java", 152) + _r2 = _r2; + _r3 = _r5; + _r5 = _r10; + _r10 = _r12; + goto label137; + label171:; + XMLVM_SOURCE_POSITION("Util.java", 153) + _r11.i = -1; + if (_r5.i != _r11.i) goto label181; + XMLVM_SOURCE_POSITION("Util.java", 154) + _r2 = _r2; + _r5 = _r10; + _r10 = _r12; + _r14 = _r3; + _r3 = _r2; + _r2 = _r14; + goto label137; + label181:; + XMLVM_SOURCE_POSITION("Util.java", 156) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label187:; + XMLVM_SOURCE_POSITION("Util.java", 157) + _r11.i = 32; + if (_r7.i == _r11.i) goto label203; + _r11.i = 44; + if (_r7.i == _r11.i) goto label203; + _r11.i = 45; + if (_r7.i == _r11.i) goto label203; + _r11.i = 13; + if (_r7.i != _r11.i) goto label254; + label203:; + XMLVM_SOURCE_POSITION("Util.java", 159) + _r11.i = -1; + if (_r3.i == _r11.i) goto label216; + _r11.i = -1; + if (_r5.i != _r11.i) goto label216; + XMLVM_SOURCE_POSITION("Util.java", 160) + _r2 = _r2; + _r5 = _r10; + _r10 = _r12; + _r14 = _r3; + _r3 = _r2; + _r2 = _r14; + goto label137; + label216:; + XMLVM_SOURCE_POSITION("Util.java", 161) + _r11.i = -1; + if (_r5.i == _r11.i) goto label229; + _r11.i = -1; + if (_r10.i != _r11.i) goto label229; + XMLVM_SOURCE_POSITION("Util.java", 162) + _r2 = _r2; + _r10 = _r12; + _r14 = _r5; + _r5 = _r2; + _r2 = _r3; + _r3 = _r14; + goto label137; + label229:; + XMLVM_SOURCE_POSITION("Util.java", 163) + _r11.i = -1; + if (_r1.i != _r11.i) goto label238; + XMLVM_SOURCE_POSITION("Util.java", 164) + _r1 = _r2; + _r2 = _r3; + _r3 = _r5; + _r5 = _r10; + _r10 = _r12; + goto label137; + label238:; + XMLVM_SOURCE_POSITION("Util.java", 165) + _r11.i = -1; + if (_r12.i != _r11.i) goto label248; + XMLVM_SOURCE_POSITION("Util.java", 166) + _r2 = _r2; + _r14 = _r10; + _r10 = _r2; + _r2 = _r3; + _r3 = _r5; + _r5 = _r14; + goto label137; + label248:; + XMLVM_SOURCE_POSITION("Util.java", 168) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label254:; + XMLVM_SOURCE_POSITION("Util.java", 169) + _r11.i = -1; + if (_r12.i != _r11.i) goto label271; + _r11.i = -1; + if (_r6.i == _r11.i) goto label271; + _r11.i = -1; + if (_r1.i == _r11.i) goto label271; + XMLVM_SOURCE_POSITION("Util.java", 170) + _r2 = _r2; + _r14 = _r10; + _r10 = _r2; + _r2 = _r3; + _r3 = _r5; + _r5 = _r14; + goto label137; + label271:; + XMLVM_SOURCE_POSITION("Util.java", 172) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label277:; + _r2.i = 1; + if (_r11.i != _r2.i) goto label480; + _r2.i = 1; + if (_r8.i == _r2.i) goto label480; + XMLVM_SOURCE_POSITION("Util.java", 174) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_CHECK_NPE(2) + _r11.o = java_lang_String_toUpperCase__(_r2.o); + _r2.i = 0; + XMLVM_SOURCE_POSITION("Util.java", 175) + XMLVM_CHECK_NPE(0) + java_lang_AbstractStringBuilder_setLength___int(_r0.o, _r2.i); + XMLVM_SOURCE_POSITION("Util.java", 176) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(11) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r11.o)->tib->vtable[8])(_r11.o); + _r13.i = 3; + if (_r2.i >= _r13.i) goto label308; + XMLVM_SOURCE_POSITION("Util.java", 177) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label308:; + XMLVM_SOURCE_POSITION("Util.java", 178) + _r2.o = org_apache_harmony_luni_util_Util_GET_WEEKDAYS(); + _r2.i = org_apache_harmony_luni_util_Util_parse___java_lang_String_java_lang_String_1ARRAY(_r11.o, _r2.o); + _r13.i = -1; + if (_r2.i == _r13.i) goto label324; + _r2 = _r3; + _r3 = _r5; + _r5 = _r6; + _r6 = _r10; + _r10 = _r12; + goto label140; + label324:; + XMLVM_SOURCE_POSITION("Util.java", 179) + _r2.i = -1; + if (_r6.i != _r2.i) goto label344; + _r2.o = org_apache_harmony_luni_util_Util_GET_MONTHS(); + _r2.i = org_apache_harmony_luni_util_Util_parse___java_lang_String_java_lang_String_1ARRAY(_r11.o, _r2.o); + _r6.i = -1; + if (_r2.i == _r6.i) goto label345; + _r6 = _r10; + _r10 = _r12; + _r14 = _r3; + _r3 = _r5; + _r5 = _r2; + _r2 = _r14; + goto label140; + label344:; + _r2 = _r6; + label345:; + XMLVM_SOURCE_POSITION("Util.java", 180) + // "GMT" + _r6.o = xmlvm_create_java_string_from_pool(750); + //java_lang_String_equals___java_lang_Object[1] + XMLVM_CHECK_NPE(11) + _r6.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r11.o)->tib->vtable[1])(_r11.o, _r6.o); + if (_r6.i == 0) goto label361; + _r6 = _r10; + _r10 = _r12; + _r14 = _r3; + _r3 = _r5; + _r5 = _r2; + _r2 = _r14; + goto label140; + label361:; + XMLVM_SOURCE_POSITION("Util.java", 182) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label367:; + XMLVM_SOURCE_POSITION("Util.java", 190) + _r15.i = -1; + if (_r12.i == _r15.i) goto label464; + _r15.i = -1; + if (_r6.i == _r15.i) goto label464; + _r15.i = -1; + if (_r1.i == _r15.i) goto label464; + XMLVM_SOURCE_POSITION("Util.java", 191) + _r15.i = -1; + if (_r3.i != _r15.i) goto label478; + XMLVM_SOURCE_POSITION("Util.java", 192) + _r15.i = 0; + _r2 = _r15; + label381:; + XMLVM_SOURCE_POSITION("Util.java", 193) + _r15.i = -1; + if (_r5.i != _r15.i) goto label476; + XMLVM_SOURCE_POSITION("Util.java", 194) + _r15.i = 0; + _r3 = _r15; + label386:; + XMLVM_SOURCE_POSITION("Util.java", 195) + _r15.i = -1; + if (_r10.i != _r15.i) goto label474; + XMLVM_SOURCE_POSITION("Util.java", 196) + _r15.i = 0; + _r4 = _r15; + label391:; + XMLVM_SOURCE_POSITION("Util.java", 197) + // "GMT" + _r15.o = xmlvm_create_java_string_from_pool(750); + + + // Red class access removed: java.util.TimeZone::getTimeZone + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Calendar::getInstance + XMLVM_RED_CLASS_DEPENDENCY(); + _r0.i = 1; + XMLVM_SOURCE_POSITION("Util.java", 198) + + + // Red class access removed: java.util.Calendar::get + XMLVM_RED_CLASS_DEPENDENCY(); + _r5.i = 80; + _r0.i = _r0.i - _r5.i; + _r5.i = 100; + if (_r12.i >= _r5.i) goto label472; + XMLVM_SOURCE_POSITION("Util.java", 199) + XMLVM_SOURCE_POSITION("Util.java", 200) + _r5.i = _r0.i / 100; + _r5.i = _r5.i * 100; + _r5.i = _r5.i + _r12.i; + if (_r5.i >= _r0.i) goto label470; + XMLVM_SOURCE_POSITION("Util.java", 201) + XMLVM_SOURCE_POSITION("Util.java", 202) + _r0.i = _r5.i + 100; + label422:; + XMLVM_SOURCE_POSITION("Util.java", 204) + _r5.i = 1; + + + // Red class access removed: java.util.Calendar::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 205) + _r0.i = 2; + + + // Red class access removed: java.util.Calendar::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 206) + _r0.i = 5; + + + // Red class access removed: java.util.Calendar::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 207) + _r0.i = 11; + + + // Red class access removed: java.util.Calendar::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 208) + _r0.i = 12; + + + // Red class access removed: java.util.Calendar::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 209) + _r0.i = 13; + + + // Red class access removed: java.util.Calendar::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 210) + _r0.i = 14; + _r1.i = 0; + + + // Red class access removed: java.util.Calendar::set + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 211) + + + // Red class access removed: java.util.Calendar::getTime + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.util.Date::getTime + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_EXIT_METHOD() + return _r0.l; + label464:; + XMLVM_SOURCE_POSITION("Util.java", 213) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r15.o) + label470:; + _r0 = _r5; + goto label422; + label472:; + _r0 = _r12; + goto label422; + label474:; + _r4 = _r10; + goto label391; + label476:; + _r3 = _r5; + goto label386; + label478:; + _r2 = _r3; + goto label381; + label480:; + _r2 = _r3; + _r3 = _r5; + _r5 = _r6; + _r6 = _r10; + _r10 = _r12; + goto label140; + //XMLVM_END_WRAPPER +} + +JAVA_INT org_apache_harmony_luni_util_Util_parse___java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_parse___java_lang_String_java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "parse", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + _r7.o = n1; + _r8.o = n2; + _r2.i = 0; + XMLVM_SOURCE_POSITION("Util.java", 217) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(7) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[8])(_r7.o); + _r6.i = 0; + label6:; + XMLVM_SOURCE_POSITION("Util.java", 218) + _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r8.o)); + if (_r6.i >= _r0.i) goto label25; + XMLVM_SOURCE_POSITION("Util.java", 219) + _r1.i = 1; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r6.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r0 = _r7; + _r4 = _r2; + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_regionMatches___boolean_int_java_lang_String_int_int(_r0.o, _r1.i, _r2.i, _r3.o, _r4.i, _r5.i); + if (_r0.i == 0) goto label22; + _r0 = _r6; + label21:; + XMLVM_SOURCE_POSITION("Util.java", 220) + XMLVM_SOURCE_POSITION("Util.java", 222) + XMLVM_EXIT_METHOD() + return _r0.i; + label22:; + _r6.i = _r6.i + 1; + goto label6; + label25:; + _r0.i = -1; + goto label21; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_convertFromUTF8___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_convertFromUTF8___byte_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "convertFromUTF8", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = n1; + _r2.i = n2; + _r3.i = n3; + XMLVM_SOURCE_POSITION("Util.java", 227) + XMLVM_CLASS_INIT(char) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i); + _r0.o = org_apache_harmony_luni_util_Util_convertUTF8WithBuf___byte_1ARRAY_char_1ARRAY_int_int(_r1.o, _r0.o, _r2.i, _r3.i); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_convertUTF8WithBuf___byte_1ARRAY_char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_convertUTF8WithBuf___byte_1ARRAY_char_1ARRAY_int_int] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "convertUTF8WithBuf", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + XMLVMElem _r12; + XMLVMElem _r13; + XMLVMElem _r14; + XMLVMElem _r15; + _r12.o = n1; + _r13.o = n2; + _r14.i = n3; + _r15.i = n4; + _r10.i = 1; + _r9.i = 128; + // "luni.D7" + _r11.o = xmlvm_create_java_string_from_pool(751); + XMLVM_SOURCE_POSITION("Util.java", 232) + _r3.i = 0; + _r5.i = 0; + _r6 = _r5; + _r4 = _r3; + label9:; + XMLVM_SOURCE_POSITION("Util.java", 233) + if (_r4.i >= _r15.i) goto label175; + XMLVM_SOURCE_POSITION("Util.java", 234) + _r3.i = _r4.i + 1; + _r7.i = _r14.i + _r4.i; + XMLVM_CHECK_NPE(12) + XMLVM_CHECK_ARRAY_BOUNDS(_r12.o, _r7.i); + _r7.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r12.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + _r7.i = _r7.i & 0xffff; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r6.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r7.i; + if (_r7.i >= _r9.i) goto label27; + XMLVM_SOURCE_POSITION("Util.java", 235) + _r5.i = _r6.i + 1; + _r6 = _r5; + _r4 = _r3; + goto label9; + label27:; + XMLVM_SOURCE_POSITION("Util.java", 236) + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r6.i); + _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r7.i = _r0.i & 224; + _r8.i = 192; + if (_r7.i != _r8.i) goto label85; + XMLVM_SOURCE_POSITION("Util.java", 237) + if (_r3.i < _r15.i) goto label49; + XMLVM_SOURCE_POSITION("Util.java", 238) + + + // Red class access removed: java.io.UTFDataFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.D7" + _r8.o = xmlvm_create_java_string_from_pool(751); + _r8.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r11.o, _r3.i); + + + // Red class access removed: java.io.UTFDataFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label49:; + XMLVM_SOURCE_POSITION("Util.java", 240) + _r4.i = _r3.i + 1; + XMLVM_CHECK_NPE(12) + XMLVM_CHECK_ARRAY_BOUNDS(_r12.o, _r3.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r12.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r7.i = _r1.i & 192; + if (_r7.i == _r9.i) goto label71; + XMLVM_SOURCE_POSITION("Util.java", 241) + XMLVM_SOURCE_POSITION("Util.java", 242) + + + // Red class access removed: java.io.UTFDataFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.D7" + _r8.o = xmlvm_create_java_string_from_pool(751); + _r8.i = _r4.i - _r10.i; + _r8.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r11.o, _r8.i); + + + // Red class access removed: java.io.UTFDataFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label71:; + XMLVM_SOURCE_POSITION("Util.java", 244) + _r5.i = _r6.i + 1; + _r7.i = _r0.i & 31; + _r7.i = _r7.i << 6; + _r8.i = _r1.i & 63; + _r7.i = _r7.i | _r8.i; + _r7.i = _r7.i & 0xffff; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r6.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r7.i; + _r6 = _r5; + XMLVM_SOURCE_POSITION("Util.java", 245) + goto label9; + label85:; + _r7.i = _r0.i & 240; + _r8.i = 224; + if (_r7.i != _r8.i) goto label161; + XMLVM_SOURCE_POSITION("Util.java", 246) + _r7.i = _r3.i + 1; + if (_r7.i < _r15.i) goto label109; + XMLVM_SOURCE_POSITION("Util.java", 247) + + + // Red class access removed: java.io.UTFDataFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.D8" + _r8.o = xmlvm_create_java_string_from_pool(752); + _r9.i = _r3.i + 1; + _r8.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r8.o, _r9.i); + + + // Red class access removed: java.io.UTFDataFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label109:; + XMLVM_SOURCE_POSITION("Util.java", 249) + _r4.i = _r3.i + 1; + XMLVM_CHECK_NPE(12) + XMLVM_CHECK_ARRAY_BOUNDS(_r12.o, _r3.i); + _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r12.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r3.i = _r4.i + 1; + XMLVM_SOURCE_POSITION("Util.java", 250) + XMLVM_CHECK_NPE(12) + XMLVM_CHECK_ARRAY_BOUNDS(_r12.o, _r4.i); + _r2.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r12.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r7.i = _r1.i & 192; + if (_r7.i != _r9.i) goto label125; + XMLVM_SOURCE_POSITION("Util.java", 251) + _r7.i = _r2.i & 192; + if (_r7.i == _r9.i) goto label140; + label125:; + XMLVM_SOURCE_POSITION("Util.java", 252) + + + // Red class access removed: java.io.UTFDataFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.D9" + _r8.o = xmlvm_create_java_string_from_pool(753); + _r9.i = 2; + _r9.i = _r3.i - _r9.i; + _r8.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r8.o, _r9.i); + + + // Red class access removed: java.io.UTFDataFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label140:; + XMLVM_SOURCE_POSITION("Util.java", 254) + _r5.i = _r6.i + 1; + _r7.i = _r0.i & 15; + _r7.i = _r7.i << 12; + _r8.i = _r1.i & 63; + _r8.i = _r8.i << 6; + _r7.i = _r7.i | _r8.i; + _r8.i = _r2.i & 63; + _r7.i = _r7.i | _r8.i; + _r7.i = _r7.i & 0xffff; + XMLVM_CHECK_NPE(13) + XMLVM_CHECK_ARRAY_BOUNDS(_r13.o, _r6.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r13.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r7.i; + _r6 = _r5; + _r4 = _r3; + XMLVM_SOURCE_POSITION("Util.java", 255) + goto label9; + label161:; + XMLVM_SOURCE_POSITION("Util.java", 256) + + + // Red class access removed: java.io.UTFDataFormatException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.DA" + _r8.o = xmlvm_create_java_string_from_pool(754); + _r9.i = _r3.i - _r10.i; + _r8.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r8.o, _r9.i); + + + // Red class access removed: java.io.UTFDataFormatException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label175:; + XMLVM_SOURCE_POSITION("Util.java", 260) + _r7.o = __NEW_java_lang_String(); + _r8.i = 0; + XMLVM_CHECK_NPE(7) + java_lang_String___INIT____char_1ARRAY_int_int(_r7.o, _r13.o, _r8.i, _r6.i); + XMLVM_EXIT_METHOD() + return _r7.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_decode___java_lang_String_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_decode___java_lang_String_boolean] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "decode", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = n1; + _r2.i = n2; + XMLVM_SOURCE_POSITION("Util.java", 273) + _r0.o = JAVA_NULL; + _r0.o = org_apache_harmony_luni_util_Util_decode___java_lang_String_boolean_java_lang_String(_r1.o, _r2.i, _r0.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_decode___java_lang_String_boolean_java_lang_String(JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_decode___java_lang_String_boolean_java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "decode", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + volatile XMLVMElem _r12; + volatile XMLVMElem _r13; + volatile XMLVMElem _r14; + _r12.o = n1; + _r13.i = n2; + _r14.o = n3; + _r11.i = 16; + _r10.i = 37; + _r9.i = -1; + XMLVM_SOURCE_POSITION("Util.java", 288) + if (_r13.i != 0) goto label15; + XMLVM_CHECK_NPE(12) + _r7.i = java_lang_String_indexOf___int(_r12.o, _r10.i); + if (_r7.i != _r9.i) goto label15; + _r7 = _r12; + label14:; + XMLVM_SOURCE_POSITION("Util.java", 289) + XMLVM_SOURCE_POSITION("Util.java", 325) + XMLVM_EXIT_METHOD() + return _r7.o; + label15:; + XMLVM_SOURCE_POSITION("Util.java", 290) + _r6.o = __NEW_java_lang_StringBuilder(); + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder___INIT____int(_r6.o, _r7.i); + XMLVM_SOURCE_POSITION("Util.java", 291) + + + // Red class access removed: java.io.ByteArrayOutputStream::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.io.ByteArrayOutputStream:: + XMLVM_RED_CLASS_DEPENDENCY(); + _r4.i = 0; + label30:; + XMLVM_SOURCE_POSITION("Util.java", 292) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r4.i >= _r7.i) goto label177; + XMLVM_SOURCE_POSITION("Util.java", 293) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r4.i); + if (_r13.i == 0) goto label54; + XMLVM_SOURCE_POSITION("Util.java", 294) + _r7.i = 43; + if (_r0.i != _r7.i) goto label54; + XMLVM_SOURCE_POSITION("Util.java", 295) + _r7.i = 32; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(6) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[6])(_r6.o, _r7.i); + label51:; + XMLVM_SOURCE_POSITION("Util.java", 323) + _r4.i = _r4.i + 1; + XMLVM_SOURCE_POSITION("Util.java", 324) + goto label30; + label54:; + XMLVM_SOURCE_POSITION("Util.java", 296) + if (_r0.i != _r10.i) goto label173; + XMLVM_SOURCE_POSITION("Util.java", 297) + + + // Red class access removed: java.io.ByteArrayOutputStream::reset + XMLVM_RED_CLASS_DEPENDENCY(); + label59:; + XMLVM_SOURCE_POSITION("Util.java", 299) + _r7.i = _r4.i + 2; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r8.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r7.i < _r8.i) goto label79; + XMLVM_SOURCE_POSITION("Util.java", 300) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.80" + _r8.o = xmlvm_create_java_string_from_pool(755); + _r8.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_int(_r8.o, _r4.i); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label79:; + XMLVM_SOURCE_POSITION("Util.java", 302) + _r7.i = _r4.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r7.i); + _r1.i = java_lang_Character_digit___char_int(_r7.i, _r11.i); + _r7.i = _r4.i + 2; + XMLVM_SOURCE_POSITION("Util.java", 303) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r7.i); + _r2.i = java_lang_Character_digit___char_int(_r7.i, _r11.i); + if (_r1.i == _r9.i) goto label103; + XMLVM_SOURCE_POSITION("Util.java", 304) + if (_r2.i != _r9.i) goto label125; + label103:; + XMLVM_SOURCE_POSITION("Util.java", 305) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + // "luni.81" + _r8.o = xmlvm_create_java_string_from_pool(756); + _r9.i = _r4.i + 3; + XMLVM_CHECK_NPE(12) + _r9.o = java_lang_String_substring___int_int(_r12.o, _r4.i, _r9.i); + _r10.o = java_lang_String_valueOf___int(_r4.i); + _r8.o = org_apache_harmony_luni_internal_nls_Messages_getString___java_lang_String_java_lang_Object_java_lang_Object(_r8.o, _r9.o, _r10.o); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label125:; + XMLVM_SOURCE_POSITION("Util.java", 308) + _r7.i = _r1.i << 4; + _r7.i = _r7.i + _r2.i; + _r7.i = (_r7.i << 24) >> 24; + + + // Red class access removed: java.io.ByteArrayOutputStream::write + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_SOURCE_POSITION("Util.java", 309) + _r4.i = _r4.i + 3; + XMLVM_SOURCE_POSITION("Util.java", 310) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r4.i >= _r7.i) goto label146; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r4.i); + if (_r7.i == _r10.i) goto label59; + label146:; + XMLVM_SOURCE_POSITION("Util.java", 311) + if (_r14.o != JAVA_NULL) goto label156; + XMLVM_SOURCE_POSITION("Util.java", 312) + + + // Red class access removed: java.io.ByteArrayOutputStream::toString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___java_lang_String(_r6.o, _r7.o); + goto label30; + label156:; + XMLVM_TRY_BEGIN(w5509aaac15b1d102) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 315) + + + // Red class access removed: java.io.ByteArrayOutputStream::toString + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_CHECK_NPE(6) + java_lang_StringBuilder_append___java_lang_String(_r6.o, _r7.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaac15b1d102) + XMLVM_CATCH_END(w5509aaac15b1d102) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaac15b1d102) + goto label30; + label165:; + XMLVM_SOURCE_POSITION("Util.java", 316) + java_lang_Thread* curThread_w5509aaac15b1d106 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r7.o = curThread_w5509aaac15b1d106->fields.java_lang_Thread.xmlvmException_; + _r3 = _r7; + XMLVM_SOURCE_POSITION("Util.java", 317) + + + // Red class access removed: java.lang.IllegalArgumentException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.IllegalArgumentException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label173:; + XMLVM_SOURCE_POSITION("Util.java", 322) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(6) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[6])(_r6.o, _r0.i); + goto label51; + label177:; + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(6) + _r7.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r6.o)->tib->vtable[5])(_r6.o); + goto label14; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_encodeURL___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_encodeURL___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "encodeURL", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + volatile XMLVMElem _r12; + _r12.o = n1; + _r11.i = 37; + _r10.i = -1; + XMLVM_SOURCE_POSITION("Util.java", 336) + // "0123456789ABCDEF" + _r3.o = xmlvm_create_java_string_from_pool(757); + XMLVM_SOURCE_POSITION("Util.java", 338) + _r0.o = __NEW_java_lang_StringBuilder(); + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + _r7.i = _r7.i + 16; + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r7.i); + _r5.i = 0; + label17:; + XMLVM_SOURCE_POSITION("Util.java", 339) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r5.i >= _r7.i) goto label181; + XMLVM_SOURCE_POSITION("Util.java", 340) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r2.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r5.i); + if (_r11.i != _r2.i) goto label109; + XMLVM_SOURCE_POSITION("Util.java", 341) + XMLVM_SOURCE_POSITION("Util.java", 342) + _r7.i = _r5.i + 1; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r8.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r7.i >= _r8.i) goto label103; + _r7.i = _r5.i + 2; + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(12) + _r8.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r12.o)->tib->vtable[8])(_r12.o); + if (_r7.i >= _r8.i) goto label103; + _r7.i = _r5.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r7.i); + _r7.i = java_lang_Character_toUpperCase___char(_r7.i); + XMLVM_CHECK_NPE(3) + _r7.i = java_lang_String_indexOf___int(_r3.o, _r7.i); + if (_r7.i == _r10.i) goto label103; + _r7.i = _r5.i + 2; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r7.i); + _r7.i = java_lang_Character_toUpperCase___char(_r7.i); + XMLVM_CHECK_NPE(3) + _r7.i = java_lang_String_indexOf___int(_r3.o, _r7.i); + if (_r7.i == _r10.i) goto label103; + XMLVM_SOURCE_POSITION("Util.java", 348) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + XMLVM_SOURCE_POSITION("Util.java", 349) + _r7.i = _r5.i + 1; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r7.i); + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r7.i); + XMLVM_SOURCE_POSITION("Util.java", 350) + _r7.i = _r5.i + 2; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(12) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r12.o)->tib->vtable[6])(_r12.o, _r7.i); + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r7.i); + XMLVM_SOURCE_POSITION("Util.java", 351) + _r5.i = _r5.i + 2; + label100:; + _r5.i = _r5.i + 1; + goto label17; + label103:; + XMLVM_SOURCE_POSITION("Util.java", 353) + // "%25" + _r7.o = xmlvm_create_java_string_from_pool(758); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder_append___java_lang_String(_r0.o, _r7.o); + goto label100; + label109:; + XMLVM_SOURCE_POSITION("Util.java", 355) + // "\042<>%\134^[]`+$,\173\175`\176\174 " + _r7.o = xmlvm_create_java_string_from_pool(759); + XMLVM_CHECK_NPE(7) + _r7.i = java_lang_String_indexOf___int(_r7.o, _r2.i); + if (_r7.i != _r10.i) goto label121; + XMLVM_SOURCE_POSITION("Util.java", 356) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r2.i); + goto label100; + label121:; + XMLVM_SOURCE_POSITION("Util.java", 358) + _r1.o = JAVA_NULL; + XMLVM_TRY_BEGIN(w5509aaac16b1c68) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 360) + _r7.o = __NEW_java_lang_String(); + _r8.i = 1; + XMLVM_CLASS_INIT(char) + _r8.o = XMLVMArray_createSingleDimension(__CLASS_char, _r8.i); + _r9.i = 0; + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r9.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r2.i; + XMLVM_CHECK_NPE(7) + java_lang_String___INIT____char_1ARRAY(_r7.o, _r8.o); + // "UTF-8" + _r8.o = xmlvm_create_java_string_from_pool(100); + XMLVM_CHECK_NPE(7) + _r1.o = java_lang_String_getBytes___java_lang_String(_r7.o, _r8.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaac16b1c68) + XMLVM_CATCH_END(w5509aaac16b1c68) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaac16b1c68) + XMLVM_SOURCE_POSITION("Util.java", 364) + _r6.i = 0; + label140:; + _r7.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r6.i >= _r7.i) goto label100; + XMLVM_SOURCE_POSITION("Util.java", 365) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r11.i); + XMLVM_SOURCE_POSITION("Util.java", 366) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r6.i); + _r7.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r7.i = _r7.i & 240; + _r7.i = _r7.i >> 4; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r7.i); + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r7.i); + XMLVM_SOURCE_POSITION("Util.java", 367) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r6.i); + _r7.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + _r7.i = _r7.i & 15; + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(3) + _r7.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r3.o)->tib->vtable[6])(_r3.o, _r7.i); + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r7.i); + _r6.i = _r6.i + 1; + goto label140; + label173:; + XMLVM_SOURCE_POSITION("Util.java", 361) + java_lang_Thread* curThread_w5509aaac16b1c91 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r7.o = curThread_w5509aaac16b1c91->fields.java_lang_Thread.xmlvmException_; + _r4 = _r7; + XMLVM_SOURCE_POSITION("Util.java", 362) + + + // Red class access removed: java.lang.AssertionError::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.lang.AssertionError:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r7.o) + label181:; + XMLVM_SOURCE_POSITION("Util.java", 371) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r7.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r7.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_toASCIILowerCase___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_toASCIILowerCase___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "toASCIILowerCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Util.java", 375) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + XMLVM_SOURCE_POSITION("Util.java", 376) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r3.i); + _r2.i = 0; + label10:; + XMLVM_SOURCE_POSITION("Util.java", 377) + if (_r2.i >= _r3.i) goto label37; + XMLVM_SOURCE_POSITION("Util.java", 378) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r2.i); + _r4.i = 65; + if (_r4.i > _r1.i) goto label33; + XMLVM_SOURCE_POSITION("Util.java", 379) + _r4.i = 90; + if (_r1.i > _r4.i) goto label33; + XMLVM_SOURCE_POSITION("Util.java", 380) + _r4.i = _r1.i + 32; + _r4.i = _r4.i & 0xffff; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r4.i); + label30:; + _r2.i = _r2.i + 1; + goto label10; + label33:; + XMLVM_SOURCE_POSITION("Util.java", 382) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + goto label30; + label37:; + XMLVM_SOURCE_POSITION("Util.java", 385) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_luni_util_Util_toASCIIUpperCase___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_luni_util_Util) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util_toASCIIUpperCase___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "toASCIIUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = n1; + XMLVM_SOURCE_POSITION("Util.java", 389) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + XMLVM_SOURCE_POSITION("Util.java", 390) + _r0.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(0) + java_lang_StringBuilder___INIT____int(_r0.o, _r3.i); + _r2.i = 0; + label10:; + XMLVM_SOURCE_POSITION("Util.java", 391) + if (_r2.i >= _r3.i) goto label39; + XMLVM_SOURCE_POSITION("Util.java", 392) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r1.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r2.i); + _r4.i = 97; + if (_r4.i > _r1.i) goto label35; + XMLVM_SOURCE_POSITION("Util.java", 393) + _r4.i = 122; + if (_r1.i > _r4.i) goto label35; + XMLVM_SOURCE_POSITION("Util.java", 394) + _r4.i = 32; + _r4.i = _r1.i - _r4.i; + _r4.i = _r4.i & 0xffff; + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r4.i); + label32:; + _r2.i = _r2.i + 1; + goto label10; + label35:; + XMLVM_SOURCE_POSITION("Util.java", 396) + //java_lang_StringBuilder_append___char[6] + XMLVM_CHECK_NPE(0) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r1.i); + goto label32; + label39:; + XMLVM_SOURCE_POSITION("Util.java", 399) + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(0) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o); + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_luni_util_Util___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_luni_util_Util___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.luni.util.Util", "", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + _r9.i = 4; + _r8.i = 3; + _r7.i = 2; + _r6.i = 1; + _r5.i = 0; + XMLVM_SOURCE_POSITION("Util.java", 30) + _r2.i = 8; + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r2.i); + // "" + _r3.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r3.o; + // "Sunday" + _r3.o = xmlvm_create_java_string_from_pool(760); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + // "Monday" + _r3.o = xmlvm_create_java_string_from_pool(761); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r3.o; + // "Tuesday" + _r3.o = xmlvm_create_java_string_from_pool(762); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + // "Wednesday" + _r3.o = xmlvm_create_java_string_from_pool(763); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r3.o; + _r3.i = 5; + // "Thursday" + _r4.o = xmlvm_create_java_string_from_pool(764); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 6; + // "Friday" + _r4.o = xmlvm_create_java_string_from_pool(765); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 7; + // "Saturday" + _r4.o = xmlvm_create_java_string_from_pool(766); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + org_apache_harmony_luni_util_Util_PUT_WEEKDAYS( _r2.o); + XMLVM_SOURCE_POSITION("Util.java", 33) + _r2.i = 12; + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r2.i); + // "January" + _r3.o = xmlvm_create_java_string_from_pool(767); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r5.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i] = _r3.o; + // "February" + _r3.o = xmlvm_create_java_string_from_pool(768); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + // "March" + _r3.o = xmlvm_create_java_string_from_pool(769); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r3.o; + // "April" + _r3.o = xmlvm_create_java_string_from_pool(770); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + // "May" + _r3.o = xmlvm_create_java_string_from_pool(771); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r3.o; + _r3.i = 5; + // "June" + _r4.o = xmlvm_create_java_string_from_pool(772); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 6; + // "July" + _r4.o = xmlvm_create_java_string_from_pool(773); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 7; + // "August" + _r4.o = xmlvm_create_java_string_from_pool(774); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 8; + // "September" + _r4.o = xmlvm_create_java_string_from_pool(775); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 9; + // "October" + _r4.o = xmlvm_create_java_string_from_pool(776); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 10; + // "November" + _r4.o = xmlvm_create_java_string_from_pool(777); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 11; + // "December" + _r4.o = xmlvm_create_java_string_from_pool(778); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + org_apache_harmony_luni_util_Util_PUT_MONTHS( _r2.o); + XMLVM_SOURCE_POSITION("Util.java", 40) + // "os.encoding" + _r2.o = xmlvm_create_java_string_from_pool(674); + _r0.o = java_lang_System_getProperty___java_lang_String(_r2.o); + if (_r0.o == JAVA_NULL) goto label124; + XMLVM_TRY_BEGIN(w5509aaac19b1c68) + // Begin try + XMLVM_SOURCE_POSITION("Util.java", 41) + XMLVM_SOURCE_POSITION("Util.java", 43) + // "" + _r2.o = xmlvm_create_java_string_from_pool(21); + XMLVM_CHECK_NPE(2) + java_lang_String_getBytes___java_lang_String(_r2.o, _r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w5509aaac19b1c68) + XMLVM_CATCH_SPECIFIC(w5509aaac19b1c68,java_lang_Throwable,127) + XMLVM_CATCH_END(w5509aaac19b1c68) + XMLVM_RESTORE_EXCEPTION_ENV(w5509aaac19b1c68) + label124:; + XMLVM_SOURCE_POSITION("Util.java", 48) + org_apache_harmony_luni_util_Util_PUT_defaultEncoding( _r0.o); + XMLVM_SOURCE_POSITION("Util.java", 49) + XMLVM_EXIT_METHOD() + return; + label127:; + XMLVM_SOURCE_POSITION("Util.java", 44) + java_lang_Thread* curThread_w5509aaac19b1c76 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r2.o = curThread_w5509aaac19b1c76->fields.java_lang_Thread.xmlvmException_; + _r1 = _r2; + _r0.o = JAVA_NULL; + XMLVM_SOURCE_POSITION("Util.java", 45) + goto label124; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_luni_util_Util.h b/tests/nbody-java/org_apache_harmony_luni_util_Util.h new file mode 100644 index 0000000000000..a0d898b445b01 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_luni_util_Util.h @@ -0,0 +1,101 @@ +#ifndef __ORG_APACHE_HARMONY_LUNI_UTIL_UTIL__ +#define __ORG_APACHE_HARMONY_LUNI_UTIL_UTIL__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_Util 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Character +#define XMLVM_FORWARD_DECL_java_lang_Character +XMLVM_FORWARD_DECL(java_lang_Character) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Integer +#define XMLVM_FORWARD_DECL_java_lang_Integer +XMLVM_FORWARD_DECL(java_lang_Integer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Throwable +#define XMLVM_FORWARD_DECL_java_lang_Throwable +XMLVM_FORWARD_DECL(java_lang_Throwable) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_internal_nls_Messages +XMLVM_FORWARD_DECL(org_apache_harmony_luni_internal_nls_Messages) +#endif +// Class declarations for org.apache.harmony.luni.util.Util +XMLVM_DEFINE_CLASS(org_apache_harmony_luni_util_Util, 6, XMLVM_ITABLE_SIZE_org_apache_harmony_luni_util_Util) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_luni_util_Util_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_Util +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_luni_util_Util \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_luni_util_Util \ + } org_apache_harmony_luni_util_Util + +struct org_apache_harmony_luni_util_Util { + __TIB_DEFINITION_org_apache_harmony_luni_util_Util* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_luni_util_Util; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_Util +#define XMLVM_FORWARD_DECL_org_apache_harmony_luni_util_Util +typedef struct org_apache_harmony_luni_util_Util org_apache_harmony_luni_util_Util; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_luni_util_Util 6 + +void __INIT_org_apache_harmony_luni_util_Util(); +void __INIT_IMPL_org_apache_harmony_luni_util_Util(); +void __DELETE_org_apache_harmony_luni_util_Util(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_luni_util_Util(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_luni_util_Util(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_luni_util_Util(); +JAVA_OBJECT org_apache_harmony_luni_util_Util_GET_WEEKDAYS(); +void org_apache_harmony_luni_util_Util_PUT_WEEKDAYS(JAVA_OBJECT v); +JAVA_OBJECT org_apache_harmony_luni_util_Util_GET_MONTHS(); +void org_apache_harmony_luni_util_Util_PUT_MONTHS(JAVA_OBJECT v); +JAVA_OBJECT org_apache_harmony_luni_util_Util_GET_defaultEncoding(); +void org_apache_harmony_luni_util_Util_PUT_defaultEncoding(JAVA_OBJECT v); +void org_apache_harmony_luni_util_Util___INIT___(JAVA_OBJECT me); +JAVA_OBJECT org_apache_harmony_luni_util_Util_getBytes___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_luni_util_Util_getUTF8Bytes___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_luni_util_Util_toString___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY(JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_luni_util_Util_toString___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT org_apache_harmony_luni_util_Util_toUTF8String___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_LONG org_apache_harmony_luni_util_Util_parseDate___java_lang_String(JAVA_OBJECT n1); +JAVA_INT org_apache_harmony_luni_util_Util_parse___java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); +JAVA_OBJECT org_apache_harmony_luni_util_Util_convertFromUTF8___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3); +JAVA_OBJECT org_apache_harmony_luni_util_Util_convertUTF8WithBuf___byte_1ARRAY_char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4); +JAVA_OBJECT org_apache_harmony_luni_util_Util_decode___java_lang_String_boolean(JAVA_OBJECT n1, JAVA_BOOLEAN n2); +JAVA_OBJECT org_apache_harmony_luni_util_Util_decode___java_lang_String_boolean_java_lang_String(JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3); +JAVA_OBJECT org_apache_harmony_luni_util_Util_encodeURL___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_luni_util_Util_toASCIILowerCase___java_lang_String(JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_luni_util_Util_toASCIIUpperCase___java_lang_String(JAVA_OBJECT n1); +void org_apache_harmony_luni_util_Util___CLINIT_(); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.c b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.c new file mode 100644 index 0000000000000..d56bc599c05ef --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.c @@ -0,0 +1,4462 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_lang_StringBuilder.h" +#include "java_nio_charset_Charset.h" +#include "java_security_AccessController.h" +#include "java_util_ArrayList.h" +#include "java_util_Collections.h" +#include "java_util_HashMap.h" +#include "java_util_Iterator.h" +#include "java_util_Map.h" +#include "org_apache_harmony_niochar_CharsetProviderImpl_1.h" + +#include "org_apache_harmony_niochar_CharsetProviderImpl.h" + +#define XMLVM_CURRENT_CLASS_NAME CharsetProviderImpl +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_niochar_CharsetProviderImpl + +__TIB_DEFINITION_org_apache_harmony_niochar_CharsetProviderImpl __TIB_org_apache_harmony_niochar_CharsetProviderImpl = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_niochar_CharsetProviderImpl, // classInitializer + "org.apache.harmony.niochar.CharsetProviderImpl", // className + "org.apache.harmony.niochar", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_charset_spi_CharsetProvider, // extends + sizeof(org_apache_harmony_niochar_CharsetProviderImpl), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_BOOLEAN _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_HAS_LOADED_NATIVES; +static JAVA_INT _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_CLASS; +static JAVA_INT _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_INSTANCE; +static JAVA_INT _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_ALIASES; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_niochar_CharsetProviderImpl() +{ + staticInitializerLock(&__TIB_org_apache_harmony_niochar_CharsetProviderImpl); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_niochar_CharsetProviderImpl.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_niochar_CharsetProviderImpl); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_niochar_CharsetProviderImpl.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_niochar_CharsetProviderImpl.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.niochar.CharsetProviderImpl") + __INIT_IMPL_org_apache_harmony_niochar_CharsetProviderImpl(); + } +} + +void __INIT_IMPL_org_apache_harmony_niochar_CharsetProviderImpl() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_charset_spi_CharsetProvider) + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_niochar_CharsetProviderImpl; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_niochar_CharsetProviderImpl.vtable, __TIB_java_nio_charset_spi_CharsetProvider.vtable, sizeof(__TIB_java_nio_charset_spi_CharsetProvider.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.vtable[7] = (VTABLE_PTR) &org_apache_harmony_niochar_CharsetProviderImpl_charsets__; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.vtable[6] = (VTABLE_PTR) &org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String; + // Initialize interface information + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_HAS_LOADED_NATIVES = 0; + _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_CLASS = 0; + _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_INSTANCE = 1; + _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_ALIASES = 2; + + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_niochar_CharsetProviderImpl); + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.clazz = __CLASS_org_apache_harmony_niochar_CharsetProviderImpl; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_CharsetProviderImpl); + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1ARRAY); + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_CharsetProviderImpl_2ARRAY); + org_apache_harmony_niochar_CharsetProviderImpl___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_niochar_CharsetProviderImpl] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_niochar_CharsetProviderImpl.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_niochar_CharsetProviderImpl(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_niochar_CharsetProviderImpl] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_charset_spi_CharsetProvider(me, 0 || derivedClassWillRegisterFinalizer); + ((org_apache_harmony_niochar_CharsetProviderImpl*) me)->fields.org_apache_harmony_niochar_CharsetProviderImpl.cache_ = (java_util_Map*) JAVA_NULL; + ((org_apache_harmony_niochar_CharsetProviderImpl*) me)->fields.org_apache_harmony_niochar_CharsetProviderImpl.charsets_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((org_apache_harmony_niochar_CharsetProviderImpl*) me)->fields.org_apache_harmony_niochar_CharsetProviderImpl.packageName_ = (java_lang_String*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_niochar_CharsetProviderImpl() +{ XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) +org_apache_harmony_niochar_CharsetProviderImpl* me = (org_apache_harmony_niochar_CharsetProviderImpl*) XMLVM_MALLOC(sizeof(org_apache_harmony_niochar_CharsetProviderImpl)); + me->tib = &__TIB_org_apache_harmony_niochar_CharsetProviderImpl; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_niochar_CharsetProviderImpl] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_CharsetProviderImpl() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_apache_harmony_niochar_CharsetProviderImpl(); + org_apache_harmony_niochar_CharsetProviderImpl___INIT___(me); + return me; +} + +JAVA_BOOLEAN org_apache_harmony_niochar_CharsetProviderImpl_GET_HAS_LOADED_NATIVES() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) + return _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_HAS_LOADED_NATIVES; +} + +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_HAS_LOADED_NATIVES(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) +_STATIC_org_apache_harmony_niochar_CharsetProviderImpl_HAS_LOADED_NATIVES = v; +} + +JAVA_INT org_apache_harmony_niochar_CharsetProviderImpl_GET_CHARSET_CLASS() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) + return _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_CLASS; +} + +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_CHARSET_CLASS(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) +_STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_CLASS = v; +} + +JAVA_INT org_apache_harmony_niochar_CharsetProviderImpl_GET_CHARSET_INSTANCE() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) + return _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_INSTANCE; +} + +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_CHARSET_INSTANCE(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) +_STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_INSTANCE = v; +} + +JAVA_INT org_apache_harmony_niochar_CharsetProviderImpl_GET_CHARSET_ALIASES() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) + return _STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_ALIASES; +} + +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_CHARSET_ALIASES(JAVA_INT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) +_STATIC_org_apache_harmony_niochar_CharsetProviderImpl_CHARSET_ALIASES = v; +} + +JAVA_BOOLEAN org_apache_harmony_niochar_CharsetProviderImpl_hasLoadedNatives__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_hasLoadedNatives__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "hasLoadedNatives", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 86) + _r0.i = org_apache_harmony_niochar_CharsetProviderImpl_GET_HAS_LOADED_NATIVES(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_toUpperCase___java_lang_String(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_toUpperCase___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "toUpperCase", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + _r5.o = n1; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 108) + //java_lang_String_length__[8] + XMLVM_CHECK_NPE(5) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o); + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 109) + XMLVM_CLASS_INIT(char) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_char, _r2.i); + _r1.i = 0; + label7:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 110) + if (_r1.i >= _r2.i) goto label46; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 111) + //java_lang_String_charAt___int[6] + XMLVM_CHECK_NPE(5) + _r0.i = (*(JAVA_CHAR (*)(JAVA_OBJECT, JAVA_INT)) ((java_lang_String*) _r5.o)->tib->vtable[6])(_r5.o, _r1.i); + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 112) + _r4.i = org_apache_harmony_niochar_CharsetProviderImpl_passthru___char(_r0.i); + if (_r4.i == 0) goto label24; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 113) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r0.i; + label21:; + _r1.i = _r1.i + 1; + goto label7; + label24:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 115) + _r4.i = 97; + if (_r0.i < _r4.i) goto label40; + _r4.i = 122; + if (_r0.i > _r4.i) goto label40; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 117) + _r4.i = 32; + _r4.i = _r0.i - _r4.i; + _r4.i = _r4.i & 0xffff; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r4.i; + goto label21; + label40:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 119) + + + // Red class access removed: java.nio.charset.IllegalCharsetNameException::new-instance + XMLVM_RED_CLASS_DEPENDENCY(); + + + // Red class access removed: java.nio.charset.IllegalCharsetNameException:: + XMLVM_RED_CLASS_DEPENDENCY(); + XMLVM_THROW_CUSTOM(_r4.o) + label46:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 123) + _r4.o = __NEW_java_lang_String(); + XMLVM_CHECK_NPE(4) + java_lang_String___INIT____char_1ARRAY(_r4.o, _r3.o); + XMLVM_EXIT_METHOD() + return _r4.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN org_apache_harmony_niochar_CharsetProviderImpl_passthru___char(JAVA_CHAR n1) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_passthru___char] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "passthru", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 130) + _r0.i = 65; + if (_r1.i < _r0.i) goto label8; + _r0.i = 90; + if (_r1.i <= _r0.i) goto label32; + label8:; + _r0.i = 48; + if (_r1.i < _r0.i) goto label16; + _r0.i = 57; + if (_r1.i <= _r0.i) goto label32; + label16:; + _r0.i = 45; + if (_r1.i == _r0.i) goto label32; + _r0.i = 46; + if (_r1.i == _r0.i) goto label32; + _r0.i = 58; + if (_r1.i == _r0.i) goto label32; + _r0.i = 95; + if (_r1.i != _r0.i) goto label34; + label32:; + _r0.i = 1; + label33:; + XMLVM_EXIT_METHOD() + return _r0.i; + label34:; + _r0.i = 0; + goto label33; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_niochar_CharsetProviderImpl___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl___INIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r7.o = me; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 141) + XMLVM_CHECK_NPE(7) + java_nio_charset_spi_CharsetProvider___INIT___(_r7.o); + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 142) + _r4.o = __NEW_java_util_HashMap(); + XMLVM_CHECK_NPE(4) + java_util_HashMap___INIT___(_r4.o); + _r4.o = java_util_Collections_synchronizedMap___java_util_Map(_r4.o); + XMLVM_CHECK_NPE(7) + ((org_apache_harmony_niochar_CharsetProviderImpl*) _r7.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.cache_ = _r4.o; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 143) + XMLVM_CHECK_NPE(7) + _r4.o = org_apache_harmony_niochar_CharsetProviderImpl_getCharsetsInfo__(_r7.o); + XMLVM_CHECK_NPE(7) + ((org_apache_harmony_niochar_CharsetProviderImpl*) _r7.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.charsets_ = _r4.o; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 144) + XMLVM_CHECK_NPE(7) + _r4.o = org_apache_harmony_niochar_CharsetProviderImpl_getPackageName__(_r7.o); + XMLVM_CHECK_NPE(7) + ((org_apache_harmony_niochar_CharsetProviderImpl*) _r7.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.packageName_ = _r4.o; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 145) + _r3.i = 0; + label27:; + XMLVM_CHECK_NPE(7) + _r4.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r7.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.charsets_; + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o)); + if (_r3.i >= _r4.i) goto label70; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 146) + XMLVM_CHECK_NPE(7) + _r4.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r7.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.charsets_; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i); + _r4.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r5.i = 2; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + _r4.o = _r4.o; + _r0 = _r4; + _r0.o = _r0.o; + _r2 = _r0; + _r1.i = 0; + label46:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 147) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r1.i >= _r4.i) goto label67; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 148) + XMLVM_CHECK_NPE(7) + _r4.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r7.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.cache_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + _r5.o = org_apache_harmony_niochar_CharsetProviderImpl_toUpperCase___java_lang_String(_r5.o); + XMLVM_CHECK_NPE(7) + _r6.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r7.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.charsets_; + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r3.i); + _r6.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_CHECK_NPE(4) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object])(_r4.o, _r5.o, _r6.o); + _r1.i = _r1.i + 1; + goto label46; + label67:; + _r3.i = _r3.i + 1; + goto label27; + label70:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 151) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_charsets__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_charsets__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "charsets", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 160) + _r1.o = __NEW_java_util_ArrayList(); + XMLVM_CHECK_NPE(1) + java_util_ArrayList___INIT___(_r1.o); + _r0.i = 0; + label6:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 161) + XMLVM_CHECK_NPE(4) + _r2.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r4.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.charsets_; + _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o)); + if (_r0.i >= _r2.i) goto label35; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 162) + XMLVM_CHECK_NPE(4) + _r2.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r4.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.charsets_; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i); + _r2.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i]; + _r3.i = 2; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r2.o = _r2.o; + _r2.o = _r2.o; + _r3.i = 0; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + //org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String[6] + XMLVM_CHECK_NPE(4) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((org_apache_harmony_niochar_CharsetProviderImpl*) _r4.o)->tib->vtable[6])(_r4.o, _r2.o); + //java_util_ArrayList_add___java_lang_Object[7] + XMLVM_CHECK_NPE(1) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[7])(_r1.o, _r2.o); + _r0.i = _r0.i + 1; + goto label6; + label35:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 165) + //java_util_ArrayList_iterator__[12] + XMLVM_CHECK_NPE(1) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_ArrayList*) _r1.o)->tib->vtable[12])(_r1.o); + XMLVM_EXIT_METHOD() + return _r2.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "charsetForName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r10.o = me; + _r11.o = n1; + _r9.i = 2; + _r8.i = 0; + _r7.i = 1; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 180) + XMLVM_CHECK_NPE(10) + _r5.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r10.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.cache_; + _r6.o = org_apache_harmony_niochar_CharsetProviderImpl_toUpperCase___java_lang_String(_r11.o); + XMLVM_CHECK_NPE(5) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r5.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_get___java_lang_Object])(_r5.o, _r6.o); + _r2.o = _r2.o; + if (_r2.o != JAVA_NULL) goto label19; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 181) + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 182) + _r5.o = JAVA_NULL; + label18:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 207) + XMLVM_EXIT_METHOD() + return _r5.o; + label19:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 185) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + if (_r5.o != JAVA_NULL) goto label79; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 186) + _r5.o = __NEW_java_lang_StringBuilder(); + XMLVM_CHECK_NPE(5) + java_lang_StringBuilder___INIT___(_r5.o); + XMLVM_CHECK_NPE(10) + _r6.o = ((org_apache_harmony_niochar_CharsetProviderImpl*) _r10.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl.packageName_; + XMLVM_CHECK_NPE(5) + _r5.o = java_lang_StringBuilder_append___java_lang_String(_r5.o, _r6.o); + // "." + _r6.o = xmlvm_create_java_string_from_pool(52); + XMLVM_CHECK_NPE(5) + _r6.o = java_lang_StringBuilder_append___java_lang_String(_r5.o, _r6.o); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + _r5.o = _r5.o; + XMLVM_CHECK_NPE(6) + _r5.o = java_lang_StringBuilder_append___java_lang_String(_r6.o, _r5.o); + //java_lang_StringBuilder_toString__[5] + XMLVM_CHECK_NPE(5) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r5.o)->tib->vtable[5])(_r5.o); + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 188) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r9.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i]; + _r5.o = _r5.o; + _r5.o = _r5.o; + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r8.i); + _r3.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i]; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 189) + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r9.i); + _r5.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i]; + _r5.o = _r5.o; + _r0 = _r5; + _r0.o = _r0.o; + _r1 = _r0; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 190) + _r5.o = __NEW_org_apache_harmony_niochar_CharsetProviderImpl_1(); + XMLVM_CHECK_NPE(5) + org_apache_harmony_niochar_CharsetProviderImpl_1___INIT____org_apache_harmony_niochar_CharsetProviderImpl_java_lang_String_java_lang_String_java_lang_String_1ARRAY(_r5.o, _r10.o, _r4.o, _r3.o, _r1.o); + _r5.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r5.o); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r5.o; + label79:; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + _r10.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + _r10.o = _r10.o; + _r5 = _r10; + goto label18; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_niochar_CharsetProviderImpl_putCharsets___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_putCharsets___java_util_Map] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "putCharsets", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + _r6.o = me; + _r7.o = n1; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 221) + XMLVM_CHECK_NPE(6) + _r1.o = org_apache_harmony_niochar_CharsetProviderImpl_getCharsetsInfo__(_r6.o); + _r3.i = 0; + label5:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 222) + _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o)); + if (_r3.i >= _r4.i) goto label32; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 223) + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i); + _r4.o = ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + _r5.i = 2; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r4.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + _r4.o = _r4.o; + _r4.o = _r4.o; + _r5.i = 0; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r0.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 224) + //org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String[6] + XMLVM_CHECK_NPE(6) + _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT)) ((org_apache_harmony_niochar_CharsetProviderImpl*) _r6.o)->tib->vtable[6])(_r6.o, _r0.o); + if (_r2.o == JAVA_NULL) goto label29; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 225) + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 226) + XMLVM_CHECK_NPE(7) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Map_put___java_lang_Object_java_lang_Object])(_r7.o, _r0.o, _r2.o); + label29:; + _r3.i = _r3.i + 1; + goto label5; + label32:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 229) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_getPackageName__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_getPackageName__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "getPackageName", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 232) + // "org.apache.harmony.niochar.charset" + _r0.o = xmlvm_create_java_string_from_pool(188); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_getCharsetsInfo__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_getCharsetsInfo__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "getCharsetsInfo", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + XMLVMElem _r5; + XMLVMElem _r6; + XMLVMElem _r7; + XMLVMElem _r8; + XMLVMElem _r9; + XMLVMElem _r10; + XMLVMElem _r11; + _r11.o = me; + _r10.o = JAVA_NULL; + _r9.i = 3; + _r8.i = 2; + _r7.i = 1; + _r6.i = 0; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 252) + _r1.i = 93; + XMLVM_CLASS_INIT(java_lang_Object) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object_1ARRAY, _r1.i); + XMLVM_CLASS_INIT(java_lang_Object) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "US_ASCII" + _r2.o = xmlvm_create_java_string_from_pool(189); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r2.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r2.i = 13; + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r2.i); + // "US-ASCII" + _r3.o = xmlvm_create_java_string_from_pool(190); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + // "ANSI_X3.4-1968" + _r3.o = xmlvm_create_java_string_from_pool(191); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r3.o; + // "ANSI_X3.4-1986" + _r3.o = xmlvm_create_java_string_from_pool(192); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + // "iso-ir-6" + _r3.o = xmlvm_create_java_string_from_pool(193); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r3.o; + _r3.i = 4; + // "iso_646.irv:1983" + _r4.o = xmlvm_create_java_string_from_pool(194); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 5; + // "ISO_646.irv:1991" + _r4.o = xmlvm_create_java_string_from_pool(195); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 6; + // "ASCII" + _r4.o = xmlvm_create_java_string_from_pool(196); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 7; + // "ISO646-US" + _r4.o = xmlvm_create_java_string_from_pool(197); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 8; + // "us" + _r4.o = xmlvm_create_java_string_from_pool(198); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 9; + // "cp367" + _r4.o = xmlvm_create_java_string_from_pool(199); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 10; + // "ascii7" + _r4.o = xmlvm_create_java_string_from_pool(200); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 11; + // "646" + _r4.o = xmlvm_create_java_string_from_pool(201); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + _r3.i = 12; + // "csASCII" + _r4.o = xmlvm_create_java_string_from_pool(202); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r3.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r2.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r6.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r1.o; + XMLVM_CLASS_INIT(java_lang_Object) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "KOI8_R" + _r2.o = xmlvm_create_java_string_from_pool(203); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r2.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "KOI8-R" + _r3.o = xmlvm_create_java_string_from_pool(204); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + // "csKOI8R" + _r3.o = xmlvm_create_java_string_from_pool(205); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r3.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r2.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r1.o; + XMLVM_CLASS_INIT(java_lang_Object) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "CP_1250" + _r2.o = xmlvm_create_java_string_from_pool(206); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r2.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1250" + _r3.o = xmlvm_create_java_string_from_pool(207); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + // "cp1250" + _r3.o = xmlvm_create_java_string_from_pool(208); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r3.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r2.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r8.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r1.o; + XMLVM_CLASS_INIT(java_lang_Object) + _r1.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "CP_1251" + _r2.o = xmlvm_create_java_string_from_pool(209); + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r2.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1251" + _r3.o = xmlvm_create_java_string_from_pool(210); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + // "cp1251" + _r3.o = xmlvm_create_java_string_from_pool(211); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r3.o; + XMLVM_CHECK_NPE(1) + XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r2.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r9.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r1.o; + _r1.i = 4; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "CP_1252" + _r3.o = xmlvm_create_java_string_from_pool(212); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1252" + _r4.o = xmlvm_create_java_string_from_pool(213); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1252" + _r4.o = xmlvm_create_java_string_from_pool(214); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 5; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "CP_1253" + _r3.o = xmlvm_create_java_string_from_pool(215); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1253" + _r4.o = xmlvm_create_java_string_from_pool(216); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1253" + _r4.o = xmlvm_create_java_string_from_pool(217); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 6; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "CP_1254" + _r3.o = xmlvm_create_java_string_from_pool(218); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1254" + _r4.o = xmlvm_create_java_string_from_pool(219); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1254" + _r4.o = xmlvm_create_java_string_from_pool(220); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 7; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "CP_1257" + _r3.o = xmlvm_create_java_string_from_pool(221); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1257" + _r4.o = xmlvm_create_java_string_from_pool(222); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1257" + _r4.o = xmlvm_create_java_string_from_pool(223); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 8; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_1" + _r3.o = xmlvm_create_java_string_from_pool(224); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 15; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-1" + _r4.o = xmlvm_create_java_string_from_pool(175); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "8859_1" + _r4.o = xmlvm_create_java_string_from_pool(225); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO8859-1" + _r4.o = xmlvm_create_java_string_from_pool(111); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ISO8859_1" + _r4.o = xmlvm_create_java_string_from_pool(116); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ISO_8859-1:1987" + _r5.o = xmlvm_create_java_string_from_pool(226); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "iso-ir-100" + _r5.o = xmlvm_create_java_string_from_pool(227); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "ISO_8859-1" + _r5.o = xmlvm_create_java_string_from_pool(228); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 7; + // "latin1" + _r5.o = xmlvm_create_java_string_from_pool(229); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 8; + // "l1" + _r5.o = xmlvm_create_java_string_from_pool(230); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 9; + // "IBM819" + _r5.o = xmlvm_create_java_string_from_pool(231); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 10; + // "ISO_8859_1" + _r5.o = xmlvm_create_java_string_from_pool(224); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 11; + // "IBM-819" + _r5.o = xmlvm_create_java_string_from_pool(232); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 12; + // "CP819" + _r5.o = xmlvm_create_java_string_from_pool(233); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 13; + // "819" + _r5.o = xmlvm_create_java_string_from_pool(234); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 14; + // "csISOLatin1" + _r5.o = xmlvm_create_java_string_from_pool(235); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 9; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_2" + _r3.o = xmlvm_create_java_string_from_pool(236); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 8; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-2" + _r4.o = xmlvm_create_java_string_from_pool(237); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "8859_2" + _r4.o = xmlvm_create_java_string_from_pool(238); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO_8859-2:1987" + _r4.o = xmlvm_create_java_string_from_pool(239); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "iso-ir-101" + _r4.o = xmlvm_create_java_string_from_pool(240); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ISO_8859-2" + _r5.o = xmlvm_create_java_string_from_pool(241); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "latin2" + _r5.o = xmlvm_create_java_string_from_pool(242); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "l2" + _r5.o = xmlvm_create_java_string_from_pool(243); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 7; + // "csISOLatin2" + _r5.o = xmlvm_create_java_string_from_pool(244); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 10; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_4" + _r3.o = xmlvm_create_java_string_from_pool(245); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 8; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-4" + _r4.o = xmlvm_create_java_string_from_pool(246); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "8859_4" + _r4.o = xmlvm_create_java_string_from_pool(247); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO_8859-4:1988" + _r4.o = xmlvm_create_java_string_from_pool(248); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "iso-ir-110" + _r4.o = xmlvm_create_java_string_from_pool(249); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ISO_8859-4" + _r5.o = xmlvm_create_java_string_from_pool(250); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "latin4" + _r5.o = xmlvm_create_java_string_from_pool(251); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "l4" + _r5.o = xmlvm_create_java_string_from_pool(252); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 7; + // "csISOLatin4" + _r5.o = xmlvm_create_java_string_from_pool(253); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 11; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_5" + _r3.o = xmlvm_create_java_string_from_pool(254); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 7; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-5" + _r4.o = xmlvm_create_java_string_from_pool(255); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "8859_5" + _r4.o = xmlvm_create_java_string_from_pool(256); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO_8859-5:1988" + _r4.o = xmlvm_create_java_string_from_pool(257); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "iso-ir-144" + _r4.o = xmlvm_create_java_string_from_pool(258); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ISO_8859-5" + _r5.o = xmlvm_create_java_string_from_pool(259); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "cyrillic" + _r5.o = xmlvm_create_java_string_from_pool(260); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "csISOLatinCyrillic" + _r5.o = xmlvm_create_java_string_from_pool(261); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 12; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_7" + _r3.o = xmlvm_create_java_string_from_pool(262); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 9; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-7" + _r4.o = xmlvm_create_java_string_from_pool(263); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "ISO_8859-7:1987" + _r4.o = xmlvm_create_java_string_from_pool(264); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO_8859-7" + _r4.o = xmlvm_create_java_string_from_pool(265); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "iso-ir-126" + _r4.o = xmlvm_create_java_string_from_pool(266); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ELOT_928" + _r5.o = xmlvm_create_java_string_from_pool(267); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "ECMA-118" + _r5.o = xmlvm_create_java_string_from_pool(268); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "greek" + _r5.o = xmlvm_create_java_string_from_pool(269); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 7; + // "greek8" + _r5.o = xmlvm_create_java_string_from_pool(270); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 8; + // "csISOLatinGreek" + _r5.o = xmlvm_create_java_string_from_pool(271); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 13; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_9" + _r3.o = xmlvm_create_java_string_from_pool(272); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 7; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-9" + _r4.o = xmlvm_create_java_string_from_pool(273); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "ISO_8859-9:1989" + _r4.o = xmlvm_create_java_string_from_pool(274); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "iso-ir-148" + _r4.o = xmlvm_create_java_string_from_pool(275); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ISO_8859-9" + _r4.o = xmlvm_create_java_string_from_pool(276); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "latin5" + _r5.o = xmlvm_create_java_string_from_pool(277); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "l5" + _r5.o = xmlvm_create_java_string_from_pool(278); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "csISOLatin5" + _r5.o = xmlvm_create_java_string_from_pool(279); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 14; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_13" + _r3.o = xmlvm_create_java_string_from_pool(280); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r7.i); + // "ISO-8859-13" + _r4.o = xmlvm_create_java_string_from_pool(281); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 15; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "ISO_8859_15" + _r3.o = xmlvm_create_java_string_from_pool(282); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "ISO-8859-15" + _r4.o = xmlvm_create_java_string_from_pool(283); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "ISO_8859-15" + _r4.o = xmlvm_create_java_string_from_pool(284); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "Latin-9" + _r4.o = xmlvm_create_java_string_from_pool(285); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 16; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "UTF_8" + _r3.o = xmlvm_create_java_string_from_pool(286); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "UTF-8" + _r4.o = xmlvm_create_java_string_from_pool(100); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "UTF8" + _r4.o = xmlvm_create_java_string_from_pool(287); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 17; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "UTF_16" + _r3.o = xmlvm_create_java_string_from_pool(288); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "UTF-16" + _r4.o = xmlvm_create_java_string_from_pool(289); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "UTF16" + _r4.o = xmlvm_create_java_string_from_pool(290); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "UTF_16" + _r4.o = xmlvm_create_java_string_from_pool(288); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 18; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "UTF_16LE" + _r3.o = xmlvm_create_java_string_from_pool(291); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "UTF-16LE" + _r4.o = xmlvm_create_java_string_from_pool(292); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "X-UTF-16LE" + _r4.o = xmlvm_create_java_string_from_pool(293); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "UTF_16LE" + _r4.o = xmlvm_create_java_string_from_pool(291); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 19; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "UTF_16BE" + _r3.o = xmlvm_create_java_string_from_pool(294); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "UTF-16BE" + _r4.o = xmlvm_create_java_string_from_pool(295); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "X-UTF-16BE" + _r4.o = xmlvm_create_java_string_from_pool(296); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "UTF_16BE" + _r4.o = xmlvm_create_java_string_from_pool(294); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 20; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "IBM866" + _r3.o = xmlvm_create_java_string_from_pool(297); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM866" + _r4.o = xmlvm_create_java_string_from_pool(297); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp866" + _r4.o = xmlvm_create_java_string_from_pool(298); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "866" + _r4.o = xmlvm_create_java_string_from_pool(299); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM866" + _r4.o = xmlvm_create_java_string_from_pool(300); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 21; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.windows_1255" + _r3.o = xmlvm_create_java_string_from_pool(301); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1255" + _r4.o = xmlvm_create_java_string_from_pool(302); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1255" + _r4.o = xmlvm_create_java_string_from_pool(303); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 22; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.windows_1256" + _r3.o = xmlvm_create_java_string_from_pool(304); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "windows-1256" + _r4.o = xmlvm_create_java_string_from_pool(305); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1256" + _r4.o = xmlvm_create_java_string_from_pool(306); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 23; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM1026" + _r3.o = xmlvm_create_java_string_from_pool(307); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "IBM1026" + _r4.o = xmlvm_create_java_string_from_pool(308); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "CP1026" + _r4.o = xmlvm_create_java_string_from_pool(309); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "csIBM1026" + _r4.o = xmlvm_create_java_string_from_pool(310); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 24; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM1047" + _r3.o = xmlvm_create_java_string_from_pool(311); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM1047" + _r4.o = xmlvm_create_java_string_from_pool(312); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "1047" + _r4.o = xmlvm_create_java_string_from_pool(313); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1047" + _r4.o = xmlvm_create_java_string_from_pool(314); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ibm-1047" + _r4.o = xmlvm_create_java_string_from_pool(315); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 25; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM037" + _r3.o = xmlvm_create_java_string_from_pool(316); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 7; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM037" + _r4.o = xmlvm_create_java_string_from_pool(317); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp037" + _r4.o = xmlvm_create_java_string_from_pool(318); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-us" + _r4.o = xmlvm_create_java_string_from_pool(319); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ebcdic-cp-ca" + _r4.o = xmlvm_create_java_string_from_pool(320); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ebcdic-cp-wt" + _r5.o = xmlvm_create_java_string_from_pool(321); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "ebcdic-cp-nl" + _r5.o = xmlvm_create_java_string_from_pool(322); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "csIBM037" + _r5.o = xmlvm_create_java_string_from_pool(323); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 26; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM424" + _r3.o = xmlvm_create_java_string_from_pool(324); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM424" + _r4.o = xmlvm_create_java_string_from_pool(325); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp424" + _r4.o = xmlvm_create_java_string_from_pool(326); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-he" + _r4.o = xmlvm_create_java_string_from_pool(327); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM424" + _r4.o = xmlvm_create_java_string_from_pool(328); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 27; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM437" + _r3.o = xmlvm_create_java_string_from_pool(329); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM437" + _r4.o = xmlvm_create_java_string_from_pool(330); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp437" + _r4.o = xmlvm_create_java_string_from_pool(331); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "437" + _r4.o = xmlvm_create_java_string_from_pool(332); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csPC8CodePage437" + _r4.o = xmlvm_create_java_string_from_pool(333); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 28; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM500" + _r3.o = xmlvm_create_java_string_from_pool(334); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 5; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM500" + _r4.o = xmlvm_create_java_string_from_pool(335); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "CP500" + _r4.o = xmlvm_create_java_string_from_pool(336); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-be" + _r4.o = xmlvm_create_java_string_from_pool(337); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ebcdic-cp-ch" + _r4.o = xmlvm_create_java_string_from_pool(338); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "csIBM500" + _r5.o = xmlvm_create_java_string_from_pool(339); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 29; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM775" + _r3.o = xmlvm_create_java_string_from_pool(340); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "IBM775" + _r4.o = xmlvm_create_java_string_from_pool(341); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp775" + _r4.o = xmlvm_create_java_string_from_pool(342); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "csPC775Baltic" + _r4.o = xmlvm_create_java_string_from_pool(343); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 30; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM850" + _r3.o = xmlvm_create_java_string_from_pool(344); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM850" + _r4.o = xmlvm_create_java_string_from_pool(345); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp850" + _r4.o = xmlvm_create_java_string_from_pool(346); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "850" + _r4.o = xmlvm_create_java_string_from_pool(347); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csPC850Multilingual" + _r4.o = xmlvm_create_java_string_from_pool(348); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 31; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM852" + _r3.o = xmlvm_create_java_string_from_pool(349); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM852" + _r4.o = xmlvm_create_java_string_from_pool(350); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp852" + _r4.o = xmlvm_create_java_string_from_pool(351); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "852" + _r4.o = xmlvm_create_java_string_from_pool(352); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csPCp852" + _r4.o = xmlvm_create_java_string_from_pool(353); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 32; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM855" + _r3.o = xmlvm_create_java_string_from_pool(354); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM855" + _r4.o = xmlvm_create_java_string_from_pool(355); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp855" + _r4.o = xmlvm_create_java_string_from_pool(356); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "855" + _r4.o = xmlvm_create_java_string_from_pool(357); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM855" + _r4.o = xmlvm_create_java_string_from_pool(358); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 33; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM857" + _r3.o = xmlvm_create_java_string_from_pool(359); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM857" + _r4.o = xmlvm_create_java_string_from_pool(360); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp857" + _r4.o = xmlvm_create_java_string_from_pool(361); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "857" + _r4.o = xmlvm_create_java_string_from_pool(362); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM857" + _r4.o = xmlvm_create_java_string_from_pool(363); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 34; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM860" + _r3.o = xmlvm_create_java_string_from_pool(364); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM860" + _r4.o = xmlvm_create_java_string_from_pool(365); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp860" + _r4.o = xmlvm_create_java_string_from_pool(366); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "860" + _r4.o = xmlvm_create_java_string_from_pool(367); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM860" + _r4.o = xmlvm_create_java_string_from_pool(368); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 35; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM861" + _r3.o = xmlvm_create_java_string_from_pool(369); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 5; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM861" + _r4.o = xmlvm_create_java_string_from_pool(370); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp861" + _r4.o = xmlvm_create_java_string_from_pool(371); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "861" + _r4.o = xmlvm_create_java_string_from_pool(372); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "cp-is" + _r4.o = xmlvm_create_java_string_from_pool(373); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "csIBM861" + _r5.o = xmlvm_create_java_string_from_pool(374); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 36; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM862" + _r3.o = xmlvm_create_java_string_from_pool(375); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM862" + _r4.o = xmlvm_create_java_string_from_pool(376); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp862" + _r4.o = xmlvm_create_java_string_from_pool(377); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "862" + _r4.o = xmlvm_create_java_string_from_pool(378); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csPC862LatinHebrew" + _r4.o = xmlvm_create_java_string_from_pool(379); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 37; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM863" + _r3.o = xmlvm_create_java_string_from_pool(380); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM863" + _r4.o = xmlvm_create_java_string_from_pool(381); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp863" + _r4.o = xmlvm_create_java_string_from_pool(382); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "863" + _r4.o = xmlvm_create_java_string_from_pool(383); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM863" + _r4.o = xmlvm_create_java_string_from_pool(384); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 38; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM865" + _r3.o = xmlvm_create_java_string_from_pool(385); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM865" + _r4.o = xmlvm_create_java_string_from_pool(386); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp865" + _r4.o = xmlvm_create_java_string_from_pool(387); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "865" + _r4.o = xmlvm_create_java_string_from_pool(388); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM865" + _r4.o = xmlvm_create_java_string_from_pool(389); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 39; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM869" + _r3.o = xmlvm_create_java_string_from_pool(390); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 5; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM869" + _r4.o = xmlvm_create_java_string_from_pool(391); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp869" + _r4.o = xmlvm_create_java_string_from_pool(392); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "869" + _r4.o = xmlvm_create_java_string_from_pool(393); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "cp-gr" + _r4.o = xmlvm_create_java_string_from_pool(394); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "csIBM869" + _r5.o = xmlvm_create_java_string_from_pool(395); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 40; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM00858" + _r3.o = xmlvm_create_java_string_from_pool(396); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM00858" + _r4.o = xmlvm_create_java_string_from_pool(397); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp858" + _r4.o = xmlvm_create_java_string_from_pool(398); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID00858" + _r4.o = xmlvm_create_java_string_from_pool(399); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP00858" + _r4.o = xmlvm_create_java_string_from_pool(400); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 41; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01140" + _r3.o = xmlvm_create_java_string_from_pool(401); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01140" + _r4.o = xmlvm_create_java_string_from_pool(402); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1140" + _r4.o = xmlvm_create_java_string_from_pool(403); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01140" + _r4.o = xmlvm_create_java_string_from_pool(404); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01140" + _r4.o = xmlvm_create_java_string_from_pool(405); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 42; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01141" + _r3.o = xmlvm_create_java_string_from_pool(406); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01141" + _r4.o = xmlvm_create_java_string_from_pool(407); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1141" + _r4.o = xmlvm_create_java_string_from_pool(408); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01141" + _r4.o = xmlvm_create_java_string_from_pool(409); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01141" + _r4.o = xmlvm_create_java_string_from_pool(410); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 43; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01142" + _r3.o = xmlvm_create_java_string_from_pool(411); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01142" + _r4.o = xmlvm_create_java_string_from_pool(412); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1142" + _r4.o = xmlvm_create_java_string_from_pool(413); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01142" + _r4.o = xmlvm_create_java_string_from_pool(414); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01142" + _r4.o = xmlvm_create_java_string_from_pool(415); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 44; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01143" + _r3.o = xmlvm_create_java_string_from_pool(416); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01143" + _r4.o = xmlvm_create_java_string_from_pool(417); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1143" + _r4.o = xmlvm_create_java_string_from_pool(418); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01143" + _r4.o = xmlvm_create_java_string_from_pool(419); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01143" + _r4.o = xmlvm_create_java_string_from_pool(420); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 45; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01144" + _r3.o = xmlvm_create_java_string_from_pool(421); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01144" + _r4.o = xmlvm_create_java_string_from_pool(422); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1144" + _r4.o = xmlvm_create_java_string_from_pool(423); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01144" + _r4.o = xmlvm_create_java_string_from_pool(424); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01144" + _r4.o = xmlvm_create_java_string_from_pool(425); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 46; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01145" + _r3.o = xmlvm_create_java_string_from_pool(426); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01145" + _r4.o = xmlvm_create_java_string_from_pool(427); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1145" + _r4.o = xmlvm_create_java_string_from_pool(428); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01145" + _r4.o = xmlvm_create_java_string_from_pool(429); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01145" + _r4.o = xmlvm_create_java_string_from_pool(430); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 47; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01146" + _r3.o = xmlvm_create_java_string_from_pool(431); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01146" + _r4.o = xmlvm_create_java_string_from_pool(432); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1146" + _r4.o = xmlvm_create_java_string_from_pool(433); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01146" + _r4.o = xmlvm_create_java_string_from_pool(434); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01146" + _r4.o = xmlvm_create_java_string_from_pool(435); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 48; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01147" + _r3.o = xmlvm_create_java_string_from_pool(436); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01147" + _r4.o = xmlvm_create_java_string_from_pool(437); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1147" + _r4.o = xmlvm_create_java_string_from_pool(438); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01147" + _r4.o = xmlvm_create_java_string_from_pool(439); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01147" + _r4.o = xmlvm_create_java_string_from_pool(440); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 49; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01148" + _r3.o = xmlvm_create_java_string_from_pool(441); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01148" + _r4.o = xmlvm_create_java_string_from_pool(442); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1148" + _r4.o = xmlvm_create_java_string_from_pool(443); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01148" + _r4.o = xmlvm_create_java_string_from_pool(444); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01148" + _r4.o = xmlvm_create_java_string_from_pool(445); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 50; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM01149" + _r3.o = xmlvm_create_java_string_from_pool(446); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM01149" + _r4.o = xmlvm_create_java_string_from_pool(447); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1149" + _r4.o = xmlvm_create_java_string_from_pool(448); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "CCSID01149" + _r4.o = xmlvm_create_java_string_from_pool(449); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "CP01149" + _r4.o = xmlvm_create_java_string_from_pool(450); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 51; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM273" + _r3.o = xmlvm_create_java_string_from_pool(451); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "IBM273" + _r4.o = xmlvm_create_java_string_from_pool(452); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp273" + _r4.o = xmlvm_create_java_string_from_pool(453); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "csIBM273" + _r4.o = xmlvm_create_java_string_from_pool(454); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 52; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM277" + _r3.o = xmlvm_create_java_string_from_pool(455); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 5; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM277" + _r4.o = xmlvm_create_java_string_from_pool(456); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp277" + _r4.o = xmlvm_create_java_string_from_pool(457); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "EBCDIC-CP-DK" + _r4.o = xmlvm_create_java_string_from_pool(458); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "EBCDIC-CP-NO" + _r4.o = xmlvm_create_java_string_from_pool(459); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "csIBM277" + _r5.o = xmlvm_create_java_string_from_pool(460); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 53; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM278" + _r3.o = xmlvm_create_java_string_from_pool(461); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 5; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM278" + _r4.o = xmlvm_create_java_string_from_pool(462); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp278" + _r4.o = xmlvm_create_java_string_from_pool(463); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-fi" + _r4.o = xmlvm_create_java_string_from_pool(464); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ebcdic-cp-se" + _r4.o = xmlvm_create_java_string_from_pool(465); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "csIBM278" + _r5.o = xmlvm_create_java_string_from_pool(466); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 54; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM280" + _r3.o = xmlvm_create_java_string_from_pool(467); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM280" + _r4.o = xmlvm_create_java_string_from_pool(468); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp280" + _r4.o = xmlvm_create_java_string_from_pool(469); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-it" + _r4.o = xmlvm_create_java_string_from_pool(470); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM280" + _r4.o = xmlvm_create_java_string_from_pool(471); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 55; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM284" + _r3.o = xmlvm_create_java_string_from_pool(472); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM284" + _r4.o = xmlvm_create_java_string_from_pool(473); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp284" + _r4.o = xmlvm_create_java_string_from_pool(474); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-es" + _r4.o = xmlvm_create_java_string_from_pool(475); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM284" + _r4.o = xmlvm_create_java_string_from_pool(476); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 56; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM285" + _r3.o = xmlvm_create_java_string_from_pool(477); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM285" + _r4.o = xmlvm_create_java_string_from_pool(478); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp285" + _r4.o = xmlvm_create_java_string_from_pool(479); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-gb" + _r4.o = xmlvm_create_java_string_from_pool(480); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM285" + _r4.o = xmlvm_create_java_string_from_pool(481); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 57; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM297" + _r3.o = xmlvm_create_java_string_from_pool(482); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM297" + _r4.o = xmlvm_create_java_string_from_pool(483); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp297" + _r4.o = xmlvm_create_java_string_from_pool(484); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-fr" + _r4.o = xmlvm_create_java_string_from_pool(485); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM297" + _r4.o = xmlvm_create_java_string_from_pool(486); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 58; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM870" + _r3.o = xmlvm_create_java_string_from_pool(487); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 5; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM870" + _r4.o = xmlvm_create_java_string_from_pool(488); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp870" + _r4.o = xmlvm_create_java_string_from_pool(489); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-roece" + _r4.o = xmlvm_create_java_string_from_pool(490); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ebcdic-cp-yu" + _r4.o = xmlvm_create_java_string_from_pool(491); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "csIBM870" + _r5.o = xmlvm_create_java_string_from_pool(492); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 59; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM871" + _r3.o = xmlvm_create_java_string_from_pool(493); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM871" + _r4.o = xmlvm_create_java_string_from_pool(494); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp871" + _r4.o = xmlvm_create_java_string_from_pool(495); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-is" + _r4.o = xmlvm_create_java_string_from_pool(496); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM871" + _r4.o = xmlvm_create_java_string_from_pool(497); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 60; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM918" + _r3.o = xmlvm_create_java_string_from_pool(498); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM918" + _r4.o = xmlvm_create_java_string_from_pool(499); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp918" + _r4.o = xmlvm_create_java_string_from_pool(500); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-ar2" + _r4.o = xmlvm_create_java_string_from_pool(501); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM918" + _r4.o = xmlvm_create_java_string_from_pool(502); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 61; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM420" + _r3.o = xmlvm_create_java_string_from_pool(503); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM420" + _r4.o = xmlvm_create_java_string_from_pool(504); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp420" + _r4.o = xmlvm_create_java_string_from_pool(505); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ebcdic-cp-ar1" + _r4.o = xmlvm_create_java_string_from_pool(506); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM420" + _r4.o = xmlvm_create_java_string_from_pool(507); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 62; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM864" + _r3.o = xmlvm_create_java_string_from_pool(508); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "IBM864" + _r4.o = xmlvm_create_java_string_from_pool(509); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp864" + _r4.o = xmlvm_create_java_string_from_pool(510); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "csIBM864" + _r4.o = xmlvm_create_java_string_from_pool(511); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 63; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM868" + _r3.o = xmlvm_create_java_string_from_pool(512); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 4; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "IBM868" + _r4.o = xmlvm_create_java_string_from_pool(513); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp868" + _r4.o = xmlvm_create_java_string_from_pool(514); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp-ar" + _r4.o = xmlvm_create_java_string_from_pool(515); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "csIBM868" + _r4.o = xmlvm_create_java_string_from_pool(516); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 64; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.ISO_8859_3" + _r3.o = xmlvm_create_java_string_from_pool(517); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 9; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-3" + _r4.o = xmlvm_create_java_string_from_pool(518); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "8859_3" + _r4.o = xmlvm_create_java_string_from_pool(519); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO_8859_3" + _r4.o = xmlvm_create_java_string_from_pool(520); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "ISO_8859_2:1998" + _r4.o = xmlvm_create_java_string_from_pool(521); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "iso-ir-109" + _r5.o = xmlvm_create_java_string_from_pool(522); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "ISO_8859-3" + _r5.o = xmlvm_create_java_string_from_pool(523); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "latin3" + _r5.o = xmlvm_create_java_string_from_pool(524); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 7; + // "l3" + _r5.o = xmlvm_create_java_string_from_pool(525); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 8; + // "csISOLatin3" + _r5.o = xmlvm_create_java_string_from_pool(526); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 65; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.ISO_8859_6" + _r3.o = xmlvm_create_java_string_from_pool(527); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 9; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-6" + _r4.o = xmlvm_create_java_string_from_pool(528); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "ISO_8859_6" + _r4.o = xmlvm_create_java_string_from_pool(529); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO_8859-6:1987" + _r4.o = xmlvm_create_java_string_from_pool(530); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "iso-ir-127" + _r4.o = xmlvm_create_java_string_from_pool(531); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ISO_8859-6" + _r5.o = xmlvm_create_java_string_from_pool(532); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "ECMA-114" + _r5.o = xmlvm_create_java_string_from_pool(533); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "ASMO-708" + _r5.o = xmlvm_create_java_string_from_pool(534); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 7; + // "arabic" + _r5.o = xmlvm_create_java_string_from_pool(535); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 8; + // "csISOLatinArabic" + _r5.o = xmlvm_create_java_string_from_pool(536); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 66; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.ISO_8859_8" + _r3.o = xmlvm_create_java_string_from_pool(537); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 7; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "ISO-8859-8" + _r4.o = xmlvm_create_java_string_from_pool(538); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "ISO_8859_8" + _r4.o = xmlvm_create_java_string_from_pool(539); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ISO_8859-8:1988" + _r4.o = xmlvm_create_java_string_from_pool(540); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "iso-ir-138" + _r4.o = xmlvm_create_java_string_from_pool(541); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "ISO_8859-8" + _r5.o = xmlvm_create_java_string_from_pool(542); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "hebrew" + _r5.o = xmlvm_create_java_string_from_pool(543); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "csISOLatinHebrew" + _r5.o = xmlvm_create_java_string_from_pool(544); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 67; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.IBM_Thai" + _r3.o = xmlvm_create_java_string_from_pool(545); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "IBM-Thai" + _r4.o = xmlvm_create_java_string_from_pool(546); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp838" + _r4.o = xmlvm_create_java_string_from_pool(547); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 68; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM737" + _r3.o = xmlvm_create_java_string_from_pool(548); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM737" + _r4.o = xmlvm_create_java_string_from_pool(549); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-737_P100-1997" + _r4.o = xmlvm_create_java_string_from_pool(550); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp737" + _r4.o = xmlvm_create_java_string_from_pool(551); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 69; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM856" + _r3.o = xmlvm_create_java_string_from_pool(552); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "x-IBM856" + _r4.o = xmlvm_create_java_string_from_pool(553); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp856" + _r4.o = xmlvm_create_java_string_from_pool(554); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 70; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM874" + _r3.o = xmlvm_create_java_string_from_pool(555); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "TIS-620" + _r4.o = xmlvm_create_java_string_from_pool(556); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-IBM874" + _r4.o = xmlvm_create_java_string_from_pool(557); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp874" + _r4.o = xmlvm_create_java_string_from_pool(558); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 71; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM875" + _r3.o = xmlvm_create_java_string_from_pool(559); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM875" + _r4.o = xmlvm_create_java_string_from_pool(560); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-875_P100-1995" + _r4.o = xmlvm_create_java_string_from_pool(561); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp875" + _r4.o = xmlvm_create_java_string_from_pool(562); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 72; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM922" + _r3.o = xmlvm_create_java_string_from_pool(563); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "x-IBM922" + _r4.o = xmlvm_create_java_string_from_pool(564); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp922" + _r4.o = xmlvm_create_java_string_from_pool(565); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 73; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1006" + _r3.o = xmlvm_create_java_string_from_pool(566); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1006" + _r4.o = xmlvm_create_java_string_from_pool(567); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1006_P100-1995" + _r4.o = xmlvm_create_java_string_from_pool(568); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1006" + _r4.o = xmlvm_create_java_string_from_pool(569); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 74; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1025" + _r3.o = xmlvm_create_java_string_from_pool(570); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1025" + _r4.o = xmlvm_create_java_string_from_pool(571); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1025_P100-1995" + _r4.o = xmlvm_create_java_string_from_pool(572); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1025" + _r4.o = xmlvm_create_java_string_from_pool(573); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 75; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1112" + _r3.o = xmlvm_create_java_string_from_pool(574); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1112" + _r4.o = xmlvm_create_java_string_from_pool(575); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1112_P100-1995" + _r4.o = xmlvm_create_java_string_from_pool(576); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1112" + _r4.o = xmlvm_create_java_string_from_pool(577); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 76; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1122" + _r3.o = xmlvm_create_java_string_from_pool(578); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1122" + _r4.o = xmlvm_create_java_string_from_pool(579); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1122_P100-1999" + _r4.o = xmlvm_create_java_string_from_pool(580); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1122" + _r4.o = xmlvm_create_java_string_from_pool(581); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 77; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1123" + _r3.o = xmlvm_create_java_string_from_pool(582); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1123" + _r4.o = xmlvm_create_java_string_from_pool(583); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1123_P100-1995" + _r4.o = xmlvm_create_java_string_from_pool(584); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1123" + _r4.o = xmlvm_create_java_string_from_pool(585); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 78; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1124" + _r3.o = xmlvm_create_java_string_from_pool(586); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1124" + _r4.o = xmlvm_create_java_string_from_pool(587); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1124_P100-1996" + _r4.o = xmlvm_create_java_string_from_pool(588); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1124" + _r4.o = xmlvm_create_java_string_from_pool(589); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 79; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1097" + _r3.o = xmlvm_create_java_string_from_pool(590); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1097" + _r4.o = xmlvm_create_java_string_from_pool(591); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1097_P100-1995" + _r4.o = xmlvm_create_java_string_from_pool(592); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1097" + _r4.o = xmlvm_create_java_string_from_pool(593); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 80; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_IBM1098" + _r3.o = xmlvm_create_java_string_from_pool(594); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-IBM1098" + _r4.o = xmlvm_create_java_string_from_pool(595); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-ibm-1098_P100-1995" + _r4.o = xmlvm_create_java_string_from_pool(596); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "cp1098" + _r4.o = xmlvm_create_java_string_from_pool(597); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 81; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_MacCyrillic" + _r3.o = xmlvm_create_java_string_from_pool(598); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-MacCyrillic" + _r4.o = xmlvm_create_java_string_from_pool(599); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-mac-cyrillic" + _r4.o = xmlvm_create_java_string_from_pool(600); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "MacCyrillic" + _r4.o = xmlvm_create_java_string_from_pool(601); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 82; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_MacGreek" + _r3.o = xmlvm_create_java_string_from_pool(602); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-MacGreek" + _r4.o = xmlvm_create_java_string_from_pool(603); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-mac-greek" + _r4.o = xmlvm_create_java_string_from_pool(604); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "MacGreek" + _r4.o = xmlvm_create_java_string_from_pool(605); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 83; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_MacTurkish" + _r3.o = xmlvm_create_java_string_from_pool(606); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-MacTurkish" + _r4.o = xmlvm_create_java_string_from_pool(607); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-mac-turkish" + _r4.o = xmlvm_create_java_string_from_pool(608); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "MacTurkish" + _r4.o = xmlvm_create_java_string_from_pool(609); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 84; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.windows_31j" + _r3.o = xmlvm_create_java_string_from_pool(610); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + _r3.i = 9; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r3.i); + // "Shift_JIS" + _r4.o = xmlvm_create_java_string_from_pool(611); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "windows-31j" + _r4.o = xmlvm_create_java_string_from_pool(612); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "MS932" + _r4.o = xmlvm_create_java_string_from_pool(613); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + // "windows-932" + _r4.o = xmlvm_create_java_string_from_pool(614); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r4.o; + _r4.i = 4; + // "cp932" + _r5.o = xmlvm_create_java_string_from_pool(615); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 5; + // "csWindows31J" + _r5.o = xmlvm_create_java_string_from_pool(616); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 6; + // "cp943c" + _r5.o = xmlvm_create_java_string_from_pool(617); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 7; + // "x-ms-cp932" + _r5.o = xmlvm_create_java_string_from_pool(618); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 8; + // "ibm-943" + _r5.o = xmlvm_create_java_string_from_pool(619); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 85; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.Big5" + _r3.o = xmlvm_create_java_string_from_pool(620); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "Big5" + _r4.o = xmlvm_create_java_string_from_pool(621); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "csBig5" + _r4.o = xmlvm_create_java_string_from_pool(622); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "windows-950" + _r4.o = xmlvm_create_java_string_from_pool(623); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 86; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.Big5_HKSCS" + _r3.o = xmlvm_create_java_string_from_pool(624); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "Big5-HKSCS" + _r4.o = xmlvm_create_java_string_from_pool(625); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "ibm-1375" + _r4.o = xmlvm_create_java_string_from_pool(626); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 87; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.EUC_KR" + _r3.o = xmlvm_create_java_string_from_pool(627); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "EUC-KR" + _r4.o = xmlvm_create_java_string_from_pool(628); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "windows-51949" + _r4.o = xmlvm_create_java_string_from_pool(629); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ibm-970" + _r4.o = xmlvm_create_java_string_from_pool(630); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 88; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.GBK" + _r3.o = xmlvm_create_java_string_from_pool(631); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r7.i); + // "GBK" + _r4.o = xmlvm_create_java_string_from_pool(632); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 89; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_MS950_HKSCS" + _r3.o = xmlvm_create_java_string_from_pool(633); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "x-ibm-1375_P100-2003" + _r4.o = xmlvm_create_java_string_from_pool(634); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "x-MS950-HKSCS" + _r4.o = xmlvm_create_java_string_from_pool(635); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "MS950_HKSCS" + _r4.o = xmlvm_create_java_string_from_pool(636); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 90; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.x_windows_949" + _r3.o = xmlvm_create_java_string_from_pool(637); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r8.i); + // "x-windows-949" + _r4.o = xmlvm_create_java_string_from_pool(638); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "MS949" + _r4.o = xmlvm_create_java_string_from_pool(639); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 91; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.GB18030" + _r3.o = xmlvm_create_java_string_from_pool(640); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "GB18030" + _r4.o = xmlvm_create_java_string_from_pool(641); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "windows-54936" + _r4.o = xmlvm_create_java_string_from_pool(642); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "ibm-1392" + _r4.o = xmlvm_create_java_string_from_pool(643); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + _r1.i = 92; + XMLVM_CLASS_INIT(java_lang_Object) + _r2.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r9.i); + // "additional.GB2312" + _r3.o = xmlvm_create_java_string_from_pool(644); + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r3.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r10.o; + XMLVM_CLASS_INIT(java_lang_String) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_String, _r9.i); + // "GB2312" + _r4.o = xmlvm_create_java_string_from_pool(645); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i] = _r4.o; + // "cp1383" + _r4.o = xmlvm_create_java_string_from_pool(646); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r7.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i] = _r4.o; + // "EUC_CN" + _r4.o = xmlvm_create_java_string_from_pool(647); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r4.o; + XMLVM_CHECK_NPE(2) + XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r8.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i] = _r3.o; + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((org_xmlvm_runtime_XMLVMArray**) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.o; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 725) + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_niochar_CharsetProviderImpl___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl", "", "?") + volatile XMLVMElem _r0; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 50) + _r0.i = 0; + org_apache_harmony_niochar_CharsetProviderImpl_PUT_HAS_LOADED_NATIVES( _r0.i); + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 55) + _r0.i = 1; + XMLVM_TRY_BEGIN(w3635aaac16b1b6) + // Begin try + org_apache_harmony_niochar_CharsetProviderImpl_PUT_HAS_LOADED_NATIVES( _r0.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3635aaac16b1b6) + XMLVM_CATCH_END(w3635aaac16b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w3635aaac16b1b6) + label6:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 59) + XMLVM_EXIT_METHOD() + return; + label7:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 56) + java_lang_Thread* curThread_w3635aaac16b1c12 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w3635aaac16b1c12->fields.java_lang_Thread.xmlvmException_; + goto label6; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.h b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.h new file mode 100644 index 0000000000000..e3c9b40a69b33 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl.h @@ -0,0 +1,119 @@ +#ifndef __ORG_APACHE_HARMONY_NIOCHAR_CHARSETPROVIDERIMPL__ +#define __ORG_APACHE_HARMONY_NIOCHAR_CHARSETPROVIDERIMPL__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_CharsetProviderImpl 0 +// Implemented interfaces: +// Super Class: +#include "java_nio_charset_spi_CharsetProvider.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder +#define XMLVM_FORWARD_DECL_java_lang_StringBuilder +XMLVM_FORWARD_DECL(java_lang_StringBuilder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_security_AccessController +#define XMLVM_FORWARD_DECL_java_security_AccessController +XMLVM_FORWARD_DECL(java_security_AccessController) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_ArrayList +#define XMLVM_FORWARD_DECL_java_util_ArrayList +XMLVM_FORWARD_DECL(java_util_ArrayList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Collections +#define XMLVM_FORWARD_DECL_java_util_Collections +XMLVM_FORWARD_DECL(java_util_Collections) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_HashMap +#define XMLVM_FORWARD_DECL_java_util_HashMap +XMLVM_FORWARD_DECL(java_util_HashMap) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Iterator +#define XMLVM_FORWARD_DECL_java_util_Iterator +XMLVM_FORWARD_DECL(java_util_Iterator) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Map +#define XMLVM_FORWARD_DECL_java_util_Map +XMLVM_FORWARD_DECL(java_util_Map) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl_1 +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl_1 +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_CharsetProviderImpl_1) +#endif +// Class declarations for org.apache.harmony.niochar.CharsetProviderImpl +XMLVM_DEFINE_CLASS(org_apache_harmony_niochar_CharsetProviderImpl, 8, XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_CharsetProviderImpl) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl \ + __INSTANCE_FIELDS_java_nio_charset_spi_CharsetProvider; \ + struct { \ + JAVA_OBJECT cache_; \ + JAVA_OBJECT charsets_; \ + JAVA_OBJECT packageName_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl \ + } org_apache_harmony_niochar_CharsetProviderImpl + +struct org_apache_harmony_niochar_CharsetProviderImpl { + __TIB_DEFINITION_org_apache_harmony_niochar_CharsetProviderImpl* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +typedef struct org_apache_harmony_niochar_CharsetProviderImpl org_apache_harmony_niochar_CharsetProviderImpl; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_niochar_CharsetProviderImpl 8 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_CharsetProviderImpl_charsets__ 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String 6 + +void __INIT_org_apache_harmony_niochar_CharsetProviderImpl(); +void __INIT_IMPL_org_apache_harmony_niochar_CharsetProviderImpl(); +void __DELETE_org_apache_harmony_niochar_CharsetProviderImpl(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_niochar_CharsetProviderImpl(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_CharsetProviderImpl(); +JAVA_BOOLEAN org_apache_harmony_niochar_CharsetProviderImpl_GET_HAS_LOADED_NATIVES(); +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_HAS_LOADED_NATIVES(JAVA_BOOLEAN v); +JAVA_INT org_apache_harmony_niochar_CharsetProviderImpl_GET_CHARSET_CLASS(); +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_CHARSET_CLASS(JAVA_INT v); +JAVA_INT org_apache_harmony_niochar_CharsetProviderImpl_GET_CHARSET_INSTANCE(); +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_CHARSET_INSTANCE(JAVA_INT v); +JAVA_INT org_apache_harmony_niochar_CharsetProviderImpl_GET_CHARSET_ALIASES(); +void org_apache_harmony_niochar_CharsetProviderImpl_PUT_CHARSET_ALIASES(JAVA_INT v); +JAVA_BOOLEAN org_apache_harmony_niochar_CharsetProviderImpl_hasLoadedNatives__(); +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_toUpperCase___java_lang_String(JAVA_OBJECT n1); +JAVA_BOOLEAN org_apache_harmony_niochar_CharsetProviderImpl_passthru___char(JAVA_CHAR n1); +void org_apache_harmony_niochar_CharsetProviderImpl___INIT___(JAVA_OBJECT me); +// Vtable index: 7 +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_charsets__(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_charsetForName___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +void org_apache_harmony_niochar_CharsetProviderImpl_putCharsets___java_util_Map(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_getPackageName__(JAVA_OBJECT me); +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_getCharsetsInfo__(JAVA_OBJECT me); +void org_apache_harmony_niochar_CharsetProviderImpl___CLINIT_(); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.c b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.c new file mode 100644 index 0000000000000..8748060ac97c0 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.c @@ -0,0 +1,267 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Exception.h" +#include "java_lang_String.h" +#include "java_lang_reflect_Constructor.h" +#include "org_apache_harmony_niochar_CharsetProviderImpl.h" + +#include "org_apache_harmony_niochar_CharsetProviderImpl_1.h" + +#define XMLVM_CURRENT_CLASS_NAME CharsetProviderImpl_1 +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_niochar_CharsetProviderImpl_1 + +__TIB_DEFINITION_org_apache_harmony_niochar_CharsetProviderImpl_1 __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1 = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_niochar_CharsetProviderImpl_1, // classInitializer + "org.apache.harmony.niochar.CharsetProviderImpl$1", // className + "org.apache.harmony.niochar", // package + "org.apache.harmony.niochar.CharsetProviderImpl", // enclosingClassName + "charsetForName:(Ljava/lang/String;)Ljava/nio/charset/Charset;", // enclosingMethodName + "Ljava/lang/Object;Ljava/security/PrivilegedAction;", // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_apache_harmony_niochar_CharsetProviderImpl_1), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_niochar_CharsetProviderImpl_1() +{ + staticInitializerLock(&__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.niochar.CharsetProviderImpl$1") + __INIT_IMPL_org_apache_harmony_niochar_CharsetProviderImpl_1(); + } +} + +void __INIT_IMPL_org_apache_harmony_niochar_CharsetProviderImpl_1() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_niochar_CharsetProviderImpl_1; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.vtable[6] = (VTABLE_PTR) &org_apache_harmony_niochar_CharsetProviderImpl_1_run__; + // Initialize interface information + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.numImplementedInterfaces = 1; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_security_PrivilegedAction) + + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.implementedInterfaces[0][0] = &__TIB_java_security_PrivilegedAction; + // Initialize itable for this class + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.itableBegin = &__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.itable[0]; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.itable[XMLVM_ITABLE_IDX_java_security_PrivilegedAction_run__] = __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.vtable[6]; + + + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1 = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1); + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.clazz = __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1; + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1); + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_1ARRAY); + __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_niochar_CharsetProviderImpl_1] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_niochar_CharsetProviderImpl_1.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_niochar_CharsetProviderImpl_1(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_niochar_CharsetProviderImpl_1] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) me)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_className_ = (java_lang_String*) JAVA_NULL; + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) me)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_canonicalName_ = (java_lang_String*) JAVA_NULL; + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) me)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_aliases_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) me)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.this_0_ = (org_apache_harmony_niochar_CharsetProviderImpl*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl_1] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_niochar_CharsetProviderImpl_1() +{ XMLVM_CLASS_INIT(org_apache_harmony_niochar_CharsetProviderImpl_1) +org_apache_harmony_niochar_CharsetProviderImpl_1* me = (org_apache_harmony_niochar_CharsetProviderImpl_1*) XMLVM_MALLOC(sizeof(org_apache_harmony_niochar_CharsetProviderImpl_1)); + me->tib = &__TIB_org_apache_harmony_niochar_CharsetProviderImpl_1; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl_1(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_niochar_CharsetProviderImpl_1] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_CharsetProviderImpl_1() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void org_apache_harmony_niochar_CharsetProviderImpl_1___INIT____org_apache_harmony_niochar_CharsetProviderImpl_java_lang_String_java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_1___INIT____org_apache_harmony_niochar_CharsetProviderImpl_java_lang_String_java_lang_String_java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl$1", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + _r4.o = n4; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 191) + XMLVM_CHECK_NPE(0) + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) _r0.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.this_0_ = _r1.o; + XMLVM_CHECK_NPE(0) + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) _r0.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_className_ = _r2.o; + XMLVM_CHECK_NPE(0) + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) _r0.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_canonicalName_ = _r3.o; + XMLVM_CHECK_NPE(0) + ((org_apache_harmony_niochar_CharsetProviderImpl_1*) _r0.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_aliases_ = _r4.o; + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_1_run__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_CharsetProviderImpl_1_run__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.CharsetProviderImpl$1", "run", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + _r6.o = me; + XMLVM_TRY_BEGIN(w3623aaab5b1b2) + // Begin try + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 194) + XMLVM_CHECK_NPE(6) + _r3.o = ((org_apache_harmony_niochar_CharsetProviderImpl_1*) _r6.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_className_; + _r0.o = java_lang_Class_forName___java_lang_String(_r3.o); + _r3.i = 2; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 195) + XMLVM_CLASS_INIT(java_lang_Class) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Class, _r3.i); + _r4.i = 0; + XMLVM_CLASS_INIT(java_lang_String) + _r5.o = __CLASS_java_lang_String; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 1; + XMLVM_CLASS_INIT(java_lang_String) + _r5.o = __CLASS_java_lang_String_1ARRAY; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(0) + _r1.o = java_lang_Class_getConstructor___java_lang_Class_1ARRAY(_r0.o, _r3.o); + _r3.i = 1; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 198) + XMLVM_CHECK_NPE(1) + java_lang_reflect_AccessibleObject_setAccessible___boolean(_r1.o, _r3.i); + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 199) + _r3.i = 2; + XMLVM_CLASS_INIT(java_lang_Object) + _r3.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_Object, _r3.i); + _r4.i = 0; + XMLVM_CHECK_NPE(6) + _r5.o = ((org_apache_harmony_niochar_CharsetProviderImpl_1*) _r6.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_canonicalName_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + _r4.i = 1; + XMLVM_CHECK_NPE(6) + _r5.o = ((org_apache_harmony_niochar_CharsetProviderImpl_1*) _r6.o)->fields.org_apache_harmony_niochar_CharsetProviderImpl_1.val_aliases_; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i] = _r5.o; + XMLVM_CHECK_NPE(1) + _r3.o = java_lang_reflect_Constructor_newInstance___java_lang_Object_1ARRAY(_r1.o, _r3.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w3623aaab5b1b2) + XMLVM_CATCH_SPECIFIC(w3623aaab5b1b2,java_lang_Exception,45) + XMLVM_CATCH_END(w3623aaab5b1b2) + XMLVM_RESTORE_EXCEPTION_ENV(w3623aaab5b1b2) + label44:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 202) + XMLVM_EXIT_METHOD() + return _r3.o; + label45:; + XMLVM_SOURCE_POSITION("CharsetProviderImpl.java", 201) + java_lang_Thread* curThread_w3623aaab5b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r3.o = curThread_w3623aaab5b1b8->fields.java_lang_Thread.xmlvmException_; + _r2 = _r3; + _r3.o = JAVA_NULL; + goto label44; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.h b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.h new file mode 100644 index 0000000000000..b2bfef0f4e5ba --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_CharsetProviderImpl_1.h @@ -0,0 +1,79 @@ +#ifndef __ORG_APACHE_HARMONY_NIOCHAR_CHARSETPROVIDERIMPL_1__ +#define __ORG_APACHE_HARMONY_NIOCHAR_CHARSETPROVIDERIMPL_1__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_CharsetProviderImpl_1 1 +// Implemented interfaces: +#include "java_security_PrivilegedAction.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Exception +#define XMLVM_FORWARD_DECL_java_lang_Exception +XMLVM_FORWARD_DECL(java_lang_Exception) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +#define XMLVM_FORWARD_DECL_java_lang_reflect_Constructor +XMLVM_FORWARD_DECL(java_lang_reflect_Constructor) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_CharsetProviderImpl) +#endif +// Class declarations for org.apache.harmony.niochar.CharsetProviderImpl$1 +XMLVM_DEFINE_CLASS(org_apache_harmony_niochar_CharsetProviderImpl_1, 7, XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_CharsetProviderImpl_1) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_CharsetProviderImpl_1_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl_1 +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl_1 \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT val_className_; \ + JAVA_OBJECT val_canonicalName_; \ + JAVA_OBJECT val_aliases_; \ + JAVA_OBJECT this_0_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl_1 \ + } org_apache_harmony_niochar_CharsetProviderImpl_1 + +struct org_apache_harmony_niochar_CharsetProviderImpl_1 { + __TIB_DEFINITION_org_apache_harmony_niochar_CharsetProviderImpl_1* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_niochar_CharsetProviderImpl_1; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl_1 +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_CharsetProviderImpl_1 +typedef struct org_apache_harmony_niochar_CharsetProviderImpl_1 org_apache_harmony_niochar_CharsetProviderImpl_1; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_niochar_CharsetProviderImpl_1 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_CharsetProviderImpl_1_run__ 6 + +void __INIT_org_apache_harmony_niochar_CharsetProviderImpl_1(); +void __INIT_IMPL_org_apache_harmony_niochar_CharsetProviderImpl_1(); +void __DELETE_org_apache_harmony_niochar_CharsetProviderImpl_1(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_CharsetProviderImpl_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_niochar_CharsetProviderImpl_1(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_CharsetProviderImpl_1(); +void org_apache_harmony_niochar_CharsetProviderImpl_1___INIT____org_apache_harmony_niochar_CharsetProviderImpl_java_lang_String_java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3, JAVA_OBJECT n4); +// Vtable index: 6 +JAVA_OBJECT org_apache_harmony_niochar_CharsetProviderImpl_1_run__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.c b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.c new file mode 100644 index 0000000000000..60618fc309f6e --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.c @@ -0,0 +1,654 @@ +#include "xmlvm.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" +#include "java_nio_charset_CharsetDecoder.h" +#include "java_nio_charset_CharsetEncoder.h" +#include "org_apache_harmony_niochar_charset_UTF_8_Decoder.h" +#include "org_apache_harmony_niochar_charset_UTF_8_Encoder.h" + +#include "org_apache_harmony_niochar_charset_UTF_8.h" + +#define XMLVM_CURRENT_CLASS_NAME UTF_8 +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_niochar_charset_UTF_8 + +__TIB_DEFINITION_org_apache_harmony_niochar_charset_UTF_8 __TIB_org_apache_harmony_niochar_charset_UTF_8 = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_niochar_charset_UTF_8, // classInitializer + "org.apache.harmony.niochar.charset.UTF_8", // className + "org.apache.harmony.niochar.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_charset_Charset, // extends + sizeof(org_apache_harmony_niochar_charset_UTF_8), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingBytes; +static JAVA_OBJECT _STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingNumbers; +static JAVA_OBJECT _STATIC_org_apache_harmony_niochar_charset_UTF_8_lowerEncodingLimit; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { + {"remainingBytes", + &__CLASS_int_1ARRAY, + 0 | java_lang_reflect_Modifier_PRIVATE | java_lang_reflect_Modifier_STATIC, + 0, + &_STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingBytes, + "", + JAVA_NULL}, + {"remainingNumbers", + &__CLASS_int_1ARRAY, + 0 | java_lang_reflect_Modifier_PRIVATE | java_lang_reflect_Modifier_STATIC, + 0, + &_STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingNumbers, + "", + JAVA_NULL}, + {"lowerEncodingLimit", + &__CLASS_int_1ARRAY, + 0 | java_lang_reflect_Modifier_PRIVATE | java_lang_reflect_Modifier_STATIC, + 0, + &_STATIC_org_apache_harmony_niochar_charset_UTF_8_lowerEncodingLimit, + "", + JAVA_NULL}, +}; + +static JAVA_OBJECT* __constructor0_arg_types[] = { + &__CLASS_java_lang_String, + &__CLASS_java_lang_String_1ARRAY, +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { + {&__constructor0_arg_types[0], + sizeof(__constructor0_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "(Ljava/lang/String;[Ljava/lang/String;)V", + JAVA_NULL, + JAVA_NULL}, +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + JAVA_OBJECT obj = __NEW_org_apache_harmony_niochar_charset_UTF_8(); + java_lang_reflect_Constructor* c = (java_lang_reflect_Constructor*) constructor; + org_xmlvm_runtime_XMLVMArray* args = (org_xmlvm_runtime_XMLVMArray*) arguments; + JAVA_ARRAY_OBJECT* argsArray = (JAVA_ARRAY_OBJECT*) args->fields.org_xmlvm_runtime_XMLVMArray.array_; + switch (c->fields.java_lang_reflect_Constructor.slot_) { + case 0: + org_apache_harmony_niochar_charset_UTF_8___INIT____java_lang_String_java_lang_String_1ARRAY(obj, argsArray[0], argsArray[1]); + break; + default: + XMLVM_INTERNAL_ERROR(); + break; + } + return obj; +} + +static JAVA_OBJECT* __method0_arg_types[] = { + &__CLASS_java_nio_charset_Charset, +}; + +static JAVA_OBJECT* __method1_arg_types[] = { +}; + +static JAVA_OBJECT* __method2_arg_types[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { + {"contains", + &__method0_arg_types[0], + sizeof(__method0_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "(Ljava/nio/charset/Charset;)Z", + JAVA_NULL, + JAVA_NULL}, + {"newDecoder", + &__method1_arg_types[0], + sizeof(__method1_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "()Ljava/nio/charset/CharsetDecoder;", + JAVA_NULL, + JAVA_NULL}, + {"newEncoder", + &__method2_arg_types[0], + sizeof(__method2_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "()Ljava/nio/charset/CharsetEncoder;", + JAVA_NULL, + JAVA_NULL}, +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + JAVA_OBJECT result = JAVA_NULL; + java_lang_Object* obj = receiver; + java_lang_reflect_Method* m = (java_lang_reflect_Method*) method; + org_xmlvm_runtime_XMLVMArray* args = (org_xmlvm_runtime_XMLVMArray*) arguments; + JAVA_ARRAY_OBJECT* argsArray = (JAVA_ARRAY_OBJECT*) args->fields.org_xmlvm_runtime_XMLVMArray.array_; + XMLVMElem conversion; + switch (m->fields.java_lang_reflect_Method.slot_) { + case 0: + conversion.i = (JAVA_BOOLEAN) org_apache_harmony_niochar_charset_UTF_8_contains___java_nio_charset_Charset(receiver, argsArray[0]); + result = __NEW_java_lang_Boolean(); + java_lang_Boolean___INIT____boolean(result, conversion.i); + break; + case 1: + result = (JAVA_OBJECT) org_apache_harmony_niochar_charset_UTF_8_newDecoder__(receiver); + break; + case 2: + result = (JAVA_OBJECT) org_apache_harmony_niochar_charset_UTF_8_newEncoder__(receiver); + break; + default: + XMLVM_INTERNAL_ERROR(); + break; + } + return result; +} + +void __INIT_org_apache_harmony_niochar_charset_UTF_8() +{ + staticInitializerLock(&__TIB_org_apache_harmony_niochar_charset_UTF_8); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_niochar_charset_UTF_8.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_niochar_charset_UTF_8.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_niochar_charset_UTF_8); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_niochar_charset_UTF_8.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_niochar_charset_UTF_8.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_niochar_charset_UTF_8.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.niochar.charset.UTF_8") + __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8(); + } +} + +void __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_charset_Charset) + __TIB_org_apache_harmony_niochar_charset_UTF_8.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_niochar_charset_UTF_8.vtable, __TIB_java_nio_charset_Charset.vtable, sizeof(__TIB_java_nio_charset_Charset.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_niochar_charset_UTF_8.vtable[7] = (VTABLE_PTR) &org_apache_harmony_niochar_charset_UTF_8_contains___java_nio_charset_Charset; + __TIB_org_apache_harmony_niochar_charset_UTF_8.vtable[8] = (VTABLE_PTR) &org_apache_harmony_niochar_charset_UTF_8_newDecoder__; + __TIB_org_apache_harmony_niochar_charset_UTF_8.vtable[9] = (VTABLE_PTR) &org_apache_harmony_niochar_charset_UTF_8_newEncoder__; + // Initialize interface information + __TIB_org_apache_harmony_niochar_charset_UTF_8.numImplementedInterfaces = 1; + __TIB_org_apache_harmony_niochar_charset_UTF_8.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Comparable) + + __TIB_org_apache_harmony_niochar_charset_UTF_8.implementedInterfaces[0][0] = &__TIB_java_lang_Comparable; + // Initialize itable for this class + __TIB_org_apache_harmony_niochar_charset_UTF_8.itableBegin = &__TIB_org_apache_harmony_niochar_charset_UTF_8.itable[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_org_apache_harmony_niochar_charset_UTF_8.vtable[6]; + + _STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingBytes = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingNumbers = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + _STATIC_org_apache_harmony_niochar_charset_UTF_8_lowerEncodingLimit = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL; + + __TIB_org_apache_harmony_niochar_charset_UTF_8.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_charset_UTF_8.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_niochar_charset_UTF_8.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_charset_UTF_8.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_niochar_charset_UTF_8.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_niochar_charset_UTF_8 = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_niochar_charset_UTF_8); + __TIB_org_apache_harmony_niochar_charset_UTF_8.clazz = __CLASS_org_apache_harmony_niochar_charset_UTF_8; + __TIB_org_apache_harmony_niochar_charset_UTF_8.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_niochar_charset_UTF_8_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_1ARRAY); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_2ARRAY); + org_apache_harmony_niochar_charset_UTF_8___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_niochar_charset_UTF_8] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_niochar_charset_UTF_8.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_niochar_charset_UTF_8(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_niochar_charset_UTF_8] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_charset_Charset(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_niochar_charset_UTF_8() +{ XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) +org_apache_harmony_niochar_charset_UTF_8* me = (org_apache_harmony_niochar_charset_UTF_8*) XMLVM_MALLOC(sizeof(org_apache_harmony_niochar_charset_UTF_8)); + me->tib = &__TIB_org_apache_harmony_niochar_charset_UTF_8; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_niochar_charset_UTF_8] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_GET_remainingBytes() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) + return _STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingBytes; +} + +void org_apache_harmony_niochar_charset_UTF_8_PUT_remainingBytes(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) +_STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingBytes = v; +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_GET_remainingNumbers() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) + return _STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingNumbers; +} + +void org_apache_harmony_niochar_charset_UTF_8_PUT_remainingNumbers(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) +_STATIC_org_apache_harmony_niochar_charset_UTF_8_remainingNumbers = v; +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_GET_lowerEncodingLimit() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) + return _STATIC_org_apache_harmony_niochar_charset_UTF_8_lowerEncodingLimit; +} + +void org_apache_harmony_niochar_charset_UTF_8_PUT_lowerEncodingLimit(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) +_STATIC_org_apache_harmony_niochar_charset_UTF_8_lowerEncodingLimit = v; +} + +void org_apache_harmony_niochar_charset_UTF_8___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8___CLINIT___] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r3.i = 4; + XMLVM_SOURCE_POSITION("UTF_8.java", 42) + _r0.i = 128; + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r0.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_INT[]){-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, -1, -1, -1, -1, -1, -1, -1, -1, }); + org_apache_harmony_niochar_charset_UTF_8_PUT_remainingBytes( _r0.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 58) + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r3.i); + _r1.i = 1; + _r2.i = 4224; + XMLVM_SOURCE_POSITION("UTF_8.java", 60) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 2; + _r2.i = 401536; + XMLVM_SOURCE_POSITION("UTF_8.java", 61) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + _r1.i = 3; + _r2.i = 29892736; + XMLVM_SOURCE_POSITION("UTF_8.java", 62) + XMLVM_CHECK_NPE(0) + XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i); + ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r2.i; + org_apache_harmony_niochar_charset_UTF_8_PUT_remainingNumbers( _r0.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 65) + XMLVM_CLASS_INIT(int) + _r0.o = XMLVMArray_createSingleDimension(__CLASS_int, _r3.i); + XMLVMArray_fillArray(((org_xmlvm_runtime_XMLVMArray*) _r0.o), (JAVA_ARRAY_INT[]){-1, 128, 2048, 65536, }); + org_apache_harmony_niochar_charset_UTF_8_PUT_lowerEncodingLimit( _r0.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 27) + XMLVM_EXIT_METHOD() + return; + label40:; + label300:; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_niochar_charset_UTF_8___INIT____java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8___INIT____java_lang_String_java_lang_String_1ARRAY] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + XMLVM_SOURCE_POSITION("UTF_8.java", 68) + XMLVM_CHECK_NPE(0) + java_nio_charset_Charset___INIT____java_lang_String_java_lang_String_1ARRAY(_r0.o, _r1.o, _r2.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 69) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN org_apache_harmony_niochar_charset_UTF_8_contains___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_contains___java_nio_charset_Charset] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "contains", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r2.o = me; + _r3.o = n1; + XMLVM_SOURCE_POSITION("UTF_8.java", 74) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "UTF-8" + _r1.o = xmlvm_create_java_string_from_pool(100); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 75) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "US-ASCII" + _r1.o = xmlvm_create_java_string_from_pool(190); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 76) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "KOI8-R" + _r1.o = xmlvm_create_java_string_from_pool(204); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 77) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "windows-1250" + _r1.o = xmlvm_create_java_string_from_pool(207); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 78) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "windows-1251" + _r1.o = xmlvm_create_java_string_from_pool(210); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 79) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "windows-1252" + _r1.o = xmlvm_create_java_string_from_pool(213); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 80) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "windows-1253" + _r1.o = xmlvm_create_java_string_from_pool(216); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 81) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "windows-1254" + _r1.o = xmlvm_create_java_string_from_pool(219); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 82) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "windows-1257" + _r1.o = xmlvm_create_java_string_from_pool(222); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 83) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-1" + _r1.o = xmlvm_create_java_string_from_pool(175); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 84) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-2" + _r1.o = xmlvm_create_java_string_from_pool(237); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 85) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-4" + _r1.o = xmlvm_create_java_string_from_pool(246); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 86) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-5" + _r1.o = xmlvm_create_java_string_from_pool(255); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 87) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-7" + _r1.o = xmlvm_create_java_string_from_pool(263); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 88) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-9" + _r1.o = xmlvm_create_java_string_from_pool(273); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 89) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-10" + _r1.o = xmlvm_create_java_string_from_pool(829); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 90) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-13" + _r1.o = xmlvm_create_java_string_from_pool(281); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 91) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-14" + _r1.o = xmlvm_create_java_string_from_pool(830); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 92) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-15" + _r1.o = xmlvm_create_java_string_from_pool(283); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 93) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "ISO-8859-16" + _r1.o = xmlvm_create_java_string_from_pool(831); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 94) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "UTF-16" + _r1.o = xmlvm_create_java_string_from_pool(289); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 95) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "UTF-16LE" + _r1.o = xmlvm_create_java_string_from_pool(292); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + XMLVM_SOURCE_POSITION("UTF_8.java", 96) + XMLVM_CHECK_NPE(3) + _r0.o = java_nio_charset_Charset_name__(_r3.o); + // "UTF-16BE" + _r1.o = xmlvm_create_java_string_from_pool(295); + XMLVM_CHECK_NPE(0) + _r0.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r0.o, _r1.o); + if (_r0.i != 0) goto label278; + _r0.i = 0; + label277:; + XMLVM_EXIT_METHOD() + return _r0.i; + label278:; + _r0.i = 1; + goto label277; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_newDecoder__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_newDecoder__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "newDecoder", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("UTF_8.java", 100) + _r0.o = __NEW_org_apache_harmony_niochar_charset_UTF_8_Decoder(); + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(0) + org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Decoder(_r0.o, _r2.o, _r2.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_newEncoder__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_newEncoder__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "newEncoder", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r2.o = me; + XMLVM_SOURCE_POSITION("UTF_8.java", 104) + _r0.o = __NEW_org_apache_harmony_niochar_charset_UTF_8_Encoder(); + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(0) + org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Encoder(_r0.o, _r2.o, _r2.o, _r1.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_access$0__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_access$0__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "access$0", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("UTF_8.java", 42) + _r0.o = org_apache_harmony_niochar_charset_UTF_8_GET_remainingBytes(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_access$1__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_access$1__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "access$1", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("UTF_8.java", 58) + _r0.o = org_apache_harmony_niochar_charset_UTF_8_GET_remainingNumbers(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_access$2__() +{ + XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8) + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_access$2__] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8", "access$2", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("UTF_8.java", 65) + _r0.o = org_apache_harmony_niochar_charset_UTF_8_GET_lowerEncodingLimit(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.h b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.h new file mode 100644 index 0000000000000..3bcd5a9668807 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8.h @@ -0,0 +1,94 @@ +#ifndef __ORG_APACHE_HARMONY_NIOCHAR_CHARSET_UTF_8__ +#define __ORG_APACHE_HARMONY_NIOCHAR_CHARSET_UTF_8__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8 8 +// Implemented interfaces: +// Super Class: +#include "java_nio_charset_Charset.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +#define XMLVM_FORWARD_DECL_java_nio_charset_CharsetDecoder +XMLVM_FORWARD_DECL(java_nio_charset_CharsetDecoder) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CharsetEncoder +#define XMLVM_FORWARD_DECL_java_nio_charset_CharsetEncoder +XMLVM_FORWARD_DECL(java_nio_charset_CharsetEncoder) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Decoder +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Decoder +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_charset_UTF_8_Decoder) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Encoder +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Encoder +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_charset_UTF_8_Encoder) +#endif +// Class declarations for org.apache.harmony.niochar.charset.UTF_8 +XMLVM_DEFINE_CLASS(org_apache_harmony_niochar_charset_UTF_8, 10, XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8 +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8 \ + __INSTANCE_FIELDS_java_nio_charset_Charset; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8 \ + } org_apache_harmony_niochar_charset_UTF_8 + +struct org_apache_harmony_niochar_charset_UTF_8 { + __TIB_DEFINITION_org_apache_harmony_niochar_charset_UTF_8* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +typedef struct org_apache_harmony_niochar_charset_UTF_8 org_apache_harmony_niochar_charset_UTF_8; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8 10 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_charset_UTF_8_contains___java_nio_charset_Charset 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_charset_UTF_8_newDecoder__ 8 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_charset_UTF_8_newEncoder__ 9 + +void __INIT_org_apache_harmony_niochar_charset_UTF_8(); +void __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8(); +void __DELETE_org_apache_harmony_niochar_charset_UTF_8(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_niochar_charset_UTF_8(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8(); +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_GET_remainingBytes(); +void org_apache_harmony_niochar_charset_UTF_8_PUT_remainingBytes(JAVA_OBJECT v); +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_GET_remainingNumbers(); +void org_apache_harmony_niochar_charset_UTF_8_PUT_remainingNumbers(JAVA_OBJECT v); +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_GET_lowerEncodingLimit(); +void org_apache_harmony_niochar_charset_UTF_8_PUT_lowerEncodingLimit(JAVA_OBJECT v); +void org_apache_harmony_niochar_charset_UTF_8___CLINIT_(); +void org_apache_harmony_niochar_charset_UTF_8___INIT____java_lang_String_java_lang_String_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 7 +JAVA_BOOLEAN org_apache_harmony_niochar_charset_UTF_8_contains___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 8 +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_newDecoder__(JAVA_OBJECT me); +// Vtable index: 9 +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_newEncoder__(JAVA_OBJECT me); +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_access$0__(); +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_access$1__(); +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_access$2__(); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.c b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.c new file mode 100644 index 0000000000000..4ab7763ba0545 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.c @@ -0,0 +1,638 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_nio_ByteBuffer.h" +#include "java_nio_CharBuffer.h" +#include "java_nio_charset_Charset.h" +#include "java_nio_charset_CoderResult.h" +#include "org_apache_harmony_niochar_charset_UTF_8.h" + +#include "org_apache_harmony_niochar_charset_UTF_8_Decoder.h" + +#define XMLVM_CURRENT_CLASS_NAME UTF_8_Decoder +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_niochar_charset_UTF_8_Decoder + +__TIB_DEFINITION_org_apache_harmony_niochar_charset_UTF_8_Decoder __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_niochar_charset_UTF_8_Decoder, // classInitializer + "org.apache.harmony.niochar.charset.UTF_8$Decoder", // className + "org.apache.harmony.niochar.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_charset_CharsetDecoder, // extends + sizeof(org_apache_harmony_niochar_charset_UTF_8_Decoder), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_niochar_charset_UTF_8_Decoder() +{ + staticInitializerLock(&__TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.niochar.charset.UTF_8$Decoder") + __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8_Decoder(); + } +} + +void __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8_Decoder() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_charset_CharsetDecoder) + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8_Decoder; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.vtable, __TIB_java_nio_charset_CharsetDecoder.vtable, sizeof(__TIB_java_nio_charset_CharsetDecoder.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.vtable[6] = (VTABLE_PTR) &org_apache_harmony_niochar_charset_UTF_8_Decoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer; + // Initialize interface information + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder); + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.clazz = __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_1ARRAY); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_niochar_charset_UTF_8_Decoder] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_niochar_charset_UTF_8_Decoder(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_niochar_charset_UTF_8_Decoder] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Decoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetDecoder(me, 0 || derivedClassWillRegisterFinalizer); + ((org_apache_harmony_niochar_charset_UTF_8_Decoder*) me)->fields.org_apache_harmony_niochar_charset_UTF_8_Decoder.this_0_ = (org_apache_harmony_niochar_charset_UTF_8*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Decoder] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_niochar_charset_UTF_8_Decoder() +{ XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8_Decoder) +org_apache_harmony_niochar_charset_UTF_8_Decoder* me = (org_apache_harmony_niochar_charset_UTF_8_Decoder*) XMLVM_MALLOC(sizeof(org_apache_harmony_niochar_charset_UTF_8_Decoder)); + me->tib = &__TIB_org_apache_harmony_niochar_charset_UTF_8_Decoder; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Decoder(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_niochar_charset_UTF_8_Decoder] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8_Decoder() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8$Decoder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r1.o = me; + _r2.o = n1; + _r3.o = n2; + _r0.f = 1.0; + XMLVM_SOURCE_POSITION("UTF_8.java", 111) + XMLVM_CHECK_NPE(1) + ((org_apache_harmony_niochar_charset_UTF_8_Decoder*) _r1.o)->fields.org_apache_harmony_niochar_charset_UTF_8_Decoder.this_0_ = _r2.o; + XMLVM_SOURCE_POSITION("UTF_8.java", 110) + XMLVM_CHECK_NPE(1) + java_nio_charset_CharsetDecoder___INIT____java_nio_charset_Charset_float_float(_r1.o, _r3.o, _r0.f, _r0.f); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_Decoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_Decoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8$Decoder", "decodeLoop", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + volatile XMLVMElem _r12; + volatile XMLVMElem _r13; + volatile XMLVMElem _r14; + volatile XMLVMElem _r15; + _r13.o = me; + _r14.o = n1; + _r15.o = n2; + XMLVM_SOURCE_POSITION("UTF_8.java", 114) + XMLVM_CHECK_NPE(15) + _r0.i = java_nio_Buffer_remaining__(_r15.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 115) + XMLVM_CHECK_NPE(14) + _r1.i = java_nio_Buffer_position__(_r14.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 116) + XMLVM_CHECK_NPE(14) + _r2.i = java_nio_Buffer_limit__(_r14.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 117) + //java_nio_ByteBuffer_hasArray__[8] + XMLVM_CHECK_NPE(14) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[8])(_r14.o); + if (_r3.i == 0) goto label392; + //java_nio_CharBuffer_hasArray__[8] + XMLVM_CHECK_NPE(15) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[8])(_r15.o); + if (_r3.i == 0) goto label392; + XMLVM_SOURCE_POSITION("UTF_8.java", 118) + //java_nio_ByteBuffer_array__[7] + XMLVM_CHECK_NPE(14) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[7])(_r14.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 119) + //java_nio_CharBuffer_array__[7] + XMLVM_CHECK_NPE(15) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[7])(_r15.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 120) + //java_nio_ByteBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(14) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[6])(_r14.o); + _r2.i = _r2.i + _r5.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 122) + //java_nio_ByteBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(14) + _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[6])(_r14.o); + _r1.i = _r1.i + _r5.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 123) + XMLVM_CHECK_NPE(15) + _r5.i = java_nio_Buffer_position__(_r15.o); + //java_nio_CharBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(15) + _r6.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[6])(_r15.o); + _r5.i = _r5.i + _r6.i; + _r12 = _r5; + _r5 = _r0; + _r0 = _r12; + label54:; + XMLVM_SOURCE_POSITION("UTF_8.java", 127) + if (_r1.i >= _r2.i) goto label58; + if (_r5.i > 0) goto label82; + label58:; + XMLVM_SOURCE_POSITION("UTF_8.java", 163) + //java_nio_ByteBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(14) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[6])(_r14.o); + _r3.i = _r1.i - _r3.i; + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r3.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 164) + //java_nio_CharBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(15) + _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[6])(_r15.o); + _r0.i = _r0.i - _r3.i; + XMLVM_CHECK_NPE(15) + java_nio_Buffer_position___int(_r15.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 165) + if (_r5.i != 0) goto label229; + if (_r1.i >= _r2.i) goto label229; + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + label81:; + XMLVM_SOURCE_POSITION("UTF_8.java", 205) + XMLVM_EXIT_METHOD() + return _r0.o; + label82:; + XMLVM_SOURCE_POSITION("UTF_8.java", 128) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i); + _r6.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i]; + XMLVM_SOURCE_POSITION("UTF_8.java", 129) + if (_r6.i >= 0) goto label387; + XMLVM_SOURCE_POSITION("UTF_8.java", 130) + _r6.i = _r6.i & 127; + XMLVM_SOURCE_POSITION("UTF_8.java", 131) + _r7.o = org_apache_harmony_niochar_charset_UTF_8_access$0__(); + XMLVM_CHECK_NPE(7) + XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i); + _r7.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i]; + XMLVM_SOURCE_POSITION("UTF_8.java", 133) + _r8.i = -1; + if (_r7.i != _r8.i) goto label119; + XMLVM_SOURCE_POSITION("UTF_8.java", 134) + //java_nio_ByteBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(14) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[6])(_r14.o); + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r1.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 135) + //java_nio_CharBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(15) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[6])(_r15.o); + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(15) + java_nio_Buffer_position___int(_r15.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 136) + _r0.i = 1; + _r0.o = java_nio_charset_CoderResult_malformedForLength___int(_r0.i); + goto label81; + label119:; + XMLVM_SOURCE_POSITION("UTF_8.java", 138) + _r8.i = _r2.i - _r1.i; + _r9.i = _r7.i + 1; + if (_r8.i < _r9.i) goto label58; + XMLVM_SOURCE_POSITION("UTF_8.java", 142) + _r8.i = 0; + _r12 = _r8; + _r8 = _r6; + _r6 = _r12; + label129:; + if (_r6.i < _r7.i) goto label169; + XMLVM_SOURCE_POSITION("UTF_8.java", 151) + _r6.o = org_apache_harmony_niochar_charset_UTF_8_access$1__(); + XMLVM_CHECK_NPE(6) + XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r7.i); + _r6.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + _r6.i = _r8.i - _r6.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 152) + _r8.o = org_apache_harmony_niochar_charset_UTF_8_access$2__(); + XMLVM_CHECK_NPE(8) + XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r7.i); + _r8.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i]; + if (_r6.i >= _r8.i) goto label212; + XMLVM_SOURCE_POSITION("UTF_8.java", 154) + //java_nio_ByteBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(14) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[6])(_r14.o); + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r1.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 155) + //java_nio_CharBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(15) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[6])(_r15.o); + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(15) + java_nio_Buffer_position___int(_r15.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 156) + _r0.i = 1; + _r0.o = java_nio_charset_CoderResult_malformedForLength___int(_r0.i); + goto label81; + label169:; + XMLVM_SOURCE_POSITION("UTF_8.java", 143) + _r9.i = _r1.i + _r6.i; + _r9.i = _r9.i + 1; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + _r9.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i]; + _r9.i = _r9.i & 255; + _r10.i = _r9.i & 192; + _r11.i = 128; + if (_r10.i == _r11.i) goto label206; + XMLVM_SOURCE_POSITION("UTF_8.java", 144) + XMLVM_SOURCE_POSITION("UTF_8.java", 145) + //java_nio_ByteBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(14) + _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[6])(_r14.o); + _r1.i = _r1.i - _r2.i; + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r1.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 146) + //java_nio_CharBuffer_arrayOffset__[6] + XMLVM_CHECK_NPE(15) + _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[6])(_r15.o); + _r0.i = _r0.i - _r1.i; + XMLVM_CHECK_NPE(15) + java_nio_Buffer_position___int(_r15.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 147) + _r0.i = _r6.i + 1; + _r0.o = java_nio_charset_CoderResult_malformedForLength___int(_r0.i); + goto label81; + label206:; + XMLVM_SOURCE_POSITION("UTF_8.java", 149) + _r8.i = _r8.i << 6; + _r8.i = _r8.i + _r9.i; + _r6.i = _r6.i + 1; + goto label129; + label212:; + XMLVM_SOURCE_POSITION("UTF_8.java", 158) + _r1.i = _r1.i + _r7.i; + _r12 = _r6; + _r6 = _r1; + _r1 = _r12; + label216:; + XMLVM_SOURCE_POSITION("UTF_8.java", 160) + _r7.i = _r0.i + 1; + _r1.i = _r1.i & 0xffff; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r0.i); + ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 161) + _r0.i = _r5.i + -1; + _r1.i = _r6.i + 1; + _r5 = _r0; + _r0 = _r7; + goto label54; + label229:; + XMLVM_SOURCE_POSITION("UTF_8.java", 166) + _r0.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + goto label81; + label233:; + XMLVM_SOURCE_POSITION("UTF_8.java", 170) + if (_r1.i != 0) goto label243; + XMLVM_TRY_BEGIN(w4520aaab2b1d161) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 171) + _r1.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4520aaab2b1d161) + XMLVM_CATCH_SPECIFIC(w4520aaab2b1d161,java_lang_Object,372) + XMLVM_CATCH_END(w4520aaab2b1d161) + XMLVM_RESTORE_EXCEPTION_ENV(w4520aaab2b1d161) + XMLVM_SOURCE_POSITION("UTF_8.java", 207) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + _r0 = _r1; + goto label81; + label243:; + XMLVM_TRY_BEGIN(w4520aaab2b1d167) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 174) + //java_nio_ByteBuffer_get__[33] + XMLVM_CHECK_NPE(14) + _r3.i = (*(JAVA_BYTE (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[33])(_r14.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 175) + if (_r3.i >= 0) { XMLVM_MEMCPY(curThread_w4520aaab2b1d167->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4520aaab2b1d167, sizeof(XMLVM_JMP_BUF)); goto label383; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 176) + _r3.i = _r3.i & 127; + XMLVM_SOURCE_POSITION("UTF_8.java", 177) + _r4.o = org_apache_harmony_niochar_charset_UTF_8_access$0__(); + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i); + _r4.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i]; + XMLVM_SOURCE_POSITION("UTF_8.java", 178) + _r5.i = -1; + if (_r4.i != _r5.i) { XMLVM_MEMCPY(curThread_w4520aaab2b1d167->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4520aaab2b1d167, sizeof(XMLVM_JMP_BUF)); goto label271; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 179) + _r1.i = 1; + _r1.o = java_nio_charset_CoderResult_malformedForLength___int(_r1.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4520aaab2b1d167) + XMLVM_CATCH_SPECIFIC(w4520aaab2b1d167,java_lang_Object,372) + XMLVM_CATCH_END(w4520aaab2b1d167) + XMLVM_RESTORE_EXCEPTION_ENV(w4520aaab2b1d167) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + _r0 = _r1; + goto label81; + label271:; + XMLVM_SOURCE_POSITION("UTF_8.java", 181) + _r5.i = _r2.i - _r0.i; + _r6.i = _r4.i + 1; + if (_r5.i >= _r6.i) goto label285; + XMLVM_TRY_BEGIN(w4520aaab2b1d176) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 182) + _r1.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4520aaab2b1d176) + XMLVM_CATCH_SPECIFIC(w4520aaab2b1d176,java_lang_Object,372) + XMLVM_CATCH_END(w4520aaab2b1d176) + XMLVM_RESTORE_EXCEPTION_ENV(w4520aaab2b1d176) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + _r0 = _r1; + goto label81; + label285:; + XMLVM_SOURCE_POSITION("UTF_8.java", 186) + _r5.i = 0; + _r12 = _r5; + _r5 = _r3; + _r3 = _r12; + label289:; + if (_r3.i < _r4.i) goto label318; + XMLVM_TRY_BEGIN(w4520aaab2b1d188) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 194) + _r3.o = org_apache_harmony_niochar_charset_UTF_8_access$1__(); + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i); + _r3.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + _r3.i = _r5.i - _r3.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 195) + _r5.o = org_apache_harmony_niochar_charset_UTF_8_access$2__(); + XMLVM_CHECK_NPE(5) + XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r4.i); + _r5.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i]; + if (_r3.i >= _r5.i) { XMLVM_MEMCPY(curThread_w4520aaab2b1d188->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4520aaab2b1d188, sizeof(XMLVM_JMP_BUF)); goto label348; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 197) + _r1.i = 1; + _r1.o = java_nio_charset_CoderResult_malformedForLength___int(_r1.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4520aaab2b1d188) + XMLVM_CATCH_SPECIFIC(w4520aaab2b1d188,java_lang_Object,372) + XMLVM_CATCH_END(w4520aaab2b1d188) + XMLVM_RESTORE_EXCEPTION_ENV(w4520aaab2b1d188) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + _r0 = _r1; + goto label81; + label318:; + XMLVM_TRY_BEGIN(w4520aaab2b1d193) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 187) + //java_nio_ByteBuffer_get__[33] + XMLVM_CHECK_NPE(14) + _r6.i = (*(JAVA_BYTE (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[33])(_r14.o); + _r6.i = _r6.i & 255; + _r7.i = _r6.i & 192; + _r8.i = 128; + if (_r7.i == _r8.i) { XMLVM_MEMCPY(curThread_w4520aaab2b1d193->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w4520aaab2b1d193, sizeof(XMLVM_JMP_BUF)); goto label342; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 188) + XMLVM_SOURCE_POSITION("UTF_8.java", 190) + _r1.i = _r3.i + 1; + _r1.o = java_nio_charset_CoderResult_malformedForLength___int(_r1.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4520aaab2b1d193) + XMLVM_CATCH_SPECIFIC(w4520aaab2b1d193,java_lang_Object,372) + XMLVM_CATCH_END(w4520aaab2b1d193) + XMLVM_RESTORE_EXCEPTION_ENV(w4520aaab2b1d193) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + _r0 = _r1; + XMLVM_SOURCE_POSITION("UTF_8.java", 189) + goto label81; + label342:; + XMLVM_SOURCE_POSITION("UTF_8.java", 192) + _r5.i = _r5.i << 6; + _r5.i = _r5.i + _r6.i; + _r3.i = _r3.i + 1; + goto label289; + label348:; + XMLVM_SOURCE_POSITION("UTF_8.java", 199) + _r0.i = _r0.i + _r4.i; + _r12 = _r3; + _r3 = _r0; + _r0 = _r12; + label352:; + XMLVM_SOURCE_POSITION("UTF_8.java", 201) + _r3.i = _r3.i + 1; + _r0.i = _r0.i & 0xffff; + XMLVM_TRY_BEGIN(w4520aaab2b1d214) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 202) + //java_nio_CharBuffer_put___char[27] + XMLVM_CHECK_NPE(15) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_nio_CharBuffer*) _r15.o)->tib->vtable[27])(_r15.o, _r0.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4520aaab2b1d214) + XMLVM_CATCH_SPECIFIC(w4520aaab2b1d214,java_lang_Object,380) + XMLVM_CATCH_END(w4520aaab2b1d214) + XMLVM_RESTORE_EXCEPTION_ENV(w4520aaab2b1d214) + XMLVM_SOURCE_POSITION("UTF_8.java", 203) + _r0.i = _r1.i + -1; + _r1 = _r0; + _r0 = _r3; + label362:; + XMLVM_SOURCE_POSITION("UTF_8.java", 169) + if (_r0.i < _r2.i) goto label233; + XMLVM_TRY_BEGIN(w4520aaab2b1d222) + // Begin try + _r1.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w4520aaab2b1d222) + XMLVM_CATCH_SPECIFIC(w4520aaab2b1d222,java_lang_Object,372) + XMLVM_CATCH_END(w4520aaab2b1d222) + XMLVM_RESTORE_EXCEPTION_ENV(w4520aaab2b1d222) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + _r0 = _r1; + goto label81; + label372:; + XMLVM_SOURCE_POSITION("UTF_8.java", 206) + java_lang_Thread* curThread_w4520aaab2b1d228 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w4520aaab2b1d228->fields.java_lang_Thread.xmlvmException_; + _r12 = _r1; + _r1 = _r0; + _r0 = _r12; + label376:; + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r1.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 208) + XMLVM_THROW_CUSTOM(_r0.o) + label380:; + java_lang_Thread* curThread_w4520aaab2b1d237 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r0.o = curThread_w4520aaab2b1d237->fields.java_lang_Thread.xmlvmException_; + _r1 = _r3; + goto label376; + label383:; + _r12 = _r3; + _r3 = _r0; + _r0 = _r12; + goto label352; + label387:; + _r12 = _r6; + _r6 = _r1; + _r1 = _r12; + goto label216; + label392:; + _r12 = _r1; + _r1 = _r0; + _r0 = _r12; + goto label362; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Decoder(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Decoder] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8$Decoder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + XMLVM_SOURCE_POSITION("UTF_8.java", 109) + XMLVM_CHECK_NPE(0) + org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset(_r0.o, _r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.h b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.h new file mode 100644 index 0000000000000..c07b6addbd1a4 --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Decoder.h @@ -0,0 +1,84 @@ +#ifndef __ORG_APACHE_HARMONY_NIOCHAR_CHARSET_UTF_8_DECODER__ +#define __ORG_APACHE_HARMONY_NIOCHAR_CHARSET_UTF_8_DECODER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8_Decoder 0 +// Implemented interfaces: +// Super Class: +#include "java_nio_charset_CharsetDecoder.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +#define XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +XMLVM_FORWARD_DECL(java_nio_charset_CoderResult) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_charset_UTF_8) +#endif +// Class declarations for org.apache.harmony.niochar.charset.UTF_8$Decoder +XMLVM_DEFINE_CLASS(org_apache_harmony_niochar_charset_UTF_8_Decoder, 7, XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8_Decoder) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Decoder_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Decoder +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Decoder \ + __INSTANCE_FIELDS_java_nio_charset_CharsetDecoder; \ + struct { \ + JAVA_OBJECT this_0_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Decoder \ + } org_apache_harmony_niochar_charset_UTF_8_Decoder + +struct org_apache_harmony_niochar_charset_UTF_8_Decoder { + __TIB_DEFINITION_org_apache_harmony_niochar_charset_UTF_8_Decoder* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Decoder; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Decoder +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Decoder +typedef struct org_apache_harmony_niochar_charset_UTF_8_Decoder org_apache_harmony_niochar_charset_UTF_8_Decoder; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8_Decoder 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_charset_UTF_8_Decoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer 6 + +void __INIT_org_apache_harmony_niochar_charset_UTF_8_Decoder(); +void __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8_Decoder(); +void __DELETE_org_apache_harmony_niochar_charset_UTF_8_Decoder(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Decoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_niochar_charset_UTF_8_Decoder(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8_Decoder(); +void org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_Decoder_decodeLoop___java_nio_ByteBuffer_java_nio_CharBuffer(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void org_apache_harmony_niochar_charset_UTF_8_Decoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Decoder(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); + +#endif diff --git a/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.c b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.c new file mode 100644 index 0000000000000..1aa685a9acc2e --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.c @@ -0,0 +1,837 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_nio_ByteBuffer.h" +#include "java_nio_CharBuffer.h" +#include "java_nio_charset_Charset.h" +#include "java_nio_charset_CoderResult.h" +#include "org_apache_harmony_niochar_charset_UTF_8.h" + +#include "org_apache_harmony_niochar_charset_UTF_8_Encoder.h" + +#define XMLVM_CURRENT_CLASS_NAME UTF_8_Encoder +#define XMLVM_CURRENT_PKG_CLASS_NAME org_apache_harmony_niochar_charset_UTF_8_Encoder + +__TIB_DEFINITION_org_apache_harmony_niochar_charset_UTF_8_Encoder __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_apache_harmony_niochar_charset_UTF_8_Encoder, // classInitializer + "org.apache.harmony.niochar.charset.UTF_8$Encoder", // className + "org.apache.harmony.niochar.charset", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_charset_CharsetEncoder, // extends + sizeof(org_apache_harmony_niochar_charset_UTF_8_Encoder), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_1ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_2ARRAY; +JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_apache_harmony_niochar_charset_UTF_8_Encoder() +{ + staticInitializerLock(&__TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.apache.harmony.niochar.charset.UTF_8$Encoder") + __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8_Encoder(); + } +} + +void __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8_Encoder() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_nio_charset_CharsetEncoder) + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.newInstanceFunc = __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8_Encoder; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.vtable, __TIB_java_nio_charset_CharsetEncoder.vtable, sizeof(__TIB_java_nio_charset_CharsetEncoder.vtable)); + // Initialize vtable for this class + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.vtable[6] = (VTABLE_PTR) &org_apache_harmony_niochar_charset_UTF_8_Encoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer; + // Initialize interface information + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.numImplementedInterfaces = 0; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.declaredFields = &__field_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.methodDispatcherFunc = method_dispatcher; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.declaredMethods = &__method_reflection_data[0]; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder); + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.clazz = __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder; + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.baseType = JAVA_NULL; + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_1ARRAY); + __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_apache_harmony_niochar_charset_UTF_8_Encoder] + //XMLVM_END_WRAPPER + + __TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder.classInitialized = 1; +} + +void __DELETE_org_apache_harmony_niochar_charset_UTF_8_Encoder(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_apache_harmony_niochar_charset_UTF_8_Encoder] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Encoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_nio_charset_CharsetEncoder(me, 0 || derivedClassWillRegisterFinalizer); + ((org_apache_harmony_niochar_charset_UTF_8_Encoder*) me)->fields.org_apache_harmony_niochar_charset_UTF_8_Encoder.this_0_ = (org_apache_harmony_niochar_charset_UTF_8*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Encoder] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_apache_harmony_niochar_charset_UTF_8_Encoder() +{ XMLVM_CLASS_INIT(org_apache_harmony_niochar_charset_UTF_8_Encoder) +org_apache_harmony_niochar_charset_UTF_8_Encoder* me = (org_apache_harmony_niochar_charset_UTF_8_Encoder*) XMLVM_MALLOC(sizeof(org_apache_harmony_niochar_charset_UTF_8_Encoder)); + me->tib = &__TIB_org_apache_harmony_niochar_charset_UTF_8_Encoder; + __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Encoder(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_apache_harmony_niochar_charset_UTF_8_Encoder] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8_Encoder() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8$Encoder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r2.o = me; + _r3.o = n1; + _r4.o = n2; + XMLVM_SOURCE_POSITION("UTF_8.java", 217) + XMLVM_CHECK_NPE(2) + ((org_apache_harmony_niochar_charset_UTF_8_Encoder*) _r2.o)->fields.org_apache_harmony_niochar_charset_UTF_8_Encoder.this_0_ = _r3.o; + XMLVM_SOURCE_POSITION("UTF_8.java", 216) + _r0.f = 1.1; + _r1.f = 4.0; + XMLVM_CHECK_NPE(2) + java_nio_charset_CharsetEncoder___INIT____java_nio_charset_Charset_float_float(_r2.o, _r4.o, _r0.f, _r1.f); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_Encoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_Encoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8$Encoder", "encodeLoop", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + volatile XMLVMElem _r3; + volatile XMLVMElem _r4; + volatile XMLVMElem _r5; + volatile XMLVMElem _r6; + volatile XMLVMElem _r7; + volatile XMLVMElem _r8; + volatile XMLVMElem _r9; + volatile XMLVMElem _r10; + volatile XMLVMElem _r11; + volatile XMLVMElem _r12; + volatile XMLVMElem _r13; + volatile XMLVMElem _r14; + _r12.o = me; + _r13.o = n1; + _r14.o = n2; + XMLVM_SOURCE_POSITION("UTF_8.java", 220) + XMLVM_CHECK_NPE(14) + _r0.i = java_nio_Buffer_remaining__(_r14.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 221) + XMLVM_CHECK_NPE(13) + _r1.i = java_nio_Buffer_position__(_r13.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 222) + XMLVM_CHECK_NPE(13) + _r2.i = java_nio_Buffer_limit__(_r13.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 223) + //java_nio_CharBuffer_hasArray__[8] + XMLVM_CHECK_NPE(13) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r13.o)->tib->vtable[8])(_r13.o); + if (_r3.i == 0) goto label589; + //java_nio_ByteBuffer_hasArray__[8] + XMLVM_CHECK_NPE(14) + _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[8])(_r14.o); + if (_r3.i == 0) goto label589; + XMLVM_SOURCE_POSITION("UTF_8.java", 227) + //java_nio_ByteBuffer_array__[7] + XMLVM_CHECK_NPE(14) + _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[7])(_r14.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 228) + //java_nio_CharBuffer_array__[7] + XMLVM_CHECK_NPE(13) + _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r13.o)->tib->vtable[7])(_r13.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 229) + XMLVM_CHECK_NPE(14) + _r5.i = java_nio_Buffer_position__(_r14.o); + XMLVM_SOURCE_POSITION("UTF_8.java", 230) + XMLVM_CHECK_NPE(13) + _r6.i = java_nio_Buffer_remaining__(_r13.o); + _r7 = _r0; + _r0 = _r5; + _r5 = _r1; + label43:; + XMLVM_SOURCE_POSITION("UTF_8.java", 231) + _r8.i = _r1.i + _r6.i; + if (_r5.i < _r8.i) goto label58; + XMLVM_SOURCE_POSITION("UTF_8.java", 317) + if (_r6.i == 0) goto label55; + XMLVM_SOURCE_POSITION("UTF_8.java", 318) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 319) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + label55:; + XMLVM_SOURCE_POSITION("UTF_8.java", 401) + _r0.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + label57:; + XMLVM_EXIT_METHOD() + return _r0.o; + label58:; + XMLVM_SOURCE_POSITION("UTF_8.java", 232) + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i); + _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i]; + _r9.i = 65535; + _r8.i = _r8.i & _r9.i; + _r9.i = 127; + if (_r8.i > _r9.i) goto label104; + XMLVM_SOURCE_POSITION("UTF_8.java", 234) + XMLVM_SOURCE_POSITION("UTF_8.java", 235) + _r9.i = 1; + if (_r7.i >= _r9.i) goto label80; + XMLVM_SOURCE_POSITION("UTF_8.java", 236) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 237) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 238) + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + goto label57; + label80:; + XMLVM_SOURCE_POSITION("UTF_8.java", 240) + _r9.i = _r0.i + 1; + _r8.i = _r8.i & 255; + _r8.i = (_r8.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r8.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 241) + _r0.i = _r7.i + -1; + _r7 = _r0; + _r0 = _r9; + label91:; + XMLVM_SOURCE_POSITION("UTF_8.java", 310) + if (_r7.i != 0) goto label327; + XMLVM_SOURCE_POSITION("UTF_8.java", 311) + _r1.i = _r5.i + 1; + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r1.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 312) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 313) + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + goto label57; + label104:; + XMLVM_SOURCE_POSITION("UTF_8.java", 242) + _r9.i = 2047; + if (_r8.i > _r9.i) goto label143; + XMLVM_SOURCE_POSITION("UTF_8.java", 244) + _r9.i = 2; + if (_r7.i >= _r9.i) goto label120; + XMLVM_SOURCE_POSITION("UTF_8.java", 245) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 246) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 247) + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + goto label57; + label120:; + XMLVM_SOURCE_POSITION("UTF_8.java", 249) + _r9.i = _r0.i + 1; + _r10.i = _r8.i >> 6; + _r10.i = _r10.i & 31; + _r10.i = _r10.i + 192; + _r10.i = (_r10.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r10.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 250) + _r0.i = _r9.i + 1; + _r8.i = _r8.i & 63; + _r8.i = _r8.i + 128; + _r8.i = (_r8.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r8.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 251) + _r7.i = _r7.i + -2; + goto label91; + label143:; + XMLVM_SOURCE_POSITION("UTF_8.java", 253) + _r9.i = 55296; + if (_r8.i < _r9.i) goto label277; + _r9.i = 57343; + if (_r8.i > _r9.i) goto label277; + XMLVM_SOURCE_POSITION("UTF_8.java", 256) + _r9.i = _r5.i + 1; + if (_r2.i > _r9.i) goto label166; + XMLVM_SOURCE_POSITION("UTF_8.java", 257) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 258) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 259) + _r0.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + goto label57; + label166:; + XMLVM_SOURCE_POSITION("UTF_8.java", 262) + _r9.i = 4; + if (_r7.i >= _r9.i) goto label178; + XMLVM_SOURCE_POSITION("UTF_8.java", 263) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 264) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 265) + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + goto label57; + label178:; + XMLVM_SOURCE_POSITION("UTF_8.java", 269) + _r9.i = 56320; + if (_r8.i < _r9.i) goto label196; + XMLVM_SOURCE_POSITION("UTF_8.java", 270) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 271) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 272) + _r0.i = 1; + _r0.o = java_nio_charset_CoderResult_malformedForLength___int(_r0.i); + goto label57; + label196:; + XMLVM_SOURCE_POSITION("UTF_8.java", 275) + _r9.i = _r5.i + 1; + XMLVM_CHECK_NPE(4) + XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r9.i); + _r9.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i]; + _r10.i = 65535; + _r9.i = _r9.i & _r10.i; + _r10.i = 56320; + if (_r9.i >= _r10.i) goto label222; + XMLVM_SOURCE_POSITION("UTF_8.java", 278) + XMLVM_SOURCE_POSITION("UTF_8.java", 279) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 280) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 281) + _r0.i = 1; + _r0.o = java_nio_charset_CoderResult_malformedForLength___int(_r0.i); + goto label57; + label222:; + XMLVM_SOURCE_POSITION("UTF_8.java", 289) + _r8.i = _r8.i << 10; + _r8.i = _r8.i + _r9.i; + _r9.i = -56613888; + _r8.i = _r8.i + _r9.i; + _r9.i = _r0.i + 1; + _r10.i = _r8.i >> 18; + _r10.i = _r10.i & 7; + _r10.i = _r10.i + 240; + _r10.i = (_r10.i << 24) >> 24; + XMLVM_SOURCE_POSITION("UTF_8.java", 291) + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r10.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 292) + _r0.i = _r9.i + 1; + _r10.i = _r8.i >> 12; + _r10.i = _r10.i & 63; + _r10.i = _r10.i + 128; + _r10.i = (_r10.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r10.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 293) + _r9.i = _r0.i + 1; + _r10.i = _r8.i >> 6; + _r10.i = _r10.i & 63; + _r10.i = _r10.i + 128; + _r10.i = (_r10.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r10.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 294) + _r0.i = _r9.i + 1; + _r8.i = _r8.i & 63; + _r8.i = _r8.i + 128; + _r8.i = (_r8.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r8.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 295) + _r7.i = _r7.i + -4; + _r5.i = _r5.i + 1; + XMLVM_SOURCE_POSITION("UTF_8.java", 296) + goto label91; + label277:; + XMLVM_SOURCE_POSITION("UTF_8.java", 300) + _r9.i = 3; + if (_r7.i >= _r9.i) goto label290; + XMLVM_SOURCE_POSITION("UTF_8.java", 301) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r5.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 302) + XMLVM_CHECK_NPE(14) + java_nio_Buffer_position___int(_r14.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 303) + _r0.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + goto label57; + label290:; + XMLVM_SOURCE_POSITION("UTF_8.java", 305) + _r9.i = _r0.i + 1; + _r10.i = _r8.i >> 12; + _r10.i = _r10.i & 15; + _r10.i = _r10.i + 224; + _r10.i = (_r10.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r10.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 306) + _r0.i = _r9.i + 1; + _r10.i = _r8.i >> 6; + _r10.i = _r10.i & 63; + _r10.i = _r10.i + 128; + _r10.i = (_r10.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r9.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r9.i] = _r10.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 307) + _r9.i = _r0.i + 1; + _r8.i = _r8.i & 63; + _r8.i = _r8.i + 128; + _r8.i = (_r8.i << 24) >> 24; + XMLVM_CHECK_NPE(3) + XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i); + ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r8.i; + XMLVM_SOURCE_POSITION("UTF_8.java", 308) + _r0.i = _r7.i + -3; + _r7 = _r0; + _r0 = _r9; + goto label91; + label327:; + _r5.i = _r5.i + 1; + goto label43; + label331:; + XMLVM_SOURCE_POSITION("UTF_8.java", 324) + if (_r1.i != 0) goto label341; + XMLVM_TRY_BEGIN(w6023aaab2b1d248) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 325) + _r1.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d248) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d248,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d248) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d248) + XMLVM_SOURCE_POSITION("UTF_8.java", 397) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label341:; + XMLVM_TRY_BEGIN(w6023aaab2b1d254) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 328) + //java_nio_CharBuffer_get__[19] + XMLVM_CHECK_NPE(13) + _r3.i = (*(JAVA_CHAR (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r13.o)->tib->vtable[19])(_r13.o); + _r4.i = 65535; + _r3.i = _r3.i & _r4.i; + _r4.i = 127; + if (_r3.i > _r4.i) { XMLVM_MEMCPY(curThread_w6023aaab2b1d254->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d254, sizeof(XMLVM_JMP_BUF)); goto label381; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 330) + XMLVM_SOURCE_POSITION("UTF_8.java", 332) + _r4.i = 1; + if (_r1.i >= _r4.i) { XMLVM_MEMCPY(curThread_w6023aaab2b1d254->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d254, sizeof(XMLVM_JMP_BUF)); goto label364; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 333) + _r1.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d254) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d254,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d254) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d254) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label364:; + XMLVM_SOURCE_POSITION("UTF_8.java", 335) + _r3.i = _r3.i & 255; + _r3.i = (_r3.i << 24) >> 24; + XMLVM_TRY_BEGIN(w6023aaab2b1d262) + // Begin try + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r3.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d262) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d262,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d262) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d262) + XMLVM_SOURCE_POSITION("UTF_8.java", 336) + _r1.i = _r1.i + -1; + label372:; + XMLVM_SOURCE_POSITION("UTF_8.java", 394) + _r0.i = _r0.i + 1; + label374:; + XMLVM_SOURCE_POSITION("UTF_8.java", 323) + if (_r0.i < _r2.i) goto label331; + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + goto label55; + label381:; + XMLVM_SOURCE_POSITION("UTF_8.java", 338) + _r4.i = 2047; + if (_r3.i > _r4.i) goto label417; + XMLVM_SOURCE_POSITION("UTF_8.java", 340) + _r4.i = 2; + if (_r1.i >= _r4.i) goto label396; + XMLVM_TRY_BEGIN(w6023aaab2b1d280) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 341) + _r1.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d280) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d280,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d280) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d280) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label396:; + XMLVM_SOURCE_POSITION("UTF_8.java", 343) + _r4.i = _r3.i >> 6; + _r4.i = _r4.i & 31; + _r4.i = _r4.i + 192; + _r4.i = (_r4.i << 24) >> 24; + XMLVM_TRY_BEGIN(w6023aaab2b1d290) + // Begin try + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r4.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 344) + _r3.i = _r3.i & 63; + _r3.i = _r3.i + 128; + _r3.i = (_r3.i << 24) >> 24; + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r3.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 345) + _r1.i = _r1.i + -2; + { XMLVM_MEMCPY(curThread_w6023aaab2b1d290->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d290, sizeof(XMLVM_JMP_BUF)); goto label372; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 347) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d290) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d290,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d290) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d290) + label417:; + XMLVM_TRY_BEGIN(w6023aaab2b1d292) + // Begin try + _r4.i = 55296; + if (_r3.i < _r4.i) { XMLVM_MEMCPY(curThread_w6023aaab2b1d292->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d292, sizeof(XMLVM_JMP_BUF)); goto label541; }; + _r4.i = 57343; + if (_r3.i > _r4.i) { XMLVM_MEMCPY(curThread_w6023aaab2b1d292->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d292, sizeof(XMLVM_JMP_BUF)); goto label541; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 350) + _r4.i = _r0.i + 1; + if (_r2.i > _r4.i) { XMLVM_MEMCPY(curThread_w6023aaab2b1d292->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d292, sizeof(XMLVM_JMP_BUF)); goto label439; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 351) + _r1.o = java_nio_charset_CoderResult_GET_UNDERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d292) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d292,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d292) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d292) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label439:; + XMLVM_SOURCE_POSITION("UTF_8.java", 354) + _r4.i = 4; + if (_r1.i >= _r4.i) goto label450; + XMLVM_TRY_BEGIN(w6023aaab2b1d300) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 355) + _r1.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d300) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d300,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d300) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d300) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label450:; + XMLVM_SOURCE_POSITION("UTF_8.java", 359) + _r4.i = 56320; + if (_r3.i < _r4.i) goto label466; + XMLVM_SOURCE_POSITION("UTF_8.java", 360) + _r1.i = 1; + XMLVM_TRY_BEGIN(w6023aaab2b1d310) + // Begin try + _r1.o = java_nio_charset_CoderResult_malformedForLength___int(_r1.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d310) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d310,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d310) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d310) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label466:; + XMLVM_TRY_BEGIN(w6023aaab2b1d315) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 363) + //java_nio_CharBuffer_get__[19] + XMLVM_CHECK_NPE(13) + _r4.i = (*(JAVA_CHAR (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r13.o)->tib->vtable[19])(_r13.o); + _r5.i = 65535; + _r4.i = _r4.i & _r5.i; + _r5.i = 56320; + if (_r4.i >= _r5.i) { XMLVM_MEMCPY(curThread_w6023aaab2b1d315->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d315, sizeof(XMLVM_JMP_BUF)); goto label490; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 366) + XMLVM_SOURCE_POSITION("UTF_8.java", 367) + _r1.i = 1; + _r1.o = java_nio_charset_CoderResult_malformedForLength___int(_r1.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d315) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d315,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d315) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d315) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label490:; + XMLVM_SOURCE_POSITION("UTF_8.java", 375) + _r3.i = _r3.i << 10; + _r3.i = _r3.i + _r4.i; + _r4.i = -56613888; + _r3.i = _r3.i + _r4.i; + _r4.i = _r3.i >> 18; + _r4.i = _r4.i & 7; + _r4.i = _r4.i + 240; + _r4.i = (_r4.i << 24) >> 24; + XMLVM_TRY_BEGIN(w6023aaab2b1d329) + // Begin try + XMLVM_SOURCE_POSITION("UTF_8.java", 377) + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r4.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 378) + _r4.i = _r3.i >> 12; + _r4.i = _r4.i & 63; + _r4.i = _r4.i + 128; + _r4.i = (_r4.i << 24) >> 24; + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r4.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 379) + _r4.i = _r3.i >> 6; + _r4.i = _r4.i & 63; + _r4.i = _r4.i + 128; + _r4.i = (_r4.i << 24) >> 24; + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r4.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 380) + _r3.i = _r3.i & 63; + _r3.i = _r3.i + 128; + _r3.i = (_r3.i << 24) >> 24; + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r3.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 381) + _r1.i = _r1.i + -4; + _r0.i = _r0.i + 1; + XMLVM_SOURCE_POSITION("UTF_8.java", 382) + { XMLVM_MEMCPY(curThread_w6023aaab2b1d329->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d329, sizeof(XMLVM_JMP_BUF)); goto label372; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 386) + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d329) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d329,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d329) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d329) + label541:; + XMLVM_TRY_BEGIN(w6023aaab2b1d331) + // Begin try + _r4.i = 3; + if (_r1.i >= _r4.i) { XMLVM_MEMCPY(curThread_w6023aaab2b1d331->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w6023aaab2b1d331, sizeof(XMLVM_JMP_BUF)); goto label552; }; + XMLVM_SOURCE_POSITION("UTF_8.java", 387) + _r1.o = java_nio_charset_CoderResult_GET_OVERFLOW(); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d331) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d331,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d331) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d331) + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + _r0 = _r1; + goto label57; + label552:; + XMLVM_SOURCE_POSITION("UTF_8.java", 389) + _r4.i = _r3.i >> 12; + _r4.i = _r4.i & 15; + _r4.i = _r4.i + 224; + _r4.i = (_r4.i << 24) >> 24; + XMLVM_TRY_BEGIN(w6023aaab2b1d341) + // Begin try + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r4.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 390) + _r4.i = _r3.i >> 6; + _r4.i = _r4.i & 63; + _r4.i = _r4.i + 128; + _r4.i = (_r4.i << 24) >> 24; + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r4.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 391) + _r3.i = _r3.i & 63; + _r3.i = _r3.i + 128; + _r3.i = (_r3.i << 24) >> 24; + //java_nio_ByteBuffer_put___byte[51] + XMLVM_CHECK_NPE(14) + (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r14.o)->tib->vtable[51])(_r14.o, _r3.i); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w6023aaab2b1d341) + XMLVM_CATCH_SPECIFIC(w6023aaab2b1d341,java_lang_Object,584) + XMLVM_CATCH_END(w6023aaab2b1d341) + XMLVM_RESTORE_EXCEPTION_ENV(w6023aaab2b1d341) + XMLVM_SOURCE_POSITION("UTF_8.java", 392) + _r1.i = _r1.i + -3; + goto label372; + label584:; + XMLVM_SOURCE_POSITION("UTF_8.java", 396) + java_lang_Thread* curThread_w6023aaab2b1d347 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w6023aaab2b1d347->fields.java_lang_Thread.xmlvmException_; + XMLVM_CHECK_NPE(13) + java_nio_Buffer_position___int(_r13.o, _r0.i); + XMLVM_SOURCE_POSITION("UTF_8.java", 398) + XMLVM_THROW_CUSTOM(_r1.o) + label589:; + _r11 = _r1; + _r1 = _r0; + _r0 = _r11; + goto label374; + //XMLVM_END_WRAPPER +} + +void org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Encoder(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Encoder] + XMLVM_ENTER_METHOD("org.apache.harmony.niochar.charset.UTF_8$Encoder", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.o = n1; + _r2.o = n2; + _r3.o = n3; + XMLVM_SOURCE_POSITION("UTF_8.java", 215) + XMLVM_CHECK_NPE(0) + org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset(_r0.o, _r1.o, _r2.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.h b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.h new file mode 100644 index 0000000000000..3f9724f92cb3b --- /dev/null +++ b/tests/nbody-java/org_apache_harmony_niochar_charset_UTF_8_Encoder.h @@ -0,0 +1,84 @@ +#ifndef __ORG_APACHE_HARMONY_NIOCHAR_CHARSET_UTF_8_ENCODER__ +#define __ORG_APACHE_HARMONY_NIOCHAR_CHARSET_UTF_8_ENCODER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8_Encoder 0 +// Implemented interfaces: +// Super Class: +#include "java_nio_charset_CharsetEncoder.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_ByteBuffer +#define XMLVM_FORWARD_DECL_java_nio_ByteBuffer +XMLVM_FORWARD_DECL(java_nio_ByteBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_CharBuffer +#define XMLVM_FORWARD_DECL_java_nio_CharBuffer +XMLVM_FORWARD_DECL(java_nio_CharBuffer) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_Charset +#define XMLVM_FORWARD_DECL_java_nio_charset_Charset +XMLVM_FORWARD_DECL(java_nio_charset_Charset) +#endif +#ifndef XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +#define XMLVM_FORWARD_DECL_java_nio_charset_CoderResult +XMLVM_FORWARD_DECL(java_nio_charset_CoderResult) +#endif +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8 +XMLVM_FORWARD_DECL(org_apache_harmony_niochar_charset_UTF_8) +#endif +// Class declarations for org.apache.harmony.niochar.charset.UTF_8$Encoder +XMLVM_DEFINE_CLASS(org_apache_harmony_niochar_charset_UTF_8_Encoder, 7, XMLVM_ITABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8_Encoder) + +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_1ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_2ARRAY; +extern JAVA_OBJECT __CLASS_org_apache_harmony_niochar_charset_UTF_8_Encoder_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Encoder +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Encoder \ + __INSTANCE_FIELDS_java_nio_charset_CharsetEncoder; \ + struct { \ + JAVA_OBJECT this_0_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Encoder \ + } org_apache_harmony_niochar_charset_UTF_8_Encoder + +struct org_apache_harmony_niochar_charset_UTF_8_Encoder { + __TIB_DEFINITION_org_apache_harmony_niochar_charset_UTF_8_Encoder* tib; + struct { + __INSTANCE_FIELDS_org_apache_harmony_niochar_charset_UTF_8_Encoder; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Encoder +#define XMLVM_FORWARD_DECL_org_apache_harmony_niochar_charset_UTF_8_Encoder +typedef struct org_apache_harmony_niochar_charset_UTF_8_Encoder org_apache_harmony_niochar_charset_UTF_8_Encoder; +#endif + +#define XMLVM_VTABLE_SIZE_org_apache_harmony_niochar_charset_UTF_8_Encoder 7 +#define XMLVM_VTABLE_IDX_org_apache_harmony_niochar_charset_UTF_8_Encoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer 6 + +void __INIT_org_apache_harmony_niochar_charset_UTF_8_Encoder(); +void __INIT_IMPL_org_apache_harmony_niochar_charset_UTF_8_Encoder(); +void __DELETE_org_apache_harmony_niochar_charset_UTF_8_Encoder(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_apache_harmony_niochar_charset_UTF_8_Encoder(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_apache_harmony_niochar_charset_UTF_8_Encoder(); +JAVA_OBJECT __NEW_INSTANCE_org_apache_harmony_niochar_charset_UTF_8_Encoder(); +void org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 6 +JAVA_OBJECT org_apache_harmony_niochar_charset_UTF_8_Encoder_encodeLoop___java_nio_CharBuffer_java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); +void org_apache_harmony_niochar_charset_UTF_8_Encoder___INIT____org_apache_harmony_niochar_charset_UTF_8_java_nio_charset_Charset_org_apache_harmony_niochar_charset_UTF_8_Encoder(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_Condition.c b/tests/nbody-java/org_xmlvm_runtime_Condition.c new file mode 100644 index 0000000000000..bbc35c868a084 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_Condition.c @@ -0,0 +1,193 @@ +#include "xmlvm.h" +#include "org_xmlvm_runtime_Mutex.h" + +#include "org_xmlvm_runtime_Condition.h" + +#define XMLVM_CURRENT_CLASS_NAME Condition +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_Condition + +__TIB_DEFINITION_org_xmlvm_runtime_Condition __TIB_org_xmlvm_runtime_Condition = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_Condition, // classInitializer + "org.xmlvm.runtime.Condition", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_xmlvm_runtime_Condition), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_Condition() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_Condition); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_Condition.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_Condition.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_Condition); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_Condition.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_Condition.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_Condition.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.Condition") + __INIT_IMPL_org_xmlvm_runtime_Condition(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_Condition() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_xmlvm_runtime_Condition.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_Condition; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_Condition.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + xmlvm_init_native_org_xmlvm_runtime_Condition(); + // Initialize interface information + __TIB_org_xmlvm_runtime_Condition.numImplementedInterfaces = 0; + __TIB_org_xmlvm_runtime_Condition.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_xmlvm_runtime_Condition.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_Condition.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_Condition.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_Condition.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_Condition.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_Condition.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_Condition.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_Condition.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_Condition = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_Condition); + __TIB_org_xmlvm_runtime_Condition.clazz = __CLASS_org_xmlvm_runtime_Condition; + __TIB_org_xmlvm_runtime_Condition.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_Condition_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_Condition); + __CLASS_org_xmlvm_runtime_Condition_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_Condition_1ARRAY); + __CLASS_org_xmlvm_runtime_Condition_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_Condition_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_Condition] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_Condition.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_Condition(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_Condition] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Condition(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((org_xmlvm_runtime_Condition*) me)->fields.org_xmlvm_runtime_Condition.pthreadCondT_ = (java_lang_Object*) JAVA_NULL; + ((org_xmlvm_runtime_Condition*) me)->fields.org_xmlvm_runtime_Condition.synchronizedObject_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Condition] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_Condition() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_Condition) +org_xmlvm_runtime_Condition* me = (org_xmlvm_runtime_Condition*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_Condition)); + me->tib = &__TIB_org_xmlvm_runtime_Condition; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Condition(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_Condition] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_Condition() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void org_xmlvm_runtime_Condition___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_Condition___INIT____java_lang_Object] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.Condition", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Condition.java", 40) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Condition.java", 41) + XMLVM_CHECK_NPE(0) + ((org_xmlvm_runtime_Condition*) _r0.o)->fields.org_xmlvm_runtime_Condition.synchronizedObject_ = _r1.o; + XMLVM_SOURCE_POSITION("Condition.java", 42) + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Condition_initNativeConditionInstance__(_r0.o); + XMLVM_SOURCE_POSITION("Condition.java", 43) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_xmlvm_runtime_Condition_initNativeConditionInstance__(JAVA_OBJECT me)] + +JAVA_OBJECT org_xmlvm_runtime_Condition_getSynchronizedObject__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_Condition_getSynchronizedObject__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.Condition", "getSynchronizedObject", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = me; + XMLVM_SOURCE_POSITION("Condition.java", 52) + XMLVM_CHECK_NPE(1) + _r0.o = ((org_xmlvm_runtime_Condition*) _r1.o)->fields.org_xmlvm_runtime_Condition.synchronizedObject_; + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex(JAVA_OBJECT me, JAVA_OBJECT n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2)] + +//XMLVM_NATIVE[void org_xmlvm_runtime_Condition_signal__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void org_xmlvm_runtime_Condition_broadcast__(JAVA_OBJECT me)] + diff --git a/tests/nbody-java/org_xmlvm_runtime_Condition.h b/tests/nbody-java/org_xmlvm_runtime_Condition.h new file mode 100644 index 0000000000000..277f27c9e1754 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_Condition.h @@ -0,0 +1,64 @@ +#ifndef __ORG_XMLVM_RUNTIME_CONDITION__ +#define __ORG_XMLVM_RUNTIME_CONDITION__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_Condition 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Mutex) +#endif +// Class declarations for org.xmlvm.runtime.Condition +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_Condition, 6, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_Condition) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Condition_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_Condition +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_Condition \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT pthreadCondT_; \ + JAVA_OBJECT synchronizedObject_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_Condition \ + } org_xmlvm_runtime_Condition + +struct org_xmlvm_runtime_Condition { + __TIB_DEFINITION_org_xmlvm_runtime_Condition* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_Condition; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +typedef struct org_xmlvm_runtime_Condition org_xmlvm_runtime_Condition; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_Condition 6 + +void __INIT_org_xmlvm_runtime_Condition(); +void __INIT_IMPL_org_xmlvm_runtime_Condition(); +void __DELETE_org_xmlvm_runtime_Condition(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Condition(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_Condition(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_Condition(); +void xmlvm_init_native_org_xmlvm_runtime_Condition(); +void org_xmlvm_runtime_Condition___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); +void org_xmlvm_runtime_Condition_initNativeConditionInstance__(JAVA_OBJECT me); +JAVA_OBJECT org_xmlvm_runtime_Condition_getSynchronizedObject__(JAVA_OBJECT me); +void org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex(JAVA_OBJECT me, JAVA_OBJECT n1); +JAVA_BOOLEAN org_xmlvm_runtime_Condition_waitOrTimeout___org_xmlvm_runtime_Mutex_long(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_LONG n2); +void org_xmlvm_runtime_Condition_signal__(JAVA_OBJECT me); +void org_xmlvm_runtime_Condition_broadcast__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.c b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.c new file mode 100644 index 0000000000000..affe17f5add61 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.c @@ -0,0 +1,506 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_String.h" +#include "java_lang_Thread.h" +#include "org_xmlvm_runtime_Condition.h" +#include "org_xmlvm_runtime_FinalizerNotifier_1.h" +#include "org_xmlvm_runtime_Mutex.h" + +#include "org_xmlvm_runtime_FinalizerNotifier.h" + +#define XMLVM_CURRENT_CLASS_NAME FinalizerNotifier +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_FinalizerNotifier + +__TIB_DEFINITION_org_xmlvm_runtime_FinalizerNotifier __TIB_org_xmlvm_runtime_FinalizerNotifier = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_FinalizerNotifier, // classInitializer + "org.xmlvm.runtime.FinalizerNotifier", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_xmlvm_runtime_FinalizerNotifier), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerMutex; +static JAVA_OBJECT _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerCondition; +static JAVA_OBJECT _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThread; +static JAVA_BOOLEAN _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThreadInvokingFinalizers; +static JAVA_BOOLEAN _STATIC_org_xmlvm_runtime_FinalizerNotifier_gcEnabled; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_FinalizerNotifier() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_FinalizerNotifier); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_FinalizerNotifier.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_FinalizerNotifier.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_FinalizerNotifier); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_FinalizerNotifier.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_FinalizerNotifier.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_FinalizerNotifier.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.FinalizerNotifier") + __INIT_IMPL_org_xmlvm_runtime_FinalizerNotifier(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_FinalizerNotifier() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_xmlvm_runtime_FinalizerNotifier.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_FinalizerNotifier; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_FinalizerNotifier.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_org_xmlvm_runtime_FinalizerNotifier.numImplementedInterfaces = 0; + __TIB_org_xmlvm_runtime_FinalizerNotifier.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerMutex = (org_xmlvm_runtime_Mutex*) JAVA_NULL; + _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerCondition = (org_xmlvm_runtime_Condition*) JAVA_NULL; + _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThread = (java_lang_Thread*) JAVA_NULL; + _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThreadInvokingFinalizers = 0; + _STATIC_org_xmlvm_runtime_FinalizerNotifier_gcEnabled = 0; + + __TIB_org_xmlvm_runtime_FinalizerNotifier.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_FinalizerNotifier.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_FinalizerNotifier.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_FinalizerNotifier.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_FinalizerNotifier.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_FinalizerNotifier.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_FinalizerNotifier.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_FinalizerNotifier.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_FinalizerNotifier = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_FinalizerNotifier); + __TIB_org_xmlvm_runtime_FinalizerNotifier.clazz = __CLASS_org_xmlvm_runtime_FinalizerNotifier; + __TIB_org_xmlvm_runtime_FinalizerNotifier.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_FinalizerNotifier_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_FinalizerNotifier); + __CLASS_org_xmlvm_runtime_FinalizerNotifier_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_FinalizerNotifier_1ARRAY); + __CLASS_org_xmlvm_runtime_FinalizerNotifier_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_FinalizerNotifier_2ARRAY); + org_xmlvm_runtime_FinalizerNotifier___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_FinalizerNotifier] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_FinalizerNotifier.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_FinalizerNotifier(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_FinalizerNotifier] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_FinalizerNotifier() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) +org_xmlvm_runtime_FinalizerNotifier* me = (org_xmlvm_runtime_FinalizerNotifier*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_FinalizerNotifier)); + me->tib = &__TIB_org_xmlvm_runtime_FinalizerNotifier; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_FinalizerNotifier] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_FinalizerNotifier() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_xmlvm_runtime_FinalizerNotifier(); + org_xmlvm_runtime_FinalizerNotifier___INIT___(me); + return me; +} + +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_GET_finalizerMutex() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + return _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerMutex; +} + +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerMutex(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) +_STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerMutex = v; +} + +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_GET_finalizerCondition() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + return _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerCondition; +} + +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerCondition(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) +_STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerCondition = v; +} + +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + return _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThread; +} + +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerThread(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) +_STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThread = v; +} + +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThreadInvokingFinalizers() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + return _STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThreadInvokingFinalizers; +} + +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerThreadInvokingFinalizers(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) +_STATIC_org_xmlvm_runtime_FinalizerNotifier_finalizerThreadInvokingFinalizers = v; +} + +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_GET_gcEnabled() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + return _STATIC_org_xmlvm_runtime_FinalizerNotifier_gcEnabled; +} + +void org_xmlvm_runtime_FinalizerNotifier_PUT_gcEnabled(JAVA_BOOLEAN v) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) +_STATIC_org_xmlvm_runtime_FinalizerNotifier_gcEnabled = v; +} + +void org_xmlvm_runtime_FinalizerNotifier___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier___INIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 10) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_startFinalizerThread__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_startFinalizerThread__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "startFinalizerThread", "?") + volatile XMLVMElem _r0; + volatile XMLVMElem _r1; + volatile XMLVMElem _r2; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 32) + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + _r0.o = __CLASS_org_xmlvm_runtime_FinalizerNotifier; + java_lang_Object_acquireLockRecursive__(_r0.o); + XMLVM_TRY_BEGIN(w1899aaab6b1b4) + // Begin try + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 33) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread(); + if (_r1.o != JAVA_NULL) { XMLVM_MEMCPY(curThread_w1899aaab6b1b4->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w1899aaab6b1b4, sizeof(XMLVM_JMP_BUF)); goto label32; }; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 34) + _r1.o = __NEW_org_xmlvm_runtime_FinalizerNotifier_1(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_FinalizerNotifier_1___INIT___(_r1.o); + org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerThread( _r1.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 79) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread(); + // "Finalizer-thread" + _r2.o = xmlvm_create_java_string_from_pool(101); + XMLVM_CHECK_NPE(1) + java_lang_Thread_setName___java_lang_String(_r1.o, _r2.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 83) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread(); + _r2.i = 1; + XMLVM_CHECK_NPE(1) + java_lang_Thread_setDaemon___boolean(_r1.o, _r2.i); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 85) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread(); + XMLVM_CHECK_NPE(1) + java_lang_Thread_start__(_r1.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1899aaab6b1b4) + XMLVM_CATCH_SPECIFIC(w1899aaab6b1b4,java_lang_Object,36) + XMLVM_CATCH_END(w1899aaab6b1b4) + XMLVM_RESTORE_EXCEPTION_ENV(w1899aaab6b1b4) + label32:; + XMLVM_TRY_BEGIN(w1899aaab6b1b6) + // Begin try + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 87) + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1899aaab6b1b6) + XMLVM_CATCH_SPECIFIC(w1899aaab6b1b6,java_lang_Object,36) + XMLVM_CATCH_END(w1899aaab6b1b6) + XMLVM_RESTORE_EXCEPTION_ENV(w1899aaab6b1b6) + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 89) + _r0.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread(); + XMLVM_EXIT_METHOD() + return _r0.o; + label36:; + java_lang_Thread* curThread_w1899aaab6b1c11 = (java_lang_Thread*)java_lang_Thread_currentThread__(); + _r1.o = curThread_w1899aaab6b1c11->fields.java_lang_Thread.xmlvmException_; + XMLVM_TRY_BEGIN(w1899aaab6b1c12) + // Begin try + java_lang_Object_releaseLockRecursive__(_r0.o); + // End try + XMLVM_TRY_END + XMLVM_CATCH_BEGIN(w1899aaab6b1c12) + XMLVM_CATCH_SPECIFIC(w1899aaab6b1c12,java_lang_Object,36) + XMLVM_CATCH_END(w1899aaab6b1c12) + XMLVM_RESTORE_EXCEPTION_ENV(w1899aaab6b1c12) + XMLVM_THROW_CUSTOM(_r1.o) + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_FinalizerNotifier_setGCActive___boolean(JAVA_BOOLEAN n1) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_setGCActive___boolean] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "setGCActive", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.i = n1; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 103) + _r0.i = org_xmlvm_runtime_FinalizerNotifier_GET_gcEnabled(); + if (_r0.i == _r1.i) goto label12; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 106) + if (_r1.i != 0) goto label13; + _r0.i = 1; + label7:; + org_xmlvm_runtime_FinalizerNotifier_preventGarbageCollection___boolean(_r0.i); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 107) + org_xmlvm_runtime_FinalizerNotifier_PUT_gcEnabled( _r1.i); + label12:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 109) + XMLVM_EXIT_METHOD() + return; + label13:; + _r0.i = 0; + goto label7; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_invokeAllFinalizers__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_invokeAllFinalizers__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "invokeAllFinalizers", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 117) + _r0.i = 0; + _r1.i = 1; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 118) + org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerThreadInvokingFinalizers( _r1.i); + label4:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 119) + _r0.i = java_lang_Thread_interrupted__(); + if (_r0.i != 0) goto label20; + _r1.i = org_xmlvm_runtime_FinalizerNotifier_shouldInvokeFinalizers__(); + if (_r1.i == 0) goto label20; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 120) + org_xmlvm_runtime_FinalizerNotifier_invokeFinalizers__(); + goto label4; + label20:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 122) + _r1.i = 0; + org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerThreadInvokingFinalizers( _r1.i); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 128) + org_xmlvm_runtime_Mutex_destroyFinalizableNativeMutexes__(); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 130) + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_xmlvm_runtime_FinalizerNotifier_preventGarbageCollection___boolean(JAVA_BOOLEAN n1)] + +//XMLVM_NATIVE[JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_currentThreadIsFinalizerThread___java_lang_Thread(JAVA_OBJECT n1)] + +void org_xmlvm_runtime_FinalizerNotifier_finalizerNotifier__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_finalizerNotifier__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "finalizerNotifier", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 163) + _r0.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread(); + _r0.i = org_xmlvm_runtime_FinalizerNotifier_currentThreadIsFinalizerThread___java_lang_Thread(_r0.o); + if (_r0.i == 0) goto label16; + _r0.i = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThreadInvokingFinalizers(); + if (_r0.i != 0) goto label16; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 168) + org_xmlvm_runtime_FinalizerNotifier_invokeAllFinalizers__(); + label15:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 184) + XMLVM_EXIT_METHOD() + return; + label16:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 175) + _r0.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_lock__(_r0.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 178) + _r0.i = 0; + org_xmlvm_runtime_FinalizerNotifier_setGCActive___boolean(_r0.i); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 180) + _r0.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerCondition(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Condition_broadcast__(_r0.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 182) + _r0.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerMutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_unlock__(_r0.o); + goto label15; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_shouldInvokeFinalizers__()] + +//XMLVM_NATIVE[JAVA_INT org_xmlvm_runtime_FinalizerNotifier_invokeFinalizers__()] + +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_access$000__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_access$000__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "access$000", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 10) + _r0.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerMutex(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_access$100__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_access$100__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "access$100", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 10) + _r0.i = org_xmlvm_runtime_FinalizerNotifier_shouldInvokeFinalizers__(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_FinalizerNotifier_access$200___boolean(JAVA_BOOLEAN n1) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_access$200___boolean] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "access$200", "?") + XMLVMElem _r0; + _r0.i = n1; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 10) + org_xmlvm_runtime_FinalizerNotifier_setGCActive___boolean(_r0.i); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_access$300__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_access$300__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "access$300", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 10) + _r0.o = org_xmlvm_runtime_FinalizerNotifier_GET_finalizerCondition(); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_access$400__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_access$400__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "access$400", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 10) + _r0.i = org_xmlvm_runtime_FinalizerNotifier_invokeAllFinalizers__(); + XMLVM_EXIT_METHOD() + return _r0.i; + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_FinalizerNotifier___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier___CLINIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 11) + _r0.o = __NEW_org_xmlvm_runtime_Mutex(); + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex___INIT___(_r0.o); + org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerMutex( _r0.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 12) + _r0.o = __NEW_org_xmlvm_runtime_Condition(); + _r1.o = JAVA_NULL; + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Condition___INIT____java_lang_Object(_r0.o, _r1.o); + org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerCondition( _r0.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 19) + _r0.i = 1; + org_xmlvm_runtime_FinalizerNotifier_PUT_gcEnabled( _r0.i); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.h b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.h new file mode 100644 index 0000000000000..e12aee47f7b01 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier.h @@ -0,0 +1,99 @@ +#ifndef __ORG_XMLVM_RUNTIME_FINALIZERNOTIFIER__ +#define __ORG_XMLVM_RUNTIME_FINALIZERNOTIFIER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_FinalizerNotifier 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Thread +#define XMLVM_FORWARD_DECL_java_lang_Thread +XMLVM_FORWARD_DECL(java_lang_Thread) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Condition) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier_1 +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier_1 +XMLVM_FORWARD_DECL(org_xmlvm_runtime_FinalizerNotifier_1) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Mutex) +#endif +// Class declarations for org.xmlvm.runtime.FinalizerNotifier +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_FinalizerNotifier, 6, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_FinalizerNotifier) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier \ + } org_xmlvm_runtime_FinalizerNotifier + +struct org_xmlvm_runtime_FinalizerNotifier { + __TIB_DEFINITION_org_xmlvm_runtime_FinalizerNotifier* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier +typedef struct org_xmlvm_runtime_FinalizerNotifier org_xmlvm_runtime_FinalizerNotifier; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_FinalizerNotifier 6 + +void __INIT_org_xmlvm_runtime_FinalizerNotifier(); +void __INIT_IMPL_org_xmlvm_runtime_FinalizerNotifier(); +void __DELETE_org_xmlvm_runtime_FinalizerNotifier(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_FinalizerNotifier(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_FinalizerNotifier(); +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_GET_finalizerMutex(); +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerMutex(JAVA_OBJECT v); +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_GET_finalizerCondition(); +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerCondition(JAVA_OBJECT v); +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThread(); +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerThread(JAVA_OBJECT v); +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_GET_finalizerThreadInvokingFinalizers(); +void org_xmlvm_runtime_FinalizerNotifier_PUT_finalizerThreadInvokingFinalizers(JAVA_BOOLEAN v); +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_GET_gcEnabled(); +void org_xmlvm_runtime_FinalizerNotifier_PUT_gcEnabled(JAVA_BOOLEAN v); +void org_xmlvm_runtime_FinalizerNotifier___INIT___(JAVA_OBJECT me); +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_startFinalizerThread__(); +void org_xmlvm_runtime_FinalizerNotifier_setGCActive___boolean(JAVA_BOOLEAN n1); +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_invokeAllFinalizers__(); +void org_xmlvm_runtime_FinalizerNotifier_preventGarbageCollection___boolean(JAVA_BOOLEAN n1); +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_currentThreadIsFinalizerThread___java_lang_Thread(JAVA_OBJECT n1); +void org_xmlvm_runtime_FinalizerNotifier_finalizerNotifier__(); +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_shouldInvokeFinalizers__(); +JAVA_INT org_xmlvm_runtime_FinalizerNotifier_invokeFinalizers__(); +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_access$000__(); +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_access$100__(); +void org_xmlvm_runtime_FinalizerNotifier_access$200___boolean(JAVA_BOOLEAN n1); +JAVA_OBJECT org_xmlvm_runtime_FinalizerNotifier_access$300__(); +JAVA_BOOLEAN org_xmlvm_runtime_FinalizerNotifier_access$400__(); +void org_xmlvm_runtime_FinalizerNotifier___CLINIT_(); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.c b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.c new file mode 100644 index 0000000000000..c3f32b8fc47d9 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.c @@ -0,0 +1,227 @@ +#include "xmlvm.h" +#include "java_lang_System.h" +#include "org_xmlvm_runtime_Condition.h" +#include "org_xmlvm_runtime_FinalizerNotifier.h" +#include "org_xmlvm_runtime_Mutex.h" + +#include "org_xmlvm_runtime_FinalizerNotifier_1.h" + +#define XMLVM_CURRENT_CLASS_NAME FinalizerNotifier_1 +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_FinalizerNotifier_1 + +__TIB_DEFINITION_org_xmlvm_runtime_FinalizerNotifier_1 __TIB_org_xmlvm_runtime_FinalizerNotifier_1 = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_FinalizerNotifier_1, // classInitializer + "org.xmlvm.runtime.FinalizerNotifier$1", // className + "org.xmlvm.runtime", // package + "org.xmlvm.runtime.FinalizerNotifier", // enclosingClassName + "startFinalizerThread:()Ljava/lang/Thread;", // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Thread, // extends + sizeof(org_xmlvm_runtime_FinalizerNotifier_1), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_FinalizerNotifier_1() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_FinalizerNotifier_1); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_FinalizerNotifier_1.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_FinalizerNotifier_1); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_FinalizerNotifier_1.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_FinalizerNotifier_1.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.FinalizerNotifier$1") + __INIT_IMPL_org_xmlvm_runtime_FinalizerNotifier_1(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_FinalizerNotifier_1() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Thread) + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_FinalizerNotifier_1; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_FinalizerNotifier_1.vtable, __TIB_java_lang_Thread.vtable, sizeof(__TIB_java_lang_Thread.vtable)); + // Initialize vtable for this class + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.vtable[6] = (VTABLE_PTR) &org_xmlvm_runtime_FinalizerNotifier_1_run__; + // Initialize interface information + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.numImplementedInterfaces = 1; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_lang_Runnable) + + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.implementedInterfaces[0][0] = &__TIB_java_lang_Runnable; + // Initialize itable for this class + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.itableBegin = &__TIB_org_xmlvm_runtime_FinalizerNotifier_1.itable[0]; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.itable[XMLVM_ITABLE_IDX_java_lang_Runnable_run__] = __TIB_org_xmlvm_runtime_FinalizerNotifier_1.vtable[6]; + + + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_FinalizerNotifier_1 = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_FinalizerNotifier_1); + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.clazz = __CLASS_org_xmlvm_runtime_FinalizerNotifier_1; + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_FinalizerNotifier_1); + __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_FinalizerNotifier_1_1ARRAY); + __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_FinalizerNotifier_1_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_FinalizerNotifier_1] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_FinalizerNotifier_1.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_FinalizerNotifier_1(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_FinalizerNotifier_1] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Thread(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier_1] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_FinalizerNotifier_1() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_FinalizerNotifier_1) +org_xmlvm_runtime_FinalizerNotifier_1* me = (org_xmlvm_runtime_FinalizerNotifier_1*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_FinalizerNotifier_1)); + me->tib = &__TIB_org_xmlvm_runtime_FinalizerNotifier_1; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier_1(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_FinalizerNotifier_1] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_FinalizerNotifier_1() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_xmlvm_runtime_FinalizerNotifier_1(); + org_xmlvm_runtime_FinalizerNotifier_1___INIT___(me); + return me; +} + +void org_xmlvm_runtime_FinalizerNotifier_1___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_1___INIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier$1", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 34) + XMLVM_CHECK_NPE(0) + java_lang_Thread___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_FinalizerNotifier_1_run__(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_FinalizerNotifier_1_run__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.FinalizerNotifier$1", "run", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + XMLVMElem _r4; + _r4.o = me; + _r3.i = 1; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 37) + _r0.i = 0; + label2:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 38) + if (_r0.i != 0) goto label63; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 41) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_access$000__(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_Mutex_lock__(_r1.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 50) + _r1.i = org_xmlvm_runtime_FinalizerNotifier_access$100__(); + if (_r1.i != 0) goto label31; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 54) + org_xmlvm_runtime_FinalizerNotifier_access$200___boolean(_r3.i); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 59) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_access$300__(); + _r2.o = org_xmlvm_runtime_FinalizerNotifier_access$000__(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_Condition_wait___org_xmlvm_runtime_Mutex(_r1.o, _r2.o); + label31:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 62) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_access$000__(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_Mutex_unlock__(_r1.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 64) + _r0.i = org_xmlvm_runtime_FinalizerNotifier_access$400__(); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 67) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_access$000__(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_Mutex_lock__(_r1.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 68) + org_xmlvm_runtime_FinalizerNotifier_access$200___boolean(_r3.i); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 69) + _r1.o = org_xmlvm_runtime_FinalizerNotifier_access$000__(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_Mutex_unlock__(_r1.o); + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 73) + java_lang_System_gc__(); + goto label2; + label63:; + XMLVM_SOURCE_POSITION("FinalizerNotifier.java", 77) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.h b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.h new file mode 100644 index 0000000000000..0ea4f4dda52b6 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_FinalizerNotifier_1.h @@ -0,0 +1,70 @@ +#ifndef __ORG_XMLVM_RUNTIME_FINALIZERNOTIFIER_1__ +#define __ORG_XMLVM_RUNTIME_FINALIZERNOTIFIER_1__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_FinalizerNotifier_1 1 +// Implemented interfaces: +// Super Class: +#include "java_lang_Thread.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Condition +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Condition) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier +XMLVM_FORWARD_DECL(org_xmlvm_runtime_FinalizerNotifier) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +XMLVM_FORWARD_DECL(org_xmlvm_runtime_Mutex) +#endif +// Class declarations for org.xmlvm.runtime.FinalizerNotifier$1 +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_FinalizerNotifier_1, 7, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_FinalizerNotifier_1) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_FinalizerNotifier_1_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier_1 +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier_1 \ + __INSTANCE_FIELDS_java_lang_Thread; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier_1 \ + } org_xmlvm_runtime_FinalizerNotifier_1 + +struct org_xmlvm_runtime_FinalizerNotifier_1 { + __TIB_DEFINITION_org_xmlvm_runtime_FinalizerNotifier_1* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_FinalizerNotifier_1; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier_1 +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_FinalizerNotifier_1 +typedef struct org_xmlvm_runtime_FinalizerNotifier_1 org_xmlvm_runtime_FinalizerNotifier_1; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_FinalizerNotifier_1 7 +#define XMLVM_VTABLE_IDX_org_xmlvm_runtime_FinalizerNotifier_1_run__ 6 + +void __INIT_org_xmlvm_runtime_FinalizerNotifier_1(); +void __INIT_IMPL_org_xmlvm_runtime_FinalizerNotifier_1(); +void __DELETE_org_xmlvm_runtime_FinalizerNotifier_1(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_FinalizerNotifier_1(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_FinalizerNotifier_1(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_FinalizerNotifier_1(); +void org_xmlvm_runtime_FinalizerNotifier_1___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +void org_xmlvm_runtime_FinalizerNotifier_1_run__(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_Mutex.c b/tests/nbody-java/org_xmlvm_runtime_Mutex.c new file mode 100644 index 0000000000000..cd0d85d96df9c --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_Mutex.c @@ -0,0 +1,246 @@ +#include "xmlvm.h" +#include "java_util_LinkedList.h" +#include "java_util_Queue.h" + +#include "org_xmlvm_runtime_Mutex.h" + +#define XMLVM_CURRENT_CLASS_NAME Mutex +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_Mutex + +__TIB_DEFINITION_org_xmlvm_runtime_Mutex __TIB_org_xmlvm_runtime_Mutex = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_Mutex, // classInitializer + "org.xmlvm.runtime.Mutex", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_xmlvm_runtime_Mutex), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_OBJECT _STATIC_org_xmlvm_runtime_Mutex_finalizableNativeMutexList; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_Mutex() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_Mutex); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_Mutex.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_Mutex.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_Mutex); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_Mutex.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_Mutex.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_Mutex.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.Mutex") + __INIT_IMPL_org_xmlvm_runtime_Mutex(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_Mutex() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_xmlvm_runtime_Mutex.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_Mutex; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_Mutex.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + xmlvm_init_native_org_xmlvm_runtime_Mutex(); + // Initialize interface information + __TIB_org_xmlvm_runtime_Mutex.numImplementedInterfaces = 0; + __TIB_org_xmlvm_runtime_Mutex.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + _STATIC_org_xmlvm_runtime_Mutex_finalizableNativeMutexList = (java_util_Queue*) JAVA_NULL; + + __TIB_org_xmlvm_runtime_Mutex.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_Mutex.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_Mutex.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_Mutex.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_Mutex.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_Mutex.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_Mutex.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_Mutex.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_Mutex = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_Mutex); + __TIB_org_xmlvm_runtime_Mutex.clazz = __CLASS_org_xmlvm_runtime_Mutex; + __TIB_org_xmlvm_runtime_Mutex.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_Mutex_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_Mutex); + __CLASS_org_xmlvm_runtime_Mutex_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_Mutex_1ARRAY); + __CLASS_org_xmlvm_runtime_Mutex_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_Mutex_2ARRAY); + org_xmlvm_runtime_Mutex___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_Mutex] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_Mutex.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_Mutex(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_Mutex] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Mutex(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((org_xmlvm_runtime_Mutex*) me)->fields.org_xmlvm_runtime_Mutex.nativeMutex_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Mutex] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_Mutex() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_Mutex) +org_xmlvm_runtime_Mutex* me = (org_xmlvm_runtime_Mutex*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_Mutex)); + me->tib = &__TIB_org_xmlvm_runtime_Mutex; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Mutex(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_Mutex] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_Mutex() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_xmlvm_runtime_Mutex(); + org_xmlvm_runtime_Mutex___INIT___(me); + return me; +} + +JAVA_OBJECT org_xmlvm_runtime_Mutex_GET_finalizableNativeMutexList() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_Mutex) + return _STATIC_org_xmlvm_runtime_Mutex_finalizableNativeMutexList; +} + +void org_xmlvm_runtime_Mutex_PUT_finalizableNativeMutexList(JAVA_OBJECT v) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_Mutex) +_STATIC_org_xmlvm_runtime_Mutex_finalizableNativeMutexList = v; +} + +void org_xmlvm_runtime_Mutex_addNativeMutexToFinalizerQueue___java_lang_Object(JAVA_OBJECT n1) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_Mutex) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_Mutex_addNativeMutexToFinalizerQueue___java_lang_Object] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.Mutex", "addNativeMutexToFinalizerQueue", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r1.o = n1; + XMLVM_SOURCE_POSITION("Mutex.java", 63) + _r0.o = org_xmlvm_runtime_Mutex_GET_finalizableNativeMutexList(); + XMLVM_CHECK_NPE(0) + (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Queue_add___java_lang_Object])(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("Mutex.java", 64) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_Mutex_destroyFinalizableNativeMutexes__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_Mutex) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_Mutex_destroyFinalizableNativeMutexes__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.Mutex", "destroyFinalizableNativeMutexes", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("Mutex.java", 74) + _r0.o = JAVA_NULL; + label1:; + XMLVM_SOURCE_POSITION("Mutex.java", 75) + _r1.o = org_xmlvm_runtime_Mutex_GET_finalizableNativeMutexList(); + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Queue_poll__])(_r1.o); + if (_r0.o == JAVA_NULL) goto label13; + XMLVM_SOURCE_POSITION("Mutex.java", 76) + org_xmlvm_runtime_Mutex_destroyNativeMutex___java_lang_Object(_r0.o); + goto label1; + label13:; + XMLVM_SOURCE_POSITION("Mutex.java", 78) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_xmlvm_runtime_Mutex_destroyNativeMutex___java_lang_Object(JAVA_OBJECT n1)] + +void org_xmlvm_runtime_Mutex___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_Mutex___INIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.Mutex", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("Mutex.java", 92) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("Mutex.java", 93) + XMLVM_CHECK_NPE(0) + org_xmlvm_runtime_Mutex_initNativeInstance__(_r0.o); + XMLVM_SOURCE_POSITION("Mutex.java", 94) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_xmlvm_runtime_Mutex_initNativeInstance__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void org_xmlvm_runtime_Mutex_lock__(JAVA_OBJECT me)] + +//XMLVM_NATIVE[void org_xmlvm_runtime_Mutex_unlock__(JAVA_OBJECT me)] + +void org_xmlvm_runtime_Mutex___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_Mutex___CLINIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.Mutex", "", "?") + XMLVMElem _r0; + XMLVM_SOURCE_POSITION("Mutex.java", 48) + _r0.o = __NEW_java_util_LinkedList(); + XMLVM_CHECK_NPE(0) + java_util_LinkedList___INIT___(_r0.o); + org_xmlvm_runtime_Mutex_PUT_finalizableNativeMutexList( _r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_xmlvm_runtime_Mutex.h b/tests/nbody-java/org_xmlvm_runtime_Mutex.h new file mode 100644 index 0000000000000..368a1c17bda55 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_Mutex.h @@ -0,0 +1,70 @@ +#ifndef __ORG_XMLVM_RUNTIME_MUTEX__ +#define __ORG_XMLVM_RUNTIME_MUTEX__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_Mutex 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_util_LinkedList +#define XMLVM_FORWARD_DECL_java_util_LinkedList +XMLVM_FORWARD_DECL(java_util_LinkedList) +#endif +#ifndef XMLVM_FORWARD_DECL_java_util_Queue +#define XMLVM_FORWARD_DECL_java_util_Queue +XMLVM_FORWARD_DECL(java_util_Queue) +#endif +// Class declarations for org.xmlvm.runtime.Mutex +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_Mutex, 6, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_Mutex) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_Mutex_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_Mutex +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_Mutex \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT nativeMutex_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_Mutex \ + } org_xmlvm_runtime_Mutex + +struct org_xmlvm_runtime_Mutex { + __TIB_DEFINITION_org_xmlvm_runtime_Mutex* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_Mutex; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_Mutex +typedef struct org_xmlvm_runtime_Mutex org_xmlvm_runtime_Mutex; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_Mutex 6 + +void __INIT_org_xmlvm_runtime_Mutex(); +void __INIT_IMPL_org_xmlvm_runtime_Mutex(); +void __DELETE_org_xmlvm_runtime_Mutex(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_Mutex(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_Mutex(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_Mutex(); +void xmlvm_init_native_org_xmlvm_runtime_Mutex(); +JAVA_OBJECT org_xmlvm_runtime_Mutex_GET_finalizableNativeMutexList(); +void org_xmlvm_runtime_Mutex_PUT_finalizableNativeMutexList(JAVA_OBJECT v); +void org_xmlvm_runtime_Mutex_addNativeMutexToFinalizerQueue___java_lang_Object(JAVA_OBJECT n1); +void org_xmlvm_runtime_Mutex_destroyFinalizableNativeMutexes__(); +void org_xmlvm_runtime_Mutex_destroyNativeMutex___java_lang_Object(JAVA_OBJECT n1); +void org_xmlvm_runtime_Mutex___INIT___(JAVA_OBJECT me); +void org_xmlvm_runtime_Mutex_initNativeInstance__(JAVA_OBJECT me); +void org_xmlvm_runtime_Mutex_lock__(JAVA_OBJECT me); +void org_xmlvm_runtime_Mutex_unlock__(JAVA_OBJECT me); +void org_xmlvm_runtime_Mutex___CLINIT_(); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.c b/tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.c new file mode 100644 index 0000000000000..e351f83bef539 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.c @@ -0,0 +1,156 @@ +#include "xmlvm.h" + +#include "org_xmlvm_runtime_RedTypeMarker.h" + +#define XMLVM_CURRENT_CLASS_NAME RedTypeMarker +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_RedTypeMarker + +__TIB_DEFINITION_org_xmlvm_runtime_RedTypeMarker __TIB_org_xmlvm_runtime_RedTypeMarker = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_RedTypeMarker, // classInitializer + "org.xmlvm.runtime.RedTypeMarker", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_xmlvm_runtime_RedTypeMarker), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_RedTypeMarker() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_RedTypeMarker); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_RedTypeMarker.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_RedTypeMarker.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_RedTypeMarker); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_RedTypeMarker.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_RedTypeMarker.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_RedTypeMarker.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.RedTypeMarker") + __INIT_IMPL_org_xmlvm_runtime_RedTypeMarker(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_RedTypeMarker() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_xmlvm_runtime_RedTypeMarker.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_RedTypeMarker; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_RedTypeMarker.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_org_xmlvm_runtime_RedTypeMarker.numImplementedInterfaces = 0; + __TIB_org_xmlvm_runtime_RedTypeMarker.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_xmlvm_runtime_RedTypeMarker.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_RedTypeMarker.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_RedTypeMarker.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_RedTypeMarker.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_RedTypeMarker.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_RedTypeMarker.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_RedTypeMarker.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_RedTypeMarker.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_RedTypeMarker = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_RedTypeMarker); + __TIB_org_xmlvm_runtime_RedTypeMarker.clazz = __CLASS_org_xmlvm_runtime_RedTypeMarker; + __TIB_org_xmlvm_runtime_RedTypeMarker.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_RedTypeMarker_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_RedTypeMarker); + __CLASS_org_xmlvm_runtime_RedTypeMarker_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_RedTypeMarker_1ARRAY); + __CLASS_org_xmlvm_runtime_RedTypeMarker_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_RedTypeMarker_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_RedTypeMarker] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_RedTypeMarker.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_RedTypeMarker(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_RedTypeMarker] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_RedTypeMarker(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_RedTypeMarker] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_RedTypeMarker() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_RedTypeMarker) +org_xmlvm_runtime_RedTypeMarker* me = (org_xmlvm_runtime_RedTypeMarker*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_RedTypeMarker)); + me->tib = &__TIB_org_xmlvm_runtime_RedTypeMarker; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_RedTypeMarker(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_RedTypeMarker] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_RedTypeMarker() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +void org_xmlvm_runtime_RedTypeMarker___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_RedTypeMarker___INIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.RedTypeMarker", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("RedTypeMarker.java", 28) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("RedTypeMarker.java", 29) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.h b/tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.h new file mode 100644 index 0000000000000..16804f15ba033 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_RedTypeMarker.h @@ -0,0 +1,51 @@ +#ifndef __ORG_XMLVM_RUNTIME_REDTYPEMARKER__ +#define __ORG_XMLVM_RUNTIME_REDTYPEMARKER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_RedTypeMarker 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +// Class declarations for org.xmlvm.runtime.RedTypeMarker +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_RedTypeMarker, 6, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_RedTypeMarker) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_RedTypeMarker_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_RedTypeMarker +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_RedTypeMarker \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_RedTypeMarker \ + } org_xmlvm_runtime_RedTypeMarker + +struct org_xmlvm_runtime_RedTypeMarker { + __TIB_DEFINITION_org_xmlvm_runtime_RedTypeMarker* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_RedTypeMarker; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_RedTypeMarker +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_RedTypeMarker +typedef struct org_xmlvm_runtime_RedTypeMarker org_xmlvm_runtime_RedTypeMarker; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_RedTypeMarker 6 + +void __INIT_org_xmlvm_runtime_RedTypeMarker(); +void __INIT_IMPL_org_xmlvm_runtime_RedTypeMarker(); +void __DELETE_org_xmlvm_runtime_RedTypeMarker(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_RedTypeMarker(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_RedTypeMarker(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_RedTypeMarker(); +void org_xmlvm_runtime_RedTypeMarker___INIT___(JAVA_OBJECT me); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMArray.c b/tests/nbody-java/org_xmlvm_runtime_XMLVMArray.c new file mode 100644 index 0000000000000..f2b6e937c024c --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMArray.c @@ -0,0 +1,391 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" + +#include "org_xmlvm_runtime_XMLVMArray.h" + +#define XMLVM_CURRENT_CLASS_NAME XMLVMArray +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_XMLVMArray + +__TIB_DEFINITION_org_xmlvm_runtime_XMLVMArray __TIB_org_xmlvm_runtime_XMLVMArray = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_XMLVMArray, // classInitializer + "org.xmlvm.runtime.XMLVMArray", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_xmlvm_runtime_XMLVMArray), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + +static JAVA_LONG _STATIC_org_xmlvm_runtime_XMLVMArray_serialVersionUID; + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { + {"serialVersionUID", + &__CLASS_long, + 0 | java_lang_reflect_Modifier_PRIVATE | java_lang_reflect_Modifier_STATIC, + 0, + &_STATIC_org_xmlvm_runtime_XMLVMArray_serialVersionUID, + "", + JAVA_NULL}, + {"type", + &__CLASS_java_lang_Class, + 0 | java_lang_reflect_Modifier_PRIVATE, + XMLVM_OFFSETOF(org_xmlvm_runtime_XMLVMArray, fields.org_xmlvm_runtime_XMLVMArray.type_), + 0, + "", + JAVA_NULL}, + {"length", + &__CLASS_int, + 0 | java_lang_reflect_Modifier_PRIVATE, + XMLVM_OFFSETOF(org_xmlvm_runtime_XMLVMArray, fields.org_xmlvm_runtime_XMLVMArray.length_), + 0, + "", + JAVA_NULL}, + {"array", + &__CLASS_java_lang_Object, + 0 | java_lang_reflect_Modifier_PRIVATE, + XMLVM_OFFSETOF(org_xmlvm_runtime_XMLVMArray, fields.org_xmlvm_runtime_XMLVMArray.array_), + 0, + "", + JAVA_NULL}, +}; + +static JAVA_OBJECT* __constructor0_arg_types[] = { + &__CLASS_java_lang_Class, + &__CLASS_int, + &__CLASS_java_lang_Object, +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { + {&__constructor0_arg_types[0], + sizeof(__constructor0_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "(Ljava/lang/Class;ILjava/lang/Object;)V", + JAVA_NULL, + JAVA_NULL}, +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + JAVA_OBJECT obj = __NEW_org_xmlvm_runtime_XMLVMArray(); + java_lang_reflect_Constructor* c = (java_lang_reflect_Constructor*) constructor; + org_xmlvm_runtime_XMLVMArray* args = (org_xmlvm_runtime_XMLVMArray*) arguments; + JAVA_ARRAY_OBJECT* argsArray = (JAVA_ARRAY_OBJECT*) args->fields.org_xmlvm_runtime_XMLVMArray.array_; + switch (c->fields.java_lang_reflect_Constructor.slot_) { + case 0: + org_xmlvm_runtime_XMLVMArray___INIT____java_lang_Class_int_java_lang_Object(obj, argsArray[0], ((java_lang_Integer*) argsArray[1])->fields.java_lang_Integer.value_, argsArray[2]); + break; + default: + XMLVM_INTERNAL_ERROR(); + break; + } + return obj; +} + +static JAVA_OBJECT* __method0_arg_types[] = { +}; + +static JAVA_OBJECT* __method1_arg_types[] = { + &__CLASS_java_lang_Class, + &__CLASS_int, +}; + +static JAVA_OBJECT* __method2_arg_types[] = { + &__CLASS_java_lang_Class, + &__CLASS_int, + &__CLASS_java_lang_Object, +}; + +static JAVA_OBJECT* __method3_arg_types[] = { + &__CLASS_java_lang_Class, + &__CLASS_org_xmlvm_runtime_XMLVMArray, +}; + +static JAVA_OBJECT* __method4_arg_types[] = { + &__CLASS_org_xmlvm_runtime_XMLVMArray, + &__CLASS_java_lang_Object, +}; + +static JAVA_OBJECT* __method5_arg_types[] = { +}; + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { + {"initNativeLayer", + &__method0_arg_types[0], + sizeof(__method0_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "()V", + JAVA_NULL, + JAVA_NULL}, + {"createSingleDimension", + &__method1_arg_types[0], + sizeof(__method1_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "(Ljava/lang/Class;I)Lorg/xmlvm/runtime/XMLVMArray;", + JAVA_NULL, + JAVA_NULL}, + {"createSingleDimensionWithData", + &__method2_arg_types[0], + sizeof(__method2_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "(Ljava/lang/Class;ILjava/lang/Object;)Lorg/xmlvm/runtime/XMLVMArray;", + JAVA_NULL, + JAVA_NULL}, + {"createMultiDimensions", + &__method3_arg_types[0], + sizeof(__method3_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "(Ljava/lang/Class;Lorg/xmlvm/runtime/XMLVMArray;)Lorg/xmlvm/runtime/XMLVMArray;", + JAVA_NULL, + JAVA_NULL}, + {"fillArray", + &__method4_arg_types[0], + sizeof(__method4_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "(Lorg/xmlvm/runtime/XMLVMArray;Ljava/lang/Object;)V", + JAVA_NULL, + JAVA_NULL}, + {"clone", + &__method5_arg_types[0], + sizeof(__method5_arg_types) / sizeof(JAVA_OBJECT*), + JAVA_NULL, + 0, + 0, + "()Ljava/lang/Object;", + JAVA_NULL, + JAVA_NULL}, +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + JAVA_OBJECT result = JAVA_NULL; + java_lang_Object* obj = receiver; + java_lang_reflect_Method* m = (java_lang_reflect_Method*) method; + org_xmlvm_runtime_XMLVMArray* args = (org_xmlvm_runtime_XMLVMArray*) arguments; + JAVA_ARRAY_OBJECT* argsArray = (JAVA_ARRAY_OBJECT*) args->fields.org_xmlvm_runtime_XMLVMArray.array_; + XMLVMElem conversion; + switch (m->fields.java_lang_reflect_Method.slot_) { + case 0: + org_xmlvm_runtime_XMLVMArray_initNativeLayer__(); + break; + case 1: + result = (JAVA_OBJECT) org_xmlvm_runtime_XMLVMArray_createSingleDimension___java_lang_Class_int(argsArray[0], ((java_lang_Integer*) argsArray[1])->fields.java_lang_Integer.value_); + break; + case 2: + result = (JAVA_OBJECT) org_xmlvm_runtime_XMLVMArray_createSingleDimensionWithData___java_lang_Class_int_java_lang_Object(argsArray[0], ((java_lang_Integer*) argsArray[1])->fields.java_lang_Integer.value_, argsArray[2]); + break; + case 3: + result = (JAVA_OBJECT) org_xmlvm_runtime_XMLVMArray_createMultiDimensions___java_lang_Class_org_xmlvm_runtime_XMLVMArray(argsArray[0], argsArray[1]); + break; + case 4: + org_xmlvm_runtime_XMLVMArray_fillArray___org_xmlvm_runtime_XMLVMArray_java_lang_Object(argsArray[0], argsArray[1]); + break; + case 5: + result = (JAVA_OBJECT) org_xmlvm_runtime_XMLVMArray_clone__(receiver); + break; + default: + XMLVM_INTERNAL_ERROR(); + break; + } + return result; +} + +void __INIT_org_xmlvm_runtime_XMLVMArray() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_XMLVMArray); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_XMLVMArray.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_XMLVMArray.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_XMLVMArray); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_XMLVMArray.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_XMLVMArray.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_XMLVMArray.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.XMLVMArray") + __INIT_IMPL_org_xmlvm_runtime_XMLVMArray(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_XMLVMArray() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_xmlvm_runtime_XMLVMArray.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_XMLVMArray; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_XMLVMArray.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + __TIB_org_xmlvm_runtime_XMLVMArray.vtable[0] = (VTABLE_PTR) &xmlvm_unimplemented_native_method; + xmlvm_init_native_org_xmlvm_runtime_XMLVMArray(); + // Initialize interface information + __TIB_org_xmlvm_runtime_XMLVMArray.numImplementedInterfaces = 2; + __TIB_org_xmlvm_runtime_XMLVMArray.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Serializable) + + __TIB_org_xmlvm_runtime_XMLVMArray.implementedInterfaces[0][0] = &__TIB_java_io_Serializable; + + XMLVM_CLASS_INIT(java_lang_Cloneable) + + __TIB_org_xmlvm_runtime_XMLVMArray.implementedInterfaces[0][1] = &__TIB_java_lang_Cloneable; + // Initialize itable for this class + __TIB_org_xmlvm_runtime_XMLVMArray.itableBegin = &__TIB_org_xmlvm_runtime_XMLVMArray.itable[0]; + + _STATIC_org_xmlvm_runtime_XMLVMArray_serialVersionUID = -7775139464511217031; + + __TIB_org_xmlvm_runtime_XMLVMArray.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMArray.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMArray.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMArray.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMArray.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMArray.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMArray.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMArray.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_XMLVMArray = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_XMLVMArray); + __TIB_org_xmlvm_runtime_XMLVMArray.clazz = __CLASS_org_xmlvm_runtime_XMLVMArray; + __TIB_org_xmlvm_runtime_XMLVMArray.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_XMLVMArray_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMArray); + __CLASS_org_xmlvm_runtime_XMLVMArray_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMArray_1ARRAY); + __CLASS_org_xmlvm_runtime_XMLVMArray_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMArray_2ARRAY); + org_xmlvm_runtime_XMLVMArray___CLINIT_(); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_XMLVMArray] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_XMLVMArray.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_XMLVMArray(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_XMLVMArray] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMArray(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + ((org_xmlvm_runtime_XMLVMArray*) me)->fields.org_xmlvm_runtime_XMLVMArray.type_ = (java_lang_Class*) JAVA_NULL; + ((org_xmlvm_runtime_XMLVMArray*) me)->fields.org_xmlvm_runtime_XMLVMArray.length_ = 0; + ((org_xmlvm_runtime_XMLVMArray*) me)->fields.org_xmlvm_runtime_XMLVMArray.array_ = (java_lang_Object*) JAVA_NULL; + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMArray] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMArray() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMArray) +org_xmlvm_runtime_XMLVMArray* me = (org_xmlvm_runtime_XMLVMArray*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_XMLVMArray)); + me->tib = &__TIB_org_xmlvm_runtime_XMLVMArray; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMArray(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_XMLVMArray] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMArray() +{ + JAVA_OBJECT me = JAVA_NULL; + return me; +} + +JAVA_LONG org_xmlvm_runtime_XMLVMArray_GET_serialVersionUID() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMArray) + return _STATIC_org_xmlvm_runtime_XMLVMArray_serialVersionUID; +} + +void org_xmlvm_runtime_XMLVMArray_PUT_serialVersionUID(JAVA_LONG v) +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMArray) +_STATIC_org_xmlvm_runtime_XMLVMArray_serialVersionUID = v; +} + +//XMLVM_NATIVE[void org_xmlvm_runtime_XMLVMArray_initNativeLayer__()] + +void org_xmlvm_runtime_XMLVMArray___INIT____java_lang_Class_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMArray___INIT____java_lang_Class_int_java_lang_Object] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMArray", "", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + XMLVMElem _r3; + _r0.o = me; + _r1.o = n1; + _r2.i = n2; + _r3.o = n3; + XMLVM_SOURCE_POSITION("XMLVMArray.java", 64) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_SOURCE_POSITION("XMLVMArray.java", 65) + XMLVM_CHECK_NPE(0) + ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.type_ = _r1.o; + XMLVM_SOURCE_POSITION("XMLVMArray.java", 66) + XMLVM_CHECK_NPE(0) + ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.length_ = _r2.i; + XMLVM_SOURCE_POSITION("XMLVMArray.java", 67) + XMLVM_CHECK_NPE(0) + ((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_ = _r3.o; + XMLVM_SOURCE_POSITION("XMLVMArray.java", 68) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createSingleDimension___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createSingleDimensionWithData___java_lang_Class_int_java_lang_Object(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3)] + +//XMLVM_NATIVE[JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createMultiDimensions___java_lang_Class_org_xmlvm_runtime_XMLVMArray(JAVA_OBJECT n1, JAVA_OBJECT n2)] + +//XMLVM_NATIVE[void org_xmlvm_runtime_XMLVMArray_fillArray___org_xmlvm_runtime_XMLVMArray_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2)] + +//XMLVM_NATIVE[JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_clone__(JAVA_OBJECT me)] + +void org_xmlvm_runtime_XMLVMArray___CLINIT_() +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMArray___CLINIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMArray", "", "?") + XMLVM_SOURCE_POSITION("XMLVMArray.java", 60) + org_xmlvm_runtime_XMLVMArray_initNativeLayer__(); + XMLVM_SOURCE_POSITION("XMLVMArray.java", 61) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMArray.h b/tests/nbody-java/org_xmlvm_runtime_XMLVMArray.h new file mode 100644 index 0000000000000..5e8dd856d0b67 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMArray.h @@ -0,0 +1,72 @@ +#ifndef __ORG_XMLVM_RUNTIME_XMLVMARRAY__ +#define __ORG_XMLVM_RUNTIME_XMLVMARRAY__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMArray 0 +// Implemented interfaces: +#include "java_io_Serializable.h" +#include "java_lang_Cloneable.h" +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +// Class declarations for org.xmlvm.runtime.XMLVMArray +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_XMLVMArray, 6, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMArray) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMArray_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMArray +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMArray \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + JAVA_OBJECT type_; \ + JAVA_INT length_; \ + JAVA_OBJECT array_; \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMArray \ + } org_xmlvm_runtime_XMLVMArray + +struct org_xmlvm_runtime_XMLVMArray { + __TIB_DEFINITION_org_xmlvm_runtime_XMLVMArray* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMArray; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMArray +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMArray +typedef struct org_xmlvm_runtime_XMLVMArray org_xmlvm_runtime_XMLVMArray; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_XMLVMArray 6 +#define XMLVM_VTABLE_IDX_org_xmlvm_runtime_XMLVMArray_clone__ 0 + +void __INIT_org_xmlvm_runtime_XMLVMArray(); +void __INIT_IMPL_org_xmlvm_runtime_XMLVMArray(); +void __DELETE_org_xmlvm_runtime_XMLVMArray(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMArray(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMArray(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMArray(); +void xmlvm_init_native_org_xmlvm_runtime_XMLVMArray(); +JAVA_LONG org_xmlvm_runtime_XMLVMArray_GET_serialVersionUID(); +void org_xmlvm_runtime_XMLVMArray_PUT_serialVersionUID(JAVA_LONG v); +void org_xmlvm_runtime_XMLVMArray_initNativeLayer__(); +void org_xmlvm_runtime_XMLVMArray___INIT____java_lang_Class_int_java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3); +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createSingleDimension___java_lang_Class_int(JAVA_OBJECT n1, JAVA_INT n2); +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createSingleDimensionWithData___java_lang_Class_int_java_lang_Object(JAVA_OBJECT n1, JAVA_INT n2, JAVA_OBJECT n3); +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_createMultiDimensions___java_lang_Class_org_xmlvm_runtime_XMLVMArray(JAVA_OBJECT n1, JAVA_OBJECT n2); +void org_xmlvm_runtime_XMLVMArray_fillArray___org_xmlvm_runtime_XMLVMArray_java_lang_Object(JAVA_OBJECT n1, JAVA_OBJECT n2); +// Vtable index: 0 +JAVA_OBJECT org_xmlvm_runtime_XMLVMArray_clone__(JAVA_OBJECT me); +void org_xmlvm_runtime_XMLVMArray___CLINIT_(); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.c b/tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.c new file mode 100644 index 0000000000000..c17cef22d08cc --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.c @@ -0,0 +1,198 @@ +#include "xmlvm.h" +#include "java_lang_Class.h" +#include "java_lang_Object.h" +#include "java_lang_String.h" + +#include "org_xmlvm_runtime_XMLVMClassLoader.h" + +#define XMLVM_CURRENT_CLASS_NAME XMLVMClassLoader +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_XMLVMClassLoader + +__TIB_DEFINITION_org_xmlvm_runtime_XMLVMClassLoader __TIB_org_xmlvm_runtime_XMLVMClassLoader = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_XMLVMClassLoader, // classInitializer + "org.xmlvm.runtime.XMLVMClassLoader", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_ClassLoader, // extends + sizeof(org_xmlvm_runtime_XMLVMClassLoader), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_XMLVMClassLoader() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_XMLVMClassLoader); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_XMLVMClassLoader.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_XMLVMClassLoader.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_XMLVMClassLoader); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_XMLVMClassLoader.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_XMLVMClassLoader.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_XMLVMClassLoader.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.XMLVMClassLoader") + __INIT_IMPL_org_xmlvm_runtime_XMLVMClassLoader(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_XMLVMClassLoader() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_ClassLoader) + __TIB_org_xmlvm_runtime_XMLVMClassLoader.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_XMLVMClassLoader; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_XMLVMClassLoader.vtable, __TIB_java_lang_ClassLoader.vtable, sizeof(__TIB_java_lang_ClassLoader.vtable)); + // Initialize vtable for this class + __TIB_org_xmlvm_runtime_XMLVMClassLoader.vtable[6] = (VTABLE_PTR) &org_xmlvm_runtime_XMLVMClassLoader_findClass___java_lang_String; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.vtable[7] = (VTABLE_PTR) &org_xmlvm_runtime_XMLVMClassLoader_findResource___java_lang_String; + // Initialize interface information + __TIB_org_xmlvm_runtime_XMLVMClassLoader.numImplementedInterfaces = 0; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_xmlvm_runtime_XMLVMClassLoader.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMClassLoader.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMClassLoader.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_XMLVMClassLoader = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_XMLVMClassLoader); + __TIB_org_xmlvm_runtime_XMLVMClassLoader.clazz = __CLASS_org_xmlvm_runtime_XMLVMClassLoader; + __TIB_org_xmlvm_runtime_XMLVMClassLoader.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_XMLVMClassLoader_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMClassLoader); + __CLASS_org_xmlvm_runtime_XMLVMClassLoader_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMClassLoader_1ARRAY); + __CLASS_org_xmlvm_runtime_XMLVMClassLoader_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMClassLoader_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_XMLVMClassLoader] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_XMLVMClassLoader.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_XMLVMClassLoader(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_XMLVMClassLoader] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMClassLoader(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_ClassLoader(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMClassLoader] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMClassLoader() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMClassLoader) +org_xmlvm_runtime_XMLVMClassLoader* me = (org_xmlvm_runtime_XMLVMClassLoader*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_XMLVMClassLoader)); + me->tib = &__TIB_org_xmlvm_runtime_XMLVMClassLoader; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMClassLoader(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_XMLVMClassLoader] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMClassLoader() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_xmlvm_runtime_XMLVMClassLoader(); + org_xmlvm_runtime_XMLVMClassLoader___INIT___(me); + return me; +} + +void org_xmlvm_runtime_XMLVMClassLoader___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMClassLoader___INIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMClassLoader", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("XMLVMClassLoader.java", 28) + XMLVM_CHECK_NPE(0) + java_lang_ClassLoader___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_xmlvm_runtime_XMLVMClassLoader_findClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMClassLoader_findClass___java_lang_String] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMClassLoader", "findClass", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("XMLVMClassLoader.java", 35) + _r0.o = java_lang_Class_forName___java_lang_String(_r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT org_xmlvm_runtime_XMLVMClassLoader_findResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMClassLoader_findResource___java_lang_String] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMClassLoader", "findResource", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVMElem _r2; + _r1.o = me; + _r2.o = n1; + XMLVM_SOURCE_POSITION("XMLVMClassLoader.java", 44) + //java_lang_Object_getClass__[3] + XMLVM_CHECK_NPE(1) + _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[3])(_r1.o); + XMLVM_CHECK_NPE(0) + _r0.o = java_lang_Class_getResource___java_lang_String(_r0.o, _r2.o); + XMLVM_EXIT_METHOD() + return _r0.o; + //XMLVM_END_WRAPPER +} + diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.h b/tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.h new file mode 100644 index 0000000000000..137ca7c7ca7d7 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMClassLoader.h @@ -0,0 +1,69 @@ +#ifndef __ORG_XMLVM_RUNTIME_XMLVMCLASSLOADER__ +#define __ORG_XMLVM_RUNTIME_XMLVMCLASSLOADER__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMClassLoader 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_ClassLoader.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_lang_Class +#define XMLVM_FORWARD_DECL_java_lang_Class +XMLVM_FORWARD_DECL(java_lang_Class) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_Object +#define XMLVM_FORWARD_DECL_java_lang_Object +XMLVM_FORWARD_DECL(java_lang_Object) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +// Class declarations for org.xmlvm.runtime.XMLVMClassLoader +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_XMLVMClassLoader, 8, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMClassLoader) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMClassLoader_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMClassLoader +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMClassLoader \ + __INSTANCE_FIELDS_java_lang_ClassLoader; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMClassLoader \ + } org_xmlvm_runtime_XMLVMClassLoader + +struct org_xmlvm_runtime_XMLVMClassLoader { + __TIB_DEFINITION_org_xmlvm_runtime_XMLVMClassLoader* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMClassLoader; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader +typedef struct org_xmlvm_runtime_XMLVMClassLoader org_xmlvm_runtime_XMLVMClassLoader; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_XMLVMClassLoader 8 +#define XMLVM_VTABLE_IDX_org_xmlvm_runtime_XMLVMClassLoader_findClass___java_lang_String 6 +#define XMLVM_VTABLE_IDX_org_xmlvm_runtime_XMLVMClassLoader_findResource___java_lang_String 7 + +void __INIT_org_xmlvm_runtime_XMLVMClassLoader(); +void __INIT_IMPL_org_xmlvm_runtime_XMLVMClassLoader(); +void __DELETE_org_xmlvm_runtime_XMLVMClassLoader(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMClassLoader(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMClassLoader(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMClassLoader(); +void org_xmlvm_runtime_XMLVMClassLoader___INIT___(JAVA_OBJECT me); +// Vtable index: 6 +JAVA_OBJECT org_xmlvm_runtime_XMLVMClassLoader_findClass___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); +// Vtable index: 7 +JAVA_OBJECT org_xmlvm_runtime_XMLVMClassLoader_findResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.c b/tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.c new file mode 100644 index 0000000000000..ff3803561285e --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.c @@ -0,0 +1,189 @@ +#include "xmlvm.h" + +#include "org_xmlvm_runtime_XMLVMOutputStream.h" + +#define XMLVM_CURRENT_CLASS_NAME XMLVMOutputStream +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_XMLVMOutputStream + +__TIB_DEFINITION_org_xmlvm_runtime_XMLVMOutputStream __TIB_org_xmlvm_runtime_XMLVMOutputStream = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_XMLVMOutputStream, // classInitializer + "org.xmlvm.runtime.XMLVMOutputStream", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_io_OutputStream, // extends + sizeof(org_xmlvm_runtime_XMLVMOutputStream), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_XMLVMOutputStream() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_XMLVMOutputStream); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_XMLVMOutputStream.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_XMLVMOutputStream.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_XMLVMOutputStream); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_XMLVMOutputStream.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_XMLVMOutputStream.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_XMLVMOutputStream.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.XMLVMOutputStream") + __INIT_IMPL_org_xmlvm_runtime_XMLVMOutputStream(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_XMLVMOutputStream() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_io_OutputStream) + __TIB_org_xmlvm_runtime_XMLVMOutputStream.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_XMLVMOutputStream; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_XMLVMOutputStream.vtable, __TIB_java_io_OutputStream.vtable, sizeof(__TIB_java_io_OutputStream.vtable)); + // Initialize vtable for this class + __TIB_org_xmlvm_runtime_XMLVMOutputStream.vtable[11] = (VTABLE_PTR) &org_xmlvm_runtime_XMLVMOutputStream_write___int; + // Initialize interface information + __TIB_org_xmlvm_runtime_XMLVMOutputStream.numImplementedInterfaces = 2; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 2); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + XMLVM_CLASS_INIT(java_io_Closeable) + + __TIB_org_xmlvm_runtime_XMLVMOutputStream.implementedInterfaces[0][0] = &__TIB_java_io_Closeable; + + XMLVM_CLASS_INIT(java_io_Flushable) + + __TIB_org_xmlvm_runtime_XMLVMOutputStream.implementedInterfaces[0][1] = &__TIB_java_io_Flushable; + // Initialize itable for this class + __TIB_org_xmlvm_runtime_XMLVMOutputStream.itableBegin = &__TIB_org_xmlvm_runtime_XMLVMOutputStream.itable[0]; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.itable[XMLVM_ITABLE_IDX_java_io_Closeable_close__] = __TIB_org_xmlvm_runtime_XMLVMOutputStream.vtable[7]; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.itable[XMLVM_ITABLE_IDX_java_io_Flushable_flush__] = __TIB_org_xmlvm_runtime_XMLVMOutputStream.vtable[8]; + + + __TIB_org_xmlvm_runtime_XMLVMOutputStream.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMOutputStream.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMOutputStream.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_XMLVMOutputStream = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_XMLVMOutputStream); + __TIB_org_xmlvm_runtime_XMLVMOutputStream.clazz = __CLASS_org_xmlvm_runtime_XMLVMOutputStream; + __TIB_org_xmlvm_runtime_XMLVMOutputStream.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_XMLVMOutputStream_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMOutputStream); + __CLASS_org_xmlvm_runtime_XMLVMOutputStream_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMOutputStream_1ARRAY); + __CLASS_org_xmlvm_runtime_XMLVMOutputStream_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMOutputStream_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_XMLVMOutputStream] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_XMLVMOutputStream.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_XMLVMOutputStream(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_XMLVMOutputStream] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMOutputStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_io_OutputStream(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMOutputStream] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMOutputStream() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMOutputStream) +org_xmlvm_runtime_XMLVMOutputStream* me = (org_xmlvm_runtime_XMLVMOutputStream*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_XMLVMOutputStream)); + me->tib = &__TIB_org_xmlvm_runtime_XMLVMOutputStream; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMOutputStream(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_XMLVMOutputStream] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMOutputStream() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_xmlvm_runtime_XMLVMOutputStream(); + org_xmlvm_runtime_XMLVMOutputStream___INIT___(me); + return me; +} + +void org_xmlvm_runtime_XMLVMOutputStream___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMOutputStream___INIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMOutputStream", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("XMLVMOutputStream.java", 25) + XMLVM_CHECK_NPE(0) + java_io_OutputStream___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_XMLVMOutputStream_write___int(JAVA_OBJECT me, JAVA_INT n1) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMOutputStream_write___int] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMOutputStream", "write", "?") + XMLVMElem _r0; + XMLVMElem _r1; + _r0.o = me; + _r1.i = n1; + XMLVM_SOURCE_POSITION("XMLVMOutputStream.java", 34) + org_xmlvm_runtime_XMLVMOutputStream_nativeWrite___int(_r1.i); + XMLVM_SOURCE_POSITION("XMLVMOutputStream.java", 35) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[void org_xmlvm_runtime_XMLVMOutputStream_nativeWrite___int(JAVA_INT n1)] + diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.h b/tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.h new file mode 100644 index 0000000000000..3a07066af4d21 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMOutputStream.h @@ -0,0 +1,55 @@ +#ifndef __ORG_XMLVM_RUNTIME_XMLVMOUTPUTSTREAM__ +#define __ORG_XMLVM_RUNTIME_XMLVMOUTPUTSTREAM__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMOutputStream 2 +// Implemented interfaces: +// Super Class: +#include "java_io_OutputStream.h" + +// Circular references: +// Class declarations for org.xmlvm.runtime.XMLVMOutputStream +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_XMLVMOutputStream, 12, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMOutputStream) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMOutputStream_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMOutputStream +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMOutputStream \ + __INSTANCE_FIELDS_java_io_OutputStream; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMOutputStream \ + } org_xmlvm_runtime_XMLVMOutputStream + +struct org_xmlvm_runtime_XMLVMOutputStream { + __TIB_DEFINITION_org_xmlvm_runtime_XMLVMOutputStream* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMOutputStream; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMOutputStream +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMOutputStream +typedef struct org_xmlvm_runtime_XMLVMOutputStream org_xmlvm_runtime_XMLVMOutputStream; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_XMLVMOutputStream 12 +#define XMLVM_VTABLE_IDX_org_xmlvm_runtime_XMLVMOutputStream_write___int 11 + +void __INIT_org_xmlvm_runtime_XMLVMOutputStream(); +void __INIT_IMPL_org_xmlvm_runtime_XMLVMOutputStream(); +void __DELETE_org_xmlvm_runtime_XMLVMOutputStream(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMOutputStream(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMOutputStream(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMOutputStream(); +void org_xmlvm_runtime_XMLVMOutputStream___INIT___(JAVA_OBJECT me); +// Vtable index: 11 +void org_xmlvm_runtime_XMLVMOutputStream_write___int(JAVA_OBJECT me, JAVA_INT n1); +void org_xmlvm_runtime_XMLVMOutputStream_nativeWrite___int(JAVA_INT n1); + +#endif diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.c b/tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.c new file mode 100644 index 0000000000000..4a3f06cd98f85 --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.c @@ -0,0 +1,209 @@ +#include "xmlvm.h" +#include "java_io_PrintStream.h" +#include "java_lang_String.h" +#include "java_lang_System.h" +#include "org_xmlvm_runtime_XMLVMOutputStream.h" + +#include "org_xmlvm_runtime_XMLVMUtil.h" + +#define XMLVM_CURRENT_CLASS_NAME XMLVMUtil +#define XMLVM_CURRENT_PKG_CLASS_NAME org_xmlvm_runtime_XMLVMUtil + +__TIB_DEFINITION_org_xmlvm_runtime_XMLVMUtil __TIB_org_xmlvm_runtime_XMLVMUtil = { + 0, // classInitializationBegan + 0, // classInitialized + -1, // initializerThreadId + __INIT_org_xmlvm_runtime_XMLVMUtil, // classInitializer + "org.xmlvm.runtime.XMLVMUtil", // className + "org.xmlvm.runtime", // package + JAVA_NULL, // enclosingClassName + JAVA_NULL, // enclosingMethodName + JAVA_NULL, // signature + (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends + sizeof(org_xmlvm_runtime_XMLVMUtil), // sizeInstance + XMLVM_TYPE_CLASS}; + +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil_1ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil_2ARRAY; +JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil_3ARRAY; +//XMLVM_BEGIN_IMPLEMENTATION +//XMLVM_END_IMPLEMENTATION + + +#include "xmlvm-reflection.h" + +static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = { +}; + +static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = { +}; + +static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = { +}; + +static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments) +{ + XMLVM_NOT_IMPLEMENTED(); +} + +void __INIT_org_xmlvm_runtime_XMLVMUtil() +{ + staticInitializerLock(&__TIB_org_xmlvm_runtime_XMLVMUtil); + + // While the static initializer mutex is locked, locally store the value of + // whether class initialization began or not + int initBegan = __TIB_org_xmlvm_runtime_XMLVMUtil.classInitializationBegan; + + // Whether or not class initialization had already began, it has begun now + __TIB_org_xmlvm_runtime_XMLVMUtil.classInitializationBegan = 1; + + staticInitializerUnlock(&__TIB_org_xmlvm_runtime_XMLVMUtil); + + JAVA_LONG curThreadId = (JAVA_LONG)pthread_self(); + if (initBegan) { + if (__TIB_org_xmlvm_runtime_XMLVMUtil.initializerThreadId != curThreadId) { + // Busy wait until the other thread finishes initializing this class + while (!__TIB_org_xmlvm_runtime_XMLVMUtil.classInitialized) { + // do nothing + } + } + } else { + __TIB_org_xmlvm_runtime_XMLVMUtil.initializerThreadId = curThreadId; + XMLVM_CLASS_USED("org.xmlvm.runtime.XMLVMUtil") + __INIT_IMPL_org_xmlvm_runtime_XMLVMUtil(); + } +} + +void __INIT_IMPL_org_xmlvm_runtime_XMLVMUtil() +{ + // Initialize base class if necessary + XMLVM_CLASS_INIT(java_lang_Object) + __TIB_org_xmlvm_runtime_XMLVMUtil.newInstanceFunc = __NEW_INSTANCE_org_xmlvm_runtime_XMLVMUtil; + // Copy vtable from base class + XMLVM_MEMCPY(__TIB_org_xmlvm_runtime_XMLVMUtil.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable)); + // Initialize vtable for this class + // Initialize interface information + __TIB_org_xmlvm_runtime_XMLVMUtil.numImplementedInterfaces = 0; + __TIB_org_xmlvm_runtime_XMLVMUtil.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0); + + // Initialize interfaces if necessary and assign tib to implementedInterfaces + + __TIB_org_xmlvm_runtime_XMLVMUtil.declaredFields = &__field_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMUtil.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMUtil.constructorDispatcherFunc = constructor_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMUtil.declaredConstructors = &__constructor_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMUtil.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA); + __TIB_org_xmlvm_runtime_XMLVMUtil.methodDispatcherFunc = method_dispatcher; + __TIB_org_xmlvm_runtime_XMLVMUtil.declaredMethods = &__method_reflection_data[0]; + __TIB_org_xmlvm_runtime_XMLVMUtil.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA); + __CLASS_org_xmlvm_runtime_XMLVMUtil = XMLVM_CREATE_CLASS_OBJECT(&__TIB_org_xmlvm_runtime_XMLVMUtil); + __TIB_org_xmlvm_runtime_XMLVMUtil.clazz = __CLASS_org_xmlvm_runtime_XMLVMUtil; + __TIB_org_xmlvm_runtime_XMLVMUtil.baseType = JAVA_NULL; + __CLASS_org_xmlvm_runtime_XMLVMUtil_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMUtil); + __CLASS_org_xmlvm_runtime_XMLVMUtil_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMUtil_1ARRAY); + __CLASS_org_xmlvm_runtime_XMLVMUtil_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_org_xmlvm_runtime_XMLVMUtil_2ARRAY); + //XMLVM_BEGIN_WRAPPER[__INIT_org_xmlvm_runtime_XMLVMUtil] + //XMLVM_END_WRAPPER + + __TIB_org_xmlvm_runtime_XMLVMUtil.classInitialized = 1; +} + +void __DELETE_org_xmlvm_runtime_XMLVMUtil(void* me, void* client_data) +{ + //XMLVM_BEGIN_WRAPPER[__DELETE_org_xmlvm_runtime_XMLVMUtil] + //XMLVM_END_WRAPPER +} + +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMUtil(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer) +{ + __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer); + //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMUtil] + //XMLVM_END_WRAPPER +} + +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMUtil() +{ XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMUtil) +org_xmlvm_runtime_XMLVMUtil* me = (org_xmlvm_runtime_XMLVMUtil*) XMLVM_MALLOC(sizeof(org_xmlvm_runtime_XMLVMUtil)); + me->tib = &__TIB_org_xmlvm_runtime_XMLVMUtil; + __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMUtil(me, 0); + //XMLVM_BEGIN_WRAPPER[__NEW_org_xmlvm_runtime_XMLVMUtil] + //XMLVM_END_WRAPPER + return me; +} + +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMUtil() +{ + JAVA_OBJECT me = JAVA_NULL; + me = __NEW_org_xmlvm_runtime_XMLVMUtil(); + org_xmlvm_runtime_XMLVMUtil___INIT___(me); + return me; +} + +void org_xmlvm_runtime_XMLVMUtil___INIT___(JAVA_OBJECT me) +{ + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMUtil___INIT___] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMUtil", "", "?") + XMLVMElem _r0; + _r0.o = me; + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 30) + XMLVM_CHECK_NPE(0) + java_lang_Object___INIT___(_r0.o); + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_XMLVMUtil_init__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMUtil) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMUtil_init__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMUtil", "init", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 38) + _r0.o = __NEW_java_io_PrintStream(); + _r1.o = __NEW_org_xmlvm_runtime_XMLVMOutputStream(); + XMLVM_CHECK_NPE(1) + org_xmlvm_runtime_XMLVMOutputStream___INIT___(_r1.o); + XMLVM_CHECK_NPE(0) + java_io_PrintStream___INIT____java_io_OutputStream(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 39) + java_lang_System_setOut___java_io_PrintStream(_r0.o); + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 40) + java_lang_System_setErr___java_io_PrintStream(_r0.o); + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 41) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +void org_xmlvm_runtime_XMLVMUtil_notImplemented__() +{ + XMLVM_CLASS_INIT(org_xmlvm_runtime_XMLVMUtil) + //XMLVM_BEGIN_WRAPPER[org_xmlvm_runtime_XMLVMUtil_notImplemented__] + XMLVM_ENTER_METHOD("org.xmlvm.runtime.XMLVMUtil", "notImplemented", "?") + XMLVMElem _r0; + XMLVMElem _r1; + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 44) + _r0.o = java_lang_System_GET_err(); + // "XMLVMUtil.notImplemented()" + _r1.o = xmlvm_create_java_string_from_pool(667); + XMLVM_CHECK_NPE(0) + java_io_PrintStream_println___java_lang_String(_r0.o, _r1.o); + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 45) + _r0.i = -1; + java_lang_System_exit___int(_r0.i); + XMLVM_SOURCE_POSITION("XMLVMUtil.java", 46) + XMLVM_EXIT_METHOD() + return; + //XMLVM_END_WRAPPER +} + +//XMLVM_NATIVE[JAVA_OBJECT org_xmlvm_runtime_XMLVMUtil_getCurrentWorkingDirectory__()] + diff --git a/tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.h b/tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.h new file mode 100644 index 0000000000000..3d10b1695c4ee --- /dev/null +++ b/tests/nbody-java/org_xmlvm_runtime_XMLVMUtil.h @@ -0,0 +1,70 @@ +#ifndef __ORG_XMLVM_RUNTIME_XMLVMUTIL__ +#define __ORG_XMLVM_RUNTIME_XMLVMUTIL__ + +#include "xmlvm.h" + +// Preprocessor constants for interfaces: +#define XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMUtil 0 +// Implemented interfaces: +// Super Class: +#include "java_lang_Object.h" + +// Circular references: +#ifndef XMLVM_FORWARD_DECL_java_io_PrintStream +#define XMLVM_FORWARD_DECL_java_io_PrintStream +XMLVM_FORWARD_DECL(java_io_PrintStream) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_String +#define XMLVM_FORWARD_DECL_java_lang_String +XMLVM_FORWARD_DECL(java_lang_String) +#endif +#ifndef XMLVM_FORWARD_DECL_java_lang_System +#define XMLVM_FORWARD_DECL_java_lang_System +XMLVM_FORWARD_DECL(java_lang_System) +#endif +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMOutputStream +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMOutputStream +XMLVM_FORWARD_DECL(org_xmlvm_runtime_XMLVMOutputStream) +#endif +// Class declarations for org.xmlvm.runtime.XMLVMUtil +XMLVM_DEFINE_CLASS(org_xmlvm_runtime_XMLVMUtil, 6, XMLVM_ITABLE_SIZE_org_xmlvm_runtime_XMLVMUtil) + +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil_1ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil_2ARRAY; +extern JAVA_OBJECT __CLASS_org_xmlvm_runtime_XMLVMUtil_3ARRAY; +//XMLVM_BEGIN_DECLARATIONS +#define __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMUtil +//XMLVM_END_DECLARATIONS + +#define __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMUtil \ + __INSTANCE_FIELDS_java_lang_Object; \ + struct { \ + __ADDITIONAL_INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMUtil \ + } org_xmlvm_runtime_XMLVMUtil + +struct org_xmlvm_runtime_XMLVMUtil { + __TIB_DEFINITION_org_xmlvm_runtime_XMLVMUtil* tib; + struct { + __INSTANCE_FIELDS_org_xmlvm_runtime_XMLVMUtil; + } fields; +}; +#ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMUtil +#define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMUtil +typedef struct org_xmlvm_runtime_XMLVMUtil org_xmlvm_runtime_XMLVMUtil; +#endif + +#define XMLVM_VTABLE_SIZE_org_xmlvm_runtime_XMLVMUtil 6 + +void __INIT_org_xmlvm_runtime_XMLVMUtil(); +void __INIT_IMPL_org_xmlvm_runtime_XMLVMUtil(); +void __DELETE_org_xmlvm_runtime_XMLVMUtil(void* me, void* client_data); +void __INIT_INSTANCE_MEMBERS_org_xmlvm_runtime_XMLVMUtil(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); +JAVA_OBJECT __NEW_org_xmlvm_runtime_XMLVMUtil(); +JAVA_OBJECT __NEW_INSTANCE_org_xmlvm_runtime_XMLVMUtil(); +void org_xmlvm_runtime_XMLVMUtil___INIT___(JAVA_OBJECT me); +void org_xmlvm_runtime_XMLVMUtil_init__(); +void org_xmlvm_runtime_XMLVMUtil_notImplemented__(); +JAVA_OBJECT org_xmlvm_runtime_XMLVMUtil_getCurrentWorkingDirectory__(); + +#endif diff --git a/tests/nbody-java/uthash.h b/tests/nbody-java/uthash.h new file mode 100644 index 0000000000000..ffdc6cd350c2e --- /dev/null +++ b/tests/nbody-java/uthash.h @@ -0,0 +1,904 @@ +/* +Copyright (c) 2003-2011, Troy D. Hanson http://uthash.sourceforge.net +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#ifndef UTHASH_H +#define UTHASH_H + +#include /* memcmp,strlen */ +#include /* ptrdiff_t */ +#include /* exit() */ + +/* These macros use decltype or the earlier __typeof GNU extension. + As decltype is only available in newer compilers (VS2010 or gcc 4.3+ + when compiling c++ source) this code uses whatever method is needed + or, for VS2008 where neither is available, uses casting workarounds. */ +#ifdef _MSC_VER /* MS compiler */ +#if _MSC_VER >= 1600 && defined(__cplusplus) /* VS2010 or newer in C++ mode */ +#define DECLTYPE(x) (decltype(x)) +#else /* VS2008 or older (or VS2010 in C mode) */ +#define NO_DECLTYPE +#define DECLTYPE(x) +#endif +#else /* GNU, Sun and other compilers */ +#define DECLTYPE(x) (__typeof(x)) +#endif + +#ifdef NO_DECLTYPE +#define DECLTYPE_ASSIGN(dst,src) \ +do { \ + char **_da_dst = (char**)(&(dst)); \ + *_da_dst = (char*)(src); \ +} while(0) +#else +#define DECLTYPE_ASSIGN(dst,src) \ +do { \ + (dst) = DECLTYPE(dst)(src); \ +} while(0) +#endif + +/* a number of the hash function use uint32_t which isn't defined on win32 */ +#ifdef _MSC_VER +typedef unsigned int uint32_t; +typedef unsigned char uint8_t; +#else +#include /* uint32_t */ +#endif + +#define UTHASH_VERSION 1.9.4 + +#define uthash_fatal(msg) exit(-1) /* fatal error (out of memory,etc) */ +#define uthash_malloc(sz) malloc(sz) /* malloc fcn */ +#define uthash_free(ptr,sz) free(ptr) /* free fcn */ + +#define uthash_noexpand_fyi(tbl) /* can be defined to log noexpand */ +#define uthash_expand_fyi(tbl) /* can be defined to log expands */ + +/* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS 32 /* initial number of buckets */ +#define HASH_INITIAL_NUM_BUCKETS_LOG2 5 /* lg2 of initial number of buckets */ +#define HASH_BKT_CAPACITY_THRESH 10 /* expand when bucket count reaches */ + +/* calculate the element whose hash handle address is hhe */ +#define ELMT_FROM_HH(tbl,hhp) ((void*)(((char*)(hhp)) - ((tbl)->hho))) + +#define HASH_FIND(hh,head,keyptr,keylen,out) \ +do { \ + unsigned _hf_bkt,_hf_hashv; \ + out=NULL; \ + if (head) { \ + HASH_FCN(keyptr,keylen, (head)->hh.tbl->num_buckets, _hf_hashv, _hf_bkt); \ + if (HASH_BLOOM_TEST((head)->hh.tbl, _hf_hashv)) { \ + HASH_FIND_IN_BKT((head)->hh.tbl, hh, (head)->hh.tbl->buckets[ _hf_bkt ], \ + keyptr,keylen,out); \ + } \ + } \ +} while (0) + +#ifdef HASH_BLOOM +#define HASH_BLOOM_BITLEN (1ULL << HASH_BLOOM) +#define HASH_BLOOM_BYTELEN (HASH_BLOOM_BITLEN/8) + ((HASH_BLOOM_BITLEN%8) ? 1:0) +#define HASH_BLOOM_MAKE(tbl) \ +do { \ + (tbl)->bloom_nbits = HASH_BLOOM; \ + (tbl)->bloom_bv = (uint8_t*)uthash_malloc(HASH_BLOOM_BYTELEN); \ + if (!((tbl)->bloom_bv)) { uthash_fatal( "out of memory"); } \ + memset((tbl)->bloom_bv, 0, HASH_BLOOM_BYTELEN); \ + (tbl)->bloom_sig = HASH_BLOOM_SIGNATURE; \ +} while (0); + +#define HASH_BLOOM_FREE(tbl) \ +do { \ + uthash_free((tbl)->bloom_bv, HASH_BLOOM_BYTELEN); \ +} while (0); + +#define HASH_BLOOM_BITSET(bv,idx) (bv[(idx)/8] |= (1U << ((idx)%8))) +#define HASH_BLOOM_BITTEST(bv,idx) (bv[(idx)/8] & (1U << ((idx)%8))) + +#define HASH_BLOOM_ADD(tbl,hashv) \ + HASH_BLOOM_BITSET((tbl)->bloom_bv, (hashv & (uint32_t)((1ULL << (tbl)->bloom_nbits) - 1))) + +#define HASH_BLOOM_TEST(tbl,hashv) \ + HASH_BLOOM_BITTEST((tbl)->bloom_bv, (hashv & (uint32_t)((1ULL << (tbl)->bloom_nbits) - 1))) + +#else +#define HASH_BLOOM_MAKE(tbl) +#define HASH_BLOOM_FREE(tbl) +#define HASH_BLOOM_ADD(tbl,hashv) +#define HASH_BLOOM_TEST(tbl,hashv) (1) +#endif + +#define HASH_MAKE_TABLE(hh,head) \ +do { \ + (head)->hh.tbl = (UT_hash_table*)uthash_malloc( \ + sizeof(UT_hash_table)); \ + if (!((head)->hh.tbl)) { uthash_fatal( "out of memory"); } \ + memset((head)->hh.tbl, 0, sizeof(UT_hash_table)); \ + (head)->hh.tbl->tail = &((head)->hh); \ + (head)->hh.tbl->num_buckets = HASH_INITIAL_NUM_BUCKETS; \ + (head)->hh.tbl->log2_num_buckets = HASH_INITIAL_NUM_BUCKETS_LOG2; \ + (head)->hh.tbl->hho = (char*)(&(head)->hh) - (char*)(head); \ + (head)->hh.tbl->buckets = (UT_hash_bucket*)uthash_malloc( \ + HASH_INITIAL_NUM_BUCKETS*sizeof(struct UT_hash_bucket)); \ + if (! (head)->hh.tbl->buckets) { uthash_fatal( "out of memory"); } \ + memset((head)->hh.tbl->buckets, 0, \ + HASH_INITIAL_NUM_BUCKETS*sizeof(struct UT_hash_bucket)); \ + HASH_BLOOM_MAKE((head)->hh.tbl); \ + (head)->hh.tbl->signature = HASH_SIGNATURE; \ +} while(0) + +#define HASH_ADD(hh,head,fieldname,keylen_in,add) \ + HASH_ADD_KEYPTR(hh,head,&add->fieldname,keylen_in,add) + +#define HASH_ADD_KEYPTR(hh,head,keyptr,keylen_in,add) \ +do { \ + unsigned _ha_bkt; \ + (add)->hh.next = NULL; \ + (add)->hh.key = (char*)keyptr; \ + (add)->hh.keylen = keylen_in; \ + if (!(head)) { \ + head = (add); \ + (head)->hh.prev = NULL; \ + HASH_MAKE_TABLE(hh,head); \ + } else { \ + (head)->hh.tbl->tail->next = (add); \ + (add)->hh.prev = ELMT_FROM_HH((head)->hh.tbl, (head)->hh.tbl->tail); \ + (head)->hh.tbl->tail = &((add)->hh); \ + } \ + (head)->hh.tbl->num_items++; \ + (add)->hh.tbl = (head)->hh.tbl; \ + HASH_FCN(keyptr,keylen_in, (head)->hh.tbl->num_buckets, \ + (add)->hh.hashv, _ha_bkt); \ + HASH_ADD_TO_BKT((head)->hh.tbl->buckets[_ha_bkt],&(add)->hh); \ + HASH_BLOOM_ADD((head)->hh.tbl,(add)->hh.hashv); \ + HASH_EMIT_KEY(hh,head,keyptr,keylen_in); \ + HASH_FSCK(hh,head); \ +} while(0) + +#define HASH_TO_BKT( hashv, num_bkts, bkt ) \ +do { \ + bkt = ((hashv) & ((num_bkts) - 1)); \ +} while(0) + +/* delete "delptr" from the hash table. + * "the usual" patch-up process for the app-order doubly-linked-list. + * The use of _hd_hh_del below deserves special explanation. + * These used to be expressed using (delptr) but that led to a bug + * if someone used the same symbol for the head and deletee, like + * HASH_DELETE(hh,users,users); + * We want that to work, but by changing the head (users) below + * we were forfeiting our ability to further refer to the deletee (users) + * in the patch-up process. Solution: use scratch space to + * copy the deletee pointer, then the latter references are via that + * scratch pointer rather than through the repointed (users) symbol. + */ +#define HASH_DELETE(hh,head,delptr) \ +do { \ + unsigned _hd_bkt; \ + struct UT_hash_handle *_hd_hh_del; \ + if ( ((delptr)->hh.prev == NULL) && ((delptr)->hh.next == NULL) ) { \ + uthash_free((head)->hh.tbl->buckets, \ + (head)->hh.tbl->num_buckets*sizeof(struct UT_hash_bucket) ); \ + HASH_BLOOM_FREE((head)->hh.tbl); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + head = NULL; \ + } else { \ + _hd_hh_del = &((delptr)->hh); \ + if ((delptr) == ELMT_FROM_HH((head)->hh.tbl,(head)->hh.tbl->tail)) { \ + (head)->hh.tbl->tail = \ + (UT_hash_handle*)((char*)((delptr)->hh.prev) + \ + (head)->hh.tbl->hho); \ + } \ + if ((delptr)->hh.prev) { \ + ((UT_hash_handle*)((char*)((delptr)->hh.prev) + \ + (head)->hh.tbl->hho))->next = (delptr)->hh.next; \ + } else { \ + DECLTYPE_ASSIGN(head,(delptr)->hh.next); \ + } \ + if (_hd_hh_del->next) { \ + ((UT_hash_handle*)((char*)_hd_hh_del->next + \ + (head)->hh.tbl->hho))->prev = \ + _hd_hh_del->prev; \ + } \ + HASH_TO_BKT( _hd_hh_del->hashv, (head)->hh.tbl->num_buckets, _hd_bkt); \ + HASH_DEL_IN_BKT(hh,(head)->hh.tbl->buckets[_hd_bkt], _hd_hh_del); \ + (head)->hh.tbl->num_items--; \ + } \ + HASH_FSCK(hh,head); \ +} while (0) + + +/* convenience forms of HASH_FIND/HASH_ADD/HASH_DEL */ +#define HASH_FIND_STR(head,findstr,out) \ + HASH_FIND(hh,head,findstr,strlen(findstr),out) +#define HASH_ADD_STR(head,strfield,add) \ + HASH_ADD(hh,head,strfield,strlen(add->strfield),add) +#define HASH_FIND_INT(head,findint,out) \ + HASH_FIND(hh,head,findint,sizeof(int),out) +#define HASH_ADD_INT(head,intfield,add) \ + HASH_ADD(hh,head,intfield,sizeof(int),add) +#define HASH_FIND_PTR(head,findptr,out) \ + HASH_FIND(hh,head,findptr,sizeof(void *),out) +#define HASH_ADD_PTR(head,ptrfield,add) \ + HASH_ADD(hh,head,ptrfield,sizeof(void *),add) +#define HASH_DEL(head,delptr) \ + HASH_DELETE(hh,head,delptr) + +/* HASH_FSCK checks hash integrity on every add/delete when HASH_DEBUG is defined. + * This is for uthash developer only; it compiles away if HASH_DEBUG isn't defined. + */ +#ifdef HASH_DEBUG +#define HASH_OOPS(...) do { fprintf(stderr,__VA_ARGS__); exit(-1); } while (0) +#define HASH_FSCK(hh,head) \ +do { \ + unsigned _bkt_i; \ + unsigned _count, _bkt_count; \ + char *_prev; \ + struct UT_hash_handle *_thh; \ + if (head) { \ + _count = 0; \ + for( _bkt_i = 0; _bkt_i < (head)->hh.tbl->num_buckets; _bkt_i++) { \ + _bkt_count = 0; \ + _thh = (head)->hh.tbl->buckets[_bkt_i].hh_head; \ + _prev = NULL; \ + while (_thh) { \ + if (_prev != (char*)(_thh->hh_prev)) { \ + HASH_OOPS("invalid hh_prev %p, actual %p\n", \ + _thh->hh_prev, _prev ); \ + } \ + _bkt_count++; \ + _prev = (char*)(_thh); \ + _thh = _thh->hh_next; \ + } \ + _count += _bkt_count; \ + if ((head)->hh.tbl->buckets[_bkt_i].count != _bkt_count) { \ + HASH_OOPS("invalid bucket count %d, actual %d\n", \ + (head)->hh.tbl->buckets[_bkt_i].count, _bkt_count); \ + } \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("invalid hh item count %d, actual %d\n", \ + (head)->hh.tbl->num_items, _count ); \ + } \ + /* traverse hh in app order; check next/prev integrity, count */ \ + _count = 0; \ + _prev = NULL; \ + _thh = &(head)->hh; \ + while (_thh) { \ + _count++; \ + if (_prev !=(char*)(_thh->prev)) { \ + HASH_OOPS("invalid prev %p, actual %p\n", \ + _thh->prev, _prev ); \ + } \ + _prev = (char*)ELMT_FROM_HH((head)->hh.tbl, _thh); \ + _thh = ( _thh->next ? (UT_hash_handle*)((char*)(_thh->next) + \ + (head)->hh.tbl->hho) : NULL ); \ + } \ + if (_count != (head)->hh.tbl->num_items) { \ + HASH_OOPS("invalid app item count %d, actual %d\n", \ + (head)->hh.tbl->num_items, _count ); \ + } \ + } \ +} while (0) +#else +#define HASH_FSCK(hh,head) +#endif + +/* When compiled with -DHASH_EMIT_KEYS, length-prefixed keys are emitted to + * the descriptor to which this macro is defined for tuning the hash function. + * The app can #include to get the prototype for write(2). */ +#ifdef HASH_EMIT_KEYS +#define HASH_EMIT_KEY(hh,head,keyptr,fieldlen) \ +do { \ + unsigned _klen = fieldlen; \ + write(HASH_EMIT_KEYS, &_klen, sizeof(_klen)); \ + write(HASH_EMIT_KEYS, keyptr, fieldlen); \ +} while (0) +#else +#define HASH_EMIT_KEY(hh,head,keyptr,fieldlen) +#endif + +/* default to Jenkin's hash unless overridden e.g. DHASH_FUNCTION=HASH_SAX */ +#ifdef HASH_FUNCTION +#define HASH_FCN HASH_FUNCTION +#else +#define HASH_FCN HASH_JEN +#endif + +/* The Bernstein hash function, used in Perl prior to v5.6 */ +#define HASH_BER(key,keylen,num_bkts,hashv,bkt) \ +do { \ + unsigned _hb_keylen=keylen; \ + char *_hb_key=(char*)(key); \ + (hashv) = 0; \ + while (_hb_keylen--) { (hashv) = ((hashv) * 33) + *_hb_key++; } \ + bkt = (hashv) & (num_bkts-1); \ +} while (0) + + +/* SAX/FNV/OAT/JEN hash functions are macro variants of those listed at + * http://eternallyconfuzzled.com/tuts/algorithms/jsw_tut_hashing.aspx */ +#define HASH_SAX(key,keylen,num_bkts,hashv,bkt) \ +do { \ + unsigned _sx_i; \ + char *_hs_key=(char*)(key); \ + hashv = 0; \ + for(_sx_i=0; _sx_i < keylen; _sx_i++) \ + hashv ^= (hashv << 5) + (hashv >> 2) + _hs_key[_sx_i]; \ + bkt = hashv & (num_bkts-1); \ +} while (0) + +#define HASH_FNV(key,keylen,num_bkts,hashv,bkt) \ +do { \ + unsigned _fn_i; \ + char *_hf_key=(char*)(key); \ + hashv = 2166136261UL; \ + for(_fn_i=0; _fn_i < keylen; _fn_i++) \ + hashv = (hashv * 16777619) ^ _hf_key[_fn_i]; \ + bkt = hashv & (num_bkts-1); \ +} while(0); + +#define HASH_OAT(key,keylen,num_bkts,hashv,bkt) \ +do { \ + unsigned _ho_i; \ + char *_ho_key=(char*)(key); \ + hashv = 0; \ + for(_ho_i=0; _ho_i < keylen; _ho_i++) { \ + hashv += _ho_key[_ho_i]; \ + hashv += (hashv << 10); \ + hashv ^= (hashv >> 6); \ + } \ + hashv += (hashv << 3); \ + hashv ^= (hashv >> 11); \ + hashv += (hashv << 15); \ + bkt = hashv & (num_bkts-1); \ +} while(0) + +#define HASH_JEN_MIX(a,b,c) \ +do { \ + a -= b; a -= c; a ^= ( c >> 13 ); \ + b -= c; b -= a; b ^= ( a << 8 ); \ + c -= a; c -= b; c ^= ( b >> 13 ); \ + a -= b; a -= c; a ^= ( c >> 12 ); \ + b -= c; b -= a; b ^= ( a << 16 ); \ + c -= a; c -= b; c ^= ( b >> 5 ); \ + a -= b; a -= c; a ^= ( c >> 3 ); \ + b -= c; b -= a; b ^= ( a << 10 ); \ + c -= a; c -= b; c ^= ( b >> 15 ); \ +} while (0) + +#define HASH_JEN(key,keylen,num_bkts,hashv,bkt) \ +do { \ + unsigned _hj_i,_hj_j,_hj_k; \ + char *_hj_key=(char*)(key); \ + hashv = 0xfeedbeef; \ + _hj_i = _hj_j = 0x9e3779b9; \ + _hj_k = keylen; \ + while (_hj_k >= 12) { \ + _hj_i += (_hj_key[0] + ( (unsigned)_hj_key[1] << 8 ) \ + + ( (unsigned)_hj_key[2] << 16 ) \ + + ( (unsigned)_hj_key[3] << 24 ) ); \ + _hj_j += (_hj_key[4] + ( (unsigned)_hj_key[5] << 8 ) \ + + ( (unsigned)_hj_key[6] << 16 ) \ + + ( (unsigned)_hj_key[7] << 24 ) ); \ + hashv += (_hj_key[8] + ( (unsigned)_hj_key[9] << 8 ) \ + + ( (unsigned)_hj_key[10] << 16 ) \ + + ( (unsigned)_hj_key[11] << 24 ) ); \ + \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ + \ + _hj_key += 12; \ + _hj_k -= 12; \ + } \ + hashv += keylen; \ + switch ( _hj_k ) { \ + case 11: hashv += ( (unsigned)_hj_key[10] << 24 ); \ + case 10: hashv += ( (unsigned)_hj_key[9] << 16 ); \ + case 9: hashv += ( (unsigned)_hj_key[8] << 8 ); \ + case 8: _hj_j += ( (unsigned)_hj_key[7] << 24 ); \ + case 7: _hj_j += ( (unsigned)_hj_key[6] << 16 ); \ + case 6: _hj_j += ( (unsigned)_hj_key[5] << 8 ); \ + case 5: _hj_j += _hj_key[4]; \ + case 4: _hj_i += ( (unsigned)_hj_key[3] << 24 ); \ + case 3: _hj_i += ( (unsigned)_hj_key[2] << 16 ); \ + case 2: _hj_i += ( (unsigned)_hj_key[1] << 8 ); \ + case 1: _hj_i += _hj_key[0]; \ + } \ + HASH_JEN_MIX(_hj_i, _hj_j, hashv); \ + bkt = hashv & (num_bkts-1); \ +} while(0) + +/* The Paul Hsieh hash function */ +#undef get16bits +#if (defined(__GNUC__) && defined(__i386__)) || defined(__WATCOMC__) \ + || defined(_MSC_VER) || defined (__BORLANDC__) || defined (__TURBOC__) +#define get16bits(d) (*((const uint16_t *) (d))) +#endif + +#if !defined (get16bits) +#define get16bits(d) ((((uint32_t)(((const uint8_t *)(d))[1])) << 8) \ + +(uint32_t)(((const uint8_t *)(d))[0]) ) +#endif +#define HASH_SFH(key,keylen,num_bkts,hashv,bkt) \ +do { \ + char *_sfh_key=(char*)(key); \ + uint32_t _sfh_tmp, _sfh_len = keylen; \ + \ + int _sfh_rem = _sfh_len & 3; \ + _sfh_len >>= 2; \ + hashv = 0xcafebabe; \ + \ + /* Main loop */ \ + for (;_sfh_len > 0; _sfh_len--) { \ + hashv += get16bits (_sfh_key); \ + _sfh_tmp = (get16bits (_sfh_key+2) << 11) ^ hashv; \ + hashv = (hashv << 16) ^ _sfh_tmp; \ + _sfh_key += 2*sizeof (uint16_t); \ + hashv += hashv >> 11; \ + } \ + \ + /* Handle end cases */ \ + switch (_sfh_rem) { \ + case 3: hashv += get16bits (_sfh_key); \ + hashv ^= hashv << 16; \ + hashv ^= _sfh_key[sizeof (uint16_t)] << 18; \ + hashv += hashv >> 11; \ + break; \ + case 2: hashv += get16bits (_sfh_key); \ + hashv ^= hashv << 11; \ + hashv += hashv >> 17; \ + break; \ + case 1: hashv += *_sfh_key; \ + hashv ^= hashv << 10; \ + hashv += hashv >> 1; \ + } \ + \ + /* Force "avalanching" of final 127 bits */ \ + hashv ^= hashv << 3; \ + hashv += hashv >> 5; \ + hashv ^= hashv << 4; \ + hashv += hashv >> 17; \ + hashv ^= hashv << 25; \ + hashv += hashv >> 6; \ + bkt = hashv & (num_bkts-1); \ +} while(0); + +#ifdef HASH_USING_NO_STRICT_ALIASING +/* The MurmurHash exploits some CPU's (x86,x86_64) tolerance for unaligned reads. + * For other types of CPU's (e.g. Sparc) an unaligned read causes a bus error. + * MurmurHash uses the faster approach only on CPU's where we know it's safe. + * + * Note the preprocessor built-in defines can be emitted using: + * + * gcc -m64 -dM -E - < /dev/null (on gcc) + * cc -## a.c (where a.c is a simple test file) (Sun Studio) + */ +#if (defined(__i386__) || defined(__x86_64__)) +#define MUR_GETBLOCK(p,i) p[i] +#else /* non intel */ +#define MUR_PLUS0_ALIGNED(p) (((unsigned long)p & 0x3) == 0) +#define MUR_PLUS1_ALIGNED(p) (((unsigned long)p & 0x3) == 1) +#define MUR_PLUS2_ALIGNED(p) (((unsigned long)p & 0x3) == 2) +#define MUR_PLUS3_ALIGNED(p) (((unsigned long)p & 0x3) == 3) +#define WP(p) ((uint32_t*)((unsigned long)(p) & ~3UL)) +#if (defined(__BIG_ENDIAN__) || defined(SPARC) || defined(__ppc__) || defined(__ppc64__)) +#define MUR_THREE_ONE(p) ((((*WP(p))&0x00ffffff) << 8) | (((*(WP(p)+1))&0xff000000) >> 24)) +#define MUR_TWO_TWO(p) ((((*WP(p))&0x0000ffff) <<16) | (((*(WP(p)+1))&0xffff0000) >> 16)) +#define MUR_ONE_THREE(p) ((((*WP(p))&0x000000ff) <<24) | (((*(WP(p)+1))&0xffffff00) >> 8)) +#else /* assume little endian non-intel */ +#define MUR_THREE_ONE(p) ((((*WP(p))&0xffffff00) >> 8) | (((*(WP(p)+1))&0x000000ff) << 24)) +#define MUR_TWO_TWO(p) ((((*WP(p))&0xffff0000) >>16) | (((*(WP(p)+1))&0x0000ffff) << 16)) +#define MUR_ONE_THREE(p) ((((*WP(p))&0xff000000) >>24) | (((*(WP(p)+1))&0x00ffffff) << 8)) +#endif +#define MUR_GETBLOCK(p,i) (MUR_PLUS0_ALIGNED(p) ? ((p)[i]) : \ + (MUR_PLUS1_ALIGNED(p) ? MUR_THREE_ONE(p) : \ + (MUR_PLUS2_ALIGNED(p) ? MUR_TWO_TWO(p) : \ + MUR_ONE_THREE(p)))) +#endif +#define MUR_ROTL32(x,r) (((x) << (r)) | ((x) >> (32 - (r)))) +#define MUR_FMIX(_h) \ +do { \ + _h ^= _h >> 16; \ + _h *= 0x85ebca6b; \ + _h ^= _h >> 13; \ + _h *= 0xc2b2ae35l; \ + _h ^= _h >> 16; \ +} while(0) + +#define HASH_MUR(key,keylen,num_bkts,hashv,bkt) \ +do { \ + const uint8_t *_mur_data = (const uint8_t*)(key); \ + const int _mur_nblocks = (keylen) / 4; \ + uint32_t _mur_h1 = 0xf88D5353; \ + uint32_t _mur_c1 = 0xcc9e2d51; \ + uint32_t _mur_c2 = 0x1b873593; \ + const uint32_t *_mur_blocks = (const uint32_t*)(_mur_data+_mur_nblocks*4); \ + int _mur_i; \ + for(_mur_i = -_mur_nblocks; _mur_i; _mur_i++) { \ + uint32_t _mur_k1 = MUR_GETBLOCK(_mur_blocks,_mur_i); \ + _mur_k1 *= _mur_c1; \ + _mur_k1 = MUR_ROTL32(_mur_k1,15); \ + _mur_k1 *= _mur_c2; \ + \ + _mur_h1 ^= _mur_k1; \ + _mur_h1 = MUR_ROTL32(_mur_h1,13); \ + _mur_h1 = _mur_h1*5+0xe6546b64; \ + } \ + const uint8_t *_mur_tail = (const uint8_t*)(_mur_data + _mur_nblocks*4); \ + uint32_t _mur_k1=0; \ + switch((keylen) & 3) { \ + case 3: _mur_k1 ^= _mur_tail[2] << 16; \ + case 2: _mur_k1 ^= _mur_tail[1] << 8; \ + case 1: _mur_k1 ^= _mur_tail[0]; \ + _mur_k1 *= _mur_c1; \ + _mur_k1 = MUR_ROTL32(_mur_k1,15); \ + _mur_k1 *= _mur_c2; \ + _mur_h1 ^= _mur_k1; \ + } \ + _mur_h1 ^= (keylen); \ + MUR_FMIX(_mur_h1); \ + hashv = _mur_h1; \ + bkt = hashv & (num_bkts-1); \ +} while(0) +#endif /* HASH_USING_NO_STRICT_ALIASING */ + +/* key comparison function; return 0 if keys equal */ +#define HASH_KEYCMP(a,b,len) memcmp(a,b,len) + +/* iterate over items in a known bucket to find desired item */ +#define HASH_FIND_IN_BKT(tbl,hh,head,keyptr,keylen_in,out) \ +do { \ + if (head.hh_head) DECLTYPE_ASSIGN(out,ELMT_FROM_HH(tbl,head.hh_head)); \ + else out=NULL; \ + while (out) { \ + if (out->hh.keylen == keylen_in) { \ + if ((HASH_KEYCMP(out->hh.key,keyptr,keylen_in)) == 0) break; \ + } \ + if (out->hh.hh_next) DECLTYPE_ASSIGN(out,ELMT_FROM_HH(tbl,out->hh.hh_next)); \ + else out = NULL; \ + } \ +} while(0) + +/* add an item to a bucket */ +#define HASH_ADD_TO_BKT(head,addhh) \ +do { \ + head.count++; \ + (addhh)->hh_next = head.hh_head; \ + (addhh)->hh_prev = NULL; \ + if (head.hh_head) { (head).hh_head->hh_prev = (addhh); } \ + (head).hh_head=addhh; \ + if (head.count >= ((head.expand_mult+1) * HASH_BKT_CAPACITY_THRESH) \ + && (addhh)->tbl->noexpand != 1) { \ + HASH_EXPAND_BUCKETS((addhh)->tbl); \ + } \ +} while(0) + +/* remove an item from a given bucket */ +#define HASH_DEL_IN_BKT(hh,head,hh_del) \ + (head).count--; \ + if ((head).hh_head == hh_del) { \ + (head).hh_head = hh_del->hh_next; \ + } \ + if (hh_del->hh_prev) { \ + hh_del->hh_prev->hh_next = hh_del->hh_next; \ + } \ + if (hh_del->hh_next) { \ + hh_del->hh_next->hh_prev = hh_del->hh_prev; \ + } + +/* Bucket expansion has the effect of doubling the number of buckets + * and redistributing the items into the new buckets. Ideally the + * items will distribute more or less evenly into the new buckets + * (the extent to which this is true is a measure of the quality of + * the hash function as it applies to the key domain). + * + * With the items distributed into more buckets, the chain length + * (item count) in each bucket is reduced. Thus by expanding buckets + * the hash keeps a bound on the chain length. This bounded chain + * length is the essence of how a hash provides constant time lookup. + * + * The calculation of tbl->ideal_chain_maxlen below deserves some + * explanation. First, keep in mind that we're calculating the ideal + * maximum chain length based on the *new* (doubled) bucket count. + * In fractions this is just n/b (n=number of items,b=new num buckets). + * Since the ideal chain length is an integer, we want to calculate + * ceil(n/b). We don't depend on floating point arithmetic in this + * hash, so to calculate ceil(n/b) with integers we could write + * + * ceil(n/b) = (n/b) + ((n%b)?1:0) + * + * and in fact a previous version of this hash did just that. + * But now we have improved things a bit by recognizing that b is + * always a power of two. We keep its base 2 log handy (call it lb), + * so now we can write this with a bit shift and logical AND: + * + * ceil(n/b) = (n>>lb) + ( (n & (b-1)) ? 1:0) + * + */ +#define HASH_EXPAND_BUCKETS(tbl) \ +do { \ + unsigned _he_bkt; \ + unsigned _he_bkt_i; \ + struct UT_hash_handle *_he_thh, *_he_hh_nxt; \ + UT_hash_bucket *_he_new_buckets, *_he_newbkt; \ + _he_new_buckets = (UT_hash_bucket*)uthash_malloc( \ + 2 * tbl->num_buckets * sizeof(struct UT_hash_bucket)); \ + if (!_he_new_buckets) { uthash_fatal( "out of memory"); } \ + memset(_he_new_buckets, 0, \ + 2 * tbl->num_buckets * sizeof(struct UT_hash_bucket)); \ + tbl->ideal_chain_maxlen = \ + (tbl->num_items >> (tbl->log2_num_buckets+1)) + \ + ((tbl->num_items & ((tbl->num_buckets*2)-1)) ? 1 : 0); \ + tbl->nonideal_items = 0; \ + for(_he_bkt_i = 0; _he_bkt_i < tbl->num_buckets; _he_bkt_i++) \ + { \ + _he_thh = tbl->buckets[ _he_bkt_i ].hh_head; \ + while (_he_thh) { \ + _he_hh_nxt = _he_thh->hh_next; \ + HASH_TO_BKT( _he_thh->hashv, tbl->num_buckets*2, _he_bkt); \ + _he_newbkt = &(_he_new_buckets[ _he_bkt ]); \ + if (++(_he_newbkt->count) > tbl->ideal_chain_maxlen) { \ + tbl->nonideal_items++; \ + _he_newbkt->expand_mult = _he_newbkt->count / \ + tbl->ideal_chain_maxlen; \ + } \ + _he_thh->hh_prev = NULL; \ + _he_thh->hh_next = _he_newbkt->hh_head; \ + if (_he_newbkt->hh_head) _he_newbkt->hh_head->hh_prev = \ + _he_thh; \ + _he_newbkt->hh_head = _he_thh; \ + _he_thh = _he_hh_nxt; \ + } \ + } \ + uthash_free( tbl->buckets, tbl->num_buckets*sizeof(struct UT_hash_bucket) ); \ + tbl->num_buckets *= 2; \ + tbl->log2_num_buckets++; \ + tbl->buckets = _he_new_buckets; \ + tbl->ineff_expands = (tbl->nonideal_items > (tbl->num_items >> 1)) ? \ + (tbl->ineff_expands+1) : 0; \ + if (tbl->ineff_expands > 1) { \ + tbl->noexpand=1; \ + uthash_noexpand_fyi(tbl); \ + } \ + uthash_expand_fyi(tbl); \ +} while(0) + + +/* This is an adaptation of Simon Tatham's O(n log(n)) mergesort */ +/* Note that HASH_SORT assumes the hash handle name to be hh. + * HASH_SRT was added to allow the hash handle name to be passed in. */ +#define HASH_SORT(head,cmpfcn) HASH_SRT(hh,head,cmpfcn) +#define HASH_SRT(hh,head,cmpfcn) \ +do { \ + unsigned _hs_i; \ + unsigned _hs_looping,_hs_nmerges,_hs_insize,_hs_psize,_hs_qsize; \ + struct UT_hash_handle *_hs_p, *_hs_q, *_hs_e, *_hs_list, *_hs_tail; \ + if (head) { \ + _hs_insize = 1; \ + _hs_looping = 1; \ + _hs_list = &((head)->hh); \ + while (_hs_looping) { \ + _hs_p = _hs_list; \ + _hs_list = NULL; \ + _hs_tail = NULL; \ + _hs_nmerges = 0; \ + while (_hs_p) { \ + _hs_nmerges++; \ + _hs_q = _hs_p; \ + _hs_psize = 0; \ + for ( _hs_i = 0; _hs_i < _hs_insize; _hs_i++ ) { \ + _hs_psize++; \ + _hs_q = (UT_hash_handle*)((_hs_q->next) ? \ + ((void*)((char*)(_hs_q->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + if (! (_hs_q) ) break; \ + } \ + _hs_qsize = _hs_insize; \ + while ((_hs_psize > 0) || ((_hs_qsize > 0) && _hs_q )) { \ + if (_hs_psize == 0) { \ + _hs_e = _hs_q; \ + _hs_q = (UT_hash_handle*)((_hs_q->next) ? \ + ((void*)((char*)(_hs_q->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + _hs_qsize--; \ + } else if ( (_hs_qsize == 0) || !(_hs_q) ) { \ + _hs_e = _hs_p; \ + _hs_p = (UT_hash_handle*)((_hs_p->next) ? \ + ((void*)((char*)(_hs_p->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + _hs_psize--; \ + } else if (( \ + cmpfcn(DECLTYPE(head)(ELMT_FROM_HH((head)->hh.tbl,_hs_p)), \ + DECLTYPE(head)(ELMT_FROM_HH((head)->hh.tbl,_hs_q))) \ + ) <= 0) { \ + _hs_e = _hs_p; \ + _hs_p = (UT_hash_handle*)((_hs_p->next) ? \ + ((void*)((char*)(_hs_p->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + _hs_psize--; \ + } else { \ + _hs_e = _hs_q; \ + _hs_q = (UT_hash_handle*)((_hs_q->next) ? \ + ((void*)((char*)(_hs_q->next) + \ + (head)->hh.tbl->hho)) : NULL); \ + _hs_qsize--; \ + } \ + if ( _hs_tail ) { \ + _hs_tail->next = ((_hs_e) ? \ + ELMT_FROM_HH((head)->hh.tbl,_hs_e) : NULL); \ + } else { \ + _hs_list = _hs_e; \ + } \ + _hs_e->prev = ((_hs_tail) ? \ + ELMT_FROM_HH((head)->hh.tbl,_hs_tail) : NULL); \ + _hs_tail = _hs_e; \ + } \ + _hs_p = _hs_q; \ + } \ + _hs_tail->next = NULL; \ + if ( _hs_nmerges <= 1 ) { \ + _hs_looping=0; \ + (head)->hh.tbl->tail = _hs_tail; \ + DECLTYPE_ASSIGN(head,ELMT_FROM_HH((head)->hh.tbl, _hs_list)); \ + } \ + _hs_insize *= 2; \ + } \ + HASH_FSCK(hh,head); \ + } \ +} while (0) + +/* This function selects items from one hash into another hash. + * The end result is that the selected items have dual presence + * in both hashes. There is no copy of the items made; rather + * they are added into the new hash through a secondary hash + * hash handle that must be present in the structure. */ +#define HASH_SELECT(hh_dst, dst, hh_src, src, cond) \ +do { \ + unsigned _src_bkt, _dst_bkt; \ + void *_last_elt=NULL, *_elt; \ + UT_hash_handle *_src_hh, *_dst_hh, *_last_elt_hh=NULL; \ + ptrdiff_t _dst_hho = ((char*)(&(dst)->hh_dst) - (char*)(dst)); \ + if (src) { \ + for(_src_bkt=0; _src_bkt < (src)->hh_src.tbl->num_buckets; _src_bkt++) { \ + for(_src_hh = (src)->hh_src.tbl->buckets[_src_bkt].hh_head; \ + _src_hh; \ + _src_hh = _src_hh->hh_next) { \ + _elt = ELMT_FROM_HH((src)->hh_src.tbl, _src_hh); \ + if (cond(_elt)) { \ + _dst_hh = (UT_hash_handle*)(((char*)_elt) + _dst_hho); \ + _dst_hh->key = _src_hh->key; \ + _dst_hh->keylen = _src_hh->keylen; \ + _dst_hh->hashv = _src_hh->hashv; \ + _dst_hh->prev = _last_elt; \ + _dst_hh->next = NULL; \ + if (_last_elt_hh) { _last_elt_hh->next = _elt; } \ + if (!dst) { \ + DECLTYPE_ASSIGN(dst,_elt); \ + HASH_MAKE_TABLE(hh_dst,dst); \ + } else { \ + _dst_hh->tbl = (dst)->hh_dst.tbl; \ + } \ + HASH_TO_BKT(_dst_hh->hashv, _dst_hh->tbl->num_buckets, _dst_bkt); \ + HASH_ADD_TO_BKT(_dst_hh->tbl->buckets[_dst_bkt],_dst_hh); \ + (dst)->hh_dst.tbl->num_items++; \ + _last_elt = _elt; \ + _last_elt_hh = _dst_hh; \ + } \ + } \ + } \ + } \ + HASH_FSCK(hh_dst,dst); \ +} while (0) + +#define HASH_CLEAR(hh,head) \ +do { \ + if (head) { \ + uthash_free((head)->hh.tbl->buckets, \ + (head)->hh.tbl->num_buckets*sizeof(struct UT_hash_bucket)); \ + uthash_free((head)->hh.tbl, sizeof(UT_hash_table)); \ + (head)=NULL; \ + } \ +} while(0) + +#ifdef NO_DECLTYPE +#define HASH_ITER(hh,head,el,tmp) \ +for((el)=(head), (*(char**)(&(tmp)))=(char*)((head)?(head)->hh.next:NULL); \ + el; (el)=(tmp),(*(char**)(&(tmp)))=(char*)((tmp)?(tmp)->hh.next:NULL)) +#else +#define HASH_ITER(hh,head,el,tmp) \ +for((el)=(head),(tmp)=DECLTYPE(el)((head)?(head)->hh.next:NULL); \ + el; (el)=(tmp),(tmp)=DECLTYPE(el)((tmp)?(tmp)->hh.next:NULL)) +#endif + +/* obtain a count of items in the hash */ +#define HASH_COUNT(head) HASH_CNT(hh,head) +#define HASH_CNT(hh,head) ((head)?((head)->hh.tbl->num_items):0) + +typedef struct UT_hash_bucket { + struct UT_hash_handle *hh_head; + unsigned count; + + /* expand_mult is normally set to 0. In this situation, the max chain length + * threshold is enforced at its default value, HASH_BKT_CAPACITY_THRESH. (If + * the bucket's chain exceeds this length, bucket expansion is triggered). + * However, setting expand_mult to a non-zero value delays bucket expansion + * (that would be triggered by additions to this particular bucket) + * until its chain length reaches a *multiple* of HASH_BKT_CAPACITY_THRESH. + * (The multiplier is simply expand_mult+1). The whole idea of this + * multiplier is to reduce bucket expansions, since they are expensive, in + * situations where we know that a particular bucket tends to be overused. + * It is better to let its chain length grow to a longer yet-still-bounded + * value, than to do an O(n) bucket expansion too often. + */ + unsigned expand_mult; + +} UT_hash_bucket; + +/* random signature used only to find hash tables in external analysis */ +#define HASH_SIGNATURE 0xa0111fe1 +#define HASH_BLOOM_SIGNATURE 0xb12220f2 + +typedef struct UT_hash_table { + UT_hash_bucket *buckets; + unsigned num_buckets, log2_num_buckets; + unsigned num_items; + struct UT_hash_handle *tail; /* tail hh in app order, for fast append */ + ptrdiff_t hho; /* hash handle offset (byte pos of hash handle in element */ + + /* in an ideal situation (all buckets used equally), no bucket would have + * more than ceil(#items/#buckets) items. that's the ideal chain length. */ + unsigned ideal_chain_maxlen; + + /* nonideal_items is the number of items in the hash whose chain position + * exceeds the ideal chain maxlen. these items pay the penalty for an uneven + * hash distribution; reaching them in a chain traversal takes >ideal steps */ + unsigned nonideal_items; + + /* ineffective expands occur when a bucket doubling was performed, but + * afterward, more than half the items in the hash had nonideal chain + * positions. If this happens on two consecutive expansions we inhibit any + * further expansion, as it's not helping; this happens when the hash + * function isn't a good fit for the key domain. When expansion is inhibited + * the hash will still work, albeit no longer in constant time. */ + unsigned ineff_expands, noexpand; + + uint32_t signature; /* used only to find hash tables in external analysis */ +#ifdef HASH_BLOOM + uint32_t bloom_sig; /* used only to test bloom exists in external analysis */ + uint8_t *bloom_bv; + char bloom_nbits; +#endif + +} UT_hash_table; + +typedef struct UT_hash_handle { + struct UT_hash_table *tbl; + void *prev; /* prev element in app order */ + void *next; /* next element in app order */ + struct UT_hash_handle *hh_prev; /* previous hh in bucket order */ + struct UT_hash_handle *hh_next; /* next hh in bucket order */ + void *key; /* ptr to enclosing struct's key */ + unsigned keylen; /* enclosing struct's key len */ + unsigned hashv; /* result of hash-fcn(key) */ +} UT_hash_handle; + +#endif /* UTHASH_H */ diff --git a/tests/nbody-java/xmlvm-file.c b/tests/nbody-java/xmlvm-file.c new file mode 100644 index 0000000000000..5085d6d2d325a --- /dev/null +++ b/tests/nbody-java/xmlvm-file.c @@ -0,0 +1,314 @@ + +/* + * Copyright (c) 2002-2011 by XMLVM.org + * + * Project Info: http://www.xmlvm.org + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or + * (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + * License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + * USA. + */ + +#include +#include +#include +#include +#include +#include + +#include "xmlvm-hy.h" +#include "xmlvm-file.h" +#include "hycomp.h" + + +/** + * This will convert all separators to the proper platform separator + * and remove duplicates on non POSIX platforms. + */ +void ioh_convertToPlatform (char *path) +{ + char *pathIndex; +#if !(DIR_SEPARATOR == '/') + size_t length = strlen (path); +#endif + + /* Convert all separators to the same type */ + pathIndex = path; + while (*pathIndex != '\0') + { + if ((*pathIndex == '\\' || *pathIndex == '/') + && (*pathIndex != DIR_SEPARATOR)) + *pathIndex = DIR_SEPARATOR; + pathIndex++; + } + +#if !(DIR_SEPARATOR == '/') + /* Remove duplicate initial separators */ + pathIndex = path; + while ((*pathIndex != '\0') && (*pathIndex == DIR_SEPARATOR)) + { + pathIndex++; + } + if ((pathIndex > path) && ((int)length > (pathIndex - path)) + && (*(pathIndex + 1) == ':')) + { + /* For Example '////c:/!*' (! added to avoid gcc warning) */ + size_t newlen = length - (pathIndex - path); + memmove (path, pathIndex, newlen); + path[newlen] = '\0'; + } + else + { + if ((pathIndex - path > 3) && ((int)length > (pathIndex - path))) + { + /* For Example '////serverName/!*' (! added to avoid gcc warning) */ + size_t newlen = length - (pathIndex - path) + 2; + memmove (path, pathIndex - 2, newlen); + path[newlen] = '\0'; + } + } + /* This will have to handle extra \'s but currently doesn't */ +#endif + +} + + +static I_32 +EsTranslateOpenFlags (I_32 flags) +{ + I_32 realFlags = 0; + + if (flags & HyOpenAppend) + { + realFlags |= O_APPEND; + } + if (flags & HyOpenTruncate) + { + realFlags |= O_TRUNC; + } + if (flags & HyOpenCreate) + { + realFlags |= O_CREAT; + } + if (flags & HyOpenCreateNew) + { + realFlags |= O_EXCL | O_CREAT; + } +#ifdef O_SYNC + if (flags & HyOpenSync) { + realFlags |= O_SYNC; + } +#endif + if (flags & HyOpenRead) + { + if (flags & HyOpenWrite) + { + return (O_RDWR | realFlags); + } + return (O_RDONLY | realFlags); + } + if (flags & HyOpenWrite) + { + return (O_WRONLY | realFlags); + } + return -1; +} + + +static I_32 findError (I_32 errorCode) +{ + switch (errorCode) + { + case EACCES: + case EPERM: + return HYPORT_ERROR_FILE_NOPERMISSION; + case ENAMETOOLONG: + return HYPORT_ERROR_FILE_NAMETOOLONG; + case ENOENT: + return HYPORT_ERROR_FILE_NOENT; + case ENOTDIR: + return HYPORT_ERROR_FILE_NOTDIR; + case ELOOP: + return HYPORT_ERROR_FILE_LOOP; + + case EBADF: + return HYPORT_ERROR_FILE_BADF; + case EEXIST: + return HYPORT_ERROR_FILE_EXIST; + case ENOSPC: + case EFBIG: + return HYPORT_ERROR_FILE_DISKFULL; + default: + return HYPORT_ERROR_FILE_OPFAILED; + } +} + + + +I_32 hyfile_close (IDATA fd) +{ + +#if (FD_BIAS != 0) + if (fd < FD_BIAS) { + /* Cannot close STD streams, and no other FD's should exist HySeekEnd)) + { + return -1; + } + + /* If file offsets are 32 bit, truncate the seek to that range */ + if (sizeof (off_t) < sizeof (I_64)) + { + if (offset > 0x7FFFFFFF) + { + localOffset = 0x7FFFFFFF; + } + else if (offset < -0x7FFFFFFF) + { + localOffset = -0x7FFFFFFF; + } + } + +#if (FD_BIAS != 0) + if (fd < FD_BIAS) { + /* Cannot seek on STD streams, and no other FD's should exist errorMessageBufferSize) + { + ptBuffers->errorMessageBuffer = XMLVM_ATOMIC_MALLOC(HYERROR_DEFAULT_BUFFER_SIZE); + if (NULL == ptBuffers->errorMessageBuffer) + { + return ""; + } + ptBuffers->errorMessageBufferSize = HYERROR_DEFAULT_BUFFER_SIZE; + } + + /* Copy from OS to ptBuffers */ +#if !defined(ZOS) + strerror_r(errorCode, + ptBuffers->errorMessageBuffer, ptBuffers->errorMessageBufferSize); +#else + /* Do not have strerror_r on z/OS so use port library function instead */ + portLibrary->str_printf(portLibrary, ptBuffers->errorMessageBuffer, ptBuffers->errorMessageBufferSize, strerror(errorCode)); +#endif /* ZOS */ + ptBuffers->errorMessageBuffer[ptBuffers->errorMessageBufferSize - 1] = '\0'; + return ptBuffers->errorMessageBuffer; +} + + +static const char* swapMessageBuffer (PortlibPTBuffers_t ptBuffers, const char *message) +{ + char *tempBuffer = ptBuffers->reportedMessageBuffer; + U_32 tempBufferSize = ptBuffers->reportedMessageBufferSize; + + if (message == NULL) + { + return ""; + } + + /* Can't swap unknown message buffer */ + if (message != ptBuffers->errorMessageBuffer) + { + return message; + } + + /* Save reported information */ + ptBuffers->reportedErrorCode = ptBuffers->portableErrorCode; + ptBuffers->reportedMessageBuffer = ptBuffers->errorMessageBuffer; + ptBuffers->reportedMessageBufferSize = ptBuffers->errorMessageBufferSize; + + if (tempBufferSize > 0) + { + tempBuffer[0] = '\0'; + } + + /* Clear pending fields ready for next error */ + ptBuffers->portableErrorCode = 0; + ptBuffers->errorMessageBuffer = tempBuffer; + ptBuffers->errorMessageBufferSize = tempBufferSize; + + return ptBuffers->reportedMessageBuffer; +} + + +void* hyport_tls_get () +{ + java_lang_Thread* curThread = (java_lang_Thread*) java_lang_Thread_currentThread__(); + if (curThread->fields.java_lang_Thread.ptBuffers_ == JAVA_NULL) { + curThread->fields.java_lang_Thread.ptBuffers_ = XMLVM_MALLOC(sizeof(PortlibPTBuffers_struct)); + XMLVM_BZERO(curThread->fields.java_lang_Thread.ptBuffers_, sizeof(PortlibPTBuffers_struct)); + } + + return curThread->fields.java_lang_Thread.ptBuffers_; +} + + +void* hyport_tls_peek () +{ + java_lang_Thread* curThread = (java_lang_Thread*) java_lang_Thread_currentThread__(); + return curThread->fields.java_lang_Thread.ptBuffers_; +} + + +const char* hyerror_last_error_message () +{ + PortlibPTBuffers_t ptBuffers; + + /* Was an error saved ? */ + ptBuffers = hyport_tls_peek (); + if (NULL == ptBuffers) + { + return ""; + } + + /* New error ? */ + if (ptBuffers->portableErrorCode != 0) + { + const char *message = NULL; + + /* Customized message stored ? */ + if (ptBuffers->errorMessageBufferSize > 0) + { + if ('\0' != ptBuffers->errorMessageBuffer[0]) + { + message = ptBuffers->errorMessageBuffer; + } + } + + /* Call a helper to get the last message from the OS. */ + if (message == NULL) + { + message = errorMessage (ptBuffers->platformErrorCode); + } + + /* Avoid overwrite by internal portlib errors */ + return swapMessageBuffer (ptBuffers, message); + } + + /* Previous message stored ? */ + if (ptBuffers->reportedMessageBufferSize > 0) + { + if ('\0' != ptBuffers->reportedMessageBuffer[0]) + { + return ptBuffers->reportedMessageBuffer; + } + } + + /* No error. */ + return ""; +} + + +I_32 hyerror_last_error_number () +{ + PortlibPTBuffers_t ptBuffers; + + /* get the buffers, return failure if not present */ + ptBuffers = hyport_tls_peek (); + if (NULL == ptBuffers) + { + return 0; + } + + /* New error ? */ + if (ptBuffers->portableErrorCode != 0) + { + return ptBuffers->portableErrorCode; + } + else + { + return ptBuffers->reportedErrorCode; + } +} + + +I_32 hyerror_set_last_error (I_32 platformCode, I_32 portableCode) +{ + PortlibPTBuffers_t ptBuffers; + + /* get the buffers, allocate if necessary. + * Silently return if not present, what else would the caller do anyway? + */ + ptBuffers = hyport_tls_get (); + if (NULL == ptBuffers) + { + return portableCode; + } + + /* Save the last error */ + ptBuffers->platformErrorCode = platformCode; + ptBuffers->portableErrorCode = portableCode; + + /* Overwrite any customized messages stored */ + if (ptBuffers->errorMessageBufferSize > 0) + { + ptBuffers->errorMessageBuffer[0] = '\0'; + } + + return portableCode; +} + + +I_32 hyerror_set_last_error_with_message (I_32 portableCode, const char *errorMessage) +{ + PortlibPTBuffers_t ptBuffers; + U_32 requiredSize; + + /* get the buffers, allocate if necessary. + * Silently return if not present, what else would the caller do anyway? + */ + ptBuffers = hyport_tls_get (); + if (NULL == ptBuffers) + { + return portableCode; + } + + /* Save the last error */ + ptBuffers->platformErrorCode = -1; + ptBuffers->portableErrorCode = portableCode; + + /* Store the message, allocate a bigger buffer if required. Keep the old buffer around + * just in case memory can not be allocated + */ + requiredSize = strlen (errorMessage) + 1; + requiredSize = + requiredSize < + HYERROR_DEFAULT_BUFFER_SIZE ? HYERROR_DEFAULT_BUFFER_SIZE : requiredSize; + if (requiredSize > ptBuffers->errorMessageBufferSize) + { + char *newBuffer = XMLVM_ATOMIC_MALLOC(requiredSize); + if (NULL != newBuffer) + { + if (ptBuffers->errorMessageBuffer != NULL) + { + XMLVM_FREE(ptBuffers->errorMessageBuffer); + } + ptBuffers->errorMessageBuffer = newBuffer; + ptBuffers->errorMessageBufferSize = requiredSize; + } + } + + /* Save the message */ + if (ptBuffers->errorMessageBufferSize > 0) + { + sprintf(ptBuffers->errorMessageBuffer, "%s", errorMessage); + ptBuffers->errorMessageBuffer[ptBuffers->errorMessageBufferSize - 1] = '\0'; + } + + return portableCode; +} diff --git a/tests/nbody-java/xmlvm-hy.h b/tests/nbody-java/xmlvm-hy.h new file mode 100644 index 0000000000000..843a2753b2c7b --- /dev/null +++ b/tests/nbody-java/xmlvm-hy.h @@ -0,0 +1,121 @@ +/* + * Copyright (c) 2002-2011 by XMLVM.org + * + * Project Info: http://www.xmlvm.org + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or + * (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + * License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + * USA. + */ + +#ifndef __XMLVM_HY_H__ + +#define __XMLVM_HY_H__ + +#ifdef __APPLE__ +#define MACOSX +#endif + +#include "xmlvm.h" +#include "hycomp.h" +#include "hysock.h" +#include "hysocket.h" + + +#define HYERROR_DEFAULT_BUFFER_SIZE 256 /**< default customized error message size if we need to create one */ + +#if defined(__linux__) +#define DIR_SEPARATOR '/' +#endif + + +typedef struct PortlibPTBuffers_struct +{ + I_32 platformErrorCode; /**< error code as reported by the OS */ + I_32 portableErrorCode; /**< error code translated to portable format by application */ + char *errorMessageBuffer; /**< last saved error message, either customized or from OS */ + U_32 errorMessageBufferSize; /**< error message buffer size */ + I_32 reportedErrorCode; /**< last reported error code */ + char *reportedMessageBuffer; /**< last reported error message, either customized or from OS */ + U_32 reportedMessageBufferSize; /**< reported message buffer size */ + hyfdset_t fdset; + +#if HOSTENT_DATA_R||GLIBC_R||OTHER_R||NO_R + OSHOSTENT hostent; +#endif + +#if HOSTENT_DATA_R + OSHOSTENT_DATA *hostent_data; +#elif GLIBC_R || OTHER_R || NO_R + int gethostBufferSize; + char *gethostBuffer; +#endif /* HOSTENT_DATA_R */ + +} PortlibPTBuffers_struct; + +typedef struct PortlibPTBuffers_struct *PortlibPTBuffers_t; + + +typedef pthread_mutex_t MUTEX; + +/* MUTEX_INIT */ +#define MUTEX_INIT(mutex) (pthread_mutex_init(&(mutex), NULL) == 0) + +/* MUTEX_DESTROY */ +#define MUTEX_DESTROY(mutex) pthread_mutex_destroy(&(mutex)) + +/* MUTEX_ENTER */ +#define MUTEX_ENTER(mutex) pthread_mutex_lock(&(mutex)) + +/* + * MUTEX_TRY_ENTER + * returns 0 on success + */ +#define MUTEX_TRY_ENTER(mutex) pthread_mutex_trylock(&(mutex)) + +/* MUTEX_EXIT */ +#define MUTEX_EXIT(mutex) pthread_mutex_unlock(&(mutex)) + + +#if defined(SEEK_SET) +#define HySeekSet SEEK_SET /* Values for HyFileSeek */ +#else +#define HySeekSet 0 +#endif + +#if defined(SEEK_CUR) +#define HySeekCur SEEK_CUR +#else +#define HySeekCur 1 +#endif + +#if defined(SEEK_END) +#define HySeekEnd SEEK_END +#else +#define HySeekEnd 2 +#endif + + +typedef JAVA_INT jsize; + + +void* hyport_tls_get (); +void* hyport_tls_peek (); +const char* hyerror_last_error_message (); +I_32 hyerror_last_error_number (); +I_32 hyerror_set_last_error (I_32 platformCode, I_32 portableCode); +I_32 hyerror_set_last_error_with_message (I_32 portableCode, const char *errorMessage); + + +#endif diff --git a/tests/nbody-java/xmlvm-number.c b/tests/nbody-java/xmlvm-number.c new file mode 100644 index 0000000000000..ae496d54be048 --- /dev/null +++ b/tests/nbody-java/xmlvm-number.c @@ -0,0 +1,327 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * cbigint.c has been adapted for xmlvm + */ +#include "xmlvm-number.h" + + +U_32 +simpleMultiplyHighPrecision (U_64 * arg1, IDATA length, U_64 arg2) +{ + /* assumes arg2 only holds 32 bits of information */ + U_64 product; + IDATA index; + + index = 0; + product = 0; + + do + { + product = + HIGH_IN_U64 (product) + arg2 * LOW_U32_FROM_PTR (arg1 + index); + LOW_U32_FROM_PTR (arg1 + index) = LOW_U32_FROM_VAR (product); + product = + HIGH_IN_U64 (product) + arg2 * HIGH_U32_FROM_PTR (arg1 + index); + HIGH_U32_FROM_PTR (arg1 + index) = LOW_U32_FROM_VAR (product); + } + while (++index < length); + + return HIGH_U32_FROM_VAR (product); +} + +void simpleShiftLeftHighPrecision (U_64 * arg1, IDATA length, IDATA arg2) +{ + /* assumes length > 0 */ + IDATA index, offset; + if (arg2 >= 64) + { + offset = arg2 >> 6; + index = length; + + while (--index - offset >= 0) + arg1[index] = arg1[index - offset]; + do + { + arg1[index] = 0; + } + while (--index >= 0); + + arg2 &= 0x3F; + } + + if (arg2 == 0) + return; + while (--length > 0) + { + arg1[length] = arg1[length] << arg2 | arg1[length - 1] >> (64 - arg2); + } + *arg1 <<= arg2; +} + + +U_64 simpleMultiplyHighPrecision64 (U_64 * arg1, IDATA length, U_64 arg2) +{ + U_64 intermediate, *pArg1, carry1, carry2, prod1, prod2, sum; + IDATA index; + U_32 buf32; + + index = 0; + intermediate = 0; + pArg1 = arg1 + index; + carry1 = carry2 = 0; + + do + { + if ((*pArg1 != 0) || (intermediate != 0)) + { + prod1 = + (U_64) LOW_U32_FROM_VAR (arg2) * (U_64) LOW_U32_FROM_PTR (pArg1); + sum = intermediate + prod1; + if ((sum < prod1) || (sum < intermediate)) + { + carry1 = 1; + } + else + { + carry1 = 0; + } + prod1 = + (U_64) LOW_U32_FROM_VAR (arg2) * (U_64) HIGH_U32_FROM_PTR (pArg1); + prod2 = + (U_64) HIGH_U32_FROM_VAR (arg2) * (U_64) LOW_U32_FROM_PTR (pArg1); + intermediate = carry2 + HIGH_IN_U64 (sum) + prod1 + prod2; + if ((intermediate < prod1) || (intermediate < prod2)) + { + carry2 = 1; + } + else + { + carry2 = 0; + } + LOW_U32_FROM_PTR (pArg1) = LOW_U32_FROM_VAR (sum); + buf32 = HIGH_U32_FROM_PTR (pArg1); + HIGH_U32_FROM_PTR (pArg1) = LOW_U32_FROM_VAR (intermediate); + intermediate = carry1 + HIGH_IN_U64 (intermediate) + + (U_64) HIGH_U32_FROM_VAR (arg2) * (U_64) buf32; + } + pArg1++; + } + while (++index < length); + return intermediate; +} + +U_32 simpleAppendDecimalDigitHighPrecision (U_64 * arg1, IDATA length, U_64 digit) +{ + /* assumes digit is less than 32 bits */ + U_64 arg; + IDATA index = 0; + + digit <<= 32; + do + { + arg = LOW_IN_U64 (arg1[index]); + digit = HIGH_IN_U64 (digit) + TIMES_TEN (arg); + LOW_U32_FROM_PTR (arg1 + index) = LOW_U32_FROM_VAR (digit); + + arg = HIGH_IN_U64 (arg1[index]); + digit = HIGH_IN_U64 (digit) + TIMES_TEN (arg); + HIGH_U32_FROM_PTR (arg1 + index) = LOW_U32_FROM_VAR (digit); + } + while (++index < length); + + return HIGH_U32_FROM_VAR (digit); +} + +IDATA timesTenToTheEHighPrecision (U_64 * result, IDATA length, JAVA_INT e) +{ + /* assumes result can hold value */ + U_64 overflow; + int exp10 = e; + + if (e == 0) + return length; + + while (exp10 >= 19) + { + overflow = simpleMultiplyHighPrecision64 (result, length, TEN_E19); + if (overflow) + result[length++] = overflow; + exp10 -= 19; + } + while (exp10 >= 9) + { + overflow = simpleMultiplyHighPrecision (result, length, TEN_E9); + if (overflow) + result[length++] = overflow; + exp10 -= 9; + } + if (exp10 == 0) + return length; + else if (exp10 == 1) + { + overflow = simpleAppendDecimalDigitHighPrecision (result, length, 0); + if (overflow) + result[length++] = overflow; + } + else if (exp10 == 2) + { + overflow = simpleAppendDecimalDigitHighPrecision (result, length, 0); + if (overflow) + result[length++] = overflow; + overflow = simpleAppendDecimalDigitHighPrecision (result, length, 0); + if (overflow) + result[length++] = overflow; + } + else if (exp10 == 3) + { + overflow = simpleMultiplyHighPrecision (result, length, TEN_E3); + if (overflow) + result[length++] = overflow; + } + else if (exp10 == 4) + { + overflow = simpleMultiplyHighPrecision (result, length, TEN_E4); + if (overflow) + result[length++] = overflow; + } + else if (exp10 == 5) + { + overflow = simpleMultiplyHighPrecision (result, length, TEN_E5); + if (overflow) + result[length++] = overflow; + } + else if (exp10 == 6) + { + overflow = simpleMultiplyHighPrecision (result, length, TEN_E6); + if (overflow) + result[length++] = overflow; + } + else if (exp10 == 7) + { + overflow = simpleMultiplyHighPrecision (result, length, TEN_E7); + if (overflow) + result[length++] = overflow; + } + else if (exp10 == 8) + { + overflow = simpleMultiplyHighPrecision (result, length, TEN_E8); + if (overflow) + result[length++] = overflow; + } + return length; +} + +IDATA addHighPrecision (U_64 * arg1, IDATA length1, U_64 * arg2, IDATA length2) +{ + + U_64 temp1, temp2, temp3; /* temporary variables to help the SH-4, and gcc */ + U_64 carry; + IDATA index; + + if (length1 == 0 || length2 == 0) + { + return 0; + } + else if (length1 < length2) + { + length2 = length1; + } + + carry = 0; + index = 0; + do + { + temp1 = arg1[index]; + temp2 = arg2[index]; + temp3 = temp1 + temp2; + arg1[index] = temp3 + carry; + if (arg2[index] < arg1[index]) + carry = 0; + else if (arg2[index] != arg1[index]) + carry = 1; + } + while (++index < length2); + if (!carry) + return 0; + else if (index == length1) + return 1; + + while (++arg1[index] == 0 && ++index < length1); + + return (IDATA) index == length1; +} + +IDATA +compareHighPrecision (U_64 * arg1, IDATA length1, U_64 * arg2, IDATA length2) +{ + while (--length1 >= 0 && arg1[length1] == 0); + while (--length2 >= 0 && arg2[length2] == 0); + + if (length1 > length2) + return 1; + else if (length1 < length2) + return -1; + else if (length1 > -1) + { + do + { + if (arg1[length1] > arg2[length1]) + return 1; + else if (arg1[length1] < arg2[length1]) + return -1; + } + while (--length1 >= 0); + } + + return 0; +} + +IDATA +simpleAddHighPrecision (U_64 * arg1, IDATA length, U_64 arg2) +{ + /* assumes length > 0 */ + IDATA index = 1; + + *arg1 += arg2; + if (arg2 <= *arg1) + return 0; + else if (length == 1) + return 1; + + while (++arg1[index] == 0 && ++index < length); + + return (IDATA) index == length; +} + +void +subtractHighPrecision (U_64 * arg1, IDATA length1, U_64 * arg2, IDATA length2) +{ + /* assumes arg1 > arg2 */ + IDATA index; + for (index = 0; index < length1; ++index) + arg1[index] = ~arg1[index]; + simpleAddHighPrecision (arg1, length1, 1); + + while (length2 > 0 && arg2[length2 - 1] == 0) + --length2; + + addHighPrecision (arg1, length1, arg2, length2); + + for (index = 0; index < length1; ++index) + arg1[index] = ~arg1[index]; + simpleAddHighPrecision (arg1, length1, 1); +} diff --git a/tests/nbody-java/xmlvm-number.h b/tests/nbody-java/xmlvm-number.h new file mode 100644 index 0000000000000..b8164987ca8b9 --- /dev/null +++ b/tests/nbody-java/xmlvm-number.h @@ -0,0 +1,105 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * cbigint.c has been adapted for xmlvm + */ +#ifndef __XMLVM_NUMBER_H__ +#define __XMLVM_NUMBER_H__ + +#include +#include +#include "xmlvm-hy.h" +#include "hycomp.h" + +#define LONG_LO_OFFSET 0 +#define LONG_HI_OFFSET 1 + +#define LOW_U32_FROM_LONG64_PTR(long64ptr) (((U64U32DBL *)(long64ptr))->u32val[LONG_LO_OFFSET]) +#define HIGH_U32_FROM_LONG64_PTR(long64ptr) (((U64U32DBL *)(long64ptr))->u32val[LONG_HI_OFFSET]) +#define LOW_U32_FROM_VAR(u64) LOW_U32_FROM_LONG64_PTR(&(u64)) +#define LOW_U32_FROM_PTR(u64ptr) LOW_U32_FROM_LONG64_PTR(u64ptr) +#define HIGH_U32_FROM_VAR(u64) HIGH_U32_FROM_LONG64_PTR(&(u64)) +#define HIGH_U32_FROM_PTR(u64ptr) HIGH_U32_FROM_LONG64_PTR(u64ptr) + + +#define HIGH_IN_U64(u64) ((u64) >> 32) +#if defined(USE_LL) +#define LOW_IN_U64(u64) ((u64) & 0x00000000FFFFFFFFLL) +#else +#if defined(USE_L) +#define LOW_IN_U64(u64) ((u64) & 0x00000000FFFFFFFFL) +#else +#define LOW_IN_U64(u64) ((u64) & 0x00000000FFFFFFFF) +#endif /* USE_L */ +#endif /* USE_LL */ + +typedef union u64u32dbl_tag { + U_64 u64val; + U_32 u32val[2]; + I_32 i32val[2]; + double dval; +} U64U32DBL; + +#if defined(USE_LL) +#define TEN_E1 (0xALL) +#define TEN_E2 (0x64LL) +#define TEN_E3 (0x3E8LL) +#define TEN_E4 (0x2710LL) +#define TEN_E5 (0x186A0LL) +#define TEN_E6 (0xF4240LL) +#define TEN_E7 (0x989680LL) +#define TEN_E8 (0x5F5E100LL) +#define TEN_E9 (0x3B9ACA00LL) +#define TEN_E19 (0x8AC7230489E80000LL) +#else +#if defined(USE_L) +#define TEN_E1 (0xAL) +#define TEN_E2 (0x64L) +#define TEN_E3 (0x3E8L) +#define TEN_E4 (0x2710L) +#define TEN_E5 (0x186A0L) +#define TEN_E6 (0xF4240L) +#define TEN_E7 (0x989680L) +#define TEN_E8 (0x5F5E100L) +#define TEN_E9 (0x3B9ACA00L) +#define TEN_E19 (0x8AC7230489E80000L) +#else +#define TEN_E1 (0xA) +#define TEN_E2 (0x64) +#define TEN_E3 (0x3E8) +#define TEN_E4 (0x2710) +#define TEN_E5 (0x186A0) +#define TEN_E6 (0xF4240) +#define TEN_E7 (0x989680) +#define TEN_E8 (0x5F5E100) +#define TEN_E9 (0x3B9ACA00) +#define TEN_E19 (0x8AC7230489E80000) +#endif /* USE_L */ +#endif /* USE_LL */ + +#define TIMES_TEN(x) (((x) << 3) + ((x) << 1)) + +U_32 simpleMultiplyHighPrecision (U_64 * arg1, IDATA length, U_64 arg2); +void simpleShiftLeftHighPrecision (U_64 * arg1, IDATA length, IDATA arg2); +U_64 simpleMultiplyHighPrecision64 (U_64 * arg1, IDATA length, U_64 arg2); +U_32 simpleAppendDecimalDigitHighPrecision (U_64 * arg1, IDATA length, U_64 digit); +IDATA timesTenToTheEHighPrecision (U_64 * result, IDATA length, JAVA_INT e); +IDATA addHighPrecision (U_64 * arg1, IDATA length1, U_64 * arg2, IDATA length2); +IDATA compareHighPrecision (U_64 * arg1, IDATA length1, U_64 * arg2, IDATA length2); +IDATA simpleAddHighPrecision (U_64 * arg1, IDATA length, U_64 arg2); +void subtractHighPrecision (U_64 * arg1, IDATA length1, U_64 * arg2, IDATA length2); + +#endif diff --git a/tests/nbody-java/xmlvm-reflection.h b/tests/nbody-java/xmlvm-reflection.h new file mode 100644 index 0000000000000..ac445d7bb4040 --- /dev/null +++ b/tests/nbody-java/xmlvm-reflection.h @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2002-2011 by XMLVM.org + * + * Project Info: http://www.xmlvm.org + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or + * (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + * License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + * USA. + */ + +#include "org_xmlvm_runtime_RedTypeMarker.h" +#include "java_lang_reflect_Constructor.h" +#include "java_lang_reflect_Method.h" +#include "java_lang_String.h" +#include "java_lang_Byte.h" +#include "java_lang_Boolean.h" +#include "java_lang_Character.h" +#include "java_lang_Short.h" +#include "java_lang_Integer.h" +#include "java_lang_Float.h" +#include "java_lang_Long.h" +#include "java_lang_Double.h" diff --git a/tests/nbody-java/xmlvm-sock.c b/tests/nbody-java/xmlvm-sock.c new file mode 100644 index 0000000000000..e4e8039499aa0 --- /dev/null +++ b/tests/nbody-java/xmlvm-sock.c @@ -0,0 +1,1255 @@ +/* + * Copyright (c) 2002-2011 by XMLVM.org + * + * Project Info: http://www.xmlvm.org + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or + * (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + * License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + * USA. + */ + +#include +#include +#include +//#include +//#include +//#include "java_io_FileDescriptor.h" +//#include "java_net_SocketException.h" +//#include "java_lang_Thread.h" + +#include "xmlvm.h" +#include "xmlvm-hy.h" +#include "xmlvm-sock.h" + +#include "java_lang_String.h" +#include "java_io_FileDescriptor.h" +#include "java_net_InetAddress.h" +#include "java_net_Inet6Address.h" + + +#define MAX_RETRIES 50 +#define INVALID_SOCKET (hysocket_t) -1 + +#if NO_R +/*use a mutex if the gethostbyaddr, gethostbyname calls are not threadsafe*/ +MUTEX hostentLock = PTHREAD_MUTEX_INITIALIZER; +#endif /*NO_R */ + + + +const char* hysock_error_message () +{ + return hyerror_last_error_message (); +} + + +char* netLookupErrorString (I_32 anErrorNum) +{ + switch (anErrorNum) + { + case HYPORT_ERROR_SOCKET_BADSOCKET: + return "Bad socket"; + case HYPORT_ERROR_SOCKET_NOTINITIALIZED: + return "Socket library uninitialized"; + case HYPORT_ERROR_SOCKET_BADAF: + return "Bad address family"; + case HYPORT_ERROR_SOCKET_BADPROTO: + return "Bad protocol"; + case HYPORT_ERROR_SOCKET_BADTYPE: + return "Bad type"; + case HYPORT_ERROR_SOCKET_SYSTEMBUSY: + return "System busy handling requests"; + case HYPORT_ERROR_SOCKET_SYSTEMFULL: + return "Too many sockets allocated"; + case HYPORT_ERROR_SOCKET_NOTCONNECTED: + return "Socket is not connected"; + case HYPORT_ERROR_SOCKET_INTERRUPTED: + return "The call was cancelled"; + case HYPORT_ERROR_SOCKET_TIMEOUT: + return "The operation timed out"; + case HYPORT_ERROR_SOCKET_CONNRESET: + return "The connection was reset"; + case HYPORT_ERROR_SOCKET_WOULDBLOCK: + return "The socket is marked as nonblocking operation would block"; + case HYPORT_ERROR_SOCKET_ADDRNOTAVAIL: + return "The address is not available"; + case HYPORT_ERROR_SOCKET_ADDRINUSE: + return "The address is already in use"; + case HYPORT_ERROR_SOCKET_NOTBOUND: + return "The socket is not bound"; + case HYPORT_ERROR_SOCKET_UNKNOWNSOCKET: + return "Resolution of the FileDescriptor to socket failed"; + case HYPORT_ERROR_SOCKET_INVALIDTIMEOUT: + return "The specified timeout is invalid"; + case HYPORT_ERROR_SOCKET_FDSETFULL: + return "Unable to create an FDSET"; + case HYPORT_ERROR_SOCKET_TIMEVALFULL: + return "Unable to create a TIMEVAL"; + case HYPORT_ERROR_SOCKET_REMSOCKSHUTDOWN: + return "The remote socket has shutdown gracefully"; + case HYPORT_ERROR_SOCKET_NOTLISTENING: + return "Listen() was not invoked prior to accept()"; + case HYPORT_ERROR_SOCKET_NOTSTREAMSOCK: + return "The socket does not support connection-oriented service"; + case HYPORT_ERROR_SOCKET_ALREADYBOUND: + return "The socket is already bound to an address"; + case HYPORT_ERROR_SOCKET_NBWITHLINGER: + return "The socket is marked non-blocking & SO_LINGER is non-zero"; + case HYPORT_ERROR_SOCKET_ISCONNECTED: + return "The socket is already connected"; + case HYPORT_ERROR_SOCKET_NOBUFFERS: + return "No buffer space is available"; + case HYPORT_ERROR_SOCKET_HOSTNOTFOUND: + return "Authoritative Answer Host not found"; + case HYPORT_ERROR_SOCKET_NODATA: + return "Valid name, no data record of requested type"; + case HYPORT_ERROR_SOCKET_BOUNDORCONN: + return "The socket has not been bound or is already connected"; + case HYPORT_ERROR_SOCKET_OPNOTSUPP: + return "The socket does not support the operation"; + case HYPORT_ERROR_SOCKET_OPTUNSUPP: + return "The socket option is not supported"; + case HYPORT_ERROR_SOCKET_OPTARGSINVALID: + return "The socket option arguments are invalid"; + case HYPORT_ERROR_SOCKET_SOCKLEVELINVALID: + return "The socket level is invalid"; + case HYPORT_ERROR_SOCKET_TIMEOUTFAILURE: + return "The timeout operation failed"; + case HYPORT_ERROR_SOCKET_SOCKADDRALLOCFAIL: + return "Failed to allocate address structure"; + case HYPORT_ERROR_SOCKET_FDSET_SIZEBAD: + return "The calculated maximum size of the file descriptor set is bad"; + case HYPORT_ERROR_SOCKET_UNKNOWNFLAG: + return "The flag is unknown"; + case HYPORT_ERROR_SOCKET_MSGSIZE: + return "The datagram was too big to fit the specified buffer, so truncated"; + case HYPORT_ERROR_SOCKET_NORECOVERY: + return "The operation failed with no recovery possible"; + case HYPORT_ERROR_SOCKET_ARGSINVALID: + return "The arguments are invalid"; + case HYPORT_ERROR_SOCKET_BADDESC: + return "The socket argument is not a valid file descriptor"; + case HYPORT_ERROR_SOCKET_NOTSOCK: + return "The socket argument is not a socket"; + case HYPORT_ERROR_SOCKET_HOSTENTALLOCFAIL: + return "Unable to allocate the hostent structure"; + case HYPORT_ERROR_SOCKET_TIMEVALALLOCFAIL: + return "Unable to allocate the timeval structure"; + case HYPORT_ERROR_SOCKET_LINGERALLOCFAIL: + return "Unable to allocate the linger structure"; + case HYPORT_ERROR_SOCKET_IPMREQALLOCFAIL: + return "Unable to allocate the ipmreq structure"; + case HYPORT_ERROR_SOCKET_FDSETALLOCFAIL: + return "Unable to allocate the fdset structure"; + case HYPORT_ERROR_SOCKET_CONNECTION_REFUSED: + return "Connection refused"; + case HYPORT_ERROR_FILE_LOCKED: + return "File has been locked by another process"; + + default: + return (char *) hysock_error_message (); + } +} + + +static I_32 findError (I_32 errorCode) +{ + switch (errorCode) + { + case HYPORT_ERROR_SOCKET_UNIX_EBADF: + return HYPORT_ERROR_SOCKET_BADDESC; + case HYPORT_ERROR_SOCKET_UNIX_ENOBUFS: + return HYPORT_ERROR_SOCKET_NOBUFFERS; + case HYPORT_ERROR_SOCKET_UNIX_EOPNOTSUP: + return HYPORT_ERROR_SOCKET_OPNOTSUPP; + case HYPORT_ERROR_SOCKET_UNIX_ENOPROTOOPT: + return HYPORT_ERROR_SOCKET_OPTUNSUPP; + case HYPORT_ERROR_SOCKET_UNIX_EINVAL: + return HYPORT_ERROR_SOCKET_SOCKLEVELINVALID; + case HYPORT_ERROR_SOCKET_UNIX_ENOTSOCK: + return HYPORT_ERROR_SOCKET_NOTSOCK; + case HYPORT_ERROR_SOCKET_UNIX_EINTR: + return HYPORT_ERROR_SOCKET_INTERRUPTED; + case HYPORT_ERROR_SOCKET_UNIX_ENOTCONN: + return HYPORT_ERROR_SOCKET_NOTCONNECTED; + case HYPORT_ERROR_SOCKET_UNIX_EAFNOSUPPORT: + return HYPORT_ERROR_SOCKET_BADAF; + /* note: HYPORT_ERROR_SOCKET_UNIX_ECONNRESET not included because it has the same + * value as HYPORT_ERROR_SOCKET_UNIX_CONNRESET and they both map to HYPORT_ERROR_SOCKET_CONNRESET */ + case HYPORT_ERROR_SOCKET_UNIX_CONNRESET: + return HYPORT_ERROR_SOCKET_CONNRESET; + case HYPORT_ERROR_SOCKET_UNIX_EAGAIN: + return HYPORT_ERROR_SOCKET_WOULDBLOCK; + case HYPORT_ERROR_SOCKET_UNIX_EPROTONOSUPPORT: + return HYPORT_ERROR_SOCKET_BADPROTO; + case HYPORT_ERROR_SOCKET_UNIX_EFAULT: + return HYPORT_ERROR_SOCKET_ARGSINVALID; + case HYPORT_ERROR_SOCKET_UNIX_ETIMEDOUT: + return HYPORT_ERROR_SOCKET_TIMEOUT; + case HYPORT_ERROR_SOCKET_UNIX_CONNREFUSED: + return HYPORT_ERROR_SOCKET_CONNECTION_REFUSED; + case HYPORT_ERROR_SOCKET_UNIX_ENETUNREACH: + return HYPORT_ERROR_SOCKET_ENETUNREACH; + case HYPORT_ERROR_SOCKET_UNIX_EACCES: + return HYPORT_ERROR_SOCKET_EACCES; + default: + return HYPORT_ERROR_SOCKET_OPFAILED; + } +} + + +int harmony_supports_ipv6() +{ + return 0; +} + + +int preferIPv4Stack() +{ + return 1; +} + + +int preferIPv6Addresses() +{ + return 0; +} + + +static socklen_t getAddrLength(hysockaddr_t addr) +{ + return +#if defined(IPv6_FUNCTION_SUPPORT) + ((OSSOCKADDR *) & addr->addr)->sin_family == OS_AF_INET6 ? + sizeof(OSSOCKADDR_IN6) : +#endif + sizeof(OSSOCKADDR); +} + + +U_16 hysock_htons(U_16 port) +{ + return htons(port); +} + + +U_16 hysock_ntohs (U_16 val) +{ + return ntohs (val); +} + + + +I_32 hysock_socketIsValid (hysocket_t handle) +{ + return ((handle != NULL) && (handle != INVALID_SOCKET)); +} + + +U_16 hysock_sockaddr_port (hysockaddr_t handle) +{ + if (((OSSOCKADDR *) & handle->addr)->sin_family == OS_AF_INET4) + { + return ((OSSOCKADDR *) & handle->addr)->sin_port; + } +#if defined(IPv6_FUNCTION_SUPPORT) + else + { + return ((OSSOCKADDR_IN6 *) & handle->addr)->sin6_port; + } +#endif + +} + +void setJavaIoFileDescriptorContents (JAVA_OBJECT fd, void *value) +{ + ((java_io_FileDescriptor*) fd)->fields.java_io_FileDescriptor.descriptor_ = (JAVA_ULONG) value; +} + +void* getJavaIoFileDescriptorContentsAsAPointer (JAVA_OBJECT fd) +{ + return (void*) ((java_io_FileDescriptor*) fd)->fields.java_io_FileDescriptor.descriptor_; +} + + +void netGetJavaNetInetAddressValue (JAVA_OBJECT anInetAddress, U_8* buffer, U_32* length) +{ + org_xmlvm_runtime_XMLVMArray* byte_array = ((java_net_InetAddress*) anInetAddress)->fields.java_net_InetAddress.ipaddress_; + *length = byte_array->fields.org_xmlvm_runtime_XMLVMArray.length_; + XMLVM_MEMCPY(buffer, byte_array->fields.org_xmlvm_runtime_XMLVMArray.array_, *length); +} + + +void netGetJavaNetInetAddressScopeId (JAVA_OBJECT anInetAddress, U_32* scope_id) +{ + if (XMLVM_ISA(anInetAddress, __CLASS_java_net_Inet6Address)) { + java_net_Inet6Address* addr = (java_net_Inet6Address*) anInetAddress; + *scope_id = addr->fields.java_net_Inet6Address.scope_id_; + } + else { + *scope_id = 0; + } +} + + +I_32 netGetSockAddr (JAVA_OBJECT fileDescriptor, hysockaddr_t sockaddrP, JAVA_BOOLEAN preferIPv6Addresses) +{ + I_32 result = 0; + hysocket_t socketP; + U_8 ipAddr[HYSOCK_INADDR6_LEN]; + memset (ipAddr, 0, HYSOCK_INADDR6_LEN); + + socketP = getJavaIoFileDescriptorContentsAsAPointer (fileDescriptor); + if (!hysock_socketIsValid (socketP)) + { + return HYPORT_ERROR_SOCKET_UNKNOWNSOCKET; + } + else + { + if (preferIPv6Addresses) + { + hysock_sockaddr_init6 (sockaddrP, ipAddr, HYSOCK_INADDR6_LEN, + HYADDR_FAMILY_UNSPEC, 0, 0, 0, socketP); + result = hysock_getsockname (socketP, sockaddrP); + } + else + { + hysock_sockaddr_init6 (sockaddrP, ipAddr, HYSOCK_INADDR_LEN, + HYADDR_FAMILY_AFINET4, 0, 0, 0, socketP); + result = hysock_getsockname (socketP, sockaddrP); + } + return result; + } +} + + +I_32 map_addr_family_Hy_to_OS (I_32 addr_family) +{ + switch (addr_family) + { + case HYADDR_FAMILY_AFINET4: + return OS_AF_INET4; + case HYADDR_FAMILY_AFINET6: + return OS_AF_INET6; + } + return OS_AF_UNSPEC; +} + + +static I_32 copy_hostent (OSHOSTENT * source, PortlibPTBuffers_t * ptBuffers) +{ + int h_len = strlen (source->h_name); + int total = 0; + int i = 0; + char *buffer; + OSHOSTENT *dest = &(*ptBuffers)->hostent; + /* add trailing NULL, and round off to nearest pointer size */ + h_len = (h_len + 1 + sizeof (void *)) & ~(sizeof (void *) - 1); + while (source->h_addr_list[i]) + i++; + total = h_len + ((i + 2) * sizeof (void *)) + (i * sizeof (U_32)); + if (!(*ptBuffers)->gethostBuffer || (*ptBuffers)->gethostBufferSize < total) + { + (*ptBuffers)->gethostBuffer = XMLVM_ATOMIC_MALLOC(total); + if (!(*ptBuffers)->gethostBuffer) + { + return HYPORT_ERROR_SOCKET_SYSTEMFULL; + } + (*ptBuffers)->gethostBufferSize = total; + } + buffer = (*ptBuffers)->gethostBuffer; + dest->h_name = buffer; + strcpy (buffer, source->h_name); + buffer += h_len; + dest->h_aliases = (void *) buffer; + *((void **) buffer) = NULL; + buffer += sizeof (void *); + dest->h_addrtype = source->h_addrtype; + dest->h_length = source->h_length; + dest->h_addr_list = (void *) buffer; + buffer += (i + 1) * sizeof (void *); + i = 0; + while (source->h_addr_list[i]) + { + dest->h_addr_list[i] = (void *) buffer; + *((U_32 *) buffer) = *((U_32 *) source->h_addr_list[i]); + buffer += sizeof (U_32); + i++; + } + dest->h_addr_list[i] = NULL; + + return 0; +} + + +JAVA_OBJECT newJavaByteArray (JAVA_ARRAY_BYTE* bytes, JAVA_INT length) +{ + JAVA_OBJECT result = XMLVMArray_createSingleDimensionWithData(__CLASS_byte_1ARRAY, (int) length, bytes); + return result; +} + + +JAVA_OBJECT newJavaNetInetAddressGenericBS (JAVA_ARRAY_BYTE* address, U_32 length, + const char* hostName, U_32 scope_id) +{ + org_xmlvm_runtime_XMLVMArray* byte_array; + java_lang_String* aString; + BOOLEAN isAnyAddress = 1; + static JAVA_ARRAY_BYTE IPv4ANY[4] = { 0, 0, 0, 0 }; + static JAVA_ARRAY_BYTE IPv6ANY[16] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; + U_32 i = 0; + JAVA_OBJECT result = JAVA_NULL; + + aString = xmlvm_create_java_string(hostName); + + /* check if the address being returned is the any address. If so we need to check the prefer flags to see how it should be returned + (either as IPv4 Any or IPv6 ANY) */ + + if (harmony_supports_ipv6 ()) + { + /* Figure out if it is the any address */ + for (i = 0; i < length; i++) + { + if (address[i] != 0) + { + isAnyAddress = 0; + break; + } + } + } + else + { + /* just do what we used to do without checking */ + isAnyAddress = 0; + } + + /* If it is the any address then set up to return appropriately based on the flags */ + if (isAnyAddress) + { + if ((!preferIPv4Stack ()) && (preferIPv6Addresses ())) + { + if ((byte_array = + newJavaByteArray (IPv6ANY, sizeof (IPv6ANY))) == NULL) + { + return NULL; + } + } + else + { + if ((byte_array = + newJavaByteArray (IPv4ANY, sizeof (IPv4ANY))) == NULL) + { + return NULL; + } + } + } + else + { + /* not any so just set up to return the address normally */ + if ((byte_array = newJavaByteArray (address, length)) == NULL) + { + return NULL; + } + } + + if (harmony_supports_ipv6 ()) + { +#ifdef SUPPORTS_SCOPED_GETBYADDR + if (scope_id != 0) { + result = java_net_InetAddress_getByAddress___java_lang_String_byte_1ARRAY_int(aString, byte_array, scope_id); + } + else { +#endif + result = java_net_InetAddress_getByAddress___java_lang_String_byte_1ARRAY(aString, byte_array); + +#ifdef SUPPORTS_SCOPED_GETBYADDR + } +#endif + + } + else + { + result = __NEW_java_net_InetAddress(); + java_net_InetAddress___INIT____byte_1ARRAY_java_lang_String(result, byte_array, aString); + //return result; + } + + return result; +} + + + +I_32 hysock_socket (hysocket_t * handle, I_32 family, I_32 socktype, I_32 protocol) +{ + I_32 rc = 0; + int sock; + + /* initialize return hysocket_t to invalid socket */ + *handle = INVALID_SOCKET; + + if (protocol != HYSOCK_DEFPROTOCOL) + { + rc = HYPORT_ERROR_SOCKET_BADPROTO; + } + else if ((socktype != HYSOCK_STREAM) && (socktype != HYSOCK_DGRAM)) + { + rc = HYPORT_ERROR_SOCKET_BADTYPE; + } + else if (family != HYADDR_FAMILY_AFINET6 && family != HYADDR_FAMILY_AFINET4 + && family != HYADDR_FAMILY_UNSPEC) + { + rc = HYPORT_ERROR_SOCKET_BADAF; + } + + if (rc == 0) + { + +#if defined(IPv6_FUNCTION_SUPPORT) + if (family != HYADDR_FAMILY_AFINET4) + { + family = HYADDR_FAMILY_AFINET6; + sock = + socket (AF_INET6, + ((socktype == HYSOCK_STREAM) ? SOCK_STREAM : SOCK_DGRAM), + 0); + if (sock < 0) + { + rc = errno; + HYSOCKDEBUG ("\n", rc); + return portLibrary->error_set_last_error (portLibrary, rc, + findError (rc)); + } + } + else + { +#endif + + sock = + socket (AF_INET, + ((socktype == HYSOCK_STREAM) ? SOCK_STREAM : SOCK_DGRAM), + 0); + + if (sock < 0) + { + rc = errno; + return hyerror_set_last_error(rc, findError(rc)); + } + +#if defined(IPv6_FUNCTION_SUPPORT) + } +#endif + + } + + if (rc == 0) + { + /*Tag this descriptor as being non-inheritable */ + I_32 fdflags = fcntl (sock, F_GETFD, 0); + fcntl (sock, F_SETFD, fdflags | FD_CLOEXEC); + + /* set up the socket structure */ + *handle = XMLVM_ATOMIC_MALLOC(sizeof (struct hysocket_struct)); + +#if (defined(VALIDATE_ALLOCATIONS)) + if (*handle == NULL) + { + close (sock); + *handle = INVALID_SOCKET; + return HYPORT_ERROR_SOCKET_NOBUFFERS; + } +#endif + + (*handle)->sock = sock; + (*handle)->family = family; + } + return rc; +} + + +I_32 hysock_sockaddr_init6 (hysockaddr_t handle, U_8 * addr, I_32 addrlength, + I_16 family, U_16 nPort, U_32 flowinfo, U_32 scope_id, + hysocket_t sock) +{ + OSSOCKADDR *sockaddr; +#if defined(IPv6_FUNCTION_SUPPORT) + OSSOCKADDR_IN6 *sockaddr_6; +#endif + + XMLVM_BZERO(handle, sizeof (struct hysockaddr_struct)); + + if (family == HYADDR_FAMILY_AFINET4) + { +#if defined(IPv6_FUNCTION_SUPPORT) + if (hysock_socketIsValid (portLibrary, sock) && + (((struct hysocket_struct *) sock)->family == + HYADDR_FAMILY_AFINET6)) + { + /* to talk IPv4 on an IPv6 socket we need to map the IPv4 address to an IPv6 format. If mapAddress is true then we do this */ + sockaddr_6 = (OSSOCKADDR_IN6 *) & handle->addr; + memset (sockaddr_6->sin6_addr.s6_addr, 0, 16); + memcpy (&(sockaddr_6->sin6_addr.s6_addr[12]), addr, addrlength); + /* do a check if it is the any address. we know the top 4 bytes of sockaddr_6->sin6_addr.s6_addr are 0's as we just cleared the, + so we use them to do the check */ + if (memcmp (sockaddr_6->sin6_addr.s6_addr, addr, addrlength) != 0) + { + /* if it is the any address then use the IPv6 any address */ + sockaddr_6->sin6_addr.s6_addr[10] = 0xFF; + sockaddr_6->sin6_addr.s6_addr[11] = 0xFF; + } + sockaddr_6->sin6_port = nPort; + sockaddr_6->sin6_family = OS_AF_INET6; + sockaddr_6->sin6_scope_id = scope_id; + sockaddr_6->sin6_flowinfo = htonl (flowinfo); +#if defined(FREEBSD) + sockaddr_6->sin6_len = sizeof(OSSOCKADDR_IN6); +#endif + } + else + { +#endif + + /* just initialize the IPv4 address as is as it will be used with an IPv4 Socket */ + sockaddr = (OSSOCKADDR *) & handle->addr; + XMLVM_MEMCPY (&sockaddr->sin_addr.s_addr, addr, addrlength); + sockaddr->sin_port = nPort; + sockaddr->sin_family = OS_AF_INET4; +#if defined(FREEBSD) + sockaddr->sin_len = sizeof(OSSOCKADDR); +#endif + +#if defined(IPv6_FUNCTION_SUPPORT) + } +#endif + + } +#if defined(IPv6_FUNCTION_SUPPORT) + else if (family == HYADDR_FAMILY_AFINET6) + { + sockaddr_6 = (OSSOCKADDR_IN6 *) & handle->addr; + memcpy (&sockaddr_6->sin6_addr.s6_addr, addr, addrlength); + sockaddr_6->sin6_port = nPort; + sockaddr_6->sin6_family = OS_AF_INET6; + sockaddr_6->sin6_scope_id = scope_id; + sockaddr_6->sin6_flowinfo = htonl (flowinfo); +#if defined(SIN6_LEN) + sockaddr_6->sin6_len = sizeof(OSSOCKADDR_IN6); +#endif + } +#endif + + else + { + sockaddr = (OSSOCKADDR *) & handle->addr; + memcpy (&sockaddr->sin_addr.s_addr, addr, HYSOCK_INADDR_LEN); + sockaddr->sin_port = nPort; + sockaddr->sin_family = map_addr_family_Hy_to_OS (family); +#if defined(FREEBSD) + sockaddr->sin_len = sizeof(OSSOCKADDR); +#endif + } + + return 0; +} + + +I_32 hysock_getnameinfo (hysockaddr_t in_addr, I_32 sockaddr_size, char *name, + I_32 name_length, int flags) +{ + + /* If we have the IPv6 functions available we will call them, otherwise we'll call the IPv4 function */ +#if defined(IPv6_FUNCTION_SUPPORT) + int rc = 0; + rc = + getnameinfo ((OSADDR *) & in_addr->addr, sizeof (in_addr->addr), name, + name_length, NULL, 0, flags); + if (rc != 0) + { + rc = errno; + HYSOCKDEBUG ("\n", rc); + return portLibrary->error_set_last_error (portLibrary, rc, + findError (rc)); + } + return 0; +#else /* IPv6_FUNCTION_SUPPORT */ +#if !HOSTENT_DATA_R + OSHOSTENT *result; +#endif + +#if GLIBC_R||OTHER_R + BOOLEAN allocBuffer = FALSE; +#endif + int herr = 0; + int i = 0; + int rc = 0; + int length; + OSSOCKADDR *addr; +#if HOSTENT_DATA_R||GLIBC_R||OTHER_R||NO_R + PortlibPTBuffers_t ptBuffers; +#endif /* HOSTENT_DATA_R || GLIBC_R || OTHER_R || NO_R */ + addr = (OSSOCKADDR *) & in_addr->addr; + if (addr->sin_family == OS_AF_INET4) + { + length = 4; + } + else + { + length = 16; + } +#if HOSTENT_DATA_R||GLIBC_R||OTHER_R||NO_R + ptBuffers = hyport_tls_get (); + if (NULL == ptBuffers) + { + return HYPORT_ERROR_SOCKET_SYSTEMFULL; + } +#define hostentBuffer (&ptBuffers->hostent) +#endif /* HOSTENT_DATA_R || GLIBC_R || OTHER_R || NO_R */ + /* one of several threadsafe gethostbyaddr calls must be made depending on the current platform */ + /* if there is a transient error (HYPORT_ERROR_SOCKET_UNIX_TRYAGAIN), try making the call again */ + for (i = 0; i < MAX_RETRIES; i++) + { +#if HOSTENT_DATA_R +#define dataBuffer (ptBuffers->hostent_data) + if (!dataBuffer) + { + dataBuffer = + portLibrary->mem_allocate_memory (portLibrary, + sizeof (OSHOSTENT_DATA)); + if (!dataBuffer) + { + return HYPORT_ERROR_SOCKET_SYSTEMFULL; + } + } + herr = + gethostbyaddr_r (&addr->sin_addr, length, addr->sin_family, + hostentBuffer, dataBuffer); +#undef dataBuffer +#elif ORIGINAL_R || NO_R +#if NO_R + MUTEX_ENTER (hostentLock); +#endif + result = gethostbyaddr (&addr->sin_addr, length, addr->sin_family); +#if NO_R + if (result) + { + herr = copy_hostent (result, &ptBuffers); + } + MUTEX_EXIT (hostentLock); + if (herr != 0) + { + return herr; + } +#endif + herr = h_errno; +#elif GLIBC_R || OTHER_R +#define buffer (ptBuffers->gethostBuffer) +#define bufferSize (ptBuffers->gethostBufferSize) + if (!buffer) + { + bufferSize = GET_HOST_BUFFER_SIZE; + } + while (TRUE) + { + if (allocBuffer == TRUE || !buffer) + { + /* The buffer is allocated bufferSize + EXTRA_SPACE, while gethostby*_r is only aware of bufferSize + * because there seems to be a bug on Linux 386 where gethostbyname_r writes past the end of the + * buffer. This bug has not been observed on other platforms, but EXTRA_SPACE is added anyway as a precaution.*/ + buffer = XMLVM_ATOMIC_MALLOC(bufferSize + EXTRA_SPACE); + if (!buffer) + { + return HYPORT_ERROR_SOCKET_SYSTEMFULL; + } + allocBuffer = FALSE; + } +#if GLIBC_R + gethostbyaddr_r ((char *) &addr->sin_addr, length, addr->sin_family, + hostentBuffer, buffer, bufferSize, &result, &herr); +#elif OTHER_R + result = + gethostbyaddr_r ((char *) &addr->sin_addr, length, + addr->sin_family, hostentBuffer, buffer, + bufferSize, &herr); +#endif /* GLIBC_R */ + /* allocate more space if the buffer is too small */ + if (errno == ERANGE || herr == ERANGE) + { + XMLVM_FREE(buffer); + bufferSize *= 2; + allocBuffer = TRUE; + } + else + { + break; + } + } +#undef buffer +#undef bufferSize +#endif + if (herr != HYPORT_ERROR_SOCKET_UNIX_TRYAGAIN) + { + break; + } + } +#if HOSTENT_DATA_R + if (herr != 0) + { + herr = h_errno; + HYSOCKDEBUGH ("\n", herr); + return portLibrary->error_set_last_error (portLibrary, herr, + findHostError (herr)); + } +#else + if (result == NULL) + { + HYSOCKDEBUGH ("\n", herr); + return hyerror_set_last_error(herr, findError(herr)); + } +#endif + else + { + memset (name, 0, sizeof (char) * name_length); +#if HOSTENT_DATA_R||NO_R + strcpy (name, hostentBuffer->h_name); +#else + strcpy (name, result->h_name); +#endif + } +#if HOSTENT_DATA_R||GLIBC_R||OTHER_R +#undef hostentBuffer +#endif /*HOSTENT_DATA_R || GLIBC_R || OTHER_R */ + return 0; +#endif /* IPv6_FUNCTION_SUPPORT */ + +} + + +I_32 hysock_bind (hysocket_t sock, hysockaddr_t addr) +{ + I_32 rc = 0; + I_32 length = getAddrLength(addr); + + if (bind + (SOCKET_CAST (sock), (struct sockaddr *) &addr->addr, length) < 0) + { + rc = errno; + rc = hyerror_set_last_error(rc, HYPORT_ERROR_SOCKET_ADDRNOTAVAIL); + } + return rc; +} + + +I_32 hysock_getsockname (hysocket_t handle, hysockaddr_t addrHandle) +{ + socklen_t addrlen = sizeof (addrHandle->addr); +#ifndef XMLVM_ASM_JS + if (getsockname + (SOCKET_CAST (handle), (struct sockaddr *) &addrHandle->addr, + &addrlen) != 0) + { + I_32 err = errno; + return hyerror_set_last_error(err, findError(err)); + } +#endif + return 0; +} + + +I_32 hysock_connect (hysocket_t sock, hysockaddr_t addr) +{ + I_32 rc = 0; + I_32 length = getAddrLength(addr); + + if (connect + (SOCKET_CAST (sock), (struct sockaddr *) &addr->addr, length) < 0) + { + rc = errno; + rc = hyerror_set_last_error(rc, HYPORT_ERROR_SOCKET_OPFAILED); + } + return rc; +} + + +I_32 hysock_write (hysocket_t sock, U_8 * buf, I_32 nbyte, I_32 flags) +{ + I_32 bytesSent = 0; + + bytesSent = send (SOCKET_CAST (sock), buf, nbyte, flags); + + if (-1 == bytesSent) + { + I_32 err = errno; + return hyerror_set_last_error(err, findError(err)); + } + else + { + return bytesSent; + } +} + + +I_32 hysock_read (hysocket_t sock, U_8 * buf, I_32 nbyte, I_32 flags) +{ + I_32 bytesRec = 0; + + bytesRec = recv (SOCKET_CAST (sock), buf, nbyte, flags); + if (-1 == bytesRec) { + I_32 err = errno; + return hyerror_set_last_error(err, findError(err)); + } else { + return bytesRec; + } +} + + +I_32 hysock_close (hysocket_t * sock) +{ + I_32 rc = 0; + + if (*sock == INVALID_SOCKET) { + return hyerror_set_last_error(HYPORT_ERROR_SOCKET_UNIX_EBADF, HYPORT_ERROR_SOCKET_BADSOCKET); + } + + if (close (SOCKET_CAST (*sock)) < 0) { + rc = errno; + rc = hyerror_set_last_error(rc, HYPORT_ERROR_SOCKET_BADSOCKET); + } + + *sock = INVALID_SOCKET; + return rc; +} + + + +I_32 hysock_listen (hysocket_t sock, I_32 backlog) +{ + I_32 rc = 0; + + if (listen (SOCKET_CAST (sock), backlog) < 0) + { + rc = errno; + HYSOCKDEBUG ("\n", rc); + rc = hyerror_set_last_error(rc, HYPORT_ERROR_SOCKET_OPFAILED); + } + return rc; +} + + +I_32 hysock_accept (hysocket_t serverSock, hysockaddr_t addrHandle, hysocket_t * sockHandle) +{ + + +#if defined(LINUX) +#define ACCEPTCAST (socklen_t *) +#else +#define ACCEPTCAST +#endif + + I_32 rc = 0; + int sc; + socklen_t fromlen = sizeof (addrHandle->addr); + + *sockHandle = INVALID_SOCKET; + + sc = + accept (SOCKET_CAST (serverSock), (struct sockaddr *) &addrHandle->addr, + ACCEPTCAST & fromlen); + if (sc < 0) + { + rc = hyerror_set_last_error(rc, HYPORT_ERROR_SOCKET_ADDRNOTAVAIL); + } + + if (rc == 0) + { + //*sockHandle = portLibrary->mem_allocate_memory (portLibrary, sizeof (struct hysocket_struct)); + *sockHandle = XMLVM_ATOMIC_MALLOC(sizeof (struct hysocket_struct)); +#if (defined(VALIDATE_ALLOCATIONS)) + if (*sockHandle == NULL) + { + close (sc); + *sockHandle = INVALID_SOCKET; + return HYPORT_ERROR_SOCKET_NOBUFFERS; + } +#endif + + SOCKET_CAST (*sockHandle) = sc; + (*sockHandle)->family = serverSock->family; + } + return rc; +} + + + +I_32 hysock_timeval_init (U_32 secTime, U_32 uSecTime, hytimeval_t timeP) +{ + memset (timeP, 0, sizeof (struct hytimeval_struct)); + timeP->time.tv_sec = secTime; + timeP->time.tv_usec = uSecTime; + + return 0; +} + + + +I_32 hysock_fdset_init (hysocket_t socketP) +{ + PortlibPTBuffers_t ptBuffers; + hyfdset_t fdset; + + ptBuffers = hyport_tls_get (); + if (NULL == ptBuffers) + { + return HYPORT_ERROR_SOCKET_SYSTEMFULL; + } + + if (NULL == ptBuffers->fdset) + { + ptBuffers->fdset = XMLVM_ATOMIC_MALLOC(sizeof (struct hyfdset_struct)); + + if (NULL == ptBuffers->fdset) + { + return HYPORT_ERROR_SOCKET_SYSTEMFULL; + } + } + fdset = ptBuffers->fdset; + memset (fdset, 0, sizeof (struct hyfdset_struct)); + + FD_ZERO (&fdset->handle); + FD_SET (SOCKET_CAST (socketP), &fdset->handle); + return 0; +} + +I_32 hysock_fdset_size (hysocket_t handle) +{ + return SOCKET_CAST (handle) + 1; +} + + +I_32 hysock_select (I_32 nfds, hyfdset_t readfds, hyfdset_t writefds, hyfdset_t exceptfds, hytimeval_t timeout) +{ + I_32 rc = 0; + I_32 result = 0; + + if (nfds >= FD_SETSIZE) { + rc = hyerror_set_last_error(rc, HYPORT_ERROR_SOCKET_UNIX_EINVAL); + return -1; + } + result = select (nfds, + readfds == NULL ? NULL : &readfds->handle, + writefds == NULL ? NULL : &writefds->handle, + exceptfds == NULL ? NULL : &exceptfds->handle, + timeout == NULL ? NULL : &timeout->time); + + if (result == -1) { + HYSOCKDEBUG ("