Andreas Gal
|
2f4d32f420
|
implement threading better
|
2014-07-27 23:39:41 -07:00 |
Andreas Gal
|
903f06b04d
|
fix wide opcode handling
|
2014-07-27 21:51:08 -07:00 |
Andreas Gal
|
cf318d6da1
|
add support for Mauve-style testlets, and fix interface cast check and assigning null to an array
|
2014-07-26 14:18:44 -07:00 |
Andreas Gal
|
d394243a8a
|
better locking for class intialization
|
2014-07-26 11:42:02 -07:00 |
Andreas Gal
|
e7334a29e2
|
add debug code and move all but actual clinit call into ClassInfo constructor
|
2014-07-25 20:14:19 -07:00 |
Andreas Gal
|
600324794d
|
assorted fixes to make TestThread work
|
2014-07-25 17:54:34 -07:00 |
Andreas Gal
|
c761251cbc
|
make all tests pass again
|
2014-07-25 15:06:21 -07:00 |
Andreas Gal
|
2b48b809b0
|
pop this in Runtime native methods
|
2014-07-25 13:42:44 -07:00 |
Andreas Gal
|
a976bfe339
|
fix synthetic method code
|
2014-07-25 13:23:10 -07:00 |
Andreas Gal
|
72f91a6a1a
|
big refactoring to eliminate nested interpreter loops
|
2014-07-25 13:06:48 -07:00 |
Andreas Gal
|
5f1e87b04a
|
remove callback pattern
|
2014-07-24 00:21:59 -07:00 |
Andreas Gal
|
3ea4822dc0
|
properly chain all initClass calls from vm
|
2014-07-22 15:06:56 -07:00 |
Andreas Gal
|
44b74a7462
|
start properly chaning initClass
|
2014-07-22 15:04:46 -07:00 |
Andreas Gal
|
f0205086a5
|
don't do context switches until we properly chain invocations
|
2014-07-22 14:38:36 -07:00 |
Andreas Gal
|
697d6f14d3
|
move initClass to frame
|
2014-07-21 02:04:14 -07:00 |
Andreas Gal
|
3ffc368260
|
move newException onto frame
|
2014-07-21 02:01:06 -07:00 |
Andreas Gal
|
f4c46b933d
|
move invokeConstructor and newString onto frame
|
2014-07-21 01:50:36 -07:00 |
Andreas Gal
|
a80ad600fd
|
use bind instead of a closure
|
2014-07-21 00:28:37 -07:00 |
Andreas Gal
|
5646fdba9c
|
fix monitor enter/leave
|
2014-07-21 00:27:22 -07:00 |
Andreas Gal
|
91428be4e3
|
implement synchronized methods
|
2014-07-20 23:14:21 -07:00 |
Andreas Gal
|
056979813e
|
implement monitorenter/leave
|
2014-07-20 22:46:25 -07:00 |
Andreas Gal
|
2e38af5114
|
eliminate thread variable in dispatch loop
|
2014-07-20 22:26:29 -07:00 |
Andreas Gal
|
db8f263702
|
support for actual multithreading
|
2014-07-20 22:24:07 -07:00 |
Andreas Gal
|
409685d5cb
|
cut the stack when delivering an exception
|
2014-07-20 21:59:43 -07:00 |
Andreas Gal
|
517bca78d8
|
newObject takes a classInfo object and no longer implicitly inits the class
|
2014-07-20 21:57:00 -07:00 |
Andreas Gal
|
d371434057
|
cleanup native method dispatch
|
2014-07-20 21:32:47 -07:00 |
Andreas Gal
|
1b3d71607d
|
flag whether class still needs initialization so we can bypass the initClass call
|
2014-07-20 21:17:08 -07:00 |
Andreas Gal
|
6109859fc7
|
implement rescheduling requests from within natives
|
2014-07-20 16:41:30 -07:00 |
Andreas Gal
|
1cce1794e6
|
factor out invokeConstructorWithString
|
2014-07-20 15:49:57 -07:00 |
Andreas Gal
|
2b24ecf72c
|
create exceptions on the current thread, not the main thread
|
2014-07-20 15:46:22 -07:00 |
Andreas Gal
|
c53c68007a
|
note current thread in frame in invoke path
|
2014-07-20 15:42:23 -07:00 |
Andreas Gal
|
8008918b51
|
move newException to classes from vm
|
2014-07-20 15:35:48 -07:00 |
Andreas Gal
|
e24bf99d08
|
changed my mind, move bootstrap code into classes
|
2014-07-20 15:16:02 -07:00 |
Andreas Gal
|
555f5df045
|
work on bootstrap code
|
2014-07-20 15:12:58 -07:00 |
Andreas Gal
|
25f81daf97
|
move bootstrap code into VM
|
2014-07-20 15:09:58 -07:00 |
Andreas Gal
|
2f64d56d27
|
inline get/setStaticField into vm
|
2014-07-20 09:56:34 -07:00 |
Andreas Gal
|
99e91f47e9
|
explicitly call initClass in invokeX
|
2014-07-20 09:50:21 -07:00 |
Andreas Gal
|
5f7b47bcd4
|
use fround to truncate to floats
|
2014-07-19 19:10:15 -07:00 |
Andreas Gal
|
d97033bf60
|
add the ability to yield to the event loop from the first level interpreter
|
2014-07-19 17:52:18 -07:00 |
Andreas Gal
|
c897a21b3d
|
fix access to inherited fields
|
2014-07-19 15:53:58 -07:00 |
Andreas Gal
|
637194834d
|
fix a bug in conditional ops
|
2014-07-19 13:20:55 -07:00 |
Andreas Gal
|
e1c685dba4
|
fix a bunch of corner cases around array type checking
|
2014-07-19 13:18:45 -07:00 |
Andreas Gal
|
76801f1c66
|
throw proper internal exception when class can't be loaded and use native character conversion instead of CLDC's
|
2014-07-19 11:53:27 -07:00 |
Andreas Gal
|
1dfef4cba4
|
more work on strings and charsets
|
2014-07-19 11:20:46 -07:00 |
Andreas Gal
|
de7bc07375
|
fix lsub
|
2014-07-19 00:02:20 -07:00 |
Andreas Gal
|
705badbf1a
|
fix ifnull, getstatic of uninitialized fields
|
2014-07-18 23:44:03 -07:00 |
Andreas Gal
|
f90bca8af5
|
add a way to print backtraces and fix ifnull/ifnonnull
|
2014-07-18 23:24:26 -07:00 |
Andreas Gal
|
805adcfeef
|
call the constructor from newInstance
|
2014-07-18 21:56:30 -07:00 |
Andreas Gal
|
0ee8b5535f
|
known fail 2 tests
|
2014-07-18 21:01:36 -07:00 |
Andreas Gal
|
53acba74be
|
still trying to fix unicode handling
|
2014-07-18 19:20:21 -07:00 |
Andreas Gal
|
3645ff7328
|
more narrowly fix ISO-8859-1 issue
|
2014-07-18 18:49:15 -07:00 |
Andreas Gal
|
f59bebf2b3
|
fix dconst_0/1
|
2014-07-18 18:23:49 -07:00 |
Andreas Gal
|
671a6bfce9
|
fix a bunch of cases for TestDataInputStream
|
2014-07-18 18:09:55 -07:00 |
Andreas Gal
|
e2077ec3fe
|
add missing null pointer check in athrow
|
2014-07-18 14:50:26 -07:00 |
Andreas Gal
|
22bdd1bb5c
|
fix arraylength
|
2014-07-18 14:44:50 -07:00 |
Andreas Gal
|
8a313d5112
|
fix instanceof
|
2014-07-18 14:23:42 -07:00 |
Andreas Gal
|
3aaf2f87a2
|
implement checkcast and partial assignment testing (no interfaces yet)
|
2014-07-18 11:31:05 -07:00 |
Andreas Gal
|
a972b0b4ac
|
fix native calls that return a long value
|
2014-07-18 11:00:19 -07:00 |
Andreas Gal
|
0d47258201
|
fix anewarray, convert tests to harness
|
2014-07-18 08:59:29 -07:00 |
Andreas Gal
|
628313294d
|
more fixes for arrays
|
2014-07-18 02:00:10 -07:00 |
Andreas Gal
|
4835f3b2c7
|
fix a couple array handling bugs
|
2014-07-18 01:20:06 -07:00 |
Andreas Gal
|
fca3341fcf
|
fix multi dimensional array access
|
2014-07-17 23:51:11 -07:00 |
Andreas Gal
|
479b230700
|
fix invokeinterface
|
2014-07-17 23:36:43 -07:00 |
Andreas Gal
|
b6a04472c8
|
fixup exception handling
|
2014-07-17 23:02:28 -07:00 |
Andreas Gal
|
bae132fb3d
|
fixes to exception handling
|
2014-07-17 22:00:32 -07:00 |
Andreas Gal
|
c0d9e4bc44
|
no return value for popFrame
|
2014-07-17 21:08:40 -07:00 |
Andreas Gal
|
b559ad44b4
|
move exception handling into the interpreter
|
2014-07-17 18:51:01 -07:00 |
Andreas Gal
|
e08fc51bc3
|
move raiseException into interpreter
|
2014-07-17 18:46:46 -07:00 |
Andreas Gal
|
a204469c1d
|
move checkArrayAccess into interpreter
|
2014-07-17 18:44:49 -07:00 |
Andreas Gal
|
af6e510174
|
catch Java exceptions in native code in the interpreter
|
2014-07-17 18:42:11 -07:00 |
Andreas Gal
|
d5aba63cc5
|
add a way to track execution levels
|
2014-07-17 18:33:30 -07:00 |
Andreas Gal
|
6e573e428d
|
add a completion callback to invoke
|
2014-07-17 18:31:21 -07:00 |
Andreas Gal
|
1a1ef52405
|
add scheduling code
|
2014-07-17 17:58:07 -07:00 |
Andreas Gal
|
e0faaaff35
|
eliminate execute
|
2014-07-17 17:44:00 -07:00 |
Andreas Gal
|
de61a90322
|
cleanup invoke and move to VM
|
2014-07-17 17:39:25 -07:00 |
Andreas Gal
|
1f15d34660
|
factor out popFrame
|
2014-07-17 17:13:44 -07:00 |
Andreas Gal
|
41e07c5473
|
factor out pushFrame
|
2014-07-17 17:09:57 -07:00 |
Andreas Gal
|
26424b8c65
|
remain in the interpreter loop across method calls
|
2014-07-17 16:10:37 -07:00 |
Andreas Gal
|
6256dd31ff
|
use separate stack to invoke static initializers
|
2014-07-17 14:34:22 -07:00 |
Andreas Gal
|
be432d3fe4
|
inline invoke into the vm
|
2014-07-17 11:13:16 -07:00 |
Andreas Gal
|
391f2d314a
|
make class initialization more precise
|
2014-07-17 01:37:35 -07:00 |
Andreas Gal
|
d8b4d71369
|
fix long constants
|
2014-07-17 00:42:20 -07:00 |
Andreas Gal
|
8e92ca2f70
|
cleanup operand order
|
2014-07-16 23:05:38 -07:00 |
Andreas Gal
|
e029da987e
|
more fixes
|
2014-07-16 22:51:30 -07:00 |
Andreas Gal
|
399cc8bdac
|
more fixes for longs
|
2014-07-16 22:48:34 -07:00 |
Andreas Gal
|
3fff7d5d31
|
more fixes for longs
|
2014-07-16 22:47:50 -07:00 |
Andreas Gal
|
a9d7d8999d
|
a bunch of fixes for longs
|
2014-07-16 22:45:10 -07:00 |
Andreas Gal
|
442ae365d0
|
add more tests
|
2014-07-16 21:56:55 -07:00 |
Andreas Gal
|
25ef4e1b64
|
more tests
|
2014-07-16 20:53:54 -07:00 |
Andreas Gal
|
33289bfed0
|
fix ldc for integers
|
2014-07-16 20:40:36 -07:00 |
Andreas Gal
|
45b9e7a96a
|
rename gLong to long.js/Long
|
2014-07-16 14:13:18 -07:00 |
Andreas Gal
|
d30138f9d8
|
move interpreter into vm.js
|
2014-07-16 12:15:48 -07:00 |