diff options
| author | Richard Purdie <richard@openedhand.com> | 2007-05-08 21:28:07 +0000 |
|---|---|---|
| committer | Richard Purdie <richard@openedhand.com> | 2007-05-08 21:28:07 +0000 |
| commit | 559f110ef15574947e2729232c8f844719a12078 (patch) | |
| tree | 8eaaeaf0ac83c9d7514e60fff9d2f4f123562b9c | |
| parent | 7524bbe05db510a79841002dad051d617010029c (diff) | |
| download | poky-559f110ef15574947e2729232c8f844719a12078.tar.gz | |
oprofile: Improve xml_callgraph patch, refresh patches
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1615 311d38ba-8fff-0310-9ca6-ca027cbcb966
5 files changed, 123 insertions, 172 deletions
diff --git a/meta/packages/oprofile/oprofile/oparchive-debug-dir.patch b/meta/packages/oprofile/oprofile/oparchive-debug-dir.patch index b87cd6422e..43a4bbd8c7 100644 --- a/meta/packages/oprofile/oprofile/oparchive-debug-dir.patch +++ b/meta/packages/oprofile/oprofile/oparchive-debug-dir.patch | |||
| @@ -1,8 +1,8 @@ | |||
| 1 | Index: oprofile/pp/oparchive.cpp | 1 | Index: oprofile/pp/oparchive.cpp |
| 2 | =================================================================== | 2 | =================================================================== |
| 3 | --- oprofile.orig/pp/oparchive.cpp 2007-01-17 15:55:12.000000000 +0000 | 3 | --- oprofile.orig/pp/oparchive.cpp |
| 4 | +++ oprofile/pp/oparchive.cpp 2007-01-17 15:55:39.000000000 +0000 | 4 | +++ oprofile/pp/oparchive.cpp |
| 5 | @@ -97,8 +97,17 @@ | 5 | @@ -97,8 +97,17 @@ int oparchive(options::spec const & spec |
| 6 | if (find_separate_debug_file(ibfd, dirname, global, | 6 | if (find_separate_debug_file(ibfd, dirname, global, |
| 7 | debug_filename)) { | 7 | debug_filename)) { |
| 8 | /* found something copy it over */ | 8 | /* found something copy it over */ |
diff --git a/meta/packages/oprofile/oprofile/oparchive-list-files.patch b/meta/packages/oprofile/oprofile/oparchive-list-files.patch index fc8a6271b3..93cf3cdb8d 100644 --- a/meta/packages/oprofile/oprofile/oparchive-list-files.patch +++ b/meta/packages/oprofile/oprofile/oparchive-list-files.patch | |||
| @@ -1,8 +1,8 @@ | |||
| 1 | Index: oprofile/pp/oparchive.cpp | 1 | Index: oprofile/pp/oparchive.cpp |
| 2 | =================================================================== | 2 | =================================================================== |
| 3 | --- oprofile.orig/pp/oparchive.cpp 2007-01-22 12:23:51.000000000 +0000 | 3 | --- oprofile.orig/pp/oparchive.cpp |
| 4 | +++ oprofile/pp/oparchive.cpp 2007-01-22 12:23:56.000000000 +0000 | 4 | +++ oprofile/pp/oparchive.cpp |
| 5 | @@ -35,6 +35,11 @@ | 5 | @@ -35,6 +35,11 @@ namespace { |
| 6 | 6 | ||
| 7 | void copy_one_file(image_error err, string const & source, string const & dest) | 7 | void copy_one_file(image_error err, string const & source, string const & dest) |
| 8 | { | 8 | { |
| @@ -16,9 +16,9 @@ Index: oprofile/pp/oparchive.cpp | |||
| 16 | << " cause: " << strerror(errno) << endl; | 16 | << " cause: " << strerror(errno) << endl; |
| 17 | Index: oprofile/pp/oparchive_options.cpp | 17 | Index: oprofile/pp/oparchive_options.cpp |
| 18 | =================================================================== | 18 | =================================================================== |
| 19 | --- oprofile.orig/pp/oparchive_options.cpp 2007-01-22 12:22:44.000000000 +0000 | 19 | --- oprofile.orig/pp/oparchive_options.cpp |
| 20 | +++ oprofile/pp/oparchive_options.cpp 2007-01-22 12:23:03.000000000 +0000 | 20 | +++ oprofile/pp/oparchive_options.cpp |
| 21 | @@ -36,6 +36,7 @@ | 21 | @@ -36,6 +36,7 @@ namespace options { |
| 22 | bool exclude_dependent; | 22 | bool exclude_dependent; |
| 23 | merge_option merge_by; | 23 | merge_option merge_by; |
| 24 | string outdirectory; | 24 | string outdirectory; |
| @@ -26,7 +26,7 @@ Index: oprofile/pp/oparchive_options.cpp | |||
| 26 | } | 26 | } |
| 27 | 27 | ||
| 28 | 28 | ||
| 29 | @@ -47,7 +48,9 @@ | 29 | @@ -47,7 +48,9 @@ popt::option options_array[] = { |
| 30 | popt::option(options::outdirectory, "output-directory", 'o', | 30 | popt::option(options::outdirectory, "output-directory", 'o', |
| 31 | "output to the given directory", "directory"), | 31 | "output to the given directory", "directory"), |
| 32 | popt::option(options::exclude_dependent, "exclude-dependent", 'x', | 32 | popt::option(options::exclude_dependent, "exclude-dependent", 'x', |
| @@ -37,7 +37,7 @@ Index: oprofile/pp/oparchive_options.cpp | |||
| 37 | }; | 37 | }; |
| 38 | 38 | ||
| 39 | 39 | ||
| 40 | @@ -60,7 +63,7 @@ | 40 | @@ -60,7 +63,7 @@ void check_options() |
| 41 | using namespace options; | 41 | using namespace options; |
| 42 | 42 | ||
| 43 | /* output directory is required */ | 43 | /* output directory is required */ |
| @@ -48,9 +48,9 @@ Index: oprofile/pp/oparchive_options.cpp | |||
| 48 | } | 48 | } |
| 49 | Index: oprofile/pp/oparchive_options.h | 49 | Index: oprofile/pp/oparchive_options.h |
| 50 | =================================================================== | 50 | =================================================================== |
| 51 | --- oprofile.orig/pp/oparchive_options.h 2007-01-22 12:23:14.000000000 +0000 | 51 | --- oprofile.orig/pp/oparchive_options.h |
| 52 | +++ oprofile/pp/oparchive_options.h 2007-01-22 12:23:30.000000000 +0000 | 52 | +++ oprofile/pp/oparchive_options.h |
| 53 | @@ -22,6 +22,7 @@ | 53 | @@ -22,6 +22,7 @@ namespace options { |
| 54 | extern bool exclude_dependent; | 54 | extern bool exclude_dependent; |
| 55 | extern merge_option merge_by; | 55 | extern merge_option merge_by; |
| 56 | extern std::string outdirectory; | 56 | extern std::string outdirectory; |
diff --git a/meta/packages/oprofile/oprofile/oprofile_eabi.patch b/meta/packages/oprofile/oprofile/oprofile_eabi.patch index b360cbeaa6..7388deef3e 100644 --- a/meta/packages/oprofile/oprofile/oprofile_eabi.patch +++ b/meta/packages/oprofile/oprofile/oprofile_eabi.patch | |||
| @@ -4,8 +4,8 @@ | |||
| 4 | 4 | ||
| 5 | Index: oprofile/daemon/opd_cookie.c | 5 | Index: oprofile/daemon/opd_cookie.c |
| 6 | =================================================================== | 6 | =================================================================== |
| 7 | --- oprofile.orig/daemon/opd_cookie.c 2005-10-19 00:28:26.000000000 +0100 | 7 | --- oprofile.orig/daemon/opd_cookie.c |
| 8 | +++ oprofile/daemon/opd_cookie.c 2007-01-09 15:12:49.000000000 +0000 | 8 | +++ oprofile/daemon/opd_cookie.c |
| 9 | @@ -68,7 +68,8 @@ static inline int lookup_dcookie(cookie_ | 9 | @@ -68,7 +68,8 @@ static inline int lookup_dcookie(cookie_ |
| 10 | return syscall(__NR_lookup_dcookie, (unsigned long)(cookie >> 32), | 10 | return syscall(__NR_lookup_dcookie, (unsigned long)(cookie >> 32), |
| 11 | (unsigned long)(cookie & 0xffffffff), buf, size); | 11 | (unsigned long)(cookie & 0xffffffff), buf, size); |
diff --git a/meta/packages/oprofile/oprofile/xml_callgraph.patch b/meta/packages/oprofile/oprofile/xml_callgraph.patch index 337706f72d..1ffe6f69b2 100644 --- a/meta/packages/oprofile/oprofile/xml_callgraph.patch +++ b/meta/packages/oprofile/oprofile/xml_callgraph.patch | |||
| @@ -15,9 +15,9 @@ | |||
| 15 | 15 | ||
| 16 | Index: oprofile/libpp/callgraph_container.cpp | 16 | Index: oprofile/libpp/callgraph_container.cpp |
| 17 | =================================================================== | 17 | =================================================================== |
| 18 | --- oprofile.orig/libpp/callgraph_container.cpp 2007-02-22 18:19:11.000000000 +0000 | 18 | --- oprofile.orig/libpp/callgraph_container.cpp |
| 19 | +++ oprofile/libpp/callgraph_container.cpp 2007-02-22 18:19:12.000000000 +0000 | 19 | +++ oprofile/libpp/callgraph_container.cpp |
| 20 | @@ -379,17 +379,19 @@ process(count_array_t total, double thre | 20 | @@ -379,12 +379,15 @@ process(count_array_t total, double thre |
| 21 | 21 | ||
| 22 | process_children(sym, threshold); | 22 | process_children(sym, threshold); |
| 23 | 23 | ||
| @@ -35,12 +35,7 @@ Index: oprofile/libpp/callgraph_container.cpp | |||
| 35 | { | 35 | { |
| 36 | return cg_syms; | 36 | return cg_syms; |
| 37 | } | 37 | } |
| 38 | 38 | @@ -580,12 +583,14 @@ column_flags callgraph_container::output | |
| 39 | - | ||
| 40 | void callgraph_container::populate(string const & archive_path, | ||
| 41 | list<inverted_profile> const & iprofiles, | ||
| 42 | extra_images const & extra, bool debug_info, double threshold, | ||
| 43 | @@ -580,12 +582,14 @@ column_flags callgraph_container::output | ||
| 44 | column_flags output_hints = cf_none; | 39 | column_flags output_hints = cf_none; |
| 45 | 40 | ||
| 46 | // FIXME: costly: must we access directly recorder map ? | 41 | // FIXME: costly: must we access directly recorder map ? |
| @@ -60,7 +55,7 @@ Index: oprofile/libpp/callgraph_container.cpp | |||
| 60 | 55 | ||
| 61 | return output_hints; | 56 | return output_hints; |
| 62 | } | 57 | } |
| 63 | @@ -597,7 +601,7 @@ count_array_t callgraph_container::sampl | 58 | @@ -597,7 +602,7 @@ count_array_t callgraph_container::sampl |
| 64 | } | 59 | } |
| 65 | 60 | ||
| 66 | 61 | ||
| @@ -71,8 +66,8 @@ Index: oprofile/libpp/callgraph_container.cpp | |||
| 71 | } | 66 | } |
| 72 | Index: oprofile/libpp/callgraph_container.h | 67 | Index: oprofile/libpp/callgraph_container.h |
| 73 | =================================================================== | 68 | =================================================================== |
| 74 | --- oprofile.orig/libpp/callgraph_container.h 2007-02-22 18:19:11.000000000 +0000 | 69 | --- oprofile.orig/libpp/callgraph_container.h |
| 75 | +++ oprofile/libpp/callgraph_container.h 2007-02-22 18:19:12.000000000 +0000 | 70 | +++ oprofile/libpp/callgraph_container.h |
| 76 | @@ -53,7 +53,7 @@ public: | 71 | @@ -53,7 +53,7 @@ public: |
| 77 | count_array_t const & arc_count); | 72 | count_array_t const & arc_count); |
| 78 | 73 | ||
| @@ -103,8 +98,8 @@ Index: oprofile/libpp/callgraph_container.h | |||
| 103 | /** | 98 | /** |
| 104 | Index: oprofile/libpp/format_output.cpp | 99 | Index: oprofile/libpp/format_output.cpp |
| 105 | =================================================================== | 100 | =================================================================== |
| 106 | --- oprofile.orig/libpp/format_output.cpp 2007-02-22 18:19:11.000000000 +0000 | 101 | --- oprofile.orig/libpp/format_output.cpp |
| 107 | +++ oprofile/libpp/format_output.cpp 2007-02-22 18:19:12.000000000 +0000 | 102 | +++ oprofile/libpp/format_output.cpp |
| 108 | @@ -489,7 +489,7 @@ cg_formatter::cg_formatter(callgraph_con | 103 | @@ -489,7 +489,7 @@ cg_formatter::cg_formatter(callgraph_con |
| 109 | } | 104 | } |
| 110 | 105 | ||
| @@ -255,7 +250,7 @@ Index: oprofile/libpp/format_output.cpp | |||
| 255 | 250 | ||
| 256 | // output symbol's summary data for each profile class | 251 | // output symbol's summary data for each profile class |
| 257 | bool got_samples = false; | 252 | bool got_samples = false; |
| 258 | @@ -750,27 +768,21 @@ output_symbol(ostream & out, | 253 | @@ -752,27 +770,21 @@ output_symbol(ostream & out, |
| 259 | 254 | ||
| 260 | string const image = get_image_name(symb->image_name, true); | 255 | string const image = get_image_name(symb->image_name, true); |
| 261 | string const qname = image + ":" + name; | 256 | string const qname = image + ":" + name; |
| @@ -287,7 +282,7 @@ Index: oprofile/libpp/format_output.cpp | |||
| 287 | details << detail_str; | 282 | details << detail_str; |
| 288 | } | 283 | } |
| 289 | 284 | ||
| 290 | @@ -826,5 +838,176 @@ output_attribute(ostream & out, field_da | 285 | @@ -828,5 +840,131 @@ output_attribute(ostream & out, field_da |
| 291 | } | 286 | } |
| 292 | } | 287 | } |
| 293 | 288 | ||
| @@ -311,7 +306,65 @@ Index: oprofile/libpp/format_output.cpp | |||
| 311 | +} | 306 | +} |
| 312 | + | 307 | + |
| 313 | +void xml_cg_formatter:: | 308 | +void xml_cg_formatter:: |
| 314 | +output_symbol_core(ostream & out, | 309 | +output_symbol_core(ostream & out, cg_symbol::children const cg_symb, |
| 310 | + string const selfname, string const qname, | ||
| 311 | + size_t lo, size_t hi, bool is_module, tag_t tag) | ||
| 312 | +{ | ||
| 313 | + | ||
| 314 | + cg_symbol::children::const_iterator cit; | ||
| 315 | + cg_symbol::children::const_iterator cend = cg_symb.end(); | ||
| 316 | + | ||
| 317 | + for (cit = cg_symb.begin(); cit != cend; ++cit) { | ||
| 318 | + string binary = get_image_name((cit)->app_name, true); | ||
| 319 | + string module = get_image_name((cit)->image_name, true); | ||
| 320 | + bool got_samples = false, self = false; | ||
| 321 | + ostringstream str; | ||
| 322 | + size_t indx; | ||
| 323 | + | ||
| 324 | + for (size_t p = lo; p <= hi; ++p) | ||
| 325 | + got_samples |= xml_support->output_summary_data(str, cit->sample.counts, p); | ||
| 326 | + | ||
| 327 | + if (!got_samples) | ||
| 328 | + continue; | ||
| 329 | + | ||
| 330 | + cverb << vxml << " <!-- symbol_ref=" << symbol_names.name(cit->name) << " -->" << endl; | ||
| 331 | + | ||
| 332 | + if (is_module) { | ||
| 333 | + out << open_element(MODULE, true); | ||
| 334 | + out << init_attr(NAME, module) << close_element(NONE, true); | ||
| 335 | + } | ||
| 336 | + | ||
| 337 | + out << open_element(SYMBOL, true); | ||
| 338 | + | ||
| 339 | + string const symname = symbol_names.name(cit->name); | ||
| 340 | + assert(symname.size() > 0); | ||
| 341 | + | ||
| 342 | + string const symqname = module + ":" + symname; | ||
| 343 | + | ||
| 344 | + // Find any self references and handle | ||
| 345 | + if ((symname == selfname) && (tag == CALLEES)) { | ||
| 346 | + self = true; | ||
| 347 | + indx = xml_get_symbol_index(qname); | ||
| 348 | + } else | ||
| 349 | + indx = xml_get_symbol_index(symqname); | ||
| 350 | + | ||
| 351 | + out << init_attr(ID_REF, indx); | ||
| 352 | + | ||
| 353 | + if (self) | ||
| 354 | + out << init_attr(SELFREF, "true"); | ||
| 355 | + | ||
| 356 | + out << close_element(NONE, true); | ||
| 357 | + out << str.str(); | ||
| 358 | + out << close_element(SYMBOL); | ||
| 359 | + | ||
| 360 | + if (is_module) | ||
| 361 | + out << close_element(MODULE); | ||
| 362 | + } | ||
| 363 | +} | ||
| 364 | + | ||
| 365 | + | ||
| 366 | +void xml_cg_formatter:: | ||
| 367 | +output_symbol(ostream & out, | ||
| 315 | + symbol_entry const * symb, size_t lo, size_t hi, bool is_module) | 368 | + symbol_entry const * symb, size_t lo, size_t hi, bool is_module) |
| 316 | +{ | 369 | +{ |
| 317 | + cg_symbol const * cg_symb = dynamic_cast<const cg_symbol *>(symb); | 370 | + cg_symbol const * cg_symb = dynamic_cast<const cg_symbol *>(symb); |
| @@ -345,129 +398,26 @@ Index: oprofile/libpp/format_output.cpp | |||
| 345 | + out << close_element(NONE, true); | 398 | + out << close_element(NONE, true); |
| 346 | + | 399 | + |
| 347 | + out << open_element(CALLERS); | 400 | + out << open_element(CALLERS); |
| 348 | + if (cg_symb) { | 401 | + if (cg_symb) |
| 349 | + cg_symbol::children::const_iterator cit; | 402 | + output_symbol_core(out, cg_symb->callers, selfname, qname, lo, hi, is_module, CALLERS); |
| 350 | + cg_symbol::children::const_iterator cend = cg_symb->callers.end(); | ||
| 351 | + | ||
| 352 | + for (cit = cg_symb->callers.begin(); cit != cend; ++cit) { | ||
| 353 | + ostringstream str1; | ||
| 354 | + string binary = get_image_name((cit)->app_name, true); | ||
| 355 | + string module = get_image_name((cit)->image_name, true); | ||
| 356 | + | ||
| 357 | + | ||
| 358 | + got_samples = false; | ||
| 359 | + | ||
| 360 | + for (size_t p = lo; p <= hi; ++p) { | ||
| 361 | + got_samples |= xml_support->output_summary_data(str1, cit->sample.counts, p); | ||
| 362 | + } | ||
| 363 | + | ||
| 364 | + if (!got_samples) | ||
| 365 | + continue; | ||
| 366 | + | ||
| 367 | + cverb << vxml << " <!-- symbol_ref=" << symbol_names.name(cit->name) << " -->" << endl; | ||
| 368 | + | ||
| 369 | + if (is_module) { | ||
| 370 | + out << open_element(MODULE, true); | ||
| 371 | + out << init_attr(NAME, module) << close_element(NONE, true); | ||
| 372 | + } | ||
| 373 | + | ||
| 374 | + out << open_element(SYMBOL, true); | ||
| 375 | + | ||
| 376 | + string const name1 = symbol_names.name(cit->name); | ||
| 377 | + assert(name1.size() > 0); | ||
| 378 | + | ||
| 379 | + string const qname1 = module + ":" + name1; | ||
| 380 | + | ||
| 381 | + out << init_attr(ID_REF, xml_get_symbol_index(qname1)); | ||
| 382 | + | ||
| 383 | + out << close_element(NONE, true); | ||
| 384 | + | ||
| 385 | + out << str1.str(); | ||
| 386 | + | ||
| 387 | + out << close_element(SYMBOL); | ||
| 388 | + | ||
| 389 | + if (is_module) | ||
| 390 | + out << close_element(MODULE); | ||
| 391 | + } | ||
| 392 | + } | ||
| 393 | + out << close_element(CALLERS); | 403 | + out << close_element(CALLERS); |
| 394 | + | 404 | + |
| 395 | + out << open_element(CALLEES); | 405 | + out << open_element(CALLEES); |
| 396 | + if (cg_symb) { | 406 | + if (cg_symb) |
| 397 | + cg_symbol::children::const_iterator cit; | 407 | + output_symbol_core(out, cg_symb->callees, selfname, qname, lo, hi, is_module, CALLEES); |
| 398 | + cg_symbol::children::const_iterator cend = cg_symb->callees.end(); | ||
| 399 | + | ||
| 400 | + for (cit = cg_symb->callees.begin(); cit != cend; ++cit) { | ||
| 401 | + size_t indx; | ||
| 402 | + ostringstream str1; | ||
| 403 | + string binary = get_image_name((cit)->app_name, true); | ||
| 404 | + string module = get_image_name((cit)->image_name, true); | ||
| 405 | + bool self = false; | ||
| 406 | + | ||
| 407 | + got_samples = false; | ||
| 408 | + | ||
| 409 | + for (size_t p = lo; p <= hi; ++p) { | ||
| 410 | + got_samples |= xml_support->output_summary_data(str1, cit->sample.counts, p); | ||
| 411 | + } | ||
| 412 | + | ||
| 413 | + if (!got_samples) | ||
| 414 | + continue; | ||
| 415 | + | ||
| 416 | + cverb << vxml << " <!-- symbol_ref=" << symbol_names.name(cit->name) << " -->" << endl; | ||
| 417 | + | ||
| 418 | + if (is_module) { | ||
| 419 | + out << open_element(MODULE, true); | ||
| 420 | + out << init_attr(NAME, module) << close_element(NONE, true); | ||
| 421 | + } | ||
| 422 | + | ||
| 423 | + out << open_element(SYMBOL, true); | ||
| 424 | + | ||
| 425 | + string name1 = symbol_names.name(cit->name); | ||
| 426 | + assert(name1.size() > 0); | ||
| 427 | + string const qname1 = module + ":" + name1; | ||
| 428 | + | ||
| 429 | + /* Find any self references and handle */ | ||
| 430 | + if (name1 == selfname) { | ||
| 431 | + self = true; | ||
| 432 | + indx = xml_get_symbol_index(qname); | ||
| 433 | + } else | ||
| 434 | + indx = xml_get_symbol_index(qname1); | ||
| 435 | + | ||
| 436 | + out << init_attr(ID_REF, indx); | ||
| 437 | + | ||
| 438 | + if (self) | ||
| 439 | + out << init_attr(SELFREF, "true"); | ||
| 440 | + | ||
| 441 | + out << close_element(NONE, true); | ||
| 442 | + | ||
| 443 | + out << str1.str(); | ||
| 444 | + | ||
| 445 | + out << close_element(SYMBOL); | ||
| 446 | + | 408 | + |
| 447 | + if (is_module) | ||
| 448 | + out << close_element(MODULE); | ||
| 449 | + } | ||
| 450 | + } | ||
| 451 | + out << close_element(CALLEES); | 409 | + out << close_element(CALLEES); |
| 452 | + | 410 | + |
| 453 | + // output summary | 411 | + // output summary |
| 454 | + out << str.str(); | 412 | + out << str.str(); |
| 455 | + out << close_element(SYMBOL); | 413 | + out << close_element(SYMBOL); |
| 456 | +} | 414 | +} |
| 457 | + | ||
| 458 | + | ||
| 459 | +void xml_cg_formatter:: | ||
| 460 | +output_symbol(ostream & out, | ||
| 461 | + symbol_entry const * symb, size_t lo, size_t hi, bool is_module) | ||
| 462 | +{ | ||
| 463 | + output_symbol_core(out, symb, lo, hi, is_module); | ||
| 464 | +} | ||
| 465 | 415 | ||
| 466 | } // namespace format_output | 416 | } // namespace format_output |
| 467 | Index: oprofile/libpp/format_output.h | 417 | Index: oprofile/libpp/format_output.h |
| 468 | =================================================================== | 418 | =================================================================== |
| 469 | --- oprofile.orig/libpp/format_output.h 2007-02-22 18:19:11.000000000 +0000 | 419 | --- oprofile.orig/libpp/format_output.h |
| 470 | +++ oprofile/libpp/format_output.h 2007-02-22 18:19:12.000000000 +0000 | 420 | +++ oprofile/libpp/format_output.h |
| 471 | @@ -201,7 +201,7 @@ public: | 421 | @@ -201,7 +201,7 @@ public: |
| 472 | 422 | ||
| 473 | /** output callgraph information according to the previously format | 423 | /** output callgraph information according to the previously format |
| @@ -523,7 +473,7 @@ Index: oprofile/libpp/format_output.h | |||
| 523 | // count of DetailData items output so far | 473 | // count of DetailData items output so far |
| 524 | size_t detail_count; | 474 | size_t detail_count; |
| 525 | 475 | ||
| 526 | @@ -270,6 +270,29 @@ private: | 476 | @@ -270,6 +270,30 @@ private: |
| 527 | format_flags fl, tag_t tag); | 477 | format_flags fl, tag_t tag); |
| 528 | }; | 478 | }; |
| 529 | 479 | ||
| @@ -546,18 +496,19 @@ Index: oprofile/libpp/format_output.h | |||
| 546 | + /// container we work from | 496 | + /// container we work from |
| 547 | + callgraph_container const * callgraph; | 497 | + callgraph_container const * callgraph; |
| 548 | + | 498 | + |
| 549 | + void output_symbol_core(std::ostream & out, | 499 | + void output_symbol_core(std::ostream & out, |
| 550 | + symbol_entry const * symb, size_t lo, size_t hi, | 500 | + cg_symbol::children const cg_symb, |
| 551 | + bool is_module); | 501 | + std::string const selfname, std::string const qname, |
| 502 | + size_t lo, size_t hi, bool is_module, tag_t tag); | ||
| 552 | +}; | 503 | +}; |
| 553 | 504 | ||
| 554 | } // namespace format_output | 505 | } // namespace format_output |
| 555 | 506 | ||
| 556 | Index: oprofile/libpp/symbol.h | 507 | Index: oprofile/libpp/symbol.h |
| 557 | =================================================================== | 508 | =================================================================== |
| 558 | --- oprofile.orig/libpp/symbol.h 2007-02-22 18:19:11.000000000 +0000 | 509 | --- oprofile.orig/libpp/symbol.h |
| 559 | +++ oprofile/libpp/symbol.h 2007-02-22 18:19:12.000000000 +0000 | 510 | +++ oprofile/libpp/symbol.h |
| 560 | @@ -55,8 +55,11 @@ struct sample_entry { | 511 | @@ -56,8 +56,11 @@ struct sample_entry { |
| 561 | 512 | ||
| 562 | 513 | ||
| 563 | /// associate a symbol with a file location, samples count and vma address | 514 | /// associate a symbol with a file location, samples count and vma address |
| @@ -570,7 +521,7 @@ Index: oprofile/libpp/symbol.h | |||
| 570 | /// which image this symbol belongs to | 521 | /// which image this symbol belongs to |
| 571 | image_name_id image_name; | 522 | image_name_id image_name; |
| 572 | /// owning application name: identical to image name if profiling | 523 | /// owning application name: identical to image name if profiling |
| 573 | @@ -92,7 +95,8 @@ typedef std::vector<symbol_entry const * | 524 | @@ -93,7 +96,8 @@ typedef std::vector<symbol_entry const * |
| 574 | * the sample counts replaced with the relevant arc counts, whilst | 525 | * the sample counts replaced with the relevant arc counts, whilst |
| 575 | * the cg_symbol retains its self count. | 526 | * the cg_symbol retains its self count. |
| 576 | */ | 527 | */ |
| @@ -580,25 +531,23 @@ Index: oprofile/libpp/symbol.h | |||
| 580 | cg_symbol(symbol_entry const & sym) : symbol_entry(sym) {} | 531 | cg_symbol(symbol_entry const & sym) : symbol_entry(sym) {} |
| 581 | 532 | ||
| 582 | typedef std::vector<symbol_entry> children; | 533 | typedef std::vector<symbol_entry> children; |
| 583 | @@ -108,9 +112,12 @@ struct cg_symbol : public symbol_entry { | 534 | @@ -109,10 +113,8 @@ struct cg_symbol : public symbol_entry { |
| 584 | count_array_t total_callee_count; | 535 | count_array_t total_callee_count; |
| 585 | }; | 536 | }; |
| 586 | 537 | ||
| 587 | +/// a collection of sorted callgraph symbols (the objects themselves) | 538 | - |
| 588 | +typedef std::vector<cg_symbol> cg_collection_objs; | ||
| 589 | |||
| 590 | -/// a collection of sorted callgraph symbols | 539 | -/// a collection of sorted callgraph symbols |
| 591 | -typedef std::vector<cg_symbol> cg_collection; | 540 | -typedef std::vector<cg_symbol> cg_collection; |
| 592 | + | 541 | - |
| 593 | +/// a collection of sorted callgraph symbols (pointers too, compatible with symbol_collection) | 542 | +/// a collection of sorted callgraph symbol objects |
| 594 | +//typedef std::vector<cg_symbol const *> cg_collection; | 543 | +typedef std::vector<cg_symbol> cg_collection_objs; |
| 595 | |||
| 596 | 544 | ||
| 597 | /// for storing diff %ages | 545 | /// for storing diff %ages |
| 546 | typedef growable_vector<double> diff_array_t; | ||
| 598 | Index: oprofile/libpp/symbol_sort.cpp | 547 | Index: oprofile/libpp/symbol_sort.cpp |
| 599 | =================================================================== | 548 | =================================================================== |
| 600 | --- oprofile.orig/libpp/symbol_sort.cpp 2007-02-22 18:19:11.000000000 +0000 | 549 | --- oprofile.orig/libpp/symbol_sort.cpp |
| 601 | +++ oprofile/libpp/symbol_sort.cpp 2007-02-22 18:19:12.000000000 +0000 | 550 | +++ oprofile/libpp/symbol_sort.cpp |
| 602 | @@ -146,23 +146,6 @@ sort(symbol_collection & syms, bool reve | 551 | @@ -146,23 +146,6 @@ sort(symbol_collection & syms, bool reve |
| 603 | 552 | ||
| 604 | 553 | ||
| @@ -625,8 +574,8 @@ Index: oprofile/libpp/symbol_sort.cpp | |||
| 625 | long_filenames = lf; | 574 | long_filenames = lf; |
| 626 | Index: oprofile/libpp/symbol_sort.h | 575 | Index: oprofile/libpp/symbol_sort.h |
| 627 | =================================================================== | 576 | =================================================================== |
| 628 | --- oprofile.orig/libpp/symbol_sort.h 2007-02-22 18:19:11.000000000 +0000 | 577 | --- oprofile.orig/libpp/symbol_sort.h |
| 629 | +++ oprofile/libpp/symbol_sort.h 2007-02-22 18:19:12.000000000 +0000 | 578 | +++ oprofile/libpp/symbol_sort.h |
| 630 | @@ -44,12 +44,6 @@ struct sort_options { | 579 | @@ -44,12 +44,6 @@ struct sort_options { |
| 631 | /** | 580 | /** |
| 632 | * Sort the given container by the given criteria. | 581 | * Sort the given container by the given criteria. |
| @@ -642,8 +591,8 @@ Index: oprofile/libpp/symbol_sort.h | |||
| 642 | 591 | ||
| 643 | Index: oprofile/libpp/xml_utils.cpp | 592 | Index: oprofile/libpp/xml_utils.cpp |
| 644 | =================================================================== | 593 | =================================================================== |
| 645 | --- oprofile.orig/libpp/xml_utils.cpp 2007-02-22 18:19:12.000000000 +0000 | 594 | --- oprofile.orig/libpp/xml_utils.cpp |
| 646 | +++ oprofile/libpp/xml_utils.cpp 2007-02-22 18:24:58.000000000 +0000 | 595 | +++ oprofile/libpp/xml_utils.cpp |
| 647 | @@ -268,13 +268,6 @@ void xml_utils::output_xml_header(string | 596 | @@ -268,13 +268,6 @@ void xml_utils::output_xml_header(string |
| 648 | cout << close_element(SETUP) << endl; | 597 | cout << close_element(SETUP) << endl; |
| 649 | } | 598 | } |
| @@ -703,8 +652,8 @@ Index: oprofile/libpp/xml_utils.cpp | |||
| 703 | 652 | ||
| 704 | Index: oprofile/libutil++/xml_output.cpp | 653 | Index: oprofile/libutil++/xml_output.cpp |
| 705 | =================================================================== | 654 | =================================================================== |
| 706 | --- oprofile.orig/libutil++/xml_output.cpp 2007-02-22 18:19:11.000000000 +0000 | 655 | --- oprofile.orig/libutil++/xml_output.cpp |
| 707 | +++ oprofile/libutil++/xml_output.cpp 2007-02-22 18:19:12.000000000 +0000 | 656 | +++ oprofile/libutil++/xml_output.cpp |
| 708 | @@ -47,8 +47,11 @@ string const xml_tag_map[] = { | 657 | @@ -47,8 +47,11 @@ string const xml_tag_map[] = { |
| 709 | "binary", | 658 | "binary", |
| 710 | "module", | 659 | "module", |
| @@ -719,8 +668,8 @@ Index: oprofile/libutil++/xml_output.cpp | |||
| 719 | "symboltable", | 668 | "symboltable", |
| 720 | Index: oprofile/libutil++/xml_output.h | 669 | Index: oprofile/libutil++/xml_output.h |
| 721 | =================================================================== | 670 | =================================================================== |
| 722 | --- oprofile.orig/libutil++/xml_output.h 2007-02-22 18:19:11.000000000 +0000 | 671 | --- oprofile.orig/libutil++/xml_output.h |
| 723 | +++ oprofile/libutil++/xml_output.h 2007-02-22 18:19:12.000000000 +0000 | 672 | +++ oprofile/libutil++/xml_output.h |
| 724 | @@ -28,7 +28,8 @@ typedef enum { | 673 | @@ -28,7 +28,8 @@ typedef enum { |
| 725 | THREAD, THREAD_ID, | 674 | THREAD, THREAD_ID, |
| 726 | BINARY, | 675 | BINARY, |
| @@ -733,8 +682,8 @@ Index: oprofile/libutil++/xml_output.h | |||
| 733 | SOURCE_FILE, SOURCE_LINE, CODE_LENGTH, | 682 | SOURCE_FILE, SOURCE_LINE, CODE_LENGTH, |
| 734 | Index: oprofile/pp/opreport.cpp | 683 | Index: oprofile/pp/opreport.cpp |
| 735 | =================================================================== | 684 | =================================================================== |
| 736 | --- oprofile.orig/pp/opreport.cpp 2007-02-22 18:19:11.000000000 +0000 | 685 | --- oprofile.orig/pp/opreport.cpp |
| 737 | +++ oprofile/pp/opreport.cpp 2007-02-22 18:19:12.000000000 +0000 | 686 | +++ oprofile/pp/opreport.cpp |
| 738 | @@ -378,7 +378,7 @@ void output_symbols(profile_container co | 687 | @@ -378,7 +378,7 @@ void output_symbols(profile_container co |
| 739 | format_output::opreport_formatter * text_out = 0; | 688 | format_output::opreport_formatter * text_out = 0; |
| 740 | 689 | ||
| @@ -801,8 +750,8 @@ Index: oprofile/pp/opreport.cpp | |||
| 801 | 750 | ||
| 802 | Index: oprofile/pp/opreport_options.cpp | 751 | Index: oprofile/pp/opreport_options.cpp |
| 803 | =================================================================== | 752 | =================================================================== |
| 804 | --- oprofile.orig/pp/opreport_options.cpp 2007-02-22 18:19:11.000000000 +0000 | 753 | --- oprofile.orig/pp/opreport_options.cpp |
| 805 | +++ oprofile/pp/opreport_options.cpp 2007-02-22 18:19:12.000000000 +0000 | 754 | +++ oprofile/pp/opreport_options.cpp |
| 806 | @@ -177,11 +177,6 @@ void check_options(bool diff) | 755 | @@ -177,11 +177,6 @@ void check_options(bool diff) |
| 807 | } | 756 | } |
| 808 | 757 | ||
diff --git a/meta/packages/oprofile/oprofileui-svn.inc b/meta/packages/oprofile/oprofileui-svn.inc index 78b9431cf5..42baaa0858 100644 --- a/meta/packages/oprofile/oprofileui-svn.inc +++ b/meta/packages/oprofile/oprofileui-svn.inc | |||
| @@ -1,6 +1,8 @@ | |||
| 1 | require oprofileui.inc | 1 | require oprofileui.inc |
| 2 | 2 | ||
| 3 | PV = "0.0+svn${SRCDATE}" | 3 | PV = "0.0+svn${SRCDATE}" |
| 4 | PR = "r1" | ||
| 5 | |||
| 4 | S = "${WORKDIR}/trunk" | 6 | S = "${WORKDIR}/trunk" |
| 5 | 7 | ||
| 6 | SRC_URI = "svn://svn.o-hand.com/repos/oprofileui;module=trunk;proto=http" | 8 | SRC_URI = "svn://svn.o-hand.com/repos/oprofileui;module=trunk;proto=http" |
