[mono/mono] [2 commits] 992e3d6a: [runtime] Fix an assertion in mono_arch_context_get_int_reg () on amd64. Fixes #15786.

"Zoltan Varga ([email protected])" <[email protected]>
Newsgroups gmane.comp.gnome.mono.patches
Message-ID <000001420941d5a4-9a676884-82f6-4181-94d5-b0bef547c243-000000@email.amazonses.com>
   Branch: refs/heads/master
     Home: https://github.com/mono/mono
  Compare: https://github.com/mono/mono/compare/d8e44958d4b0...cbacd4801f47

   Commit: 992e3d6ace5c033c6724b8a2528cd9495a911bae
   Author: Zoltan Varga <[email protected]> (vargaz)
     Date: 2013-10-30 12:03:47 GMT
      URL: https://github.com/mono/mono/commit/992e3d6ace5c033c6724b8a2528cd9495a911bae

[runtime] Fix an assertion in mono_arch_context_get_int_reg () on amd64. Fixes #15786.

Changed paths:
  M mono/mini/mini-amd64.c

Modified: mono/mini/mini-amd64.c
===================================================================
@@ -8359,12 +8359,7 @@ MonoInst* mono_arch_get_domain_intrinsic (MonoCompile* cfg)
 	case AMD64_RBP: return ctx->rbp;
 	case AMD64_RSP: return ctx->rsp;
 	default:
-		if (reg < 8)
-			return _CTX_REG (ctx, rax, reg);
-		else if (reg >= 12)
-			return _CTX_REG (ctx, r12, reg - 12);
-		else
-			g_assert_not_reached ();
+		return _CTX_REG (ctx, rax, reg);
 	}
 }
 
@@ -8388,12 +8383,7 @@ MonoInst* mono_arch_get_domain_intrinsic (MonoCompile* cfg)
 		ctx->rsp = val;
 		break;
 	default:
-		if (reg < 8)
-			_CTX_REG (ctx, rax, reg) = val;
-		else if (reg >= 12)
-			_CTX_REG (ctx, r12, reg - 12) = val;
-		else
-			g_assert_not_reached ();
+		_CTX_REG (ctx, rax, reg) = val;
 	}
 }
 

   Commit: cbacd4801f47b45fd1a39240be27a207d8b3cd88
   Author: Zoltan Varga <[email protected]> (vargaz)
     Date: 2013-10-30 12:04:05 GMT
      URL: https://github.com/mono/mono/commit/cbacd4801f47b45fd1a39240be27a207d8b3cd88

[runtime] Fix a warning.

Changed paths:
  M mono/metadata/object.c

Modified: mono/metadata/object.c
===================================================================
@@ -2013,7 +2013,7 @@ gboolean release_type_locks (gpointer key, gpointer value, gpointer user)
 					bitmap = default_bitmap;
 				} else if (mono_type_is_struct (field->type)) {
 					fclass = mono_class_from_mono_type (field->type);
-					bitmap = compute_class_bitmap (fclass, default_bitmap, sizeof (default_bitmap) * 8, - (sizeof (MonoObject) / sizeof (gpointer)), &max_set, FALSE);
+					bitmap = compute_class_bitmap (fclass, default_bitmap, sizeof (default_bitmap) * 8, - (int)(sizeof (MonoObject) / sizeof (gpointer)), &max_set, FALSE);
 					numbits = max_set + 1;
 				} else {
 					default_bitmap [0] = 0;


_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.