Definition at line 151 of file pfm_gen_analysis.cpp.
◆ Offset
◆ SymbolCache
◆ FileInfo() [1/2]
| FileInfo::FileInfo |
( |
void |
| ) |
|
|
inline |
◆ FileInfo() [2/2]
| FileInfo::FileInfo |
( |
const std::string & |
name, |
|
|
bool |
useGdb |
|
) |
| |
|
inline |
◆ createOffsetMap()
| void FileInfo::createOffsetMap |
( |
void |
| ) |
|
|
inlineprivate |
Definition at line 194 of file pfm_gen_analysis.cpp.
200 bool matched =
false;
201 while ( objdump.output() ) {
211 if ( !objdump.output() )
break;
212 if (
line.empty() )
continue;
213 const char* lineptr =
line.c_str();
215 if ( !
skipString(
"LOAD", lineptr, &lineptr ) )
continue;
217 if ( !
skipString(
"off", lineptr, &lineptr ) )
continue;
219 int initialBase =
strtol( lineptr, &endptr, 16 );
220 if ( lineptr == endptr )
continue;
223 if ( !
skipString(
"vaddr", lineptr, &lineptr ) )
continue;
225 int finalBase =
strtol( lineptr, &endptr, 16 );
226 if ( lineptr == endptr )
continue;
227 vmbase = finalBase - initialBase;
238 while (
nm.output() ) {
241 if ( !
nm.output() )
break;
242 if (
line.empty() )
continue;
247 if ( endptr ==
begin )
continue;
248 if ( *endptr++ !=
' ' )
continue;
249 if (
isspace( *endptr++ ) )
continue;
250 if ( *endptr++ !=
' ' )
continue;
251 char* symbolName = endptr;
252 while ( *endptr && !
isspace( *endptr ) ) endptr++;
253 if ( *endptr != 0 )
continue;
255 if ( symbolName[0] ==
'.' )
continue;
260 int offset = address - vmbase;
◆ next()
◆ symbolByOffset()
| const char* FileInfo::symbolByOffset |
( |
Offset |
offset | ) |
|
|
inline |
Definition at line 160 of file pfm_gen_analysis.cpp.
164 if ( i->OFFSET == offset ) {
return i->NAME.c_str(); }
170 return i->NAME.c_str();
◆ m_symbolCache
◆ NAME
The documentation for this class was generated from the following file: