aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2000-10-08 22:37:14 +0000
committerBen Elliston <bje@au.ibm.com>2000-10-08 22:37:14 +0000
commita8d894af636985bcc6a8d8bcae75355db0e87345 (patch)
treeb5ee9961c51c5229655d7f0c01505c3672e5b2db
parent454313e5edbca1fc9ba966a28ba18e4034ed773d (diff)
downloadgdb-a8d894af636985bcc6a8d8bcae75355db0e87345.zip
gdb-a8d894af636985bcc6a8d8bcae75355db0e87345.tar.gz
gdb-a8d894af636985bcc6a8d8bcae75355db0e87345.tar.bz2
* usability improvements
2000-10-08 Ben Elliston <bje@redhat.com> * cgen-utils.c (cgen_rtx_error): New function. 2000-10-07 Ben Elliston <bje@redhat.com> * cgen-trace.c (sim_cgen_disassemble_insn): Handle failure conditions for sim_core_read_buffer().
-rw-r--r--sim/common/ChangeLog9
-rw-r--r--sim/common/cgen-trace.c5
-rw-r--r--sim/common/cgen-utils.c13
3 files changed, 27 insertions, 0 deletions
diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog
index 4b43e06..523b9f9 100644
--- a/sim/common/ChangeLog
+++ b/sim/common/ChangeLog
@@ -1,3 +1,12 @@
+2000-10-08 Ben Elliston <bje@redhat.com>
+
+ * cgen-utils.c (cgen_rtx_error): New function.
+
+2000-10-07 Ben Elliston <bje@redhat.com>
+
+ * cgen-trace.c (sim_cgen_disassemble_insn): Handle failure
+ conditions for sim_core_read_buffer().
+
2000-09-26 Dave Brolley <brolley@redhat.com>
* cgen-utils.c (RORQI): New function.
diff --git a/sim/common/cgen-trace.c b/sim/common/cgen-trace.c
index 8b084f4..5b1d0e1 100644
--- a/sim/common/cgen-trace.c
+++ b/sim/common/cgen-trace.c
@@ -381,6 +381,11 @@ sim_cgen_disassemble_insn (SIM_CPU *cpu, const CGEN_INSN *insn,
length = sim_core_read_buffer (sd, cpu, read_map, &insn_buf, pc,
insn_length);
+ if (length != insn_length)
+ {
+ sim_io_error (sd, "unable to read address %x", pc);
+ }
+
/* If the entire insn will fit into an integer, then do it. Otherwise, just
use the bits of the base_insn. */
if (insn_bit_length <= 32)
diff --git a/sim/common/cgen-utils.c b/sim/common/cgen-utils.c
index a45804e..8383196 100644
--- a/sim/common/cgen-utils.c
+++ b/sim/common/cgen-utils.c
@@ -423,3 +423,16 @@ ROLSI (val, shift)
return val;
}
+
+/* Emit an error message from CGEN RTL. */
+
+void
+cgen_rtx_error (SIM_CPU *cpu, const char * msg)
+{
+ SIM_DESC sd = CPU_STATE (cpu);
+
+ sim_io_printf (sd, msg);
+ sim_io_printf (sd, "\n");
+
+ sim_engine_halt (sd, cpu, NULL, CIA_GET (cpu), sim_stopped, SIM_SIGTRAP);
+}