Merge pull request #1273 from joelmartinez/docs-unified-fix
[mono.git] / mono / utils / mono-hwcap-ppc.c
index 4620d4ef675f1b07f894174415661a4427b344a2..c88b95f6ec810974cee7fbf0a33d827e073042eb 100644 (file)
@@ -20,7 +20,7 @@
 
 #include "mono/utils/mono-hwcap-ppc.h"
 
-#if defined(__linux__)
+#if defined(__linux__) && defined(HAVE_SYS_AUXV_H)
 #include <string.h>
 #include <sys/auxv.h>
 #endif
@@ -32,9 +32,9 @@ gboolean mono_hwcap_ppc_has_move_fpr_gpr = FALSE;
 gboolean mono_hwcap_ppc_has_multiple_ls_units = FALSE;
 
 void
-mono_hwcap_init (void)
+mono_hwcap_arch_init (void)
 {
-#if defined(__linux__)
+#if defined(__linux__) && defined(HAVE_SYS_AUXV_H)
        unsigned long hwcap;
        unsigned long platform;
 
@@ -60,8 +60,18 @@ mono_hwcap_init (void)
        if ((platform = getauxval(AT_PLATFORM))) {
                const char *str = (const char *) platform;
 
-               if (!strcmp (str, "ppc970") || (!strncmp (str, "power", 5) && arch [5] >= '4' && arch [5] <= '7'))
+               if (!strcmp (str, "ppc970") || (!strncmp (str, "power", 5) && str [5] >= '4' && str [5] <= '7'))
                        mono_hwcap_ppc_has_multiple_ls_units = TRUE;
        }
 #endif
 }
+
+void
+mono_hwcap_print (FILE* f)
+{
+       g_fprintf (f, "mono_hwcap_ppc_has_icache_snoop = %i\n", mono_hwcap_ppc_has_icache_snoop);
+       g_fprintf (f, "mono_hwcap_ppc_is_isa_2x = %i\n", mono_hwcap_ppc_is_isa_2x);
+       g_fprintf (f, "mono_hwcap_ppc_is_isa_64 = %i\n", mono_hwcap_ppc_is_isa_64);
+       g_fprintf (f, "mono_hwcap_ppc_has_move_fpr_gpr = %i\n", mono_hwcap_ppc_has_move_fpr_gpr);
+       g_fprintf (f, "mono_hwcap_ppc_has_multiple_ls_units = %i\n", mono_hwcap_ppc_has_multiple_ls_units);
+}