Ignore:
Timestamp:
Nov 6, 2011, 3:39:12 AM (14 years ago)
Author:
[email protected]
Message:

JSC should be able to sample itself in a more flexible way than just sampling flags
https://bugs.webkit.org/show_bug.cgi?id=71522

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Added a construct that looks like SamplingRegion samplingRegion("name").

(JSC::SamplingRegion::Locker::Locker):
(JSC::SamplingRegion::Locker::~Locker):
(JSC::SamplingRegion::sample):
(JSC::SamplingRegion::dump):
(JSC::SamplingRegion::dumpInternal):
(JSC::SamplingThread::threadStartFunc):

  • bytecode/SamplingTool.h:

(JSC::SamplingRegion::SamplingRegion):
(JSC::SamplingRegion::~SamplingRegion):
(JSC::SamplingRegion::exchangeCurrent):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • heap/Heap.cpp:

(JSC::Heap::markRoots):
(JSC::Heap::collect):

  • heap/VTableSpectrum.cpp:

(JSC::VTableSpectrum::countVPtr):
(JSC::VTableSpectrum::dump):

  • heap/VTableSpectrum.h:
  • jsc.cpp:

(main):
(runWithScripts):

  • parser/Parser.h:

(JSC::parse):

  • runtime/Executable.cpp:

(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

  • wtf/Atomics.h:

(WTF::weakCompareAndSwap):

  • wtf/Platform.h:
  • wtf/Spectrum.h: Added.

(WTF::Spectrum::Spectrum):
(WTF::Spectrum::add):
(WTF::Spectrum::get):
(WTF::Spectrum::begin):
(WTF::Spectrum::end):
(WTF::Spectrum::KeyAndCount::KeyAndCount):
(WTF::Spectrum::KeyAndCount::operator<):
(WTF::Spectrum::buildList):

  • wtf/wtf.pri:

Source/JavaScriptGlue:

Reviewed by Gavin Barraclough.

  • ForwardingHeaders/wtf/Spectrum.h: Added.

Source/WebCore:

Reviewed by Gavin Barraclough.

No new tests, since no functionality changed.

  • ForwardingHeaders/wtf/Spectrum.h: Added.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r99358 r99374  
     12011-11-03  Filip Pizlo  <[email protected]>
     2
     3        JSC should be able to sample itself in a more flexible way than just sampling flags
     4        https://bugs.webkit.org/show_bug.cgi?id=71522
     5
     6        Reviewed by Gavin Barraclough.
     7       
     8        Added a construct that looks like SamplingRegion samplingRegion("name").
     9
     10        * JavaScriptCore.exp:
     11        * JavaScriptCore.xcodeproj/project.pbxproj:
     12        * bytecode/SamplingTool.cpp:
     13        (JSC::SamplingRegion::Locker::Locker):
     14        (JSC::SamplingRegion::Locker::~Locker):
     15        (JSC::SamplingRegion::sample):
     16        (JSC::SamplingRegion::dump):
     17        (JSC::SamplingRegion::dumpInternal):
     18        (JSC::SamplingThread::threadStartFunc):
     19        * bytecode/SamplingTool.h:
     20        (JSC::SamplingRegion::SamplingRegion):
     21        (JSC::SamplingRegion::~SamplingRegion):
     22        (JSC::SamplingRegion::exchangeCurrent):
     23        * bytecompiler/BytecodeGenerator.cpp:
     24        (JSC::BytecodeGenerator::generate):
     25        * dfg/DFGDriver.cpp:
     26        (JSC::DFG::compile):
     27        * heap/Heap.cpp:
     28        (JSC::Heap::markRoots):
     29        (JSC::Heap::collect):
     30        * heap/VTableSpectrum.cpp:
     31        (JSC::VTableSpectrum::countVPtr):
     32        (JSC::VTableSpectrum::dump):
     33        * heap/VTableSpectrum.h:
     34        * jsc.cpp:
     35        (main):
     36        (runWithScripts):
     37        * parser/Parser.h:
     38        (JSC::parse):
     39        * runtime/Executable.cpp:
     40        (JSC::EvalExecutable::compileInternal):
     41        (JSC::ProgramExecutable::compileInternal):
     42        (JSC::FunctionExecutable::compileForCallInternal):
     43        (JSC::FunctionExecutable::compileForConstructInternal):
     44        * wtf/Atomics.h:
     45        (WTF::weakCompareAndSwap):
     46        * wtf/Platform.h:
     47        * wtf/Spectrum.h: Added.
     48        (WTF::Spectrum::Spectrum):
     49        (WTF::Spectrum::add):
     50        (WTF::Spectrum::get):
     51        (WTF::Spectrum::begin):
     52        (WTF::Spectrum::end):
     53        (WTF::Spectrum::KeyAndCount::KeyAndCount):
     54        (WTF::Spectrum::KeyAndCount::operator<):
     55        (WTF::Spectrum::buildList):
     56        * wtf/wtf.pri:
     57
    1582011-11-05  Sam Weinig  <[email protected]>
    259
Note: See TracChangeset for help on using the changeset viewer.