Author: zoltan
Date: 2005-06-16 06:38:57 -0400 (Thu, 16 Jun 2005)
New Revision: 46082
Modified:
trunk/mono/mono/mini/ChangeLog
trunk/mono/mono/mini/aot.c
trunk/mono/mono/mini/mini.c
Log:
2005-06-16 Zoltan Varga <[EMAIL PROTECTED]>
* aot.c (mono_compile_assembly): Mark the "methods" symbol as a
function so
it gets proper disassembly.
(emit_method_info): Remove some dead code.
* mini.c (mini_method_compile): Allways allocate the GOT var in
mono_method_to_ir for emulating opcodes.
Modified: trunk/mono/mono/mini/ChangeLog
===================================================================
--- trunk/mono/mono/mini/ChangeLog 2005-06-16 10:29:41 UTC (rev 46081)
+++ trunk/mono/mono/mini/ChangeLog 2005-06-16 10:38:57 UTC (rev 46082)
@@ -1,3 +1,12 @@
+2005-06-16 Zoltan Varga <[EMAIL PROTECTED]>
+
+ * aot.c (mono_compile_assembly): Mark the "methods" symbol as a
function so
+ it gets proper disassembly.
+ (emit_method_info): Remove some dead code.
+
+ * mini.c (mini_method_compile): Allways allocate the GOT var in
+ mono_method_to_ir for emulating opcodes.
+
2005-06-13 Zoltan Varga <[EMAIL PROTECTED]>
* mini.c (mono_jit_free_method): Remove the method from the JitInfo
table
Modified: trunk/mono/mono/mini/aot.c
===================================================================
--- trunk/mono/mono/mini/aot.c 2005-06-16 10:29:41 UTC (rev 46081)
+++ trunk/mono/mono/mini/aot.c 2005-06-16 10:38:57 UTC (rev 46082)
@@ -1717,12 +1717,7 @@
guint32 icall_index;
icall_index = GPOINTER_TO_UINT (g_hash_table_lookup
(acfg->icall_hash, patch_info->data.name));
- if (!icall_index) {
- icall_index = g_hash_table_size
(acfg->icall_hash) + 1;
- g_hash_table_insert (acfg->icall_hash,
(gpointer)patch_info->data.name,
-
GUINT_TO_POINTER (icall_index));
- g_ptr_array_add (acfg->icall_table,
(gpointer)patch_info->data.name);
- }
+ g_assert (icall_index);
encode_value (icall_index - 1, p, &p);
break;
}
@@ -2106,7 +2101,7 @@
/* Emit code */
symbol = g_strdup_printf ("methods");
emit_section_change (tmpfp, ".text", 0);
- emit_global (tmpfp, symbol, FALSE);
+ emit_global (tmpfp, symbol, TRUE);
emit_alignment (tmpfp, 8);
emit_label (tmpfp, symbol);
Modified: trunk/mono/mono/mini/mini.c
===================================================================
--- trunk/mono/mono/mini/mini.c 2005-06-16 10:29:41 UTC (rev 46081)
+++ trunk/mono/mono/mini/mini.c 2005-06-16 10:38:57 UTC (rev 46082)
@@ -4395,6 +4395,7 @@
if (mono_find_jit_opcode_emulation (ins->opcode)) {
--sp;
*sp++ = emit_tree (cfg, bblock, ins, ip + 1);
+ mono_get_got_var (cfg);
}
ip++;
break;
@@ -4416,6 +4417,7 @@
if (mono_find_jit_opcode_emulation (ins->opcode)) {
--sp;
*sp++ = emit_tree (cfg, bblock, ins, ip + 1);
+ mono_get_got_var (cfg);
}
ip++;
break;
@@ -5765,6 +5767,7 @@
if (mono_find_jit_opcode_emulation (ins->opcode)) {
--sp;
*sp++ = emit_tree (cfg, bblock, ins, ip + 1);
+ mono_get_got_var (cfg);
}
ip++;
break;
@@ -9114,8 +9117,7 @@
if (cfg->got_var) {
GList *regs;
- /* The decompose pass may create calls which need the got var */
- mono_emit_load_got_addr (cfg);
+ g_assert (cfg->got_var_allocated);
/*
* Allways allocate the GOT var to a register, because keeping
it
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches