[Webkit-unassigned] [Bug 65095] New: X86-64 assembler emits three instructions instead of two for certain loads and stores

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Jul 24 22:54:16 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=65095

           Summary: X86-64 assembler emits three instructions instead of
                    two for certain loads and stores
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: All
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: fpizlo at apple.com


The only X86-64 instructions for storing to, or loading from, 64-bit absolute immediate addresses require that the source of the store (or the target of the load) is EAX.  If the X86-64 assembler in JSC is asked to emit code for storing, or loading, an absolute immediate address where the register containing the value is not EAX, it will emit two additional instructions to swap values between EAX and the requested register.  This is not as efficient as simply moving the 64-bit address into the assembler's scratch register, which would result in two instructions.

-- 
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