Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libx86emu for openSUSE:Factory 
checked in at 2021-11-20 22:47:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libx86emu (Old)
 and      /work/SRC/openSUSE:Factory/.libx86emu.new.1895 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libx86emu"

Sat Nov 20 22:47:56 2021 rev:34 rq:932305 version:3.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/libx86emu/libx86emu.changes      2021-11-06 
18:13:30.464743359 +0100
+++ /work/SRC/openSUSE:Factory/.libx86emu.new.1895/libx86emu.changes    
2021-11-20 22:48:16.587813275 +0100
@@ -1,0 +2,7 @@
+Thu Nov 18 17:14:15 UTC 2021 - wfe...@opensuse.org
+
+- merge gh#wfeldt/libx86emu#40
+- decode extended nop instructions
+- 3.5
+
+--------------------------------------------------------------------

Old:
----
  libx86emu-3.4.tar.xz

New:
----
  libx86emu-3.5.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libx86emu.spec ++++++
--- /var/tmp/diff_new_pack.Fa26pw/_old  2021-11-20 22:48:17.187811287 +0100
+++ /var/tmp/diff_new_pack.Fa26pw/_new  2021-11-20 22:48:17.187811287 +0100
@@ -22,7 +22,7 @@
 Summary:        An x86 emulation library
 License:        BSD-3-Clause
 Group:          Development/Libraries/C and C++
-Version:        3.4
+Version:        3.5
 Release:        0
 Source:         %{name}-%{version}.tar.xz
 Url:            https://github.com/wfeldt/libx86emu

++++++ libx86emu-3.4.tar.xz -> libx86emu-3.5.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libx86emu-3.4/VERSION new/libx86emu-3.5/VERSION
--- old/libx86emu-3.4/VERSION   2021-10-20 14:13:20.000000000 +0200
+++ new/libx86emu-3.5/VERSION   2021-11-18 18:14:15.000000000 +0100
@@ -1 +1 @@
-3.4
+3.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libx86emu-3.4/changelog new/libx86emu-3.5/changelog
--- old/libx86emu-3.4/changelog 2021-10-20 14:13:20.000000000 +0200
+++ new/libx86emu-3.5/changelog 2021-11-18 18:14:15.000000000 +0100
@@ -1,3 +1,7 @@
+2021-11-18:    3.5
+       - merge gh#wfeldt/libx86emu#40
+       - decode extended nop instructions
+
 2021-10-20:    3.4
        - merge gh#wfeldt/libx86emu#39
        - fix test suite for 32-bit architectures
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libx86emu-3.4/ops2.c new/libx86emu-3.5/ops2.c
--- old/libx86emu-3.4/ops2.c    2021-10-20 14:13:20.000000000 +0200
+++ new/libx86emu-3.5/ops2.c    2021-11-18 18:14:15.000000000 +0100
@@ -484,6 +484,117 @@
   }
 }
 
+
+/****************************************************************************
+REMARKS:
+Handles opcode 0x0f,0x18
+****************************************************************************/
+static void x86emuOp2_prefetch(x86emu_t *emu, u8 op2)
+{
+  int mod, rl, rh;
+
+  fetch_decode_modrm(emu, &mod, &rh, &rl);
+
+  switch(rh) {
+    case 0:
+      OP_DECODE("prefetchnta ");
+      break;
+    case 1:
+      OP_DECODE("prefetcht0 ");
+      break;
+    case 2:
+      OP_DECODE("prefetcht1 ");
+      break;
+    case 3:
+      OP_DECODE("prefetcht2 ");
+      break;
+    default:
+      OP_DECODE("hint_nop ");
+      break;
+  }
+
+  if(mod == 3) {
+    if(MODE_DATA32) {
+      decode_rm_long_register(emu, rl);
+    }
+    else {
+      decode_rm_word_register(emu, rl);
+    }
+  }
+  else {
+    OP_DECODE("byte ");
+    decode_rm_address(emu, mod, rl);
+  }
+}
+
+
+/****************************************************************************
+REMARKS:
+Handles opcode 0x0f,0x19,0x1c-0x1e
+****************************************************************************/
+static void x86emuOp2_hint_nop(x86emu_t *emu, u8 op2)
+{
+  int mod, rl, rh;
+
+  OP_DECODE("hint_nop ");
+  fetch_decode_modrm(emu, &mod, &rh, &rl);
+
+  if(mod == 3) {
+    if(MODE_DATA32) {
+      decode_rm_long_register(emu, rl);
+    }
+    else {
+      decode_rm_word_register(emu, rl);
+    }
+  }
+  else {
+    if(MODE_DATA32) {
+      OP_DECODE("dword ");
+    }
+    else {
+      OP_DECODE("word ");
+    }
+    decode_rm_address(emu, mod, rl);
+  }
+}
+
+
+/****************************************************************************
+REMARKS:
+Handles opcode 0x0f,0x1f
+****************************************************************************/
+static void x86emuOp2_nop(x86emu_t *emu, u8 op2)
+{
+  int mod, rl, rh;
+
+  /*
+   * Basically the same as x86emuOp2_hint_nop() - but this is the officially
+   * documented opcode.
+   */
+
+  OP_DECODE("nop ");
+  fetch_decode_modrm(emu, &mod, &rh, &rl);
+
+  if(mod == 3) {
+    if(MODE_DATA32) {
+      decode_rm_long_register(emu, rl);
+    }
+    else {
+      decode_rm_word_register(emu, rl);
+    }
+  }
+  else {
+    if(MODE_DATA32) {
+      OP_DECODE("dword ");
+    }
+    else {
+      OP_DECODE("word ");
+    }
+    decode_rm_address(emu, mod, rl);
+  }
+}
+
+
 /****************************************************************************
 REMARKS:
 Handles opcode 0x0f,0x20
@@ -2073,14 +2184,14 @@
   /*  0x15 */ x86emuOp2_SSEpackops,
   /*  0x16 */ x86emuOp2_SSEmovpackedops,
   /*  0x17 */ x86emuOp2_SSEmovpackedops,
-  /*  0x18 */ x86emuOp2_illegal_op,
-  /*  0x19 */ x86emuOp2_illegal_op,
+  /*  0x18 */ x86emuOp2_prefetch,
+  /*  0x19 */ x86emuOp2_hint_nop,
   /*  0x1a */ x86emuOp2_illegal_op,
   /*  0x1b */ x86emuOp2_illegal_op,
-  /*  0x1c */ x86emuOp2_illegal_op,
-  /*  0x1d */ x86emuOp2_illegal_op,
-  /*  0x1e */ x86emuOp2_illegal_op,
-  /*  0x1f */ x86emuOp2_illegal_op,
+  /*  0x1c */ x86emuOp2_hint_nop,
+  /*  0x1d */ x86emuOp2_hint_nop,
+  /*  0x1e */ x86emuOp2_hint_nop,
+  /*  0x1f */ x86emuOp2_nop,
 
   /*  0x20 */ x86emuOp2_mov_word_RM_CRx,
   /*  0x21 */ x86emuOp2_mov_word_RM_DRx,

Reply via email to