Home | History | Annotate | Download | only in oprofile
      1 2003-12-29  Philippe Elie  <phil.el (a] wanadoo.fr>
      2 
      3 	* configure.in: my_op_prefix is not necessarily suffixed by a '/'
      4 
      5 2003-12-29  John Levon  <levon (a] movementarian.org>
      6 
      7 	* configure.in:
      8 	* doc/*.1.in: add HTML docs to SEE ALSO
      9 
     10 2003-12-29  John Levon  <levon (a] movementarian.org>
     11 
     12 	* doc/opcontrol.1.in:
     13 	* doc/oprofile.xml: minor language cleanups
     14 
     15 	* utils/opcontrol: only allow --verbose when it makes sense
     16 
     17 2003-12-28  Philippe Elie  <phil.el (a] wanadoo.fr>
     18 
     19 	* libutil++/tests/file_manip_tests.cpp: ensure filename passed to
     20 	  op_realpath() exists
     21 
     22 2003-12-28  John Levon  <levon (a] movementarian.org>
     23 
     24 	* doc/internals.xml:
     25 	* libutil++/file_manip.h: fix typos
     26 
     27 2003-12-16  Philippe Elie  <phil.el (a] wanadoo.fr>
     28 
     29 	* utils/opcontrol: error message rewording
     30 
     31 2003-12-16  Carlo Wood  <carlo (a] alinoe.com>
     32 
     33 	* libregex/tests/Makefile.am: avoid to install mangled-name test file
     34 
     35 2003-11-20  John Levon  <levon (a] movementarian.org>
     36 
     37 	* libregex/op_regex.cpp: move global ctor out of namespace
     38 	anon (bug #845616)
     39 
     40 2003-11-19  Philippe Elie  <phil.el (a] wanadoo.fr>
     41 
     42 	* libpp/arrange_profiles.cpp: merge all unit mask before generating
     43 	  event description string
     44 
     45 2003-11-17  Philippe Elie  <phil.el (a] wanadoo.fr>
     46 
     47 	* libpp/arrange_profiles.cpp: put unitmask in the same axis as
     48 	  event:count, meaning than unitmask is now a part of the event
     49 	  specification.
     50 
     51 2003-12-19  Philippe Elie  <phil.el (a] wanadoo.fr>
     52 
     53 	* daemon/opd_sfile.c: we reversed to/from pc in call graph sample
     54 
     55 2003-11-23  Philippe Elie  <phil.el (a] wanadoo.fr>
     56 
     57 	* libpp/profile.h:
     58 	* pp/opgprof.cpp: oops a simplify a bit too cg handling in my last
     59 	  patch, it was segfaulting each time no cg file was found...
     60 
     61 2003-11-15  Philippe Elie  <phil.el (a] wanadoo.fr>
     62 
     63 	* pp/opgprof.cpp: simplify a bit cg handling, we don't need to know
     64 	  if we retrieved some cg files since the profile_t will be empty
     65 	  in this case
     66 
     67 2003-11-15  Philippe Elie  <phil.el (a] wanadoo.fr>
     68 
     69 	* libpp/profile.h: iterator::vma() must return the full key not only
     70 	  an unsigned int.
     71 	* pp/opgprof.cpp: implement merging of cg files.
     72 
     73 2003-11-15  Philippe Elie  <phil.el (a] wanadoo.fr>
     74 
     75 	* libpp/profile_spec.cpp:
     76 	* libpp/profile_spec.h:
     77 	* pp/opannotate_options.cpp:
     78 	* pp/opgprof_options.cpp:
     79 	* pp/opreport_options.cpp: filter call graph samples files
     80 
     81 2003-11-14  Philippe Elie  <phil.el (a] wanadoo.fr>
     82 
     83 	* daemon/opd_mangling.c: oops, it's better to really open the cg file
     84 
     85 	* daemon/opd_sfile.c:
     86 	* daemon/opd_stats.c:
     87 	* daemon/opd_stats.h:
     88 	* daemon/liblegacy/opd_24_stats.c:
     89 	* daemon/liblegacy/opd_24_stats.h:
     90 	* daemon/liblegacy/opd_proc.c: log sample lost due to sample file open
     91 	  failure
     92 
     93 2003-11-15  Philippe Elie  <phil.el (a] wanadoo.fr>
     94 
     95 	* daemon/liblegacy/opd_parse_proc.c: always provide an image name
     96 	  for parsed process in /proc
     97 
     98 2003-11-15  Philippe Elie  <phil.el (a] wanadoo.fr>
     99 
    100 	* doc/oprofile.xml:
    101 	* libop/op_cpu_type.c: s/hammer/AMD64 processors/ for user visible
    102 	  name.
    103 
    104 2003-11-13  John Levon  <levon (a] movementarian.org>
    105 
    106 	* libutil/op_file.h:
    107 	* libutil/op_file.c: remove op_c_dirname(),
    108 	op_relative_to_absolute_path(), op_is_directory(),
    109 	op_follow_link(), in favour of using realpath(3)
    110 
    111 	* libutil/tests/file_tests.c: fixes for above changes
    112 
    113 	* libutil++/file_manip.h:
    114 	* libutil++/file_manip.cpp: changes from above. Add
    115 	op_realpath().
    116 
    117 	* libutil++/tests/file_manip_tests.cpp: changes from 
    118 	above.
    119 
    120 	* daemon/oprofiled.c:
    121 	* daemon/liblegacy/opd_parse_proc.c:
    122 	* gui/oprof_start_util.cpp:
    123 	* libpp/locate_images.cpp:
    124 	* libpp/profile_spec.cpp:
    125 	* pp/opannotate.cpp: changes from above
    126 
    127 2003-11-12  John Levon  <levon (a] movementarian.org>
    128 
    129 	* configure.in: bump to 0.8cvs
    130 
    131 2003-11-11  John Levon  <levon (a] movementarian.org>
    132 
    133 	* configure.in: bump to 0.7.1
    134 
    135 2003-11-11  Joseph VanAndel  <unknown (a] unknown.org>
    136 
    137 	* daemon/liblegacy/init.c: fix #840046 (segfault when starting profiler
    138 	 with --no-vmlinux setup), this bug was present in 0.7.0.
    139 
    140 2003-11-11  Philippe Elie  <phil.el (a] wanadoo.fr>
    141 
    142 	* libpp/profile_spec.cpp: more precise error message
    143 	* libutil++/tests/file_manip_tests.cpp: corner case test added
    144 	  for dirname
    145 
    146 2003-11-11  Philippe Elie  <phil.el (a] wanadoo.fr>
    147 
    148 	* libpp/arrange_profiles.cpp: report_error() shows only distinct
    149 	  conflicting name.
    150 
    151 2003-11-10  Philippe Elie  <phil.el (a] wanadoo.fr>
    152 
    153 	* doc/opcontrol.1.in: reverse kernel:user in event setting description.
    154 	  Fix #838968
    155 
    156 2003-11-09  Philippe Elie  <phil.el (a] wanadoo.fr>
    157 
    158 	* daemon/init.c:
    159 	* daemon/liblegacy/init.c: move opd_read_fs_int ...
    160 	* daemon/oprofiled.h:
    161 	* daemon/oprofiled.c: here
    162 	* daemon/liblegacy/opd_24_stats.c: dump kernel note buffer overflow and
    163 	  buffer overlow
    164 
    165 2003-11-09  Philippe Elie  <phil.el (a] wanadoo.fr>
    166 
    167 	* utils/op_help.c: do not use OP_MAX_COUNTERS but get counter number
    168 	  at runtime
    169 
    170 2003-11-09  Philippe Elie  <phil.el (a] wanadoo.fr>
    171 
    172 	* libutil++/tests/string_manip_tests.cpp: rtrim/ltrim/trim tests
    173 
    174 2003-11-08  Philippe Elie  <phil.el (a] wanadoo.fr>
    175 
    176 	* libop/tests/Makefile.am:
    177 	* libop/tests/mangle_tests.c: new tests: sample filename mangling
    178 
    179 2003-11-08  Philippe Elie  <phil.el (a] wanadoo.fr>
    180 
    181 	* module/x86/op_syscalls.c: fix build with 2.2 kernel
    182 
    183 2003-11-06  Philippe Elie  <phil.el (a] wanadoo.fr>
    184 
    185 	* Makefile.am: use .PHONY for module goal to not statisfy this goal
    186 	  with the subdir named module
    187 	* m4/findkernel.m4: minor fix.
    188 
    189 2003-11-06  John Levon  <levon (a] movementarian.org>
    190 
    191 	* Makefile.am: minor cleanup
    192 
    193 2003-11-06  John Levon  <levon (a] movementarian.org>
    194 
    195 	* gui/Makefile.am: remove unused -DKVERSION
    196 
    197 2003-11-06  John Levon  <levon (a] movementarian.org>
    198 
    199 	* configure.in: add --disable-werror and --disable-optimization
    200 
    201 	* doc/oprofile.xml: document above. Remove docs for
    202 	* --enable-gcov (only useful to developers)
    203 
    204 2003-11-06  Philippe Elie  <phil.el (a] wanadoo.fr>
    205 
    206 	* daemon/opd_kernel.c:
    207 	* daemon/liblegacy/opd_kernel.c: be less paranoid about kernel range,
    208 	  this is slightly different than the patch Thomas Spatzier tested but
    209 	  it can't hurt (famous last words ...). This fixes s390x where kernel
    210 	  start can be zero and was rejected.
    211 
    212 2003-11-06  Thomas Spatzier  <tspat (a] de.ibm.com>
    213 
    214 	* daemon/opd_cookie.c: changed an #if defined for selecting right
    215 	  system call for IBM s390 or s390x, respectively
    216 	  
    217 2003-11-04  Philippe Elie  <phil.el (a] wanadoo.fr>
    218 
    219 	* libutil++/path_filter.cpp: remove 2 identical FIXME
    220 	* libutil++/tests/file_manip_tests.cpp:
    221 	* libutil++/tests/path_filter_tests.cpp: reflect the behavior by
    222 	  new tests
    223 
    224 2003-11-04  Philippe Elie  <phil.el (a] wanadoo.fr>
    225 
    226 	* libdb/db_manage.c:
    227 	* libop/op_events.h: -pedantic fix
    228 
    229 2003-11-04  Philippe Elie  <phil.el (a] wanadoo.fr>
    230 
    231 	* daemon/opd_sfile.c:
    232 	* daemon/liblegacy/opd_kernel.c:
    233 	* libutil/op_cpufreq.c:
    234 	* libutil/op_file.c: a few s/goto/break/
    235 	* libpp/format_output.cpp: padding never used after initialization
    236 
    237 2003-11-04  Philippe Elie  <phil.el (a] wanadoo.fr>
    238 
    239 	* libutil++/comma_list.h: don't accept cumulative behavior
    240 	* libutil++/string_manip.cpp: separate_token() return by value
    241 	* gui/oprof_start.cpp:
    242 	* libopt++/popt_options.cpp:
    243 	* libpp/parse_filename.cpp:
    244 	* libpp/profile_spec.cpp:
    245 	* libutil++/comma_list.h:
    246 	* libutil++/string_filter.cpp:
    247 	* libutil++/string_manip.cpp:
    248 	* libutil++/string_manip.h:
    249 	* libutil++/tests/comma_list_tests.cpp:
    250 	* libutil++/tests/string_manip_tests.cpp: update according
    251 	* libpp/profile_spec.cpp: remove all trace of defunct op_alias
    252 
    253 2003-11-04  Philippe Elie  <phil.el (a] wanadoo.fr>
    254 
    255 	* daemon/liblegacy/opd_image.c:
    256 	* daemon/liblegacy/opd_image.h:
    257 	* daemon/liblegacy/opd_mapping.c:
    258 	* daemon/liblegacy/opd_mapping.h:
    259 	* daemon/liblegacy/opd_proc.c:
    260 	* gui/oprof_start.cpp:
    261 	* gui/oprof_start.h:
    262 	* gui/oprof_start_config.cpp:
    263 	* gui/oprof_start_util.cpp:
    264 	* libop/op_config_24.h:
    265 	* libpp/format_output.cpp:
    266 	* libpp/op_header.cpp:
    267 	* libpp/profile.h:
    268 	* libpp/profile_container.cpp:
    269 	* libpp/profile_spec.cpp:
    270 	* libpp/profile_spec.h:
    271 	* libpp/symbol.h:
    272 	* libpp/symbol_sort.cpp:
    273 	* libutil++/stream_util.cpp:
    274 	* libutil++/stream_util.h:
    275 	* libutil++/utility.h:
    276 	* pp/common_option.cpp:
    277 	* pp/common_option.h:
    278 	* pp/opannotate_options.h:
    279 	* pp/opgprof.cpp:
    280 	* pp/opgprof_options.cpp:
    281 	* pp/opgprof_options.h:
    282 	* pp/opreport_options.cpp:
    283 	* pp/opreport_options.h:
    284 	* pp/populate.cpp: remove some .h dependencies
    285 
    286 2003-11-03  Philippe Elie  <phil.el (a] wanadoo.fr>
    287 
    288 	* libutil++/tests/Makefile.am:
    289 	* libutil++/tests/utility_tests.cpp: new test files convering most of
    290 	  utility.h and op_exception.h
    291 
    292 2003-11-02  Philippe Elie  <phil.el (a] wanadoo.fr>
    293 
    294 	* libpp/parse_filename.cpp: avoid repetitive vector::erase(v.begin())
    295 	* libregex/stl.pat.in:
    296 	* libregex/tests/mangled-name.in: add (i|o)stream operator(>>|<<)
    297 
    298 2003-11-02  Philippe Elie  <phil.el (a] wanadoo.fr>
    299 
    300 	* daemon/liblegacy/opd_image.h:
    301 	* daemon/liblegacy/opd_image.c:
    302 	* daemon/liblegacy/opd_proc.c:
    303 	* daemon/liblegacy/opd_sample_files.c: sparse sample file array
    304 	  allocated by line.
    305 
    306 2003-11-02  Philippe Elie  <phil.el (a] wanadoo.fr>
    307 
    308 	* libutil++/glob_filter.h:
    309 	* libutil++/path_filter.h:
    310 	* libutil++/string_filter.h: comment fix to match implementation
    311 	* libutil++/tests/path_filter_tests.cpp: new file test
    312 	* libutil++/tests/Makefile.am: upate build
    313 	* libutil++/tests/string_filter_tests.cpp: test white space at start
    314 	  of pattern
    315 
    316 2003-11-02  Philippe Elie  <phil.el (a] wanadoo.fr>
    317 
    318 	* libutil++/string_manip.cpp: format_double can only format percent
    319 	* libutil++/string_manip.h:
    320 	* libpp/format_output.cpp:
    321 	* libutil++/tests/string_manip_tests.cpp:
    322 	* pp/opannotate.cpp:
    323 	* pp/opreport.cpp: s/format_double/format_percent/
    324 
    325 2003-11-02  Philippe Elie  <phil.el (a] wanadoo.fr>
    326 
    327 	* libutil++/glob_filter.h:
    328 	* libutil++/string_filter.h:
    329 	* libutil++/tests/string_filter_tests.cpp: minor tidy
    330 
    331 	* libutil++/tests/glob_filter_tests.cpp: new file
    332 	* libutil++/tests/Makefile.am: update build
    333 
    334 2003-11-01  Philippe Elie  <phil.el (a] wanadoo.fr>
    335 
    336 	* libpp/arrange_profiles.cpp: typo
    337 	* libutil++/generic_spec.cpp: removed file
    338 	* libutil++/Makefile.am: update according
    339 	* libutil++/generic_spec.h: ensure generic_spec<string> will not link
    340 	* libutil++/path_filter.cpp: minor tidy
    341 
    342 2003-11-01  Philippe Elie  <phil.el (a] wanadoo.fr>
    343 
    344 	* libutil++/tests/string_manip_tests.cpp: ehance output on failure
    345 	* module/oprofile.h:
    346 	* module/oprofile.c: two new read-only sysctl: nr_buffer_overflow and
    347 	  nr_note_buffer_overflow
    348 
    349 2003-11-01  Philippe Elie  <phil.el (a] wanadoo.fr>
    350 
    351 	* libutil++/tests/Makefile.am:
    352 	* libutil++/tests/file_manip_tests.cpp: don't use getcwd nor __FILE__
    353 	  but ${topdir} and hard coded filename
    354 
    355 2003-11-01  John Levon  <levon (a] movementarian.org>
    356 
    357 	* daemon/liblegacy/opd_parse_proc.c: use op_follow_link
    358 
    359 	* libutil/op_file.c:
    360 	* libutil/op_file.h: make op_get_link() static, rename
    361 	op_basename to op_c_basename
    362 
    363 	* libutil++/file_manip.cpp:
    364 	* libutil++/file_manip.h: rename to op_basename()/op_dirname().
    365 	Use op_follow_link() for follow_link().
    366 
    367 	* libutil++/tests/file_manip_tests.cpp:
    368 	* gui/oprof_start_util.cpp:
    369 	* libpp/locate_images.cpp:
    370 	* libpp/name_storage.cpp:
    371 	* libutil++/path_filter.cpp:
    372 	* pp/opannotate.cpp:
    373 	* pp/opreport.cpp: fixup from above changes
    374 
    375 2003-11-01  Philippe Elie  <phil.el (a] wanadoo.fr>
    376 
    377 	* libutil++/op_bfd.h: has_debug_info() new member
    378 	* pp/populate.h:
    379 	* pp/populate.cpp: 
    380 	* pp/opannotate.cpp: use it to error out when --assembly is not
    381 	  requested and no debug information exists
    382 
    383 2003-10-31  Philippe Elie  <phil.el (a] wanadoo.fr>
    384 
    385 	* pp/common_option.cpp: don't exit() if merge_by.lib is set through
    386 	  !allow_lib
    387 
    388 2003-10-31  Philippe Elie  <phil.el (a] wanadoo.fr>
    389 
    390 	* pp/opreport_options.cpp: move handle_merge_option() ...
    391 	* pp/common_option.h: 
    392 	* pp/common_option.cpp: here
    393 	* pp/opannotate_options.cpp: use it but disallow --merge=lib
    394 
    395 2003-10-31  Philippe Elie  <phil.el (a] wanadoo.fr>
    396 
    397 	* libutil/op_file.c:
    398 	* libutil/op_file.h: implement dirname(), is_directory() and
    399 	  op_follow_link()
    400 	* daemon/oprofiled.c: follow symlink for image filter
    401 	* libutil++/file_manip.cpp:
    402 	* libutil++/file_manip.h:
    403 	* gui/oprof_start_util.cpp:
    404 	* libpp/profile_spec.cpp:  rename op_follow_link() to follow_link()
    405 
    406 2003-10-31  Philippe Elie  <phil.el (a] wanadoo.fr>
    407 
    408 	* libutil/tests/file_tests.c: "//usr" --> "//usr"
    409 	* libutil++/tests/.cvsignore:
    410 	* libutil++/tests/Makefile.am:
    411 	* libutil++/tests/file_manip_tests.cpp: new tests file.
    412 
    413 2003-10-31  John Levon  <levon (a] movementarian.org>
    414 
    415 	* daemon/opd_perfmon.c: fix compilation
    416 
    417 2003-10-30  John Levon  <levon (a] movementarian.org>
    418 
    419 	* libpp/profile_spec.cpp: introduce a helper function
    420 	to make the comma_list matching clear
    421 
    422 2003-10-30  Philippe Elie  <phil.el (a] wanadoo.fr>
    423 
    424 	* libutil++/comma_list.h: is_set() new member
    425 	* libpp/profile_spec.cpp: fix matching logic for cpu/tid/tgid
    426 
    427 2003-10-30  John Levon  <levon (a] movementarian.org>
    428 
    429 	* libutil++/generic_spec.h: add value() and
    430 	is_set(), remove bool parameter from T value
    431 	match() (it was never set to true)
    432 
    433 	* libutil++/comma_list.h: do not accept
    434 	generic_spec, the behaviour was to implicitly
    435 	not match an "all" generic_spec. Instead:
    436 
    437 	* libpp/profile_spec.cpp: encode the matching
    438 	behaviour explicitly, and add a comment.
    439 
    440 	* libutil++/tests/comma_list_tests.cpp: fix to
    441 	match the above
    442 
    443 2003-10-30  John Levon  <levon (a] movementarian.org>
    444 
    445 	* Makefile.am: re-order build subdirs
    446 
    447 	* libabi/Makefile.am: only build abitest on
    448 	make check
    449 
    450 	* pp/Makefile.am: pp_common not pp_commons
    451 
    452 2003-10-30  John Levon  <levon (a] movementarian.org>
    453 
    454 	* libutil++/tests/Makefile.am:
    455 	* libutil++/tests/comma_list_tests.cpp: Add.
    456 
    457 2003-10-30  John Levon  <levon (a] movementarian.org>
    458 
    459 	* doc/Makefile.am: improve chunk rules
    460 
    461 2003-10-30  John Levon  <levon (a] movementarian.org>
    462 
    463 	* libutil++/tests/Makefile.am:
    464 	* libutil++/tests/string_filter_tests.cpp: Add.
    465 
    466 	* libutil++/tests/string_manip_tests.cpp: fix header include
    467 
    468 2003-10-30  John Levon  <levon (a] movementarian.org>
    469 
    470 	* libutil++/tests/string_manip_tests.cpp: fix tobool test
    471 	("33" is not castable to bool)
    472 
    473 2003-10-30  Philippe Elie  <phil.el (a] wanadoo.fr>
    474 
    475 	* libutil++/string_manip.cpp:
    476 	* libutil++/string_manip.h: remove tostr()/tobool/touint(), rename
    477 	  lexical_cast_no_ws<> to op_lexical_cast<>
    478 
    479 	* gui/oprof_start.cpp:
    480 	* gui/oprof_start_config.cpp:
    481 	* libpp/arrange_profiles.cpp:
    482 	* libpp/filename_spec.cpp:
    483 	* libpp/op_header.cpp:
    484 	* libutil++/comma_list.h:
    485 	* libutil++/generic_spec.h:
    486 	* libutil++/tests/string_manip_tests.cpp: use op_lexical_cast<>
    487 
    488 2003-10-29  John Levon  <levon (a] movementarian.org>
    489 
    490 	* pp/common_option.h: use std namespace
    491 
    492 2003-10-28  Jason Lunz  <lunz (a] falooley.org>
    493 
    494 	* doc/oprofile.1.in: document cpu,tid,tgid in profile
    495 	spec
    496 
    497 2003-10-29  Philippe Elie  <phil.el (a] wanadoo.fr>
    498 
    499 	* libpp/profile_spec.cpp: error out for all tag:value specified
    500 	  more than once.
    501 
    502 2003-10-29  Philippe Elie  <phil.el (a] wanadoo.fr>
    503 
    504 	* doc/opannotate.1.in:
    505 	* doc/opreport.1.in:
    506 	* doc/oprofile.xml:
    507 	* libregex/demangle_symbol.cpp:
    508 	* libregex/demangle_symbol.h:
    509 	* pp/common_option.cpp:
    510 	* pp/common_option.h:
    511 	* pp/opannotate_options.cpp:
    512 	* pp/opannotate_options.h:
    513 	* pp/opreport_options.cpp:
    514 	* pp/opreport_options.h: remove --no-demangle, --smart-demangle and
    515 	  --demangle, replace them with --demangle=none|smart|normal
    516 
    517 2003-10-29  Philippe Elie  <phil.el (a] wanadoo.fr>
    518 
    519 	* libutil++/tests: new directory
    520 	* libutil++/tests/string_manip_tests.cpp: new tests file
    521 	* configure.in:
    522 	* libutil++/Makefile.am:
    523 	* libutil++/tests/.cvsignore:
    524 	* libutil++/tests/Makefile.am: handle new test
    525 
    526 	* libutil++/string_manip.h:
    527 	* libutil++/string_manip.cpp: correct implementation of separate_token
    528 	  to match the documentation
    529 	* daemon/liblegacy/opd_image.c: fix comment
    530 
    531 2003-10-28  Philippe Elie  <phil.el (a] wanadoo.fr>
    532 
    533 	* libpp/count_array.cpp:
    534 	* libpp/count_array.h:
    535 	* libpp/locate_images.h:
    536 	* libpp/parse_filename.cpp:
    537 	* libpp/profile.cpp:
    538 	* libpp/profile.h:
    539 	* libpp/profile_spec.cpp:
    540 	* libpp/symbol_sort.cpp: minor tidy
    541 
    542 2003-10-28  Jason Lunz  <lunz (a] falooley.org>
    543 
    544 	* doc/opcontrol.1.in: better wording for --separate=
    545 	* doc/oprofile.1.in: typo
    546 
    547 2003-10-28  Philippe Elie  <phil.el (a] wanadoo.fr>
    548 
    549 	* daemon/liblegacy/init.c:
    550 	* daemon/liblegacy/opd_24_stats.c:
    551 	* daemon/liblegacy/opd_24_stats.h:
    552 	* daemon/liblegacy/opd_image.c:
    553 	* daemon/liblegacy/opd_image.h:
    554 	* daemon/liblegacy/opd_kernel.c:
    555 	* daemon/liblegacy/opd_kernel.h:
    556 	* daemon/liblegacy/opd_mapping.c:
    557 	* daemon/liblegacy/opd_mapping.h:
    558 	* daemon/liblegacy/opd_parse_proc.c:
    559 	* daemon/liblegacy/opd_parse_proc.h:
    560 	* daemon/liblegacy/opd_proc.c:
    561 	* daemon/liblegacy/opd_proc.h:
    562 	* daemon/liblegacy/opd_sample_files.c:
    563 	* daemon/liblegacy/opd_sample_files.h: move doygen comment from *.c to
    564 	  *.h. Add some doxygen comment.
    565 
    566 2003-10-27  Philippe Elie  <phil.el (a] wanadoo.fr>
    567 
    568 	* daemon/liblegacy/opd_24_stats.c:
    569 	* daemon/liblegacy/opd_image.h:
    570 	* daemon/liblegacy/opd_image.h: nr_images static
    571 
    572 2003-10-27  John Levon  <levon (a] movementarian.org>
    573 
    574 	* doc/opcontrol.1.in: document --image=
    575 
    576 	* doc/oprofile.xml:
    577 	* utils/opcontrol: make user specify "--image=all"
    578 	to reset. Clean up help message. Ensure note table
    579 	size is given a value. Add '-t' for '--stop', and
    580 	'-i' for '--image'.
    581 
    582 2003-10-27  John Levon  <levon (a] movementarian.org>
    583 
    584 	* doc/oprofile.xml: document opcontrol --image=
    585 
    586 2003-10-27  John Levon  <levon (a] movementarian.org>
    587 
    588 	* daemon/opd_events.h:
    589 	* daemon/opd_events.c: move code for handling
    590 	event descriptions here, and share find_counter_event(),
    591 	plus fill_header()
    592 
    593 	* daemon/opd_mangling.c:
    594 	* daemon/opd_perfmon.c:
    595 	* daemon/oprofiled.c:
    596 	* daemon/oprofiled.h:
    597 	* daemon/liblegacy/opd_proc.c:
    598 	* daemon/liblegacy/opd_sample_files.c: changes from
    599 	above
    600 
    601 2003-10-27  John Levon  <levon (a] movementarian.org>
    602 
    603 	* daemon/oprofiled.c: fix help text
    604 
    605 	* daemon/liblegacy/init.c:
    606 	* daemon/liblegacy/opd_proc.h:
    607 	* daemon/liblegacy/opd_proc.c: clean up headers
    608 	a bit
    609 
    610 2003-10-27  Philippe Elie  <phil.el (a] wanadoo.fr>
    611 
    612 	* gui/oprof_start.cpp: check we can get kernel interface
    613 
    614 2003-10-27  John Levon  <levon (a] movementarian.org>
    615 
    616 	* daemon/liblegacy/Makefile.am: remove unneeded
    617 	-I for abi
    618 
    619 2003-10-27  John Levon  <levon (a] movementarian.org>
    620 
    621 	* daemon/init.c:
    622 	* daemon/opd_perfmon.c: move timer interrupt checks
    623 	into perfmon
    624 
    625 2003-10-27  John Levon  <levon (a] movementarian.org>
    626 
    627 	* daemon/oprofiled.c: use op_get_interface()
    628 
    629 	* libop/op_get_interface.c: simplify
    630 
    631 2003-10-26  Philippe Elie  <phil.el (a] wanadoo.fr>
    632 
    633 	* gui/ui/oprof_start.base.ui:
    634 	* gui/oprof_start.cpp:
    635 	* gui/oprof_start.h: check separate_lib checkbox when
    636 	  separate_kernel_cb is checked
    637 
    638 2003-10-26  Philippe Elie  <phil.el (a] wanadoo.fr>
    639 
    640 	* utils/opcontrol: allow to reset --image through empty --image=
    641 	  or --image
    642 
    643 2003-10-26  John Levon  <levon (a] movementarian.org>
    644 
    645 	* daemon/opd_cookie.c: reduce the hash table size somewhat
    646 
    647 	* various: fixes for doxygen
    648 
    649 2003-10-26  John Levon  <levon (a] movementarian.org>
    650 
    651 	* HACKING:
    652 	* configure.in:
    653 	* Makefile.am:
    654 	* dae/: move all of 2.4 daemon code to ...
    655 
    656 	* daemon/liblegacy/: here
    657 
    658 	* daemon/Makefile.am:
    659 	* daemon/opd_util.h:
    660 	* daemon/opd_util.c: move to ...
    661 
    662 	* daemon/oprofiled.h:
    663 	* daemon/oprofiled.c: here, and call the right operations
    664 	depending upon oprofile kernel version.
    665 
    666 	* daemon/init.c:
    667 	* daemon/liblegacy/init.c: init and running for each version
    668 
    669 2003-10-26  John Levon  <levon (a] movementarian.org>
    670 
    671 	* daemon/opd_cookie.c: make sure to create the
    672 	cookie for the ignore value if it's not found
    673 
    674 	* daemon/opd_sfile.c: simplify ignored logic
    675 
    676 2003-10-26  John Levon  <levon (a] movementarian.org>
    677 
    678 	* doc/internals.xml:
    679 	* doc/buffers.png: add a diagram
    680 
    681 2003-10-26  Philippe Elie  <phil.el (a] wanadoo.fr>
    682 
    683 	implement image filtering:
    684 
    685 	* dae/opd_image.h: add a field filtered
    686 	* dae/opd_image.c: set it at image creation
    687 	* dae/opd_proc.c: don't record sample when !image->filtered
    688 
    689 	* daemon/opd_cookie.h: add a field filtered
    690 	* daemon/opd_cookie.c: set it a cookie_entry creation.
    691 	* daemon/opd_sfile.h: add a field filtered
    692 	* daemon/opd_file.c: set it a opd_sfile struct creation
    693 	* daemon/opd_trans.c: record sample if filtered
    694 
    695 	* daemon/opd_util.h: export opd_hash_name(), is_image_filtered()
    696 	* daemon/opd_util.c: implement --image=xxx
    697 
    698 	* oprofiled.c: #include "config.h" not <>
    699 
    700 	* utils/opcontrol: handle --image
    701 
    702 2003-10-26  John Levon  <levon (a] movementarian.org>
    703 
    704 	* doc/oprofile.xml: remove some outdated stuff
    705 
    706 2003-10-25  John Levon  <levon (a] movementarian.org>
    707 
    708 	* doc/internals.xml: more docs
    709 
    710 2003-10-25  John Levon  <levon (a] movementarian.org>
    711 
    712 	* daemon/opd_perfmon.c: cleanups
    713 
    714 2003-10-24  John Levon  <levon (a] movementarian.org>
    715 
    716 	* doc/internals.xml: write some more
    717 
    718 2003-10-23  John Levon  <levon (a] movementarian.org>
    719 
    720 	* configure.in: bump to 0.7.1cvs
    721 
    722 2003-10-22  John Levon  <levon (a] movementarian.org>
    723 
    724 	* libop/tests/Makefile.am:
    725 	* libop/tests/load_events_files_tests.c:
    726 	* libop/tests/alloc_counter_tests.c: fix
    727 	make distcheck
    728 
    729 	* configure.in: bump to 0.7
    730  
    731 2003-10-22  John Levon  <levon (a] movementarian.org>
    732 
    733 	* daemon/Makefile.am:
    734 	* daemon/opd_perfmon.h:
    735 	* daemon/opd_perfmon.c: re-enable. Wait for children.
    736 	More safety checking.
    737 
    738 	* daemon/oprofiled.c: only use perfmon if !timer
    739 
    740 2003-10-20  Philippe Elie  <phil.el (a] wanadoo.fr>
    741 
    742 	* doc/oprofile.xml:
    743 	* doc/oprofile.1.in: s/physical CPU/CPU/
    744 
    745 2003-10-20  John Levon  <levon (a] movementarian.org>
    746 
    747 	* daemon/Makefile.am:
    748 	* daemon/opd_perfmon.h: disable perfmon nicely
    749 
    750 	* gui/oprof_start.cpp:
    751 	* gui/oprof_start_config.h:
    752 	* gui/oprof_start_config.cpp:
    753 	* gui/ui/oprof_start.base.ui: Fix reading of separate
    754 	parameters. Add CPU and thread separation
    755 
    756 2003-10-20  Philippe Elie  <phil.el (a] wanadoo.fr>
    757 
    758 	* libpp/profile_spec.cpp: relative path are relative to current dir
    759 	  not filename.
    760 
    761 2003-10-20  John Levon  <levon (a] movementarian.org>
    762 
    763 	* doc/oprofile.xml:
    764 	* doc/opreport.1.in: fix --merge docs and profile specs
    765 
    766 2003-10-20  John Levon  <levon (a] movementarian.org>
    767 
    768 	* dae/opd_sample_files.c:
    769 	* daemon/opd_mangling.c:
    770 	* libabi/abi.cpp:
    771 	* libabi/abi_test.cpp:
    772 	* libabi/op_import.cpp:
    773 	* libop/op_config.h:
    774 	* libop/op_sample_file.h:
    775 	* libpp/op_header.cpp: remove ctr and separate_* from
    776 	header. Re-arrange it a little, and make it 64 bytes
    777 	on ILP32. Bump the version.
    778 
    779 2003-10-20  John Levon  <levon (a] movementarian.org>
    780 
    781 	* libpp/arrange_profiles.cpp: rework the clashing-axes
    782 	error message to be nicer to the user
    783 
    784 2003-10-20  John Levon  <levon (a] movementarian.org>
    785 
    786 	* libpp/arrange_profiles.cpp: if tid == tgid for
    787 	every profile class, allow axes of both TID and TGID
    788 	- there is no actual difference, only theoretical
    789 
    790 2003-10-20  Philippe Elie  <phil.el (a] wanadoo.fr>
    791 
    792 	* dae/oprofiled.c: correct an error message
    793 	* libop/op_alloc_counter.h: remove bogus FIXME
    794 	* libutil++/child_reader.cpp: avoid quadratic behaviour if child does a
    795 	  lot of output in stderr
    796 	* libpp/opgprof.cpp: fix comment
    797 
    798 2003-10-19  Philippe Elie  <phil.el (a] wanadoo.fr>
    799 
    800 	* gui/oprof_start.cpp: redundant return
    801 
    802 2003-10-19  John Levon  <levon (a] movementarian.org>
    803 
    804 	* libop/op_events.c: move to a fixed value for the default
    805 	event count value
    806 
    807 2003-10-19  Philippe Elie  <phil.el (a] wanadoo.fr>
    808 
    809 	remove some FIXME:
    810 	* libpp/format_output.h: remove first_output bool member
    811 	* libpp/format_output.cpp: call output_header from the right place
    812 	* libpp/op_header.h: remove bogus FIXME
    813 
    814 	* libregex/tests/Makefile.am: fix dependencies on mangled-name file,
    815 	  fix make dist
    816 	* libregex/tests/mangled-name.in: simplify a bit and remove a bogus
    817 	  FIXME
    818 	* libregex/tests/regex_test.cpp: fix comment
    819 
    820 	* module/ia64/op_syscalls.c:
    821 	* module/x86/hammer_op_syscalls.c:
    822 	* module/x86/op_syscalls.c: remove some FIXME
    823 
    824 2003-10-17  Philippe Elie  <phil.el (a] wanadoo.fr>
    825 
    826 	* libpp/arrange_profiles.cpp: clarify suggestion.
    827 	* pp/opreport_options.cpp: update options help string for --merge.
    828 
    829 	* libpp/profile_container.cpp:
    830 	* libpp/profile_spec.cpp:
    831 	* pp/common_option.cpp:
    832 	* pp/populate.cpp: ';' are not necessary to end namespace
    833 
    834 2003-10-17  Philippe Elie  <phil.el (a] wanadoo.fr>
    835 
    836 	* libpp/arrange_profiles.cpp: use a set<profile_classes> instead
    837 	  of a vector<...> to replace a O(N*M) by a O(N*log(M)) behavior.
    838 	  (N number of samples files, M number of class).
    839 
    840 2003-10-17  Philippe Elie  <phil.el (a] wanadoo.fr>
    841 
    842 	* libutil++/op_bfd.cpp: show filename when warning about no debug
    843 	  information available. get_linenr(): s/filename/source_filename/
    844 
    845 2003-10-16  Philippe Elie  <phil.el (a] wanadoo.fr>
    846 
    847 	* events/ia64/itanium/events: counter 0,1 not 2,3 for IA64_INST_RETIRED
    848 
    849 	* daemon/opd_util.c: opd_parse_events() fix use after free.
    850 
    851 2003-10-16  John Levon  <levon (a] movementarian.org>
    852 
    853 	* daemon/opd_perfmon.c: disable the code
    854 
    855 2003-10-15  John Levon  <levon (a] movementarian.org>
    856 
    857 	* daemon/opd_perfmon.c: fflushes to improve
    858 	order of debug log
    859 
    860 2003-10-15  John Levon  <levon (a] movementarian.org>
    861 
    862 	* daemon/opd_perfmon.c: fix dumb allocation typo;
    863 	handle signals correctly; wait for children to
    864 	come up before returning
    865 
    866 2003-10-15  Philippe Elie  <phil.el (a] wanadoo.fr>
    867 
    868 	* dae/opd_sample_files.c:
    869 	* daemon/opd_mangling.c:
    870 	* daemon/opd_perfmon.c:
    871 	* daemon/opd_util.c: check we not overflow op_nr_counters
    872 
    873 2003-10-15  Philippe Elie  <phil.el (a] wanadoo.fr>
    874 
    875 	* events/ia64/itanium/events: correct counter available according
    876 	  to intel doc.
    877 
    878 2003-10-15  John Levon  <levon (a] movementarian.org>
    879 
    880 	* dae/opd_image.c:
    881 	* dae/opd_kernel.c:
    882 	* dae/opd_proc.c:
    883 	* dae/opd_sample_files.c:
    884 	* dae/oprofiled.c:
    885 	* daemon/opd_kernel.c:
    886 	* daemon/opd_mangling.c:
    887 	* daemon/opd_sfile.c:
    888 	* daemon/opd_trans.c:
    889 	* daemon/opd_util.c:
    890 	* daemon/opd_util.h:
    891 	* daemon/oprofiled.c: merge the options handling
    892 	for dae and daemon
    893 
    894 2003-10-15  Philippe Elie  <phil.el (a] wanadoo.fr>
    895 
    896 	* daemon/opd_perfmon.c:
    897 	* module/ia64/op_pmu.c: bit mask for event select field is 8 bits not 7
    898 
    899 2003-10-14  John Levon  <levon (a] movementarian.org>
    900 
    901 	* configure.in:
    902 	* m4/findkernel.m4:
    903 	* utils/opcontrol: 2.5 refs -> 2.6
    904 
    905 2003-10-14  John Levon  <levon (a] movementarian.org>
    906 
    907 	* utils/opcontrol: merge some 2.4/6 code
    908 
    909 2003-10-14  John Levon  <levon (a] movementarian.org>
    910 
    911 	* dae/opd_image.c:
    912 	* dae/opd_sample_files.c:
    913 	* dae/oprofiled.c:
    914 	* utils/opcontrol: use --events for 2.4 daemon
    915 	too
    916 
    917 	* daemon/opd_perfmon.c:
    918 	* daemon/opd_mangling.c: fix counter numbering
    919 	on !perfmon
    920 
    921 2003-10-14  John Levon  <levon (a] movementarian.org>
    922 
    923 	* configure.in: xmemdup not xmemdump
    924 
    925 2003-10-14  John Levon  <levon (a] movementarian.org>
    926 
    927 	* daemon/opd_perfmon.c: propagate a SIGTERM
    928 	up to the parent.
    929 
    930 2003-10-14  John Levon  <levon (a] movementarian.org>
    931 
    932 	* m4/perfmon.m4:
    933 	* configure.in: remove pfmlib checks
    934 
    935 	* daemon/opd_util.h:
    936 	* daemon/opd_util.c:
    937 	* daemon/opd_mangling.c:
    938 	* daemon/oprofiled.c: parse more detailed events
    939 	passed on command line
    940 
    941 	* daemon/opd_perfmon.h:
    942 	* daemon/opd_perfmon.c: don't use libpfm at all,
    943 	do it ourselves.
    944 
    945 	* utils/opcontrol: pass more of the events info to
    946 	the daemon
    947 
    948 2003-10-14  John Levon  <levon (a] movementarian.org>
    949 
    950 	* m4/perfmon.m4:
    951 	* configure.in: look for pfmlib 3
    952 
    953 	* daemon/Makefile.am:
    954 	* daemon/opd_perfmon.h:
    955 	* daemon/opd_perfmon.c: interface to perfmon on 2.6 IA64
    956 
    957 	* daemon/opd_mangling.c:
    958 	* daemon/oprofiled.c: read event descriptions from command
    959 	line not oprofilefs
    960 
    961 	* daemon/opd_util.h:
    962 	* daemon/opd_util.c: receive SIGUSR1/2 for perfmon
    963 
    964 	* utils/opcontrol: handle multiple oprofileds. Send SIGUSR1/2
    965 	on start/stop. Pass in events list to oprofiled on 2.6. Don't
    966 	attempt to fill in oprofilefs with event info if using perfmon.
    967 
    968 2003-10-14  Philippe Elie  <phil.el (a] wanadoo.fr>
    969 
    970 	* daemon/opd_mangling.c:
    971 	* daemon/opd_sfile.c:
    972 	* daemon/opd_sfile.h: protect the sfile we are acting on to be freed
    973 	  by sfile_lru_clear()
    974 
    975 	* libdb/db_manage.c:
    976 	* libdb/odb_hash.h: Do not put hash->descr in an inconsistent state
    977 	  when a failure occur.
    978 
    979 2003-10-13  Philippe Elie  <phil.el (a] wanadoo.fr>
    980 
    981 	* module/oprofile.c: don't restore syscall and stop counter twice
    982 
    983 2003-10-13  Will Cohen  <wcohen (a] redhat.com>
    984 
    985 	* libop/op_parse_event.c(parse_events): Correct fprintf.
    986 
    987 2003-10-13  Philippe Elie  <phil.el (a] wanadoo.fr>
    988 
    989 	* module/x86/hammer_op_syscalls.c: pass tgid to daemon. Not tested!
    990 
    991 2003-10-12  John Levon  <levon (a] movementarian.org>
    992 
    993 	* utils/opcontrol: share --separate-cpu/thread code now
    994 
    995 2003-10-12  Philippe Elie  <phil.el (a] wanadoo.fr>
    996 
    997 	* configure.in: add libregex/tests/mangled-name.in
    998 	* libregex/tests/mangled-name.txt: move ...
    999 	* libregex/tests/mangled-name.in: here, tune to support different arch
   1000 	* libregex/tests/Makefile.am: s/mangled-name.txt/mangled-name.in
   1001 	* libregex/stl.pat.in: fix iterator<... ptrdiff_t>
   1002 	* libregex/tests/Makefile.am: update according to filename change
   1003 
   1004 	* libregex/tests/regex_test.cpp: really fails on exception.
   1005 
   1006 2003-10-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   1007 
   1008 	* dae/oprofiled.c: don't set cpu_number when !--separate=cpu
   1009 	
   1010 	* libop/tests/alloc_counter_tests.c: printf format for 64 bits arch
   1011 	* libop/tests/cpu_type_tests.c: #include <string.h>
   1012 	* libop/tests/parse_event_tests.c: #include <string.h>
   1013 
   1014 2003-10-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   1015 
   1016 	* libop/op_interface.h: struct op_sample: remove packed attribute
   1017 
   1018 2003-10-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   1019 
   1020 	* dae/opd_image.c:
   1021 	* dae/opd_image.h: reference count opd_image. Remove modification time
   1022 	  checking. Remove hash field. Tidy
   1023 	* dae/opd_kernel.c: pass tid, tgid to op_get_kernel_image()
   1024 	* dae/opd_mapping.c:
   1025 	* dae/opd_mapping.h: use module hash code for image name to index
   1026 	  a cache of name, this hash code is no longer used elsewhere. When
   1027 	  killing map delete associated image, reference count of image
   1028 	  will check for a real delete.
   1029 	* dae/opd_parse_proc.c: get tgid from /proc/pid/status
   1030 	* dae/opd_proc.c: create an opd_proc by process when
   1031 	  separate_thread == true. Tidy by adding an opd_for_each_proc()
   1032 	* dae/opd_proc.h: add tid/tgid to opd_proc struct
   1033 	* dae/opd_sample_files.c:
   1034 	* dae/opd_sample_files.h: lru all samples files, allowing to cleanup
   1035 	  a part of the lru if we go out of resource. Remove
   1036 	  opd_handle_old_sample_files() since we no longer check for image
   1037 	  modification time.
   1038 	* dae/opd_stats.c:
   1039 	* dae/opd_stats.h: statistics for opd_image struct depth search
   1040 	* dae/oprofiled.c: add --separate-cpu and --separate-thread
   1041 	* libop/op_interface.h: add tgid to samples struct passed from module
   1042 	  to daemon.
   1043 	* module/compat22.h:
   1044 	* module/compat24.h: op_get_tgid() return tgid, fall back to return
   1045 	  tid on 2.2 kernel.
   1046 	* module/oprofile.c:
   1047 	* module/ia64/op_syscalls.c: pass tgid to daemon. NOT TESTED but I
   1048 	  think it's ok. Note than even if it's broken ia64 should work w/o
   1049 	  --separate=thread
   1050 	* module/x86/op_syscalls.c: pass tgid to daemon.
   1051 	* utils/opcontrol: enable 2.4 thread/cpu separation
   1052 
   1053 	* libdb/tests/db_test.c: verbose on when we provide filename of db file
   1054 	  to test on command line.
   1055 
   1056 2003-10-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   1057 
   1058 	* libop/op_cpu_type.h:
   1059 	* libop/op_cpu_type.c: constification
   1060 	* utils/op_help.c: check only if CPU_NO_GOOD not range
   1061 
   1062 	* libutil/tests/Makefile.am:
   1063 	* libregex/tests/Makefile.am:
   1064 	* libdb/tests/Makefile.am: s/TEST = (.*)/TESTS = ${check_PROGRAMS}/
   1065 
   1066 	* libop/tests/alloc_counter_tests.c: comment fix
   1067 
   1068 	* libop/tests/Makefile.am:
   1069 	* libop/tests/cpu_type_tests.c: new file, test libop/op_cpu_type.c
   1070 
   1071 2003-10-10  Will Cohen  <wcohen (a] redhat.com>
   1072 
   1073 	* libop/op_cpu_type.h (op_get_cpu_number): Clarify comment.
   1074 	* libop/op_cpu_type.c (op_get_cpu_number): Check number.
   1075 	* utils/op_help.c (main): Make check with CPU_NO_GOOD.
   1076 
   1077 2003-10-10  Will Cohen  <wcohen (a] redhat.com>
   1078 
   1079 	* libop/op_cpu_type.h (op_get_cpu_number): Declare.
   1080 	* libop/op_cpu_type.c (op_get_cpu_number): New.
   1081 	  (op_get_cpu_type): Use op_get_cpu_number.
   1082 	* utils/op_help.c (main): Use op_get_cpu_number.
   1083 
   1084 2003-10-10  John Levon  <levon (a] movementarian.org>
   1085 
   1086 	* libop/op_parse_event.c: fix compile for IA64
   1087 
   1088 2003-10-09  John Levon  <levon (a] movementarian.org>
   1089 
   1090 	* doc/oprofile.xml: document "no results" and
   1091 	how to fix it
   1092 
   1093 2003-10-08  John Levon  <levon (a] movementarian.org>
   1094 
   1095 	* utils/op_help.c: standardise name
   1096 
   1097 	* gui/oprof_start.cpp: Qt 2.3.1 compile fix
   1098 	(bug 819943)
   1099 
   1100 2003-10-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   1101 
   1102 	* dae/opd_kernel.c: memory leak
   1103 
   1104 	* dae/opd_mapping.c:
   1105 	* dae/opd_mapping.h:
   1106 	* dae/opd_parse_proc.c:
   1107 	* dae/opd_proc.c: 
   1108 	* dae/opd_proc.h: use a list of struct opd_map instead of an array,
   1109 	  remove last_map optimization.
   1110 
   1111 	* dae/oprofiled.c: memory leak
   1112 	
   1113 	* libutil/op_cpufreq.c: memory leak, FILE* leak
   1114 	* libutil/op_list.h: fix @author
   1115 
   1116 2003-10-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   1117 
   1118 	* dae/oprofiled.c:
   1119 	* dae/opd_proc.h:
   1120 	* dae/opd_proc.c: use struct list_head to chain opd_proc struct in hash
   1121 	  table
   1122 
   1123 	* utils/op_help.c: comment fix
   1124 
   1125 2003-10-06  John Levon  <levon (a] movementarian.org>
   1126 
   1127 	* utils/opcontrol: work around 2.6 daemon's signal
   1128 	handling race that could cause it to hang during
   1129 	a --shutdown
   1130 
   1131 2003-10-05  Philippe Elie  <phil.el (a] wanadoo.fr>
   1132 
   1133 	* events/i386/p4/events:
   1134 	* events/i386/p4-ht/events: put GLOBAL_POWER_EVENTS on top
   1135 
   1136 	* events/i386/pii/unit_masks:
   1137 	* events/i386/piii/unit_masks: typo in help string
   1138 
   1139 	* utils/op_help.c: show "counter: all" instead an enumeration of all
   1140 	  counter
   1141 
   1142 2003-10-02  Philippe Elie  <phil.el (a] wanadoo.fr>
   1143 
   1144 	* events/*.events *.unit_masks: move these files to subdir named
   1145 	  arch/processor_name/events and arch/processor_name/unit_masks
   1146 	* events/Makefile.am: update according
   1147 	
   1148 	* libop/op_events.c: now it's safe to allow loading events file from a
   1149 	  directory provided through environment var OPROFILE_EVENTS_FILE_DIR
   1150 	* libop/tests/alloc_counter_tests.c: use it
   1151 	* libop/tests/load_events_files_tests.c: use it
   1152 
   1153 2003-10-02  Philippe Elie  <phil.el (a] wanadoo.fr>
   1154 
   1155 	* libop/op_events.c: revert last commit (allowed to find events files
   1156 	  description directory in alternate directory)
   1157 
   1158 	* libop/tests/Makefile.am:
   1159 	* libop/tests/load_events_files_tests.c: new files. Validate events
   1160 	  description file by loading them.
   1161 
   1162 	* libutil/op_cpufreq.c: comment why we don't have any code handling
   1163 	  s390
   1164 
   1165 2003-10-01  Philippe Elie  <phil.el (a] wanadoo.fr>
   1166 
   1167 	* configure.in:
   1168 	* libop/Makefile.am: new subdir
   1169 	* libop/op_events.c: allow to retrieve events file dir through
   1170 	  environment variable
   1171 	* utils/op_help.c: move parse_events() and parsed_event struct to ...
   1172 	* libop/op_parse_event.h:
   1173 	* libop/op_parse_event.c: these new files
   1174 
   1175 	* libop/tests/Makefile.am: new tests subdir
   1176 	* libop/tests/alloc_counter_tests.c: events mapping to counter nr tests
   1177 	* libop/tests/parse_event_tests.c: event parsing tests
   1178 
   1179 2003-10-01  Philippe Elie  <phil.el (a] wanadoo.fr>
   1180 
   1181 	* libop/op_alloc_counter.c: add forward declaration
   1182 	* libop/op_alloc_counter.c: alloc counter in increasing number order,
   1183 	  it's less surprising.
   1184 
   1185 2003-10-01  Philippe Elie  <phil.el (a] wanadoo.fr>
   1186 
   1187 	* libdb/tests/db_test.c: if previous tests fails a corrupted samples
   1188 	  file can exist in test dir and will be re-used, remove() it.
   1189 
   1190 2003-10-01  John Levon  <levon (a] movementarian.org>
   1191 
   1192 	* daemon/opd_sfile.c:
   1193 	* libabi/op_import.cpp:
   1194 	* libop/op_interface.h:
   1195 	* libpp/locate_images.h: small cleanups
   1196 
   1197 	* pp/opreport_options.cpp: don't complain about
   1198 	"-x -m all"
   1199 
   1200 2003-09-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   1201 
   1202 	* libutil/op_file.c:
   1203 	* libutil/tests/file_tests.c: honor posix "//" filename namespace
   1204 
   1205 2003-09-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   1206 
   1207 	* libop/op_alloc_counter.h:
   1208 	* libop/op_alloc_counter.c: change allocator by a backtracking
   1209 	  algorithm walking only through possible solution.
   1210 
   1211 2003-09-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   1212 
   1213 	* libdb/tests/db_test.c: success must be silent
   1214 	* dae/oprofiled.c:
   1215 	* daemon/oprofiled.c:
   1216 	* libutil/op_deviceio.c:
   1217 	* libutil/op_deviceio.h: op_open_device(): remove unused parameter
   1218 	  fatal
   1219 
   1220 2003-09-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   1221 
   1222 	* libutil/tests/file_tests.c: Fix some test: in some case the pathname
   1223 	  component must be valid since we lstat() them. Fix a segfault due
   1224 	  to missing ',' 
   1225 
   1226 2003-09-26  John Levon  <levon (a] movementarian.org>
   1227 
   1228 	* libdb/tests/Makefile.am:
   1229 	* libregex/tests/Makefile.am:
   1230 	* libutil/tests/Makefile.am: don't build tests
   1231 	unless "make check"
   1232 
   1233 2003-09-26  John Levon  <levon (a] movementarian.org>
   1234 
   1235 	* libutil/op_file.c: don't test for NULL path
   1236 	passed in, we want to crash here instead of
   1237 	in xstrdup
   1238 
   1239 	* configure.in:
   1240 	* libutil/Makefile.am:
   1241 	* libutil/tests/Makefile.am:
   1242 	* libutil/tests/file_tests.c:
   1243 	* libutil/tests/string_tests.c: add some unit tests
   1244 	for libutil string and path handling
   1245 
   1246 2003-09-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   1247 
   1248 	* libdb/db_debug.c: remove useless display interface
   1249 	* libdb/db_db_travel.c: remove callback interface
   1250 	* libdb/odb_hash.h: remove display/callback interface
   1251 	* libdb/db_test.cpp: move to tests subdir
   1252 	* libdb/Makefile.am: update according
   1253 	* libdb/tests: new dir
   1254 	* libdb/tests/.cvsignore:
   1255 	* libdb/tests/Makefile.am: new files
   1256 	* libdb/tests/db_test.cpp: shorter tests
   1257 
   1258 	* libregex/mangled-name.txt:
   1259 	* libregex/regex_testc.cpp: move to ...
   1260 	* libregex/tests: new directory
   1261 	* libdb/Makefile.am: update according
   1262 	* libregex/tests/.cvsignore:
   1263 	* libregex/tests/Makefile.am: new files
   1264 
   1265 2003-09-26  John Levon  <levon (a] movementarian.org>
   1266 
   1267 	* libabi/abi_test.cpp:
   1268 	* libabi/op_import.cpp: small cleanups
   1269 
   1270 2003-09-25  John Levon  <levon (a] movementarian.org>
   1271 
   1272 	* daemon/opd_cookie.c:
   1273 	* daemon/opd_kernel.c:
   1274 	* daemon/opd_sfile.c:
   1275 	* daemon/opd_trans.c:
   1276 	* daemon/oprofiled.c: trivial cleanups
   1277 
   1278 2003-09-25  Marc Herbert  <marc.herbert (a] ens-lyon.fr>
   1279 
   1280 	* configure.in: fix prefix stuff to allow stow
   1281 	to work
   1282 
   1283 2003-09-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   1284 
   1285 	* pch-c++.h: remove
   1286 	* Makefile.am: update according
   1287 	* configure.in: no longer need for conditional enable_pch
   1288 	* m4/precompiledheader.m4: don't use -Winvalid-pch
   1289 
   1290 2003-09-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   1291 
   1292 	* daemon/opd_sfile.c: sfile_lru_clear() return 0 if lru is empty
   1293 	* daemon/opd_mangling.c: abort() if lru was empty (not tested)
   1294 	* daemon/oprofiled.c: likewise; opd_alarm(): don't sfile_lru_clear()
   1295 
   1296 	* utils/op_help.c:
   1297 	* daemon/opd_sfile.h:
   1298 	* daemon/opd_cookie.h: s/()/(void)/ in some function prototype and
   1299 	  definition
   1300 
   1301 	* daemon/opd_cookie.c: s/"not looked up"/"not hashed"/
   1302 
   1303 2003-09-25  John Levon  <levon (a] movementarian.org>
   1304 
   1305 	* daemon/oprofiled.c: push rlimit down back to 2048.
   1306 	This gives a running RSS of about 10Mb when thread
   1307 	profiling on my box, which seems reasonable (at 8192
   1308 	it was hitting 40Mb)
   1309 
   1310 2003-09-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   1311 
   1312 	* doc/oprofile.xml: clarify what means a configured kernel.
   1313 
   1314 2003-09-25  John Levon  <levon (a] movementarian.org>
   1315 
   1316 	* daemon/opd_sfile.c: bump LRU_AMOUNT to 1000
   1317 
   1318 2003-09-24  John Levon  <levon (a] movementarian.org>
   1319 
   1320 	* doc/opcontrol.1.in:
   1321 	* doc/oprofile.xml: document thread and cpu
   1322 	profiling a bit
   1323 
   1324 	* daemon/opd_mangling.c:
   1325 	* daemon/opd_sfile.c:
   1326 	* daemon/oprofiled.c:
   1327 	* utils/opcontrol: implement per-CPU profiling,
   1328 	not tested yet
   1329 
   1330 2003-09-24  John Levon  <levon (a] movementarian.org>
   1331 
   1332 	* dae/opd_proc.c:
   1333 	* dae/opd_sample_files.c:
   1334 	* daemon/opd_mangling.c:
   1335 	* daemon/opd_sfile.c:
   1336 	* libabi/abi_test.cpp:
   1337 	* libabi/op_import.cpp:
   1338 	* libdb/db_insert.c:
   1339 	* libdb/db_manage.c:
   1340 	* libdb/db_test.c:
   1341 	* libdb/odb_hash.h:
   1342 	* libpp/op_header.cpp:
   1343 	* libpp/profile.cpp: remove samples_odb_t.err_msg
   1344 	entirely - prefer UNIX-style errno returns. Modify
   1345 	error messages to match
   1346 
   1347 2003-09-24  John Levon  <levon (a] movementarian.org>
   1348 
   1349 	* dae/opd_sample_files.c:
   1350 	* daemon/opd_sample_files.c:
   1351 	* libpp/op_header.cpp:
   1352 	* libpp/profile.cpp:
   1353 	* libabi/abi_test.cpp:
   1354 	* libabi/op_import.cpp:
   1355 	* libdb/db_test.c:
   1356 	* libdb/odb_hash.h:
   1357 	* libdb/odb_manage.c: make odb_open return errno
   1358 	instead of EXIT_FAILURE/SUCCESS to allow EMFILE
   1359 	handling. Also do not leak fd's on failure.
   1360 
   1361 	* libutil/op_types.h: cookie_t moved into daemon/
   1362 
   1363 	* daemon/: major rewrite: move to a hash on all
   1364 	parameters of struct transient. Lots of readability
   1365 	cleanups, plus resistance to cookie lookup failures,
   1366 	and hitting open file limits. Additionally thread
   1367 	profiling for kernel threads is enabled now.
   1368 
   1369 2003-09-24  John Levon  <levon (a] movementarian.org>
   1370 
   1371 	* daemon/opd_image.c: remove support for missing
   1372 	CTX_TGID
   1373 
   1374 2003-09-24  John Levon  <levon (a] movementarian.org>
   1375 
   1376 	* daemon/oprofiled.c: remove /proc/kcore support
   1377 
   1378 2003-09-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   1379 
   1380 	* dae/opd_parse_proc.c: both op_file.h and op_fileio.h are needed
   1381 
   1382 2003-09-22  John Levon  <levon (a] movementarian.org>
   1383 
   1384 	* doc/CodingStyle: document doxygen placing rule
   1385 
   1386 	* libop/op_alloc_counter.h:
   1387 	* libop/op_get_interface.c:
   1388 	* libutil++/file_manip.cpp:
   1389 	* libutil++/file_manip.h:
   1390 	* libutil++/op_bfd.cpp:
   1391 	* libutil++/op_bfd.h:
   1392 	* libutil/op_deviceio.c:
   1393 	* libutil/op_deviceio.h:
   1394 	* libutil/op_get_time.c:
   1395 	* libutil/op_get_time.h:
   1396 	* libutil/op_libiberty.c:
   1397 	* libutil/op_libiberty.h:
   1398 	* libutil/op_lockfile.c:
   1399 	* libutil/op_lockfile.h:
   1400 	* libutil/op_popt.c:
   1401 	* libutil/op_popt.h: follow the above
   1402 
   1403 	* libutil/op_file.c:
   1404 	* libutil/op_file.h:
   1405 	* libutil/op_fileio.c:
   1406 	* libutil/op_fileio.h:
   1407 	* dae/opd_parse_proc.c:
   1408 	* libutil++/string_manip.cpp: move op_get_link to
   1409 	op_file
   1410 
   1411 2003-09-22  John Levon  <levon (a] movementarian.org>
   1412 
   1413 	* libutil/op_fileio.h:
   1414 	* libutil/op_fileio.c: warn about op_get_link()
   1415 	restrictions
   1416 
   1417 	* libutil++/file_manip.h:
   1418 	* libutil++/file_manip.cpp: s/op_read_link/op_follow_link,
   1419 	and behaviour change to match
   1420 
   1421 	* libpp/profile_spec.cpp:
   1422 	* gui/oprof_start_util.cpp: use op_follow_link
   1423 
   1424 2003-09-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   1425 
   1426 	* dae/makefile.am: missing AM_CFLAGS setting
   1427 
   1428 	* dae/oprofiled.c:
   1429 	* daemon/oprofiled.c: handle signal in read loop
   1430 	* daemon/opd_util.h:
   1431 	* daemon/opd_util.c: move opd_setup_signal() from dae/ daemon/
   1432 
   1433 2003-09-22  John Levon  <levon (a] movementarian.org>
   1434 
   1435 	* dae/oprofiled.c:
   1436 	* daemon/oprofiled.c: mask SIGTERM too to prevent
   1437 	the possibility of empty sample files
   1438 
   1439 2003-09-21  Philippe Elie  <phil.el (a] wanadoo.fr>
   1440 
   1441 	* libpp/format_output.h:
   1442 	* libpp/format_output.cpp:
   1443 	* pp/opreport.cpp: format_output::show_header no hide_header
   1444 
   1445 2003-09-21  Philippe Elie  <phil.el (a] wanadoo.fr>
   1446 
   1447 	* doc/opreport.1.in:
   1448 	* doc/oprofile.xml:
   1449 	* libpp/format_output.h:
   1450 	* libpp/format_output.cpp:
   1451 	* pp/opreport.cpp: --global_percent must be effective for detailed
   1452 	  output too
   1453 
   1454 2003-09-21  John Levon  <levon (a] movementarian.org>
   1455 
   1456 	* pp/opreport_options.cpp: prevent --global-percent
   1457 	when appropriate
   1458 
   1459 2003-09-21  John Levon  <levon (a] movementarian.org>
   1460 
   1461 	* Makefile.am: back out broken make clean change
   1462 
   1463 2003-09-21  John Levon  <levon (a] movementarian.org>
   1464 
   1465 	* Makefile.am: make clean now removes *.html
   1466 
   1467 	* internals.xml: add some outline sections
   1468 
   1469 2003-09-21  John Levon  <levon (a] movementarian.org>
   1470 
   1471 	* doc/internals.xml: provide a short overview
   1472 	and start a glossary
   1473 
   1474 	* libpp/count_array.h:
   1475 	* libpp/format_output.cpp:
   1476 	* libpp/format_output.h:
   1477 	* libpp/profile.cpp:
   1478 	* libpp/profile.h:
   1479 	* libpp/profile_container.cpp:
   1480 	* libpp/profile_container.h:
   1481 	* pp/opreport.cpp: replace residual references to
   1482 	count groups with profile class concept
   1483 
   1484 2003-09-21  John Levon  <levon (a] movementarian.org>
   1485 
   1486 	* doc/Makefile.am:
   1487 	* doc/internals.xml: start an internals manual ...
   1488 
   1489 2003-09-19  John Levon  <levon (a] movementarian.org>
   1490 
   1491 	* pp/image_errors.cpp: missing include
   1492 
   1493 2003-09-19  John Levon  <levon (a] movementarian.org>
   1494 
   1495 	* libopt++/popt_options.h:
   1496 	* libopt++/popt_options.cpp: remove additional_help
   1497 	stuff, unused for some time
   1498 
   1499 2003-09-18  John Levon  <levon (a] movementarian.org>
   1500 
   1501 	* libutil++/Makefile.am:
   1502 	* libutil++/image_flags.h: move to ...
   1503 
   1504 	* libpp/Makefile.am:
   1505 	* libpp/image_error.h: ... here, and rename
   1506 
   1507 	* libutil++/op_bfd.h:
   1508 	* libutil++/op_bfd.cpp: take an in-out bool
   1509 	instead of image_flags
   1510 
   1511 	* libpp/arrange_profiles.cpp:
   1512 	* libpp/arrange_profiles.h:
   1513 	* libpp/locate_images.cpp:
   1514 	* libpp/locate_images.h:
   1515 	* libpp/profile_spec.cpp:
   1516 	* pp/image_errors.cpp:
   1517 	* pp/opgprof.cpp:
   1518 	* pp/populate.cpp: changes from above
   1519 
   1520 2003-09-18  John Levon  <levon (a] movementarian.org>
   1521 
   1522 	* libutil++/Makefile.am:
   1523 	* libutil++/image_flags.h: flags for image read failure
   1524 
   1525 	* libpp/profile_spec.cpp:
   1526 	* libpp/locate_images.h:
   1527 	* libpp/locate_images.cpp:
   1528 	* libpp/arrange_profiles.h:
   1529 	* libpp/arrange_profiles.cpp: use image_flags
   1530 
   1531 	* libutil++/op_bfd.h:
   1532 	* libutil++/op_bfd.cpp: use image_flags, no longer error
   1533 	out on format failure
   1534 
   1535 	* pp/Makefile.am:
   1536 	* pp/image_errors.cpp:
   1537 	* pp/image_errors.h: errors previously reported in locate_images
   1538 	are now reported here by the client
   1539 
   1540 	* pp/opannotate.cpp:
   1541 	* pp/opgprof.cpp:
   1542 	* pp/opgprof_options.cpp:
   1543 	* pp/opreport.cpp:
   1544 	* pp/populate.h:
   1545 	* pp/populate.cpp: use the above
   1546 
   1547 2003-09-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   1548 
   1549 	* libpp/format_output.cpp: use 9 not 12 for % field width
   1550 	* libutil++/string_manip.cpp: shrink 100.0000 to 100.000
   1551 	* pp/opreport.cpp: s/" "/' '
   1552 
   1553 2003-09-18  John Levon  <levon (a] movementarian.org>
   1554 
   1555 	* pp/opannotate_options.cpp:
   1556 	* pp/opreport_options.cpp: clean up error messages
   1557 
   1558 	* pp/opgprof_options.h:
   1559 	* pp/opgprof_options.cpp:
   1560 	* pp/opgprof.cpp: use inverted_profile API
   1561 
   1562 2003-09-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   1563 
   1564 	* utils/opcontrol: overwrite all current settings with --separate,
   1565 	  this change behavior of --separate=kernel,library now we really setup
   1566 	  both in this case.
   1567 
   1568 2003-09-18  John Levon  <levon (a] movementarian.org>
   1569 
   1570 	* libpp/locate_images.cpp: rewrite a little
   1571 
   1572 	* libutil++/op_bfd.cpp: set fsize to default to -1,
   1573 	for fake artificial symbol
   1574 
   1575 2003-09-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   1576 
   1577 	* libpp/locate_images.h:
   1578 	* libpp/locate_images.cpp: find_module_path() extra bool parameter
   1579 	  to know if we fail to retrieve the image.
   1580 	* libpp/arrange_profiles.h:
   1581 	* libpp/arrange_profiles.cpp: use it and save this bool in
   1582 	  inverted_profile struct
   1583 	* libpp/profile_spec.cpp: update caller according
   1584 
   1585 	* libutil++/op_bfd.h:
   1586 	* libutil++/op_bfd.cpp: use the above change to create fake op_bfd
   1587 
   1588 	* pp/opgprof_options.cpp:
   1589 	* pp/opgprof.cpp: update caller but never allow fake op_bfd
   1590 
   1591 	* pp/populate.cpp: allow to create fake op_bfd
   1592 	
   1593 
   1594 2003-09-18  John Levon  <levon (a] movementarian.org>
   1595 
   1596 	* dae/opd_image.c:
   1597 	* dae/opd_proc.c:
   1598 	* dae/opd_sample_files.c:
   1599 	* dae/oprofiled.c:
   1600 	* daemon/opd_image.c:
   1601 	* daemon/opd_image.h:
   1602 	* daemon/opd_kernel.c:
   1603 	* daemon/opd_sample_files.c:
   1604 	* daemon/oprofiled.c:
   1605 	* gui/oprof_start.cpp:
   1606 	* gui/oprof_start_config.cpp:
   1607 	* gui/oprof_start_config.h:
   1608 	* gui/ui/oprof_start.base.ui:
   1609 	* libabi/abi.cpp:
   1610 	* libabi/abi_test.cpp:
   1611 	* libabi/op_import.cpp:
   1612 	* libop/op_sample_file.h:
   1613 	* libpp/op_header.cpp:
   1614 	* utils/opcontrol: renamings of separate stuff
   1615 
   1616 2003-09-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   1617 
   1618 	* dae/opd_kernel.c: thinko in opd_get_module_info(): we must take
   1619 	  care to re-use a previously created module not to create a new
   1620 
   1621 2003-09-17  John Levon  <levon (a] movementarian.org>
   1622 
   1623 	* daemon/opd_kernel.c: logging improvements
   1624 
   1625 2003-09-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   1626 
   1627 	* dae/opd_kernel.c:
   1628 	* daemon/opd_kernel.c: fix use after free of module
   1629 
   1630 2003-09-17  John Levon  <levon (a] movementarian.org>
   1631 
   1632 	* daemon/opd_image.c: fix thread profiling when
   1633 	--separate-library=0
   1634 
   1635 2003-09-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   1636 
   1637 	* dae/opd_kernel.c: add module to list of module ...
   1638 	* daemon/opd_kernel.c: s/print/verbprintf
   1639 
   1640 2003-09-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   1641 
   1642 	* libop/op_config.h: remove OPD_MAX_MODULEs
   1643 	* dae/opd_kernel.c:
   1644 	* daemon/opd_kernel.c: remove fixed array of modules replaced by
   1645 	  a list. Unify the way we create opd_module
   1646 	* utils/opcontrol: don't use --thread-profiling for 2.4
   1647 
   1648 2003-09-17 Ka Fai Lu  <kafai0928 (a] yahoo.com>
   1649 
   1650 	I adapted slightly this patch Phil.
   1651 	* daemon/opd_image.c:
   1652 	* daemon/opd_image.h:
   1653 	* daemon/opd_kernel.c:
   1654 	* daemon/opd_sample_files.c:
   1655 	* daemon/oprofiled.c:
   1656 	* utils/opcontrol: implement per thread profiling
   1657 
   1658 2003-09-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   1659 
   1660 	* libopt++/popt_options.h:
   1661 	* libpp/locate_images.cpp: minor tidy
   1662 
   1663 2003-09-16  John Levon  <levon (a] movementarian.org>
   1664 
   1665 	* utils/opcontrol: don't pass pid/pgrp filter
   1666 	to 2.6 daemon
   1667 
   1668 	* dae/oprofiled.c:
   1669 	* daemon/oprofiled.c: setrlimit to 8192 (lame
   1670 	workaround for now), minor cleanups
   1671 
   1672 2003-09-15  John Levon  <levon (a] movementarian.org>
   1673 
   1674 	* common_option.cpp: rename the array to
   1675 	avoid a link error in GCC 3.4
   1676 
   1677 2003-09-15  John Levon  <levon (a] movementarian.org>
   1678 
   1679 	* libop/Makefile.am:
   1680 	* libop/op_interface_25.h: move to ...
   1681 
   1682 	* daemon/Makefile.am:
   1683 	* daemon/opd_interface.h: ... here
   1684 
   1685 	* daemon/opd_image.c:
   1686 	* daemon/oprofiled.c: use above. Remove pointless
   1687 	command line options.
   1688 
   1689 	* libop/op_config_25.h: remove.
   1690 
   1691 	* libop/op_hw_config.h: move DCOOKIE_SHIFT to
   1692 	opd_interface.h
   1693 
   1694 2003-09-15  John Levon  <levon (a] movementarian.org>
   1695 
   1696 	* configure.in: use -Wdeclaration-after-statement
   1697 	if available
   1698 
   1699 	* README:
   1700 	* daemon/opd_util.c:
   1701 	* daemon/opd_util.h:
   1702 	* doc/opannotate.1.in:
   1703 	* doc/opgprof.1.in:
   1704 	* doc/opreport.1.in:
   1705 	* doc/oprofile.1.in:
   1706 	* doc/oprofile.xml:
   1707 	* gui/oprof_start.cpp:
   1708 	* gui/oprof_start_util.cpp:
   1709 	* libop/op_cpu_type.c:
   1710 	* libop/op_cpu_type.h:
   1711 	* libop/op_get_interface.c:
   1712 	* libpp/locate_images.cpp: remove references to
   1713 	2.5, replaced with 2.6
   1714 
   1715 2003-09-15  John Levon  <levon (a] movementarian.org>
   1716 
   1717 	* doc/opreport.1.in: document --show-address
   1718 
   1719 2003-09-15  John Levon  <levon (a] movementarian.org>
   1720 
   1721 	* libpp/arrange_profiles.cpp:
   1722 	* libpp/arrange_profiles.h:
   1723 	* pp/populate.cpp: more commentary
   1724 
   1725 2003-09-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   1726 
   1727 	* pp/opreport.cpp: handle 2.95 right io manipulator and the lack
   1728 	  of a proper setw(w) << std::string
   1729 
   1730 2003-09-14  John Levon  <levon (a] movementarian.org>
   1731 
   1732 	* pp/opreport.cpp: re-add header for image summary
   1733 
   1734 2003-09-14  John Levon  <levon (a] movementarian.org>
   1735 
   1736 	* libpp/arrange_profiles.cpp: throw an exception
   1737 	if there are two many unmerged profiles, with details
   1738 	of how to fix it
   1739 
   1740 	* pp/opgprof_options.cpp:
   1741 	* pp/common_option.cpp: clean up error messages
   1742 
   1743 2003-09-14  John Levon  <levon (a] movementarian.org>
   1744 
   1745 	* libpp/arrange_profiles.h:
   1746 	* libpp/arrange_profiles.cpp: add location of 
   1747 	images when inverting profiles
   1748 
   1749 	* libpp/locate_images.cpp: return empty string
   1750 	if file isn't readable
   1751 
   1752 	* pp/opannotate.cpp: use the above
   1753 
   1754 	* pp/opreport.cpp: use the above; place warnings
   1755 	before any other output
   1756 
   1757 2003-09-14  John Levon  <levon (a] movementarian.org>
   1758 
   1759 	* pp/opgprof_options.cpp: use locate_image_path
   1760 
   1761 2003-09-14  John Levon  <levon (a] movementarian.org>
   1762 
   1763 	* Makefile.am:
   1764 	* populate.h:
   1765 	* populate.cpp: shared code for populating from
   1766 	inverted profiles
   1767 
   1768 	* opreport.cpp:
   1769 	* opannotate.cpp: use above
   1770 
   1771 2003-09-14  John Levon  <levon (a] movementarian.org>
   1772 
   1773 	* libpp/arrange_profiles.h:
   1774 	* libpp/arrange_profiles.cpp: add invert_profiles
   1775 
   1776 	* pp/opreport.cpp: use it
   1777 
   1778 2003-09-14  John Levon  <levon (a] movementarian.org>
   1779 
   1780 	* doc/oprofile.xml:
   1781 	* pp/opreport.cpp:
   1782 	* pp/opreport_options.cpp:
   1783 	* pp/opreport_options.h: Turn off VMA report by
   1784 	default, add --show-address
   1785 
   1786 2003-09-14  John Levon  <levon (a] movementarian.org>
   1787 
   1788 	* pp/opreport.cpp: nice formatting of image report
   1789 	column headers, respect --no-header
   1790 
   1791 2003-09-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   1792 
   1793 	* libpp/arrange_profiles.cpp: use string::erase() not string::clear()
   1794 	  for 2.95
   1795 
   1796 	* libutil++/generic_spec.h: allow to ignore "all" match
   1797 	* libutil++/comma_list.h: use it
   1798 
   1799 2003-09-14  John Levon  <levon (a] movementarian.org>
   1800 
   1801 	* pp/opreport.cpp: output column headers for
   1802 	image report
   1803 
   1804 2003-09-14  John Levon  <levon (a] movementarian.org>
   1805 
   1806 	* libpp/op_header.h:
   1807 	* libpp/op_header.cpp: output header info to
   1808 	a string not a stream
   1809 
   1810 	* libpp/arrange_profiles.h:
   1811 	* libpp/arrange_profiles.cpp: give classes a long
   1812 	name, and fill in global event/cpu info
   1813 
   1814 	* pp/opannotate.cpp:
   1815 	* pp/opannotate_options.cpp:
   1816 	* pp/opannotate_options.h:
   1817 	* pp/opgprof_options.cpp:
   1818 	* pp/opreport.cpp:
   1819 	* pp/opreport_options.cpp:
   1820 	* pp/opreport_options.h: use the class long names
   1821 	and info
   1822 
   1823 2003-09-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   1824 
   1825 	* libpp/profile_spec.cpp: handle symlink
   1826 
   1827 2003-09-14  John Levon  <levon (a] movementarian.org>
   1828 
   1829 	* arrange_profiles.h:
   1830 	* arrange_profiles.cpp: Add code to give short names
   1831 	to each class, unused yet
   1832 
   1833 2003-09-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   1834 
   1835 	* libpp/arrange_profiles.cpp: missing include<> with gcc 2.95
   1836 
   1837 2003-09-14  John Levon  <levon (a] movementarian.org>
   1838 
   1839 	* libpp/Makefile.am:
   1840 	* libpp/split_sample_filename.cpp:
   1841 	* libpp/split_sample_filename.h: rename as ...
   1842 
   1843 	* libpp/parse_filename.cpp:
   1844 	* libpp/parse_filename.h: ... this
   1845 
   1846 	* libpp/filename_spec.cpp:
   1847 	* libpp/arrange_profiles.cpp:
   1848 	* libpp/arrange_profiles.h: sort classes for niceness,
   1849 	changes from above
   1850 
   1851 	* pp/opreport.cpp: remove needless double check of
   1852 	exclude_dependent
   1853 
   1854 	* libutil++/string_manip.cpp: touint should init to 0
   1855 	in case of parse failure
   1856 
   1857 2003-09-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   1858 
   1859 	* configure.in: fix maximum template depth to 50
   1860 	* libutil/op_fileio.c: op_get_link() don't truncate silently results
   1861 	* m4/sstream.m4: use OP_CXXFLAGS not CXXFLAGS
   1862 
   1863 2003-09-14  John Levon  <levon (a] movementarian.org>
   1864 
   1865 	* pp/partition_files.h:
   1866 	* pp/partition_files.cpp: remove, now unused
   1867 
   1868 2003-09-14  John Levon  <levon (a] movementarian.org>
   1869 
   1870 	* pp/opannotate.cpp:
   1871 	* pp/opannotate_options.cpp:
   1872 	* pp/opannotate_options.h: use arrange_profiles API
   1873 
   1874 2003-09-14  John Levon  <levon (a] movementarian.org>
   1875 
   1876 	* pp/opgprof_options.h:
   1877 	* pp/opgprof_options.cpp:
   1878 	* pp/opgprof.cpp: use arrange_profiles API
   1879 
   1880 2003-09-14  John Levon  <levon (a] movementarian.org>
   1881 
   1882 	* libpp/Makefile.am:
   1883 	* libpp/arrange_profiles.cpp:
   1884 	* libpp/arrange_profiles.h: introduce new
   1885 	code for partitioning profiles and handling
   1886 	merging
   1887 
   1888 	* libpp/partition_files.h:
   1889 	* pp/opreport_options.cpp:
   1890 	* pp/opreport_options.h:
   1891 	* pp/opreport.cpp: use the above code
   1892 
   1893 	* libpp/format_flags.h:
   1894 	* libpp/profile_container.cpp: remove unneeded
   1895 	multiple apps hint
   1896 
   1897 	* libpp/count_array.cpp:
   1898 	* libpp/count_array.h: remove unnecessary code
   1899 
   1900 2003-09-14  John Levon  <levon (a] movementarian.org>
   1901 
   1902 	* configure.in: back to 0.7cvs
   1903 
   1904 2003-09-14  John Levon  <levon (a] movementarian.org>
   1905 
   1906 	* pp/opannotate.cpp: gcc 2.91 workaround
   1907 	(in 0.6.1 release)
   1908 
   1909 2003-09-14  John Levon  <levon (a] movementarian.org>
   1910 
   1911 	* configure.in: bump to 0.6.1
   1912 
   1913 2003-09-13  John Levon  <levon (a] movementarian.org>
   1914 
   1915 	* doc/oprofile.xml: document "incorrect source attribution"
   1916 	a bit
   1917 
   1918 2003-09-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   1919 
   1920 	* libpp/op_header.cpp: typo in comment
   1921 
   1922 2003-09-11  John Levon  <levon (a] movementarian.org>
   1923 
   1924 	* configure.in: check for -lintl, tweak -ldl check
   1925 
   1926 2003-09-11  John Levon  <levon (a] movementarian.org>
   1927 
   1928 	* dae/oprofiled.c:
   1929 	* daemon/oprofiled.c:
   1930 	* libdb/db_manage.c:
   1931 	* libdb/db_test.c: correct headers
   1932 
   1933 2003-09-11  John Levon  <levon (a] movementarian.org>
   1934 
   1935 	* op_lockfile.c: use correct headers
   1936 
   1937 2003-09-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   1938 
   1939 	* utils/op_help.c: check than all events are distincts
   1940 
   1941 2003-09-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   1942 
   1943 	* pch-c++.h:
   1944 	* m4/precompiledheader.m4: new file to handle precompiled header
   1945 	* m4/Makefile.am:
   1946 	* configure.in:
   1947 	* Makefile.am: handle precompiled header
   1948 
   1949 2003-09-05  John Levon  <levon (a] movementarian.org>
   1950 
   1951 	* opd_image.c: cleanup of ctx_switch_set_image()
   1952 
   1953 2003-09-05  Philippe Elie  <phil.el (a] wanadoo.fr>
   1954 
   1955 	* daemon/opd_image.c: After a context switch ensure we update correctly
   1956 	  the current image.
   1957 
   1958 2003-09-04  Philippe Elie  <phil.el (a] wanadoo.fr>
   1959 
   1960 	* pp/opreport.cpp:
   1961 	* pp/opannotate.cpp: catch op_bfd exception and recover gracefully
   1962 
   1963 2003-09-04  Philippe Elie  <phil.el (a] wanadoo.fr>
   1964 
   1965 	* utils/opcontrol: tweak "signaling daemon " message as suggested
   1966 	  by Carlo Wood
   1967 
   1968 2003-09-04  John Levon  <levon (a] movementarian.org>
   1969 
   1970 	* doc/oprofile.xml: mention --reset in
   1971 	"Getting Started"
   1972 
   1973 2003-09-03  John Levon  <levon (a] movementarian.org>
   1974 
   1975 	* libop/op_events.c:
   1976 	* libpp/op_header.cpp:
   1977 	* dae/opd_sample_files.c:
   1978 	* daemon/opd_sample_files.c: propagate event
   1979 	error back up to caller
   1980 
   1981 	* libdb/odb_hash.h: fix comment
   1982 
   1983 2003-09-02  John Levon  <levon (a] movementarian.org>
   1984 
   1985 	* dae/opd_image.c:
   1986 	* dae/opd_proc.c:
   1987 	* dae/oprofiled.c:
   1988 	* daemon/opd_image.c: use abort() not exit()
   1989 	on "can't happen" errors
   1990 
   1991 2003-09-02  John Levon  <levon (a] movementarian.org>
   1992 
   1993 	* dae/opd_proc.c:
   1994 	* daemon/opd_image.c: fix error message
   1995 
   1996 2003-08-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   1997 
   1998 	* events/alpha.ev6.events: fix duplicate um tag
   1999 
   2000 2003-08-28  John Levon  <levon (a] movementarian.org>
   2001 
   2002 	* events/i386.athlon.events: fix duplicate minimum tag
   2003 
   2004 	* daemon/opd_image.c:
   2005 	* libop/op_events.c: check for duplicate tags
   2006 
   2007 2003-08-28  John Levon  <levon (a] movementarian.org>
   2008 
   2009 
   2010 2003-08-27  Will Cohen  <wcohen (a] redhat.com>
   2011 
   2012 	* utils/op_help.c (resolve_events): Typecast printf argument.
   2013 
   2014 2003-08-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   2015 
   2016 	* pp/opannotate_options.cpp:
   2017 	* pp/opannotate_options.h:
   2018 	* pp/opannotate.cpp: enable multiple events
   2019 
   2020 	* pp/opreport_options.cpp: remove #if 0 .... #endif
   2021 
   2022 2003-08-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   2023 
   2024 	* libpp/count_array.cpp: avoid to access invalid memory
   2025 
   2026 2003-08-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   2027 
   2028 	* configure.in:
   2029 	* m4/builtinexpect.m4:
   2030 	* m4/configmodule.m4:
   2031 	* module/Makefile.in:
   2032 	* module/ia64/Makefile.in:
   2033 	* module/x86/makefile.in: always use EXTRA_CFLAGS_MODULE not
   2034 	EXTRA_CFLAGS for module build flags
   2035 
   2036 2003-08-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   2037 
   2038 	* libregex/op_regex.h:
   2039 	* libregex/op_regex.cpp: tidy
   2040 
   2041 	* libutil++/op_bfd.cpp: remove obsolete comment
   2042 
   2043 2003-08-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   2044 
   2045 	* libutil++/file_manip.h:
   2046 	* libutil++/file_manip.cpp: is_directory(dirname): return true if
   2047 	  dirname exists
   2048 	* pp/common_option.cpp: validate --image-path parameters
   2049 
   2050 2003-08-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   2051 
   2052 	* events/i386.p4.events: clarify than 128BIT_MMX_UOP count only integer
   2053 	  SSE2 ops
   2054 	* pp/opreport.cpp: minor spacing change in output
   2055 
   2056 2003-08-22  John Levon  <levon (a] movementarian.org>
   2057 
   2058 	* daemon/oprofiled.c: report the kernel pointer size
   2059 
   2060 2003-08-22  John Levon  <levon (a] movementarian.org>
   2061 
   2062 	* daemon/oprofiled.c: read new /dev/oprofile/pointer_size
   2063 	in preference to kcore. kcore code will eventually go.
   2064 
   2065 2003-08-21  John Levon  <levon (a] movementarian.org>
   2066 
   2067 	* libutil++/op_bfd.cpp: update gcc2_compiled. comment
   2068 	to reflect reality
   2069 
   2070 2003-08-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   2071 
   2072 	* pp/opreport.cpp: really merge when --merge=lib and image name are
   2073 	  specified.
   2074 
   2075 2003-08-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   2076 
   2077 	* pp/opannotate.cpp: output threshold percent when necessary.
   2078 
   2079 2003-08-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   2080 
   2081 	* libutil++/op_bfd.cpp: remove ELF-based symbol size code
   2082 
   2083 2003-08-15  William Cohen  <wcohen (a] redhat.com>
   2084 
   2085 	* doc/opcontrol.1.in:
   2086 	* doc/oprofile.1.in:
   2087 	* doc/oprofile.xml: Correct path to /root/.oprofile/daemonrc.
   2088 
   2089 2003-08-15  Thomas Spatzier  <TSPAT (a] de.ibm.com>
   2090 
   2091 	* daemon/opd_cookie.h: fix s390 syscall
   2092 
   2093 2003-08-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   2094 
   2095 	* libutil++/string_manip.cpp: erase_to_last_of() is not a ltrim()
   2096 
   2097 2003-08-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   2098 
   2099 	Dave Jones suggested this change.
   2100 
   2101 	* module/x86/op_model_p4.c: remove superflous ';' at end of some macro
   2102 
   2103 2003-08-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   2104 
   2105 	* libutil++/string_manip.h: remove erase_from_last_of()
   2106 	* libutil++/string_manip.cpp: and tidy erase_to_last_of(), rtrim() and
   2107 	  ltrim()
   2108 
   2109 2003-08-13  Philippe Elie  <phil.el (a] wanadoo.fr>
   2110 
   2111 	* libutil++/op_bfd.h:
   2112 	* libpp/profile_container.cpp: remove nil_symbol_index
   2113 
   2114 2003-08-13  John Levon  <levon (a] movementarian.org>
   2115 
   2116 	* libpp/profile_container.cpp:
   2117 	* libpp/profile_container.h: remove "base_vma" parameter
   2118 	to add_samples(), we can just re-grab it straight from
   2119 	the abfd
   2120 
   2121 2003-08-13  John Levon  <levon (a] movementarian.org>
   2122 
   2123 	* libpp/profile_container.cpp:
   2124 	* libpp/profile_container.h: remove unused "zero samples"
   2125 	optimization hint: it's always false
   2126 
   2127 	* pp/opannotate.cpp:
   2128 	* pp/opgprof.cpp:
   2129 	* pp/opreport.cpp: from above
   2130 
   2131 2003-08-12  John Levon  <levon (a] movementarian.org>
   2132 
   2133 	* pp/opreport.cpp: small trivialities
   2134 
   2135 2003-08-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   2136 
   2137 	* libregex/stl.pat.in: minor fix/improvements
   2138 	* libregex/mangled-name.txt: add tests
   2139 
   2140 2003-08-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   2141 
   2142 	* pp/opreport.cpp: fix thinko when --merge=lib
   2143 
   2144 2003-08-12  John Levon  <levon (a] movementarian.org>
   2145 
   2146 	* pp/opreport.cpp: s/count_groups_summary/summary_container/g
   2147 
   2148 2003-08-12  John Levon  <levon (a] movementarian.org>
   2149 
   2150 	* doc/oprofile.xml: document opreport's side-by-side a little
   2151 	bit
   2152 
   2153 2003-08-12  John Levon  <levon (a] movementarian.org>
   2154 
   2155 	* pp/opreport.cpp: s/group_summary/app_summary/, and
   2156 	a lot of other renamings to clarify the count groups
   2157 	usage.
   2158 
   2159 2003-08-12  John Levon  <levon (a] movementarian.org>
   2160 
   2161 	* utils/op_help.c: add --unit-mask
   2162 
   2163 	* utils/opcontrol: use --unit-mask
   2164 
   2165 2003-08-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   2166 
   2167 	* pp/opreport.cpp: re write using count_array_t
   2168 
   2169 2003-08-11  John Levon  <levon (a] movementarian.org>
   2170 
   2171 	* libpp/count_array.cpp:
   2172 	* libpp/count_array.h: auto-resize the number of groups
   2173 	based on how we index.
   2174 
   2175 	* libpp/profile_container.cpp: remove check
   2176 
   2177 	* pp/opannotate.cpp: count_array.zero() not .empty()
   2178 
   2179 2003-08-11  John Levon  <levon (a] movementarian.org>
   2180 
   2181 	* libpp/filename_spec.h:
   2182 	* libpp/profile_spec.cpp:
   2183 	* libpp/profile_spec.h: add comments, allow comma lists
   2184 	for event, count, and unit mask
   2185 
   2186 	* libutil++/comma_list.h: implement missing method
   2187 
   2188 2003-08-11  John Levon  <levon (a] movementarian.org>
   2189 
   2190 	* libpp/format_output.cpp:
   2191 	* libpp/format_output.h: add set_nr_groups(), remove
   2192 	pp_nr_counters.
   2193 
   2194 	* libpp/profile_container.cpp:
   2195 	* libpp/profile_container.h:
   2196 	* pp/opannotate.cpp:
   2197 	* pp/opgprof.cpp:
   2198 	* pp/opreport.cpp: count_group not counter
   2199 
   2200 2003-08-11  John Levon  <levon (a] movementarian.org>
   2201 
   2202 	* libpp/Makefile.am:
   2203 	* libpp/counter_array.cpp:
   2204 	* libpp/counter_array.h: rename to ...
   2205 
   2206 	* libpp/count_array.h:
   2207 	* libpp/count_array.cpp: ... this ...
   2208 
   2209 	* libpp/format_output.cpp:
   2210 	* libpp/format_output.h:
   2211 	* libpp/profile.cpp:
   2212 	* libpp/profile.h:
   2213 	* libpp/profile_container.cpp:
   2214 	* libpp/profile_container.h:
   2215 	* libpp/sample_container.cpp:
   2216 	* libpp/sample_container.h:
   2217 	* libpp/symbol.h:
   2218 	* pp/opannotate.cpp:
   2219 	* pp/opgprof.cpp:
   2220 	* pp/opreport.cpp: ... and several renamings to starting
   2221 	change the notion from "counters" to the more general notion
   2222 	of "count groups"
   2223 
   2224 2003-08-10  Philippe Elie  <phil.el (a] wanadoo.fr>
   2225 
   2226 	Multiple counter support for pp tools.
   2227 
   2228 	* libpp/counter_array.h:
   2229 	* libpp/counter_array.cpp: resurrected from pp-interface-branch, for
   2230 	 now memory use is inefficient.
   2231 	* libpp/Makefile.am: add counter_array.cpp .h
   2232 	* libpp/format_out.h:
   2233 	* libpp/format_out.cpp: handle multiple counter + a general tidy
   2234 	* libpp/format_flags.h: remove ff_immutable_mask and some nasty
   2235 	  requisite on flags value
   2236 	* libpp/profile_container.h:
   2237 	* libpp/profile_container.cpp:
   2238 	* libpp/sample_container.h:
   2239 	* libpp/sample_container.cpp:
   2240 	* libpp/symbol.h:
   2241 	* libpp/symbol_container.cpp:
   2242 	* libpp/symbol_sort.cpp:
   2243 	* pp/opreport.cpp: handle multiple counter
   2244 	* pp/opannotate.cpp: partial handling of multiple counter
   2245 	* pp/opgprof.cpp:
   2246 	* pp/opreport.cpp: minor bits
   2247 
   2248 2003-08-08  Will Cohen  <wcohen (a] redhat.com>
   2249 
   2250 	* dae/Makefile.am:
   2251 	* daemon/Makefile.am: Correct library linking order.
   2252 	* daemon/opd_util.c: Add needed include files.
   2253 
   2254 2003-08-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   2255 
   2256 	* utils/opcontrol: move_and_remove() do nothing if source doesn't exist
   2257 
   2258 2003-08-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   2259 
   2260 	revert the previous patch
   2261 	* dae/Makefile.am:
   2262 	* dae/opd_sample_files.h:
   2263 	* dae/opd_sample_files.c:
   2264 	* daemon/Makefile.am:
   2265 	* daemon/opd_sample_files.c: un-share opd_sample_files
   2266 	code
   2267 
   2268 2003-08-08  John Levon  <levon (a] movementarian.org>
   2269 
   2270 	* dae/Makefile.am:
   2271 	* dae/opd_sample_files.h:
   2272 	* dae/opd_sample_files.c:
   2273 	* daemon/Makefile.am:
   2274 	* daemon/opd_sample_files.c: share opd_sample_files
   2275 	code
   2276 
   2277 2003-08-08  John Levon  <levon (a] movementarian.org>
   2278 
   2279 	* dae/oprofiled.c:
   2280 	* daemon/oprofiled.c:
   2281 	* daemon/opd_util.h:
   2282 	* daemon/opd_util.c: share opd_write_abi()
   2283 
   2284 2003-08-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   2285 
   2286 	* libop/op_alloc_counter.c:
   2287 	* libop/op_events.h: minor doxygen fix
   2288 
   2289 2003-08-08  John Levon  <levon (a] movementarian.org>
   2290 
   2291 	* dae/Makefile.am:
   2292 	* dae/oprofiled.c:
   2293 	* daemon/Makefile.am:
   2294 	* daemon/oprofiled.c:
   2295 	* daemon/opd_util.h:
   2296 	* daemon/opd_util.c: share some small bits of code
   2297 	between the daemons
   2298 
   2299 2003-08-08  John Levon  <levon (a] movementarian.org>
   2300 
   2301 	* dae/oprofiled.c:
   2302 	* daemon/oprofiled.c: remove mypid, unused
   2303 
   2304 2003-08-08  John Levon  <levon (a] movementarian.org>
   2305 
   2306 	* dae/Makefile.am:
   2307 	* dae/opd_printf.h: remove duplicate header
   2308 	and use daemon/opd_printf.h
   2309 
   2310 2003-08-08  John Levon  <levon (a] movementarian.org>
   2311 
   2312 	* dae/opd_image.c:
   2313 	* dae/opd_sample_files.h:
   2314 	* dae/opd_sample_files.c:
   2315 	* daemon/opd_image.c:
   2316 	* daemon/opd_sample_files.h:
   2317 	* daemon/opd_sample_files.c: remove "create" bool
   2318 	from opd_mangle_filename(): only one callsite needs
   2319 	that functionality, open code the create instead
   2320 
   2321 	* dae/opd_proc.c:
   2322 	* dae/opd_sample_files.h:
   2323 	* dae/opd_sample_files.c:
   2324 	* daemon/opd_sample_files.h:
   2325 	* daemon/opd_sample_files.c: return error from
   2326 	opd_open_sample_filename(). Do not fail when odb_open
   2327 	fails due to --reset races.
   2328 
   2329 	* dae/oprofiled.c:
   2330 	* daemon/oprofiled.c: a little more verbosity.
   2331 
   2332 	* libutil/op_file.h:
   2333 	* libutil/op_file.c: fix create_dir/path() comments,
   2334 	don't use access()
   2335 
   2336 	* utils/opcontrol: reduce chance of --reset races
   2337 
   2338 2003-08-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   2339 
   2340 	* libpp/symbol_sort.h:
   2341 	* libpp/symbol_sort.cpp: add app_name sort order, force sort order
   2342 	  for criteria unspecified by user.
   2343 	* pp/opreport_options.cpp: update --sort option help string.
   2344 
   2345 2003-08-04  John Levon  <levon (a] movementarian.org>
   2346 
   2347 	* doc/oprofile.xml:
   2348 	* doc/opannotate.1.in:
   2349 	* pp/opannotate.cpp:
   2350 	* pp/opannotate_options.h:
   2351 	* pp/opannotate_options.cpp: add --base-dirs
   2352 
   2353 2003-08-04  John Levon  <levon (a] movementarian.org>
   2354 
   2355 	* doc/oprofile.xml:
   2356 	* doc/opannotate.1.in:
   2357 	* pp/opannotate.cpp:
   2358 	* pp/opannotate_options.h:
   2359 	* pp/opannotate_options.cpp: add --search-dirs
   2360 
   2361 2003-08-04  John Levon  <levon (a] movementarian.org>
   2362 
   2363 	* doc/oprofile.xml:
   2364 	* doc/opannotate.1.in:
   2365 	* pp/opannotate.cpp:
   2366 	* pp/opannotate_options.h:
   2367 	* pp/opannotate_options.cpp: remove --source-dir and --base-dir,
   2368 	  they're confusing and not useful in the current form
   2369 
   2370 2003-08-03  John Levon  <levon (a] movementarian.org>
   2371 
   2372 	* utils/opcontrol: avoid using ps, it's very slow with kallsyms
   2373 
   2374 2003-08-03  Philippe Elie  <phil.el (a] wanadoo.fr>
   2375 
   2376 	* libutil++/op_bfd.cpp: c++ static function doesn't get a mangled name
   2377 	  in debug info (see gcc #11774). Try to recover through a not
   2378 	  completely reliable mechanism but better than ignoring the problem
   2379 
   2380 2003-08-02  Philippe Elie  <phil.el (a] wanadoo.fr>
   2381 
   2382 	* pp/opreport.cpp: minor: more consistency about function ordering
   2383 
   2384 2003-08-02  Philippe Elie  <phil.el (a] wanadoo.fr>
   2385 
   2386 	* libpp/profile.h:
   2387 	* libpp/profile.cpp: profile::sample_count() new to allow raw access
   2388 	  to samples count
   2389 	* pp/opreport.cpp: use above function to implement opreport (w/o -l
   2390 	  or --details options). opreport is roughly twice faster.
   2391 
   2392 2003-08-02  Philippe Elie  <phil.el (a] wanadoo.fr>
   2393 
   2394 	* pp/opreport.cpp: clarify multiple counter support
   2395 
   2396 2003-08-01  John Levon  <levon (a] movementarian.org>
   2397 
   2398 	* libregex/stl.pat.in: fix _List_iterator regex
   2399 	(from Phil)
   2400 
   2401 2003-07-31  Philippe Elie  <phil.el (a] wanadoo.fr>
   2402 
   2403 	* pp/opannotate.cpp: output cpu type and cpu speed.
   2404 
   2405 2003-07-30  John Levon  <levon (a] movementarian.org>
   2406 
   2407 	* libpp/partition_files.cpp: remove some apparently
   2408 	dead code
   2409 
   2410 2003-07-30  John Levon  <levon (a] movementarian.org>
   2411 
   2412 	* events/i386.p4.unit_masks: make flame_uops value
   2413 	mandatory, Yuan.Lu (a] rrze.uni-erlangen.de does not
   2414 	see any events without setting the unit mask
   2415 
   2416 2003-07-30  John Levon  <levon (a] movementarian.org>
   2417 
   2418 	* libutil++/op_bfd.h:
   2419 	* libutil++/op_bfd.cpp: bfd_openr() keeps a copy of
   2420 	the passed in char * around, sickenly enough. Ensure lifetimes
   2421 	will always be correct by adding a filename data member to
   2422 	op_bfd
   2423 
   2424 2003-07-29  Philippe Elie  <phil.el (a] wanadoo.fr>
   2425 
   2426 	* libpp/op_header.h:
   2427 	* libpp/op_header.cpp: separate output of cpu_type, cpu_speed
   2428 	  and counter setup
   2429 
   2430 	* libpp/partition_files.h:
   2431 	* libpp/partition_files.cpp: unmergeable_profile() split profile
   2432 	  by the unmergeable.
   2433 
   2434 	* pp/opreport_options.h:
   2435 	* pp/opreport_options.cpp:
   2436 	* pp/opreport.cpp: initial multiple counter output, multiple counter
   2437 	  with -l is not yet available.
   2438 
   2439 2003-07-29  John Levon  <levon (a] movementarian.org>
   2440 
   2441 	* doc/opcontrol.1.in: update for --event
   2442 
   2443 2003-07-29  John Levon  <levon (a] movementarian.org>
   2444 
   2445 	* configure.in:
   2446 	* doc/srcdoc/Doxyfile.in:
   2447 	* oprof_report/: remove badly out of date oprof_report
   2448 
   2449 2003-07-28  John Levon  <levon (a] movementarian.org>
   2450 
   2451 	* configure.in: bump to 0.7cvs
   2452 
   2453 2003-07-26  John Levon  <levon (a] movementarian.org>
   2454 
   2455 	* configure.in: bump to 0.6
   2456 
   2457 2003-07-26  John Levon  <levon (a] movementarian.org>
   2458 
   2459 	* utils/opcontrol: fix call of op_help
   2460 
   2461 2003-07-26  John Levon  <levon (a] movementarian.org>
   2462 
   2463 	* gui/oprof_start.cpp: replace folder icons with clearer
   2464 	red/green circles
   2465 
   2466 2003-07-26  John Levon  <levon (a] movementarian.org>
   2467 
   2468 	* gui/oprof_start.cpp: actually select and show the default
   2469 	event
   2470 
   2471 2003-07-26  John Levon  <levon (a] movementarian.org>
   2472 
   2473 	* gui/oprof_start.cpp: small string tweak, show "conflicts"
   2474 	message consistently
   2475 
   2476 2003-07-26  John Levon  <levon (a] movementarian.org>
   2477 
   2478 	* gui/oprof_start.cpp: don't use invalidated iterator
   2479 
   2480 2003-07-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   2481 
   2482 	* gui/oprof_start.cpp: fix for 2.91.66
   2483 
   2484 	* libpp/profile.cpp: typo invoking an undefined behavior revealed
   2485 	  by gcc stl debug mode
   2486 	* libpp/profile.h: ensure we provide the right typedef to std::
   2487 	  for profile::const_iterator revealed by gcc stl debug mode at compile
   2488 	  time. The implementation is a bit tricky to work with old compiler
   2489 	* libpp/symbol_sort.cpp: compare must define a weak ordered relation
   2490 	  order, revealed by gcc stl debug mode.
   2491 
   2492 2003-07-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   2493 
   2494 	* gui/ui/oprof_start.base.ui:
   2495 	* gui/oprof_start.h:
   2496 	* gui/oprof_start.cpp: change UI to use the new counter allocation
   2497 	  API
   2498 
   2499 	* libop/op_alloc_counter.h:
   2500 	* libop/op_alloc_counter.c:
   2501 	* utils/op_help.c: minor const-ness api change
   2502 
   2503 2003-07-25  Will Cohen  <wcohen (a] redhat.com>
   2504 
   2505 	* utils/opcontrol: Restrict the search path.
   2506 
   2507 2003-07-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   2508 
   2509 	* libop/op_alloc_counter.c: use tabulation
   2510 
   2511 	* libop/op_events.c:
   2512 	* libop/op_events.h: find_event_by_name() new
   2513 	* utils/op_help.c: use find_event_by_name()
   2514 
   2515 2003-07-24  Philippe Elie  <phil.el (a] wanadoo.fr>
   2516 
   2517 	* utils/op_help.c: make valgrind happy + minor cleanup
   2518 
   2519 2003-07-24  Philippe Elie  <phil.el (a] wanadoo.fr>
   2520 
   2521 	* libop/op_alloc_counter.h:
   2522 	* libop/op_alloc_counter.c: new file providing mapping from an event 
   2523 	  list to hardware counter number
   2524 	* utils/op_help.c: use the above api
   2525 
   2526 2003-07-24  Philippe Elie  <phil.el (a] wanadoo.fr>
   2527 
   2528 	* utils/op_help.c: fix hardware counter allocation order
   2529 
   2530 2003-07-23  John Levon  <levon (a] movementarian.org>
   2531 
   2532 	* doc/oprofile.xml: comment out --base-dir mention
   2533 
   2534 2003-07-23  John Levon  <levon (a] movementarian.org>
   2535 
   2536 	* doc/oprofile.xml: remove mention of oprof_start_event
   2537 
   2538 2003-07-23  John Levon  <levon (a] movementarian.org>
   2539 
   2540 	* dae/oprofiled.c:
   2541 	* daemon/oprofiled.c: don't uselessly try to unlink
   2542 	non-existent lockfile
   2543 
   2544 	* daemon/opd_image.c:
   2545 	* daemon/oprofiled.c: clean up buffer read messages
   2546 
   2547 2003-07-23  John Levon  <levon (a] movementarian.org>
   2548 
   2549 	* utils/opcontrol: error out at --setup time if vmlinux is not
   2550 	valid. Cleanup the error message if so
   2551 
   2552 	* daemon/opd_kernel.c: fix potential null deref
   2553 
   2554 2003-07-21  John Levon  <levon (a] movementarian.org>
   2555 
   2556 	* gui/oprof_start.cpp: select "No event" when switching counter
   2557 	if needed
   2558 
   2559 2003-07-21  John Levon  <levon (a] movementarian.org>
   2560 
   2561 	* gui/oprof_start.cpp: fix default event choosing when
   2562 	daemonrc exists
   2563 
   2564 2003-07-21  Philippe Elie  <phil.el (a] wanadoo.fr>
   2565 
   2566 	* gui/oprof_start.cpp: thinko in has_unique_event(), don't warn for
   2567 	  no counter with CPU_TIMER_INT
   2568 
   2569 2003-07-21  Philippe Elie  <phil.el (a] wanadoo.fr>
   2570 
   2571 	* gui/oprof_start.cpp: allow to de-select a counter
   2572 
   2573 2003-07-21  John Levon  <levon (a] movementarian.org>
   2574 
   2575 	* gui/oprof_start.cpp:
   2576 	* gui/oprof_start_util.h:
   2577 	* gui/oprof_start_util.cpp: remove uptime pretty printing.
   2578 	It's broken for 2.5 and ugly code
   2579 
   2580 2003-07-21  John Levon  <levon (a] movementarian.org>
   2581 
   2582 	* gui/oprof_start.h:
   2583 	* gui/oprof_start.cpp: use a default event if no
   2584 	events are set yet
   2585 
   2586 2003-07-20  Philippe Elie  <phil.el (a] wanadoo.fr>
   2587 
   2588 	* m4/compileroption.m4: fix for autoconf 2.13
   2589 
   2590 2003-07-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   2591 
   2592 	* gui/oprof_start.cpp:
   2593 	* libpp/format_output.cpp:
   2594 	* libpp/format_output.h:
   2595 	* pp/opannotate.cpp:
   2596 	* pp/opreport_options.cpp: minor tidy
   2597 
   2598 2003-07-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   2599 
   2600 	* gui/oprof_start.cpp: RTC mode was not working
   2601 
   2602 2003-07-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   2603 
   2604 	* gui/oprof_start_config.h:
   2605 	* gui/oprof_start_config.cpp: remove dead code, fix kernel_only read
   2606 
   2607 2003-07-16  John Levon  <levon (a] movementarian.org>
   2608 
   2609 	* utils/opcontrol: fix typo that was partly breaking
   2610 	CPU_TIMER_INT
   2611 
   2612 2003-07-16  John Levon  <levon (a] movementarian.org>
   2613 
   2614 	* gui/oprof_start.h:
   2615 	* gui/oprof_start.cpp: fixes for CPU_TIMER_INT
   2616 
   2617 2003-07-16  John Levon  <levon (a] movementarian.org>
   2618 
   2619 	* gui/ui/oprof_start.base.ui: remove add/remove event buttons,
   2620 	fix resize weirdness
   2621 
   2622 	* gui/oprof_start.h:
   2623 	* gui/oprof_start.cpp: remove add/remove event buttons, allow
   2624 	short-form event descriptions
   2625 
   2626 2003-07-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   2627 
   2628 	* gui/persistent_config.h: remove
   2629 	* gui/oprof_start.h:
   2630 	* gui/oprof_start.cpp: debug, remove dead code, works better now, see
   2631 	  TODO
   2632 
   2633 2003-07-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   2634 
   2635 	* gui/oprof_start.h:
   2636 	* gui/oprof_start.cpp:
   2637 	* gui/oprof_start_util.cpp: re-enable partially the gui, sorta of
   2638 	  working if cautioulsy used
   2639 
   2640 2003-07-15  John Levon  <levon (a] movementarian.org>
   2641 
   2642 	* gui/ui/oprof_start_base.ui:
   2643 	* gui/oprof_start.h:
   2644 	* gui/oprof_start.cpp: some steps towards fixing gui for
   2645 	the new events stuff
   2646 
   2647 2003-07-15  John Levon  <levon (a] movementarian.org>
   2648 
   2649 	* libop/op_events.h:
   2650 	* libop/op_events.c: add op_default_event
   2651 
   2652 	* utils/op_help.c: move default event stuff to libop,
   2653 	fix -c option
   2654 
   2655 2003-07-15  John Levon  <levon (a] movementarian.org>
   2656 
   2657 	* utils/op_help.c: fix default RTC event to be
   2658 	"RTC_INTERRUPTS"
   2659 
   2660 2003-07-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   2661 
   2662 	* utils/opcontrol
   2663 	* events/rtc..events: use RTC_INTERRUPTS as event name
   2664 
   2665 2003-07-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   2666 
   2667 	* daemon/opd_sample_files.c: C89 compile fix
   2668 
   2669 2003-07-15  John Levon  <levon (a] movementarian.org>
   2670 
   2671 	* utils/opcontrol:
   2672 	* utils/op_help.c: move the default event strings into
   2673 	op_help.c instead of in opcontrol
   2674 
   2675 2003-07-15  John Levon  <levon (a] movementarian.org>
   2676 
   2677 	* doc/oprofile.xml: document event name for timer interrupt
   2678 
   2679 	* daemon/opd_sample_files.c: handle CPU_TIMER_INT
   2680 
   2681 	* utils/op_help.c: fix a core dump
   2682 
   2683 2003-07-13  Philippe Elie  <phil.el (a] wanadoo.fr>
   2684 
   2685 	* daemon/opd_image.c: verbprintf() when starting reading buffer not
   2686 	  printf
   2687 
   2688 2003-07-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   2689 
   2690 	* from BRANCH_CALLGRAPH:
   2691 	* daemon/opd_image.c: printf -> verbprintf, fix comment
   2692 	* daemon/opd_kernel.c: kernel/module samples statistics was wrong
   2693 
   2694 	* daemon/opd_image.c:
   2695 	* daemon/opd_image.h:
   2696 	* daemon/opd_kernel.c:
   2697 	* daemon/opd_kernel.h: import cleanup from branch, mainly don't handle
   2698 	  samples in opd_kernel.c but return (creating if necessary) an
   2699 	  opd_image struct where the sample must go and let opd_image caller
   2700 	  in opd_image.c do sample insertion
   2701 
   2702 2003-07-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2703 
   2704 	* utils/opcontrol: shows basename $0 with --version
   2705 	* libpp/op_header.cpp: formating
   2706 	
   2707 2003-07-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2708 
   2709 	* utils/opcontrol: don't try to save current if the directory doesn't
   2710 	  exist
   2711 
   2712 2003-07-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2713 
   2714 	* libutil++/stream_util.h:
   2715 	* libutil++/stream_util.cpp: new file, io_state() save object
   2716 	* libutil++/Makefile.am: handle new file
   2717 	* libutil++/op_bfd.cpp:
   2718 	* pp/opreport.cpp:
   2719 	* libpp/op_header.cpp: use io_state
   2720 
   2721 2003-07-09  Philippe Elie  <phil.el (a] wanadoo.fr>
   2722 
   2723 	* module/x86/op_model_p4.c: reflect intel documentation fix.
   2724 
   2725 2003-07-08  Will Cohen  <wcohen (a] redhat.com>
   2726 
   2727 	* daemon/opd_kernel.c: Handle /proc/modules format.
   2728 	
   2729 2003-07-08  Will Cohen  <wcohen (a] redhat.com>
   2730 
   2731 	* doc/oprofile.xml:
   2732 	* configure.in: --enable-gcov option and documentation.
   2733 
   2734 2003-07-08  Will Cohen  <wcohen (a] redhat.com>
   2735 
   2736 	* utils/opcontrol: Correct P4 default event.
   2737 
   2738 2003-06-03  John Levon  <levon (a] movementarian.org>
   2739 
   2740 	* from BRANCH_CALLGRAPH
   2741 	* libdb/odb_hash.h:
   2742 	* libdb/db_manage.c:
   2743 	* libdb/db_insert.c: namespace safety
   2744 
   2745 	* libpp/partition_files.cpp:
   2746 	* libpp/profile.cpp: spacing, add a FIXME
   2747 
   2748 2003-07-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   2749 
   2750 	* pp/opannotate.cpp:
   2751 	* pp/opgprof.cpp:
   2752 	* pp/opreport.cpp: cleanup walking through multimap with a
   2753 	  pair<iterator, iterator>
   2754 
   2755 2003-07-05  Philippe Elie  <phil.el (a] wanadoo.fr>
   2756 
   2757 	* daemon/opd_image.c:
   2758 	* libdb/db_insert.c: 64 bits arch compile fix, thanks to Falk Hueffner
   2759 	 <falk (a] debian.org>
   2760 
   2761 2003-07-02  Philippe Elie  <phil.el (a] wanadoo.fr>
   2762 
   2763 	* pp/opreport.cpp: honor options::show_header
   2764 
   2765 2003-06-30  Graydon Hoare  <graydon (a] redhat.com>
   2766 
   2767 	* libpp/op_header.cpp: Handle printing multiple bitmask values.
   2768 
   2769 2003-06-19  John Levon  <levon (a] movementarian.org>
   2770 
   2771 	* doc/Makefile.am: fix make distcheck
   2772 
   2773 2003-06-18  John Levon  <levon (a] movementarian.org>
   2774 
   2775 	* pp/opannotate_options.c: hide the unhandled
   2776 	--base-dir option
   2777 
   2778 2003-06-18  John Levon  <levon (a] movementarian.org>
   2779 
   2780 	* pp/Makefile.am: don't build opdiff
   2781 
   2782 2003-06-17  Will Cohen  <wcohen (a] redhat.com>
   2783 
   2784 	* daemon/opd_cookie.h: Add s390 syscall value.
   2785 	
   2786 2003-06-17  John Levon  <levon (a] movementarian.org>
   2787 
   2788 	* utils/opcontrol: don't accept "-r" - it's too easy to typo
   2789 
   2790 2003-06-17  John Levon  <levon (a] movementarian.org>
   2791 
   2792 	* doc/srcdoc/Doxyfile: removed
   2793 
   2794 	* doc/srcdoc/Doxyfile.in:
   2795 	* configure.in: generate doxygen version nr. automatically
   2796 
   2797 2003-06-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   2798 
   2799 	* libdb/db_insert.cpp: missing initialization of error message on
   2800 	  error path
   2801 
   2802 2003-06-17  John Levon  <levon (a] movementarian.org>
   2803 
   2804 	* utils/opcontrol: accept some short forms for common
   2805 	operations
   2806 
   2807 2003-06-17  John Levon  <levon (a] movementarian.org>
   2808 
   2809 	* utils/opcontrol: accept --foo blah as well as
   2810 	--foo=blah
   2811 
   2812 2003-06-16  John Levon  <levon (a] movementarian.org>
   2813 
   2814 	* utils/opcontrol: "opcontrol" will show usage
   2815 	instead of doing nothing
   2816 
   2817 2003-06-16  Will Cohen  <wcohen (a] nc.rr.com>
   2818 
   2819 	* libabi/abi.cpp:
   2820 	* libabi/op_import.cpp: Add required include for cassert.
   2821 
   2822 2003-06-16  John Levon  <levon (a] movementarian.org>
   2823 
   2824 	* events/x86-64.hammer.unit_masks: remove some
   2825 	bogus FIXMEs
   2826 
   2827 2003-06-15  John Levon  <levon (a] movementarian.org>
   2828 
   2829 	* README: fix autogen.sh line
   2830 
   2831 2003-06-15  John Levon  <levon (a] movementarian.org>
   2832 
   2833 	* daemon/opd_image.c: 64 bit fixes
   2834 
   2835 2003-06-15  John Levon  <levon (a] movementarian.org>
   2836 
   2837 	* utils/op_help.c: c89 fix
   2838 
   2839 2003-06-15  John Levon  <levon (a] movementarian.org>
   2840 
   2841 	* daemon/opd_image.c: c89 fix
   2842 
   2843 2003-06-15  John Levon  <levon (a] movementarian.org>
   2844 
   2845 	* doc/oprofile.xml: document --event
   2846 
   2847 	* utils/opcontrol:
   2848 	* utils/op_help.c: allow unit mask, kernel, user to be
   2849 	optional. Verify not too many events are passed.
   2850 
   2851 2003-06-15  John Levon  <levon (a] movementarian.org>
   2852 
   2853 	* libop/op_cpu_type.c: fix nr_counters cpu type check
   2854 
   2855 	* utils/op_help: implement --check_events, event validation
   2856 	and counter allocation
   2857 
   2858 	* utils/opcontrol: use the above, implement --event=default
   2859 
   2860 2003-06-14  John Levon  <levon (a] movementarian.org>
   2861 
   2862 	* daemon/opd_image.c: fix a stupid error in my previous TGID patch
   2863 
   2864 2003-06-12  Graydon Hoare  <graydon (a] redhat.com>
   2865 
   2866 	* libop/op_events.c (op_check_events): Check bitmasks as well as 
   2867 	exclusive values, for unit masks.
   2868 
   2869 2003-06-12  John Levon  <levon (a] movementarian.org>
   2870 
   2871 	* daemon/opd_image.c: we were not handling a truncated
   2872 	TGID entry properly
   2873 
   2874 2003-06-12  John Levon  <levon (a] movementarian.org>
   2875 
   2876 	* libutil++/unique_storage.h: missing typename
   2877 
   2878 2003-06-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2879 
   2880 	* pp/opannotate_options.cpp: typo in option name
   2881 
   2882 2003-06-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2883 
   2884 	* libutil++/op_bfd.cpp: boring_symbol() new to get a better choice
   2885 	when eliminating symbol at identical vma
   2886 
   2887 2003-06-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2888 
   2889 	* utils/opcontrol: fix rtc option checking, bug added after 0.5.3,
   2890 	no big deal
   2891 
   2892 2003-06-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2893 
   2894 	* libregex/op_regex.cpp:
   2895 	* libpp/profile.cpp: compile fix, tree was broken by my previous patch
   2896 
   2897 2003-06-11  Jason Yeh  <jason.yeh (a] amd.com>
   2898 
   2899 	* events/i386.athlon.events: add CPU_CLK_UNHALTED
   2900 
   2901 	* utils/opcontrol: use the above by default
   2902 
   2903 	* events/x86-64.hammer.events:
   2904 	* events/x86-64.hammer.unit_masks: various fixes
   2905 
   2906 2003-06-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2907 
   2908 	* libpp/op_header.cpp:
   2909 	* libpp/profile.cpp:
   2910 	* libpp/profile_spec.cpp:
   2911 	* libpp/symbol_sort.cpp:
   2912 	* libregex/op_regex.cpp:
   2913 	* libutil++/op_bfd.cpp: use exception rather exit(EXIT_FAILURE) in
   2914 	library code
   2915 
   2916 2003-06-11  John Levon  <levon (a] movementarian.org>
   2917 
   2918 	* daemon/opd_image.c: future-proof the code handlers
   2919 
   2920 2003-06-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2921 
   2922 	* pp/opannotate.cpp: output_asm() avoid output when the set of selected
   2923 	symbols doesn't contain any samples
   2924 
   2925 2003-06-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   2926 
   2927 	* libutil++/unique_storage.h: we don't need to check if key is present
   2928 	  before trying to insert it
   2929 
   2930 2003-06-10  Philippe Elie  <phil.el (a] wanadoo.fr>
   2931 
   2932 	* libpp/name_storage.h: minor tidy
   2933 	* libutil++/unique_storage.h: small efficiency improvement
   2934 
   2935 2003-06-09  John Levon  <levon (a] movementarian.org>
   2936 
   2937 	* pp/Makefile.am:
   2938 	* libutil/Makefile.am: fix make distcheck
   2939 
   2940 2003-06-09  John Levon  <levon (a] movementarian.org>
   2941 
   2942 	* libpp/opp_symbol.h: rename to ...
   2943 
   2944 	* libpp/symbol.h: ... this
   2945 
   2946 	* libpp/Makefile.am:
   2947 	* libpp/format_output.h:
   2948 	* libpp/format_output.cpp:
   2949 	* libpp/profile_container.h:
   2950 	* libpp/profile_container.cpp:
   2951 	* libpp/sample_container.h:
   2952 	* libpp/sample_container.cpp:
   2953 	* libpp/symbol_functors.h:
   2954 	* libpp/symbol_sort.cpp: fix up from above and some header
   2955 	cleanups
   2956 
   2957 2003-06-09  John Levon  <levon (a] movementarian.org>
   2958 
   2959 	* libpp/profile.h: std::pair not pair
   2960 
   2961 2003-06-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   2962 
   2963 	* libpp/profile.cpp: don't underflow start offset when the vma range
   2964 	  is unknown
   2965 	* pp/opreport.cpp: use samples_range() not samples_range(0, ~0)
   2966 
   2967 2003-06-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   2968 
   2969 	* libpp/profile.h:
   2970 	* libpp/profile.cpp: replace accumulate_samples() API by an iterator
   2971 	  interface
   2972 	* libpp/profile_container.h:
   2973 	* libpp/profilecontainer.cpp:
   2974 	* pp/opreport.cpp: use new API
   2975 
   2976 2003-06-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   2977 
   2978 	* include/sstream: replace old version by the once shipped with
   2979 	  2.95.3, seekg() in the old was not working
   2980 
   2981 2003-06-08  John Levon  <levon (a] movementarian.org>
   2982 
   2983 	* libpp/name_storage.h: don't need to define the tag structs
   2984 
   2985 	* libutil++/unique_storage.h: fix the comments,
   2986 	make get() public
   2987 
   2988 2003-06-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   2989 
   2990 	* libpp/profile_container.cpp:
   2991 	* libutil++/string_manip.cpp: gcc 2.91.66 fix
   2992 
   2993 2003-06-08  John Levon  <levon (a] movementarian.org>
   2994 
   2995 	* libpp/name_storage.h:
   2996 	* libpp/name_storage.cpp:
   2997 	* libpp/opp_symbol.h:
   2998 	* libpp/profile_container.cpp:
   2999 	* libpp/symbol_functors.cpp:
   3000 	* libutil++/unique_storage.h: don't derive from I()
   3001 	at all for id_value, it's not needed. Hide .id and
   3002 	provide operator<(), operator==(), operator!=(), and
   3003 	set()
   3004 
   3005 2003-06-08  John Levon  <levon (a] movementarian.org>
   3006 
   3007 	* libutil++/unique_storage.h: make some of
   3008 	id_value only visible to unique_storage.
   3009 
   3010 2003-06-08  John Levon  <levon (a] movementarian.org>
   3011 
   3012 	* libpp/name_storage.h:
   3013 	* libutil++/unique_storage.h: move the ID class
   3014 	into unique_storage, and make it derive from the
   3015 	template parameter, to give simpler type safe support
   3016 
   3017 2003-06-08  John Levon  <levon (a] movementarian.org>
   3018 
   3019 	* libutil++/Makefile.am:
   3020 	* libutil++/unique_storage.h: add new template for
   3021 	unique storage of values
   3022 
   3023 	* libpp/name_storage.h:
   3024 	* libpp/name_storage.cpp: use it
   3025 
   3026 2003-06-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   3027 
   3028 	* libpp/profile_container.cpp: fix order of file output with opannotate
   3029 	--source to be consistent with other tools
   3030 
   3031 2003-06-07  John Levon  <levon (a] movementarian.org>
   3032 
   3033 	* libpp/profile_container.cpp: fix operator<
   3034 
   3035 2003-06-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   3036 
   3037 	* libpp/profile.h:
   3038 	* libpp/profile.cpp: change API to walk through vma with non zero
   3039 	samples count rather looking for all vma. This is not very clean, an
   3040 	iterator interface will be perhaps a better idea. Measures shows it's
   3041 	to do it so for now I apply it.
   3042 	* libpp/profile_container.cpp: update according to above change.
   3043 
   3044 2003-06-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   3045 
   3046 	* libpp/profile_container.h:
   3047 	* libpp/profile_container.cpp:
   3048 	* libpp/symbol_container.h:
   3049 	* libpp/symbol_container.cpp: remove dead api
   3050 	  find_symbol(string symbol_name)
   3051 
   3052 2003-06-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   3053 
   3054 	* libpp/name_storage.h:
   3055 	* libpp/name_storage.cpp:
   3056 	* libpp/profile_container.cpp:
   3057 	* libpp/profile_container.h:
   3058 	* libpp/sample_container.h:
   3059 	* libpp/sample_container.cpp:
   3060 	* libpp/symbol_container.h:
   3061 	* libpp/symbol_container.cpp:
   3062 	* pp/opannotate.cpp: replace some use of string filename by
   3063 	  debug_name_id
   3064 
   3065 2003-06-05  John Levon  <levon (a] movementarian.org>
   3066 
   3067 	* daemon/Makefile.am:
   3068 	* daemon/opd_kernel.c:
   3069 	* daemon/p_module.h: remove p_module.h, unused
   3070 
   3071 	* daemon/opd_cookie.h: use __NR_lookup_dcookie and
   3072 	use our definitions only if it's not defined
   3073 
   3074 	* daemon/opd_image.c:
   3075 	* daemon/opd_kernel.c:
   3076 	* daemon/opd_sample_files.c:
   3077 	* daemon/oprofiled.c: pedantry
   3078 
   3079 	* libabi/op_import.cpp:
   3080 	* libabi/abi_test.cpp: fix build from odb change
   3081 
   3082 	* libop/op_config.h: move NR_CPUS to ...
   3083 
   3084 	* libop/op_config_24.h: ... here
   3085 
   3086 	* libop/op_hw_config.h: remove unused OP_COUNT_MAX
   3087 
   3088 2003-06-03  Philippe Elie  <phil.el (a] wanadoo.fr>
   3089 
   3090 	* libpp/op_header.cpp:
   3091 	* libpp/profile.cpp:
   3092 	* dae/opd_proc.c:
   3093 	* dae/opd_sample_files.c:
   3094 	* daemon/opd_image.c:
   3095 	* daemon/opd_sample_files.c:
   3096 	* libdb/odb_hash.h:
   3097 	* libdb/db_insert.c:
   3098 	* libdb/db_manage.c:
   3099 	* libdb/db_test.c: error message is now a field of a samples_odb_t
   3100 
   3101 2003-06-03  John Levon  <levon (a] movementarian.org>
   3102 
   3103 	* libutil++/child_reader.cpp:
   3104 	* libabi/abi.cpp:
   3105 	* libabi/abi.h:
   3106 	* libabi/abi_test.cpp:
   3107 	* libabi/op_api.h:
   3108 	* libabi/op_abi.cpp:
   3109 	* libabi/op_import.cpp: pedantry, remove unused code
   3110 
   3111 2003-06-01  Philippe Elie  <phil.el (a] wanadoo.fr>
   3112 
   3113 	* dae/oprofiled.c:
   3114 	* libop/oprofiled.c:
   3115 	* libop/op_cpu_type.c:
   3116 	* module/oprofile.c:
   3117 	* module/oprofile.h:
   3118 	* pp/opdiff.cpp: more static data and function
   3119 
   3120 2003-05-31  Philippe Elie  <phil.el (a] wanadoo.fr>
   3121 
   3122 	* gui/oprof_start_util.h:
   3123 	* libdb/db_stat.c:
   3124 	* libdb/odb_hash.h:
   3125 	* libpp/format_output.h:
   3126 	* libpp/locate_image.h:
   3127 	* libpp/name_storage.h:
   3128 	* libpp/partition_files.h:
   3129 	* libpp/profile.h:
   3130 	* libutil++/op_bfd.h:
   3131 	* libutil++/op_bfd.cpp: improve doxygen comment
   3132 
   3133 2003-05-31  Philippe Elie  <phil.el (a] wanadoo.fr>
   3134 
   3135 	* configure.in: use AC_DEFINE_UNQUOTED() to define version string
   3136 	  in config.h not in version-1.h
   3137 	* Makefile.am: distclean-local: is no longer used
   3138 	* version-1.h.in: delete
   3139 	* libutil/op_version.h:
   3140 	* libutil/op_version.c: new file: package version output
   3141 	* libutil/Makefile.am:
   3142 	* dae/oprofiled.c:
   3143 	* daemon/oprofiled.c:
   3144 	* gui/oprof_start.h:
   3145 	* libop/op_events.c:
   3146 	* libopt++/popt_options.cpp:
   3147 	* libregex/demangle_sybol.cpp:
   3148 	* module/oprofile.c:
   3149 	* utils/op_help.c: tweak # include according
   3150 
   3151 2003-05-30  Dan Zink  <Dan.Zink (a] hp.com>
   3152 
   3153 	* module/x86/op_apic.c: really disable the apic if it was disabled
   3154 
   3155 2003-05-29  John Levon  <levon (a] movementarian.org>
   3156 
   3157 	* utils/opcontrol: don't allow --rtc-value if not RTC mode
   3158 
   3159 2003-05-27  John Levon  <levon (a] movementarian.org>
   3160 
   3161 	* libutil++/string_manip.h: add <stdexcept>
   3162 
   3163 	* pp/opannotate.cpp: use '\n' not endl
   3164 
   3165 	* pp/opreport.cpp: untie cout
   3166 
   3167 2003-05-29  Philippe Elie  <phil.el (a] wanadoo.fr>
   3168 
   3169 	* merge with pp-interface-branch: following ChangeLog was unmerged
   3170 	  to branch
   3171 
   3172 	2003-05-27  John Levon  <levon (a] movementarian.org>
   3173 
   3174 	* configure.in: oprofile 0.5.3 is released, back to
   3175 	0.6cvs
   3176 
   3177 	2003-05-26  John Levon  <levon (a] movementarian.org>
   3178 
   3179 	* doc/oprofile.xml: update docs for --no-vmlinux
   3180 
   3181 	2003-05-26  John Levon  <levon (a] movementarian.org>
   3182 
   3183 	* libop/op_interface_25.h:
   3184 	* daemon/opd_image.c: handle tgid for future
   3185 	compatibility, fix compile on older gccs
   3186 
   3187 	2003-05-26  John Levon  <levon (a] movementarian.org>
   3188 
   3189 	* libop/op_interface_25.h: add LAST_CODE
   3190 
   3191 	* daemon/opd_stats.h:
   3192 	* daemon/opd_stats.c: count short reads of
   3193 	buffer and unplaceable samples
   3194 
   3195 	* daemon/opd_image.c: rewrite buffer parsing
   3196 	code, handle window where we can't place a
   3197 	sample
   3198 
   3199 	2003-05-26  John Levon  <levon (a] movementarian.org>
   3200 
   3201 	* libutil++/utility.h: fix typo
   3202 
   3203 	* utils/opcontrol: fix typo
   3204 
   3205 	2003-05-16  John Levon  <levon (a] movementarian.org>
   3206 
   3207 	* pp/counter_profile.cpp: remove bogus cpu speed
   3208 	consistency check
   3209 
   3210 	2003-05-09  John Levon  <levon (a] movementarian.org>
   3211 
   3212 	* m4/Makefile.am:
   3213 	* m4/compileroption.m4: add a generalised compiler option
   3214 	tester
   3215 
   3216 	* configure.in: use it, add -fno-common
   3217 
   3218 	2003-05-09  John Levon  <levon (a] movementarian.org>
   3219 
   3220 	* daemon/oprofiled.c:
   3221 	* dae/oprofiled.c: remove duplicate declaration found
   3222 	via -fno-common
   3223 
   3224 	2003-05-04  John Levon  <levon (a] movementarian.org>
   3225 
   3226 	* doc/oprofile.xml: fix validation errors from xmllint --valid
   3227 	
   3228 
   3229 2003-05-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   3230 
   3231 	* libpp/profile_spec.cpp: make image:/path/to:image working
   3232 
   3233 2003-05-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   3234 
   3235 	* libutil++/string_manip.h:
   3236 	* libutil++/string_manip.cpp: specialize
   3237 	  lexical_cast_no_ws<unsigned int> to accept hexadecimal input
   3238 
   3239 	* pp/common_option.cpp: missing << endl
   3240 
   3241 2003-05-27  Philippe Elie  <phil.el (a] wanadoo.fr>
   3242 
   3243 	* doc/oprofile.xml: update example in "Interpreting profiling results"
   3244 	section
   3245 
   3246 2003-05-26  John Levon  <levon (a] movementarian.org>
   3247 
   3248 	* doc/oprofile.xml: add new pp tools options
   3249 
   3250 2003-05-26  John Levon  <levon (a] movementarian.org>
   3251 
   3252 	* doc/opreport.1.in:
   3253 	* doc/opgprof.1.in:
   3254 	* doc/opannotate.1.in:
   3255 	* doc/op_help.1.in: complete
   3256 
   3257 2003-05-26  John Levon  <levon (a] movementarian.org>
   3258 
   3259 	* configure.in:
   3260 	* doc/Makefile.am:
   3261 	* doc/oprofile.1.in:
   3262 	* doc/op_help.1.in:
   3263 	* doc/opcontrol.1.in:
   3264 	* doc/opreport.1.in:
   3265 	* doc/opannotate.1.in:
   3266 	* doc/opgprof.1.in: re-organise and add manpages
   3267 
   3268 2003-05-26  John Levon  <levon (a] movementarian.org>
   3269 
   3270 	* doc/oprofile.xml: start to document the pp interface
   3271 
   3272 2003-05-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   3273 
   3274 	* pp/opreport.cpp: remove automatic switch to --symbols mode
   3275 
   3276 2003-05-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   3277 
   3278 	* libpp/symbol_sort.h:
   3279 	* pp/opannotate_options.cpp:
   3280 	* pp/opgprof_options.cpp:
   3281 	* pp/opreport_options.cpp: handle meaningless options combinations
   3282 
   3283 2003-05-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   3284 
   3285 	* pp/opgprof_options.cpp: no need to use unmergeable_profile here
   3286 
   3287 2003-05-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   3288 
   3289 	* events/i386.piii.unit_masks: tweak comment, change default unit mask
   3290 	  for kni instruction to 0 and type to exclusive
   3291 
   3292 2003-05-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   3293 
   3294 	* libpp/profile_container.cpp: thinko
   3295 	* pp/opreport.cpp: typo
   3296 
   3297 2003-05-25  John Levon  <levon (a] movementarian.org>
   3298 
   3299 	* libopt++/popt_options.h:
   3300 	* libopt++/popt_options.cpp: obvious cleanup,
   3301 	remove some dead code
   3302 
   3303 2003-05-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   3304 
   3305 	* libpp/format_flags: cf_image_name new column_flags flag
   3306 	* libpp/profile_container.cpp: use above flag. Don't compare app_name
   3307 	  by string but id
   3308 	* pp/opreport.cpp: hide image_name when un-necessary
   3309 
   3310 2003-05-24  Philippe Elie  <phil.el (a] wanadoo.fr>
   3311 
   3312 	* doc/srcdoc/Doxyfile:
   3313 	* libpp/profile.h:
   3314 	* libpp/profile_container.h:
   3315 	* libutil++/utility.h: remove gcc 2.91 noncopyable as empty base class
   3316 	 work-around
   3317 
   3318 2003-05-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   3319 
   3320 	* configure.in: do early check of libiberty
   3321 
   3322 	* libpp/symbol_sort.cpp: 2.91 compile fix
   3323 
   3324 2003-05-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   3325 
   3326 	* libutil++/child_reader.h: minor #include fix
   3327 
   3328 2003-05-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   3329 
   3330 	* libpp/name_storage.cpp: debug_name_storage::name() 
   3331 	  return an empty string when for zero id to avoid exception
   3332 
   3333 2003-05-21  Philippe Elie  <phil.el (a] wanadoo.fr>
   3334 
   3335 	* libpp/profile.cpp:
   3336 	* libpp/op_header.h:
   3337 	* libpp/op_header.cpp: when sample file differ output the sample
   3338 	  filename
   3339 
   3340 	* pp/opannotate.cpp: remove spurious output
   3341 
   3342 	* */Makefile.am:
   3343 	* configure.in: handle our own OP_CFLAGS, OP_CXXFLAGS to let user
   3344 	  free to use make CFLAGS=
   3345 
   3346 2003-05-20  Philippe Elie  <phil.el (a] wanadoo.fr>
   3347 
   3348 	* libpp/profile_spec.h:
   3349 	* libpp/profile_spec.cpp: remove lib_image_exclude, use image_exclude
   3350 	  instead. match() Handle image exclusion.
   3351 
   3352 	* libregex/stl.pat.in: FIXME
   3353 
   3354 	* libutil++/string_manip.h: compile fix
   3355 
   3356 2003-05-19  John Levon  <levon (a] movementarian.org>
   3357 
   3358 	* libutil++/comma_list.h:
   3359 	* libpp/filename_spec.cpp:
   3360 	* libutil++/string_manip.h:
   3361 	* libutil++/generic_spec.h: rename strict_convert<>
   3362 	to lexical_cast_no_ws<>
   3363 
   3364 2003-05-19  John Levon  <levon (a] movementarian.org>
   3365 
   3366 	* libutil++/generic_spec.h: move strict_convert<> to...
   3367 
   3368 	* libutil++/string_manip.h: ...here
   3369 
   3370 2003-05-19  John Levon  <levon (a] movementarian.org>
   3371 
   3372 	* libutil++/generic_spec.h: comma_list isn't a friend
   3373 	any more
   3374 
   3375 	* libutil++/comma_list.h: use generic_spec<>::match()
   3376 	directly
   3377 
   3378 2003-05-19  John Levon  <levon (a] movementarian.org>
   3379 
   3380 	* libpp/name_storage.h: s/name_map/stored_names/, it's not
   3381 	a map any more.
   3382 
   3383 2003-05-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   3384 
   3385 	* libregex/mangled-name.txt:
   3386 	* libregex/stl.pat.in: partial handling of _Identity<> and
   3387 	  _Select1st<>, pattern fail if type are too complex
   3388 
   3389 2003-05-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   3390 
   3391 	* libpp/format_output.cpp: small cleanup
   3392 
   3393 	* libpp/name_storage.h:
   3394 	* libpp/name_storage.cpp: ensure type safety by providing distinct
   3395 	  type identifier for each name_storage based container
   3396 
   3397 	* libpp/profile_container.cpp:
   3398 	* libpp/sample_container.cpp:
   3399 	* libpp/symbol_functors.cpp:
   3400 	* libpp/symbol_sort.cpp:
   3401 	* libpp/opp_symbol.h: use the name identifier api
   3402 
   3403 	* libpp/op_header.cpp: 
   3404 	* libpp/partition_files.cpp: use a set<string> not a name_storage
   3405 
   3406 	* libpp/format_output.cpp: small cleanup
   3407 
   3408 
   3409 2003-05-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   3410 
   3411 	* libpp/partition_files.cpp: merge partition entry when necessary
   3412 	  fixing a corner case when a binary can be a dependent or a primary
   3413 	  image and was not merged
   3414 
   3415 2003-05-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   3416 
   3417 	* pp/opreport_options.cpp:
   3418 	* pp/opannotate_options.cpp: remove conflicting options shortcut
   3419 
   3420 2003-05-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   3421 
   3422 	* libregex/stl.pat.in: add list<T>::{const_}+iterator
   3423 
   3424 2003-05-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   3425 
   3426 	* libpp/name_storage.cpp: basename() return an empty string for nil id
   3427 
   3428 2003-05-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   3429 
   3430 	* libutil++/op_bfd.cpp: get_linenr() init linenr to zero
   3431 
   3432 	* libpp/name_storage.cpp: don't use id zero
   3433 	* libpp/opp_symbol.h: now we use id and not string we must provide
   3434 	  default ctor to initialize the id
   3435 	* libpp/profile_container.cpp: init debug info entry only if
   3436 	  get_linenr() succeed
   3437 
   3438 2003-05-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   3439 
   3440 	* libdb/db_manage.c: better handling of zero sample file size when
   3441 	  opening in read only mode
   3442 
   3443 	* module/x86/op_nmi.c: printk format fix
   3444 
   3445 2003-05-17  John Levon  <levon (a] movementarian.org>
   3446 
   3447 	* pp/opannotate_option.cpp:
   3448 	* pp/opreport_options.cpp: command line changes
   3449 
   3450 2003-05-17  John Levon  <levon (a] movementarian.org>
   3451 
   3452 	* libpp/name_storage.h:
   3453 	* libpp/name_storage.cpp: add present()
   3454 
   3455 	* libpp/op_header.cpp:
   3456 	* libpp/partition_files.cpp: use a name store
   3457 	to track what we've warned about, and clean up
   3458 	the warnings a bit
   3459 
   3460 2003-05-16  John Levon  <levon (a] movementarian.org>
   3461 
   3462 	* libutil++/op_bfd.h:
   3463 	* libutil++/op_bfd.cpp: expose anonymous symbols
   3464 	to the world as "??sectionname". Useful for .plt
   3465 	and .fini, which are quite common.
   3466 
   3467 	* libpp/name_storage.cpp: demangle anonymous symbols
   3468 	nicely.
   3469 
   3470 2003-05-16  John Levon  <levon (a] movementarian.org>
   3471 
   3472 	* libpp/symbol_sort.cpp: fix image-sorting
   3473 
   3474 2003-05-16  John Levon  <levon (a] movementarian.org>
   3475 
   3476 	* libpp/name_storage.h:
   3477 	* libpp/name_storage.cpp: make ID be per-container
   3478 
   3479 2003-05-16  John Levon  <levon (a] movementarian.org>
   3480 
   3481 	* libpp/name_storage.h:
   3482 	* libpp/name_storage.cpp: merge processed names
   3483 	into one string, remove the boolean
   3484 
   3485 2003-05-16  John Levon  <levon (a] movementarian.org>
   3486 
   3487 	* libpp/name_storage.h:
   3488 	* libpp/name_storage.cpp: whoops, use string
   3489 	not stored_name for the ID map
   3490 
   3491 2003-05-16  John Levon  <levon (a] movementarian.org>
   3492 
   3493 	* libpp/name_storage.h:
   3494 	* libpp/name_storage.cpp: split into three
   3495 	stores for debug filenames, symbols, and images
   3496 
   3497 	* libpp/format_output.cpp:
   3498 	* libpp/profile_container.cpp:
   3499 	* libpp/sample_container.cpp:
   3500 	* libpp/symbol_container.cpp:
   3501 	* libpp/symbol_sort.cpp:
   3502 	* pp/opannotate.cpp: changes from above
   3503 
   3504 2003-05-16  John Levon  <levon (a] movementarian.org>
   3505 
   3506 	* libpp/Makefile.am:
   3507 	* libpp/name_storage.h:
   3508 	* libpp/name_storage.cpp: add shared storage
   3509 	and caching of symbol and file names
   3510 
   3511 	* libpp/opp_symbol.h:
   3512 	* libpp/format_output.cpp:
   3513 	* libpp/profile_container.cpp:
   3514 	* libpp/sample_container.cpp:
   3515 	* libpp/symbol_container.cpp:
   3516 	* libpp/symbol_container.h:
   3517 	* libpp/symbol_sort.cpp:
   3518 	* libpp/symbol_sort.h:
   3519 	* pp/opannotate.cpp:
   3520 	* pp/opreport.cpp: use it
   3521 
   3522 	* pp/opgprof_options.cpp: add unused demangle
   3523 	options to hack-fix the build
   3524 
   3525 2003-05-16  John Levon  <levon (a] movementarian.org>
   3526 
   3527 	* libpp/symbol_sort.cpp: fix --sort debug
   3528 
   3529 2003-05-16  John Levon  <levon (a] movementarian.org>
   3530 
   3531 	* libutil++/op_bfd.h:
   3532 	* libutil++/op_bfd.cpp: remove have_debug_info()
   3533 
   3534 2003-05-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   3535 
   3536 	* libpp/op_header.cpp: remove cpu_speed checking
   3537 
   3538 	* libutil++/op_bfd.h:
   3539 	* libutil++/op_bfd.cpp: bail out in get_linenr() if binary doesn't
   3540 	  contain any debug info. Speed up my test case opreport --debug-info
   3541 	  -l by 25
   3542 
   3543 2003-05-16  John Levon  <levon (a] movementarian.org>
   3544 
   3545 	* libutil++/op_bfd.cpp: clean up interesting_symbol
   3546 	a bit
   3547 
   3548 2003-05-16  John Levon  <levon (a] movementarian.org>
   3549 
   3550 	* libutil++/op_bfd.cpp: make sure linenr is
   3551 	always set to something
   3552 
   3553 	* libpp/opp_symbol.h: linenr should be unsigned
   3554 
   3555 	* libpp/profile_container.cpp: remove some unneeded
   3556 	copies
   3557 	
   3558 2003-05-16  John Levon  <levon (a] movementarian.org>
   3559 
   3560 	* pp/opannotate.cpp: small renaming
   3561 
   3562 2003-05-15  John Levon  <levon (a] movementarian.org>
   3563 
   3564 	* libpp/symbol_container.h:
   3565 	* libpp/symbol_container.cpp: add begin(), end(),
   3566 	remove symbols_by_count()
   3567 
   3568 	* libpp/profile_container.cpp: use symbol container
   3569 	iterator directly in select_symbols()
   3570 
   3571 2003-05-15  John Levon  <levon (a] movementarian.org>
   3572 
   3573 	* libpp/format_output.h:
   3574 	* libpp/format_output.cpp:
   3575 	* libpp/profile_container.h:
   3576 	* libpp/profile_container.cpp:
   3577 	* libpp/symbol_container.h:
   3578 	* libpp/symbol_container.cpp:
   3579 	* libpp/symbol_sort.h:
   3580 	* libpp/symbol_sort.cpp:
   3581 	* pp/opannotate.cpp:
   3582 	* pp/opreport.cpp:
   3583 	* pp/opgprof.cpp: move symbol_collection typedef
   3584 	  into global namespace, and use consistently
   3585 
   3586 2003-05-15  John Levon  <levon (a] movementarian.org>
   3587 
   3588 	* libpp/format_output.h:
   3589 	* libpp/format_output.cpp: add vma_format_64bit(),
   3590 	remove bool parameter from output()
   3591 
   3592 	* pp/opreport.cpp: change from above, refactor flags
   3593 	code into get_format_flags() helper
   3594 
   3595 2003-05-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   3596 
   3597 	* libpp/format_output.h:
   3598 	* libpp/format_output.cpp:
   3599 	* libpp/symbol_sort.h:
   3600 	* libpp/symbol_sort.cpp: handle reverse sort in sorting not in output
   3601 	* pp/opannotate.cpp:
   3602 	* pp/opreport.cpp: update according
   3603 
   3604 2003-05-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   3605 
   3606 	* libpp/symbol_sort.h:
   3607 	* libpp/symbol_sort.cpp: handle sort order as specified on command line
   3608 
   3609 	* pp/opgprof.cpp: sort symbol is not necessary for gprof
   3610 	* pp/opreport.cpp:
   3611 	* pp/opreport_options.cpp:
   3612 	* pp/opannotate.cpp: use new sort API
   3613 
   3614 2003-05-12  John Levon  <levon (a] movementarian.org>
   3615 
   3616 	* libpp/symbol_sort.h:
   3617 	* libpp/symbol_sort.cpp: partial implementation
   3618 	of other sort options
   3619 
   3620 2003-05-12  John Levon  <levon (a] movementarian.org>
   3621 
   3622 	* libpp/Makefile.am:
   3623 	* libpp/symbol_sort.h:
   3624 	* libpp/symbol_sort.cpp: add sorting code
   3625 
   3626 	* symbol_functors.h: move some less() into
   3627 	symbol_sort.cpp
   3628 
   3629 	* libpp/profile_container.h:
   3630 	* libpp/profile_container.cpp: don't pass in
   3631 	sort option to select_symbols(), do it in caller
   3632 
   3633 	* pp/opannotate.cpp:
   3634 	* pp/opgprof.cpp:
   3635 	* pp/opreport.cpp:
   3636 	* pp/opreport_options.h:
   3637 	* pp/opreport_options.cpp: from the above
   3638 
   3639 2003-05-12  John Levon  <levon (a] movementarian.org>
   3640 
   3641 	* format_flags.h: remove vma64_p. Add column_flags
   3642 
   3643 	* libpp/profile_container.h:
   3644 	* libpp/profile_container.cpp: pass in a struct
   3645 	to select_symbols. Generate hints for 64-bit VMA
   3646 	and multiple apps in the profile.
   3647 
   3648 	* pp/opannotate.cpp:
   3649 	* pp/opgprof.cpp:
   3650 	* pp/opreport.cpp: use the above
   3651 
   3652 2003-05-12  John Levon  <levon (a] movementarian.org>
   3653 
   3654 	* libpp/format_output.cpp:
   3655 	* libpp/format_flags.h:
   3656 	* pp/opreport.cpp: trivial renaming of flags
   3657 
   3658 2003-05-11  John Levon  <levon (a] movementarian.org>
   3659 
   3660 	* libpp/format_output.cpp:
   3661 	* libpp/format_flags.h: better output for
   3662 	the default of short filenames
   3663 
   3664 2003-05-11  John Levon  <levon (a] movementarian.org>
   3665 
   3666 	* pp/opreport.cpp: improve the app/image name column
   3667 	showing a bit
   3668 
   3669 2003-05-11  John Levon  <levon (a] movementarian.org>
   3670 
   3671 	* pp/opreport.cpp: default to -l if we were just
   3672 	going to show one image summary.
   3673 
   3674 2003-05-11  John Levon  <levon (a] movementarian.org>
   3675 
   3676 	* pp/opreport.cpp: move some code around that
   3677 	outputs the image summaries
   3678 
   3679 2003-05-11  John Levon  <levon (a] movementarian.org>
   3680 
   3681 	* libpp/format_output.h:
   3682 	* libpp/format_output.cpp:
   3683 	* pp/opreport.cpp:
   3684 	* pp/opreport_options.h:
   3685 	* pp/opreport_options.cpp: s/--short-filename/--long-filenames/
   3686 
   3687 2003-05-11  John Levon  <levon (a] movementarian.org>
   3688 
   3689 	* libpp/profile_spec.h:
   3690 	* libpp/profile_spec.cpp: take exclude_dependent not
   3691 	include_dependent
   3692 
   3693 	* pp/opannotate_options.c:
   3694 	* pp/opgprof_options.c:
   3695 	* pp/opreport_options.h:
   3696 	* pp/opreport_options.c: change to use exclude_dependent,
   3697 	remove --hide-dependent
   3698 
   3699 2003-05-11  John Levon  <levon (a] movementarian.org>
   3700 
   3701 	* locate_images.h:
   3702 	* locate_images.cpp: extra_images can now use
   3703 	relative paths for its search dirs. Move most of 
   3704 	the warnings out of find_image_path, and make it
   3705 	also handle relative paths. Return the file
   3706 	even if it wasn't readable.
   3707 
   3708 	* libpp/partition_files.cpp: give warnings when
   3709 	necessary.
   3710 
   3711 	* libpp/profile_spec.h:
   3712 	* libpp/profile_spec.cpp: handle relative paths
   3713 	inside image specs, as stated in pp_interface; also
   3714 	use the extra images search path for resolution.
   3715 
   3716 	* pp/opannotate_options.cpp:
   3717 	* pp/opreport_options.cpp:
   3718 	* pp/opgprof_options.cpp: changes from above
   3719 
   3720 2003-05-11  John Levon  <levon (a] movementarian.org>
   3721 
   3722 	* libpp/format_flags.h: source doc improvements
   3723 
   3724 2003-05-11  John Levon  <levon (a] movementarian.org>
   3725 
   3726 	* libpp/opp_symbol.h: move vma64_p to ...
   3727 
   3728 	* libpp/format_flags.h: ... here
   3729 
   3730 2003-05-11  John Levon  <levon (a] movementarian.org>
   3731 
   3732 	* libpp/Makefile.am:
   3733 	* libpp/outsymbflags.h:
   3734 	* libpp/format_flags.h:
   3735 	* libpp/profile_container.h:
   3736 	* libpp/format_output.h:
   3737 	* libpp/format_output.cpp:
   3738 	* pp/opreport.cpp: rename outsymbflags to format_flags
   3739 
   3740 2003-05-11  John Levon  <levon (a] movementarian.org>
   3741 
   3742 	* profile_container.h:
   3743 	* profile_container.cpp:
   3744 	* opannotate.cpp: clean up select_filename() in a
   3745 	similar fashion
   3746 
   3747 2003-05-11  John Levon  <levon (a] movementarian.org>
   3748 
   3749 	* libpp/profile_container.h:
   3750 	* libpp/profile_container.cpp:
   3751 	* pp/opreport.cpp:
   3752 	* pp/opannotate.cpp:
   3753 	* pp/opgprof.cpp: another select_symbols() API cleanup
   3754 
   3755 2003-05-11  John Levon  <levon (a] movementarian.org>
   3756 
   3757 	* pp/opgprof.cpp: use select_symbols so we can
   3758 	handle --threshold
   3759 
   3760 2003-05-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   3761 
   3762 	* pp/opannotate.cpp: use threshold for source output
   3763 
   3764 2003-05-11  John Levon  <levon (a] movementarian.org>
   3765 
   3766 	* pp/common_option.h:
   3767 	* pp/common_option.cpp:
   3768 	* pp/opannotate_options.cpp:
   3769 	* pp/opreport_options.cpp: make --threshold
   3770 	be a common option.
   3771 
   3772 2003-05-11  John Levon  <levon (a] movementarian.org>
   3773 
   3774 	* pp/profile_container.h:
   3775 	* pp/profile_container.cpp:
   3776 	* pp/opannotate.cpp:
   3777 	* pp/opreport.cpp: clean up select_symbols
   3778 	interface
   3779 
   3780 2003-05-11  John Levon  <levon (a] movementarian.org>
   3781 
   3782 	* pp/opreport.cpp: make --threshold work for
   3783 	image summaries too
   3784 
   3785 2003-05-11  John Levon  <levon (a] movementarian.org>
   3786 
   3787 	* pp/opreport_options.cpp: fix --threshold
   3788 	description to match reality
   3789 
   3790 2003-05-11  John Levon  <levon (a] movementarian.org>
   3791 
   3792 	* libpp/partition_files.h:
   3793 	* libpp/partition_files.cpp:
   3794 	* pp/opannotate_options.cpp:
   3795 	* pp/opgprof_options.cpp:
   3796 	* pp/opreport.cpp:
   3797 	* pp/opreport_options.cpp: rename merge_by members
   3798 
   3799 2003-05-11  John Levon  <levon (a] movementarian.org>
   3800 
   3801 	* pp/opreport.cpp: add some logic to not output
   3802 	duplicate lines for dep images when we've already
   3803 	shown all the possible details in the main image summary
   3804 
   3805 2003-05-11  John Levon  <levon (a] movementarian.org>
   3806 
   3807 	* pp/common_option.h: use std::
   3808 
   3809 2003-05-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   3810 
   3811 	* pp/opreport_options.cpp: move handle_threshold()
   3812 	* pp/common_option.h:
   3813 	* pp/common_option.cpp: here
   3814 	* pp/opannotate_options.h:
   3815 	* pp/opannotate_options.cpp:
   3816 	* pp/opannotate.cpp: handle --threshold
   3817 
   3818 2003-05-10  John Levon  <levon (a] movementarian.org>
   3819 
   3820 	* libop/op_mangle.h:
   3821 	* libop/op_mangle.c: use a temp struct for
   3822 	passing the mangle parameters with a set of
   3823 	flags.
   3824 
   3825 	* dae/opd_sample_files.c:
   3826 	* daemon/opd_sample_files.c: use it
   3827 
   3828 2003-05-10  John Levon  <levon (a] movementarian.org>
   3829 
   3830 	* Makefile.am:
   3831 	* HACKING:
   3832 	* libop++/:
   3833 	* pp/Makefile.am:
   3834 	* libpp/Makefile.am:
   3835 	* libpp/op_header.h:
   3836 	* libpp/op_header.cpp: remove libop++ after
   3837 	moving op_header into libpp
   3838 
   3839 2003-05-10  John Levon  <levon (a] movementarian.org>
   3840 
   3841 	* libop++/op_header.cpp: make CPU info take up
   3842 	one line not two
   3843 
   3844 2003-05-10  John Levon  <levon (a] movementarian.org>
   3845 
   3846 	* libop++/Makefile.am:
   3847 	* libop++/op_header.cpp:
   3848 	* libop++/op_print_event.h:
   3849 	* libop++/op_print_event.cpp: remove op_print_event
   3850 	files, making it a function local to op_header.cpp
   3851 
   3852 2003-05-10  John Levon  <levon (a] movementarian.org>
   3853 
   3854 	* libop++/op_header.h:
   3855 	* libop++/op_header.cpp: make output_header() be
   3856 	an operator<<
   3857 	
   3858 	* pp/opannotate.cpp:
   3859 	* pp/opreport.cpp: changes from the above
   3860 
   3861 	* libpp/profile.h: small cleanup
   3862 
   3863 2003-05-10  Philippe Elie  <phil.el (a] wanadoo.fr>
   3864 
   3865 	* libutil++/string_manip.h:
   3866 	* libutil++/string_manip.cpp: replace format_percent() by
   3867 	  format_double()
   3868 
   3869 	* libpp/format_output.cpp:
   3870 	* pp/opannotate.cpp:
   3871 	* pp/opreport.cpp: use format_double()
   3872 
   3873 2003-05-09  John Levon  <levon (a] movementarian.org>
   3874 
   3875 	* libpp/opp_symbol.h: app name, image name should
   3876 	be in symbol not in file_location
   3877 
   3878 	* libpp/format_output.cpp:
   3879 	* libpp/profile_container.h:
   3880 	* libpp/profile_container.cpp:
   3881 	* libpp/symbol_container.cpp:
   3882 	* libpp/symbol_functors.cpp: changes from above
   3883 
   3884 2003-05-09  John Levon  <levon (a] movementarian.org>
   3885 
   3886 	* libpp/format_output.h:
   3887 	* libpp/format_output.cpp: vma_64 doesn't need
   3888 	to be in field_datum. make one output() private
   3889 
   3890 2003-05-09  John Levon  <levon (a] movementarian.org>
   3891 
   3892 	* libpp/format_output.h:
   3893 	* libpp/format_output.cpp: pass a symbol ref
   3894 	not name down into the formatters
   3895 
   3896 2003-05-09  John Levon  <levon (a] movementarian.org>
   3897 
   3898 	* libutil++/string_manip.h:
   3899 	* libutil++/string_manip.cpp: sample_filename() is unused
   3900 
   3901 2003-05-09  Philippe Elie  <phil.el (a] wanadoo.fr>
   3902 
   3903 	* libop++/op_header.h:
   3904 	* libop++/op_header.cpp: read_header() new
   3905 	* libop++/Makefile.in: we depend on libdb
   3906 
   3907 	* pp/opannotate.cpp:
   3908 	* pp/opreport.cpp: better way to get sample file header
   3909 
   3910 2003-05-09  Philippe Elie  <phil.el (a] wanadoo.fr>
   3911 
   3912 	* libpp/format_output.cpp: remove redundant map formater
   3913 	* pp/opannotate.cpp: spurious cout
   3914 
   3915 2003-05-08  John Levon  <levon (a] movementarian.org>
   3916 
   3917 	* pp/opreport.cpp:
   3918 	* pp/opreport_options.cpp:
   3919 	* pp/opreport_options.h: clean up cout stuff as
   3920 	suggested by Phil
   3921 
   3922 2003-05-08  John Levon  <levon (a] movementarian.org>
   3923 
   3924 	* libpp/profile_spec.h:
   3925 	* libpp/profile_spec.c: rename the set_p variables,
   3926 	remove pointless is_empty() function
   3927 
   3928 	* pp/opreport.cpp: split collation and output into
   3929 	two separate functions. Rename the temporary structures
   3930 	so it's hopefully a bit more obvious what's happening.
   3931 	Add sourcedocs.
   3932 
   3933 2003-05-08  John Levon  <levon (a] movementarian.org>
   3934 
   3935 	* pp/opreport_options.h:
   3936 	* pp/opreport_options.cpp: add options::cout,
   3937 	  --output-file option
   3938 
   3939 	* pp/opreport.cpp: use options::cout
   3940 
   3941 2003-05-08  John Levon  <levon (a] movementarian.org>
   3942 
   3943 	* pp/format_output.cpp: fix cumulative column widths
   3944 
   3945 2003-05-08  John Levon  <levon (a] movementarian.org>
   3946 
   3947 	* opreport_options.h: add accumulated
   3948 
   3949 	* opreport.cpp: handle --accumulated
   3950 
   3951 2003-05-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   3952 
   3953 	* libpp/symbol_container.cpp: minor tidy
   3954 
   3955 	* libpp/profile.h:
   3956 	* libpp/profile.cpp: allow to cumulate sample file
   3957 	* libpp/profile_container.h:
   3958 	* libpp/profile_container.cpp: remove free function add_samples()
   3959 
   3960 	* pp/annotate.cpp:
   3961 	* pp/opgprof.cpp:
   3962 	* pp/opreport.cpp: when possible cumulate samples into a profile_t
   3963 	  first before cumulating them in a profile_container
   3964 
   3965 2003-05-07  John Levon  <levon (a] movementarian.org>
   3966 
   3967 	* pp/opannotate.cpp: small cleanup
   3968 
   3969 2003-05-07  John Levon  <levon (a] movementarian.org>
   3970 
   3971 	* pp/opreport_options.cpp: remove unneeded include
   3972 
   3973 2003-05-07  John Levon  <levon (a] movementarian.org>
   3974 
   3975 	* libpp/Makefile.am:
   3976 	* libpp/parse_cmdline.h:
   3977 	* libpp/parse_cmdline.cpp: rename to ...
   3978 
   3979 	* libpp/profile_spec.h:
   3980 	* libpp/profile_spec.cpp: this. Make handle_nonoptions()
   3981 	be a static factory create() method instead. Make
   3982 	select_sample_filenames() be a member generate_file_list()
   3983 	instead. Concomitant cleanups.
   3984 
   3985 	* libpp/filename_spec.h:
   3986 	* pp/opannotate_options.cpp:
   3987 	* pp/opgprof_options.cpp:
   3988 	* pp/opreport_options.cpp: changes from above
   3989 
   3990 2003-05-07  John Levon  <levon (a] movementarian.org>
   3991 
   3992 	* libpp/profile.cpp: fix stupid error in last commit
   3993 
   3994 2003-05-07  John Levon  <levon (a] movementarian.org>
   3995 
   3996 	* libpp/profile.h:
   3997 	* libpp/profile.cpp: remove sample_filename member,
   3998 	bogus old spurious check, set_start_offset().
   3999 
   4000 	* libpp/profile_container.cpp:
   4001 	* pp/opannotate.cpp:
   4002 	* pp/opreport.cpp: changes from above
   4003 
   4004 2003-05-07  John Levon  <levon (a] movementarian.org>
   4005 
   4006 	* libpp/derive_files.h:
   4007 	* libpp/derive_files.cpp: rename files as ...
   4008 
   4009 	* libpp/locate_images.h:
   4010 	* libpp/locate_images.cpp: this.
   4011 
   4012 	* libpp/Makefile.am:
   4013 	* libpp/partition_files.h:
   4014 	* pp/common_option.h:
   4015 	* pp/opgprof.cpp:
   4016 	* pp/opgprof_options.h:
   4017 	* pp/opreport_options.h: changes from above
   4018 
   4019 2003-05-07  John Levon  <levon (a] movementarian.org>
   4020 
   4021 	* libpp/derive_files.h:
   4022 	* libpp/derive_files.cpp: rework into extra_images
   4023 	class
   4024 
   4025 	* libpp/partition_files.h:
   4026 	* libpp/partition_files.cpp:
   4027 	* pp/common_option.h:
   4028 	* pp/common_option.cpp:
   4029 	* pp/opannotate.cpp:
   4030 	* pp/opgprof.cpp:
   4031 	* pp/opreport.cpp: use the above
   4032 
   4033 2003-05-07  John Levon  <levon (a] movementarian.org>
   4034 
   4035 	* libpp/Makefile.am:
   4036 	* session.h:
   4037 	* session.cpp: remove session.{h,cpp}
   4038 
   4039 2003-05-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   4040 
   4041 	* pp/oprofpp.cpp pp/oprofpp_options.cpp pp/oprofpp_options.h:
   4042 	* pp/op_time.cpp pp/op_time_options.cpp pp/op_time_options.h:
   4043 	* pp/op_to_source.cpp pp/op_to_source_options.cpp:
   4044 	* pp/op_to_source_options.h pp/op_merge.cpp: removed files
   4045 
   4046 	* pp/Makefile.am: update
   4047 
   4048 2003-05-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   4049 
   4050 	* pp/opgprof.cpp: infamous typo
   4051 
   4052 	* pp/opannotate.cpp: output sample file header
   4053 
   4054 
   4055 2003-05-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   4056 
   4057 	* libpop++/op_mangling.h:
   4058 	* libpop++/op_mangling.cpp: removed file
   4059 	* libop++/op_header.h:
   4060 	* libop++/op_header.cpp: new file, misc function acting on sample
   4061 	  file header stolen from libpp/profile.(cpp|h)
   4062 	* libop++/op_print_event.h: typo
   4063 	* libop++/op_print_event.cpp: save/restore ostream state
   4064 	* libop++/Makefile.am: update
   4065 	
   4066 	* libop/op_sample_file.h: remove dead #define OPD_MANGLE_CHAR
   4067 
   4068 	* libpp/profile.h:
   4069 	* libpp/profile.cpp: move some member function to free function in
   4070 	  libop++/op_header.(cpp|h)
   4071 	* libpp/profile_container.cpp: minor call change
   4072 
   4073 	* libpp/Makefile.am: op_merge can't be compiled currently inhibit build
   4074 
   4075 	* libpp/opreport.cpp: output sample file header
   4076 
   4077 2003-05-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   4078 
   4079 	* libutil++/path_filter.h: default param to empty string not "*"
   4080 
   4081 	* libpp/symbol_functors.h: remove dead code
   4082 
   4083 	* pp/opgprof.cpp: off by one in histsize calculation
   4084 
   4085 2003-05-04  Philippe Elie  <phil.el (a] wanadoo.fr>
   4086 
   4087 	* libutil/op_file.h:
   4088 	* libutil/op_file.c: sanitize create_path()
   4089 
   4090 	* libutil++/path_filter.h: default ctor match all
   4091 
   4092 	* libpp/profile_container.h:
   4093 	* libpp/profile_container.cpp:
   4094 	* libpp/sample_container.h:
   4095 	* libpp/sample_container.cpp:
   4096 	* libpp/symbol_container.h:
   4097 	* libpp/symbol_container.cpp: extend api to allow selecting symbol
   4098 	  restricted to one application, ditto for retrieving samples
   4099 
   4100 	* pp/opannotate_options.h:
   4101 	* pp/opannotate_options.cpp:
   4102 	* pp/opannotate.cpp: implement
   4103 
   4104 	* pp/opgprof_options.h:
   4105 	* pp/opgprof_options.cpp:
   4106 	* pp/opreport_options.h:
   4107 	* pp/opreport_options.cpp: comment fix
   4108 
   4109 	* pp/opreport.cpp: update to match new profile_container api
   4110 
   4111 2003-05-03  Philippe Elie  <phil.el (a] wanadoo.fr>
   4112 
   4113 	* pp/opreport.cpp: don't show dependent file if !--include-dependent
   4114 
   4115 2003-05-02  Philippe Elie  <phil.el (a] wanadoo.fr>
   4116 
   4117 	* libpp/partition_files.h:
   4118 	* libpp/partition_files.cpp: sort_by_image_name() new return a list
   4119 	  of sample filename sorted by bfd image name.
   4120 	* libpp/profile_container.cpp: add_samples() don't build op_bfd object
   4121 	  used here but pass it as parameters
   4122 
   4123 	* pp/opgprof.cpp:
   4124 	* pp/opreport.cpp: use the above change to avoid opening multiple time
   4125 	  a bfd object.
   4126 
   4127 	* pp/opannotate_options.cpp: add --(include|exclude)-symbols
   4128 
   4129 	* libpp/parse_cmdline.cpp:
   4130 	* pp/opgprof_options.cpp:
   4131 	* pp/opreport.cpp: make a distinction in error message between no
   4132 	  sample available and sample file available but no one was selected
   4133 
   4134 2003-05-01  Philippe Elie  <phil.el (a] wanadoo.fr>
   4135 
   4136 	* pp/opannotate_options.h:
   4137 	* pp/opannotate_options.cpp:
   4138 	* pp/opdiff.cpp:
   4139 	* pp/opdiff_options.h:
   4140 	* pp/opdiff_options.cpp:
   4141 	* pp/opgprof.cpp:
   4142 	* pp/opgprof_options.h:
   4143 	* pp/opgprof_options.cpp:
   4144 	* pp/opreport.cpp:
   4145 	* pp/opreport_options.h:
   4146 	* pp/opreport_options.cpp: move common options handling ...
   4147 	* pp/common_option.h:
   4148 	* pp/common_option.cpp: here
   4149 
   4150 	* pp/opannotate.cpp: add options
   4151 
   4152 	* libpp/parse_cmdline.cpp: #include <iterator> ...
   4153 
   4154 2003-05-01  Philippe Elie  <phil.el (a] wanadoo.fr>
   4155 
   4156 	* libpp/counter_util.h:
   4157 	* libpp/counter_util.cpp: remove these files from cvs
   4158 
   4159 	* libpp/derive_files.h:
   4160 	* libpp/derive_files.cpp: remove dead code derive_files() + typo
   4161 
   4162 	* libpp/parse_cmdline.cpp: select_sample_filename() throw if empty
   4163 	  session after filtering
   4164 
   4165 	* pp/common_option.cpp: catch invalid_argument, return failure on
   4166 	  catched exception
   4167 
   4168 2003-05-01  Philippe Elie  <phil.el (a] wanadoo.fr>
   4169 
   4170 	* libutil++/op_bfd.cpp: remove _init from excluded symbol
   4171 	* libpp/profile_container.cpp: tidy
   4172 
   4173 	* pp/opgprof.cpp: fix capping samples
   4174 
   4175 2003-04-30  John Levon  <levon (a] movementarian.org>
   4176 
   4177 	* pp/opgprof.cpp:
   4178 	* pp/opgprof_options.cpp:
   4179 	* libpp/profile.cpp: tiny cleanups, fix compile
   4180 
   4181 2003-04-30  Philippe Elie  <phil.el (a] wanadoo.fr>
   4182 
   4183 	* libdb/db_stat.c: minor improvement to stat, useful to track missed
   4184 	  sample by our tools.
   4185 
   4186 	* pp/op_report.cpp: move matching_sample_filename() to ...
   4187 	* libpp/parse_cmdline.h:
   4188 	* libpp/parse_cmdline.cpp: here renamed select_sample_filename()
   4189 
   4190 	* libpp/profile_container.h:
   4191 	* libpp/profile_container.cpp: expose begin() / end() from
   4192 	 sample_container
   4193 
   4194 	* pp/common_option.h:
   4195 	* pp/common_option.cpp: move option which was not really common to ..
   4196 	* pp/opreport_options.h:
   4197 	* pp/opreport_options.cpp: here
   4198 	* pp/opannotate_options.h:
   4199 	* pp/opannotate_options.cpp: and here
   4200 
   4201 	* pp/operport.cpp:
   4202 	* pp/opannotate.cpp: better to return a value from main() ...
   4203 
   4204 	* pp/opgprof_options.h:
   4205 	* pp/opgprof_options.cpp:
   4206 	* pp/opgprof.cpp: implement opgprof
   4207 
   4208 2003-04-29  Philippe Elie  <phil.el (a] wanadoo.fr>
   4209 
   4210 	* libpp/parse_cmdline.h:
   4211 	* libpp/parse_cmdline.cpp: handle opreport /lib/libc-2.2.5.so, now
   4212 	  non tag, non option argument match either an image name or lib name
   4213 
   4214 2003-04-29  John Levon  <levon (a] movementarian.org>
   4215 
   4216 	* libutil++/op_bfd.cpp: remove "static " inside anon namespace
   4217 
   4218 2003-04-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   4219 
   4220 	* libpp/format_output.h:
   4221 	* libpp/format_output.cpp: need header tweaking
   4222 
   4223 	* pp/opannotate.cpp:
   4224 	* pp/opgprof.cpp: minor tidy
   4225 
   4226 	* pp/opreport_options.h:
   4227 	* pp/opreport_options.cpp:
   4228 	* pp/opreport.cpp: handle -no-header and --image-path
   4229 
   4230 2003-04-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   4231 
   4232 	* libutil++/glob_filter.cpp:
   4233 	* libutil++/path_filter.cpp:
   4234 	* libutil++/string_filter.cpp: #include <algorithm>
   4235 
   4236 2003-04-28  John Levon  <levon (a] movementarian.org>
   4237 
   4238 	* libutil++/string_filter.cpp:
   4239 	* libutil++/string_filter.h:
   4240 	* libutil++/glob_filter.h:
   4241 	* libutil++/glob_filter.cpp:
   4242 	* libutil++/path_filter.h:
   4243 	* libutil++/path_filter.cpp: use std::find[_if],
   4244 	share some code
   4245 
   4246 2003-04-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   4247 
   4248 	* libutil++/op_bfd.cpp: replace a loop by a std::copy()
   4249 
   4250 2003-04-28  John Levon  <levon (a] movementarian.org>
   4251 
   4252 	* libutil++/op_bfd.h:
   4253 	* libutil++/op_bfd.cpp: cleanup of last fix
   4254 
   4255 2003-04-28  John Levon  <levon (a] movementarian.org>
   4256 
   4257 	* libutil++/op_bfd.h:
   4258 	* libutil++/op_bfd.cpp: make symbol filtering
   4259 	happen *after* adding of artificial symbol
   4260 
   4261 2003-04-28  John Levon  <levon (a] movementarian.org>
   4262 
   4263 	* libutil++/string_filter.cpp:
   4264 	* libutil++/glob_filter.cpp:
   4265 	* libutil++/path_filter.cpp: match as true if
   4266 	include_list is empty and not excluded
   4267 
   4268 	* libutil++/op_bfd.h:
   4269 	* libutil++/op_bfd.cpp: use string_filter to
   4270 	filter symbols
   4271 
   4272 	* libpp/profile_container.h:
   4273 	* libpp/profile_container.cpp:
   4274 	* pp/opreport_options.h:
   4275 	* pp/opreport_options.cpp:
   4276 	* pp/opreport.cpp: changes from using string_filter
   4277 
   4278 2003-04-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   4279 
   4280 	* pp/opreport.cpp: finish to remove use of split_sample_filename
   4281 
   4282 2003-04-28  John Levon  <levon (a] movementarian.org>
   4283 
   4284 	* libutil++/filename_match.h:
   4285 	* libutil++/filename_match.cpp: replace with ...
   4286 
   4287 	* libutil++/Makefile.am:
   4288 	* libutil++/string_filter.h:
   4289 	* libutil++/string_filter.cpp:
   4290 	* libutil++/glob_filter.h:
   4291 	* libutil++/glob_filter.cpp:
   4292 	* libutil++/path_filter.h:
   4293 	* libutil++/path_filter.cpp: .. split up variants
   4294 	of the filters
   4295 
   4296 	* libpp/parse_cmdline.cpp: use glob_filter
   4297 
   4298 	* pp/op_to_source.cpp: use path_filter
   4299 
   4300 2003-04-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   4301 
   4302 	* libpp/partition_files.h:
   4303 	* libpp/partition_files.cpp:
   4304 	* libpp/split_sample_filename.h:
   4305 	* libpp/split_sample_filename.cpp:
   4306 	* pp/opreport.cpp: replace some use of std::string sample_filename
   4307 	  by a split_sample_filename struct
   4308 
   4309 2003-04-28  John Levon  <levon (a] movementarian.org>
   4310 
   4311 	* libutil++/filename_match.h:
   4312 	* libutil++/filename_match.cpp: use file-scope
   4313 	not private static member function
   4314 
   4315 2003-04-27  Philippe Elie  <phil.el (a] wanadoo.fr>
   4316 
   4317 	* libpp/format_output.h:
   4318 	* libpp/format_output.cpp: remove all string based output format flag
   4319 
   4320 	* libpp/format_output.cpp: move options::demangle handling ...
   4321 	* libregx/demangle_symbol.cpp: here
   4322 
   4323 	* libpp/profile_container.h:
   4324 	* libpp/profile_container.cpp:
   4325 	* pp/opreport_options.h:
   4326 	* pp/opreport_options.cpp:
   4327 	* pp/opreport.cpp: handle --include-symbols
   4328 
   4329 2003-04-27  Philippe Elie  <phil.el (a] wanadoo.fr>
   4330 
   4331 	* pp/opreport_options.h:
   4332 	* pp/opreport_options.cpp:
   4333 	* pp/opreport.cpp: handle --threshold, remove --ignore-symbols
   4334 
   4335 2003-04-27  John Levon  <levon (a] movementarian.org>
   4336 
   4337 	* libpp/<various>: minor spacing etc.
   4338 
   4339 2003-04-27  Philippe Elie  <phil.el (a] wanadoo.fr>
   4340 
   4341 	* libpp/outsymbflag.h: remove osf_short_xxx variant
   4342 	* libpp/format_output.h:
   4343 	* libpp/format_output.cpp: replace osf_short_xxx by a boolean
   4344 	* libpp/profile_container.cpp: update according
   4345 
   4346 	* pp/opreport_options.h: export short_filename option
   4347 	* pp/opreport.cpp: use short_filename
   4348 
   4349 2003-04-27  Philippe Elie  <phil.el (a] wanadoo.fr>
   4350 
   4351 	* libpp/symbol_functors.h: add less_symbol predicate
   4352 	* libpp/symbol_functors.cpp: new file, less_symbol implementation
   4353 	* libpp/Makefile.am: symbol_functors.cpp
   4354 
   4355 	* libpp/symbol_container.h:
   4356 	* libpp/symbol_container.cpp: use a node based container for symbols
   4357 	  ensuring validity of symbol pointer over a symbol_container life time
   4358 	* libpp/sample_container.h:
   4359 	* libpp/sample_container.cpp: ditto as above for samples
   4360 	* libpp/profile_container.h:
   4361 	* libpp/profile_container.cpp: use this new api to merge symbols
   4362 	  and sample.
   4363 
   4364 	* libpp/format_output.h:
   4365 	* libpp/format_output.cpp: use new api to iterate over sample by symbol
   4366 
   4367 	* pp/opreport.cpp: detailed output
   4368 	
   4369 
   4370 2003-04-27  John Levon  <levon (a] movementarian.org>
   4371 
   4372 	* pp/opreport.cpp: make opreport -l put largest results
   4373 	at the top like opreport does
   4374 
   4375 2003-04-26  Philippe Elie  <phil.el (a] wanadoo.fr>
   4376 
   4377 	* libpp/profile_container.h: comment
   4378 
   4379 	* pp/opreport_options.h: more options export
   4380 	* pp/opreport.cpp: implement -l. Doesn't works correctly: --merge=lib
   4381 
   4382 2003-04-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   4383 
   4384 	* pp/opreport_options.h: export global_percent
   4385 	* pp/opreport.cpp: finish to implement op_time like behavior. Remains
   4386 	  to implement op_time -l
   4387 
   4388 2003-04-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   4389 
   4390 	* libpp/partition_files.cpp: fix a crash when profile spec is empty
   4391 
   4392 	* pp/opreport_options.cpp: bail out if no samples files are found
   4393 
   4394 2003-04-25  John Levon  <levon (a] movementarian.org>
   4395 
   4396 	* pp/opreport_options.cpp: --hide-dependent should have 'h' as
   4397 	short form. Add a FIXME for a crash
   4398 
   4399 2003-04-25  Philippe Elie  <phil.el (a] wanadoo.fr>
   4400 
   4401 	* libpp/partition_files.cpp: thinko in sample filename partition
   4402 
   4403 	* pp/opreport_options.h: export more options
   4404 	* pp/opreport_options.cpp: add --hide-dependent, change --merge to not
   4405 	  default to all
   4406 	* pp/opreport.cpp: handle --hide-dependent --include-dependent and
   4407 	  --merge=lib. Code is ugly, tidy incoming
   4408 
   4409 2003-04-25  John Levon  <levon (a] movementarian.org>
   4410 
   4411 	* libpp/format_output.cpp:
   4412 	* libpp/format_output.h:
   4413 	* libpp/outsymbflag.h: "immutable" not "imutable"
   4414 
   4415 	* libpp/partition_files.cpp: include <iterator> to compile
   4416 
   4417 2003-04-24  Philippe Elie  <phil.el (a] wanadoo.fr>
   4418 
   4419 	* libpp/partition_files.h: typo
   4420 	* libpp/profile.cpp: difficult to get right result with a random value
   4421 	  in profile::start_offset
   4422 
   4423 	* pp/opreport_options.h: export options::reverse_sort
   4424 	* pp/opreport_options.cpp: bail out if we get multiple counter
   4425 
   4426 	* pp/opreport.cpp: raw output result for application (not symbol)
   4427 	  output.
   4428 
   4429 2003-04-24  Philippe Elie  <phil.el (a] wanadoo.fr>
   4430 
   4431 	* libpp/filename_spec.h:
   4432 	* libpp/filename_spec.cpp:
   4433 	* libpp/parse_cmdline.h:
   4434 	* libpp/parse_cmdline.cpp:
   4435 	* libpp/split_sample_filename.h:
   4436 	* libpp/split_sample_filename.cpp: s/unit_mask/unitmask
   4437 
   4438 	* libpp/merge_spec.cpp:
   4439 	* libpp/merge_spec.h: rename to
   4440 	* libpp/partition_files.h:
   4441 	* libpp/partition_files.cpp: here. Add and merge_option.
   4442 	  partition_files is now a class.
   4443 	* pp/opreport_options.h:
   4444 	* pp/opreport_options.cpp:
   4445 	* pp/opreport.cpp: update according to the above. Add a roughly support
   4446 	  to count samples for plain op_time opreport like
   4447 
   4448 2003-04-24  John Levon  <levon (a] movementarian.org>
   4449 
   4450 	* libpp/profile_container.h:
   4451 	* libpp/profile_container.cpp: chop off the _t of the class name
   4452 
   4453 	* libpp/format_output.cpp:
   4454 	* libpp/format_output.h:
   4455 	* libpp/symbol_container.cpp:
   4456 	* libpp/symbol_container.h:
   4457 	* pp/op_time.cpp:
   4458 	* pp/op_to_source.cpp:
   4459 	* pp/oprofpp.cpp: changes from the above
   4460 
   4461 2003-04-24  John Levon  <levon (a] movementarian.org>
   4462 
   4463 	* libpp/profile_container.h:
   4464 	* libpp/profile_container.cpp: pedantry for sample_container
   4465 	indices.
   4466 
   4467 	* libpp/sample_container.h:
   4468 	* libpp/sample_container.cpp: various cleanups and docs. Add
   4469 	and use size_type.
   4470 
   4471 	* libpp/symbol_container.h:
   4472 	* libpp/symbol_container.cpp: renamings. Add and use size_type.
   4473 
   4474 2003-04-24  John Levon  <levon (a] movementarian.org>
   4475 
   4476 	* libpp/symbol_container.h:
   4477 	* libpp/symbol_container.cpp: remove unused operator[].
   4478 	Add some docs. Some small cleanups
   4479 
   4480 2003-04-24  John Levon  <levon (a] movementarian.org>
   4481 
   4482 	* libpp/symbol_container_imp.h:
   4483 	* libpp/symbol_container_imp.cpp:
   4484 	* libpp/sample_container_imp.h:
   4485 	* libpp/sample_container_imp.cpp: These classes weren't using
   4486 	the pimpl idiom, so the _imp was spurious. Remove that as well
   4487 	as removing the _t from the names, and rename to ...
   4488 
   4489 	* libpp/symbol_container.h:
   4490 	* libpp/symbol_container.cpp:
   4491 	* libpp/sample_container.h:
   4492 	* libpp/sample_container.cpp: ...files moved from the above with
   4493 	new names.
   4494 
   4495 2003-04-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   4496 
   4497 	* libutil++/generic_spec.h: minor formating tweak
   4498 
   4499 	* libpp/parse_cmdline.h:
   4500 	* libpp/parse_cmdline.cpp: handle_non_options(): return parse_cmdline
   4501 	  by value
   4502 
   4503 	* libpp/merge_spec.h:
   4504 	* libpp/merge_spec.cpp: new files: partition list of samples filename
   4505 	  according to merge options.
   4506 	* libpp/Makefile.am: update
   4507 
   4508 	* pp/opreport_options.cpp: more options handling, use partition_files()
   4509 
   4510 2003-04-22  John Levon  <levon (a] movementarian.org>
   4511 
   4512 	* pp/opreport_options.cpp: compile fix
   4513 
   4514 2003-04-21  Philippe Elie  <phil.el (a] wanadoo.fr>
   4515 
   4516 	* libutil++/filename_match.h:
   4517 	* libutil++/filename_match.cpp: add strict_match()
   4518 
   4519 	* libutil++/generic_spec.cpp: generic_spec<string>::set() was not
   4520 	  setting is_all member leading to bad matching
   4521 
   4522 	* libpp/filename_spec.cpp: minor tidy
   4523 
   4524 	* libpp/parse_cmdline.h:
   4525 	* libpp/parse_cmdline.cpp: fix match()
   4526 
   4527 	* libpp/split_sample_filename.h:
   4528 	* libpp/split_sample_filename.cpp: handle sample file base directory
   4529 
   4530 	* libop++/op_print_event.h:
   4531 	* libop++/op_print_event.cpp:
   4532 	* libpp/format_output.h:
   4533 	* libpp/format_output.cpp:
   4534 	* libpp/opp_symbol.h:
   4535 	* libpp/profile.h:
   4536 	* libpp/profile.cpp:
   4537 	* libpp/profile_container.h:
   4538 	* libpp/profile_container.cpp:
   4539 	* libpp/sample_container_imp.h:
   4540 	* libpp/sample_container_imp.cpp:
   4541 	* libpp/symbol_container_imp.h:
   4542 	* libpp/symbol_container_imp.cpp:
   4543 	* libpp/symbol_functors.h: remove all use of counter number
   4544 
   4545 	* libpp/counter_array.h:
   4546 	* libpp/counter_array.cpp:
   4547 	* libpp/counter_profile.h:
   4548 	* libpp/counter_profile.cpp: no longer used, move some bits to
   4549 	  libpp/profile.(h|cpp) and remove these files.
   4550 	* libpp/Makefile.am: update according
   4551 
   4552 	* pp/op_merge.cpp: use profile_t not counter_profile_t
   4553 	* pp/makefile.am: correct lib for op_merge
   4554 
   4555 	* pp/opreport_options.cpp: more options handling
   4556 
   4557 2003-04-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   4558 
   4559 	* libopt++/popt_options.cpp: don't show help_str with --usage
   4560 	* libpp/format_output.cpp: typo
   4561 	* libutil/op_file.c: create dir with 755 not 700
   4562 	* pp/common_option.cpp: source formating
   4563 
   4564 	* libpp/parse_cmdline.h:
   4565 	* libpp/parse_cmdline.cpp: handle_non_options() new
   4566 	* pp/opreport_options.cpp: handle more options
   4567 
   4568 	* pp/opsummary.cpp:
   4569 	* pp/opsummary_options.h:
   4570 	* pp/opsummary_options.cpp: remove, opreport should do its job.
   4571 	* pp/Makefile.am: update
   4572 
   4573 2003-04-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   4574 
   4575 	* libopt++/popt_options.cpp: allow "no-" prefix to long option name
   4576 	  implicitly specify the value must be negated
   4577 	* libopt++/popt_options.cpp: update doxygen documentation
   4578 
   4579 	* libpp/format_output.h: missing #include
   4580 	* libpp/format_output.cpp: space + minor change
   4581 
   4582 	* pp/opannotate_options.h:
   4583 	* pp/opannotate_options.cpp:
   4584 	* pp/opdiff_options.h:
   4585 	* pp/opdiff_options.cpp:
   4586 	* pp/opgprof_options.h:
   4587 	* pp/opgprof_options.cpp:
   4588 	* pp/opreport_options.h:
   4589 	* pp/opreport_options.cpp:
   4590 	* pp/opsummary_options.h:
   4591 	* pp/opsummary_options.cpp: new skeleton file
   4592 
   4593 	* pp/opannotate.cpp:
   4594 	* pp/opdiff.cpp:
   4595 	* pp/opgprof.cpp:
   4596 	* pp/opreport.cpp:
   4597 	* pp/opsummary.cpp: update to handle options
   4598 
   4599 	* pp/common_option.cpp: follow more closely pp_interface
   4600 
   4601 	* pp/opsummary_options.cpp: start to handle opsummary option
   4602 
   4603 	* pp/Makefile.am: update
   4604 
   4605 2003-04-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   4606 
   4607 	* libpp/format_output.h:
   4608 	* libpp/format_output.cpp:
   4609 	* libpp/outsymbflag.h:
   4610 	* libpp/profile_container.h:
   4611 	* libpp/profile_container.cpp: osf_header/osf_details are no longer
   4612 	  flags but separate boolean.
   4613 
   4614 2003-04-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   4615 
   4616 	* dae/opd_kernel.c:
   4617 	* daemon/opd_kernel.c: remove leading '/' on module name fixing 2.5
   4618 	 module not under {kern} and similar case for "no-vmlinux" with 2.4/2.5
   4619 
   4620 	* libutil/op_file.c: tiny tidy
   4621 
   4622 2003-04-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   4623 
   4624 	* libop/op_mangle.c: app_name and image was reversed, {dep} was missing
   4625 
   4626 2003-04-17  John Levon  <levon (a] movementarian.org>
   4627 
   4628 	* libpp/filename_spec.h:
   4629 	* libutil++/comma_list.h: compile fixes
   4630 
   4631 2003-04-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   4632 
   4633 	* utils/opcontrol: better --reset handling
   4634 
   4635 2003-04-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   4636 
   4637 	* dae works, daemon compiles but not tested.
   4638 
   4639 	* libop/op_config.h:
   4640 	* libpp/op_session.h:
   4641 	* libpp/session.cpp:
   4642 	* pp/op_merge: handle new path to samples files.
   4643 
   4644 	* libutil++/file_manip.h:
   4645 	* libutil++/file_manip.cpp: move create_dir(), create_path() ...
   4646 	* libutil/op_file.h:
   4647 	* libutil/op_file.c: here. Remove op_move_regular_file()
   4648 
   4649 	* daemon/opd_image.c:
   4650 	* daemon/opd_sample_files.h:
   4651 	* daemon/opd_sample_files.c:
   4652 	* dae/opd_image.c:
   4653 	* dae/opd_sample_files.h:
   4654 	* dae/opd_sample_files.c: use new filename scheme
   4655 
   4656 	* daemon/oprofiled.c:
   4657 	* dae/oprofiled.c: remove samples files backup stuff
   4658 
   4659 	* libop/op_mangle.h:
   4660 	* libop/op_mangle.c: ugly modification to handle new samples filename
   4661 
   4662 	* utils/opcontrol: handle new samples files path, --save and --reset
   4663 	  are working too.
   4664 
   4665 	* gui/oprof_start_util.cpp: use new create_path() API
   4666 
   4667 2003-04-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   4668 
   4669 	* pp/common_option.cpp:
   4670 	* pp/common_option.h:
   4671 	* libregex/demangle_symbol.cpp: rename demangle_and_shrink to
   4672 	  smart_demangle
   4673 
   4674 2003-04-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   4675 
   4676 	* starting branch pp-interface-branch
   4677 
   4678 	* Makefile.am:
   4679 	* configure.in: handle new sub dir libpp
   4680 
   4681 	* libutil++/comma_list.h: new file handling of comma separated list of
   4682 	  items.
   4683 	* libutil++/generic_spec.cpp:
   4684 	* libutil++/generic_spec.h: new file
   4685 	* libutil++/Makefile.am: handle new file
   4686 
   4687 	* pp/counter_array.*:
   4688 	* pp/counter_profile.*:
   4689 	* pp/counter_util.*:
   4690 	* pp/derive_files.*:
   4691 	* pp/format_output.*:
   4692 	* pp/opp_symbol.h:
   4693 	* pp/outsymbflag.h:
   4694 	* pp/profile.*:
   4695 	* pp/profile_container.*:
   4696 	* pp/sample_container_imp.*:
   4697 	* pp/session.*:
   4698 	* pp/symbol_container_imp.*:
   4699 	* pp/symbol_functors.*: move to
   4700 
   4701 	* libpp/*: here
   4702 	* libpp/filename_spec.cpp:
   4703 	* libpp/filename_spec.h: new file handling of pp sample filename
   4704 	* libpp/parse_cmdline.cpp:
   4705 	* libpp/parse_cmdline.h: new file, handling of command line tag:value
   4706 	* libpp/Makefile.am: new file build libpp.a
   4707 
   4708 	* pp/common_option.h:
   4709 	* pp/common_option.cpp: common option to pp tools. Implement common
   4710 	  entry point to pp tools.
   4711 	* pp/opannotate.cpp:
   4712 	* pp/opdiff.cpp:
   4713 	* pp/opgprof.cpp:
   4714 	* pp/opreport.cpp:
   4715 	* pp/opsummary.cpp: skeleton file for all pp tools.
   4716 	* pp/Makefile.am: remove old pp tools, add the news.
   4717 
   4718 2003-04-28  Alex Tsariounov  <alext (a] fc.hp.com>
   4719 
   4720 	* module/ia64/op_pmu.c: fix compile
   4721 
   4722 2003-04-24  Philippe Elie  <phil.el (a] wanadoo.fr>
   4723 
   4724 	* module/compat22.h: add cpuid_edx when linux version < 2.2.21
   4725 
   4726 2003-04-24  Dave Jones <davej (a] codemonkey.org.uk>
   4727 
   4728 	* events/x86-64.hammer.events:
   4729 	* events/x86-64.hammer.unit_masks: typo fixes from AMD.
   4730 	* module/x86/cpu_type.c: Check for APIC on Athlon before enabling it.
   4731 
   4732 2003-04-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   4733 
   4734 	* events/i386-ht.events: all events allow only one counter, remove
   4735 	  three events due to ESCR restriction.
   4736 	* events/i386.events: add some comments.
   4737 
   4738 	* module/x86/op_model_p4.c: synch with linux 2.5 mainline
   4739 	  - except events CTR_BPU_0 all virtual counter was not working.
   4740 	  - Prevents a segfault when using incorrect counter number.
   4741 	  - ESCR event select is 6 bits length not 5.
   4742 	  - Don't fail silently in p4_setup_ctrs().
   4743 	* module/x86/op_msr.h: match name used in linux.
   4744 
   4745 2003-04-15  John Levon  <levon (a] movementarian.org>
   4746 
   4747 	* doc/oprofile.1.in:
   4748 	* doc/oprofile.xml: small english fixes
   4749 
   4750 2003-04-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   4751 
   4752 	* dae/opd_kernel.c:
   4753 	* dae/opd_proc.c:
   4754 	* dae/oprofiled.c:
   4755 	* utils/opcontrol:
   4756 	* doc/oprofile.1.in:
   4757 	* doc/oprofile.xml: handle --no-vmlinux
   4758 
   4759 	* daemon/opd_kernel.c: use no-vmlinux not /no-vmlinux when user
   4760 	  specify --no-vmlinux
   4761 
   4762 2003-04-08  John Levon  <levon (a] movementarian.org>
   4763 
   4764 	* HACKING: describe what happens with oprofile-www
   4765 
   4766 2003-04-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   4767 
   4768 	* libutil++/op_bfd.cpp: check for #717720 and direct user to
   4769 	  FAQ if detected. Note than we don't detect all symptom of this bug.
   4770 
   4771 2003-04-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   4772 
   4773 	* libutil++/op_exception.h: op_runtime_error is no longer abstract
   4774 
   4775 	* libregex/op_regex.h: comment and tidy
   4776 	* libregex/op_regex.cpp: tidy
   4777 
   4778 2003-04-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   4779 
   4780 	* pp/op_to_source.cpp: make each line be prefixed with the samples
   4781 	counts. It was too hard to find samples inside previous format.
   4782 
   4783 2003-04-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   4784 
   4785 	* libutil++/string_manip.cpp: work around for gcc 2.95
   4786 	* p/op_to_source.cpp: minor cleanup
   4787 
   4788 2003-04-07  John Levon  <levon (a] movementarian.org>
   4789 
   4790 	* pp/op_to_source.cpp: cheat a bit to get
   4791 	better indentation on the default setup, by
   4792 	widening counter width to 7.
   4793 
   4794 2003-04-07  John Levon  <levon (a] movementarian.org>
   4795 
   4796 	* pp/op_to_source.cpp: append symbol summary
   4797 	annotations separate from the prolog samples on
   4798 	the same line.
   4799 
   4800 2003-04-07  John Levon  <levon (a] movementarian.org>
   4801 
   4802 	* pp/op_to_source.cpp: only output line 0 annotation
   4803 	if samples found there.
   4804 
   4805 2003-04-07  John Levon  <levon (a] movementarian.org>
   4806 
   4807 	* utils/opcontrol: make sure --ctrX-event=none gets noticed
   4808 
   4809 2003-04-06  John Levon  <levon (a] movementarian.org>
   4810 
   4811 	* libutil++/string_manip.h:
   4812 	* libutil++/string_manip.cpp: remove ws_prefix(). Add
   4813 	format_percent().
   4814 
   4815 	* pp/op_to_source.cpp: make each line be prefixed with
   4816 	the sample counts, instead of on a line above, to preserve
   4817 	line numbering.
   4818 
   4819 2003-04-06  John Levon  <levon (a] movementarian.org>
   4820 
   4821 	* pp/op_to_source.cpp: some renamings for clarity
   4822 
   4823 2003-04-06  John Levon  <levon (a] movementarian.org>
   4824 
   4825 	* pp/op_to_source.cpp: move extract_blank_at_begin() to ...
   4826 
   4827 	* libutil++/string_manip.cpp: ... here, and rename as
   4828 	ws_prefix().
   4829 	
   4830 2003-04-06  John Levon  <levon (a] movementarian.org>
   4831 
   4832 	* pp/op_to_source.cpp: prefix comment lines.
   4833 	Output the general footer on each separate file.
   4834 	Output the info at the bottom when outputting
   4835 	separate files (towards maintaining line numbering).
   4836 
   4837 2003-04-06  John Levon  <levon (a] movementarian.org>
   4838 
   4839 	* pp/op_to_source.cpp: construct a file-scope
   4840 	cmdline string, instead of passing it around.
   4841 
   4842 2003-04-06  John Levon  <levon (a] movementarian.org>
   4843 
   4844 	* libregex/op_regexp.cpp: re-arrange a bit
   4845 
   4846 2003-04-06  John Levon  <levon (a] movementarian.org>
   4847 
   4848 	* configure.in:
   4849 	* all Makefile.am: don't blindly set $LIBS, use
   4850 	explicit mention of which libs are needed.
   4851 
   4852 	* dae/Makefile.am:
   4853 	* daemon/Makefile.am: only link with C++ if needed.
   4854 
   4855 2003-04-05  Philippe Elie  <phil.el (a] wanadoo.fr>
   4856 
   4857 	* libop/op_config_24.h:
   4858 	* module/oprofile.c:
   4859 	* module/oprofile.c: make watermark size proportional to buffer size.
   4860 
   4861 2003-04-05  Philippe Elie  <phil.el (a] wanadoo.fr>
   4862 
   4863 	* libop/op_events.h:
   4864 	* libop/op_events.c: re-add op_min_count();
   4865 
   4866 	* dae/oprofiled.c:
   4867 	* daemon/oprofiled.c: use op_min_count() fixing #715923
   4868 
   4869 2003-04-01  John Levon  <levon (a] movementarian.org>
   4870 
   4871 	* libdb/Makefile.am: fix make dist
   4872 
   4873 	* daemon/opd_cookie.h: add SPARC syscall number.
   4874 	  The system call function is OK for sparc/sparc64
   4875 
   4876 2003-03-31  Will Cohen  <wcohen (a] redhat.com>
   4877 
   4878 	* libdb/odb_hash.h: Renamed db_hash.h.
   4879 
   4880 	* dae/Makefile.am:
   4881 	* dae/opd_image.c:
   4882 	* dae/opd_image.h:
   4883 	* dae/opd_proc.c:
   4884 	* dae/opd_sample_files.c:
   4885 	* daemon/Makefile.am:
   4886 	* daemon/opd_image.c:
   4887 	* daemon/opd_image.h:
   4888 	* daemon/opd_sample_files.c:
   4889 	* libabi/Makefile.am:
   4890 	* libabi/abi.cpp:
   4891 	* libabi/abi_test.cpp:
   4892 	* libabi/op_import.cpp:
   4893 	* libdb/Makefile.am:
   4894 	* libdb/db_debug.c:
   4895 	* libdb/db_hash.h:
   4896 	* libdb/db_insert.c:
   4897 	* libdb/db_manage.c:
   4898 	* libdb/db_stat.c:
   4899 	* libdb/db_test.c:
   4900 	* libdb/db_travel.c:
   4901 	* pp/Makefile.am:
   4902 	* pp/counter_profile.cpp:
   4903 	* pp/counter_profile.h:
   4904 	* pp/op_merge.cpp: Change names to avoid libdb.a name conflicts.
   4905 	
   4906 2003-03-30  John Levon  <levon (a] movementarian.org>
   4907 
   4908 	* configure.in: bump to 0.6cvs
   4909 
   4910 	* doc/oprofile.xml: fix id. Add java etc. mention
   4911 
   4912 	* utils/Makefile.am:
   4913 	* utils/op_start:
   4914 	* utils/op_start_25:
   4915 	* utils/op_stop:
   4916 	* utils/op_stop_25:
   4917 	* utils/op_dump:
   4918 	* utils/op_dump_25:
   4919 	* utils/op_session: finally remove the back compat crap
   4920 
   4921 	* HACKING: add release-notes policy
   4922 
   4923 2003-03-30  John Levon  <levon (a] movementarian.org>
   4924 
   4925 	* configure.in: bump to 0.5.2
   4926 
   4927 2003-03-30  John Levon  <levon (a] movementarian.org>
   4928 
   4929 	* Makefile.am: remove op_arch.h for ia64
   4930 
   4931 2003-03-27  John Levon  <levon (a] movementarian.org>
   4932 
   4933 	* doc/oprofile.xml: several more examples and fixes
   4934 
   4935 2003-03-26  John Levon  <levon (a] movementarian.org>
   4936 
   4937 	From a patch by Bryan Rittmeyer.
   4938 
   4939 	* module/oprofile.c:
   4940 	* module/oprofile.h: push "irq_enabled" test
   4941 	into arch code, don't pass struct pt_regs.
   4942 
   4943 	* module/x86/op_arch.h: cleanups
   4944 
   4945 	* module/x86/op_model_athlon.c:
   4946 	* module/x86/op_model_ppro.c:
   4947 	* module/x86/op_model_p4.c:
   4948 	* module/x86/op_rtc.c: changes from above
   4949 
   4950 	* module/ia64/op_arch.h: remove
   4951 	* module/ia64/op_pmu.c: change from above
   4952 
   4953 2003-03-24  John Levon  <levon (a] movementarian.org>
   4954 
   4955 	* doc/oprofile.xml: document prologues, and inline functions
   4956 
   4957 2003-03-24  Will Cohen  <wcohen (a] redhat.com>
   4958 
   4959 	* libutil/op_fileio.c (op_get_line): Use lower cost getc().
   4960 
   4961 2003-03-24  John Levon  <levon (a] movementarian.org>
   4962 
   4963 	* m4/configmodule.m4: fix quoting problem for awk
   4964 
   4965 2003-03-23  John Levon  <levon (a] movementarian.org>
   4966 
   4967 	* configure.in:
   4968 	* m4/: move lots of stuff into separate .m4 files
   4969 
   4970 	* m4/typedef.m4: improve configure message
   4971 
   4972 2003-03-23  John Levon  <levon (a] movementarian.org>
   4973 
   4974 	* configure.in:
   4975 	* m4/Makefile.am:
   4976 	* m4/copyifchange.m4:
   4977 	* m4/docbook.m4:
   4978 	* m4/kerneloption.m4:
   4979 	* m4/kernelversion.m4:
   4980  	* m4/resultyn.m4: move configure.in macros to m4/
   4981 
   4982 2003-03-23  John Levon  <levon (a] movementarian.org>
   4983 
   4984 	* m4/ChangeLog: add comment
   4985 
   4986 	* m4/typedef.m4: can't use AC_LANG_PUSH/POP
   4987 
   4988 2003-03-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   4989 
   4990 	* TODO: update
   4991 
   4992 	* m4/Makefile.am:
   4993 	* m4/typedef.m4: new file to get underlined type for a typedef.
   4994 	
   4995 	* configure.in: get at configure time the real underlined type
   4996 	  for size_t and ptrdiff_t
   4997 
   4998 	* libregex/stl.pat: move to ...
   4999 	* libregex/stl.pat.in: here. Use @SIZE_T_TYPE@ and @PTRDIFF_T_TYPE@
   5000 	* libregex/Makefile.am: update according
   5001 	* libregex/.cvsignore: ignore stl.pat
   5002 
   5003 2003-03-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   5004 
   5005 	* utils/opcontrol: use $OP_HELP not op_help
   5006 	* utils/op_help.c: remove short option for --get-cpu-frequency
   5007 
   5008 2003-03-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   5009 
   5010 	* TODO: update
   5011 
   5012 	* m4: new directory
   5013 	* m4/.cvsignore: new
   5014 
   5015 	* acinclude.m4: move to
   5016 	* m4/qt.m4: here
   5017 	* m4/Makefile.am: new for EXTRA_DIST = all our .m4
   5018 	* Makefile.am:
   5019 	* configure.in:
   5020 	* autogen.sh: handle m4 subdir, add -I m4 to aclocal flags
   5021 
   5022 2003-03-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   5023 
   5024 	  Suggested by John
   5025 
   5026 	* libutil/op_cpufreq.c: typo in comment
   5027 
   5028 	* utils/op_help.c: add --get-cpu-frequency, intentionnaly not
   5029 	  documented.
   5030 	* utils/opcontrol: use op_help --get-cpu-frequency and remove
   5031 	  ugly shell script doing the same thing.
   5032 
   5033 2003-03-22  Philippe Elie  <phil.el (a] wanadoo.fr>
   5034 
   5035 	* libutil/op_cpufreq.h:
   5036 	* libutil/op_cpufreq.c: new file exporting op_cpu_frequency()
   5037 	* libutil/Makefile.am: update according
   5038 
   5039 	* utils/opcontrol: handle other arch
   5040 
   5041 	* gui/oprof_start_util.h:
   5042 	* gui/oprof_start_util.cpp: remove get_cpu_speed()
   5043 	* gui/oprof_start.h:
   5044 	* gui/oprof_start.cpp: and use instead op_cpu_frequency()
   5045 
   5046 	* daemon/oprofiled.c:
   5047 	* dae/oprofiled.c: replace --cpu-speed option by a call to
   5048 	  op_cpu_frequencey()
   5049 
   5050 2003-03-20  John Levon  <levon (a] movementarian.org>
   5051 
   5052 	* doc/oprofile.xml: doc some 2.5 module stuff
   5053 
   5054 2003-03-20  John Levon  <levon (a] movementarian.org>
   5055 
   5056 	* utils/opcontrol: fix opcontrol --dump to do something
   5057 
   5058 	* daemon/opd_image.c: give a printf when reading the buffer.
   5059 
   5060 2003-03-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   5061 
   5062 	* libutil++/op_bfd.cpp: correct get_vma_range()
   5063 
   5064 	* pp/oprofpp.cpp: do_dump_gprof() this time it's right!
   5065 
   5066 2003-03-18  John Levon  <levon (a] movementarian.org>
   5067 
   5068 	* pp/profile.cpp: improve mtime warning for 2.5 modules
   5069 
   5070 2003-03-18  John Levon  <levon (a] movementarian.org>
   5071 
   5072 	* pp/derive_files.cpp: some more 2.5 modules derivation fixes
   5073 
   5074 2003-03-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   5075 
   5076 	* pp/derive_files.cpp: fix handling of 2.5 module name
   5077 
   5078 2003-03-18  John Levon  <levon (a] movementarian.org>
   5079 
   5080 	* daemon/opd_image.c:
   5081 	* libop/op_interface_25.h: rename to MODULE_LOADED_CODE
   5082 
   5083 2003-03-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   5084 
   5085 	* TODO: update
   5086 
   5087 	* pp/derive_files.cpp: special to retrieve 2.5 module
   5088 
   5089 2003-03-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   5090 
   5091 	* TODO: update
   5092 
   5093 	* pp/symbol_container_imp.h:
   5094 	* pp/symbol_container_imp.cpp:
   5095 	* pp/profile_container.h:
   5096 	* pp/profile_container.cpp: find(string symbol_name) return a vector
   5097 	  of symbol rather a a single symbol
   5098 	* pp/oprofpp.cpp: use above change so oprofpp -s will show all
   5099 	  symbol with the same name.
   5100 
   5101 	* pp/symbol_functors.h: remove unused functors equal_symbol_by_name
   5102 
   5103 2003-03-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   5104 
   5105 	* TODO: update
   5106 
   5107 	* libutil/op_fileio.h:
   5108 	* libutil/op_fileio.c: op_write_u64() new
   5109 	* libutil/op_types.h: continue our silly typedef: add u64
   5110 
   5111 	* libutil++/op_bfd.h:
   5112 	* libutil++/op_bfd.cpp: op_bfd::arch_bits_per_address() new allowing
   5113 	  to get, on a per-binary basis, the vma size.
   5114 
   5115 	* pp/oprofpp.cpp: fix 64 bits arch gprof output. Fix multiplier and
   5116 	  get the multiplier of gprof file at runtime. Fix a very old bug
   5117 	  where we credit the samples to previous gprof bin having the effect
   5118 	  than sample at start of function was credited to the previous
   5119 	  function
   5120 
   5121 2003-03-17  John Levon  <levon (a] movementarian.org>
   5122 
   5123 	* daemon/opd_kernel.c:
   5124 	* daemon/opd_kernel.h:
   5125 	* daemon/opd_image.c:
   5126 	* daemon/oprofiled.c: don't try to reread the module
   5127 	list on a failed EIP match. We must have the module load
   5128 	notification instead.
   5129 
   5130 2003-03-17  John Levon  <levon (a] movementarian.org>
   5131 
   5132 	* daemon/opd_kernel.c: fix module accounting. Remove
   5133 	quick-drop code that can't work.
   5134 
   5135 	* doc/oprofile.1.in:
   5136 	* doc/oprofile.xml: english tweaks
   5137 
   5138 2003-03-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   5139 
   5140 	* TODO: update
   5141 
   5142 	* doc/oprofile.1.in:
   5143 	* doc/oprofile.xml: remove documentation about -P, update doc about -p
   5144 
   5145 	* pp/derive_files.h:
   5146 	* pp/derive_files.cpp: check_image_name(), add_to_alternate_filename()
   5147 	  functions moved from op_time.cpp
   5148 
   5149 	* pp/op_time_options.h:
   5150 	* pp/op_time_options.cpp:
   5151 	* pp/op_time.cpp: remove -P option, minor cleanup
   5152 
   5153 	* pp/oprofpp_options.h:
   5154 	* pp/oprofpp_options.cpp:
   5155 	* pp/oprofpp.cpp: add -p option, minor cleanup
   5156 	
   5157 	* pp/op_to_source.cpp: minor cleanup
   5158 
   5159 2003-03-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   5160 
   5161 	* utils/opcontrol: check return code for --ctr??-event=none
   5162 
   5163 2003-03-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   5164 
   5165 	* gui/oprof_start.cpp: check for --separate=xxxx in the right order.
   5166 	  Old code do: if user set separate=library and separate=kernel only
   5167 	  separate=library was taken by opcontrol
   5168 
   5169 2003-03-16  Philippe Elie  <phil.el (a] wanadoo.fr>
   5170 
   5171 	* configure.in: typo
   5172 
   5173 2003-03-16  John Levon  <levon (a] movementarian.org>
   5174 
   5175 	* configure.in: more docbook macro fixes
   5176 
   5177 2003-03-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   5178 
   5179 	* libutil/op_libiberty.h: cut&paste typo breaking compilation on box
   5180 	  w/o libiberty.h
   5181 
   5182 	* daemon/opd_image.c: remove bogus fprintf. compilation was broken
   5183 	  on alpha.
   5184 
   5185 	* configure.in: xsltproc checking fix, was always accepted even
   5186 	 on box where xsltproc is not installed
   5187 
   5188 2003-03-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   5189 
   5190 	* TODO: update
   5191 
   5192 	* Makefile.am: add ChangeLog-2002 in dist files
   5193 	* all Makefile.am: put one item by line for most  xxxx = blah
   5194 	* doc/CodingStyle: rationale for the above change
   5195 
   5196 2003-03-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   5197 
   5198 	* libop/op_events.c: minor cleanup
   5199 
   5200 2003-03-15  Dave Jones <davej (a] codemonkey.org.uk>
   5201 
   5202 	* module/x86/op_nmi.c: Remove stale debug code from yesterdays commit.
   5203 
   5204 2003-03-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   5205 
   5206 	* configure.in: add checking for existence of xmemdup()
   5207 
   5208 	* libutil/Makefile.am:
   5209 	* libutil/op_string.h:
   5210 	* libutil/op_string.c: new, a few C string handling function
   5211 
   5212 	* libutil/op_libiberty.h:
   5213 	* libutil/op_libiberty.c: xmemdup() new.
   5214 
   5215 	* libop/op_events.h:
   5216 	* libop/op_events.c: tidy parser. Add op_free_events(). Fix minor
   5217 	  buglet.
   5218 
   5219 	* dae/oprofiled.c:
   5220 	* daemon/oprofiled.c: fix memleak from parsing events files
   5221 
   5222 	* gui/Makefile.am:
   5223 	* pp/Makefile.am: fix lib ordering, now libop depend on libutil
   5224 
   5225 	* utils/op_help.c: error message if invalid cpu type. Fix op_help
   5226 	  when using timer interrupt.
   5227 
   5228 2003-03-14  Andi Kleen <ak (a] suse.de>
   5229 
   5230 	* module/x86/op_nmi.c: Fix another possible race condition.
   5231 
   5232 2003-03-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   5233 
   5234 	* TODO: update
   5235 
   5236 	* libregex/stl.pat: support for rb tree, set/map, anonymous namespace.
   5237 	  Fix incorrect pattern for gcc 3.2. Handle 2.95 vector/string
   5238 	  iterator and a few stl free function handling. add all C++ base type.
   5239 	* libregex/mangled-name.txt: test for the above change
   5240 
   5241 2003-03-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   5242 
   5243 	* gui/oprof_start.cpp: gcc 2.91 warning work around
   5244 
   5245 2003-03-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   5246 
   5247 	* libop/op_events.c: fix a daemon segfault depending on the used
   5248 	  libc version, added 2003-03-04 (0.5.1 is ok)
   5249 
   5250 2003-03-13  Dave Jones <davej (a] codmeonkey.org.uk>
   5251 
   5252 	* events/x86-64.hammer.events: Remove duplicate minimum tag
   5253 	  from RETIRED_INSNS counter.
   5254 
   5255 2003-03-11  John Levon  <levon (a] movementarian.org>
   5256 
   5257 	* module/ia64/op_pmu.c: include op_arch.h not arch.h
   5258 
   5259 2003-03-10  Philippe Elie  <phil.el (a] wanadoo.fr>
   5260 
   5261 	* configure.in: remove unsupported --warnnet, fix docbook root dir test
   5262 	* doc/oprofile.xml: typo
   5263 
   5264 2003-03-10  John Levon  <levon (a] movementarian.org>
   5265 
   5266 	* doc/Makefile.am:
   5267 	* configure.in:
   5268 	* doc/xsl/catalog-1.xml.in: more docbook changes
   5269 
   5270 2003-03-10  John Levon  <levon (a] movementarian.org>
   5271 
   5272 	* configure.in:
   5273 	* doc/Makefile.am:
   5274 	* doc/xsl/xhtml.xsl:
   5275 	* doc/xsl/xhtml-chunk.xsl:
   5276 	* doc/xsl/catalog-1.xml.in: Use a catalog for finding
   5277 	the XSL, so we only have one .in file now.
   5278 
   5279 2003-03-08  Will Cohen  <wcohen (a] redhat.com>
   5280 
   5281 	* doc/Makefile.am: Correct path for htmldir.
   5282 
   5283 2003-03-08  John Levon  <levon (a] movementarian.org>
   5284 
   5285 	* libop/op_cpu_type.c: improve error message
   5286 
   5287 	* utils/op_help.c: show CPU name in events list. Show CPU
   5288 	 pretty name in op_help --get-cpu-type.
   5289 
   5290 2003-03-08  John Levon  <levon (a] movementarian.org>
   5291 
   5292 	* configure.in: specify distcheck ./configure flags.
   5293 	  Add version.h to distclean.
   5294 
   5295 	* doc/Makefile.am: 
   5296 	* doc/xsl/xhtml-1.in:
   5297 	* doc/xsl/xhtml-chunk-1.in: fix make distcheck
   5298 
   5299 2003-03-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   5300 
   5301 	* doc/xsl/.cvsignore: update
   5302 
   5303 	* module/x86/cpu_type.c: <smpboot.h> is not necessary
   5304 
   5305 2003-03-07  John Levon  <levon (a] movementarian.org>
   5306 
   5307 	* README: document autogen.sh
   5308 
   5309 2003-03-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   5310 
   5311 	* TODO: update
   5312 
   5313 	* doc/xsl/xhtml.xsl.in: move to
   5314 	* doc/xsl/xhtml-1.xsl.in: here
   5315 	* doc/xsl/xhtml-chunk.xsl.in: move to
   5316 	* doc/xsl/xhtml-chunk-1.xsl.in: here
   5317 	* doc/Makefile.am; update according
   5318 	* configure.in: avoid to touch doc/xsl generated files
   5319 
   5320 2003-03-07  Philippe Elie  <phil.el (a] wanadoo.fr>
   5321 
   5322 	* TODO: update
   5323 
   5324 	* daemon/opd_image.c:
   5325 	* daemon/op_stats.c:
   5326 	* daemon/opd_stats.h: add statistics for nil image whilst receiving
   5327 	  user space samples.
   5328 
   5329 2003-03-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   5330 
   5331 	* TODO: update
   5332 
   5333 	* libdb/db_hash.h:
   5334 	* libdb/db_insert.c: get error message from db_insert()
   5335 
   5336 	* libdb/db_test.c:
   5337 	* dae/opd_proc.c:
   5338 	* daemon/opd_image.c:
   5339 	* libabi/abi_test.cpp:
   5340 	* libabi/op_import.cpp:
   5341 	* pp/op_merge.cpp: update according to the new api
   5342 
   5343 2003-03-06  John Levon  <levon (a] movementarian.org>
   5344 
   5345 	* doc/oprofile.xml: pedantry
   5346 
   5347 2003-03-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   5348 
   5349 	* TODO: update
   5350 
   5351 	* doc/oprofile.1.in:
   5352 	* doc/oprofile.xml: document --smart-demangle
   5353 
   5354 2003-03-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   5355 
   5356 	* module/ia64/op_pmu.c:
   5357 	* module/x86/op_nmi.c: remove #include <op_events.h>
   5358 
   5359 2003-03-06  John Levon  <levon (a] movementarian.org>
   5360 
   5361 	* utils/opcontrol: sh != C. This is the last opcontrol
   5362 	  bug, honest ! OK, maybe not.
   5363 
   5364 2003-03-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   5365 
   5366 	* TODO: update
   5367 
   5368 	* gui/oprof_start.cpp: save_config() gcc 2.95.3 warning work-around
   5369 
   5370 2003-03-05  John Levon  <levon (a] movementarian.org>
   5371 
   5372 	* utils/opcontrol: Make --setup optional (e.g.
   5373 	  opcontrol --no-vmlinux). Fix a bug in the --setup
   5374 	  exclusive arg testing.
   5375 
   5376 	* doc/oprofile.xml: reflect the above
   5377 
   5378 2003-03-05  John Levon  <levon (a] movementarian.org>
   5379 
   5380 	* libutil++/string_manip.h:
   5381 	* libutil++/string_manip.cpp: cleanup, use s.find
   5382 	  because older gcc's don't have the right s.compare
   5383 
   5384 2003-03-04  John Levon  <levon (a] movementarian.org>
   5385 
   5386 	* utils/opcontrol: only sleep 2 after dump on 2.4
   5387 
   5388 2003-03-04  John Levon  <levon (a] movementarian.org>
   5389 
   5390 	* configure.in: tweak the xsltproc test
   5391 
   5392 2003-03-04  John Levon  <levon (a] movementarian.org>
   5393 
   5394 	* configure.in:
   5395 	* doc/Makefile.am: don't try to build the docs
   5396 	  if it will fail.
   5397 
   5398 2003-03-04  John Levon  <levon (a] movementarian.org>
   5399 
   5400 	* utils/opcontrol:
   5401 	* daemon/opd_kernel.h:
   5402 	* daemon/opd_image.c:
   5403 	* daemon/opd_kernel.c:
   5404 	* daemon/oprofiled.c: implement --no-vmlinux.
   5405  	  Remove back compat for is_kernel.
   5406 
   5407 	* gui/uioprof_start.base.ui:
   5408 	* gui/oprof_start.cpp:
   5409 	* gui/oprof_start_config.h:
   5410 	* gui/oprof_start_config.cpp: support the above
   5411 
   5412 	* doc/oprofile.1.in:
   5413 	* doc/oprofile.xml: doc the above
   5414 
   5415 2003-03-04  John Levon  <levon (a] movementarian.org>
   5416 
   5417 	* utils/opcontrol: allow --version, --help early on
   5418 
   5419 2003-03-04  John Levon  <levon (a] movementarian.org>
   5420 
   5421 	* libop/op_events.c: alter the parser to give file/linenr on
   5422 	  error, and handle more whitespace.
   5423 
   5424 2003-03-04  John Levon  <levon (a] movementarian.org>
   5425 
   5426 	* gui/oprof_start.cpp:
   5427 	* gui/oprof_start.h:
   5428 	* gui/oprof_start_config.cpp:
   5429 	* gui/oprof_start_config.h:
   5430 
   5431 	* libutil++/string_manip.h:
   5432 	* libutil++/string_manip.cpp: add is_prefix(),
   5433 	  make the trimmers take an argument
   5434 
   5435 2003-03-04  John Levon  <levon (a] movementarian.org>
   5436 
   5437 	* gui/oprof_start.cpp:
   5438 	* gui/oprof_start.h:
   5439 	* gui/oprof_start_config.cpp:
   5440 	* gui/oprof_start_config.h:
   5441 	* gui/persistent_config.h:
   5442 
   5443 	* libutil++/string_manip.h:
   5444 	* libutil++/string_manip.cpp: add split(), tobool(), touint()
   5445 
   5446 	* utils/opcontrol: don't write BUF_SIZE twice. Write
   5447 	  RTC_VALUE properly. Write KERNEL_ONLY
   5448 
   5449 2003-03-03  John Levon  <levon (a] movementarian.org>
   5450 
   5451 	* gui/oprof_start.cpp: use --ctrX-event=none,
   5452 	  --separate=none. --pid/pgrp-filter=0 was already
   5453 	  being done.
   5454 
   5455 2003-03-03  John Levon  <levon (a] movementarian.org>
   5456 
   5457 	* doc/oprofile.1.in:
   5458 	* doc/oprofile.xml:
   5459 	* doc/opcontrol: add --ctrX-event=none
   5460 
   5461 2003-03-03  Will Cohen  <wcohen (a] redhat.com>
   5462 
   5463 	* gui/oprof_start.cpp (oprof_start::on_start_profiler): Limit
   5464 	  check to only utm_bitmask.
   5465 
   5466 2003-03-03  Will Cohen  <wcohen (a] redhat.com>
   5467 
   5468     * events/ia64.itanium2.events:
   5469     * events/ia64.itanium2.unit_masks: Add Itanium 2 events.
   5470 
   5471 2003-03-03  Will Cohen  <wcohen (a] redhat.com>
   5472 
   5473     * libop/op_events.h:
   5474     * libop/op_events.c: Correct checking for the number of unit
   5475       masks.
   5476 
   5477 2003-03-03  John Levon  <levon (a] movementarian.org>
   5478 
   5479 	* doc/oprofile.1.in:
   5480 	* doc/oprofile.xml: another round of cleanups
   5481 
   5482 	* pp/op_merge.cpp: --counter not --use-counter,
   5483 	  for consistency
   5484 
   5485 2003-03-03  John Levon  <levon (a] movementarian.org>
   5486 
   5487 	Patch from Chris Moller, modified.
   5488 
   5489 	* dae/opd_proc.c:
   5490 	* dae/opd_sample_files.c:
   5491 	* daemon/opd_image.c:
   5492 	* daemon/opd_sample_files.c:
   5493 	* libabi/abi_test.cpp:
   5494 	* libabi/op_import.cpp:
   5495 	* libdb/db_hash.h:
   5496 	* libdb/db_insert.c:
   5497 	* libdb/db_manage.c:
   5498 	* libdb/db_test.c:
   5499 	* pp/counter_profile.cpp:
   5500 	* pp/op_merge.cpp: push asserts in libdb down into
   5501 	  the clients.
   5502 
   5503 2003-03-03  John Levon  <levon (a] movementarian.org>
   5504 
   5505 	* doc/oprofile.xml:
   5506 	* doc/oprofile.1.in:
   5507 	* utils/opcontrol: add --separate=none, --pid/pgrp-filter=non
   5508 
   5509 2003-03-03  John Levon  <levon (a] movementarian.org>
   5510 
   5511 	* configure.in:
   5512 	* doc/Makefile.am:
   5513 	* doc/oprofile.xml:
   5514 	* doc/xsl/xhtml-chunk.xsl.in:
   5515 	* doc/xsl/xhtml.xsl.in:
   5516 	* doc/xsl/xhtml-common.xsl: Add version to the
   5517 	  docs. Some doc cleanups
   5518 
   5519 2003-03-02  John Levon  <levon (a] movementarian.org>
   5520 
   5521 	* utils/opcontrol: --separate=library should turn kernel off
   5522 
   5523 2003-03-02  John Levon  <levon (a] movementarian.org>
   5524 
   5525 	* events/Makefile.am: fix uninstall
   5526 
   5527 2003-03-02  John Levon  <levon (a] movementarian.org>
   5528 
   5529 	* doc/oprofile.xml: more re-workings prodded by aeb
   5530 
   5531 2003-03-02  John Levon  <levon (a] movementarian.org>
   5532 
   5533 	* daemon/opd_kernel.c: remove /proc/ksyms reading
   5534 
   5535 2003-03-02  John Levon  <levon (a] movementarian.org>
   5536 
   5537 	* libutil/op_fileio.c: change op_get_line to return
   5538 	  NULL on EOF. Also bump up the default allocation some.
   5539 
   5540 	* dae/opd_kernel.c:
   5541 	* dae/opd_parse_proc.c:
   5542 	* daemon/opd_kernel.c:
   5543 	* libop/op_events.c: changes from the above
   5544 
   5545 2003-03-02  John Levon  <levon (a] movementarian.org>
   5546 
   5547 	* configure.in:
   5548 	* Makefile.am:
   5549 	* events/: add text files describing the CPU counters
   5550 	  and unit masks. Install them.
   5551 
   5552 	* libop/op_events.h:
   5553 	* libop/op_events.c: remove the bletcherous hard coded
   5554 	  descriptions.
   5555 
   5556 	* module/ia64/op_pmu.c:
   5557 	* module/x86/op_nmi.c: remove another big of validation
   5558 
   5559 	* libutil/op_list.h: make C++ friendly
   5560 
   5561 	* libop/op_cpu_type.h:
   5562 	* libop/op_cpu_type.c: add op_get_cpu_name()
   5563 
   5564 	* libop/Makefile:
   5565 	* libop/op_events_desc.h:
   5566 	* libop/op_events_desc.cpp: removed
   5567 
   5568 	* libop++/op_print_event.cpp:
   5569 	* utils/Makefile.am:
   5570 	* utils/op_help.c:
   5571 	* gui/oprof_start.h:
   5572 	* gui/oprof_start.cpp: changes from above
   5573 
   5574 2003-03-01  John Levon  <levon (a] movementarian.org>
   5575 
   5576 	* doc/oprofile.xml: tweaks
   5577 
   5578 	* utils/opcontrol: scale the default event count. Please
   5579 	  test ...
   5580 
   5581 2003-03-01  John Levon  <levon (a] movementarian.org>
   5582 
   5583 	* utils/opcontrol: setup default events. Allow part-setting
   5584 	  using --setup. Fix a help text.
   5585 
   5586 	* doc/oprofile.xml: changes from the above
   5587 
   5588 2003-03-01  John Levon  <levon (a] movementarian.org>
   5589 
   5590 	* libop/op_cpu_type.c: fix alpha/ev4 mis-detection
   5591 
   5592 2003-03-01  John Levon  <levon (a] movementarian.org>
   5593 
   5594 	* doc/oprofile.xml: expand intro a little, small fixes
   5595 
   5596 2003-03-01  John Levon  <levon (a] movementarian.org>
   5597 
   5598 	* pp/format_output.cpp: use "%" not "%-age"
   5599 
   5600 2003-02-28  John Levon  <levon (a] movementarian.org>
   5601 
   5602 	* utils/opcontrol: fix IS_TIMER setting, noticed by
   5603 	  Duncan Sands
   5604 
   5605 2003-02-28  John Levon  <levon (a] movementarian.org>
   5606 
   5607 	* configure.in: bump to 0.6cvs
   5608 
   5609 2003-02-28  John Levon  <levon (a] movementarian.org>
   5610 
   5611 	* doc/Makefile.am: tweak
   5612 
   5613 	* libregex/Makefile.am: fix make dist
   5614 
   5615 2003-02-27  John Levon  <levon (a] movementarian.org>
   5616 
   5617 	* configure.in: bump to 0.5.1
   5618 
   5619 2003-02-27  John Levon  <levon (a] movementarian.org>
   5620 
   5621 	* doc/oprofile.xml: clarify --separate=kernel
   5622 
   5623 2003-02-25  John Levon  <levon (a] movementarian.org>
   5624 
   5625 	* configure.in: clarify --with-kernel-support
   5626 
   5627 	* libop/op_events.c:
   5628 	* module/x86/op_nmi.c:
   5629 	* module/ia64/op_nmi.c: remove sanity checking - it's
   5630 	  the wrong place to have such code, is a barrier to op_events
   5631 	  cleanup, and makes life harder for NDAers.
   5632 
   5633 2003-02-25  Will Cohen <wcohen (a] redhat.com>
   5634 
   5635 	* utils/opcontrol (do_deinit): Correct search for /dev/oprofile.
   5636 
   5637 2003-02-24  Dave Jones <davej (a] codemonkey.org.uk>
   5638 
   5639 	* module/x86/op_apic.[c|h]: move NMI gate setup to architecture
   5640 	  specific SET_NMI_GATE macro. x86=no change.
   5641 	  Make x86-64 use the kernels _set_gate instead of its own open
   5642 	  coded variant.
   5643 
   5644 2003-02-23  John Levon  <levon (a] movementarian.org>
   5645 
   5646 	* version-1.h.in: another rename
   5647 
   5648 2003-02-23  John Levon  <levon (a] movementarian.org>
   5649 
   5650 	* configure.in: set up OP_DATADIR and OP_BINDIR
   5651 
   5652 	* gui/oprof_start.cpp:
   5653 	* libregex/demangle_symbol.cpp: use the above
   5654 
   5655 	* version_tpl.h.in: move to ...
   5656 
   5657 	* version.h.in.in: ... here
   5658 
   5659 2003-02-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   5660 
   5661 	* TODO: update
   5662 
   5663 	* configure.in: add AX_COPY_IF_CHANGE() use it to generate version.h
   5664 	* .cvsignore: update
   5665 
   5666 	* gui/Makefile.am:
   5667 	* gui/oprof_start.cpp:
   5668 	* libregex/Makefile.am:
   5669 	* libregex/demangle_symbol.cpp: don't use -DBINDIR, rather include
   5670 	  version.h to get install path
   5671 
   5672 2003-02-23  John Levon  <levon (a] movementarian.org>
   5673 
   5674 	* README: quick start build insns
   5675 
   5676 2003-02-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   5677 
   5678 	* TODO: update
   5679 
   5680 	* libregex/Makefile.am: install stl.pat in $prefix/share/oprofile
   5681 	* libregex/demangle_symbol.cpp: use DATADIR not BINDIR
   5682 	* libregex/magle-name.txt: add test for pointer
   5683 	* libregex/stl.pat: partial support for pointer
   5684 
   5685 2003-02-23  John Levon  <levon (a] movementarian.org>
   5686 
   5687 	* autogen.sh: error out if options passed
   5688 
   5689 2003-02-23  John Levon  <levon (a] movementarian.org>
   5690 
   5691 	* libregex/op_regex.h:
   5692 	* libregex/regex_test.cpp: fix std::
   5693 
   5694 2003-02-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   5695 
   5696 	* libutil++/demangle_symbol.cpp:
   5697 	* libutil++/demangle_symbol.h: move to
   5698 	* libregex/demangle_symbol.cpp:
   5699 	* libregex/demangle_symbol.h: here to avoid circular reference between
   5700 	  libutil++ and libregex
   5701 	* libregex/Makefile.am:
   5702 	* libutil++/Makefile.am: update according to file move
   5703 
   5704 	* pp/Makefile.am:
   5705 	* pp/op_time.cpp:
   5706 	* pp/op_time_options.cpp:
   5707 	* pp/op_to_source.cpp:
   5708 	* pp/op_to_source_options.cpp:
   5709 	* pp/oprofpp.cpp:
   5710 	* pp/oprofpp_options.cpp: add -D --Demangle options enabling C++
   5711 	  demangled name filtering.
   5712 
   5713 2003-02-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   5714 
   5715 	* libutil++/string_manip.h:
   5716 	* libutil++/string_manip.cpp: trim(), ltrim(), rtrim() new functions
   5717 
   5718 	* Makefile.am: handle libregex directory
   5719 	* configure.in: handle libregex/Makefile
   5720 
   5721 	* libregex/.cvsignore:
   5722 	* libregex/Makefile.am :
   5723 	* libregex/mangled-name.txt:
   5724 	* libregex/op_regex.cpp:
   5725 	* libregex/op_regex.h:
   5726 	* libregex/regex_test.cpp:
   5727 	* libregex/stl.pat: new file implementing a match and replace regular
   5728 	  expression around glibc regex. Not used for now, next commit will
   5729 	  use this for pp tools C++ name demangling.
   5730 
   5731 2003-02-22  John Levon  <levon (a] movementarian.org>
   5732 
   5733 	* configure.in: fix X, non-Qt build case
   5734 
   5735 2003-02-22  John Levon  <levon (a] movementarian.org>
   5736 
   5737 	* libutil++/Makefile.am: fix make dist
   5738 
   5739 2003-02-21  Dave Jones <davej (a] codemonkey.org.uk>
   5740 
   5741 	* configure.in: Enable building on hammer again.
   5742 
   5743 2003-02-21  John Levon  <levon (a] movementarian.org>
   5744 
   5745 	* utils/opcontrol: "Params used" was lying
   5746 
   5747 2003-02-20  John Levon  <levon (a] movementarian.org>
   5748 
   5749 	* daemon/opd_image.c: Fixed a bitch of a bug with separate-kernel,
   5750 	  now attribution of kernel samples should be more accurate
   5751 
   5752 2003-02-20  John Levon  <levon (a] movementarian.org>
   5753 
   5754 	* utils/opcontrol: set LIB_SAMPLES if KERNEL_SAMPLES in .daemonrc
   5755 
   5756 2003-02-20  John Levon  <levon (a] movementarian.org>
   5757 
   5758 	* dae/opd_stats.h:
   5759 	* dae/opd_stats.c:
   5760 	* daemon/opd_stats.h:
   5761 	* daemon/opd_stats.c:
   5762 	* dae/opd_proc.c:
   5763 	* daemon/opd_image.c: remove unused OPD_SAMPLE_COUNTS. Actually
   5764 	  count samples for 2.5
   5765 
   5766 2003-02-20  John Levon  <levon (a] movementarian.org>
   5767 
   5768 	* libop/op_interface_25.h:
   5769 	* daemon/opd_kernel.c: implement module dropping
   5770 
   5771 	* daemon/opd_image.c:
   5772 	* daemon/opd_kernel.c: attempt to make verbose logs
   5773 	  less confusing
   5774 
   5775 2003-02-22  Dave Jones <davej (a] codemonkey.org.uk>
   5776 
   5777 	* libop/op_events.c: segregload is utm_mask not utm_exclusive
   5778 
   5779 2003-02-20  Philippe Elie  <phil.el (a] wanadoo.fr>
   5780 
   5781 	* TODO: update
   5782 
   5783 	* pp/output_format.h:
   5784 	* pp/output_format.cpp:
   5785 	* pp/op_time.cpp:
   5786 	* pp/oprofpp.cpp:
   5787 	* pp/opp_symbol.h: better handling of 64/32 bits bfd_vma
   5788 	  in output
   5789 
   5790 2003-02-20  John Levon  <levon (a] movementarian.org>
   5791 
   5792 	* libutil++/op_exception.h:
   5793 	* libutil++/op_exception.cpp: throw() where needed
   5794 
   5795 2003-02-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   5796 
   5797 	* TODO: update
   5798 
   5799 	* daemon/opd_image.h:
   5800 	* daemon/opd_image.cpp:
   5801 	* daemon/opd_kernel.cpp: fix thinko with --separate=kernel resulting
   5802 	  in duplicate opening of the same samples file.
   5803 
   5804 2003-02-19  Philippe Elie  <phil.el (a] wanadoo.fr>
   5805 
   5806 	* libutil++/op_exception.h:
   5807 	* libutil++/op_exception.cpp: new files, base class for exception.
   5808 	  Not used for now.
   5809 
   5810 2003-02-19  John Levon  <levon (a] movementarian.org>
   5811 
   5812 	* acinclude.m4: update from upstream
   5813 
   5814 	* gui/ui/oprof_start.base.ui:
   5815 	* gui/oprof_start.cpp: separate --setup,--start.
   5816 	  Hide non-2.5 stuff in 2.5.
   5817 
   5818 2003-02-18  Philippe Elie  <phil.el (a] wanadoo.fr>
   5819 
   5820 	* TODO: update
   5821 
   5822 	* dae/opd_sample_files.c:
   5823 	* daemon/opd_sample_files.c: opd_handle_old_sample_file() don't
   5824 	  try to delete old samples files if they don't exist.
   5825 
   5826 2003-02-18  Will Cohen  <wcohen (a] redhat.com>
   5827 
   5828 	* utils/opcontrol (do_options): Better option error checking.
   5829 
   5830 2003-02-17  Will Cohen  <wcohen (a] redhat.com>
   5831 
   5832 	* pp/format_output.h (show_help): namespace std.
   5833 
   5834 2003-02-17  Will Cohen  <wcohen (a] redhat.com>
   5835 
   5836 	* TODO: update.
   5837 
   5838 2003-02-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   5839 
   5840 	From Anton Blanchard :
   5841 
   5842 	* daemon/opd_image.c: cookie_t fix for 64 bits
   5843 
   5844 2003-02-17  Philippe Elie  <phil.el (a] wanadoo.fr>
   5845 
   5846 	* TODO: update
   5847 
   5848 	* libopt++/popt_options.cpp:
   5849 	* libopt++/popt_options.h: handle an user specific additional
   5850 	  help string
   5851 
   5852 	* pp/output_format.h:
   5853 	* pp/output_format.cpp:
   5854 	* pp/op_time_options.cpp:
   5855 	* pp/oprofpp_options.cpp: use it to show in --output_format
   5856 	  options details.
   5857 
   5858 2003-02-14  Philippe Elie  <phil.el (a] wanadoo.fr>
   5859 
   5860 	* doc/oprofile.1.in:
   5861 	* doc/oprofile.xml:
   5862 	* pp/oprofpp_options.cpp: allow --show-shared-libs with -s
   5863 
   5864 2003-02-13  Philippe Elie  <phil.el (a] wanadoo.fr>
   5865 
   5866 	* TODO: update
   5867 
   5868 	* pp/output_format.h:
   5869 	* pp/output_format.cpp: fix #686272, crash when using
   5870 	  oprofpp -s symb_name.
   5871 
   5872 2003-02-13  Philippe Elie  <phil.el (a] wanadoo.fr>
   5873 
   5874 	* dae/opd_kernel.h:
   5875 	* dae/opd_image.h:
   5876 	* dae/opd_image.c: don't use hash entry zero for kernel image
   5877 	 fix #686175
   5878 
   5879 2003-02-13  Will Cohen  <wcohen (a] redhat.com>
   5880 
   5881 	* daemon/opd_cookie.h(opd_nr_lookup_dcookie): Correct number.
   5882 
   5883 2003-02-13  Will Cohen  <wcohen (a] redhat.com>
   5884 
   5885 	* daemon/opd_cookie.h(opd_nr_lookup_dcookie): Add x86_64.
   5886 
   5887 2003-02-13  John Levon  <levon (a] movementarian.org>
   5888 
   5889 	* dae/opd_image.c: little cleanup and fix error message
   5890 	  to not lie
   5891 
   5892 2003-02-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   5893 
   5894 	* doc/oprofile.1.in:
   5895 	* doc/oprofile.xml: enhance doc about --separate=kernel
   5896 
   5897 	* utils/opcontrol: handle gracefully opcontrol --deinit if profiler
   5898 	  was already shutdown. Avoid wrong warning when umount /dev/oprofile
   5899 
   5900 2003-02-12  Will Cohen  <wcohen (a] redhat.com>
   5901 
   5902 	* gui/oprof_start.cpp (oprof_start::oprof_start,
   5903 	    oprof_start::on_flush_profiler_data,
   5904 	    oprof_start::on_start_profiler,
   5905 	    oprof_start::on_stop_profiler): Use opcontrol.
   5906 	* gui/oprof_start_util.cpp (daemon_status::daemon_status):
   5907 	    Allow reading interrupt info from new kernel interface.
   5908 	* libop/op_get_interface.c: New.
   5909 	* libop/Makefile.am: Add libop/op_get_interface.c.
   5910 	* libop/op_cpu_type.h: Add enum op_interface.
   5911 
   5912 	I Added some bits. Phil
   5913 	* gui/oprof_start.cpp: correct --separate= handling
   5914 	* gui/oprof_start_util.cpp: read only the real number of interrupts
   5915 
   5916 2003-02-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   5917 
   5918 	* utils/opcontrol: handle --note-table-size --kernel-only (2.4 kernel)
   5919 
   5920 2003-02-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   5921 
   5922 	* utils/op_start: map --separate-samples to daemon option
   5923 	  --separate-lib-samples.
   5924 
   5925 2003-02-11  Philippe Elie  <phil.el (a] wanadoo.fr>
   5926 
   5927 	* dae/opd_image.c:
   5928 	* dae/opd_kernel.c:
   5929 	* dae/opd_kernel.h:
   5930 	* dae/opd_parse_proc.c:
   5931 	* dae/opd_proc.c:
   5932 	* dae/opd_proc.h:
   5933 	* dae/opd_sample_files.c:
   5934 	* dae/oprofiled.c:
   5935 	* daemon/opd_image.c:
   5936 	* daemon/opd_image.h:
   5937 	* daemon/opd_kernel.c:
   5938 	* daemon/opd_kernel.h:
   5939 	* daemon/opd_sample_files.c:
   5940 	* daemon/oprofiled.c: per application kernel samples files
   5941 
   5942 	* doc/oprofile.1.in:
   5943 	* doc/oprofile.xml: document opcontrol --separate=kernel
   5944 
   5945 	* gui/oprof_start.cpp:
   5946 	* gui/oprof_start_config.cpp:
   5947 	* gui/oprof_start_config.h:
   5948 	* gui/ui/oprof_start.base.ui: remove ignore_daemon checkbox, handle
   5949 	  --separate=[library|kernel]
   5950 
   5951 	* libop/op_sample_file.h: add separate_kernel_samples field, file
   5952 	  format is backward compatible
   5953 
   5954 	* libabi/abi.cpp:
   5955 	* libabi/abi_test.cpp:
   5956 	* libabi/op_import.cpp: handle new samples file header field
   5957 
   5958 	* pp/counter_profile.cpp: dump new sample files header field.
   5959 
   5960 	* utils/opcontrol: handle --separate=kernel
   5961 
   5962 2003-02-09  Will Cohen  <wcohen (a] redhat.com>
   5963 
   5964 	* utils/opcontrol: Add rtc-value option.
   5965 
   5966 2003-02-09  John Levon  <levon (a] movementarian.org>
   5967 
   5968 	* utils/opcontrol: stale lock file detection
   5969 
   5970 2003-02-06  Will Cohen  <wcohen (a] redhat.com>
   5971 
   5972 	* utils/opcontrol (do_dump): Do not exit if no daemon.
   5973 
   5974 2003-02-06  Will cohen  <wcohen (a] redhat.com>
   5975 
   5976 	* doc/oprofile.1.in: Update man page information.
   5977 
   5978 2003-02-03  John Levon  <levon (a] movementarian.org>
   5979 
   5980 	* configure.in: 0.6cvs
   5981 
   5982 2003-02-02  John Levon  <levon (a] movementarian.org>
   5983 
   5984 	* configure.in: bump to 0.5
   5985 
   5986 2003-02-02  John Levon  <levon (a] movementarian.org>
   5987 
   5988 	* configure.in: disable x86_64
   5989 
   5990 2003-02-02  John Levon  <levon (a] movementarian.org>
   5991 
   5992 	* pp/format_output.cpp: revert previous patch, Phil's
   5993 	  x86 binutils is built with 64-bit bfd_vma
   5994 
   5995 2003-02-01  John Levon  <levon (a] movementarian.org>
   5996 
   5997 	* utils/opcontrol: rename --separate-samples to --separate=library
   5998 	  for future proofing.
   5999 
   6000 	* pp/format_output.cpp: output vma at a suitable width
   6001 
   6002 2003-01-31  Will Cohen  <wcohen (a] redhat.com>
   6003 
   6004 	* utils/opcontrol(get_kernel_range): Match only .text segment.
   6005 
   6006 2003-01-31  Graydon Hoare  <graydon (a] redhat.com>
   6007 
   6008 	* libabi/abi.cpp
   6009 	* libabi/abi_test.cpp
   6010 	* libabi/op_import.cpp: Treat endianness as a property of the datum
   6011 	being imported, rather than the memory architecture.
   6012 
   6013 2003-01-31  Dave Jones <davej (a] codemonkey.org.uk>
   6014 
   6015 	* module/x86/op_model_athlon.c: Don't poke reserved bits in the counter.
   6016 	  Only rdmsr/wrmsr counters that we've enabled in the NMI handler.
   6017 	  ulong->uint conversion.
   6018 
   6019 2003-01-30  Philippe Elie  <phil.el (a] wanadoo.fr>
   6020 
   6021 	From Randolph Chung :
   6022 
   6023 	* daemon/opd_cookie.h: add parisc support
   6024 
   6025 2003-01-30  John Levon  <levon (a] movementarian.org>
   6026 
   6027 	From Anton Blanchard :
   6028 
   6029 	* daemon/opd_cookie.h: add ppc32/64
   6030 
   6031 	* utils/op_start_25: fix start of kernel for ppc
   6032 
   6033 2003-01-30  Will Cohen  <wcohen (a] redhat.com>
   6034 
   6035 	* utils/opcontrol(get_kernel_range): Avoid using perl arithmetic.
   6036 
   6037 2003-01-29  Dave Jones <davej (a] codemonkey.org.uk>
   6038 
   6039 	* utils/opcontrol: Trying to use the options --pid-filter=pid and
   6040 	  --pgmr-filter=pgmr, opcontrol returned "command not found.
   6041 	  This was due to 2 missing 'test' statements.
   6042 	
   6043 2003-01-29  Philippe Elie  <phil.el (a] wanadoo.fr>
   6044 
   6045 	* pp/op_to_source.cpp: read vma with strtoull not strtoul fixing
   6046 	  32/64 failure to read output of objdump
   6047 
   6048 2003-01-29  Dave Jones <davej (a] codemonkey.org.uk>
   6049 
   6050 	* libop/op_cpu_type.c: Clue the user in on why the cpu type isn't
   6051 	  recognised, by suggesting the module wasn't loaded.
   6052 	* libop/op_events.c: Doh, unit masks use bit numbers, not values.
   6053 
   6054 2003-01-28  Philippe Elie  <phil.el (a] wanadoo.fr>
   6055 
   6056 	* utils/op_help.c: get cpu type only if not forced on command line.
   6057 	  Avoid wrong warning about unsupported cpu type.
   6058 
   6059 2003-01-27  Will Cohen  <wcohen (a] redhat.com>
   6060 
   6061 	* daemon/opd_cookie.h(opd_nr_lookup_dcookie): Add ia64 version.
   6062 
   6063 2003-01-27  Dave Jones <davej (a] codemonkey.org.uk>
   6064 
   6065 	* libop/op_events.c: K8 HT events are utm_exclusive, not utm_bitmask
   6066 	* libop/op_events.c: Add additional K8 unit masks.
   6067 
   6068 2003-01-23  Philippe Elie  <phil.el (a] wanadoo.fr>
   6069 
   6070 	* libop/op_interface_25.h:
   6071 	* daemon/opd_image.c: prepare drop modules support. exit() when
   6072 	  receiving unknown escape code.
   6073 
   6074 2003-01-23   Randolph Chung  <tausq (a] debian.org>
   6075 
   6076 	Added minor change: backward compatibility, u_int to uint, fix
   6077 	32/64 bits escape code marker comparison. Phil
   6078 
   6079 	* libop/op_interface_25.h:
   6080 	* daemon/opd_kernel.c:
   6081 	* daemon/opd_image.c: new scheme to recognize kernel or user space
   6082 	  eip, now kernel module pass the relevent information through
   6083 	  escape sequence.
   6084 
   6085 2003-01-21  Dave Jones <davej (a] codemonkey.org.uk>
   6086 
   6087 	* libop/op_events.c: Add unit mask for Hypertransport events.
   6088 
   6089 2003-01-21  Dave Jones <davej (a] codemonkey.org.uk>
   6090 
   6091 	* libop/op_events.c: Add x86-64 specific events.
   6092 
   6093 2003-01-21  Philippe Elie  <phil.el (a] wanadoo.fr>
   6094 
   6095 	* daemon/opd_kernel.c: use sscanf to parse /proc/modules
   6096 
   6097 2003-01-20  Philippe Elie  <phil.el (a] wanadoo.fr>
   6098 
   6099 	* daemon/opd_kernel.c: more robust /proc/modules parsing.
   6100 
   6101 2003-01-20  Philippe Elie  <phil.el (a] wanadoo.fr>
   6102 
   6103 	* daemon/opd_kernel.c: 2.5 modules support, for now I keep
   6104 	  the code for /proc/ksyms parsing in daemon. Let's it living a few
   6105 	  weeks please.
   6106 
   6107 2003-01-18  Falk Hueffner  <falk (a] debian.org>
   6108 
   6109 	I added to the original patch all %L to %ll, Phil
   6110 
   6111 	* daemon/opd_image.c:
   6112 	* daemon/opd_kernel.c:
   6113 	* libutil/op_types.h: 64 bits printf/scanf safety.
   6114 
   6115 2003-01-18  Falk Hueffner  <falk (a] debian.org>
   6116 
   6117 	* libop/op_cpu_type.h:
   6118 	* libop/op_cpu_type.c: add Alpha CPU families.
   6119 	* libop/op_events.h: make op_event.cpu_mask u32, since we now have
   6120 	  more than 16 CPU types
   6121 	* libop/op_hw_config.h: bump OP_MAX_COUNTERS to 20 for Alpha
   6122 	* libop/op_events.c: add Alpha events
   6123 	* daemon/opd_cookie.h: add dcookie syscall number for Alpha
   6124 	* utils/op_help.c (main): add help string for Alpha
   6125 
   6126 2003-01-18  John Levon  <levon (a] movementarian.org>
   6127 
   6128 	* module/Makefile.in:
   6129 	* module/x86/Makefile.in:
   6130 	* module/ia64/Makefile.in: kernel headers are too fubar
   6131 	  for -Werror. So I'm taking my ball home.
   6132 
   6133 2003-01-17  John Levon  <levon (a] movementarian.org>
   6134 
   6135 	* HACKING:
   6136 	* doc/CodingStyle: add
   6137 
   6138 2003-01-17  John Levon  <levon (a] movementarian.org>
   6139 
   6140 	* TODO: some updates
   6141 
   6142 2003-01-15  Philippe Elie  <phil.el (a] wanadoo.fr>
   6143 
   6144 	* module/x86/op_model_p4.c: pmc_setup_one_p4_counter() show clearly
   6145 	  than event == 0 is an error
   6146 
   6147 2003-01-15  John Levon  <levon (a] movementarian.org>
   6148 
   6149 	* utils/opcontrol: prefer oprofiled/op_help binaries in the same
   6150 	  dir as opcontrol
   6151 
   6152 2003-01-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   6153 
   6154 	* libop/op_events.c: rename OP_P4_HT2 to OP_P4_ALL
   6155 
   6156 2003-01-12  Philippe Elie  <phil.el (a] wanadoo.fr>
   6157 
   6158 	* libop++/op_print_event.cpp: no event,nor unit mask for CPU_TIMER_INT,
   6159 	  problem reported by Ka Fai Lu.
   6160 
   6161 2003-01-12  John Levon  <levon (a] movementarian.org>
   6162 
   6163 	From Graydon Hoare
   6164 
   6165 	* libop/op_cpu_type.h:
   6166 	* libop/op_cpu_type.c: add P4 HT
   6167 
   6168 	* libop/op_events.c: tag P4 HT events
   6169 
   6170 2003-01-11   Randolph Chung  <tausq (a] debian.org>
   6171 
   6172 	* daemon/oprofiled.c: fix ELF sniff
   6173 
   6174 2003-01-11  John Levon  <levon (a] movementarian.org>
   6175 
   6176 	* daemon/opd_image.c: bail out immediately on dcookie
   6177 	  lookup failure.
   6178 
   6179 2003-01-10  John Levon  <levon (a] movementarian.org>
   6180 
   6181 	* daemon/opd_cookie.h: insulate against missing arch support
   6182 	  for sys_lookup_dcookie
   6183 
   6184 	* daemon/opd_image.c: use the above
   6185 
   6186 2003-01-10  John Levon  <levon (a] movementarian.org>
   6187 
   6188 	* daemon/opd_image.c:
   6189 	* daemon/oprofiled.c: move complete_dump to a better place
   6190 
   6191 2003-01-10  John Levon  <levon (a] movementarian.org>
   6192 
   6193 	* libutil/op_types.h: add cookie_t and vma_t
   6194 
   6195 	* daemon/opd_image.c:
   6196 	* daemon/opd_image.h:
   6197 	* daemon/opd_kernel.c:
   6198 	* daemon/opd_kernel.h: use above types, and kernel_pointer_size
   6199 
   6200 	* daemon/oprofiled.c: sniff /proc/kcore for kernel_pointer_size
   6201 
   6202 2003-01-10  Philippe Elie  <phil.el (a] wanadoo.fr>
   6203 
   6204 	* libopt++/popt_options.cpp:
   6205 	* libopt++/popt_options.h: work-around to support both gcc new parser
   6206 	  and gcc 2.95
   6207 
   6208 2003-01-08  John Levon  <levon (a] movementarian.org>
   6209 
   6210 	* libop/op_type.cpp: support for ascii-string cpu types
   6211 
   6212 2003-01-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   6213 
   6214 	* libutil++/op_bfd.cpp:
   6215 	* libutil++/op_bfd.h:
   6216 	* pp/oprofpp.cpp: more use of bfd_vma
   6217 
   6218 2003-01-08  Philippe Elie  <phil.el (a] wanadoo.fr>
   6219 
   6220 	* libdb/Makefile.am: fix include dir
   6221 	* libdb/db_test.c: don't assume than sizeof(struct opd_header) == 128
   6222 
   6223 2003-01-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   6224 
   6225 	* libutil++/op_bfd.h: fix for 64 bits.
   6226 
   6227 2003-01-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   6228 
   6229 	* libabi/abi.cpp:
   6230 	* libabi/op_import.cpp: broken by my last change in libdb.
   6231 
   6232 2003-01-06  Philippe Elie  <phil.el (a] wanadoo.fr>
   6233 
   6234 	* db/db_hash.h: do_hash() use db_key_t as parameter
   6235 
   6236 2003-01-04  John Levon  <levon (a] movementarian.org>
   6237 
   6238 	* pp/op_time.cpp: suggest opcontrol --dump instead
   6239 
   6240 	* utils/opcontrol: implement --start-daemon. Fix a number
   6241 	  of bugs
   6242 
   6243 	* doc/oprofile.xml:
   6244 	* doc/oprofile.1.in: document --start-daemon
   6245 
   6246 2003-01-03  Will Cohen  <wcohen (a] redhat.com>
   6247 
   6248 	* daemon/oprofiled.c (opd_do_samples): Typecast to match
   6249 	  arguments.
   6250 
   6251 See ChangeLog-2002 for earlier changelogs.
   6252