Use `NET_2_0', not `GENERICS'.
[mono.git] / mono / interpreter / ChangeLog
1 2004-04-29  Bernie Solomon  <bernard@ugsolutions.com>
2
3         * transform.c (generate): missed a couple
4         of places that should use ADD_CODE so buffer
5         gets grown properly.
6
7         * interp.c (interp_mono_runtime_invoke): 
8         restore state better on catching exception
9         via longjmp here
10
11 2004-04-29  Bernie Solomon  <bernard@ugsolutions.com>
12
13         * transform.c:
14         * interp.c:
15         Implement STARG for valuetypes as mcs needs it.
16
17 2004-04-28  Bernie Solomon  <bernard@ugsolutions.com>
18
19         * transform.c: Make sure ENSURE_I4 is called on
20         32 bit machines too. 
21         (mono_interp_transform_method): allow some stack
22         space for tracing to work.
23
24 2004-04-26  David Waite  <mass@akuma.org>
25
26         * interp.h: remove comma from end of enumeration constants
27         declarations
28
29 2004-04-21  Bernie Solomon  <bernard@ugsolutions.com>
30
31         * interp.h: put in space for old type field
32         for PPC as tramp.c assumes it. Quick fix until that's fixed.
33
34         * interp.c: reenable instruction tracing for DEBUG_INTERP
35
36 2004-04-19  Bernie Solomon  <bernard@ugsolutions.com>
37
38         * Makefile.am:
39         * interp.h:
40         * interp.c: now interprets different VM code
41         * mintops.h:
42         * mintops.def:
43         * mintops.c: definition of new VM code
44         * transform.c: convert CIL to new VM code
45
46 2004-04-14  Zoltan Varga  <vargaz@freemail.hu>
47
48         * interp.c (ves_exec_method_with_context): Add support for STRWLPARRAY 
49         marshalling convention.
50
51 2004-03-29  Bernie Solomon  <bernard@ugsolutions.com>
52
53         * interp.c interp.h: remove child from MonoInvocation
54         as it isn't used.
55
56 2004-03-25  Martin Baulig  <martin@ximian.com>
57
58         * interp.c (stackval_from_data): Added MONO_TYPE_GENERICINST.
59         (stackval_to_data): Added MONO_TYPE_GENERICINST.
60         (calc_offsets): Use mono_class_get_full() and mono_get_method_full().
61         (ves_exec_method_with_context): Likewise.
62
63 2004-03-04  Lluis Sanchez Gual <lluis@ximian.com>
64
65         * interp.c: Get the type of transparent proxies from its remote_class.
66
67 2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
68
69         * interp.c (ves_exec_method_with_context): Add new marshalling 
70         conventions.
71
72 2004-01-22  Zoltan Varga  <vargaz@freemail.hu>
73
74         * interp.c (mono_main): Remove call to mono_verify_corlib (), since
75         the verification code is not up-to-date.
76
77 2004-01-19  Bernie Solomon  <bernard@ugsolutions.com>
78
79         * interp.c (ves_exec_method_with_context):
80         get_native_wrapper removed and  call 
81         mono_marshal_get_native_wrapper directly
82         with new DllNotFoundException handling
83
84 Mon Jan 19 17:52:33 CET 2004 Paolo Molaro <lupus@ximian.com>
85
86         * interp.c: eliminate CSIZE macro.
87
88 2004-01-15  Zoltan Varga  <vargaz@freemail.hu>
89
90         * interp.c (ves_array_set): Check for ArrayTypeMismatchException.
91
92 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
93
94         * interp.c: call setlocale (). Fixes bug #52100.
95
96 2003-12-19  Bernie Solomon  <bernard@ugsolutions.com>
97
98         * embed.h, main.c: new files to enable embedding
99         the interpreter
100
101         * interp.c: make main callable from main.c
102         rearrange main for embedding
103
104         * Makefile.am: changes now most code is in a library
105
106 2003-11-21  Lluis Sanchez Gual <lluis@ximian.com>
107
108         * interp.c: Added support for context static fields.
109
110 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
111
112         * interp.c (mono_create_method_pointer): New function which contains
113         the arch independent part of method wrapper creation. Add a cache
114         for the wrapper code, since Delegate::Equals depends on the wrapper
115         address being constant for a method. Fixes #50366.
116
117 2003-10-30  Bernie Solomon  <bernard@ugsolutions.com>
118
119         * interp.c: (ves_exec_method_with_context)
120         we need to lookup internal calls now.
121         don't free type in CEE_SIZEOF.
122         fix CEE_NEWOBJ inside wrapper methods
123
124 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
125
126         * interp.c: Update after appdomain changes.
127
128 2003-10-13  Bernie Solomon  <bernard@ugsolutions.com>
129
130         * interp.c - set large stack size on HP 64bit
131
132 2003-10-02  Bernie Solomon  <bernard@ugsolutions.com>
133
134         * hacks.h - work round HP 64 bit problem with isunordered
135
136 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
137
138         * interp.c (dump_frame): Avoid crash on frames without a method. Patch
139         sam@superduper.net (sam clegg). Fixes #46197.
140         (ves_exec_method_with_context): Fix unbox casting.
141
142 2003-09-25  Bernie Solomon  <bernard@ugsolutions.com>
143
144         * interp.c - reinstate use of mono_marshal_get_delegate_invoke
145         for ordering and fix CALLI to handle wrapper. More wrapper handling
146         in CALL and LDSTR. Add another string conversion case.
147
148 2003-09-25  Zoltan Varga  <vargaz@freemail.hu>
149
150         * interp.c (ves_exec_method): Fix warning.
151         (ves_exec_method_with_context): Fix CGT_UN and CLT_UN. Patch by
152         David Waite (mass@akuma.org).
153
154 2003-9-24  Bernie Solomon  <bernard@ugsolutions.com>
155
156         * interp.c: I broke calling native delegates reinstate
157         old code for the moment.
158
159 2003-9-22  Bernie Solomon  <bernard@ugsolutions.com>
160
161         * interp.c: use mono_marshal_get_delegate_invoke to get delegate 
162         invocation order consistent. Fix THROW_EX, fix ip in overflow 
163         exceptions.
164
165 Fri Sep 12 10:42:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
166
167         * interp.c, interp.h: patch from Bernie Solomon <bernard@ugsolutions.com>:
168         64 bit/opcodes/exception handling fixes.
169
170 2003-08-30  Zoltan Varga  <vargaz@freemail.hu>
171
172         * interp.c: Use mono_field_from_token () in the appropriate places.
173         This simplifies the code and also fixes #48051.
174
175 2003-08-27  Zoltan Varga  <vargaz@freemail.hu>
176
177         * interp.c (main): Fix the order of initialization calls so it maches 
178         the order in the JIT.Patch by Bernie Solomon (bernard@ugsolutions.com).
179         Also remove the unused ms mutex.
180         
181         * interp.c: Get rid of metadata_section.
182         
183 2003-08-22  Zoltan Varga  <vargaz@freemail.hu>
184
185         * interp.c (main): Call g_thread_init () to make glib thread-safe. 
186         Fixes #47682. Thanks to Laurent Morichetti (l_m@pacbell.net) for 
187         reporting this.
188
189 2003-08-18  Zoltan Varga  <vargaz@freemail.hu>
190
191         * interp.c: Get rid of duplicate definition of CHECK_MUL_OVERFLOW.
192         * interp.h interp.c: Get rid of VAL_VALUETA, use VAL_MP instead. Fix
193         the INITOBJ opcode which was the only user of VALUETA.
194
195 2003-08-16  Zoltan Varga  <vargaz@freemail.hu>
196
197         * interp.c (ves_exec_method): Implemented mul.ovf correctly for int32
198         and int64. Implement the conv.ovf opcodes for all argument types.
199
200 2003-08-15  Zoltan Varga  <vargaz@freemail.hu>
201
202         * interp.c (ves_exec_method): Handle non-valuetypes in CEE_STOBJ.
203         Fixes #46781.
204         (ves_exec_method): Added support for the synchronized flag to the
205         interpreter. Also fixed the CALLI opcode, and made exception handling
206         work though the managed-unmanaged barrier.
207
208 Fri Jul 25 19:06:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
209
210         * interp.c: updates for new instructions.
211
212 2003-07-22  Zoltan Varga  <vargaz@freemail.hu>
213
214         * interp.c: Use the new metadata_section lock instead of metadata_lock.
215         Patch by Bernie Solomon (bernard@ugsolutions.com).
216
217 Fri Jul 18 15:11:44 CEST 2003 Paolo Molaro <lupus@ximian.com>
218
219         * interp.c: 64 bit fixes from Laurent Morichetti <l_m@pacbell.net>.
220         Install cleanup function.
221
222 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
223
224         * interp.c: Keep alloca()-d data on a free list to prevent stack
225         overflow errors when valuetypes are allocated in a loop. Fixes
226         #27420. Is the new code still faster than using malloc/free ?
227
228         * interp.c (ves_array_get): Add index checking to ves_array_get/set.
229         Fixes decimal-array.exe.
230
231         * interp.c (interp_mono_runtime_invoke): Unbox value type instances
232         before calling the method. Fixes appdomain2.exe.
233
234         * interp.c: Fix warnings.
235         
236         * interp.c: Report unhandled exceptions correctly.
237
238         * interp.c: Implement CEE_ISINST and CEE_CASTCLASS using 
239         mono_object_isinst. Fixes bug #45539 and reflection-enum.exe.
240
241 Tue May 27 16:36:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
242
243         * interp.c: don't use relative numbering stuff.
244
245 Tue May 27 12:18:44 CEST 2003 Paolo Molaro <lupus@ximian.com>
246
247         * interp.c: update for mono_class_vtable() changes.
248
249 Tue May 13 16:43:18 CEST 2003 Paolo Molaro <lupus@ximian.com>
250
251         * interp.c: handle thread static fields.
252
253 Sun Apr 27 13:27:59 CEST 2003 Paolo Molaro <lupus@ximian.com>
254
255         * interp.c: check for arraytypemismatch.
256
257 2003-04-23  Martin Baulig  <martin@ximian.com>
258
259         * interp.c: When running with --dieonex, use the debugging code to
260         print source lines in the backtrace.
261
262 2003-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
263
264         * interp.c: added a dummy mono_runtime_install_handlers function to
265         avoid crashing when ves_pinvoke_method tries to call it.
266
267 2003-02-06  Piers Haken <piersh@friskit.com>
268
269         * interp.c: warning cleanups
270
271 2002-11-15  Dick Porter  <dick@ximian.com>
272
273         * interp.c: mono_runtime_init() now has an extra parameter for
274         thread attaching.
275
276 2002-10-31  Dick Porter  <dick@ximian.com>
277
278         * Makefile.am: The previous automake-1.6 fix broke automake-1.4 on
279         cygwin.  Try again.
280
281 2002-09-27  Dick Porter  <dick@ximian.com>
282
283         * interp.c: Tell glib what the program name is, by passing it the
284         name of the managed file we're executing
285
286 2002-08-28  Dick Porter  <dick@ximian.com>
287
288         * interp.c: mono_set_rootdir() doesnt take any args now
289
290         * Makefile.am: Export HOST_CC and turn on optimisation for w32 builds
291
292 2002-08-28  Nick Drochak  <ndrochak@gol.com>
293
294         * interp.c: check and throw exception if needed for overflow on 
295         multiplication of integer types.
296
297 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
298
299         * interp.c (interp_walk_stack): removed the createdelegate icall
300
301 2002-08-02  Dietmar Maurer  <dietmar@ximian.com>
302
303         * interp.c (get_virtual_method): support proxies
304         (ves_exec_method): impl. LDFLD/STFLD for proxies.
305
306 Fri Aug 2 13:00:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
307
308         * interp.c, interp.h: implemented exception trap for runtime_invoke
309         and handle exceptions across managed/unmanaged boundaries.
310
311 2002-08-01  Dietmar Maurer  <dietmar@ximian.com>
312
313         * interp.c (stackval_from_data): add pinvoke argument
314         (stackval_to_data): add pinvoke argument. We need consider the
315         fact that unmanages structures may have different sizes.
316         (ves_pinvoke_method): do not call stackval_from_data if the result
317         is a value type.
318
319 Wed Jul 31 17:47:11 CEST 2002 Paolo Molaro <lupus@ximian.com>
320
321         * interp.c: simplified some more branch code.
322
323 Wed Jul 31 16:50:42 CEST 2002 Paolo Molaro <lupus@ximian.com>
324
325         * interp.c: fixed indentation, simplified some code.
326
327 Wed Jul 31 14:29:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
328
329         * interp.c: fix so that mint can at least get to executing Main().
330
331 2002-07-31  Dietmar Maurer  <dietmar@ximian.com>
332
333         * interp.c: use the new marshaling code. better delegate/remoting 
334         support.
335         (ves_exec_method): bug fix - directly jump to handle_exception.
336
337 2002-07-29  Dietmar Maurer  <dietmar@ximian.com>
338
339         * interp.c (main): install compile_method handler
340
341 Wed Jul 24 13:02:12 CEST 2002 Paolo Molaro <lupus@ximian.com>
342
343         * interp.c: implemented stack walking function.
344
345 Fri Jul 19 14:21:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
346
347         * interp.c: fix float boxing on LE systems.
348
349 Sat Jul 13 19:54:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
350
351         * interp.c: advance ip in conv.r.un.
352
353 2002-07-01  Dick Porter  <dick@ximian.com>
354
355         * interp.c (ves_exec): Removed unneeded argument to
356         mono_runtime_run_main()
357
358 2002-06-25  Dick Porter  <dick@ximian.com>
359
360         * interp.c (ves_exec): Pass the assembly to mono_runtime_run_main
361
362 Wed Jun 19 17:01:37 CEST 2002 Paolo Molaro <lupus@ximian.com>
363
364         * interp.c: un-broke after stack trace changes.
365
366 Fri May 31 16:17:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
367
368         * interp.c, hacks.h: compiler compatibility fixes.
369
370 Fri May 31 13:25:57 CEST 2002 Paolo Molaro <lupus@ximian.com>
371
372         * interp.c, mint.1: added --config command line option.
373
374 Thu May 30 14:14:16 CEST 2002 Paolo Molaro <lupus@ximian.com>
375
376         * interp.c: lookup P/Invoke method addr only when needed.
377
378 2002-05-29  Dietmar Maurer  <dietmar@ximian.com>
379
380         * interp.c (ves_exec_method): free type in CEE_SIZEOF
381
382 Tue May 28 16:10:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
383
384         * interp.c: fixed SIZEOF to work with typedef/typeref.
385
386 Fri May 24 15:33:50 CEST 2002 Paolo Molaro <lupus@ximian.com>
387
388         * interp.c: added partial async delegate and remoting support.
389
390 Thu May 23 18:45:38 CEST 2002 Paolo Molaro <lupus@ximian.com>
391
392         * interp.c: special case string ctors in invoke.
393         Handle null object in throw. Misc integer type mismatch fixes.
394
395 2002-05-23  Dietmar Maurer  <dietmar@ximian.com>
396
397         * interp.c (ves_runtime_method): share more code with the jit.
398
399 Wed May 22 12:31:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
400
401         * interp.c: fixed finally handling. In trace mode show
402         exception handling operations and the contents of the stack in the same
403         line as the executing instruction.
404
405 2002-05-20  Miguel de Icaza  <miguel@ximian.com>
406
407         * interp.c: Updated help display.
408
409 2002-05-20  Radek Doulik  <rodo@ximian.com>
410
411         * interp.c (dump_stack): print boxed values for --noptr
412         (ves_exec_method): use stackval_to_data as pointed out by lupus
413
414 2002-05-17  Radek Doulik  <rodo@ximian.com>
415
416         * interp.c (dump_stack): if --noptr then print content of strings
417         in form [str:<printed string>]
418
419 2002-05-16  Radek Doulik  <rodo@ximian.com>
420
421         * interp.c (ves_exec_method): use data.i instead of data.l in i32
422         case
423         (ves_exec_method): set type in I64 <--> I32 conversions
424
425 2002-05-15  Radek Doulik  <rodo@ximian.com>
426
427         * interp.c (ves_runtime_method): moved stackval_from_data call
428         inside #else branch, consulted on irc with lupus
429
430 2002-05-15  Dietmar Maurer  <dietmar@ximian.com>
431
432         * interp.c (ves_exec_method): use new mono_unhandled_exception()
433
434 2002-05-14  Radek Doulik  <rodo@ximian.com>
435
436         * interp.c: introduced new --noptr option to suppres pointer
437         address printing. I find this useful for comparing trace outputs
438         while porting to ppc
439
440 Tue May 14 16:37:55 CEST 2002 Paolo Molaro <lupus@ximian.com>
441
442         * interp.c: some finally handling fixes and compilation fixes for
443         changes in the runtime lib.
444
445 2002-04-30  Dick Porter  <dick@ximian.com>
446
447         * interp.c: Tell glib to not abort when g_log() etc print
448         recursively
449
450 Mon Apr 22 16:52:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
451
452         * interp.c: handle muslticast delegates. Implement a couple more
453         convert opcodes. Pretend we spend some time jitting...
454
455 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
456
457         * interp.c (ves_exec_method): support internalcall String constructors
458
459 2002-04-19  Dan Lewis  <dihlewis@yahoo.co.uk>
460         
461         * interp.c: support for new szarray format.
462
463 Tue Apr 16 20:12:58 CEST 2002 Paolo Molaro <lupus@ximian.com>
464
465         * interp.c: removed profiling code (moved to common library).
466         Implemented inlining for some special methods.
467
468 2002-04-15      Patrik Torstensson <patrik.torstensson@labs2.com>
469
470         * interp.c: Using fullnames when adding icall's (array)
471
472 Wed Apr 10 16:07:23 CEST 2002 Paolo Molaro <lupus@ximian.com>
473
474         * interp.c: quick implementation for opcodes needed by the new parse
475         routines in corlib.
476
477 Tue Apr 9 13:08:26 CEST 2002 Paolo Molaro <lupus@ximian.com>
478
479         * interp.c: make the interp thread-safe wrt the metadata lib.
480
481 Mon Apr 8 17:15:48 CEST 2002 Paolo Molaro <lupus@ximian.com>
482
483         * interp.c: display return value with --trace.
484         Call mono_runtime_init ().
485
486 2002-04-06  Dietmar Maurer  <dietmar@ximian.com>
487
488         * interp.c (interp_mono_runtime_invoke): handle more types,
489         removed runtime_exec_main
490
491 Thu Apr 4 11:36:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
492
493         * interp.c: don't try to get an IL opcode for runtime and internal
494         call methods.
495
496 Thu Mar 28 16:54:51 CET 2002 Paolo Molaro <lupus@ximian.com>
497
498         * interp.c: spring warning cleanup.
499
500 Thu Mar 28 12:03:28 CET 2002 Paolo Molaro <lupus@ximian.com>
501
502         * interp.c: check obj address in stfld.
503
504 2002-03-27  Dietmar Maurer  <dietmar@ximian.com>
505
506         * interp.c (ves_exec_method): CASTCLASS: fix for transparent proxy
507
508 Tue Mar 26 20:09:10 CET 2002 Paolo Molaro <lupus@ximian.com>
509
510         * interp.c: set frame->ip before dumping the stack trace.
511
512 Tue Mar 26 19:54:45 CET 2002 Paolo Molaro <lupus@ximian.com>
513
514         * interp.c: remove glib mem vtable code.
515
516 2002-03-26  Dick Porter  <dick@ximian.com>
517
518         * interp.c: Show thread ID's in trace output.
519                 
520         New option "--traceclassinit" to put debug output around
521         runtime_class_init().
522
523         Make sure all options are displayed in usage().
524
525 Tue Mar 26 17:03:14 CET 2002 Paolo Molaro <lupus@ximian.com>
526
527         * interp.c: support fieldrefs when accessing instance fields.
528
529 Mon Mar 25 12:59:52 CET 2002 Paolo Molaro <lupus@ximian.com>
530
531         * interp.c: allow tracing to be done on a per-method basis.
532         Fix interp_mono_runtime_invoke() to deal correcttly with the return
533         value. Disable glib mem vtable setting.
534
535 Thu Mar 21 18:08:37 CET 2002 Paolo Molaro <lupus@ximian.com>
536
537         * interp.c: set stack trace info when throwing an exception.
538
539 Thu Mar 21 17:32:46 CET 2002 Paolo Molaro <lupus@ximian.com>
540
541         * interp.c: intern strings before executing a method (and don't 
542         intern command line arguments anymore). Add sanity checks in alloca
543         use.
544
545 Sat Mar 16 19:15:18 CET 2002 Paolo Molaro <lupus@ximian.com>
546
547         * interp.c: restore frame on return from unmanaged calls.
548         Add support for continuing execution up to x IL insn.
549         Fix exception handling when an exception is raised in the catch
550         handler of the same method that issued the first one.
551
552 2002-03-11  Dietmar Maurer  <dietmar@ximian.com>
553
554         * interp.c (ves_runtime_method): set method_info field
555
556 Mon Mar 11 14:48:07 CET 2002 Paolo Molaro <lupus@ximian.com>
557
558         * interp.c: corlib consistency checls moved to libmetadata.
559
560 Mon Mar 11 11:27:27 CET 2002 Paolo Molaro <lupus@ximian.com>
561
562         * interp.c: use the new facilities in debug-helpers to
563         disassemble CIL code and match method names to MonoMethods.
564
565 Thu Mar 7 17:20:59 CET 2002 Paolo Molaro <lupus@ximian.com>
566
567         * interp.c: Boehm-GC enable. Fix some overflow opcodes.
568
569 Tue Mar 5 18:12:40 CET 2002 Paolo Molaro <lupus@ximian.com>
570
571         * interp.c: fix non-debug build and some more opcode work.
572
573 Mon Mar 4 11:21:44 CET 2002 Paolo Molaro <lupus@ximian.com>
574
575         * interp.c: print the address of 'this' in tracing mode.
576
577 Thu Feb 28 19:18:59 CET 2002 Paolo Molaro <lupus@ximian.com>
578
579         * interp.c: add checks for more binary consistency.
580
581 2002-02-27  Dietmar Maurer  <dietmar@ximian.com>
582
583         * interp.c (interp_mono_runtime_invoke): use alloca instead of g_new0
584
585 Tue Feb 26 11:43:34 CET 2002 Paolo Molaro <lupus@ximian.com>
586
587         * interp.c: added profiling for object creation.
588
589 Mon Feb 25 17:37:07 CET 2002 Paolo Molaro <lupus@ximian.com>
590
591         * interp.c: use correct value for guint64 max.
592
593 2002-02-22  Radek Doulik  <rodo@ximian.com>
594
595         * interp.c: s/gulong/guint64 as it differs on ppc
596
597 Wed Feb 20 22:18:40 CET 2002 Paolo Molaro <lupus@ximian.com>
598
599         * interp.c: more complete runtime_invoke () implementation.
600         Fixed castclass/isinst to work correctly with arrays.
601
602 Tue Feb 19 20:21:14 CET 2002 Paolo Molaro <lupus@ximian.com>
603
604         * interp.c: implement the runtime_invoke function.
605
606 Mon Feb 18 15:49:20 CET 2002 Paolo Molaro <lupus@ximian.com>
607
608         * interp.c: fix alignment code. Make sure to init classes
609         in more cases. Command-line arguments are interned.
610
611 2002-02-16  Radek Doulik  <rodo@ximian.com>
612
613         * interp.c (ves_exec_method): test type of sp [-1] instead of sp
614         [0], because sp [-1] is the value going to be shifted, fixed in
615         CEE_SHL, CEE_SHR, CEE_UN opcodes)
616
617 Sat Feb 16 12:00:24 CET 2002 Paolo Molaro <lupus@ximian.com>
618
619         * interp.c: fixed cut&paste error for ldind.r4 and ldind.r8.
620
621 Fri Feb 15 15:07:27 CET 2002 Paolo Molaro <lupus@ximian.com>
622
623         * interp.c: use strrchr instead of rindex. use _isnan and _finite on
624         win32 systems.
625
626 2002-02-14  Jeffrey Stedfast  <fejj@ximian.com>
627
628         * interp.c (ves_exec_method): replace 
629         'g_assert (sp->type = VAL_VALUETA)' with 
630         'g_assert (sp->type == VAL_VALUETA)' otherwise
631         the assert always passes. FIXME: should the test have been !=?
632
633 2002-02-14  Dietmar Maurer  <dietmar@ximian.com>
634
635         * interp.c (stackval_from_data): fix for MONO_TYPE_PTR
636
637 Wed Feb 13 16:17:38 CET 2002 Paolo Molaro <lupus@ximian.com>
638
639         * interp.c: fixed newobj implementation for valuetypes bug found by
640         dietmar. sub.ovf dummy code.
641
642 Tue Feb 12 14:08:47 CET 2002 Paolo Molaro <lupus@ximian.com>
643
644         * hacks.h: check against redefining preprocessor symbol.
645         * interp.c: fix profile info to return more sensible results.
646
647 Mon Feb 11 13:05:29 CET 2002 Paolo Molaro <lupus@ximian.com>
648
649         * interp.c: added "die on exception" command line argument.
650         When we segfault, set the message in the exception to "Segmentation
651         fault" so people can recognise what's going on.
652
653 2002-02-10  Miguel de Icaza  <miguel@ximian.com>
654
655         * interp.c (ves_exec_method): Compare the element_class type token
656         in the class we got as well, instead of the element class vs the
657         toplevel class.
658
659         This fixes the invalid cast exceptions during unboxing
660
661 Fri Feb 8 13:01:03 CET 2002 Paolo Molaro <lupus@ximian.com>
662
663         * interp.c: use opcode information from libmetadata.
664
665 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
666
667         * interp.c (ves_exec_method): CEE_UNBOX: use element_class for
668         type check.
669
670 2002-02-04  Dietmar Maurer  <dietmar@ximian.com>
671
672         * interp.c (main): impl. __array_Address icall
673
674 Fri Feb 1 16:03:53 CET 2002 Paolo Molaro <lupus@ximian.com>
675
676         * interp.c: exception fixes. Use mono_method_pointer_get ()
677         to easy porting to other archs. Some support for overflow detection.
678
679 2002-01-25  Dietmar Maurer  <dietmar@ximian.com>
680
681         * interp.c, jit.c (main): install runtime_exec_main handler
682         (main): bug fix - call TlsAlloc () before we execute code
683
684 2002-01-23  Dick Porter  <dick@ximian.com>
685
686         * interp.c: Added some kludges to cope with CONV_OVF_I2,
687         CONV_OVF_I4 and ADD_OVF so that number formatting works.  Also
688         initialise and cleanup the network support.
689
690 Thu Jan 10 20:59:59 CET 2002 Paolo Molaro <lupus@ximian.com>
691
692         * interp.c, interp.h: add a flag to mono_create_trampoline ()
693         to handle runtime methods.
694
695 Sat Jan 5 15:45:14 CET 2002 Paolo Molaro <lupus@ximian.com>
696
697         * interp.c: allow classname:method name in --debug argument.
698         Fix box opcode for valuetypes. Fix a few opcode to take a 16 bit
699         index instead of 32 (stloc, ldloc, starg, etc.).
700
701 Thu Jan 3 23:19:27 CET 2002 Paolo Molaro <lupus@ximian.com>
702
703         * interp.c: temporary mul.ovf, mul.ovf.un, add.ovf.un implementations
704         to get the compiler going.
705
706 Mon Dec 24 17:23:45 CET 2001 Paolo Molaro <lupus@ximian.com>
707
708         * interp.c: fix ldc.i8.
709
710 Thu Dec 20 20:09:48 CET 2001 Paolo Molaro <lupus@ximian.com>
711
712         * interp.c: fix delegate method invocation to handle both
713         static and instance methods.
714
715 Tue Dec 18 18:48:50 CET 2001 Paolo Molaro <lupus@ximian.com>
716
717         * interp.c: make segv_handler static, handle runtime methods in stack
718         trace.
719
720 Thu Dec 13 20:24:28 CET 2001 Paolo Molaro <lupus@ximian.com>
721
722         * interp.c: correctly handle exceptions generated in C code.
723         Install an handler for SIGSEGV. Bare-bones profiler and hook for the
724         verifier.
725
726 Mon Dec 3 17:15:44 CET 2001 Paolo Molaro <lupus@ximian.com>
727
728         * interp.c: call mono_init() after registering internal calls.
729
730 2001-11-30  Dick Porter  <dick@ximian.com>
731
732         * interp.c: Replace get_named_exception() with
733         mono_exception_from_name()
734
735 Fri Nov 30 12:05:21 CET 2001 Paolo Molaro <lupus@ximian.com>
736
737         * interp.c: calculate locals and args offsets only once
738         per method call. Cache trampoline code as well.
739
740 2001-11-23  Dietmar Maurer  <dietmar@ximian.com>
741
742         * interp.c (ves_exec_method): bug fix for exception5.cs
743
744 Mon Nov 19 11:33:00 CET 2001 Paolo Molaro <lupus@ximian.com>
745
746         * interp.c: start adding support for handling exceptions across
747         managed/unmanaged boundaries. Cleanup Delegate method invocation.
748         Pass the correct target object in Delegate::Invoke and use the correct
749         'this' pointer in ldvirtftn (bugs pointed out by Dietmar).
750
751 Thu Nov 15 17:40:24 CET 2001 Paolo Molaro <lupus@ximian.com>
752
753         * interp.c: handle enums with underlying type different from int32.
754         More checks for C structs <-> C# objects consistency.
755
756 Wed Nov 14 19:23:00 CET 2001 Paolo Molaro <lupus@ximian.com>
757
758         * interp.c: move the stack frame dumping code to a function so it can
759         be called from the debugger. Fix virtual method lookup for interfaces.
760         Throw exceptions instead of aborting in more places.
761         Print also the message in an exception. Updates for field renames in
762         corlib.
763
764 2001-11-09  Dick Porter  <dick@ximian.com>
765
766         * Makefile.am (mint_LDADD): Don't need THREAD_LIBS any more
767
768 2001-11-07  Miguel de Icaza  <miguel@ximian.com>
769
770         * interp.c: Include stdlib to kill warning.
771         (check_corlib): Adjust format encodings to remove warnings.
772
773 Wed Nov 7 15:47:36 CET 2001 Paolo Molaro <lupus@ximian.com>
774
775         * interp.c: updates for changes in array code.
776
777 Fri Nov 2 19:06:54 CET 2001 Paolo Molaro <lupus@ximian.com>
778
779         * interp.c: hanlde field refs. Throw an exception on NULL references.
780         Check consistency of corlib types with the C struct representation.
781
782 2001-10-25  Dietmar Maurer  <dietmar@ximian.com>
783
784         * interp.c (ves_exec_method): use relative numbering for runtime
785         type checks (and make it work with interfaces)
786
787 2001-10-15  Dietmar Maurer  <dietmar@ximian.com>
788
789         * interp.c: removed newobj()
790
791 2001-10-10  Dietmar Maurer  <dietmar@ximian.com>
792
793         * interp.c (get_virtual_method): use the vtable
794         (arch_compile_method): added to compute vtable entry
795
796 Mon Oct 8 16:14:40 CEST 2001 Paolo Molaro <lupus@ximian.com>
797
798         * interp.c: use the accessors provided in object.h to deal with
799         MonoArrays. Updates for API renames in metadata. Throw exception
800         in ldelema if index is out of bounds.
801
802 Mon Oct 8 10:44:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
803
804         * interp.c: fixes for changes in metadata.
805
806 2001-10-04  Dick Porter  <dick@ximian.com>
807
808         * interp.c (ves_runtime_method): init_class() the
809         mono_defaults.delegate_class
810         Include mono-endian.h not endian.h
811
812 Tue Oct 2 18:51:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
813
814         * interp.c: set frame->ip in the leave opcode. Make db_methods static.
815
816 Sun Sep 30 11:57:15 CEST 2001 Paolo Molaro <lupus@ximian.com>
817
818         * interp.c: compiler and ANSI C portability fixes.
819
820 Fri Sep 28 19:37:46 CEST 2001 Paolo Molaro <lupus@ximian.com>
821
822         * interp.c: Implemented ldtoken, conv.ovf.i. Use MonoClass->byval_arg
823         (and remove related kludges). Don't choke on access to arrays of
824         references. Throw an exception when an internalcall or P/Invoke
825         function don't have an implementation. Throw and EngineException
826         for unimplemented opcodes.
827
828 Tue Sep 25 11:12:35 CEST 2001 Paolo Molaro <lupus@ximian.com>
829
830         * interp.c: fixed get_virtual_method () to deal with interface
831         methods better.
832
833 Mon Sep 24 18:50:25 CEST 2001 Paolo Molaro <lupus@ximian.com>
834
835         * interp.c: catch a few more error conditions with exceptions instead of
836         erroring out.
837         Don't use g_print() in stack traces because it doesn't work with
838         some float values.
839         When we call an instance method of a valuetype class, unbox the 'this'
840         argument if it is an object.
841         Use mono_ldstr () to implement the ldstr opcode: it takes care of
842         interning the string if necessary.
843         Implemented new opcodes: ckfinite, cgt.un, clt.un, ldvirtftn, ldarga.
844         Fixes to handle NaNs when comparing doubles.
845         Make sure the loaded assembly has an entry point defined.
846         Fixed portability bugs in neg and not opcodes.
847
848 2001-09-24  Dietmar Maurer  <dietmar@ximian.com>
849
850         * interp.c (ves_exec_method): LDC_I4: 8bit constants are signed
851         (ves_exec_method): bug fix for NOT/NEG
852         (main): fix bug in parameter parsing
853
854 2001-09-23  Dick Porter  <dick@ximian.com>
855
856         * Makefile.am (mint_LDADD): rename PTHREAD_LIBS to THREAD_LIBS
857
858 2001-09-23  Dick Porter  <dick@ximian.com>
859
860         * interp.c (main): Do some thread setup and cleanup around the
861         call to ves_exec()
862
863 2001-09-21  Dick Porter  <dick@ximian.com>
864
865         * Makefile.am (mint_LDADD): Added PTHREAD_LIBS to the link line
866
867 Thu Sep 20 16:32:42 CEST 2001 Paolo Molaro <lupus@ximian.com>
868
869         * interp.c: implemented some more opcodes: calli, rem.un,
870         shr.un, conv.u, cpobj, stobj, conv.r.un, conv.ovf.i1.un,
871         conv.ovf.i2.un, conv.ovf.i4.un, conv.ovf.i8.un, conv.ovf.i.un,
872         conv.ovf.u1.un, conv.ovf.u2.un, conv.ovf.u4.un, conv.ovf.u8.un,
873         conv.ovf.u.un.
874         Fix some 64 bit issues in the array element access code and a small bug.
875         Throw an exception on index out of range instead of asserting.
876         Throw an exception on a NULL array instead of dying.
877         Stomped a memory corruption bug (.cctor methods were freed after
878         executing them, but they are stores in MonoClass now...).
879         Added a simple facility to invoke the debugger when a named
880         function is entered (use the cmdline option --debug method_name).
881         * interp.h: fix 64 bit issue.
882
883 Tue Sep 18 13:21:33 CEST 2001 Paolo Molaro <lupus@ximian.com>
884
885         * interp.c: fix some 64 bit issues. Safer support for delegates.
886
887 2001-09-12  Miguel de Icaza  <miguel@ximian.com>
888
889         * interp.c (ves_exec_method): implement conv.u8 opcode. 
890
891 Mon Sep 10 20:20:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
892
893         * interp.c: endian fixes, comments.
894
895 Fri Sep 7 18:45:38 CEST 2001 Paolo Molaro <lupus@ximian.com>
896
897         * interp.c, interp.h: make ves_exec_method () and stackval_from_data ()
898         non static. Implement a couple of runtime methods needed to
899         use delegates (ves_runtime_method ()).
900         Implemented ldftn opcode.
901
902 Thu Sep 6 15:41:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
903
904         * Makefile.am: link to libmonoarch.
905         * interp.h, interp.c: use mono_create_trampoline ().
906         Pass the command line arguments to Main (String[]) methods.
907
908 2001-08-30  Dietmar Maurer  <dietmar@ximian.com>
909
910         * interp.c (ves_pinvoke_method): removed the libffi dependency
911
912 2001-08-29  Dietmar Maurer  <dietmar@ximian.com>
913
914         * interp.c (ves_array_set): moved from icall.c
915         (ves_array_get): moved from icall.c
916
917         * icall.c: moved to metadata/icall.c
918
919 Wed Aug 29 12:46:06 CEST 2001 Paolo Molaro <lupus@ximian.com>
920
921         * interp.c: some small optimizations. Fixes to do signed
922         compares when needed. Change C++ comments into C.
923         Implemented cgt, clt. Added --opcode-count cmdline switch.
924
925 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
926
927         * interp.c (ves_exec_method): better check for value types (get
928         the class to detect if we have a value type), implemented CEE_CONV_U1,
929         CEE_CONV_U2, CEE_CEQ
930         
931
932 Mon Aug 27 21:30:30 CEST 2001 Paolo Molaro <lupus@ximian.com>
933
934         * interp.c: warn and exit when Main () expects the cmdline arguments
935         instead of creashing.
936
937 Mon Aug 27 20:16:37 CEST 2001 Paolo Molaro <lupus@ximian.com>
938
939         * interp.c: merge isinst/castclass handling. Hopefully implement
940         the right semantics for handling callvirt correctly (changes
941         here and there to support it). Integrate bugfix from Dietmar quickly
942         so he needs to handle the cvs conflict:-)
943
944 Mon Aug 27 12:20:32 CEST 2001 Paolo Molaro <lupus@ximian.com>
945
946         * interp.c: fix compilation and updates for changes in metadata/.
947
948 2001-08-26  Miguel de Icaza  <miguel@ximian.com>
949
950         * interp.c (main): Add option handling for the interpreter,
951         support the `--trace' option.
952
953 Sun Aug 26 23:04:46 CEST 2001 Paolo Molaro <lupus@ximian.com>
954
955         * interp.c: get in a dummy virtual method dispatch.
956         Added support for int64, native int and native uint as arguments.
957         Added debug enter/leave for icall and pinvoke methods, too.
958         Implement opcodes conv.i, conv.i8, ldelema.
959
960 Sun Aug 26 11:37:30 CEST 2001 Paolo Molaro <lupus@ximian.com>
961
962         * interp.h, interp.c: load also a MonoClass pointer when we load
963         an address on the stack. Implemented conv.i1, conv.i2, con.i4,
964         conv.u4, conv.r4, conv.r8. Print the arguments in the stack trace
965         and the name of the exception.
966
967 Sat Aug 25 15:56:03 CEST 2001 Paolo Molaro <lupus@ximian.com>
968
969         * interp.c: Implemented some opcodes: starg.s, ldobj, isinst,
970         ldarg, starg, ldloc, ldloca, stloc, initobj, cpblk, sizeof.
971
972 Sat Aug 25 12:57:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
973
974         * interp.c: handle enumerations specially (not as valuetypes).
975
976 Fri Aug 24 19:34:04 CEST 2001 Paolo Molaro <lupus@ximian.com>
977
978         * interp.h, interp.c: add support for valuetypes.
979
980 Fri Aug 24 16:09:20 CEST 2001 Paolo Molaro <lupus@ximian.com>
981
982         * interp.c: updates for merge of MonoParam in MonoType.
983
984 Thu Aug 23 12:04:34 CEST 2001 Paolo Molaro <lupus@ximian.com>
985
986         * interp.c: removed beforefieldinit check, it's a useless flag.
987         Added a couple more test cases to tests/ dir.
988
989 2001-08-22  Miguel de Icaza  <miguel@ximian.com>
990
991         * interp.c (usage): Add version information
992         (ves_pinvoke_method): Typo fix.
993
994 Wed Aug 22 20:37:51 CEST 2001 Paolo Molaro <lupus@ximian.com>
995
996         * interp.c: simplified init_class (). Make sure a class
997         is fully initialized before executing a method in the class.
998         Search for the class constructor only on beforefieldinit classes.
999         Implement a bunch of opcodes: br, brfalse, brtrue, beq, bge,
1000         bgt, blt, ble, bne.un, bge.un, bgt.un, ble.un, blt.un, stind.i,
1001         ldflda, ldsflda, ldelem.i8, stelem.i8, leave.
1002
1003 Wed Aug 22 16:34:03 CEST 2001 Paolo Molaro <lupus@ximian.com>
1004
1005         * interp.c: Updates for changes in metadata/. Better output in debug mode
1006         and in the stack trace. Completed rethrow handling
1007
1008 Tue Aug 21 18:56:19 CEST 2001 Paolo Molaro <lupus@ximian.com>
1009
1010         * interp.c: new macro INIT_FRAME() to properly
1011         initialize a MonoInvocation. Fixed a couple of buglets in exception code:
1012         increase stack pointer when pushing the exception for catch blocks,
1013         initialize frame->ex_handler to NULL, correctly try all the
1014         catch blocks (don't incorrectly fallback on filter handling).
1015         Added a couple more checks where we may need to throw an
1016         exception. Added more exception creation functions.
1017         Changed stackval_from_data() to take the target stackval as
1018         argument. Implemented a couple more opcodes.
1019         * interp.h: prepare stackval for value type code.
1020
1021 2001-08-21  Miguel de Icaza  <miguel@ximian.com>
1022
1023         * Makefile.am (mint_LDADD): Renamed interpreter to mint.
1024
1025 2001-08-21  Dietmar Maurer  <dietmar@ximian.com>
1026
1027         * interp.c (get_named_exception): use the right constructor.
1028
1029 Mon Aug 20 18:58:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
1030
1031         * interp.c: fix buglet with the leave.s opcode.
1032
1033 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
1034
1035         * icall.c: changed everything to support the new calling convention
1036
1037         * hacks.h: added some macros for FreeBSD 
1038
1039         * interp.c (get_named_exception): use mono_object_new instead of
1040         newobj, initialize the stack before we call the constructor.
1041
1042 Sat Aug 18 12:43:38 CEST 2001 Paolo Molaro <lupus@ximian.com>
1043
1044         * interp.c, interp.h: added support code to create exceptions.
1045         Changed interncal calling convnetion over to MonoInvocation, to support
1046         exceptions, walking the stack back and forward and passing the 'this'
1047         pointer separately (remove the cludges required before to pass this on the
1048         stack). Use alloca heavily for both local vars and a copy of the incoming 
1049         arguments. Init local vars to zero.
1050         Simplify stackval_from_data() and stackval_to_data() to only take a pointer
1051         instead of pointer + offset.
1052         Implement a few exceptions-related opcodes and the code to run finally, fault and
1053         catch blocks as well as a stack trace if no handler is found.
1054         
1055 2001-08-16  Alex Graveley  <alex@ximian.com>
1056
1057         * Makefile.am (mono_int_LDADD): Link with ../../libffi/libffi.a
1058         instead of ../../libffi/.libs/libffi.a.
1059
1060 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
1061
1062         * interp.c (ves_exec_method): impl CASTCLASS
1063
1064         * icall.c: moved the internal call stuff to this file
1065
1066         * interp.c (ves_exec_method): impl. BOX/UNBOX
1067         (ves_icall_System_Array_GetValue): impl.
1068         (ves_icall_System_Array_SetValue): impl.
1069         added myself to Authors
1070
1071 2001-08-09  Dietmar Maurer  <dietmar@ximian.com>
1072
1073         * implemented arrays, but you will need a modified version of 
1074         Array.cs to get arrays working (will commit soon)
1075         
1076         * interp.c (ves_icall_array_Set): impl.
1077         (ves_icall_array_Get): impl.
1078         (ves_icall_array_ctor): impl.
1079         (ves_icall_System_Array_GetRank): impl.
1080         (ves_icall_System_Array_GetLength): impl.
1081         (ves_icall_System_Array_GetLowerBound): impl.
1082         (mono_lookup_internal_call): impl.
1083
1084 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
1085
1086         * interp.c (ves_exec_method): impl. NEWARR
1087         (ves_exec_method): impl. most LDELEM/STELEM opcodes, LDLEN
1088         (newarr): impl.
1089         (mono_get_ansi_string): impl.
1090         (mono_lookup_internal_call): impl.
1091         (ves_exec_method): implemented internal calls
1092
1093 2001-08-05  Dietmar Maurer  <dietmar@ximian.com>
1094
1095         * interp.c (ves_pinvoke_method): removed all static vars.
1096
1097 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
1098
1099         * interp.c (ves_exec_method): found a way to do unordered
1100         compares, implemented CEE_BNE_UN_S, CEE_BGE_UN_S, CEE_BGT_UN_S, 
1101         CEE_BLE_UN_S, CEE_BLT_UN_S
1102         
1103 Wed Aug 1 22:51:38 CEST 2001 Paolo Molaro <lupus@ximian.com>
1104
1105         * interp.c: handle also MONO_TYPE_CLASS to/from the stack.
1106         Change locals to be a memory blob, instead of the structured
1107         (but wrong) stackval. Implement bne.un.s opcode. Make the program
1108         exit with the error code from Main().
1109
1110 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
1111
1112         * interp.c (ves_exec_method): implemented LDSTR
1113
1114 2001-07-31  Miguel de Icaza  <miguel@ximian.com>
1115
1116         * interp.c (GET_NATI): Switched from using nati_t to cli/types.h
1117         m_i type.  Maybe we should rename the types to be m_i_t instead of
1118         m_i alone.
1119         
1120         Make the code compile after I broke it.
1121
1122 Tue Jul 31 23:46:33 CEST 2001 Paolo Molaro <lupus@ximian.com>
1123
1124         * interp.c: fix cleanup.
1125         * Makefile.am: don't link with disassembler library.
1126
1127 2001-07-31  Miguel de Icaza  <miguel@ximian.com>
1128
1129         (ves_exec_method): Cleanup of the source code.
1130
1131 Tue Jul 31 20:13:59 CEST 2001 Paolo Molaro <lupus@ximian.com>
1132
1133         * interp.c: implement stind.*, ldind.*, ldloca.s opcodes.
1134         Provide better tracing with DEBUG_INTERP.
1135
1136 Tue Jul 31 17:52:53 CEST 2001 Paolo Molaro <lupus@ximian.com>
1137
1138         * interp.c: massive namespace cleanup.
1139
1140 Mon Jul 30 20:09:58 CEST 2001 Paolo Molaro <lupus@ximian.com>
1141
1142         * interp.c: update to use mono_method->name.
1143
1144 Fri Jul 27 20:54:00 CEST 2001 Paolo Molaro <lupus@ximian.com>
1145
1146         * interp.c: start implementing callvirt. Classes with
1147         class constructors are properly initialized when needed.
1148         Fix error introduced in version 1.17.
1149
1150 Fri Jul 27 14:03:19 CEST 2001 Paolo Molaro <lupus@ximian.com>
1151
1152         * interp.c: implement static field loading and storing.
1153
1154 2001-07-27  Dietmar Maurer  <dietmar@ximian.com>
1155
1156         * interp.c (ves_pinvoke_method): impl.
1157
1158 Fri Jul 27 11:49:19 CEST 2001 Paolo Molaro <lupus@ximian.com>
1159
1160         * interp.c: Removed some debugging printouts. Made stackval_to_data
1161         static. Handle also instance methods in CALL opcode. Fix ret to properly
1162         deal with void functions. Fixed constructor to leave the object on
1163         the stack.
1164
1165 Thu Jul 26 13:24:51 CEST 2001 Paolo Molaro <lupus@ximian.com>
1166
1167         * interp.c: ves_exec_method () doesn't take a MonoImage arg
1168         anymore. Use the method cache in MonoImage. Updates to
1169         mache recent changes in metadata. 
1170         Fix newobj code to use new metadata features. Call the class
1171         constructor after allocationg the object. Implemented load field
1172         and store field opcodes (the support functions need to be finished).
1173         
1174 Tue Jul 24 16:51:09 CEST 2001 Paolo Molaro <lupus@ximian.com>
1175
1176         * interp.c, hacks.h: moved a few ugly macros out of the code.
1177         Implemented switch opcode.
1178
1179 2001-07-23  Miguel de Icaza  <miguel@ximian.com>
1180
1181         * interp.c (newobj): Added function to handle newobj opcode.
1182
1183 2001-07-18  Miguel de Icaza  <miguel@ximian.com>
1184
1185         * interp.c (ves_exec_method): Make the interpreter abort with more
1186         information than it currently does.
1187
1188         Enable the slow processor, as it is easier to debug.
1189
1190 Sun Jul 15 17:50:23 CEST 2001 Paolo Molaro <lupus@ximian.com>
1191
1192         * Started changelog.
1193         * interp.c: use new mono_get_method () function to get the complete
1194         info on a method invocation: we support now method invocation with
1195         multiple (or zero) simple arguments and with or without a return value.
1196         Implement also a couple more opcodes.