diff options
author | mrg <mrg@pkgsrc.org> | 2011-10-26 06:57:30 +0000 |
---|---|---|
committer | mrg <mrg@pkgsrc.org> | 2011-10-26 06:57:30 +0000 |
commit | 7f350f51b8bcca14daf2edc47cdad60d90a7bb0c (patch) | |
tree | b1f253ed01ed320ee5002b33b5ef5c0c49db1381 /emulators/gxemul | |
parent | c2aa2a25a1d28f7fc7578dcf7934f6792fffe8be (diff) | |
download | pkgsrc-7f350f51b8bcca14daf2edc47cdad60d90a7bb0c.tar.gz |
implement sh "LDS Rn,MACH". gcc now generates this for some kernel code.
Diffstat (limited to 'emulators/gxemul')
-rw-r--r-- | emulators/gxemul/distinfo | 4 | ||||
-rw-r--r-- | emulators/gxemul/patches/patch-ab | 18 |
2 files changed, 17 insertions, 5 deletions
diff --git a/emulators/gxemul/distinfo b/emulators/gxemul/distinfo index 22baca4659d..ec15e04ec8d 100644 --- a/emulators/gxemul/distinfo +++ b/emulators/gxemul/distinfo @@ -1,10 +1,10 @@ -$NetBSD: distinfo,v 1.33 2011/07/28 06:25:13 mrg Exp $ +$NetBSD: distinfo,v 1.34 2011/10/26 06:57:30 mrg Exp $ SHA1 (gxemul-0.6.0.tar.gz) = aa37ad5f200eee045b1da2b1d3f651401cf474af RMD160 (gxemul-0.6.0.tar.gz) = ac6291a5f8bc9c0d1988d3ce39750339fe90a8ce Size (gxemul-0.6.0.tar.gz) = 3598795 bytes SHA1 (patch-aa) = 6f2c0dc94606ba213bcc73527ea4bef997c89c45 -SHA1 (patch-ab) = 31141123a84bc29f68124a4c072f82b6b8c47595 +SHA1 (patch-ab) = ebd64a2b56cd4140522c567b90dcbfb9440b9db2 SHA1 (patch-ad) = a8757e7397ec3cc301d02bdf93654f55d558d29f SHA1 (patch-ae) = 19ef822c16f0f6dd50aea719e0bc797c39d1f9c0 SHA1 (patch-af) = 8304ff5d8f779ac60f8d416d27e0a183e0e47d94 diff --git a/emulators/gxemul/patches/patch-ab b/emulators/gxemul/patches/patch-ab index 303b658e1c3..ab70bd7f670 100644 --- a/emulators/gxemul/patches/patch-ab +++ b/emulators/gxemul/patches/patch-ab @@ -1,8 +1,20 @@ -$NetBSD: patch-ab,v 1.6 2011/07/28 06:25:14 mrg Exp $ +$NetBSD: patch-ab,v 1.7 2011/10/26 06:57:30 mrg Exp $ --- src/cpus/cpu_sh_instr.cc.orig 2010-02-14 01:33:54.000000000 -0800 -+++ src/cpus/cpu_sh_instr.cc 2011-07-26 17:55:15.000000000 -0700 -@@ -3378,6 +3378,11 @@ ++++ src/cpus/cpu_sh_instr.cc 2011-10-25 23:18:56.000000000 -0700 +@@ -3336,6 +3336,11 @@ + case 0x09: /* SHLR2 Rn */ + ic->f = instr(shlr2_rn); + break; ++ case 0x0a: /* LDS Rn,MACH */ ++ ic->f = instr(mov_rm_rn); ++ ic->arg[0] = (size_t)&cpu->cd.sh.r[r8]; ++ ic->arg[1] = (size_t)&cpu->cd.sh.mach; ++ break; + case 0x0b: /* JSR @Rn */ + if (cpu->machine->show_trace_tree) + ic->f = instr(jsr_rn_trace); +@@ -3378,6 +3383,11 @@ case 0x19: /* SHLR8 Rn */ ic->f = instr(shlr8_rn); break; |