[Bsd-sharp-cvs] CVS commit to /cvsroot/bsd-sharp/FreeBSD-ports/lang/mono/files by killfill

noreply at forge.novell.com noreply at forge.novell.com
Thu Aug 16 16:39:16 MDT 2007


CVS commit to /cvsroot/bsd-sharp/FreeBSD-ports/lang/mono/files by killfill

Added Files:
	patch-mono_mini_tramp-amd64.c 
Log Message:
Update to RC of future version: 1.2.5

===================================================================
RCS file: /cvsroot/bsd-sharp/FreeBSD-ports/lang/mono/files/patch-mono_mini_tramp-amd64.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- /cvsroot/bsd-sharp/FreeBSD-ports/lang/mono/files/patch-mono_mini_tramp-amd64.c	2006/10/22 17:22:42	1.2
+++ /cvsroot/bsd-sharp/FreeBSD-ports/lang/mono/files/patch-mono_mini_tramp-amd64.c	2007/08/16 22:39:16	1.3
@@ -1,12 +1,13 @@
---- mono/mini/tramp-amd64.c.orig	Sun Sep 17 17:35:03 2006
-+++ mono/mini/tramp-amd64.c	Sun Sep 17 16:50:05 2006
-@@ -392,8 +392,8 @@
- 	memcpy (real_code, buf, size);
+--- mono/mini/tramp-amd64.c.orig	Mon Aug 13 21:46:54 2007
++++ mono/mini/tramp-amd64.c	Mon Aug 13 21:48:03 2007
+@@ -124,8 +124,9 @@
+ 		buf [2] = 0x90;
+ 		buf [3] = 0x66;
+ 		buf [4] = 0x90;
+-	} else if ((code [0] == 0x49) && (code [1] == 0xff)) {
++	} else if ((code [0] == 0x41) && (code [1] == 0xff)) {
+ 		/* call <REG> */
++		/* happens on machines without MAP_32BIT like freebsd */
+ 		/* amd64_set_reg_template is 10 bytes long */
+ 		guint8* buf = code - 10;
  
- 	/* Fix up jump */
--	g_assert ((((gint64)tramp) >> 32) == 0);
- 	code = (guint8*)real_code + jump_offset;
-+	g_assert (amd64_is_imm32 (((gint64)tramp - (gint64)code)));
- 	amd64_jump_disp (code, tramp - code);
- 
- 	mono_jit_stats.method_trampolines++;


More information about the Bsd-sharp-cvs mailing list