Skip over __restore_rt frames when generating profile analysis results. Bug
243483, r=shaver, sr=dbaron
This commit is contained in:
Родитель
2f908209a7
Коммит
ab0a30e9c0
|
@ -495,8 +495,19 @@ void leaky::analyze()
|
|||
int idx=-1, parrentIdx=-1; // Init idx incase n==0
|
||||
for(int i=n-1; i>=0; --i, --pcp, parrentIdx=idx) {
|
||||
idx = findSymbolIndex(reinterpret_cast<u_long>(*pcp));
|
||||
if(idx>=0) {
|
||||
|
||||
if(idx>=0) {
|
||||
// Skip over bogus __restore_rt frames that realtime profiling
|
||||
// can introduce.
|
||||
if (i > 0 && !strcmp(externalSymbols[idx].name, "__restore_rt")) {
|
||||
--pcp;
|
||||
--i;
|
||||
idx = findSymbolIndex(reinterpret_cast<u_long>(*pcp));
|
||||
if (idx < 0) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
// If we have not seen this symbol before count it and mark it as seen
|
||||
if(flagArray[idx]!=stacks && ((flagArray[idx]=stacks) || true)) {
|
||||
++countArray[idx];
|
||||
|
|
Загрузка…
Ссылка в новой задаче