зеркало из https://github.com/mozilla/gecko-dev.git
8179018d28
Bug 1357829 added a third kind of sample, in addition to the existing "periodic" and "synchronous" samples. This patch cleans things up around that change. In particular, it cleans up TickSample, which is a mess of semi-related things. The patch does the following. - It removes everything from TickSample except the register values and renames TickSample as Registers. Almost all the removed stuff is available in ThreadInfo anyway, and the patch adds a ThreadInfo argument to various functions. (Doing it this way wasn't possible until recently because a ThreadInfo wasn't available in profiler_get_backtrace() until recently.) One non-obvious consequence: in synchronous samples we used to use a value of 0 for the stackTop. Because synchronous samples now use ThreadInfo directly, they are able to use the proper stack top value from ThreadInfo::mStackTop. This will presumably only improve the quality of the stack traces. - It splits Tick() in two and renames the halves DoPeriodicSample() and DoSyncSample(). - It reorders arguments in some functions so that ProfileBuffer (the output) is always last, and inputs are passed in roughly the order they are obtained. - It adds a comment at the top of platform.cpp explaining the three kinds of sample. - It renames a couple of other things. --HG-- extra : rebase_source : 61f4bf75ff5a2c331e8e39dcbb2bf3563606ebb0 |
||
---|---|---|
.. | ||
core | ||
gecko | ||
lul | ||
public | ||
tasktracer | ||
tests | ||
merge-profiles.py | ||
moz.build | ||
nm-symbolicate.py |