1 2008-09-27 Mark Probst <mark.probst@gmail.com>
3 * ppc/ppc-codegen.h: A few typecasts to fix compiler warnings.
5 2008-09-07 Mark Probst <mark.probst@gmail.com>
7 * ppc/ppc-codegen.h (ppc_load): Inserted cast to fix some
10 2008-06-16 Mark Probst <mark.probst@gmail.com>
12 * amd64/amd64-codegen.h: Removed extraneous parenthesis in a macro
15 2008-06-06 Zoltan Varga <vargaz@gmail.com>
17 * amd64/amd64-codegen.h (amd64_padding_size): Rewrite this to use the
18 instructions recommended by the amd64 manual.
20 2008-04-19 Zoltan Varga <vargaz@gmail.com>
22 * amd64/amd64-codegen.h (amd64_is_imm32): Use gint64 instead of glong because of
25 2008-03-13 Geoff Norton <gnorton@novell.com>
27 * arch/arm/tramp.c: Dont compile this on PLATFORM_MACOSX
29 2008-02-18 Zoltan Varga <vargaz@gmail.com>
31 * amd64/amd64-codegen.h (amd64_movsxd_reg_mem): New codegen macro.
33 2008-02-14 Zoltan Varga <vargaz@gmail.com>
35 * amd64/amd64-codegen.h (amd64_alu_membase8_imm_size): New codegen macro.
37 2008-02-08 Zoltan Varga <vargaz@gmail.com>
39 * arm/arm-codegen.h: Fix the ordering of arguments for some load/store opcodes
40 so they are consistent.
42 2008-01-24 Zoltan Varga <vargaz@gmail.com>
44 * Makefile.am (SUBDIRS): Or if INTERP_SUPPORTED is true.
46 * Makefile.am (SUBDIRS): Only set this on arm.
48 2007-11-20 Zoltan Varga <vargaz@gmail.com>
50 * amd64/amd64-codegen.h (amd64_alu_reg_imm_size): Prefer the smaller
53 2007-11-03 David S. Miller <davem@davemloft.net>
55 * sparc/sparc-codegen.h (sparc_set32, sparc_set): A plain sethi
56 can be used if the constant value only has the top 22 bits set.
58 2007-11-01 Geoff Norton <gnorton@novell.com>
60 * x86/Makefile.am: Only compile tramp.c if INTERP_SUPPORTED is true
61 Fixes the build on Leopard.
63 2007-11-01 Geoff Norton <gnorton@novell.com>
65 * ppc/Makefile.am: Only compile tramp.c if INTERP_SUPPORTED is true
66 Fixes the build on Leopard.
68 2007-10-26 Jonathan Chambers <joncham@gmail.com>
70 * amd64/amd64-codegen.h: Begin Win64 port. Use AMD64_ARG_REG#
71 defines to access param registers. Replace long usage with
72 gsize as sizeof(long) != sizeof(void*) on Win64.
74 Code is contributed under MIT/X11 license.
76 2007-10-09 Zoltan Varga <vargaz@gmail.com>
78 * amd64/amd64-codegen.h (amd64_jump_membase_size): Remove an unneccesary
79 rex prefix which trips up valgrind.
81 2007-07-14 Zoltan Varga <vargaz@gmail.com>
83 * amd64/amd64-codegen.h: Remove some unused rex prefixes.
85 Wed Jul 4 15:29:07 CEST 2007 Paolo Molaro <lupus@ximian.com>
87 * x86/x86-codegen.h: added minimal sse instructions currently
90 2007-06-13 Randolph Chung <tausq@debian.org>
92 * hppa/hppa-codegen.h: Update with more instructions.
93 * hppa/tramp.c: Disable for linux since we don't support the
96 2007-05-20 Zoltan Varga <vargaz@gmail.com>
98 * amd64/amd64-codegen.h (amd64_call_reg): Remove a got prefix which isn't needed.
100 2007-04-23 Zoltan Varga <vargaz@gmail.com>
102 * alpha/alpha-codegen.h: More alpha port work from
103 Sergey Tikhonov <tsv@solvo.ru>.
105 Mon Mar 12 17:07:32 CET 2007 Paolo Molaro <lupus@ximian.com>
107 * amd64/amd64-codegen.h: removed some useless size rex prefixes.
109 Wed Jan 24 21:00:40 CET 2007 Paolo Molaro <lupus@ximian.com>
111 * arm/arm-codegen.h: fixed encoding of short/byte load/store
112 instructions with negative immediate offsets.
114 Mon Nov 20 17:36:45 CET 2006 Paolo Molaro <lupus@ximian.com>
116 * arm/arm-codegen.h: added suppot for thumb interworking instructions.
118 Wed Nov 15 16:56:53 CET 2006 Paolo Molaro <lupus@ximian.com>
120 * mips/*: fixes by Mark E Mason <mark.e.mason@broadcom.com>.
122 2006-09-12 Zoltan Varga <vargaz@gmail.com>
124 * alpha/alpha-codegen.h: More alpha updates from Sergey Tikhonov <tsv@solvo.ru>.
126 Tue Sep 12 13:09:56 CEST 2006 Paolo Molaro <lupus@ximian.com>
128 * arm/*: VFP floating point format code generation support.
130 2006-09-12 Zoltan Varga <vargaz@gmail.com>
132 * ia64/ia64-codegen.h: Add xmpy_l/u pseudo ops.
134 2006-07-19 Zoltan Varga <vargaz@gmail.com>
136 * amd64/amd64-codegen.h: Fix amd64_mov_mem_reg.
138 * alpha/alpha-codegen.h alpha/test.c alpha/tramp.c: Applied patch from
139 Sergey Tikhonov <tsv@solvo.ru>. Updates to alpha support.
141 Thu Jun 15 16:59:36 CEST 2006 Paolo Molaro <lupus@ximian.com>
143 * ppc/ppc-codegen.h: reduce noisy build warnings by
144 casting to the more commonly used unsigned char type
145 (from johannes@sipsolutions.net (Johannes Berg)).
147 2006-05-14 Zoltan Varga <vargaz@gmail.com>
149 * ia64/ia64-codegen.h (ia64_fetchadd8_acq_hint_pred): Fix encoding of this
152 2006-04-21 Zoltan Varga <vargaz@gmail.com>
154 * Makefile.am (SUBDIRS): Revert the last change as arm depends on the old
157 2006-04-12 Zoltan Varga <vargaz@gmail.com>
159 * sparc/sparc-codegen.h (sparc_inst_i): New disassembly macro.
161 2006-04-04 Zoltan Varga <vargaz@gmail.com>
163 * Makefile.am (SUBDIRS): Avoid compiling subdirs needed by the
166 2005-12-22 Zoltan Varga <vargaz@gmail.com>
168 * sparc/sparc-codegen.h (sparc_membar): Add membar instruction.
170 2005-10-30 Zoltan Varga <vargaz@gmail.com>
172 * ia64/ia64-codegen.h (ia64_m17): Fix a warning.
174 2005-10-16 Zoltan Varga <vargaz@freemail.hu>
176 * amd64/amd64-codegen.h (AMD64_CALLEE_SAVED_REGS): Add %rbp.
178 2005-09-27 Raja R Harinath <rharinath@novell.com>
180 * arm/dpiops.sh, arm/fpaops.h: Output to stdout.
181 * arm/Makefile.am (arm_dpimacros.h, arm_fpamacros.h): Update. Fix
182 for srcdir != builddir.
184 2005-09-11 Zoltan Varga <vargaz@gmail.com>
186 * ia64/ia64-codegen.h (ia64_unw_pop_frames): New unwind macro.
188 2005-09-10 Zoltan Varga <vargaz@gmail.com>
190 * ia64/ia64-codegen.h: Remove 'manual' emitting of instructions.
191 Integrate emission of unwind directives into the assembly macros.
193 2005-09-04 Zoltan Varga <vargaz@gmail.com>
195 * ia64/ia64-codegen.h (ia64_no_stop): New macro.
197 2005-08-27 Zoltan Varga <vargaz@gmail.com>
199 * ia64/ia64-codegen.h: Fix some bugs.
201 * ia64/codegen.c: Update to work with latest ia64-codegen.h
203 2005-08-26 Zoltan Varga <vargaz@gmail.com>
205 * ia64/Makefile.am: Distribute ia64-codegen.h.
207 2005-08-21 Zoltan Varga <vargaz@freemail.hu>
209 * ia64/ia64-codegen.h: Improve ins scheduling and fix some bugs.
211 2005-08-17 Zoltan Varga <vargaz@freemail.hu>
213 * ia64/ia64-codegen.h: Add dependency information for all instructions.
215 2005-07-30 Zoltan Varga <vargaz@freemail.hu>
217 * ia64/ia64-codegen.h: Ongoing IA64 work.
219 Wed Jul 20 18:01:54 BST 2005 Paolo Molaro <lupus@ximian.com>
221 * arm/*: more codegen macros.
223 2005-07-18 Zoltan Varga <vargaz@freemail.hu>
225 * ia64/ia64-codegen.h (ia64_is_adds_imm): Ongoing IA64 work.
227 2005-06-23 Zoltan Varga <vargaz@freemail.hu>
229 * ia64/ia64-codegen.h: Add some new pseudo ops.
231 2005-06-19 Zoltan Varga <vargaz@freemail.hu>
233 * ia64/ia64-codegen.h: Fix encoding of ia64_fclass.
235 2005-06-12 Zoltan Varga <vargaz@freemail.hu>
237 * ia64/ia64-codegen.h: Ongoing IA64 work.
239 2005-06-09 Zoltan Varga <vargaz@freemail.hu>
241 * ia64/ia64-codegen.h: Ongoing IA64 work.
243 2005-05-30 Zoltan Varga <vargaz@freemail.hu>
245 * ia64/codegen.c: Fix it after latest changes.
247 2005-05-29 Zoltan Varga <vargaz@freemail.hu>
249 * ia64/ia64-codegen.h: Ongoing IA64 work.
251 * ia64/ia64-codegen.h: Ongoing IA64 work.
253 2005-05-28 Zoltan Varga <vargaz@freemail.hu>
255 * ia64/ia64-codegen.h: Ongoing IA64 work.
257 * ia64/ia64-codegen.h: Ongoing IA64 work.
259 * ia64/ia64-codegen.h: Ongoing IA64 work.
261 2005-05-26 Zoltan Varga <vargaz@freemail.hu>
263 * ia64/ia64-codegen.h: Ongoing IA64 work.
265 2005-05-22 Zoltan Varga <vargaz@freemail.hu>
267 * ia64/ia64-codegen.h: Ongoing IA64 work.
269 * ia64/ia64-codegen.h: Ongoing IA64 work.
271 * ia64/ia64-codegen.h: Ongoing IA64 work.
273 2005-05-21 Zoltan Varga <vargaz@freemail.hu>
275 * ia64/ia64-codegen.h: Ongoing IA64 work.
277 2005-05-19 Zoltan Varga <vargaz@freemail.hu>
279 * ia64/ia64-codegen.h ia64/codegen.c: Ongoing ia64 work.
281 2005-05-18 Zoltan Varga <vargaz@freemail.hu>
283 * ia64/ia64-codegen.h (ia64_codegen_init): Rename macro parameter.
285 2005-05-14 Zoltan Varga <vargaz@freemail.hu>
287 * Makefile.am: Only compile libmonoarch if the interpreter is compiled.
289 * ia64/ia64-codegen.h: Add IA64 code generation macros.
291 * Makefile.am: Add ia64 subdir.
293 2005-05-05 Zoltan Varga <vargaz@freemail.hu>
295 * alpha/tramp.c: Applied patch from Jakub Bogusz <qboosh@pld-linux.org>.
297 2005-03-28 Zoltan Varga <vargaz@freemail.hu>
299 * amd64/amd64-codegen.h: Avoid emitting a rex in some places.
301 2005-03-15 Zoltan Varga <vargaz@freemail.hu>
303 * amd64/amd64-codegen.h (amd64_emit_rex): Emit a rex when accessing the
306 * amd64/amd64-codegen.h (AMD64_BYTE_REGS): Add AMD64_BYTE_REGS macro.
308 2005-03-14 Zoltan Varga <vargaz@freemail.hu>
310 * amd64/amd64-codegen.h: Add missing AMD64_XMM7.
312 2005-03-13 Zoltan Varga <vargaz@freemail.hu>
314 * amd64/amd64-codegen.h: Remove some unneccesary REXes.
316 2005-03-08 Zoltan Varga <vargaz@freemail.hu>
318 * amd64/amd64-codegen.h (amd64_sse_cvtsi2sd_reg_reg_size): Add _size
319 variants to some sse2 macros.
321 * amd64/amd64-codegen.h (amd64_sse_cvtsd2si_reg_reg): Make this convert
324 2005-03-06 Zoltan Varga <vargaz@freemail.hu>
326 * amd64/amd64-codegen.h: Add some SSE2 instructions.
328 2005-02-20 Zoltan Varga <vargaz@freemail.hu>
330 * amd64/amd64-codegen.h: Add xadd instructions.
332 * amd64/amd64-codegen.h (amd64_jump_code_size): Do not emit a rex.
334 2004-11-25 Zoltan Varga <vargaz@freemail.hu>
336 * amd64/amd64-codegen.h: Updates to support the PIC changes.
338 Fri Nov 19 17:29:22 CET 2004 Paolo Molaro <lupus@ximian.com>
340 * ppc/ppc-codegen.h: counter reg decrement branch values
341 (patch by Geoff Norton <gnorton@customerdna.com>).
343 2004-11-16 Patrik Torstensson <patrik.torstensson@gmail.com>
345 * x86/x86-codegen.h: added opcodes for xadd instructions
347 2004-11-15 Zoltan Varga <vargaz@freemail.hu>
349 * amd64/x86-64-codegen.h: Get rid of this.
351 2004-08-30 Zoltan Varga <vargaz@freemail.hu>
353 * amd64/amd64-codegen.h (amd64_imul_reg_membase_size): Fix REX
356 2004-08-29 Zoltan Varga <vargaz@freemail.hu>
358 * amd64/amd64-codegen.h: More SSE work.
360 * amd64/amd64-codegen.h: Add SSE2 instructions.
362 2004-08-21 Zoltan Varga <vargaz@freemail.hu>
364 * amd64/amd64-codegen.h (X86_IS_BYTE_REG): Redefine X86_IS_BYTE_REG
365 since under amd64, all 16 registers have a low part.
367 2004-08-16 Zoltan Varga <vargaz@freemail.hu>
369 * x86/x86-codegen.h: Add macros for accessing the mod/rm byte.
371 2004-07-30 Zoltan Varga <vargaz@freemail.hu>
373 * amd64/amd64-codegen.h: Ongoing JIT work.
375 2004-07-29 Ben Maurer <bmaurer@ximian.com>
377 * x86/x86-codegen.h: Add opcodes for cmp BYTE PTR [eax], imm
379 2004-07-28 Zoltan Varga <vargaz@freemail.hu>
381 * amd64/amd64-codegen.h: Ongoing JIT work.
383 2004-07-24 Zoltan Varga <vargaz@freemail.hu>
385 * amd64/amd64-codegen.h: Ongoing JIT work.
387 2004-07-23 Zoltan Varga <vargaz@freemail.hu>
389 * amd64/amd64-codegen.h: Ongoing JIT work.
391 2004-07-23 zovarga <vargaz@freemail.hu>
393 * amd64/amd64-codegen.h: Ongoing JIT work.
395 2004-06-30 Zoltan Varga <vargaz@freemail.hu>
397 * sparc/sparc-codegen.h: Add SPARC64 support.
399 2004-05-07 Bernie Solomon <bernard@ugsolutions.com>
401 * ppc/ppc-codegen.h: remove GCC-ism in ppc_emit32
403 2004-04-29 Bernie Solomon <bernard@ugsolutions.com>
405 * ppc/tramp.c: use sizeof (stackval), fix
406 delegate tramp frame layout for Apple
408 2004-04-26 David Waite <mass@akuma.org>
410 * unknown.c: modify to have content for defined platforms (to
413 2004-03-29 Bernie Solomon <bernard@ugsolutions.com>
422 remove child from MonoInvocation as it isn't used.
424 * hppa/hppa-codegen.h:
425 fix displacements in FP instrs
427 2004-03-23 Bernie Solomon <bernard@ugsolutions.com>
429 * hppa/hppa-codegen.h: created
431 * hppa/tramp.c: changed style to be more like
434 * hppa/Makefile.am: add hppa-codegen.h
436 2004-03-16 Zoltan Varga <vargaz@freemail.hu>
438 * sparc/sparc-codegen.h: Add v9 branches with prediction.
440 2004-03-15 Bernie Solomon <bernard@ugsolutions.com>
442 * sparc/sparc-codegen.h: tweak sparc_mov_reg_reg
443 so Sun's dis command recognizes it.
445 2004-03-15 Zoltan Varga <vargaz@freemail.hu>
447 * sparc/sparc-codegen.h: Add some v9 instructions.
449 2004-03-11 Zoltan Varga <vargaz@freemail.hu>
451 * sparc/sparc-codegen.h: Ongoing sparc work.
453 2004-03-07 Duncan Mak <duncan@ximian.com>
455 * Makefile.am: Removed the reference to 'x86-64'. This was the cause
456 of the missing Mono daily tarballs, 'make dist' wasn't working.
458 We do have an 'amd64' directory, but it doesn't make it in 'make
461 2004-02-19 Zoltan Varga <vargaz@freemail.hu>
463 * sparc/sparc-codegen.h: Fix lots of opcodes + add new ones.
465 * sparc/tramp.c: Fix alignment of structures containing doubles.
467 2004-02-02 Zoltan Varga <vargaz@freemail.hu>
469 * sparc/tramp.c: Implement all floating point argument passing conventions in
470 Sparc V8. Also fix structure passing in V8.
472 Thu Nov 13 16:24:29 CET 2003 Paolo Molaro <lupus@ximian.com>
474 * ppc/ppc-codegen.h: fixed most of the incorrect macros from ct.
476 2003-10-31 Zoltan Varga <vargaz@freemail.hu>
478 * */tramp.c (mono_create_method_pointer): Rename to
479 mono_arch_create_method_pointer, move common code to a new function in
482 * */tramp.c (mono_create_trampoline): Rename to
483 mono_arch_create_trampoline for consistency.
485 2003-10-13 Bernie Solomon <bernard@ugsolutions.com>
487 * x86/tramp.c: restore EDX after memcpy call
489 2003-10-13 Bernie Solomon <bernard@ugsolutions.com>
491 * Makefile.am: add hppa subdir
493 * hppa/tramp.c: add initial implementation - this is 64 bit only
494 hppa/Makefile.am hppa/.cvsignore: added
496 2003-10-13 Bernie Solomon <bernard@ugsolutions.com>
498 * sparc/sparc-codegen.h sparc/tramp.c: add initial implementation
499 for V9 (64 bit), cover more 32 bit cases as well.
501 2003-09-03 Zoltan Varga <vargaz@freemail.hu>
503 * x86/tramp.c: Fixes from Bernie Solomon (bernard@ugsolutions.com).
505 2003-08-21 Zoltan Varga <vargaz@freemail.hu>
507 * x86/tramp.c: Fixes from Bernie Solomon (bernard@ugsolutions.com).
509 Tue Jul 1 13:03:43 CEST 2003 Paolo Molaro <lupus@ximian.com>
511 * alpha/tramp.c: update from Laramie Leavitt (lar@leavitt.us).
513 2003-05-20 Dietmar Maurer <dietmar@ximian.com>
515 * x86/x86-codegen.h (x86_set_reg): add an assertion - it does
516 not work for all registers.
518 Sat Feb 1 10:59:31 CET 2003 Paolo Molaro <lupus@ximian.com>
520 * alpha/*: update from Laramie.
522 Mon Jan 27 12:49:10 CET 2003 Paolo Molaro <lupus@ximian.com>
524 * alpha/*: start of the port to the alpha architecture by
525 Laramie Leavitt (<lar@leavitt.us>).
527 Tue Jan 21 17:29:53 CET 2003 Paolo Molaro <lupus@ximian.com>
529 * ppc/ppc-codegen.h: completed ppc native code generation by
530 Taylor Christopher P <ct@cs.clemson.edu>.
532 Fri Jan 17 21:14:18 CET 2003 Paolo Molaro <lupus@ximian.com>
534 * ppc/tramp.c: adapted to work for MacOSX (from a patch by
537 2002-11-11 Mark Crichton <crichton@gimp.org>
539 * sparc/tramp.c: Added some disassembly bits for debugging.
541 2002-10-02 Mark Crichton <crichton@gimp.org>
543 * sparc/tramp.c: More cleanup of the trampoline code. Still some
544 problems with it w.r.t. delegates.
546 2002-09-25 Mark Crichton <crichton@gimp.org>
548 * sparc/tramp.c: Off by one error. Whoops. Trampoline code should
551 2002-09-24 Mark Crichton <crichton@gimp.org>
553 * sparc/tramp.c: Works as well as the old code did. Cleanup is
554 finished. The framework now for adding more type support is in,
555 and should be a *lot* cleaner.
557 2002-09-22 Mark Crichton <crichton@gimp.org>
559 * sparc/tramp.c: Completely broke trampolining on SPARC processors.
560 The code needed a nasty cleanup, so most of it is rewritten.
563 2002-08-20 Mark Crichton <crichton@gimp.org>
565 * sparc/tramp.c (mono_create_trampoline): Now works on Sparc. Tested
566 on an Ultra 2 running Linux.
568 Mon Aug 5 19:21:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
570 * x86/tramp.c: fix random memory read in mono_create_method_pointer.
572 2002-08-05 Dietmar Maurer <dietmar@ximian.com>
574 * x86/tramp.c (mono_create_trampoline): fixed stack_size bug
576 2002-08-01 Dietmar Maurer <dietmar@ximian.com>
578 * x86/tramp.c (mono_create_method_pointer): allocate space for
580 (mono_create_trampoline): also push the value type pointer for
581 methods returning value types.
582 (mono_create_method_pointer): support valuetype returns.
584 2002-07-31 Dietmar Maurer <dietmar@ximian.com>
586 * x86/tramp.c: remove code to handle PInvoke because this is no
588 (mono_create_method_pointer): return method->addr for pinvoke methods
590 Fri Jul 19 14:18:36 CEST 2002 Paolo Molaro <lupus@ximian.com>
592 * x86/tramp.c: fix float loads. Simple delegate marshaling fix.
594 2002-07-08 Radek Doulik <rodo@ximian.com>
596 * ppc/tramp.c: marshaling for SZARRAY
598 2002-07-05 Radek Doulik <rodo@ximian.com>
600 * ppc/tramp.c: removed magic hack
602 Tue Jun 18 10:21:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
604 * x86/tramp.c: marshal simple arrays correctly.
606 2002-05-27 Miguel de Icaza <miguel@ximian.com>
608 * x86/x86-codegen.h: Set the standard header format.
610 2002-05-23 Dietmar Maurer <dietmar@ximian.com>
612 * x86/tramp.c (mono_create_method_pointer): removed the magic
613 trick to store the function pointer in the prolog and use the same
614 mechanism as in the jit.
616 2002-05-13 Radek Doulik <rodo@ximian.com>
618 * ppc/tramp.c (emit_save_parameters): fix I8 parameters
620 2002-05-06 Sergey Chaban <serge@wildwestsoftware.com>
622 * x86/x86-codegen.h: added missing shifts;
623 8-bit ALU operations (reg-reg);
624 macro for FPU ops with integer operand;
625 FIST macro (without pop);
627 Mon Apr 22 12:57:31 CEST 2002 Paolo Molaro <lupus@ximian.com>
629 * x86/x86-codegen.h: added loop instructions and made x86_patch fully
632 2002-04-20 Dietmar Maurer <dietmar@ximian.com>
634 * x86/tramp.c (mono_create_trampoline): support internalcall
637 Sat Apr 6 16:29:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
639 * x86/tramp.c: fix advancement of argument position on the stack.
641 Sat Mar 16 19:12:57 CET 2002 Paolo Molaro <lupus@ximian.com>
643 * x86/tramp.c: increase default allocated size for trampolines
644 and assert on overflow.
646 2002-03-14 Dietmar Maurer <dietmar@ximian.com>
648 * x86/tramp.c (mono_create_trampoline): dont use fld/fst to copy
651 Mon Mar 11 16:14:29 CET 2002 Paolo Molaro <lupus@ximian.com>
653 * x86/x86-codegen.h: addex x86_clear_reg() and changed
654 x86_mov_reg_imm() to not check for imm == 0.
656 Thu Feb 28 12:34:21 CET 2002 Paolo Molaro <lupus@ximian.com>
658 * x86/tramp.c: start handling of more complex marshaling stuff.
660 2002-02-25 Sergey Chaban <serge@wildwestsoftware.com>
662 * arm: added ARM support code.
663 * Makefile.am: added arm to DIST_SUBDIRS.
665 2002-02-24 Radek Doulik <rodo@ximian.com>
667 * ppc/tramp.c (mono_create_method_pointer): basic delegates
668 implementation, it works for simple delegates now and I am already
669 pretty close to have it working for every delegates, but I am
670 going to sleep and finish it tomorrow?
671 (mono_create_method_pointer): implements delegates with parameters
674 2002-02-22 Jeffrey Stedfast <fejj@ximian.com>
676 * sparc/tramp.c (mono_create_trampoline): Much tinkering to get
677 the opcodes more correct. Still needs a lot of work.
679 2002-02-19 Radek Doulik <rodo@ximian.com>
681 * ppc/tramp.c (emit_save_parameters): don't start saving 64bit values to
683 added stack saving for most arguments
685 Tue Feb 19 20:19:38 CET 2002 Paolo Molaro <lupus@ximian.com>
687 * x86/tramp.c: avoid pointer arthmetric (pointed out by Serge).
689 2002-02-17 Radek Doulik <rodo@ximian.com>
691 * ppc/tramp.c: fixed minimal stack size, fixed string parameters,
692 fix byte and half word parameters
693 (mono_string_new_wrapper): new helper function, cut&pasted from
694 x86, modified to check for NULL text to avoid branching in
696 (calculate_sizes): updated for string retval changes
697 (emit_call_and_store_retval): updated for string retval
699 * ppc/ppc-codegen.h (ppc_mr): added lhz, lbz, sth
701 2002-02-16 Radek Doulik <rodo@ximian.com>
703 * ppc/tramp.c (emit_call_and_store_retval): support U2, I2, CHAR
705 Mon Feb 11 18:40:04 CET 2002 Paolo Molaro <lupus@ximian.com>
707 * sparc/*: sparc codegen header and some untested trampoline code.
709 Mon Feb 11 12:32:35 CET 2002 Paolo Molaro <lupus@ximian.com>
711 * x86/tramp.c: fix handling of multiple marshaleed strings.
712 * x86/x86-codegen.h: some code to patch branch displacements.
714 Fri Feb 1 16:03:00 CET 2002 Paolo Molaro <lupus@ximian.com>
716 * x86/tramp.c, ppc/tramp.c: implement mono_method_pointer_get ().
718 2002-01-23 Miguel de Icaza <miguel@ximian.com>
720 * x86/tramp.c (mono_create_trampoline): Do not try to create a
721 mono_string_new if the return value from the PInvoke code is
724 Mon Jan 14 11:50:16 CET 2002 Paolo Molaro <lupus@ximian.com>
726 * x86/x86-codegen.c: added overflow condition code and some aliases
729 Thu Jan 10 21:01:08 CET 2002 Paolo Molaro <lupus@ximian.com>
731 * x86/tramp.c: mono_create_trampoline (): the runtime argument is
732 needed to handle correctly delegates, the previous change in handling
733 the string return type broke them.
735 Tue Jan 8 22:38:41 MST 2002 Matt Kimball <matt@kimball.net>
737 * x86/tramp.c: handle strings returned from functions in external
738 libraries by converting to a Mono string object after the pinvoke'd
741 Sat Jan 5 15:51:06 CET 2002 Paolo Molaro <lupus@ximian.com>
743 * x86/tramp.c: handle short integer return types.
745 Thu Dec 20 20:13:07 CET 2001 Paolo Molaro <lupus@ximian.com>
747 * x86/tramp.c: fix create_method_pointer() to pass the arguments
748 correctly and add check for overflow.
750 Thu Dec 13 15:56:53 CET 2001 Paolo Molaro <lupus@ximian.com>
752 * x86/x86-codegen.h: x86_mov_memindex_imm() added.
754 2001-11-29 Radek Doulik <rodo@ximian.com>
756 * ppc/tramp.c: use r12 which is volatile instead of non-volatile
759 * Makefile.am (libmonoarch_la_LIBADD): added ppc to DIST_SUBDIRS
760 generate libmonoarch for ppc
762 Tue Nov 27 15:24:07 CET 2001 Paolo Molaro <lupus@ximian.com>
764 * x96/x86-codegen.c: x86_lea_memindex() added.
766 Thu Nov 15 17:41:01 CET 2001 Paolo Molaro <lupus@ximian.com>
768 * x86/tramp.c: handle enums with underlying type different from int32.
770 Wed Nov 14 19:21:26 CET 2001 Paolo Molaro <lupus@ximian.com>
772 * x86/tramp.c: handle boolean as a return value.
773 * x96/x86-codegen.c: x86_widen_memindex() added.
775 2001-11-07 Miguel de Icaza <miguel@ximian.com>
777 * x86/tramp.c: Include stdlib to kill warning.
779 Mon Oct 22 15:20:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
781 * x86/tramp.c: handle boolean, u1 and i1 as return values.
783 Wed Oct 10 16:07:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
785 * x86/x86-codegen.c: added x86_set_{reg,mem,membase}.
787 Mon Oct 8 16:13:07 CEST 2001 Paolo Molaro <lupus@ximian.com>
789 * x86/tramp.c: remove mono_get_ansi_string () and use
790 mono_string_to_utf8 () instead.
792 Thu Oct 4 19:09:13 CEST 2001 Paolo Molaro <lupus@ximian.com>
794 * x86/tramp.c: allow marshalling valuetypes if they are
797 Mon Oct 1 18:48:27 CEST 2001 Paolo Molaro <lupus@ximian.com>
799 * x86/tramp.c: fix thinko (s/SUB/ADD/) in stack adjustment
800 and avoid a couple of unnecessary instructions.
802 Fri Sep 28 19:43:12 CEST 2001 Paolo Molaro <lupus@ximian.com>
804 * x86/tramp.c: marshal valuetypes that are enums.
806 Thu Sep 27 15:34:37 CEST 2001 Paolo Molaro <lupus@ximian.com>
808 * x86/x86-codegen.h: in memindex operand you can use X86_NOBASEREG
811 Wed Sep 26 16:29:36 CEST 2001 Paolo Molaro <lupus@ximian.com>
813 * x86/x86-codegen.h: added memindex addressing mode encoding
814 (and mov to/from register opcodes).
816 Mon Sep 24 18:49:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
818 * x86/tramp.c: don't change a MONO_TYPE_STRING to a char*
819 when it's an argument to an internalcall.
821 Sun Sep 23 13:44:57 CEST 2001 Paolo Molaro <lupus@ximian.com>
823 * x86/tramp.c: handle MONO_TYPE_CLASS in trampolines.
825 2001-09-21 Dietmar Maurer <dietmar@ximian.com>
827 * x86/x86-codegen.h (x86_breakpoint): added.
829 Tue Sep 18 13:23:59 CEST 2001 Paolo Molaro <lupus@ximian.com>
831 * x86/x86-codegen.h: remove C++ comments.
833 2001-09-17 Dietmar Maurer <dietmar@ximian.com>
835 * x86/x86-codegen.h (x86_alu_reg_reg): replaced src/dest
837 Mon Sep 10 17:26:06 CEST 2001 Paolo Molaro <lupus@ximian.com>
839 * Makefile.am, x86/Makefile.am: conditional compile logic
840 to make porting to different targets easier.
842 Fri Sep 7 18:43:06 CEST 2001 Paolo Molaro <lupus@ximian.com>
844 * x86/x86-codegen.h: fixes and x86_mov_membase_imm ().
845 * x86/tramp.c: implemented mono_create_method_pointer ():
846 creates a native pointer to a method implementation that can be
847 used as a normal C callback.
849 Thu Sep 6 15:38:00 CEST 2001 Paolo Molaro <lupus@ximian.com>
851 * x86/x86-codegen.h: added x86_rdtsc() and fixes.
852 * x86/tramp.c: create trampolines to call pinvoke methods.
853 * x86/Makefile.am: create a libmonoarch convenience library.
855 Mon Aug 27 09:29:00 CEST 2001 Paolo Molaro <lupus@ximian.com>
857 * x86/x86-codegen.h: fix x86_call_code (). x86_mov_regp_reg () added.
859 Sat Aug 18 12:40:32 CEST 2001 Paolo Molaro <lupus@ximian.com>
861 * x86/x86-codegen.h: fix a couple of buglets and add x86_regp_emit().
863 Wed Aug 8 15:30:05 CEST 2001 Paolo Molaro <lupus@ximian.com>
865 * x86/x86-codegen.h, x86/test.c: added x86 code emitter with