Index: /trunk/src/recompiler/target-i386/translate.c
===================================================================
--- /trunk/src/recompiler/target-i386/translate.c	(revision 30411)
+++ /trunk/src/recompiler/target-i386/translate.c	(revision 30412)
@@ -3641,9 +3641,14 @@
         case 0x02b: /* movntps */
         case 0x12b: /* movntps */
+            if (mod == 3)
+                goto illegal_op;
+            gen_lea_modrm(s, modrm, &reg_addr, &offset_addr);
+            gen_sto_env_A0(s->mem_index, offsetof(CPUX86State,xmm_regs[reg]));
+            break;
         case 0x3f0: /* lddqu */
             if (mod == 3)
                 goto illegal_op;
             gen_lea_modrm(s, modrm, &reg_addr, &offset_addr);
-            gen_sto_env_A0(s->mem_index, offsetof(CPUX86State,xmm_regs[reg]));
+            gen_ldo_env_A0(s->mem_index, offsetof(CPUX86State,xmm_regs[reg]));
             break;
         case 0x6e: /* movd mm, ea */
