aboutsummaryrefslogtreecommitdiff
path: root/sim/common/cgen-par.c
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>1999-09-22 03:28:34 +0000
committerJason Molenda <jmolenda@apple.com>1999-09-22 03:28:34 +0000
commitc2c6d25f0d5eea4f834420870021a8c52db24018 (patch)
treef4b3d5e9e3207fa8118db4085f9c6a0cbc2bdaf6 /sim/common/cgen-par.c
parent54af6ff67571ba569b94e26d558d02f9955e6844 (diff)
downloadgdb-c2c6d25f0d5eea4f834420870021a8c52db24018.zip
gdb-c2c6d25f0d5eea4f834420870021a8c52db24018.tar.gz
gdb-c2c6d25f0d5eea4f834420870021a8c52db24018.tar.bz2
import gdb-1999-09-21
Diffstat (limited to 'sim/common/cgen-par.c')
-rw-r--r--sim/common/cgen-par.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sim/common/cgen-par.c b/sim/common/cgen-par.c
index 8b983fb..51147ad 100644
--- a/sim/common/cgen-par.c
+++ b/sim/common/cgen-par.c
@@ -24,6 +24,15 @@ with this program; if not, write to the Free Software Foundation, Inc.,
/* Functions required by the cgen interface. These functions add various
kinds of writes to the write queue. */
+void sim_queue_bi_write (SIM_CPU *cpu, BI *target, BI value)
+{
+ CGEN_WRITE_QUEUE *q = CPU_WRITE_QUEUE (cpu);
+ CGEN_WRITE_QUEUE_ELEMENT *element = CGEN_WRITE_QUEUE_NEXT (q);
+ element->kind = CGEN_BI_WRITE;
+ element->kinds.bi_write.target = target;
+ element->kinds.bi_write.value = value;
+}
+
void sim_queue_qi_write (SIM_CPU *cpu, UQI *target, UQI value)
{
CGEN_WRITE_QUEUE *q = CPU_WRITE_QUEUE (cpu);
@@ -138,6 +147,9 @@ cgen_write_queue_element_execute (SIM_CPU *cpu, CGEN_WRITE_QUEUE_ELEMENT *item)
IADDR pc;
switch (CGEN_WRITE_QUEUE_ELEMENT_KIND (item))
{
+ case CGEN_BI_WRITE:
+ *item->kinds.bi_write.target = item->kinds.bi_write.value;
+ break;
case CGEN_QI_WRITE:
*item->kinds.qi_write.target = item->kinds.qi_write.value;
break;