[Pkg-mono-svn-commits] [SCM] mono branch, debian/patches/arm_cpuinfo_parsing, updated. upstream/2.6.3-3-g42561d5

Jo Shields directhex at apebox.org
Wed Jun 30 23:37:12 UTC 2010


The following commit has been merged in the debian/patches/arm_cpuinfo_parsing branch:
commit 42561d5f0bca95eb6e21e6008ead48bcb4006445
Author: Jo Shields <directhex at apebox.org>
Date:   Thu Jul 1 00:32:34 2010 +0100

    In order to help out QEMU in non-system-emulation mode (where no useful
    /proc/cpuinfo is provided), this branch adds a MAYBE assumption that the
    platform PROBABLY supports ARMv5, ARMv7, and Thumb instructions, if no
    evidence is provided by /proc/cpuinfo that it's even a valid ARM CPU.
    
    However, where values are provided, whilst v5_supported and thumb_supported
    are set to TRUE ot FALSE depending on the running system, v7_supported is
    only ever set to TRUE, i.e. the only possible values are "TRUE" or "MAYBE",
    meaning ARMv7 instructions are always generated.
    
    This commit simply inserts an explicit "v7_supported = FALSE" after the
    QEMU get-out clause, but before the check for v7, so the default status on
    non-QEMU hosts is FALSE.
    
    This fixes the problem of trying to use v7 instructions on v6, v5 and v4.

diff --git a/mono/mini/mini-arm.c b/mono/mini/mini-arm.c
index 9593f99..0613593 100644
--- a/mono/mini/mini-arm.c
+++ b/mono/mini/mini-arm.c
@@ -551,6 +551,7 @@ mono_arch_cpu_optimizazions (guint32 *exclude_mask)
 					/* invalid cpuinfo; perhaps running withing qemu-arm; skip */
 					break;
 				}
+				v7_supported = FALSE;
 				if (ver && (ver [2] == '7'))
 					v7_supported = TRUE;
 				if (ver [2] == '5' || ver [2] == '6' || ver [2] == '7') {

-- 
mono



More information about the Pkg-mono-svn-commits mailing list