[Webkit-unassigned] [Bug 69978] New: MacroAssemblerX86 8-bit register ops unsafe on CPU(X86)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Oct 12 17:02:50 PDT 2011


           Summary: MacroAssemblerX86 8-bit register ops unsafe on
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: barraclough at apple.com

Certain ops are unsafe if the register passed is esp..edi (will instead test/set the ).

compare32/test8/test32 Call setCC, which sets an 8-bit register - we can fix this by adding a couple of xchg instructions.

branchTest8 with a register argument is also affected.  In all cases this is currently used this is testing a value that is correct to 32 or more bits, so we can simply switch these to branchTest32 & remove the corresponding branchTest8 (this is desirable anyway, since the 32-bit form is cheaper to implement on platforms that don't have an 8-bit compare instruction).

This fixes the remaining fast/js failures with the DFG JIT 32_64.

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list