jfrijters
90761eac3b
Fix for bug #2946842 .
2010-02-19 08:07:37 +00:00
jfrijters
0751ab4d76
Intrinsified ThreadLocal (under specific circumstances).
2010-02-11 10:36:01 +00:00
jfrijters
ff779a78f7
Introduced a base class for intrisified AtomitcReferenceFieldUpdaters. This reduces the size of the generates classes somewhat and allows for a public type to represent all intrinsified instances (instead of the HideFromJava nested type).
2010-02-11 10:20:24 +00:00
jfrijters
ab73c7385e
When an object is an instance of a HideFromJava type, hide that type and traverse up the type hierarchy to find the first non-HideFromJava non-abstract type.
2010-02-11 10:00:16 +00:00
jfrijters
afe41d743d
Made the IsHideFromJava(Type) test more consistent.
2010-02-11 09:59:12 +00:00
jfrijters
0047f376d8
It's illegal to call IsInterface on an Unloadable type, so we have to check that first.
2010-02-11 09:54:12 +00:00
jfrijters
ff60212cd6
Ignore SecurityException when trying to register Ctrl-Break handler.
2010-02-11 09:50:26 +00:00
jfrijters
9ddff837c5
- Moved thread dump code from Thread.java to openjdk.cs.
...
- Changed thread dump code to write to System.Console.Out, instead of java.lang.System.out.
- Changed formatting slightly and added some info to make it more like the JDK output.
2010-02-04 05:08:55 +00:00
jfrijters
2ee02c9f0c
Added optimization to avoid explicit <clinit> trigger when it isn't necessary.
2010-02-03 15:28:06 +00:00
jfrijters
8fa9aea6b0
Frame doesn't need to be unsafe anymore.
2010-02-03 14:31:39 +00:00
smallsql
725e68ccf6
use CriticalFinalizerObject for the case of AppDomain unloading
2010-02-01 19:48:00 +00:00
smallsql
edafe5964b
implements the signal handler for windows
2010-01-30 15:54:38 +00:00
jfrijters
b1190ba610
Removed unused field.
2010-01-29 07:09:12 +00:00
jfrijters
daf3ffcf28
Removed ReflectionOnly support from runtime. Now that ikvmstub no longer requires it, there's no good reason to allow Java code to see ReflectionOnly types.
2010-01-29 07:08:56 +00:00
jfrijters
b7a691f5de
- Moved ClassLoaderWrapper.IsVector() and TypeWrapper.IsReflectionOnly() to ReflectUtil.
...
- Fixed IsReflectionOnly() to handle more complicated constructed types.
- Optimized IsDynamic() to use a delegate to call get_IsDynamic when running on .NET 4.0
- Optimized IsVector() to use __IsVector when IKVM.Reflection is used.
2010-01-29 06:58:10 +00:00
jfrijters
d1e163408f
Removed IKVM_REF_EMIT, as STATIC_COMPILER or STUB_GENERATOR now always implies IKVM.Reflection.
2010-01-28 09:18:33 +00:00
jfrijters
b4ad331f48
Removed "constant" instance field support (which was only used by ikvmstub and doesn't make any sense anyway).
2010-01-28 08:44:57 +00:00
jfrijters
e5bea7a81b
Removed support for "ikvm.stubgen.serialver" property that is no longer needed now that ikvmstub doesn't use the runtime to generate stubs.
2010-01-28 08:05:34 +00:00
jfrijters
1d05c1ed7b
Last set of changes preparing for new stub generator. A massive amount of conditional compilation changes, to skip irrelevant code when building ikvmstub.
2010-01-28 07:14:37 +00:00
jfrijters
f01904d51a
More preparations for new stub generator.
...
- When compiling ikvmstub, do type comparisons by name only.
- Replace two cases of typeof() with references to Types fields.
- Added RemappedClassAttribute and RemappedTypeAttribute constructors that explicitly take System.Type (when compiling ikvmstub)
- Avoid unnecessary reference to System.Configuration.dll in tracer.cs (when compiling ikvmstub).
2010-01-28 07:10:31 +00:00
jfrijters
0cca1b39d8
Expose custom attribute annotation properties for use by new stub generator.
2010-01-28 06:52:51 +00:00
jfrijters
9dc2df605a
Moved non-throwing signature parsing from ClassFile.cs to ClassLoaderWrapper.cs (and merged it with the throwing variant). This avoids new stub generator having to include ClassFile.cs.
2010-01-28 06:37:48 +00:00
jfrijters
55cd844b5a
Moved StringConstants from ClassFile.cs to TypeWrapper.cs, to avoid new stub generator (to be checked in later) to have to include ClassFile.cs
2010-01-28 06:24:13 +00:00
jfrijters
05180f101b
Moved VerifierTypeWrapper from verifier.cs to TypeWrapper.cs, to avoid new stub generator (to be checked in later) to have to include verifier.cs
...
(also made VerifierTypeWrapper sealed)
2010-01-28 06:09:20 +00:00
jfrijters
5895cfea86
Moved CodeGenOptions from DynamicClassLoader.cs to ClassLoaderWrapper.cs, to avoid new stub generator (to be checked in later) to have to include DynamicClassLoader.cs
2010-01-28 06:06:37 +00:00
jfrijters
7eb8c80322
The synthetic atomic update helper nested types should not be visible from Java, so they should have a name starting with "__<".
2010-01-27 09:03:32 +00:00
jfrijters
47655ecdb9
RemappedClassAttribute should have AllowMultiple = true.
2010-01-27 08:59:17 +00:00
jfrijters
a68a03ef92
The "base final" methods in remapped types should never be abstract.
2010-01-27 08:58:31 +00:00
jfrijters
dbd6df02ae
Integrated new IKVM.Reflection implementation.
2010-01-25 07:52:27 +00:00
jfrijters
eefa99cdcb
Fixed exception sorter to be correct when invoked with two references to the same object.
2010-01-11 14:32:13 +00:00
jfrijters
bdf10ccaa9
Added comment and made loop count down simpler.
2010-01-07 08:34:52 +00:00
jfrijters
c6b0ca6f50
Added static UnwrapRef method that takes ManagedJNIEnv to avoid having to look it up when we already have it.
2010-01-07 08:10:21 +00:00
jfrijters
251e09bc64
- Moved local ref constants.
...
- Made local ref fields private.
- Renamed LOCAL_REF_BUCKET_SIZE to LOCAL_REF_MAX_BUCKET_SIZE.
2010-01-07 07:46:28 +00:00
jfrijters
5c7f2226e9
Optimized local ref handling.
2010-01-07 07:39:38 +00:00
jfrijters
7c83482811
- Moved local ref specific code from Frame.Enter/Leave to ManagedJNIEnv.Enter/Leave.
...
- Changed JNIEnv.DeleteLocalRef to forward to ManagedJNIEnv.DeleteLocalRef
2010-01-07 07:05:50 +00:00
jfrijters
942a3d5118
Moved local ref code into ManagedJNIEnv.
2010-01-07 06:44:16 +00:00
jfrijters
be92363465
Made ManagedJNIEnv leading, instead of the unmanaged JNIEnv.
2010-01-06 15:37:12 +00:00
jfrijters
0b49d0ef9f
Optimized JNI argument list processing.
2010-01-06 14:36:31 +00:00
jfrijters
34bf6475f7
Changed JNI to use standard caller ID mechanism.
2010-01-06 14:28:38 +00:00
jfrijters
d0a44066a2
Use GetConstructors and GetMethods instead of GetMembers (which is needlessly expensive).
2009-12-31 08:20:32 +00:00
smallsql
c0dbb737dc
Accept also string constant in Assert
2009-12-29 11:24:57 +00:00
jfrijters
7eee0b86c7
Added basic signature validation for remap file (map.xml). Fixes bug 2908683.
2009-12-11 08:06:10 +00:00
jfrijters
848c66b341
More changes to make future merge of IKVM.Reflection easier:
...
- added #if conditionals to remove runtime only methods from compiler
- added two missing JVM.Import()s.
2009-12-10 08:43:45 +00:00
jfrijters
e58a6a1d13
Don't cache inner classes.
2009-12-10 08:27:38 +00:00
jfrijters
ce1e5be3fc
Fixed regression introduced with "type 2" field accessor fix. Null type doesn't need downcast and needs to be explicitly handled, because you aren't allowed to call GetPublicBaseTypeWrapper() on it.
2009-12-09 05:49:30 +00:00
jfrijters
8bc053d1b4
Don't automatically hide "op_Implicit" methods. Instead mark the ones we automatically generate with HideFromJavaAttribute.
2009-12-07 07:12:23 +00:00
jfrijters
dc588c31e0
Don't use Type.GetMembers(), instead of use GetMethods(), GetConstructor(), GetFields() and GetProperties() explicitly.
2009-12-07 06:59:11 +00:00
jfrijters
138f7143bc
Added LazyPublishMethods and LazyPublishFields to TypeWrapper and implemented the split in CompiledTypeWrapper.
2009-12-07 06:39:46 +00:00
jfrijters
44efece100
We have room for a free bool, so it makes more sense to only get the __<clinit> method when we really need to (and not trigger a LazyPublishMembers).
2009-12-07 05:54:04 +00:00
jfrijters
d7f31faced
There's no reason for reflectionField not to be statically typed.
2009-12-07 05:49:36 +00:00