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