mono_arch_cpu_init (void)
{
guint32 dummy;
- mono_arch_cpu_optimizazions(&dummy);
+ mono_arch_cpu_optimizations(&dummy);
}
/*
* This function returns the optimizations supported on this cpu.
*/
guint32
-mono_arch_cpu_optimizazions (guint32 *exclude_mask)
+mono_arch_cpu_optimizations (guint32 *exclude_mask)
{
guint32 opts = 0;
*exclude_mask = 0;
return opts;
}
+/*
+ * This function test for all SIMD functions supported.
+ *
+ * Returns a bitmask corresponding to all supported versions.
+ *
+ */
+guint32
+mono_arch_cpu_enumerate_simd_versions (void)
+{
+ /* SIMD is currently unimplemented */
+ return 0;
+}
+
void
mono_arch_flush_icache (guint8 *code, gint size)
{
if (cfg->flags & MONO_CFG_HAS_ALLOCA)
hppa_copy (code, hppa_r30, hppa_r4);
+ if (method->wrapper_type == MONO_WRAPPER_NATIVE_TO_MANAGED) {
+ hppa_set (code, cfg->domain, hppa_r26);
+ mono_add_patch_info (cfg, code - cfg->native_code, MONO_PATCH_INFO_INTERNAL_METHOD, (gpointer)"mono_jit_thread_attach");
+ hppa_ldil (code, 0, hppa_r1);
+ hppa_ldo (code, 0, hppa_r1, hppa_r1);
+ hppa_depi (code, 0, 31, 2, hppa_r1);
+ hppa_ldw (code, 0, hppa_r1, hppa_r1);
+ hppa_ble (code, 0, hppa_r1);
+ hppa_copy (code, hppa_r31, hppa_r2);
+ }
+
if (method->save_lmf) {
mono_add_patch_info (cfg, code - cfg->native_code, MONO_PATCH_INFO_INTERNAL_METHOD,
(gpointer)"mono_get_lmf_addr");