Граф коммитов

98 Коммитов

Автор SHA1 Сообщение Дата
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