jfrijters
a8d63a772c
Replaced usage of BootstrapClassLoader with actual class loader in static compiler.
2008-08-14 05:42:43 +00:00
jfrijters
379dd8bee3
- Added ghost array tagging to be able to report the instantiated class (instead of object[] which is allocated instead).
...
- Fixed ldc <class> where <class> is a ghost array.
- Fixed bug in instanceof <class> where <class> is a Serializable[].
2008-08-06 05:25:18 +00:00
jfrijters
a03de46810
Don't generate unneeded GC.KeepAlive() in constructor for Exception types that don't have a finalize() method.
2008-06-24 14:47:45 +00:00
jfrijters
b1b3f8b4f5
- Renamed CountingILGenerator to CodeEmitter.
...
- Renamed CountingLabel to CodeEmitterLabel.
2008-06-03 12:10:07 +00:00
jfrijters
36aa7b1a6c
Removed CodeEmitter abstract base class.
2008-06-03 09:17:31 +00:00
jfrijters
cbeeb20318
Marked all static classes as static.
2008-06-03 07:13:49 +00:00
jfrijters
c5dcd8dc53
Refactored finish state/methods from JavaTypeImpl into FinishContext.
2008-06-03 06:52:30 +00:00
jfrijters
7ee8a8b83b
Renamed invokespecial stub to follow the common convention for not-visible-from-java members.
2008-06-02 06:28:29 +00:00
jfrijters
5e4182edb5
- Implemented CallerID infrastructure.
...
- Marked various methods with HasCallerID annotation.
- Rewrote some methods to explicitly use CallerID.
2008-05-31 15:20:29 +00:00
jfrijters
aa0bdc2280
Pass caller method instead of type to intrinsic infrastructure.
2008-05-31 10:22:37 +00:00
jfrijters
29f84a8850
- added more efficient float/double to/from int/long bits converters
...
- made Double.doubleToRawLongBits/longBitsToDouble and Float.floatToRawIntBits/intBitsToFloat intrinsics
- generalized the intrinsics support
2008-05-09 05:57:55 +00:00
jfrijters
828a4de95d
Replaced notion of DynamicOnly types with Fake types. Fake types are implemented as generic type instances and can have DynamicOnly methods.
2008-03-03 07:05:19 +00:00
jfrijters
d04c813e3f
- Added -removeassertions optimization option to ikvmc.
...
- Added -removeassertions to IKVM.OpenJDK.ClassLibrary.dll build.
- Don't look at unreachable instructions when determining if a method needs a line number table.
2008-02-27 09:04:19 +00:00
jfrijters
f238214cfa
- Optimized codegen for lcmp, fcmp<x>, dcmp<x> and shift opcodes.
...
- Moved temp local handling to CodeEmitter.
2008-02-15 15:32:51 +00:00
jfrijters
70aa740f1c
Intrinsified AtomicReferenceFieldUpdater.newUpdater().
2007-12-28 10:23:46 +00:00
jfrijters
3072c89696
- Removed .NET 1.1 specific code
...
- Removed conditional compilation of .NET 2.0 specific code
2007-11-26 08:38:38 +00:00
jfrijters
36ef70f507
Fix to make sure that a ghost interface method call always goes thru the target reference wrapping path.
2007-11-06 08:51:08 +00:00
jfrijters
d20ce68f75
Implemented optimized reflection/serialization when running on .NET 2.0 (by generating DynamicMethods instead of using .NET reflection).
2007-09-24 11:57:00 +00:00
jfrijters
4ddfd2b12d
Enabled workaround for x64 tail call optimization in .NET 1.1 builds.
2007-08-29 06:23:47 +00:00
jfrijters
dfae737d84
Don't add KeepAlive to constructors of objects that don't have finalizers and extend cli.System.Object.
2007-08-22 11:48:20 +00:00
jfrijters
255c73356c
Implemented improved floating point compliance.
2007-08-08 13:51:55 +00:00
jfrijters
8adc166579
Made LVT handling more robust against bogus entries.
2007-06-21 12:04:27 +00:00
jfrijters
c1016c5406
Added support for locally (i.e. per method) replacing method calls with a custom CIL sequence.
2007-06-12 11:45:23 +00:00
jfrijters
5d8ada6dc0
Implemented ikvmc optimization for string literals that are only used to call toCharArray() on.
2007-06-12 09:48:36 +00:00
jfrijters
d5ffe2a830
Optimized lcmp, fcmpl, fcmpg, dcmpl and dcmpg by Dennis Ushakov.
2007-05-25 05:56:24 +00:00
jfrijters
c01a3fb191
Removed workaround for x64 CLR JIT bug from sun.misc.FloatingDecimal and added generic workaround to the compiler.
2007-05-11 13:42:47 +00:00
jfrijters
783d987129
Implemented JSR 133 rule that says that finalize cannot run before constructor is finished.
2007-05-04 12:41:45 +00:00
jfrijters
1829cab477
Fixed verifier/compiler to support dup_x2 form 2. Found by Derby test suite. Thanks to Albert Strasheim.
2007-05-04 06:41:46 +00:00
jfrijters
939e182ff9
*** empty log message ***
2007-01-04 12:54:10 +00:00
jfrijters
b78073fa54
*** empty log message ***
2006-11-27 07:39:30 +00:00
jfrijters
6652d77a73
*** empty log message ***
2006-11-20 09:21:38 +00:00
jfrijters
7f0d951c64
*** empty log message ***
2006-08-29 06:28:34 +00:00
jfrijters
2b61aebcfa
*** empty log message ***
2006-08-26 13:00:50 +00:00
jfrijters
c3023591a7
*** empty log message ***
2006-08-21 06:21:27 +00:00
jfrijters
a6f7f9c232
*** empty log message ***
2006-08-21 05:15:51 +00:00
jfrijters
4a41b367bf
*** empty log message ***
2006-08-12 07:43:34 +00:00
jfrijters
c5a3ee90b3
*** empty log message ***
2006-08-06 09:27:20 +00:00
jfrijters
219578c094
*** empty log message ***
2006-07-28 11:04:21 +00:00
jfrijters
29ba470d78
*** empty log message ***
2006-07-26 14:16:52 +00:00
jfrijters
e0970786ec
*** empty log message ***
2006-07-18 07:38:24 +00:00
jfrijters
f28eae1d7c
*** empty log message ***
2006-07-06 13:53:51 +00:00
jfrijters
323fa284ca
*** empty log message ***
2006-05-04 08:09:56 +00:00
jfrijters
3edcdc642f
*** empty log message ***
2006-05-03 08:52:52 +00:00
jfrijters
5b0dcf1146
*** empty log message ***
2006-04-20 13:20:57 +00:00
jfrijters
38cd4ad824
*** empty log message ***
2006-04-17 08:33:49 +00:00
jfrijters
2e55ff13c6
*** empty log message ***
2006-04-11 14:59:43 +00:00
jfrijters
b21622b91c
*** empty log message ***
2006-04-11 12:05:24 +00:00
jfrijters
cb926ea086
*** empty log message ***
2006-04-05 08:18:58 +00:00
jfrijters
6e8e121040
*** empty log message ***
2006-03-27 07:59:34 +00:00
jfrijters
c475ce7bdb
*** empty log message ***
2006-02-22 14:44:07 +00:00