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