Sat Feb 16 12:00:24 CET 2002 Paolo Molaro <lupus@ximian.com>
[mono.git] / mono / interpreter / ChangeLog
1
2 Sat Feb 16 12:00:24 CET 2002 Paolo Molaro <lupus@ximian.com>
3
4         * interp.c: fixed cut&paste error for ldind.r4 and ldind.r8.
5
6 Fri Feb 15 15:07:27 CET 2002 Paolo Molaro <lupus@ximian.com>
7
8         * interp.c: use strrchr instead of rindex. use _isnan and _finite on
9         win32 systems.
10
11 2002-02-14  Jeffrey Stedfast  <fejj@ximian.com>
12
13         * interp.c (ves_exec_method): replace 
14         'g_assert (sp->type = VAL_VALUETA)' with 
15         'g_assert (sp->type == VAL_VALUETA)' otherwise
16         the assert always passes. FIXME: should the test have been !=?
17
18 2002-02-14  Dietmar Maurer  <dietmar@ximian.com>
19
20         * interp.c (stackval_from_data): fix for MONO_TYPE_PTR
21
22 Wed Feb 13 16:17:38 CET 2002 Paolo Molaro <lupus@ximian.com>
23
24         * interp.c: fixed newobj implementation for valuetypes bug found by
25         dietmar. sub.ovf dummy code.
26
27 Tue Feb 12 14:08:47 CET 2002 Paolo Molaro <lupus@ximian.com>
28
29         * hacks.h: check against redefining preprocessor symbol.
30         * interp.c: fix profile info to return more sensible results.
31
32 Mon Feb 11 13:05:29 CET 2002 Paolo Molaro <lupus@ximian.com>
33
34         * interp.c: added "die on exception" command line argument.
35         When we segfault, set the message in the exception to "Segmentation
36         fault" so people can recognise what's going on.
37
38 2002-02-10  Miguel de Icaza  <miguel@ximian.com>
39
40         * interp.c (ves_exec_method): Compare the element_class type token
41         in the class we got as well, instead of the element class vs the
42         toplevel class.
43
44         This fixes the invalid cast exceptions during unboxing
45
46 Fri Feb 8 13:01:03 CET 2002 Paolo Molaro <lupus@ximian.com>
47
48         * interp.c: use opcode information from libmetadata.
49
50 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
51
52         * interp.c (ves_exec_method): CEE_UNBOX: use element_class for
53         type check.
54
55 2002-02-04  Dietmar Maurer  <dietmar@ximian.com>
56
57         * interp.c (main): impl. __array_Address icall
58
59 Fri Feb 1 16:03:53 CET 2002 Paolo Molaro <lupus@ximian.com>
60
61         * interp.c: exception fixes. Use mono_method_pointer_get ()
62         to easy porting to other archs. Some support for overflow detection.
63
64 2002-01-25  Dietmar Maurer  <dietmar@ximian.com>
65
66         * interp.c, jit.c (main): install runtime_exec_main handler
67         (main): bug fix - call TlsAlloc () before we execute code
68
69 2002-01-23  Dick Porter  <dick@ximian.com>
70
71         * interp.c: Added some kludges to cope with CONV_OVF_I2,
72         CONV_OVF_I4 and ADD_OVF so that number formatting works.  Also
73         initialise and cleanup the network support.
74
75 Thu Jan 10 20:59:59 CET 2002 Paolo Molaro <lupus@ximian.com>
76
77         * interp.c, interp.h: add a flag to mono_create_trampoline ()
78         to handle runtime methods.
79
80 Sat Jan 5 15:45:14 CET 2002 Paolo Molaro <lupus@ximian.com>
81
82         * interp.c: allow classname:method name in --debug argument.
83         Fix box opcode for valuetypes. Fix a few opcode to take a 16 bit
84         index instead of 32 (stloc, ldloc, starg, etc.).
85
86 Thu Jan 3 23:19:27 CET 2002 Paolo Molaro <lupus@ximian.com>
87
88         * interp.c: temporary mul.ovf, mul.ovf.un, add.ovf.un implementations
89         to get the compiler going.
90
91 Mon Dec 24 17:23:45 CET 2001 Paolo Molaro <lupus@ximian.com>
92
93         * interp.c: fix ldc.i8.
94
95 Thu Dec 20 20:09:48 CET 2001 Paolo Molaro <lupus@ximian.com>
96
97         * interp.c: fix delegate method invocation to handle both
98         static and instance methods.
99
100 Tue Dec 18 18:48:50 CET 2001 Paolo Molaro <lupus@ximian.com>
101
102         * interp.c: make segv_handler static, handle runtime methods in stack
103         trace.
104
105 Thu Dec 13 20:24:28 CET 2001 Paolo Molaro <lupus@ximian.com>
106
107         * interp.c: correctly handle exceptions generated in C code.
108         Install an handler for SIGSEGV. Bare-bones profiler and hook for the
109         verifier.
110
111 Mon Dec 3 17:15:44 CET 2001 Paolo Molaro <lupus@ximian.com>
112
113         * interp.c: call mono_init() after registering internal calls.
114
115 2001-11-30  Dick Porter  <dick@ximian.com>
116
117         * interp.c: Replace get_named_exception() with
118         mono_exception_from_name()
119
120 Fri Nov 30 12:05:21 CET 2001 Paolo Molaro <lupus@ximian.com>
121
122         * interp.c: calculate locals and args offsets only once
123         per method call. Cache trampoline code as well.
124
125 2001-11-23  Dietmar Maurer  <dietmar@ximian.com>
126
127         * interp.c (ves_exec_method): bug fix for exception5.cs
128
129 Mon Nov 19 11:33:00 CET 2001 Paolo Molaro <lupus@ximian.com>
130
131         * interp.c: start adding support for handling exceptions across
132         managed/unmanaged boundaries. Cleanup Delegate method invocation.
133         Pass the correct target object in Delegate::Invoke and use the correct
134         'this' pointer in ldvirtftn (bugs pointed out by Dietmar).
135
136 Thu Nov 15 17:40:24 CET 2001 Paolo Molaro <lupus@ximian.com>
137
138         * interp.c: handle enums with underlying type different from int32.
139         More checks for C structs <-> C# objects consistency.
140
141 Wed Nov 14 19:23:00 CET 2001 Paolo Molaro <lupus@ximian.com>
142
143         * interp.c: move the stack frame dumping code to a function so it can
144         be called from the debugger. Fix virtual method lookup for interfaces.
145         Throw exceptions instead of aborting in more places.
146         Print also the message in an exception. Updates for field renames in
147         corlib.
148
149 2001-11-09  Dick Porter  <dick@ximian.com>
150
151         * Makefile.am (mint_LDADD): Don't need THREAD_LIBS any more
152
153 2001-11-07  Miguel de Icaza  <miguel@ximian.com>
154
155         * interp.c: Include stdlib to kill warning.
156         (check_corlib): Adjust format encodings to remove warnings.
157
158 Wed Nov 7 15:47:36 CET 2001 Paolo Molaro <lupus@ximian.com>
159
160         * interp.c: updates for changes in array code.
161
162 Fri Nov 2 19:06:54 CET 2001 Paolo Molaro <lupus@ximian.com>
163
164         * interp.c: hanlde field refs. Throw an exception on NULL references.
165         Check consistency of corlib types with the C struct representation.
166
167 2001-10-25  Dietmar Maurer  <dietmar@ximian.com>
168
169         * interp.c (ves_exec_method): use relative numbering for runtime
170         type checks (and make it work with interfaces)
171
172 2001-10-15  Dietmar Maurer  <dietmar@ximian.com>
173
174         * interp.c: removed newobj()
175
176 2001-10-10  Dietmar Maurer  <dietmar@ximian.com>
177
178         * interp.c (get_virtual_method): use the vtable
179         (arch_compile_method): added to compute vtable entry
180
181 Mon Oct 8 16:14:40 CEST 2001 Paolo Molaro <lupus@ximian.com>
182
183         * interp.c: use the accessors provided in object.h to deal with
184         MonoArrays. Updates for API renames in metadata. Throw exception
185         in ldelema if index is out of bounds.
186
187 Mon Oct 8 10:44:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
188
189         * interp.c: fixes for changes in metadata.
190
191 2001-10-04  Dick Porter  <dick@ximian.com>
192
193         * interp.c (ves_runtime_method): init_class() the
194         mono_defaults.delegate_class
195         Include mono-endian.h not endian.h
196
197 Tue Oct 2 18:51:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
198
199         * interp.c: set frame->ip in the leave opcode. Make db_methods static.
200
201 Sun Sep 30 11:57:15 CEST 2001 Paolo Molaro <lupus@ximian.com>
202
203         * interp.c: compiler and ANSI C portability fixes.
204
205 Fri Sep 28 19:37:46 CEST 2001 Paolo Molaro <lupus@ximian.com>
206
207         * interp.c: Implemented ldtoken, conv.ovf.i. Use MonoClass->byval_arg
208         (and remove related kludges). Don't choke on access to arrays of
209         references. Throw an exception when an internalcall or P/Invoke
210         function don't have an implementation. Throw and EngineException
211         for unimplemented opcodes.
212
213 Tue Sep 25 11:12:35 CEST 2001 Paolo Molaro <lupus@ximian.com>
214
215         * interp.c: fixed get_virtual_method () to deal with interface
216         methods better.
217
218 Mon Sep 24 18:50:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
219
220         * interp.c: catch a few more error conditions with exceptions instead of
221         erroring out.
222         Don't use g_print() in stack traces because it doesn't work with
223         some float values.
224         When we call an instance method of a valuetype class, unbox the 'this'
225         argument if it is an object.
226         Use mono_ldstr () to implement the ldstr opcode: it takes care of
227         interning the string if necessary.
228         Implemented new opcodes: ckfinite, cgt.un, clt.un, ldvirtftn, ldarga.
229         Fixes to handle NaNs when comparing doubles.
230         Make sure the loaded assembly has an entry point defined.
231         Fixed portability bugs in neg and not opcodes.
232
233 2001-09-24  Dietmar Maurer  <dietmar@ximian.com>
234
235         * interp.c (ves_exec_method): LDC_I4: 8bit constants are signed
236         (ves_exec_method): bug fix for NOT/NEG
237         (main): fix bug in parameter parsing
238
239 2001-09-23  Dick Porter  <dick@ximian.com>
240
241         * Makefile.am (mint_LDADD): rename PTHREAD_LIBS to THREAD_LIBS
242
243 2001-09-23  Dick Porter  <dick@ximian.com>
244
245         * interp.c (main): Do some thread setup and cleanup around the
246         call to ves_exec()
247
248 2001-09-21  Dick Porter  <dick@ximian.com>
249
250         * Makefile.am (mint_LDADD): Added PTHREAD_LIBS to the link line
251
252 Thu Sep 20 16:32:42 CEST 2001 Paolo Molaro <lupus@ximian.com>
253
254         * interp.c: implemented some more opcodes: calli, rem.un,
255         shr.un, conv.u, cpobj, stobj, conv.r.un, conv.ovf.i1.un,
256         conv.ovf.i2.un, conv.ovf.i4.un, conv.ovf.i8.un, conv.ovf.i.un,
257         conv.ovf.u1.un, conv.ovf.u2.un, conv.ovf.u4.un, conv.ovf.u8.un,
258         conv.ovf.u.un.
259         Fix some 64 bit issues in the array element access code and a small bug.
260         Throw an exception on index out of range instead of asserting.
261         Throw an exception on a NULL array instead of dying.
262         Stomped a memory corruption bug (.cctor methods were freed after
263         executing them, but they are stores in MonoClass now...).
264         Added a simple facility to invoke the debugger when a named
265         function is entered (use the cmdline option --debug method_name).
266         * interp.h: fix 64 bit issue.
267
268 Tue Sep 18 13:21:33 CEST 2001 Paolo Molaro <lupus@ximian.com>
269
270         * interp.c: fix some 64 bit issues. Safer support for delegates.
271
272 2001-09-12  Miguel de Icaza  <miguel@ximian.com>
273
274         * interp.c (ves_exec_method): implement conv.u8 opcode. 
275
276 Mon Sep 10 20:20:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
277
278         * interp.c: endian fixes, comments.
279
280 Fri Sep 7 18:45:38 CEST 2001 Paolo Molaro <lupus@ximian.com>
281
282         * interp.c, interp.h: make ves_exec_method () and stackval_from_data ()
283         non static. Implement a couple of runtime methods needed to
284         use delegates (ves_runtime_method ()).
285         Implemented ldftn opcode.
286
287 Thu Sep 6 15:41:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
288
289         * Makefile.am: link to libmonoarch.
290         * interp.h, interp.c: use mono_create_trampoline ().
291         Pass the command line arguments to Main (String[]) methods.
292
293 2001-08-30  Dietmar Maurer  <dietmar@ximian.com>
294
295         * interp.c (ves_pinvoke_method): removed the libffi dependency
296
297 2001-08-29  Dietmar Maurer  <dietmar@ximian.com>
298
299         * interp.c (ves_array_set): moved from icall.c
300         (ves_array_get): moved from icall.c
301
302         * icall.c: moved to metadata/icall.c
303
304 Wed Aug 29 12:46:06 CEST 2001 Paolo Molaro <lupus@ximian.com>
305
306         * interp.c: some small optimizations. Fixes to do signed
307         compares when needed. Change C++ comments into C.
308         Implemented cgt, clt. Added --opcode-count cmdline switch.
309
310 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
311
312         * interp.c (ves_exec_method): better check for value types (get
313         the class to detect if we have a value type), implemented CEE_CONV_U1,
314         CEE_CONV_U2, CEE_CEQ
315         
316
317 Mon Aug 27 21:30:30 CEST 2001 Paolo Molaro <lupus@ximian.com>
318
319         * interp.c: warn and exit when Main () expects the cmdline arguments
320         instead of creashing.
321
322 Mon Aug 27 20:16:37 CEST 2001 Paolo Molaro <lupus@ximian.com>
323
324         * interp.c: merge isinst/castclass handling. Hopefully implement
325         the right semantics for handling callvirt correctly (changes
326         here and there to support it). Integrate bugfix from Dietmar quickly
327         so he needs to handle the cvs conflict:-)
328
329 Mon Aug 27 12:20:32 CEST 2001 Paolo Molaro <lupus@ximian.com>
330
331         * interp.c: fix compilation and updates for changes in metadata/.
332
333 2001-08-26  Miguel de Icaza  <miguel@ximian.com>
334
335         * interp.c (main): Add option handling for the interpreter,
336         support the `--trace' option.
337
338 Sun Aug 26 23:04:46 CEST 2001 Paolo Molaro <lupus@ximian.com>
339
340         * interp.c: get in a dummy virtual method dispatch.
341         Added support for int64, native int and native uint as arguments.
342         Added debug enter/leave for icall and pinvoke methods, too.
343         Implement opcodes conv.i, conv.i8, ldelema.
344
345 Sun Aug 26 11:37:30 CEST 2001 Paolo Molaro <lupus@ximian.com>
346
347         * interp.h, interp.c: load also a MonoClass pointer when we load
348         an address on the stack. Implemented conv.i1, conv.i2, con.i4,
349         conv.u4, conv.r4, conv.r8. Print the arguments in the stack trace
350         and the name of the exception.
351
352 Sat Aug 25 15:56:03 CEST 2001 Paolo Molaro <lupus@ximian.com>
353
354         * interp.c: Implemented some opcodes: starg.s, ldobj, isinst,
355         ldarg, starg, ldloc, ldloca, stloc, initobj, cpblk, sizeof.
356
357 Sat Aug 25 12:57:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
358
359         * interp.c: handle enumerations specially (not as valuetypes).
360
361 Fri Aug 24 19:34:04 CEST 2001 Paolo Molaro <lupus@ximian.com>
362
363         * interp.h, interp.c: add support for valuetypes.
364
365 Fri Aug 24 16:09:20 CEST 2001 Paolo Molaro <lupus@ximian.com>
366
367         * interp.c: updates for merge of MonoParam in MonoType.
368
369 Thu Aug 23 12:04:34 CEST 2001 Paolo Molaro <lupus@ximian.com>
370
371         * interp.c: removed beforefieldinit check, it's a useless flag.
372         Added a couple more test cases to tests/ dir.
373
374 2001-08-22  Miguel de Icaza  <miguel@ximian.com>
375
376         * interp.c (usage): Add version information
377         (ves_pinvoke_method): Typo fix.
378
379 Wed Aug 22 20:37:51 CEST 2001 Paolo Molaro <lupus@ximian.com>
380
381         * interp.c: simplified init_class (). Make sure a class
382         is fully initialized before executing a method in the class.
383         Search for the class constructor only on beforefieldinit classes.
384         Implement a bunch of opcodes: br, brfalse, brtrue, beq, bge,
385         bgt, blt, ble, bne.un, bge.un, bgt.un, ble.un, blt.un, stind.i,
386         ldflda, ldsflda, ldelem.i8, stelem.i8, leave.
387
388 Wed Aug 22 16:34:03 CEST 2001 Paolo Molaro <lupus@ximian.com>
389
390         * interp.c: Updates for changes in metadata/. Better output in debug mode
391         and in the stack trace. Completed rethrow handling
392
393 Tue Aug 21 18:56:19 CEST 2001 Paolo Molaro <lupus@ximian.com>
394
395         * interp.c: new macro INIT_FRAME() to properly
396         initialize a MonoInvocation. Fixed a couple of buglets in exception code:
397         increase stack pointer when pushing the exception for catch blocks,
398         initialize frame->ex_handler to NULL, correctly try all the
399         catch blocks (don't incorrectly fallback on filter handling).
400         Added a couple more checks where we may need to throw an
401         exception. Added more exception creation functions.
402         Changed stackval_from_data() to take the target stackval as
403         argument. Implemented a couple more opcodes.
404         * interp.h: prepare stackval for value type code.
405
406 2001-08-21  Miguel de Icaza  <miguel@ximian.com>
407
408         * Makefile.am (mint_LDADD): Renamed interpreter to mint.
409
410 2001-08-21  Dietmar Maurer  <dietmar@ximian.com>
411
412         * interp.c (get_named_exception): use the right constructor.
413
414 Mon Aug 20 18:58:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
415
416         * interp.c: fix buglet with the leave.s opcode.
417
418 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
419
420         * icall.c: changed everything to support the new calling convention
421
422         * hacks.h: added some macros for FreeBSD 
423
424         * interp.c (get_named_exception): use mono_object_new instead of
425         newobj, initialize the stack before we call the constructor.
426
427 Sat Aug 18 12:43:38 CEST 2001 Paolo Molaro <lupus@ximian.com>
428
429         * interp.c, interp.h: added support code to create exceptions.
430         Changed interncal calling convnetion over to MonoInvocation, to support
431         exceptions, walking the stack back and forward and passing the 'this'
432         pointer separately (remove the cludges required before to pass this on the
433         stack). Use alloca heavily for both local vars and a copy of the incoming 
434         arguments. Init local vars to zero.
435         Simplify stackval_from_data() and stackval_to_data() to only take a pointer
436         instead of pointer + offset.
437         Implement a few exceptions-related opcodes and the code to run finally, fault and
438         catch blocks as well as a stack trace if no handler is found.
439         
440 2001-08-16  Alex Graveley  <alex@ximian.com>
441
442         * Makefile.am (mono_int_LDADD): Link with ../../libffi/libffi.a
443         instead of ../../libffi/.libs/libffi.a.
444
445 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
446
447         * interp.c (ves_exec_method): impl CASTCLASS
448
449         * icall.c: moved the internal call stuff to this file
450
451         * interp.c (ves_exec_method): impl. BOX/UNBOX
452         (ves_icall_System_Array_GetValue): impl.
453         (ves_icall_System_Array_SetValue): impl.
454         added myself to Authors
455
456 2001-08-09  Dietmar Maurer  <dietmar@ximian.com>
457
458         * implemented arrays, but you will need a modified version of 
459         Array.cs to get arrays working (will commit soon)
460         
461         * interp.c (ves_icall_array_Set): impl.
462         (ves_icall_array_Get): impl.
463         (ves_icall_array_ctor): impl.
464         (ves_icall_System_Array_GetRank): impl.
465         (ves_icall_System_Array_GetLength): impl.
466         (ves_icall_System_Array_GetLowerBound): impl.
467         (mono_lookup_internal_call): impl.
468
469 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
470
471         * interp.c (ves_exec_method): impl. NEWARR
472         (ves_exec_method): impl. most LDELEM/STELEM opcodes, LDLEN
473         (newarr): impl.
474         (mono_get_ansi_string): impl.
475         (mono_lookup_internal_call): impl.
476         (ves_exec_method): implemented internal calls
477
478 2001-08-05  Dietmar Maurer  <dietmar@ximian.com>
479
480         * interp.c (ves_pinvoke_method): removed all static vars.
481
482 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
483
484         * interp.c (ves_exec_method): found a way to do unordered
485         compares, implemented CEE_BNE_UN_S, CEE_BGE_UN_S, CEE_BGT_UN_S, 
486         CEE_BLE_UN_S, CEE_BLT_UN_S
487         
488 Wed Aug 1 22:51:38 CEST 2001 Paolo Molaro <lupus@ximian.com>
489
490         * interp.c: handle also MONO_TYPE_CLASS to/from the stack.
491         Change locals to be a memory blob, instead of the structured
492         (but wrong) stackval. Implement bne.un.s opcode. Make the program
493         exit with the error code from Main().
494
495 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
496
497         * interp.c (ves_exec_method): implemented LDSTR
498
499 2001-07-31  Miguel de Icaza  <miguel@ximian.com>
500
501         * interp.c (GET_NATI): Switched from using nati_t to cli/types.h
502         m_i type.  Maybe we should rename the types to be m_i_t instead of
503         m_i alone.
504         
505         Make the code compile after I broke it.
506
507 Tue Jul 31 23:46:33 CEST 2001 Paolo Molaro <lupus@ximian.com>
508
509         * interp.c: fix cleanup.
510         * Makefile.am: don't link with disassembler library.
511
512 2001-07-31  Miguel de Icaza  <miguel@ximian.com>
513
514         (ves_exec_method): Cleanup of the source code.
515
516 Tue Jul 31 20:13:59 CEST 2001 Paolo Molaro <lupus@ximian.com>
517
518         * interp.c: implement stind.*, ldind.*, ldloca.s opcodes.
519         Provide better tracing with DEBUG_INTERP.
520
521 Tue Jul 31 17:52:53 CEST 2001 Paolo Molaro <lupus@ximian.com>
522
523         * interp.c: massive namespace cleanup.
524
525 Mon Jul 30 20:09:58 CEST 2001 Paolo Molaro <lupus@ximian.com>
526
527         * interp.c: update to use mono_method->name.
528
529 Fri Jul 27 20:54:00 CEST 2001 Paolo Molaro <lupus@ximian.com>
530
531         * interp.c: start implementing callvirt. Classes with
532         class constructors are properly initialized when needed.
533         Fix error introduced in version 1.17.
534
535 Fri Jul 27 14:03:19 CEST 2001 Paolo Molaro <lupus@ximian.com>
536
537         * interp.c: implement static field loading and storing.
538
539 2001-07-27  Dietmar Maurer  <dietmar@ximian.com>
540
541         * interp.c (ves_pinvoke_method): impl.
542
543 Fri Jul 27 11:49:19 CEST 2001 Paolo Molaro <lupus@ximian.com>
544
545         * interp.c: Removed some debugging printouts. Made stackval_to_data
546         static. Handle also instance methods in CALL opcode. Fix ret to properly
547         deal with void functions. Fixed constructor to leave the object on
548         the stack.
549
550 Thu Jul 26 13:24:51 CEST 2001 Paolo Molaro <lupus@ximian.com>
551
552         * interp.c: ves_exec_method () doesn't take a MonoImage arg
553         anymore. Use the method cache in MonoImage. Updates to
554         mache recent changes in metadata. 
555         Fix newobj code to use new metadata features. Call the class
556         constructor after allocationg the object. Implemented load field
557         and store field opcodes (the support functions need to be finished).
558         
559 Tue Jul 24 16:51:09 CEST 2001 Paolo Molaro <lupus@ximian.com>
560
561         * interp.c, hacks.h: moved a few ugly macros out of the code.
562         Implemented switch opcode.
563
564 2001-07-23  Miguel de Icaza  <miguel@ximian.com>
565
566         * interp.c (newobj): Added function to handle newobj opcode.
567
568 2001-07-18  Miguel de Icaza  <miguel@ximian.com>
569
570         * interp.c (ves_exec_method): Make the interpreter abort with more
571         information than it currently does.
572
573         Enable the slow processor, as it is easier to debug.
574
575 Sun Jul 15 17:50:23 CEST 2001 Paolo Molaro <lupus@ximian.com>
576
577         * Started changelog.
578         * interp.c: use new mono_get_method () function to get the complete
579         info on a method invocation: we support now method invocation with
580         multiple (or zero) simple arguments and with or without a return value.
581         Implement also a couple more opcodes.