rpms/qemu/devel qemu-0.8.2-mb-nops.diff, NONE, 1.1 qemu.spec, 1.21, 1.22
Hans de Goede (jwrdegoede)
fedora-extras-commits at redhat.com
Tue Nov 14 18:18:43 UTC 2006
Author: jwrdegoede
Update of /cvs/extras/rpms/qemu/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv31502
Modified Files:
qemu.spec
Added Files:
qemu-0.8.2-mb-nops.diff
Log Message:
* Mon Nov 13 2006 Hans de Goede <j.w.r.degoede at hhs.nl> 0.8.2-4
- Backport patch to make FC6 guests work by Kevin Kofler
<Kevin at tigcc.ticalc.org> (bz 207843).
qemu-0.8.2-mb-nops.diff:
--- NEW FILE qemu-0.8.2-mb-nops.diff ---
===================================================================
RCS file: /sources/qemu/qemu/target-i386/translate.c,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- qemu/target-i386/translate.c 2006/07/10 19:53:04 1.59
+++ qemu/target-i386/translate.c 2006/09/03 17:09:02 1.60
@@ -1615,6 +1615,56 @@
*offset_ptr = disp;
}
+static void gen_nop_modrm(DisasContext *s, int modrm)
+{
+ int mod, rm, base, code;
+
+ mod = (modrm >> 6) & 3;
+ if (mod == 3)
+ return;
+ rm = modrm & 7;
+
+ if (s->aflag) {
+
+ base = rm;
+
+ if (base == 4) {
+ code = ldub_code(s->pc++);
+ base = (code & 7);
+ }
+
+ switch (mod) {
+ case 0:
+ if (base == 5) {
+ s->pc += 4;
+ }
+ break;
+ case 1:
+ s->pc++;
+ break;
+ default:
+ case 2:
+ s->pc += 4;
+ break;
+ }
+ } else {
+ switch (mod) {
+ case 0:
+ if (rm == 6) {
+ s->pc += 2;
+ }
+ break;
+ case 1:
+ s->pc++;
+ break;
+ default:
+ case 2:
+ s->pc += 2;
+ break;
+ }
+ }
+}
+
/* used for LEA and MOV AX, mem */
static void gen_add_A0_ds_seg(DisasContext *s)
{
@@ -5791,10 +5841,15 @@
gen_lea_modrm(s, modrm, ®_addr, &offset_addr);
/* nothing more to do */
break;
- default:
- goto illegal_op;
+ default: /* nop (multi byte) */
+ gen_nop_modrm(s, modrm);
+ break;
}
break;
+ case 0x119 ... 0x11f: /* nop (multi byte) */
+ modrm = ldub_code(s->pc++);
+ gen_nop_modrm(s, modrm);
+ break;
case 0x120: /* mov reg, crN */
case 0x122: /* mov crN, reg */
if (s->cpl != 0) {
Index: qemu.spec
===================================================================
RCS file: /cvs/extras/rpms/qemu/devel/qemu.spec,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- qemu.spec 11 Sep 2006 07:36:43 -0000 1.21
+++ qemu.spec 14 Nov 2006 18:18:12 -0000 1.22
@@ -8,7 +8,7 @@
Summary: QEMU is a FAST! processor emulator
Name: qemu
Version: 0.8.2
-Release: 3%{?dist}
+Release: 4%{?dist}
License: GPL/LGPL
Group: Development/Tools
URL: http://www.qemu.org/
@@ -18,6 +18,7 @@
Patch1: qemu-0.8.0-sdata.patch
Patch2: qemu-0.8.2-kernheaders.patch
Patch3: qemu-0.8.2-target-sparc.patch
+Patch4: qemu-0.8.2-mb-nops.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: SDL-devel compat-gcc-%{gccver} zlib-devel which texi2html
Requires(post): /sbin/chkconfig
@@ -44,6 +45,7 @@
%patch1 -p1
%patch2 -p1
%patch3 -p1
+%patch4 -p1
%build
./configure \
@@ -92,6 +94,10 @@
%{_mandir}/man1/*
%changelog
+* Mon Nov 13 2006 Hans de Goede <j.w.r.degoede at hhs.nl> 0.8.2-4
+- Backport patch to make FC6 guests work by Kevin Kofler
+ <Kevin at tigcc.ticalc.org> (bz 207843).
+
* Mon Sep 11 2006 David Woodhouse <dwmw2 at infradead.org> 0.8.2-3
- Rebuild
More information about the scm-commits
mailing list