z8k simulator broken
Daniel Jacobowitz
drow@mvista.com
Wed Jan 15 04:28:00 GMT 2003
Did you ever get a chance to look at the z8k sim problem? It seems that the
problem is that it uses the idx to generate the names of functions, but your
changes to "Generate idx as gas needs it" broke that.
Here's what I'm using; it builds, but I haven't really tested the simulator
yet. Someone tell me again why I'm doing this?
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
Index: writecode.c
===================================================================
RCS file: /cvs/src/src/sim/z8k/writecode.c,v
retrieving revision 1.3
diff -u -p -r1.3 writecode.c
--- writecode.c 6 Jun 2002 15:50:50 -0000 1.3
+++ writecode.c 15 Jan 2003 04:27:10 -0000
@@ -187,7 +187,7 @@ lookup_inst (what)
}
if (nibl_matched)
{
- z8k_inv_list[what] = ptr->idx;
+ z8k_inv_list[what] = ptr - z8k_table;
break; /* while */
}
ptr++;
@@ -1550,7 +1550,7 @@ mangle (p, shortcut, value)
}
else
{
- emit ("int <fop>_%d(context,pc,iwords0)\n", p->idx);
+ emit ("int <fop>_%d(context,pc,iwords0)\n", p - z8k_table);
emit ("int iwords0;\n");
}
emit ("sim_state_type *context;\n");
@@ -1668,7 +1668,7 @@ build_list (i)
if (!p)
return;
- add_to_list (&list[p->idx], i);
+ add_to_list (&list[p - z8k_table], i);
}
int
@@ -1807,7 +1807,7 @@ main (ac, av)
#endif
if (p != NULL)
{
- printf ("%d", p->idx);
+ printf ("%d", p - z8k_table);
}
else
printf ("400");
More information about the Gdb
mailing list