Lines Matching defs:pSubProgram

3737  * @param   pSubProgram         The subprogram which is short on names.
3739 static void rtDwarfInfo_TryGetSubProgramNameFromSpecRef(PRTDBGMODDWARF pThis, PRTDWARFDIESUBPROGRAM pSubProgram)
3744 if (pSubProgram->SpecRef.enmWrt != krtDwarfRef_InfoSection)
3752 int rc = rtDwarfCursor_InitWithOffset(&InfoCursor, pThis, krtDbgModDwarfSect_info, pSubProgram->SpecRef.off);
3768 rtDwarfInfo_ParseDie(pThis, &pSubProgram->Core, &g_SubProgramSpecHackDesc, &InfoCursor,
3821 PRTDWARFDIESUBPROGRAM pSubProgram = (PRTDWARFDIESUBPROGRAM)pDie;
3824 if ( pSubProgram->PcRange.cAttrs
3825 && !pSubProgram->pszName)
3826 rtDwarfInfo_TryGetSubProgramNameFromSpecRef(pThis, pSubProgram);
3828 if (pSubProgram->PcRange.cAttrs)
3830 if (pSubProgram->PcRange.fHaveRanges)
3831 Log5(("subprogram %s (%s) <implement ranges>\n", pSubProgram->pszName, pSubProgram->pszLinkageName));
3834 Log5(("subprogram %s (%s) %#llx-%#llx%s\n", pSubProgram->pszName, pSubProgram->pszLinkageName,
3835 pSubProgram->PcRange.uLowAddress, pSubProgram->PcRange.uHighAddress,
3836 pSubProgram->PcRange.cAttrs == 2 ? "" : " !bad!"));
3837 if ( ( pSubProgram->pszName || pSubProgram->pszLinkageName)
3838 && pSubProgram->PcRange.cAttrs == 2)
3841 rc = rtDbgModDwarfRecordSegOffset(pThis, pSubProgram->uSegment, pSubProgram->PcRange.uHighAddress);
3846 rc = rtDbgModDwarfLinkAddressToSegOffset(pThis, pSubProgram->uSegment,
3847 pSubProgram->PcRange.uLowAddress,
3852 if (pSubProgram->PcRange.uHighAddress >= pSubProgram->PcRange.uLowAddress)
3853 cb = pSubProgram->PcRange.uHighAddress - pSubProgram->PcRange.uLowAddress;
3857 rtDwarfInfo_SelectName(pSubProgram->pszName, pSubProgram->pszLinkageName),
3869 else if ( pSubProgram->PcRange.uLowAddress == 0 /* see with vmlinux */
3870 && pSubProgram->PcRange.uHighAddress == 0)
3885 Log5(("subprogram %s (%s) external\n", pSubProgram->pszName, pSubProgram->pszLinkageName));