+Wed Feb 20 22:18:40 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: more complete runtime_invoke () implementation.
+ Fixed castclass/isinst to work correctly with arrays.
+
+Tue Feb 19 20:21:14 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: implement the runtime_invoke function.
+
+Mon Feb 18 15:49:20 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fix alignment code. Make sure to init classes
+ in more cases. Command-line arguments are interned.
+
+2002-02-16 Radek Doulik <rodo@ximian.com>
+
+ * interp.c (ves_exec_method): test type of sp [-1] instead of sp
+ [0], because sp [-1] is the value going to be shifted, fixed in
+ CEE_SHL, CEE_SHR, CEE_UN opcodes)
+
+Sat Feb 16 12:00:24 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fixed cut&paste error for ldind.r4 and ldind.r8.
+
+Fri Feb 15 15:07:27 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: use strrchr instead of rindex. use _isnan and _finite on
+ win32 systems.
+
+2002-02-14 Jeffrey Stedfast <fejj@ximian.com>
+
+ * interp.c (ves_exec_method): replace
+ 'g_assert (sp->type = VAL_VALUETA)' with
+ 'g_assert (sp->type == VAL_VALUETA)' otherwise
+ the assert always passes. FIXME: should the test have been !=?
+
+2002-02-14 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (stackval_from_data): fix for MONO_TYPE_PTR
+
+Wed Feb 13 16:17:38 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fixed newobj implementation for valuetypes bug found by
+ dietmar. sub.ovf dummy code.
+
+Tue Feb 12 14:08:47 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * hacks.h: check against redefining preprocessor symbol.
+ * interp.c: fix profile info to return more sensible results.
+
+Mon Feb 11 13:05:29 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: added "die on exception" command line argument.
+ When we segfault, set the message in the exception to "Segmentation
+ fault" so people can recognise what's going on.
+
+2002-02-10 Miguel de Icaza <miguel@ximian.com>
+
+ * interp.c (ves_exec_method): Compare the element_class type token
+ in the class we got as well, instead of the element class vs the
+ toplevel class.
+
+ This fixes the invalid cast exceptions during unboxing
+
+Fri Feb 8 13:01:03 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: use opcode information from libmetadata.
+
+2002-02-05 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (ves_exec_method): CEE_UNBOX: use element_class for
+ type check.
+
+2002-02-04 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (main): impl. __array_Address icall
+
+Fri Feb 1 16:03:53 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: exception fixes. Use mono_method_pointer_get ()
+ to easy porting to other archs. Some support for overflow detection.
+
+2002-01-25 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c, jit.c (main): install runtime_exec_main handler
+ (main): bug fix - call TlsAlloc () before we execute code
+
+2002-01-23 Dick Porter <dick@ximian.com>
+
+ * interp.c: Added some kludges to cope with CONV_OVF_I2,
+ CONV_OVF_I4 and ADD_OVF so that number formatting works. Also
+ initialise and cleanup the network support.
+
+Thu Jan 10 20:59:59 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c, interp.h: add a flag to mono_create_trampoline ()
+ to handle runtime methods.
+
+Sat Jan 5 15:45:14 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: allow classname:method name in --debug argument.
+ Fix box opcode for valuetypes. Fix a few opcode to take a 16 bit
+ index instead of 32 (stloc, ldloc, starg, etc.).
+
+Thu Jan 3 23:19:27 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: temporary mul.ovf, mul.ovf.un, add.ovf.un implementations
+ to get the compiler going.
+
+Mon Dec 24 17:23:45 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fix ldc.i8.
+
+Thu Dec 20 20:09:48 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fix delegate method invocation to handle both
+ static and instance methods.
+
+Tue Dec 18 18:48:50 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: make segv_handler static, handle runtime methods in stack
+ trace.
+
+Thu Dec 13 20:24:28 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: correctly handle exceptions generated in C code.
+ Install an handler for SIGSEGV. Bare-bones profiler and hook for the
+ verifier.
+
+Mon Dec 3 17:15:44 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: call mono_init() after registering internal calls.
+
+2001-11-30 Dick Porter <dick@ximian.com>
+
+ * interp.c: Replace get_named_exception() with
+ mono_exception_from_name()
+
+Fri Nov 30 12:05:21 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: calculate locals and args offsets only once
+ per method call. Cache trampoline code as well.
+
+2001-11-23 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (ves_exec_method): bug fix for exception5.cs
+
+Mon Nov 19 11:33:00 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: start adding support for handling exceptions across
+ managed/unmanaged boundaries. Cleanup Delegate method invocation.
+ Pass the correct target object in Delegate::Invoke and use the correct
+ 'this' pointer in ldvirtftn (bugs pointed out by Dietmar).
+
+Thu Nov 15 17:40:24 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: handle enums with underlying type different from int32.
+ More checks for C structs <-> C# objects consistency.
+
+Wed Nov 14 19:23:00 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: move the stack frame dumping code to a function so it can
+ be called from the debugger. Fix virtual method lookup for interfaces.
+ Throw exceptions instead of aborting in more places.
+ Print also the message in an exception. Updates for field renames in
+ corlib.
+
+2001-11-09 Dick Porter <dick@ximian.com>
+
+ * Makefile.am (mint_LDADD): Don't need THREAD_LIBS any more
+
+2001-11-07 Miguel de Icaza <miguel@ximian.com>
+
+ * interp.c: Include stdlib to kill warning.
+ (check_corlib): Adjust format encodings to remove warnings.
+
+Wed Nov 7 15:47:36 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: updates for changes in array code.
+
+Fri Nov 2 19:06:54 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: hanlde field refs. Throw an exception on NULL references.
+ Check consistency of corlib types with the C struct representation.
+
+2001-10-25 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (ves_exec_method): use relative numbering for runtime
+ type checks (and make it work with interfaces)
+
+2001-10-15 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c: removed newobj()
+
+2001-10-10 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (get_virtual_method): use the vtable
+ (arch_compile_method): added to compute vtable entry
+
+Mon Oct 8 16:14:40 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: use the accessors provided in object.h to deal with
+ MonoArrays. Updates for API renames in metadata. Throw exception
+ in ldelema if index is out of bounds.
+
+Mon Oct 8 10:44:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fixes for changes in metadata.
+
+2001-10-04 Dick Porter <dick@ximian.com>
+
+ * interp.c (ves_runtime_method): init_class() the
+ mono_defaults.delegate_class
+ Include mono-endian.h not endian.h
+
+Tue Oct 2 18:51:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: set frame->ip in the leave opcode. Make db_methods static.
+
+Sun Sep 30 11:57:15 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: compiler and ANSI C portability fixes.
+
+Fri Sep 28 19:37:46 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: Implemented ldtoken, conv.ovf.i. Use MonoClass->byval_arg
+ (and remove related kludges). Don't choke on access to arrays of
+ references. Throw an exception when an internalcall or P/Invoke
+ function don't have an implementation. Throw and EngineException
+ for unimplemented opcodes.
+
+Tue Sep 25 11:12:35 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fixed get_virtual_method () to deal with interface
+ methods better.
+
+Mon Sep 24 18:50:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: catch a few more error conditions with exceptions instead of
+ erroring out.
+ Don't use g_print() in stack traces because it doesn't work with
+ some float values.
+ When we call an instance method of a valuetype class, unbox the 'this'
+ argument if it is an object.
+ Use mono_ldstr () to implement the ldstr opcode: it takes care of
+ interning the string if necessary.
+ Implemented new opcodes: ckfinite, cgt.un, clt.un, ldvirtftn, ldarga.
+ Fixes to handle NaNs when comparing doubles.
+ Make sure the loaded assembly has an entry point defined.
+ Fixed portability bugs in neg and not opcodes.
+
+2001-09-24 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (ves_exec_method): LDC_I4: 8bit constants are signed
+ (ves_exec_method): bug fix for NOT/NEG
+ (main): fix bug in parameter parsing
+
+2001-09-23 Dick Porter <dick@ximian.com>
+
+ * Makefile.am (mint_LDADD): rename PTHREAD_LIBS to THREAD_LIBS
+
+2001-09-23 Dick Porter <dick@ximian.com>
+
+ * interp.c (main): Do some thread setup and cleanup around the
+ call to ves_exec()
+
+2001-09-21 Dick Porter <dick@ximian.com>
+
+ * Makefile.am (mint_LDADD): Added PTHREAD_LIBS to the link line
+
+Thu Sep 20 16:32:42 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: implemented some more opcodes: calli, rem.un,
+ shr.un, conv.u, cpobj, stobj, conv.r.un, conv.ovf.i1.un,
+ conv.ovf.i2.un, conv.ovf.i4.un, conv.ovf.i8.un, conv.ovf.i.un,
+ conv.ovf.u1.un, conv.ovf.u2.un, conv.ovf.u4.un, conv.ovf.u8.un,
+ conv.ovf.u.un.
+ Fix some 64 bit issues in the array element access code and a small bug.
+ Throw an exception on index out of range instead of asserting.
+ Throw an exception on a NULL array instead of dying.
+ Stomped a memory corruption bug (.cctor methods were freed after
+ executing them, but they are stores in MonoClass now...).
+ Added a simple facility to invoke the debugger when a named
+ function is entered (use the cmdline option --debug method_name).
+ * interp.h: fix 64 bit issue.
+
+Tue Sep 18 13:21:33 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fix some 64 bit issues. Safer support for delegates.
+
+2001-09-12 Miguel de Icaza <miguel@ximian.com>
+
+ * interp.c (ves_exec_method): implement conv.u8 opcode.
+
+Mon Sep 10 20:20:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: endian fixes, comments.
+
+Fri Sep 7 18:45:38 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c, interp.h: make ves_exec_method () and stackval_from_data ()
+ non static. Implement a couple of runtime methods needed to
+ use delegates (ves_runtime_method ()).
+ Implemented ldftn opcode.
+
+Thu Sep 6 15:41:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * Makefile.am: link to libmonoarch.
+ * interp.h, interp.c: use mono_create_trampoline ().
+ Pass the command line arguments to Main (String[]) methods.
+
+2001-08-30 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (ves_pinvoke_method): removed the libffi dependency
+
+2001-08-29 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (ves_array_set): moved from icall.c
+ (ves_array_get): moved from icall.c
+
+ * icall.c: moved to metadata/icall.c
+
+Wed Aug 29 12:46:06 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: some small optimizations. Fixes to do signed
+ compares when needed. Change C++ comments into C.
+ Implemented cgt, clt. Added --opcode-count cmdline switch.
+
+2001-08-28 Dietmar Maurer <dietmar@ximian.com>
+
+ * interp.c (ves_exec_method): better check for value types (get
+ the class to detect if we have a value type), implemented CEE_CONV_U1,
+ CEE_CONV_U2, CEE_CEQ
+
+
+Mon Aug 27 21:30:30 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: warn and exit when Main () expects the cmdline arguments
+ instead of creashing.
+
+Mon Aug 27 20:16:37 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: merge isinst/castclass handling. Hopefully implement
+ the right semantics for handling callvirt correctly (changes
+ here and there to support it). Integrate bugfix from Dietmar quickly
+ so he needs to handle the cvs conflict:-)
+
+Mon Aug 27 12:20:32 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: fix compilation and updates for changes in metadata/.
+
+2001-08-26 Miguel de Icaza <miguel@ximian.com>
+
+ * interp.c (main): Add option handling for the interpreter,
+ support the `--trace' option.
+
+Sun Aug 26 23:04:46 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: get in a dummy virtual method dispatch.
+ Added support for int64, native int and native uint as arguments.
+ Added debug enter/leave for icall and pinvoke methods, too.
+ Implement opcodes conv.i, conv.i8, ldelema.
+
+Sun Aug 26 11:37:30 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.h, interp.c: load also a MonoClass pointer when we load
+ an address on the stack. Implemented conv.i1, conv.i2, con.i4,
+ conv.u4, conv.r4, conv.r8. Print the arguments in the stack trace
+ and the name of the exception.
+
+Sat Aug 25 15:56:03 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: Implemented some opcodes: starg.s, ldobj, isinst,
+ ldarg, starg, ldloc, ldloca, stloc, initobj, cpblk, sizeof.
+
+Sat Aug 25 12:57:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
+
+ * interp.c: handle enumerations specially (not as valuetypes).
+
Fri Aug 24 19:34:04 CEST 2001 Paolo Molaro <lupus@ximian.com>
* interp.h, interp.c: add support for valuetypes.