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

228 Коммитов

Автор SHA1 Сообщение Дата
jfrijters 90951dcfca Added Castclass_impl opcode to cast remapped type instance to implementation type. 2009-03-16 05:40:41 +00:00
jfrijters 7ed63e8d01 Added (limited) support for defining instance fields on remapped types. The fields will only be available on the actual implementation types, not the types they shadow (accessing the field on a shadow instance is undefined, but for reflection we'll at least guarantee that an exception is thrown (current java.lang.IllegalArgumentException)). 2009-03-16 05:28:11 +00:00
jfrijters 9bac1d38f3 Roll back previous accidental commit. 2009-03-13 05:05:26 +00:00
jfrijters 58c9e59ee3 Added newarr opcode. 2009-03-13 04:59:21 +00:00
jfrijters 3ebf554517 Implemented ikvm.internal.ClassLiteral<T> to allow for more efficient class literals. 2009-03-04 05:47:18 +00:00
jfrijters d014ba2dff Add wildcard exports for assemblies referenced by non-main assembly in shared class loader group. 2009-02-22 08:18:37 +00:00
jfrijters 9803e4805b Use "ikvm.exports" map for "wildcard exports" (i.e. assemblies that are referenced and whose types are available thru the assembly class loader). 2009-02-19 08:12:05 +00:00
jfrijters a7e9899995 Guard against -sharedclassloader and -target:module being combined. 2009-02-19 08:07:26 +00:00
jfrijters 007b01b8a4 Renamed AssemblyClassLoader.Assembly to MainAssembly. 2009-02-10 07:27:25 +00:00
jfrijters 288a3fddbd Changed "InternalsVisibleTo" handling to be based on Assembly instead of class loader. 2009-02-10 07:24:30 +00:00
jfrijters 6d7c5cf05c Use AssemblyClassLoader.GetAssembly() to get the actual assembly the type lives in, instead of the main assembly of the group. 2009-02-05 06:59:11 +00:00
jfrijters 5eebd6f17b Added AssemblyClassLoader.GetAssembly(TypeWrapper) and changed most code that assumed that an AssemblyClassLoader represented a single assembly to use it. 2009-02-04 07:24:44 +00:00
jfrijters c84bf959b6 When loading a referenced assembly that is the main assemblye of a sharedclassloader group, also pre-load the other assemblies in the group. 2009-02-04 07:19:06 +00:00
jfrijters 77b20a1cb8 Renamed ClassLoadWrapper.GetType(string) to GetGenericTypeDefinition() to make clear what it is used for. 2009-02-04 07:10:59 +00:00
jfrijters 046fd5c3de - Fixed tracer to only add a trace listener in executables. Bug #2533728. 2009-02-04 07:03:30 +00:00
jfrijters 9b0ca3cce3 Include helpful exception message in ClassCastException generated for ghost array casts. 2009-01-06 09:47:59 +00:00
jfrijters 39b6ecfb4c Implemented shared class loader support. 2008-12-23 07:11:29 +00:00
jfrijters 9f7e72f62c Split EmitRemappedTypes into two passes, to allow map.xml to refer to types in other assemblies currently being compiled. 2008-12-23 06:14:42 +00:00
jfrijters f4c607b73d Added workaround for protected methods in remapped types (i.e. Object.close() and Object.finalize()) that will be necessary when splitting the class library into multiple assemblies. 2008-12-23 06:12:05 +00:00
jfrijters 94f4fe2ee2 Make ikvmc emit a warning whenever it emits code that throws a hard error. 2008-12-23 06:07:10 +00:00
jfrijters 92d2fb8373 Added support for the -recurse option to look inside a jar (or zip) file. 2008-12-22 06:20:47 +00:00
jfrijters 5c19c12d26 Enable multi target (when using IKVM.Reflection.Emit) and fix handling of some default options. 2008-11-19 05:42:06 +00:00
jfrijters 0220a2b985 Multi target performance fix. 2008-11-19 05:41:13 +00:00
jfrijters b958181492 Simplified creation of "fake" types. 2008-11-18 05:32:15 +00:00
jfrijters aea7c28387 Don't generate warnings for ikvmstub generated classes that are loaded. 2008-11-18 05:28:15 +00:00
jfrijters faffcc628c Integrated IKVM.Reflection.Emit in ikvmc. 2008-11-14 08:42:07 +00:00
jfrijters a81bc1a529 - Trim options read from response file (to allow indentation in multi target scenarios).
- Added more statistics to -time output.
2008-11-14 08:36:23 +00:00
jfrijters 172d448cbf Improved core assembly compilation detection to work in multi target scenarios. 2008-11-14 08:29:19 +00:00
jfrijters 02a2e9ab38 Fixed peer class loading hack. 2008-11-14 08:24:50 +00:00
jfrijters 5f04d79145 Added check for referencing non-existing constructor in map.xml 2008-11-14 07:55:53 +00:00
jfrijters 10cb0a21e9 Fixed .NET generic support regression introduced when ikvmc moved to not using the CompilerClassLoader as the system class loader. 2008-09-21 09:48:57 +00:00
jfrijters 684cdf651e Generified all collections. 2008-08-15 12:01:06 +00:00
jfrijters e83a33bc99 Removed unused per-type class caching. 2008-08-15 06:27:12 +00:00
jfrijters 23a3550851 Eleminated some (CompilerClassLoader) downcasts by making the type of the DynamicTypeWrapper.classLoader field depend on whether we're compiling the runtime or ikvmc. 2008-08-14 07:52:27 +00:00
jfrijters ac802b90cd Replaced mapxml Hashtable with three statically typed Dictionaries. 2008-08-14 07:42:56 +00:00
jfrijters 21c028191c Moved generated exception mapping code from ExceptionHelper to Throwable and made it slightly less hacky. 2008-08-14 06:51:32 +00:00
jfrijters a8d63a772c Replaced usage of BootstrapClassLoader with actual class loader in static compiler. 2008-08-14 05:42:43 +00:00
jfrijters b59d8d4107 Added multi target support to ikvmc (although it is currently disabled, because of a showstopper .NET Ref.Emit bug). 2008-08-13 13:04:47 +00:00
jfrijters 0ddb43d120 Replaced explicit usage of System.Reflection.Emit types with "using System.Reflection.Emit;" to make switching to Cecil easier. 2008-08-12 14:45:23 +00:00
jfrijters 3232aa6480 Switched to using generic collections. 2008-08-08 06:26:37 +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 c553fa6776 Fix for #2001799. 2008-06-24 15:01:45 +00:00
jfrijters 5fdc3d50e0 Fix for #2001802 contributed by Andy Malakov. 2008-06-24 14:49:12 +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 3039915845 Bug fix: the key file should not be opened for read/write access. 2008-05-20 07:19:12 +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 0aa8ff7705 Create the generic delegate type before compiling the rest of the core class library, to allow the core class library to use delegates. 2008-04-21 04:33:22 +00:00
jfrijters 1b4b6a238c Call suppressFillInStackTrace before instantiating a remapped exception in the remap implementation method. 2008-04-21 04:18:32 +00:00
jfrijters 9a945fa059 Don't skip zero length resource files. 2008-03-14 09:13:59 +00:00