Changeset 163197 in webkit


Ignore:
Timestamp:
Jan 31, 2014 1:59:02 PM (10 years ago)
Author:
mark.lam@apple.com
Message:

Add options to force debugger / profiler bytecode generation.
<https://webkit.org/b/128014>

Reviewed by Oliver Hunt.

Add Options::forceDebuggerBytecodeGeneration() and
Options::forceProfilerBytecodeGeneration(). These options make it more
convenient to do correctness testing when debugger / profiler bytecodes
are generated.

These options are disabled by default.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • runtime/Options.h:
Location:
trunk/Source/JavaScriptCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r163195 r163197  
     12014-01-31  Mark Lam  <mark.lam@apple.com>
     2
     3        Add options to force debugger / profiler bytecode generation.
     4        <https://webkit.org/b/128014>
     5
     6        Reviewed by Oliver Hunt.
     7
     8        Add Options::forceDebuggerBytecodeGeneration() and
     9        Options::forceProfilerBytecodeGeneration(). These options make it more
     10        convenient to do correctness testing when debugger / profiler bytecodes
     11        are generated.
     12
     13        These options are disabled by default.
     14
     15        * bytecompiler/BytecodeGenerator.cpp:
     16        (JSC::BytecodeGenerator::BytecodeGenerator):
     17        * runtime/Options.h:
     18
    1192014-01-29  Oliver Hunt  <oliver@apple.com>
    220
  • trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp

    r163195 r163197  
    152152
    153153BytecodeGenerator::BytecodeGenerator(VM& vm, ProgramNode* programNode, UnlinkedProgramCodeBlock* codeBlock, DebuggerMode debuggerMode, ProfilerMode profilerMode)
    154     : m_shouldEmitDebugHooks(debuggerMode == DebuggerOn)
    155     , m_shouldEmitProfileHooks(profilerMode == ProfilerOn)
     154    : m_shouldEmitDebugHooks(Options::forceDebuggerBytecodeGeneration() || debuggerMode == DebuggerOn)
     155    , m_shouldEmitProfileHooks(Options::forceProfilerBytecodeGeneration() || profilerMode == ProfilerOn)
    156156    , m_symbolTable(0)
    157157    , m_scopeNode(programNode)
     
    200200
    201201BytecodeGenerator::BytecodeGenerator(VM& vm, FunctionBodyNode* functionBody, UnlinkedFunctionCodeBlock* codeBlock, DebuggerMode debuggerMode, ProfilerMode profilerMode)
    202     : m_shouldEmitDebugHooks(debuggerMode == DebuggerOn)
    203     , m_shouldEmitProfileHooks(profilerMode == ProfilerOn)
     202    : m_shouldEmitDebugHooks(Options::forceDebuggerBytecodeGeneration() || debuggerMode == DebuggerOn)
     203    , m_shouldEmitProfileHooks(Options::forceProfilerBytecodeGeneration() || profilerMode == ProfilerOn)
    204204    , m_symbolTable(codeBlock->symbolTable())
    205205    , m_scopeNode(functionBody)
     
    422422
    423423BytecodeGenerator::BytecodeGenerator(VM& vm, EvalNode* evalNode, UnlinkedEvalCodeBlock* codeBlock, DebuggerMode debuggerMode, ProfilerMode profilerMode)
    424     : m_shouldEmitDebugHooks(debuggerMode == DebuggerOn)
    425     , m_shouldEmitProfileHooks(profilerMode == ProfilerOn)
     424    : m_shouldEmitDebugHooks(Options::forceDebuggerBytecodeGeneration() || debuggerMode == DebuggerOn)
     425    , m_shouldEmitProfileHooks(Options::forceProfilerBytecodeGeneration() || profilerMode == ProfilerOn)
    426426    , m_symbolTable(codeBlock->symbolTable())
    427427    , m_scopeNode(evalNode)
  • trunk/Source/JavaScriptCore/runtime/Options.h

    r163027 r163197  
    107107    v(bool, dumpBytecodeLivenessResults, false) \
    108108    v(bool, validateBytecode, false) \
     109    v(bool, forceDebuggerBytecodeGeneration, false) \
     110    v(bool, forceProfilerBytecodeGeneration, false) \
    109111    \
    110112    /* showDisassembly implies showDFGDisassembly. */ \
Note: See TracChangeset for help on using the changeset viewer.