Lines Matching refs:ip
39 // if ip is 0 , 1 both not useful
386 HLOGW("Hashtable size limit, ip compress failed!");
420 uint64_t ip = node->section.ip | KERNEL_PREFIX;
421 if (ip == PERF_CONTEXT_KERNEL || ip == PERF_CONTEXT_USER) {
424 kernelSymbolsHits.insert(ip);
426 userSymbolsHits[pid].insert(node->section.ip);
490 void VirtualRuntime::SymbolicCallFrame(PerfRecordSample &recordSample, uint64_t ip,
498 auto symbol = GetSymbol(ip, pid, tid, context);
499 MakeCallFrame(symbol, recordSample.callFrames_.emplace_back(ip, 0));
528 SymbolicCallFrame(recordSample, recordSample.data_.ip, serverPid, PERF_CONTEXT_MAX);
531 uint64_t ip = recordSample.data_.ips[i];
532 if (ip >= PERF_CONTEXT_MAX) {
533 std::string contextName = UpdatePerfContext(ip, context);
536 } else if (ip < BAD_IP_ADDRESS) {
537 // ip 0 or 1 or less than 0
541 SymbolicCallFrame(recordSample, ip, serverPid, context);
922 const DfxSymbol VirtualRuntime::GetKernelSymbol(uint64_t ip, const std::vector<DfxMap> &memMaps,
925 DfxSymbol vaddrSymbol(ip, thread.name_);
927 if (ip > map.begin && ip < map.end) {
929 ip, map.begin, map.end, map.name.c_str());
936 symbolsFile->GetVaddrInSymbols(ip, map.begin, map.offset);
943 vaddrSymbol.fileVaddr_, ip, map.name.c_str());
948 foundSymbols.taskVaddr_ = ip;
951 ip, vaddrSymbol.fileVaddr_, map.name.c_str());
958 HLOGW("addr 0x%" PRIx64 " in map but NOT found the symbol file %s", ip,
961 HLOGM("addr 0x%" PRIx64 " not in map 0x%" PRIx64 " - 0x%" PRIx64 " from %s", ip,
968 const DfxSymbol VirtualRuntime::GetKernelThreadSymbol(uint64_t ip, const VirtualThread &thread)
970 DfxSymbol vaddrSymbol(ip, thread.name_);
971 int64_t mapIndex = thread.FindMapIndexByAddr(ip);
980 ip, map->begin, map->end, map->name.c_str());
987 symbolsFile->GetVaddrInSymbols(ip, map->begin, map->offset);
993 vaddrSymbol.fileVaddr_, ip, map->name.c_str());
999 foundSymbols.taskVaddr_ = ip;
1002 ip, vaddrSymbol.fileVaddr_, map->name.c_str());
1009 HLOGW("addr 0x%" PRIx64 " in map but NOT found the symbol file %s", ip,
1014 const DfxSymbol VirtualRuntime::GetUserSymbol(uint64_t ip, const VirtualThread &thread)
1016 DfxSymbol vaddrSymbol(ip, thread.name_);
1017 int64_t mapIndex = thread.FindMapIndexByAddr(ip);
1024 vaddrSymbol.fileVaddr_ = symbolsFile->GetVaddrInSymbols(ip, map->begin, map->offset);
1030 vaddrSymbol.fileVaddr_, ip, map->name.c_str());
1040 foundSymbols = symbolsFile->GetSymbolWithPcAndMap(ip, map);
1046 HLOGW("addr 0x%" PRIx64 " vaddr 0x%" PRIx64 " NOT found in symbol file %s", ip,
1049 symbolsFile->symbolsMap_.insert(std::make_pair(ip, vaddrSymbol));
1054 HLOGW("addr 0x%" PRIx64 " in map but NOT found the symbol file %s", ip, map->name.c_str());
1095 DfxSymbol VirtualRuntime::GetSymbol(uint64_t ip, pid_t pid, pid_t tid, const perf_callchain_context &context)
1097 HLOGV("try find tid %u ip 0x%" PRIx64 " in %zu symbolsFiles\n", tid, ip, symbolsFiles_.size());
1104 symbol = GetKernelThreadSymbol(ip, kthread);
1105 HLOGM("add addr to kernel thread cache 0x%" PRIx64 " cache size %zu", ip,
1115 symbol = GetUserSymbol(ip, GetThread(pid, tid));
1120 HLOGV("cache ip 0x%" PRIx64 " to %s", ip,
1127 symbol = GetKernelSymbol(ip, kernelSpaceMemMaps_, GetThread(pid, tid));
1128 HLOGM("add addr to kernel cache 0x%" PRIx64 " cache size %zu", ip,