Ignore:
Timestamp:
Jun 5, 2009, 5:08:00 PM (16 years ago)
Author:
[email protected]
Message:

2009-06-05 Gavin Barraclough <[email protected]>

Reviewed by Sam Weinig.

Remove patchLength..tByIdExternalLoadPrefix magic numbers from JIT.h.

These aren't really suitable values to be tracking within common code
of the JIT, since they are not (and realistically cannot) be checked
by ASSERTs, as the other repatch offsets are. Move this functionality
(skipping the REX prefix when patching load instructions to LEAs on
x86-64) into the X86Assembler.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadPtrToLEA):
  • assembler/X86Assembler.h: (JSC::X86Assembler::repatchLoadPtrToLEA):
  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp: (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/jit/JITPropertyAccess.cpp

    r44455 r44476  
    515515    // and makes the subsequent load's offset automatically correct
    516516    if (structure->isUsingInlineStorage())
    517         stubInfo->hotPathBegin.instructionAtOffset(patchOffsetGetByIdExternalLoad + patchLengthGetByIdExternalLoadPrefix).repatchLoadToLEA();
     517        stubInfo->hotPathBegin.instructionAtOffset(patchOffsetGetByIdExternalLoad).repatchLoadPtrToLEA();
    518518
    519519    // Patch the offset into the propoerty map to load from, then patch the Structure to look for.
     
    545545    // and makes the subsequent load's offset automatically correct
    546546    if (structure->isUsingInlineStorage())
    547         stubInfo->hotPathBegin.instructionAtOffset(patchOffsetPutByIdExternalLoad + patchLengthPutByIdExternalLoadPrefix).repatchLoadToLEA();
     547        stubInfo->hotPathBegin.instructionAtOffset(patchOffsetPutByIdExternalLoad).repatchLoadPtrToLEA();
    548548
    549549    // Patch the offset into the propoerty map to load from, then patch the Structure to look for.
Note: See TracChangeset for help on using the changeset viewer.