Changeset 44713 in webkit for trunk/JavaScriptCore/assembler


Ignore:
Timestamp:
Jun 15, 2009, 11:52:49 PM (16 years ago)
Author:
[email protected]
Message:

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

Rubber Stamped by Sam Weinig.

Rename PatchBuffer to LinkBuffer. Previously our terminology has been a little
mixed up, but we have decided to fix on refering to the process that takes place
at the end of code generation as 'linking', and on any modifications that take
place later (and once the code has potentially already been executed) as 'patching'.

However, the term 'PatchBuffer' is already in use, and needs to be repurposed.

To try to minimize confusion, we're going to switch the terminology over in stages,
so for now we'll refer to later modifications as 'repatching'. This means that the
new 'PatchBuffer' has been introduced with the name 'RepatchBuffer' instead.

This patch renames the old 'PatchBuffer' to 'LinkBuffer'. We'll leave ToT in this
state for a week or so to try to avoid to much overlap of the meaning of the term
'PatchBuffer', then will come back and rename 'RepatchBuffer'.

  • assembler/ARMv7Assembler.h:
  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::LinkBuffer::LinkBuffer): (JSC::AbstractMacroAssembler::LinkBuffer::~LinkBuffer):
  • jit/JIT.cpp: (JSC::JIT::privateCompile):
  • jit/JITPropertyAccess.cpp: (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
  • yarr/RegexJIT.cpp: (JSC::Yarr::RegexGenerator::compile):
Location:
trunk/JavaScriptCore/assembler
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/assembler/ARMv7Assembler.h

    r44554 r44713  
    15211521    }
    15221522
    1523     // bah, this mathod should really be static, since it is used by the PatchBuffer.
     1523    // bah, this mathod should really be static, since it is used by the LinkBuffer.
    15241524    // return a bool saying whether the link was successful?
    15251525    static void linkCall(void* code, JmpSrc from, void* to)
  • trunk/JavaScriptCore/assembler/AbstractMacroAssembler.h

    r44711 r44713  
    5050
    5151    class Jump;
    52     class PatchBuffer;
     52    class LinkBuffer;
    5353    class RepatchBuffer;
    5454
     
    222222        friend class Jump;
    223223        friend class MacroAssemblerCodeRef;
    224         friend class PatchBuffer;
     224        friend class LinkBuffer;
    225225
    226226    public:
     
    247247        template<class TemplateAssemblerType>
    248248        friend class AbstractMacroAssembler;
    249         friend class PatchBuffer;
     249        friend class LinkBuffer;
    250250    public:
    251251        DataLabelPtr()
     
    269269        template<class TemplateAssemblerType>
    270270        friend class AbstractMacroAssembler;
    271         friend class PatchBuffer;
     271        friend class LinkBuffer;
    272272    public:
    273273        DataLabel32()
     
    293293        template<class TemplateAssemblerType>
    294294        friend class AbstractMacroAssembler;
    295         friend class PatchBuffer;
     295        friend class LinkBuffer;
    296296    public:
    297297        enum Flags {
     
    338338        friend class AbstractMacroAssembler;
    339339        friend class Call;
    340         friend class PatchBuffer;
     340        friend class LinkBuffer;
    341341    public:
    342342        Jump()
     
    368368    // All jumps in the set will be linked to the same destination.
    369369    class JumpList {
    370         friend class PatchBuffer;
     370        friend class LinkBuffer;
    371371
    372372    public:
     
    407407
    408408
    409     // Section 3: PatchBuffer - utility to finalize code generation.
     409    // Section 3: LinkBuffer - utility to finalize code generation.
    410410
    411411    static CodePtr trampolineAt(CodeRef ref, Label label)
     
    414414    }
    415415
    416     // PatchBuffer:
     416    // LinkBuffer:
    417417    //
    418418    // This class assists in linking code generated by the macro assembler, once code generation
     
    431431    // address of calls, as opposed to a point that can be used to later relink a Jump -
    432432    // possibly wrap the later up in an object that can do just that).
    433     class PatchBuffer : public Noncopyable {
     433    class LinkBuffer : public Noncopyable {
    434434    public:
    435435        // Note: Initialization sequence is significant, since executablePool is a PassRefPtr.
    436436        //       First, executablePool is copied into m_executablePool, then the initialization of
    437437        //       m_code uses m_executablePool, *not* executablePool, since this is no longer valid.
    438         PatchBuffer(AbstractMacroAssembler<AssemblerType>* masm, PassRefPtr<ExecutablePool> executablePool)
     438        LinkBuffer(AbstractMacroAssembler<AssemblerType>* masm, PassRefPtr<ExecutablePool> executablePool)
    439439            : m_executablePool(executablePool)
    440440            , m_code(masm->m_assembler.executableCopy(m_executablePool.get()))
     
    446446        }
    447447
    448         ~PatchBuffer()
     448        ~LinkBuffer()
    449449        {
    450450            ASSERT(m_completed);
Note: See TracChangeset for help on using the changeset viewer.