Closed Bug 1154997 Opened 5 years ago Closed 5 years ago

Deal with self-hosted builtins when stringifying tracked optimization type info

Categories

(Core :: JavaScript Engine: JIT, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla40
Tracking Status
firefox40 --- fixed

People

(Reporter: shu, Unassigned)

Details

Attachments

(1 file)

An interpreted JSFunction can be in 3 states:

1. isInterpreted(), has JSScript
2. isInterpretedLazy(), with LazyScript
3. isInterpretedLazy(), without LazyScript (self-hosted builtins)

Currently the optimization type info streaming stuff doesn't deal with 3, and sometimes crashes.
Also made lineno into a Maybe<unsigned> from unsigned* while I was here.
Attachment #8593120 - Flags: review?(kvijayan)
Comment on attachment 8593120 [details] [diff] [review]
Deal with self-hosted builtins when stringifying tracked optimization type info.

Review of attachment 8593120 [details] [diff] [review]:
-----------------------------------------------------------------

::: tools/profiler/ProfileEntry.cpp
@@ +127,5 @@
>      // Wrapping around may result in things referenced in the buffer (e.g.,
>      // JIT code addresses and markers) being incorrectly collected.
>      MOZ_ASSERT(mGeneration != UINT32_MAX);
>      mGeneration++;
> +    fprintf(stderr, ">> SHU [%p] mGeneration %u\n", this, mGeneration);

Nit: remove debugging printf.
Attachment #8593120 - Flags: review?(kvijayan) → review+
https://hg.mozilla.org/mozilla-central/rev/66eee8b402fd
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla40
You need to log in before you can comment on or make changes to this bug.