1 2003-08-26 Martin Baulig <martin@ximian.com>
3 * mini.c (get_basic_blocks): Added `unsigned char **pos' argument;
4 when reporting an error, set this to the actual error location.
5 (mono_method_to_ir): Report the correct error location if
6 get_basic_blocks() returned an error.
8 2003-08-25 Zoltan Varga <vargaz@freemail.hu>
10 * mini.c (mono_type_blittable): OBJECT is not blittable.
11 (mono_method_blittable): Methods which have marshalling descriptors
12 are not blittable either. Fixes #47842.
14 2003-08-22 Zoltan Varga <vargaz@freemail.hu>
16 * driver.c mini.c: Use an environment variable instead of a global
17 variable. Also fix the build.
19 * mini.c (mini_init): Call g_thread_init () to make glib thread-safe.
20 Fixes #47682. Thanks to Laurent Morichetti (l_m@pacbell.net) for
23 * driver.c mini.c: Added --with-valgrind option to turn off some
24 code which prevents mono from running under valgrind.
26 * mini.c (mono_emit_call_args): Fixed warning.
28 * mini.c (mono_emulate_opcode): Fixed warning.
30 Thu Aug 21 19:10:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
32 * inssel.brg: 64bit fixes from Laurent Morichetti <l_m@pacbell.net>.
33 * linear-scan.c, mini-ppc.h, mini-sparc.h, mini-x86.h, mini.h,
34 regalloc.c, regalloc.h: specify available registers in arch-specific
35 code and support floats in the regallocator (patch by Laurent Morichetti
38 Wed Aug 20 19:02:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
40 * mini.c: mono_thread_current() can be called only after
41 mono_runtime_init(): rearrange code to not call it early on.
43 Wed Aug 20 13:14:31 CEST 2003 Paolo Molaro <lupus@ximian.com>
45 * mini.c: allocate jump tables in the code mempools.
47 Wed Aug 20 13:04:53 CEST 2003 Paolo Molaro <lupus@ximian.com>
49 * mini.c, mini.h: make sure per-thread data allocated by the jit is
52 2003-08-10 Miguel de Icaza <miguel@ximian.com>
54 * cpu-pentium.md (ldtoken): Change the length for mul.ovf.un from
55 12 to 16. This fixes bug #47453.
58 Thu Aug 7 15:59:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
60 * mini-ppc.c: fixed indexed load and unsigned compares.
62 2003-08-06 Lluis Sanchez Gual <lluis@ximian.com>
64 * mini.c: reenabled installation of handler for
67 Tue Aug 5 12:21:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
69 * cprop.c, mini-x86.c, cpu-pentium.md: fix buglets spotted
70 by Laurent Morichetti <l_m@pacbell.net>. Disabled local cprop
71 until it's fixed and actually useful.
73 Mon Aug 4 12:12:26 CEST 2003 Paolo Molaro <lupus@ximian.com>
75 * inssel-long32.brg: couple more opcodes implemented.
77 Thu Jul 31 22:43:02 EDT 2003 Mark Crichton <crichton@gimp.org>
79 * mini-sparc.c: Even more opcodes implemeted.
81 Thu Jul 31 19:36:03 EDT 2003 Mark Crichton <crichton@gimp.org>
83 * mini-sparc.c: More opcodes implemented.
85 Thu Jul 31 15:16:26 EDT 2003 Mark Crichton <crichton@gimp.org>
87 * mini-sparc.c: More opcodes implemented.
89 Wed Jul 30 22:31:02 EDT 2003 Mark Crichton <crichton@gimp.org>
91 * inssel-sparc.brg: Add some needed rules. Direct
93 * Makefile.am: Use inssel-sparc.brg
94 * exceptions-sparc.c: 0xdeadbeef/0xdecafbad to keep
95 an assert happy for now.
97 Wed Jul 30 20:44:07 EDT 2003 Mark Crichton <crichton@gimp.org>
99 * mini-sparc.c: Fixed compile errors.
100 * exceptions-sparc.c: Same. We now produce a mono binary
103 Wed Jul 30 14:10:12 EDT 2003 Mark Crichton <crichton@gimp.org>
105 * mini-sparc.c: Renamed registers. Also some macro cleanups.
106 * exceptions-sparc.c, tramp-sparc.c: Various compile fixes.
107 They compile, but do not work.
109 Wed Jul 30 17:52:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
111 * Makefile.am, cpu-sparc.md, exceptions-sparc.c, mini-sparc.c,
112 mini-sparc.h, tramp-sparc.c: Beginning of sparc support
113 from Mark Crichton <crichton@gimp.org> and Christopher Taylor
116 Tue Jul 29 12:43:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
118 * mini.c: more opcodes implemented and better support for generics.
120 Fri Jul 25 18:51:45 CEST 2003 Paolo Molaro <lupus@ximian.com>
122 * cpu-g4.md, cpu-pentium.md: updates for new instructions.
123 * mini.c, mini.h: first cut at generics support: some new instructions
124 added and changed the behaviour of some of the existing ones.
126 2003-07-21 Miguel de Icaza <miguel@ximian.com>
128 * mini.c: Removed definition of metadata_shared mutex here.
130 Tue Jul 22 15:21:24 CEST 2003 Paolo Molaro <lupus@ximian.com>
132 * mini-x86.c: make vararg calls work for instance methods.
134 Fri Jul 18 19:26:20 CEST 2003 Paolo Molaro <lupus@ximian.com>
136 * mini.c, mini.h, mini-x86.c, mini-ppc.c: mono_arch_call_opcode()
137 returns the arguments in a separte list, now.
139 Fri Jul 18 13:16:18 CEST 2003 Paolo Molaro <lupus@ximian.com>
141 * aot.c, mini.c: updates for array type representation changes.
143 Fri Jul 18 11:28:28 CEST 2003 Paolo Molaro <lupus@ximian.com>
145 * mini.c: register function to perform jit shutdown.
147 Thu Jul 17 16:02:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
149 * mini.c: use a faster allocator if possible.
151 Thu Jul 17 16:00:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
153 * aot.c: some cleanups and portability changes.
155 Wed Jul 2 11:08:10 CEST 2003 Paolo Molaro <lupus@ximian.com>
157 * mini.c: use faster allocation for CEE_BOX if possible.
159 Mon Jun 30 19:16:33 CEST 2003 Paolo Molaro <lupus@ximian.com>
161 * mini.c, mini-ops.h, inssel.brg, mini-x86.c: optimized access to fields.
162 Moved inlined mempcy code to its own function so that is can be
163 reused. Added an inline memset function as well (optimized initobj).
164 * cpu-pentium.md, inssel-x86.brg: add and use lea_membase.
166 Fri Jun 27 11:19:10 CEST 2003 Paolo Molaro <lupus@ximian.com>
168 * mini.c, mini-ops.h, inssel.brg: optimized a couple of Array methods.
170 Wed Jun 25 13:19:25 CEST 2003 Paolo Molaro <lupus@ximian.com>
172 * mini.c, mini.h, mini.x86.c, mini-ppc.c: added facility so that
173 arch code can setup the cpu for CLR execution, if needed.
174 We use it on x86 to set the precision of FP operations.
176 Tue Jun 17 19:02:55 CEST 2003 Paolo Molaro <lupus@ximian.com>
178 * mini.c: disable some optimizations if we can guess they'll cost too
179 much for a given method.
181 2003-06-17 Zoltan Varga <vargaz@freemail.hu>
183 * mini.h mini.c: Rework last patch based on suggestions by Paolo.
185 2003-06-17 Zoltan Varga <vargaz@freemail.hu>
186 * mini.h mini.c mini-x86.c: Added instruction level coverage
187 info collection support.
189 Mon Jun 16 18:13:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
191 * driver.c, mini-ppc.c, mini-x86.c, mini.c, mini.h: the coverage stuff
192 is now implemented in the profiling API. Get rid of a couple of
193 unnecessary global variables.
195 2003-06-15 Nick Drochak <ndrochak@gol.com>
197 * basic-long.cs: tests for negative values for bigmul, and unsigned.
198 * cpu-g4.md: add op_bigmul and op_bigmul_un
199 * cpu_pentium.md: add op_bigmul_un
200 * inssel-long32.brg: add rule for unsigned bigmul
201 * mini-ops.h: define OP_BIGMUL_UN
202 * mini-x86.c: THE BUG: handle (un)signed properly
203 * mini.c: choose unsigned opcode if needed.
204 This set of patches fixes bug #44291
206 2003-06-13 Dietmar Maurer <dietmar@ximian.com>
208 * mini.c (optimize_branches): improved to handle all kinds of
209 conditional branches.
211 Wed Jun 11 18:01:06 CEST 2003 Paolo Molaro <lupus@ximian.com>
213 * mini.c, mini.h, jit-icalls.c: speedup emulation of opcodes that
214 don't raise exceptions.
216 Tue Jun 10 19:00:31 CEST 2003 Paolo Molaro <lupus@ximian.com>
218 * tramp-x86.c, tramp-ppc.c, debug-mini.c: move arch-specific code
219 to arch-specific files.
221 2003-06-09 Martin Baulig <martin@ximian.com>
223 * Makefile.am (libs): Added $(LIBGC_LIBS).
225 Mon Jun 9 20:21:47 CEST 2003 Paolo Molaro <lupus@ximian.com>
227 * cpu-pentium.md, mini-x86.c: fix (well, actually implement) OP_TAN
228 and OP_ATAN (fixes bug#44293).
230 Mon Jun 9 19:00:56 CEST 2003 Paolo Molaro <lupus@ximian.com>
232 * Makefile.am, mini-x86.c: rename cpu description array to
233 pentium_desc, since some compilers define the 'pentium' preprocessor
236 2003-05-28 Dietmar Maurer <dietmar@ximian.com>
238 * mini.c (mini_select_instructions): add explicit branch if the
239 following block is not the false target of a conditional branch -
240 we need this with any optimization that reorder or remove bblocks
242 * mini.c (optimize_branches): bug fixes
244 2003-06-06 Dietmar Maurer <dietmar@ximian.com>
246 * mini.c (mono_method_to_ir): inline static readonly fields
248 * ssa.c (fold_tree): start cfold support for long (very simple
251 * cfold.c (mono_constant_fold_inst): opt. CEE_CONV_I8 (OP_ICONST)
253 Fri Jun 6 11:41:18 CEST 2003 Paolo Molaro <lupus@ximian.com>
255 * inssel.brg: fixed memcpy (bug #44219).
257 2003-06-05 Dick Porter <dick@ximian.com>
259 * driver.c: Set the glib log levels to not abort if g_message
262 g_set_prgname() has to happen before mini_init() so that the
263 process handle gets the info.
265 Thu Jun 5 20:11:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
267 * driver.c: add intrins to the default optimizations to get wider
270 Wed Jun 4 19:47:57 CEST 2003 Paolo Molaro <lupus@ximian.com>
272 * mini.h: some large basic blocks will overflow a 16-bit
273 integers for symbolic registers.
275 2003-06-04 Dietmar Maurer <dietmar@ximian.com>
277 * mini-x86.c (mono_arch_output_basic_block): revert previous fprem changes.
278 (mono_arch_output_basic_block): fix bug 43499
280 Wed Jun 4 13:13:52 CEST 2003 Paolo Molaro <lupus@ximian.com>
282 * mini.c: kill duplicated definition of mono_debug_format.
284 Wed Jun 4 13:09:51 CEST 2003 Paolo Molaro <lupus@ximian.com>
286 * mini-x86.c, arrays.cs: fixed register allocation bug.
288 2003-06-04 Dietmar Maurer <dietmar@ximian.com>
290 * mini-x86.c (mono_arch_output_basic_block): use IEEE compatible fprem1
292 * mini.c (mini_get_opcode_for_method): inline IEEERemainder
294 2003-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
297 (print_method_from_ip): also print source location information if
300 2003-06-02 Dietmar Maurer <dietmar@ximian.com>
302 * mini.c (mono_find_block_region): bug fix in region code
303 (mini_method_compile): enable removing unreachable code again, but
304 only in methods without exception clauses.
306 Fri May 30 18:40:24 CEST 2003 Paolo Molaro <lupus@ximian.com>
308 * mini.c, mini-ops.h, cpu-pentium.md, inssel.brg, mini-x86.c, mini.h:
309 Implemented arglist opcode and handling of TypedReference type.
310 Fixed x86 call convention when a structure is returned.
311 Minimal support for calling static vararg methods.
313 2003-05-30 Dietmar Maurer <dietmar@ximian.com>
315 * mini.c (mini_method_compile): always remove unreachable code,
316 because the code in them may be inconsistent (access to dead
317 variables for example).
319 Thu May 29 11:44:49 CEST 2003 Paolo Molaro <lupus@ximian.com>
321 * driver.c, debug-mini.c: warning fixes.
323 Wed May 28 11:19:15 CEST 2003 Paolo Molaro <lupus@ximian.com>
325 * Makefile.am, jit.h, mini.h: install header for embedding mono.
327 Tue May 27 17:56:12 CEST 2003 Paolo Molaro <lupus@ximian.com>
329 * mini.c: thread-static fields are registered in mono_class_vtable(),
330 so ensure the function is called before checking for them.
332 2003-05-27 Dietmar Maurer <dietmar@ximian.com>
334 * mini.c (optimize_branches): fix for bug 43586
336 * jit-icalls.c (mono_llmult_ovf): added an additional check for
337 overflow (fixes Bug #43639)
339 Tue May 27 11:33:53 CEST 2003 Paolo Molaro <lupus@ximian.com>
341 * mini.c, objects.cs: allow the use of stobj for primitive types.
343 Tue May 27 10:33:53 CEST 2003 Paolo Molaro <lupus@ximian.com>
345 * mini.c: be less strict about argument checking until we support
346 running the verifier.
348 2003-05-27 Nick Drochak <ndrochak@gol.com>
350 * basic-long.cs: tests for (ulong)int * (ulong)int also
351 * mini.c: use the same trick for (ulong)int * (ulong)int
353 2003-05-27 Nick Drochak <ndrochak@gol.com>
355 * basic-long.cs: add regression test for (long)int * (long)int
356 * cpu-pentium.md: add op_bigmul specification
357 * inssel-long32.brg: add OP_BIGMUL rule
358 * mini-ops.h: add OP_BIGMUL
359 * mini-x86.c: register allocator: handle case where src1 needs to be
361 * mini.c: substitute special BIGMUL opcode in the tree for
362 (long)int * (long)int
364 Mon May 26 20:20:13 CEST 2003 Paolo Molaro <lupus@ximian.com>
366 * jit-icalls.c: call the type ctor on field access if needed.
368 Mon May 26 15:21:21 CEST 2003 Paolo Molaro <lupus@ximian.com>
370 * mini-ops.h, mini.c, inssel.brg, exceptions.cs: validate arguments passed
371 to a method (including results of ldelema, bug#43207).
373 2003-05-26 Dietmar Maurer <dietmar@ximian.com>
375 * graph.c (cfg_emit_one_loop_level): loop over all blocks. use
376 colors to show exception handler blocks.
378 * inssel-x86.brg (OP_OUTARG_VT): dont push zero sized structures
379 (fix for pinvoke7.cs).
381 Mon May 26 12:11:53 CEST 2003 Paolo Molaro <lupus@ximian.com>
383 * mini.h, mini.c: ensure correct initialization order for types that
384 require it. Prepare for lazy compilation of jit icall wrappers.
385 Provide a name for opcode emulation to reduce unneeded mallocing.
387 Fri May 23 16:08:54 CEST 2003 Paolo Molaro <lupus@ximian.com>
389 * mini-x86.c: better register restoring code and profiling
390 support for tail calls.
392 Fri May 23 15:30:53 CEST 2003 Paolo Molaro <lupus@ximian.com>
394 * mini.h, driver.c: prepare for leaf methods optimization.
396 Fri May 23 15:28:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
398 * mini.c: get targets of branches before converting a method.
400 2003-05-23 Dietmar Maurer <dietmar@ximian.com>
402 * mini.c (optimize_branches): added some experimental code (disbaled)
404 2003-05-22 Dietmar Maurer <dietmar@ximian.com>
406 * mini.c (optimize_branches): fix branch to branch optimization
408 * exceptions-x86.c (mono_arch_handle_exception): bug fix.
410 * mini-x86.c (mono_arch_output_basic_block): cleanup up exception code
412 * inssel-x86.brg: added OP_START_HANDLER, CEE_ENDFINALLY, OP_ENDFILTER
414 * mini-x86.c (mono_arch_allocate_vars): only reserve space for lmf
417 2003-05-21 Dietmar Maurer <dietmar@ximian.com>
419 * mini.c (mono_method_to_ir): call handle_loaded_temps before inlining.
420 enable use of interface variables again.
422 * mini-x86.c (mono_arch_get_allocatable_int_vars): dont allocate
423 I1 to registers because there is no simply way to sign extend 8bit
424 quantities in caller saved registers on x86.
426 * inssel-float.brg: set costs of some rules to 2 so
427 that monobure always select the arch. specific ones if supplied,
428 regardless of the order we pass the files to monoburg.
430 Tue May 20 17:19:14 CEST 2003 Paolo Molaro <lupus@ximian.com>
432 * mini.c, mini-x86.c: since the magic trampoline for jumps
433 can't patch the code directly, we do it as soon as the
434 method gets compiled.
436 Tue May 20 16:02:52 CEST 2003 Paolo Molaro <lupus@ximian.com>
438 * mini-x86.c, mini.h: introduce a new patching method
439 to support CEE_JMP and tail calls.
440 * mini.c: obey tail.call. Don't precompile methods target
442 * tramp-x86.c: new trampoline code to handle methods
443 reached through a jump.
445 2003-05-20 Dietmar Maurer <dietmar@ximian.com>
447 * mini-x86.c (mono_arch_get_allocatable_int_vars): allocate 8/16
448 bit values to registers
450 2003-05-19 Dietmar Maurer <dietmar@ximian.com>
452 * mini.c (mono_compile_get_interface_var): share interface
453 variables if possible.
455 2003-05-16 Martin Baulig <martin@ximian.com>
457 * debug-mini.c (mono_init_debugger): New function to initialize
458 the debugger. This is not in the debugger since it needs to
459 access some of mini's internals.
461 2003-05-16 Dietmar Maurer <dietmar@ximian.com>
463 * mini.c (mono_method_to_ir): inlining fixes/cleanups
465 Fri May 16 13:27:23 CEST 2003 Paolo Molaro <lupus@ximian.com>
467 * mini.c, mini-opts.h, inssel.brg: inline small memcpy
468 for value type handling.
470 2003-05-16 Dietmar Maurer <dietmar@ximian.com>
472 * mini.c (mono_method_to_ir): inline LDFLD/STFLD wrappers
473 (mono_method_check_inlining): enable inlining of all kinds of wrappers
475 2003-05-15 Lluis Sanchez Gual <lluis@ideary.com>
477 * mini.c: fixed little bug in CEE_NEWOBJ case when calling
478 the constructor through a proxy.
480 Thu May 15 17:17:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
482 * jit-icalls.c, inssel.brg: fixes to array element address
485 2003-05-15 Dietmar Maurer <dietmar@ximian.com>
487 * mini-x86.c (is_regsize_var): allocate pointer to registers
489 Thu May 15 13:04:02 CEST 2003 Paolo Molaro <lupus@ximian.com>
491 * driver.c: fixed typo, added intrins to the set of optimizations
492 tested with regressions.
494 Thu May 15 11:57:42 CEST 2003 Paolo Molaro <lupus@ximian.com>
496 * mini-ops.h, mini.c, inssel.brg: optimize access to 2D arrays.
497 * jit-icalls.c, exceptions.cs: fixed index out of range checks, added
500 2003-05-14 Dietmar Maurer <dietmar@ximian.com>
502 * inssel.brg: remove some common pop instructions without side effects
504 Wed May 14 12:40:31 CEST 2003 Paolo Molaro <lupus@ximian.com>
506 * inssel-x86.brg: fixed thinko in int to double conversions.
508 Wed May 14 12:01:58 CEST 2003 Paolo Molaro <lupus@ximian.com>
510 * mini.c, jit-icalls.c: added runtime thread-static variable support.
512 Tue May 13 22:02:06 CEST 2003 Paolo Molaro <lupus@ximian.com>
514 * inssel-long32.brg: two more missing instructions.
516 2003-05-13 Dietmar Maurer <dietmar@ximian.com>
518 * mini.c (mono_emit_call_args): set the cil_code for all arguments
521 2003-05-12 Zoltan Varga <vargaz@freemail.hu>
523 * mini-x86.c (mono_arch_output_basic_block): Handle negative zero
526 * basic-float.cs: Added tests for negative zero.
528 Sun May 11 14:56:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
530 * inssel-long32.brg, basic-long.cs, exceptions.cs: handle
531 a couple of missing operations for long casts, with test cases.
533 2003-05-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
535 * exceptions-x86.c: fixed small leaks in mono_arch_handle_exception.
537 2003-05-09 Dietmar Maurer <dietmar@ximian.com>
539 * mini-x86.c (mono_arch_emit_prolog): avoid reallocs with better
540 code size estimation.
542 2003-05-08 Dietmar Maurer <dietmar@ximian.com>
544 * mini.c (mono_jit_create_remoting_trampoline): make it work with
545 abstract methods (fix bug 42542)
547 * aot.c: add ability to handle array types
549 2003-05-08 Zoltan Varga <vargaz@freemail.hu>
551 * mini.c: Call the _specific versions of the object allocation
552 functions if possible.
554 Tue May 6 17:18:33 CEST 2003 Paolo Molaro <lupus@ximian.com>
556 * driver.c: call setlocale ().
558 Tue May 6 14:38:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
560 * mini.h, mini.c, aot.c, debug-mini.c, exceptions.c: build fixes for
563 2003-05-05 Dietmar Maurer <dietmar@ximian.com>
565 * mini.c (optimize_branches): dont touch code inside exception clauses (fix bug 38136)
567 * exceptions-x86.c (ves_icall_get_frame_info): also skip remoting
568 wrappers (fix bug 42122)
570 2003-05-04 Martin Baulig <martin@ximian.com>
572 * mini.h (mono_jit_init, mono_jit_cleanup): Added prototypes.
574 * driver.c: s/MONO_OPT_SAHRED/MONO_OPT_SHARED/g.
575 s/mini_set_defaults/mono_set_defaults/g.
577 2003-05-04 Martin Baulig <martin@ximian.com>
579 * driver.c: s/mini_parse_default_optimizations/mono_parse_default_optimizations/g.
581 Sun May 4 11:48:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
583 * inssel-long32.brg: add missing lreg: OP_LCONV_TO_U8 (lreg) rule
584 (reported by Don Roberts).
586 Fri May 2 18:36:45 CEST 2003 Paolo Molaro <lupus@ximian.com>
588 * mini.c: temporarily work around two bugs for this release.
590 Fri May 2 17:37:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
592 * Makefile.am: avoid linking libmono with GMODULE_LIBS, because
593 that contains -export-dynamic and it makes using the ld script
595 * mini.h, main.c, driver.c: s/mini_main/mono_main/g.
597 Fri May 2 12:52:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
599 * mini.h, mini-x86.c, driver.c: disable optimizations not available on a
602 Thu May 1 15:28:21 CEST 2003 Paolo Molaro <lupus@ximian.com>
604 * mini.c: make sure leave calls all the needed finally blocks,
605 even when the target jumps out of multiple exception clauses.
607 Thu May 1 15:18:26 CEST 2003 Paolo Molaro <lupus@ximian.com>
609 * ldscript, Makefile.am: add linker script to reduce the number of
610 exported symbols (should also fix the issues with libwine defining
611 some of the same symbols in io-layer).
613 2003-05-01 Zoltan Varga <vargaz@freemail.hu>
615 * driver.c (mini_main): Avoid assertion when no file name is given on
618 Wed Apr 30 15:33:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
620 * driver.c: added --version/-V command line option.
621 Added the inline optimization in the regression tests.
623 Wed Apr 30 15:16:02 CEST 2003 Paolo Molaro <lupus@ximian.com>
625 * mini.c, basic-calls.cs: when inlining, save arguments to locals according
626 to the type in the method signature (fixes bug#42134).
628 Wed Apr 30 12:38:44 CEST 2003 Paolo Molaro <lupus@ximian.com>
630 * mini.c: when inlining, check this is not null only when needed (bug #42135).
632 Wed Apr 30 11:44:36 CEST 2003 Paolo Molaro <lupus@ximian.com>
634 * mini-ppc.h, tramp-pcc.c: type fixes from Max Horn <max@quendi.de>.
636 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
638 * driver.c: fixed bug #42100.
640 2003-04-29 Dietmar Maurer <dietmar@ximian.com>
642 * mini.c (mono_method_to_ir): UNBOX need to CAST objects first
644 Mon Apr 28 17:03:14 CEST 2003 Paolo Molaro <lupus@ximian.com>
646 * mini.c: moved most of the code required to do inlining to its own
647 function so it can be reused. Inline also ctors if appropriate.
649 2003-04-28 Zoltan Varga <vargaz@freemail.hu>
651 * Makefile.am: Link with -export-dynamic so shared libs loaded by
652 the runtime can call mono API functions.
654 2003-04-27 Martin Baulig <martin@ximian.com>
656 * debug-mini.c (mono_debug_init_method): Added
657 `guint32 breakpoint_id' argument; if the method has a breakpoint,
658 send a notification to the debugger.
660 * mini.c (mono_method_to_ir): Don't insert a breakpoint if we're
661 running in the Mono Debugger, just pass the breakpoint number to
662 mono_debug_init_method().
664 * tramp-x86.c, tramp-ppc.c: Removed the breakpoint trampolines.
666 Sun Apr 27 13:18:04 CEST 2003 Paolo Molaro <lupus@ximian.com>
668 * mini.c: allow some more unsafe compares.
670 Sat Apr 26 11:55:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
672 * mini-x86.c, Makefile.am: make distcheck works (partially from
673 a patch by Richard Lee <r.h.lee@attbi.com>).
674 * regset.c, regset.h: removed, they are unused.
676 2003-04-25 Dick Porter <dick@ximian.com>
678 * driver.c: Usage reports the name as 'mono' not 'mini'
679 * exceptions-x86.c: Build and run on freebsd
681 Thu Apr 24 17:09:03 CEST 2003 Paolo Molaro <lupus@ximian.com>
683 * Makefile.am: install the program with the 'mono' name and
684 the library as libmono instead of mini and libmini.
686 Thu Apr 24 17:08:07 CEST 2003 Paolo Molaro <lupus@ximian.com>
688 * driver.c: provide the APIs for the embedding interface of the old jit.
690 2003-04-23 Dietmar Maurer <dietmar@ximian.com>
692 * jit-icalls.c (helper_stelem_ref): impl. (fix bug 41775)
694 2003-04-23 Martin Baulig <martin@ximian.com>
696 * tramp-x86.c, tramp-ppc.c: Reenable the debugger breakpoint interface.
698 * driver.c: Added `--debug' command line argument to enable
701 2003-04-23 Martin Baulig <martin@ximian.com>
703 * debug.[ch]: Removed. The code is now in
704 ../metadata/mono-debug.[ch] and mono-debug-debugger.[ch].
706 * debug-stabs.c, debug-dwarf2.c: Removed; nobody used this for the
709 2003-04-22 Dietmar Maurer <dietmar@ximian.com>
711 * mini.c (mono_method_to_ir): set the cil_code address (fix bug 41525)
713 2003-04-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
716 (mini_cleanup): moved mono_runtime_cleanup call after the call to
717 mono_domain_finalize.
718 (mini_method_compile): use mono_method_profile* if the the option is
721 2003-04-17 Zoltan Varga <vargaz@freemail.hu>
723 * tramp-x86.c (mono_arch_create_jit_trampoline): Subsitute synchronized
724 methods with their wrapper.
726 * tramp-ppc.c (mono_arch_create_jit_trampoline): Subsitute synchronized
727 methods with their wrapper.
729 * jit-icalls.c (mono_ldvirtfn): Subsitute synchronized methods with
732 * mini.c (mono_method_to_ir): Subsitute synchronized methods with their
735 * mini.c (mono_method_check_inlining): Avoid inlining synchronized
738 2003-04-17 Dietmar Maurer <dietmar@ximian.com>
740 * exceptions-x86.c (mono_arch_handle_exception): fix for bug 36252
742 2003-04-16 Dietmar Maurer <dietmar@ximian.com>
744 * mini.c (mono_compile_create_var): use g_malloc/g_realloc instead
745 of the mempool. This is slightly faster and uses less memory
747 Wed Apr 16 12:53:10 CEST 2003 Paolo Molaro <lupus@ximian.com>
749 * mini.c: avoid O(n) allocation for variables.
751 Tue Apr 15 19:13:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
753 * mini.c: handle items on the stack after inlining methods.
755 Tue Apr 15 14:17:57 CEST 2003 Paolo Molaro <lupus@ximian.com>
757 * mini.c: make the method->opcode optimization dependent
758 on MONO_OPT_INSTRINS and do it lazily.
760 Tue Apr 15 14:15:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
762 * driver.c: print overall results at the end of regression run.
764 Tue Apr 15 11:18:46 CEST 2003 Paolo Molaro <lupus@ximian.com>
766 * inssel.brg: don't overwrite symbolic registers.
768 Mon Apr 14 17:41:34 CEST 2003 Paolo Molaro <lupus@ximian.com>
770 * inssel-x86.brg: fix conversion from long to float.
772 2003-04-11 Dietmar Maurer <dietmar@ximian.com>
774 * mini.c (mini_init): use an opcode for get_Chars (OP_GETCHR)
776 2003-04-10 Zoltan Varga <vargaz@freemail.hu>
778 * mini.c (mono_type_blittable): MONO_TYPE_OBJECT is blittable.
780 * driver.c: Added --print-vtable option as in the old JIT.
782 Thu Apr 10 17:43:49 CEST 2003 Paolo Molaro <lupus@ximian.com>
784 * inssel-long32.brg, exceptions.cs: fix conversions from long, too.
786 Thu Apr 10 16:27:43 CEST 2003 Paolo Molaro <lupus@ximian.com>
788 * inssel.brg, basic.cs: fixed checked conversions to byte and short.
790 2003-04-09 Zoltan Varga <vargaz@freemail.hu>
792 * mini.c regalloc.c regalloc.h: Fix memory leak.
794 2003-04-09 Dietmar Maurer <dietmar@ximian.com>
796 * aot.c (mono_aot_get_method): register all used strings
798 Wed Apr 9 15:22:18 CEST 2003 Paolo Molaro <lupus@ximian.com>
800 * mini.c: always intern strings references with ldstr at compile time.
802 Tue Apr 8 11:41:26 CEST 2003 Paolo Molaro <lupus@ximian.com>
804 * Makefile.am: add BUILT_SOURCES.
806 Mon Apr 7 16:31:34 CEST 2003 Paolo Molaro <lupus@ximian.com>
808 * driver.c: give a better error message when the assembly to execute
809 doesn't have an entry point.
811 2003-04-07 Dietmar Maurer <dietmar@ximian.com>
813 * Makefile.am: added hack for automake
815 * mono/mini/mini.c (mono_save_args): always copy arguments to keep
818 * mono/mini/ssa.c (mono_ssa_avoid_copies): don't optimize calls
820 22003-04-07 Martin Baulig <martin@ximian.com>
822 * Makefile.am: Added Makefile.am.
824 * debugger-main.c: Removed, this is now in the debugger where it
827 * mini.pc.in: Call this package `mini' for the moment.