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

109 Коммитов

Автор SHA1 Сообщение Дата
jfrijters b9ceecc098 Removed EmitHelper class and moved its methods into CodeEmitter. 2009-08-31 05:02:34 +00:00
jfrijters db9c796794 Removed vestigial compact framework support. 2009-08-28 06:47:16 +00:00
jfrijters 28e5b235d7 Implemented optimization to remove .cctor when it is empty (and the class isn't serializable or has a serialVersionUID). 2009-07-16 06:26:47 +00:00
jfrijters 46811ce9ec Use LazyEmitPop() to annihilate constants. 2009-07-14 07:59:42 +00:00
jfrijters b75fb48ee8 Implemented class gc (available only when compiling on .NET 4.0). 2009-06-02 07:38:21 +00:00
jfrijters d4dc5a6479 Resolve ConstructorBuilder before invoking. 2009-03-08 06:21:14 +00:00
jfrijters 14a67e3bb4 - Added virtual method to MethodWrapper to do custom linking (i.e. defining the method).
- Added the notion of Java methods that don't have a corresponding CLR method (currently only for delegate constructors).
2009-03-06 06:43:40 +00:00
jfrijters 8224903a75 Added a helper method to invoke AccessController.doPrivileged() and pass in explicit CallerID. 2009-02-27 06:05:22 +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 924307a099 Unloadable types in signatures are represented by Object, so they don't need to cause the member to be treated as inaccessible. 2009-02-04 06:50:22 +00:00
jfrijters e1658c03c4 Java allows public/protected members to expose package private classes, but when the caller isn't in the same assembly (or the assembly grants InternalsVisibleTo access to the caller) the CLR will disallow, so we have to support this scenario (currently by simply disallow the access at the Java level). 2008-12-22 05:52:49 +00:00
jfrijters faffcc628c Integrated IKVM.Reflection.Emit in ikvmc. 2008-11-14 08:42:07 +00:00
jfrijters aaefc51c9b Removed last parts of old-style reflection. 2008-08-25 04:16:59 +00:00
jfrijters 99d296d322 - Removed "slow" reflection.
- Removed MethodWrapper.Invoke().
- Removed FieldWrapper.GetValue()/SetValue().
- Added ICustomInvoke for the few MethodWrappers that still require custom reflection invocation.
2008-08-21 06:53:48 +00:00
jfrijters 6bce58f1bc Changed JNI reflection to be based on Java reflection (where possible). 2008-08-21 06:40:22 +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 b024380b15 ResolveField() is not needed in ikvmc. 2008-08-12 14:51:14 +00:00
jfrijters 16a65985af Removed support for building with GNU Classpath class library. 2008-08-06 12:22:06 +00:00
jfrijters b1b3f8b4f5 - Renamed CountingILGenerator to CodeEmitter.
- Renamed CountingLabel to CodeEmitterLabel.
2008-06-03 12:10:07 +00:00
jfrijters cbeeb20318 Marked all static classes as static. 2008-06-03 07:13:49 +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 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 90caa038dd Added support for turning Java fields into .NET properties with an annotation. 2008-04-14 05:13:41 +00:00
jfrijters c591de8029 Ripped out annotation/constant pool support that is no longer needed. 2008-03-03 08:28:22 +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 6fff8e1ac0 Partial Trust fixes:
- Added accessor methods for "slot" to Method & Constructor.
- Implemented System.setIn0, setOut0, setErr0 in map.xml.
- Hacked sun.misc.SharedSecrets to replace Unsafe.ensureClassInitialize() with direct calls.
- Replaced java.nio.Bits.byteOrder() with simple System.BitConver.IsLittleEndian based implementation.
- Disabled DynamicMethodSupport when running in partial trust.
- Ignore SecurityException in CanonicalizePath.
- Don't trigger load of JNI assembly when "loading" a fake system library.
2007-12-28 14:55:33 +00:00
jfrijters 6cd0a9e34b Restructured VM <-> Library interface to take advantage of InternalsVisibleTo to remove public methods and reflection usage. 2007-12-19 11:28:09 +00:00
jfrijters 6df053187c Implemented support for InternalsVisibleToAttribute. 2007-12-17 10:59:02 +00:00
jfrijters 6da894bcd5 Removed mono workarounds. 2007-12-17 07:43:06 +00:00
jfrijters 9b22fbf1d1 Workaround the fact that Mono doesn't currently implement FieldInfo.GetRawConstantValue(). 2007-12-04 08:10:53 +00:00
jfrijters d6e2cf70f7 Removed more .NET 1.1 workarounds. 2007-11-26 16:00:15 +00:00
jfrijters 7ca97a7541 More .NET 1.1 -> 2.0 work. 2007-11-26 11:01:29 +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 03db85b160 Fixed GetterFieldWrapper to support the DynamicMethod based fast reflection on CompiledTypeWrapper fields that don't have a FieldInfo object. 2007-11-02 05:47:34 +00:00
jfrijters 25e5f841bd Fix for bug #1802125. 2007-10-10 06:54:20 +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 c932cfad42 Made method annotation resolution lazy to support annotations that annotate themselves. 2007-09-10 06:16:49 +00:00
jfrijters 0607dbc8a2 Added method name clash handling for AOT access stub methods. 2007-07-31 15:27:22 +00:00
jfrijters 43b7e4a70f Integrated OpenJDK's java.lang.reflect.* classes (except for Array). 2007-05-29 16:27:08 +00:00
jfrijters b24cce082f Changed to avoid warnings when compiled on .NET 2.0 2007-05-23 12:47:26 +00:00
jfrijters e68499a4ba Simplified VM -> Class Library interface by taking advantage of the fact that IKVM.Runtime.dll is now compiled in two passes with the second pass linking against the class library. 2007-04-23 08:24:33 +00:00
jfrijters 728c075b40 Fixed several .NET 2.0 "ReflectionOnly" bugs. 2007-03-13 07:44:23 +00:00
jfrijters de064e0299 Fixed workaround for Mono bug (lack of proper token support in reflection emit api) 2007-02-03 14:16:58 +00:00
jfrijters e3b03911b4 Fixed AmbiguousMatchException on .NET 2.0 when looking up field that has sibling field with same name but different type. 2007-01-06 07:13:11 +00:00
jfrijters 0f2afcc4d6 *** empty log message *** 2006-12-05 07:52:25 +00:00
jfrijters 639eacc3d0 *** empty log message *** 2006-10-10 16:24:48 +00:00
jfrijters 6766acfab1 *** empty log message *** 2006-10-04 09:03:18 +00:00
jfrijters 1bba285c55 *** empty log message *** 2006-10-04 09:03:18 +00:00
jfrijters 1ce285dd8b *** empty log message *** 2006-09-01 07:53:36 +00:00