Bug 2455

Summary: x86emu doesn't handle the JNL instruction correctly
Product: xorg Reporter: David Wong <dwong_7086>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: high CC: ajax, eich
Version: 6.8.1   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
proposed fix to handle the JNL instruction none

Description David Wong 2005-02-02 15:45:40 UTC
in xc/extras/x86emu/src/x86emu/ops2.c:
   131        case 0x8d:
   132          name = "JNL\t";
   133          cond = xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF));

this should be
                cond = !(xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)));
see the case for "JNLE" below.
                      
   134          break;
   135        case 0x8e:
   136          name = "JLE\t";
   137          cond = (xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)) ||
   138                  ACCESS_FLAG(F_ZF));
   139          break;
   140        case 0x8f:
   141          name = "JNLE\t";
   142          cond = !(xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)) ||
   143                   ACCESS_FLAG(F_ZF));
   144          break;
Comment 1 David Wong 2005-02-03 16:27:32 UTC
Created attachment 1830 [details] [review]
proposed fix to handle the JNL instruction
Comment 2 Adam Jackson 2005-02-07 09:59:35 UTC
egbert, this is probably your area.
Comment 3 Adam Jackson 2005-02-18 09:53:22 UTC
applied to CVS head.  leaving this open to remind to sync this back to scitech.
Comment 4 Adam Jackson 2005-10-21 23:46:04 UTC
closing, will reopen if this regresses.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.