зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1547104 - Add initial JS profiler subcategories r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D28901 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
9fc719b1f3
Коммит
c08cc4c949
|
@ -47,6 +47,9 @@
|
|||
END_CATEGORY \
|
||||
BEGIN_CATEGORY(JS, "JavaScript", "yellow") \
|
||||
SUBCATEGORY(JS, JS, "Other") \
|
||||
SUBCATEGORY(JS, JS_Parsing, "JS Parsing") \
|
||||
SUBCATEGORY(JS, JS_IonCompilation, "Ion JIT Compilation") \
|
||||
SUBCATEGORY(JS, JS_BaselineCompilation, "Baseline JIT Compilation") \
|
||||
END_CATEGORY \
|
||||
BEGIN_CATEGORY(GCCC, "GC / CC", "orange") \
|
||||
SUBCATEGORY(GCCC, GCCC, "Other") \
|
||||
|
|
|
@ -528,7 +528,8 @@ JSScript* frontend::ScriptCompiler<Unit>::compileScript(
|
|||
for (;;) {
|
||||
ParseNode* pn;
|
||||
{
|
||||
AutoGeckoProfilerEntry pseudoFrame(cx, "script parsing");
|
||||
AutoGeckoProfilerEntry pseudoFrame(cx, "script parsing",
|
||||
JS::ProfilingCategoryPair::JS_Parsing);
|
||||
if (sc->isEvalContext()) {
|
||||
pn = parser->evalBody(sc->asEvalContext());
|
||||
} else {
|
||||
|
@ -537,7 +538,8 @@ JSScript* frontend::ScriptCompiler<Unit>::compileScript(
|
|||
}
|
||||
|
||||
// Successfully parsed. Emit the script.
|
||||
AutoGeckoProfilerEntry pseudoFrame(cx, "script emit");
|
||||
AutoGeckoProfilerEntry pseudoFrame(cx, "script emit",
|
||||
JS::ProfilingCategoryPair::JS_Parsing);
|
||||
if (pn) {
|
||||
if (sc->isEvalContext() && sc->hasDebuggerStatement() &&
|
||||
!cx->helperThread()) {
|
||||
|
|
|
@ -205,7 +205,9 @@ MethodStatus jit::BaselineCompile(JSContext* cx, JSScript* script,
|
|||
MOZ_ASSERT(!script->hasBaselineScript());
|
||||
MOZ_ASSERT(script->canBaselineCompile());
|
||||
MOZ_ASSERT(IsBaselineEnabled(cx));
|
||||
AutoGeckoProfilerEntry pseudoFrame(cx, "Baseline script compilation");
|
||||
AutoGeckoProfilerEntry pseudoFrame(
|
||||
cx, "Baseline script compilation",
|
||||
JS::ProfilingCategoryPair::JS_BaselineCompilation);
|
||||
|
||||
script->ensureNonLazyCanonicalFunction();
|
||||
|
||||
|
|
|
@ -2216,7 +2216,9 @@ static MethodStatus Compile(JSContext* cx, HandleScript script,
|
|||
MOZ_ASSERT(jit::IsIonEnabled(cx));
|
||||
MOZ_ASSERT(jit::IsBaselineEnabled(cx));
|
||||
MOZ_ASSERT_IF(osrPc != nullptr, LoopEntryCanIonOsr(osrPc));
|
||||
AutoGeckoProfilerEntry pseudoFrame(cx, "Ion script compilation");
|
||||
AutoGeckoProfilerEntry pseudoFrame(
|
||||
cx, "Ion script compilation",
|
||||
JS::ProfilingCategoryPair::JS_IonCompilation);
|
||||
|
||||
if (!script->hasBaselineScript()) {
|
||||
return Method_Skipped;
|
||||
|
|
Загрузка…
Ссылка в новой задаче