Lines Matching refs:thread
185 VirtualThread *thread = static_cast<VirtualThread *>(data); in PhdrCallBack() local
189 EXPECT_NE(thread->GetMaps().size(), 0u); in PhdrCallBack()
201 for (const MemMapItem &item : thread->GetMaps()) { in PhdrCallBack()
210 for (const MemMapItem &item : thread->GetMaps()) { in PhdrCallBack()
231 VirtualThread thread(getpid(), files);
232 thread.ParseMap();
234 dl_iterate_phdr(PhdrCallBack, static_cast<void *>(&thread));
236 for (const MemMapItem &item : thread.GetMaps()) {
251 VirtualThread thread(getpid(), files);
252 thread.CreateMapItem("0.so", 1000, 2000, 3000);
253 thread.CreateMapItem("1.so", 3000, 4000, 5000);
254 thread.CreateMapItem("2.so", 10000, 20000, 30000);
256 const std::vector<MemMapItem> &maps = thread.GetMaps();
284 VirtualThread thread(getpid(), files);
285 thread.ParseMap();
287 VirtualThread thread2(getpid(), gettid() + 1u, thread, files);
289 const std::vector<MemMapItem> &maps = thread.GetMaps();
297 size_t oldSize = thread.GetMaps().size();
298 thread.CreateMapItem("new", 0u, 1u, 2u);
299 size_t newSize = thread.GetMaps().size();
315 VirtualThread thread(getpid(), files);
317 thread.CreateMapItem("0.so", 1000u, 2000u, 3000u);
318 thread.CreateMapItem("1.so", 3000u, 4000u, 5000u);
319 thread.CreateMapItem("2.so", 10000u, 20000u, 30000u);
322 outMap = thread.FindMapByAddr(0000u);
325 outMap = thread.FindMapByAddr(1000u);
329 outMap = thread.FindMapByAddr(2000u);
333 outMap = thread.FindMapByAddr(2999u);
337 outMap = thread.FindMapByAddr(3000u);
341 EXPECT_EQ(thread.FindMapByAddr(30000u - 1u) != nullptr, true);
342 EXPECT_EQ(thread.FindMapByAddr(30000u) != nullptr, false);
343 EXPECT_EQ(thread.FindMapByAddr(30000u + 1u) != nullptr, false);
354 VirtualThread thread(getpid(), files);
356 thread.CreateMapItem("0.so", 1000u, 2000u, 3000u);
357 thread.CreateMapItem("1.so", 3000u, 4000u, 5000u);
358 thread.CreateMapItem("2.so", 10000u, 20000u, 30000u);
361 EXPECT_EQ(thread.FindMapByFileInfo("", 0000u), nullptr);
362 EXPECT_EQ(thread.FindMapByFileInfo("0.so", 0000u), nullptr);
364 EXPECT_EQ(thread.FindMapByFileInfo("1.so", 3000u), nullptr);
365 ASSERT_NE(outMap = thread.FindMapByFileInfo("0.so", 3000u), nullptr);
368 EXPECT_EQ(thread.FindMapByFileInfo("1.so", 4000u), nullptr);
369 ASSERT_NE(outMap = thread.FindMapByFileInfo("0.so", 4000u), nullptr);
372 EXPECT_EQ(thread.FindMapByFileInfo("1.so", 4999u), nullptr);
373 ASSERT_NE(outMap = thread.FindMapByFileInfo("0.so", 4999u), nullptr);
376 EXPECT_EQ(thread.FindMapByFileInfo("0.so", 5000u), nullptr);
377 ASSERT_NE(outMap = thread.FindMapByFileInfo("1.so", 5000u), nullptr);
380 EXPECT_EQ(thread.FindMapByFileInfo("1.so", 50000u - 1), nullptr);
381 EXPECT_EQ(thread.FindMapByFileInfo("x.so", 50000u - 1), nullptr);
382 EXPECT_NE(thread.FindMapByFileInfo("2.so", 50000u - 1), nullptr);
383 EXPECT_EQ(thread.FindMapByFileInfo("2.so", 50000u), nullptr);
384 EXPECT_EQ(thread.FindMapByFileInfo("2.so", 50000u + 1), nullptr);
402 VirtualThread thread(getpid(), files);
407 EXPECT_EQ(thread.FindSymbolsFileByMap(inMap), nullptr);
410 EXPECT_EQ(thread.FindSymbolsFileByMap(inMap), nullptr);
413 ASSERT_NE(thread.FindSymbolsFileByMap(inMap), nullptr);
414 EXPECT_STREQ(thread.FindSymbolsFileByMap(inMap)->filePath_.c_str(), inMap.name_.c_str());
417 ASSERT_NE(thread.FindSymbolsFileByMap(inMap), nullptr);
418 EXPECT_STREQ(thread.FindSymbolsFileByMap(inMap)->filePath_.c_str(), inMap.name_.c_str());
421 ASSERT_NE(thread.FindSymbolsFileByMap(inMap), nullptr);
422 EXPECT_STREQ(thread.FindSymbolsFileByMap(inMap)->filePath_.c_str(), inMap.name_.c_str());
433 VirtualThread thread(getpid(), symbolsFiles);
444 thread.CreateMapItem(TEST_FILE_ELF_FULL_PATH, 0u, sb.st_size, 0u);
445 ASSERT_EQ(thread.GetMaps().size(), 1u);
462 const MemMapItem *map = thread.FindMapByAddr(addr);
465 printf("map: %s\n", thread.GetMaps().at(0).ToString().c_str());
468 EXPECT_NE(thread.FindSymbolsFileByMap(*map), nullptr);
470 printf("symbols: %s\n", thread.symbolsFiles_.front().get()->filePath_.c_str());
473 ASSERT_EQ(thread.ReadRoMemory(addr++, &readRoByte, 1u), true);
477 ASSERT_EQ(thread.ReadRoMemory(addr++, &readRoByte, 1u), true);
482 ASSERT_EQ(thread.ReadRoMemory(addr++, &readRoByte, 1u), false);