summaryrefslogtreecommitdiff
path: root/sim/mips/interp.c
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@redhat.com>1998-03-06 22:46:40 +0000
committerFrank Ch. Eigler <fche@redhat.com>1998-03-06 22:46:40 +0000
commitfd90908986929e283cca54c3675f7131fa5b16ab (patch)
treebf119b13436b86a2f7cc23ca4c26c4927ee0dbdc /sim/mips/interp.c
parente599ab169e9a23bd68ecd195b5097c9f3d0f8944 (diff)
downloadbinutils-gdb-fd90908986929e283cca54c3675f7131fa5b16ab.tar.gz
* Numerous changes & small bug fixes in PKE sim code and test suite.
for sim/testsuite/sky: * t-pke4.run: Removed test, since it succeeds yet returns a non-zero exit code. * Makefile.in (RUNOPTS): Removed --memory-size flag, made unnecessary by sim/mips/interp.c changes. (TESTS): Removed t-pke4.ok target. * t-pke3.trc: Classified tests with [---] indicators, to match items up with entries documented in testplan.sgml. Added numerous additional tests. They assert behavior that assumes certain favorable answers to PKE question set #6 to SCEI. * t-pke1.trc: Added some [---] indicators. for sim/mips: * sky-pke.c (pke_issue): Revamped interrupt & stall code. Assume that ER1/ER0/PIS bits are only set if not masked by ERR bits. Signal PIS only if unmasked. (pke_code_error): Signal ER1 only if unmasked. (pke_pc_fifo): Signal ER0 only if unmasked. (pke_code_unpack): Round up num_operands for last operand's partial-word. Factor out "R" bit handling for better coverage analysis. Fill upper words of a quadword with zeroes for Vn_m UNPACK with n < 4. * sky-device.c (device_error): Made function accept varargs. * sky-device.h (device_error): Changed declaration to match. * interp.c (sim_open): Made 0x0000 area memory be an alias of the K0/K1 segments. Sanitized code.
Diffstat (limited to 'sim/mips/interp.c')
-rw-r--r--sim/mips/interp.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/sim/mips/interp.c b/sim/mips/interp.c
index b794fb76566..eaf37a2a22a 100644
--- a/sim/mips/interp.c
+++ b/sim/mips/interp.c
@@ -310,13 +310,22 @@ sim_open (kind, cb, abfd, argv)
are the kernel spaces K0 & K1. Both of these map to a single
smaller sub region */
sim_do_command(sd," memory region 0x7fff8000,0x8000") ; /* MTZ- 32 k stack */
+/* start-sanitize-sky */
+#ifndef TARGET_SKY
+/* end-sanitize-sky */
sim_do_commandf (sd, "memory alias 0x%lx@1,0x%lx%%0x%lx,0x%0x",
K1BASE, K0SIZE,
MEM_SIZE, /* actual size */
K0BASE);
-#ifdef TARGET_SKY
- sim_do_command (sd, "memory region 0x00000000,0x00100000"); /* 1M */
+/* start-sanitize-sky */
+#else
+ sim_do_commandf (sd, "memory alias 0x%lx@1,0x%lx%%0x%lx,0x%0x,0x%0x",
+ K1BASE, K0SIZE,
+ MEM_SIZE, /* actual size */
+ K0BASE,
+ 0); /* add alias at 0x0000 */
#endif
+/* end-sanitize-sky */
device_init(sd);