Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
6252 lines (4207 sloc) 167 KB
2003-12-29 Philippe Elie <phil.el@wanadoo.fr>
* configure.in: my_op_prefix is not necessarily suffixed by a '/'
2003-12-29 John Levon <levon@movementarian.org>
* configure.in:
* doc/*.1.in: add HTML docs to SEE ALSO
2003-12-29 John Levon <levon@movementarian.org>
* doc/opcontrol.1.in:
* doc/oprofile.xml: minor language cleanups
* utils/opcontrol: only allow --verbose when it makes sense
2003-12-28 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/tests/file_manip_tests.cpp: ensure filename passed to
op_realpath() exists
2003-12-28 John Levon <levon@movementarian.org>
* doc/internals.xml:
* libutil++/file_manip.h: fix typos
2003-12-16 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: error message rewording
2003-12-16 Carlo Wood <carlo@alinoe.com>
* libregex/tests/Makefile.am: avoid to install mangled-name test file
2003-11-20 John Levon <levon@movementarian.org>
* libregex/op_regex.cpp: move global ctor out of namespace
anon (bug #845616)
2003-11-19 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: merge all unit mask before generating
event description string
2003-11-17 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: put unitmask in the same axis as
event:count, meaning than unitmask is now a part of the event
specification.
2003-12-19 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_sfile.c: we reversed to/from pc in call graph sample
2003-11-23 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile.h:
* pp/opgprof.cpp: oops a simplify a bit too cg handling in my last
patch, it was segfaulting each time no cg file was found...
2003-11-15 Philippe Elie <phil.el@wanadoo.fr>
* pp/opgprof.cpp: simplify a bit cg handling, we don't need to know
if we retrieved some cg files since the profile_t will be empty
in this case
2003-11-15 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile.h: iterator::vma() must return the full key not only
an unsigned int.
* pp/opgprof.cpp: implement merging of cg files.
2003-11-15 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_spec.cpp:
* libpp/profile_spec.h:
* pp/opannotate_options.cpp:
* pp/opgprof_options.cpp:
* pp/opreport_options.cpp: filter call graph samples files
2003-11-14 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_mangling.c: oops, it's better to really open the cg file
* daemon/opd_sfile.c:
* daemon/opd_stats.c:
* daemon/opd_stats.h:
* daemon/liblegacy/opd_24_stats.c:
* daemon/liblegacy/opd_24_stats.h:
* daemon/liblegacy/opd_proc.c: log sample lost due to sample file open
failure
2003-11-15 Philippe Elie <phil.el@wanadoo.fr>
* daemon/liblegacy/opd_parse_proc.c: always provide an image name
for parsed process in /proc
2003-11-15 Philippe Elie <phil.el@wanadoo.fr>
* doc/oprofile.xml:
* libop/op_cpu_type.c: s/hammer/AMD64 processors/ for user visible
name.
2003-11-13 John Levon <levon@movementarian.org>
* libutil/op_file.h:
* libutil/op_file.c: remove op_c_dirname(),
op_relative_to_absolute_path(), op_is_directory(),
op_follow_link(), in favour of using realpath(3)
* libutil/tests/file_tests.c: fixes for above changes
* libutil++/file_manip.h:
* libutil++/file_manip.cpp: changes from above. Add
op_realpath().
* libutil++/tests/file_manip_tests.cpp: changes from
above.
* daemon/oprofiled.c:
* daemon/liblegacy/opd_parse_proc.c:
* gui/oprof_start_util.cpp:
* libpp/locate_images.cpp:
* libpp/profile_spec.cpp:
* pp/opannotate.cpp: changes from above
2003-11-12 John Levon <levon@movementarian.org>
* configure.in: bump to 0.8cvs
2003-11-11 John Levon <levon@movementarian.org>
* configure.in: bump to 0.7.1
2003-11-11 Joseph VanAndel <unknown@unknown.org>
* daemon/liblegacy/init.c: fix #840046 (segfault when starting profiler
with --no-vmlinux setup), this bug was present in 0.7.0.
2003-11-11 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_spec.cpp: more precise error message
* libutil++/tests/file_manip_tests.cpp: corner case test added
for dirname
2003-11-11 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: report_error() shows only distinct
conflicting name.
2003-11-10 Philippe Elie <phil.el@wanadoo.fr>
* doc/opcontrol.1.in: reverse kernel:user in event setting description.
Fix #838968
2003-11-09 Philippe Elie <phil.el@wanadoo.fr>
* daemon/init.c:
* daemon/liblegacy/init.c: move opd_read_fs_int ...
* daemon/oprofiled.h:
* daemon/oprofiled.c: here
* daemon/liblegacy/opd_24_stats.c: dump kernel note buffer overflow and
buffer overlow
2003-11-09 Philippe Elie <phil.el@wanadoo.fr>
* utils/op_help.c: do not use OP_MAX_COUNTERS but get counter number
at runtime
2003-11-09 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/tests/string_manip_tests.cpp: rtrim/ltrim/trim tests
2003-11-08 Philippe Elie <phil.el@wanadoo.fr>
* libop/tests/Makefile.am:
* libop/tests/mangle_tests.c: new tests: sample filename mangling
2003-11-08 Philippe Elie <phil.el@wanadoo.fr>
* module/x86/op_syscalls.c: fix build with 2.2 kernel
2003-11-06 Philippe Elie <phil.el@wanadoo.fr>
* Makefile.am: use .PHONY for module goal to not statisfy this goal
with the subdir named module
* m4/findkernel.m4: minor fix.
2003-11-06 John Levon <levon@movementarian.org>
* Makefile.am: minor cleanup
2003-11-06 John Levon <levon@movementarian.org>
* gui/Makefile.am: remove unused -DKVERSION
2003-11-06 John Levon <levon@movementarian.org>
* configure.in: add --disable-werror and --disable-optimization
* doc/oprofile.xml: document above. Remove docs for
* --enable-gcov (only useful to developers)
2003-11-06 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_kernel.c:
* daemon/liblegacy/opd_kernel.c: be less paranoid about kernel range,
this is slightly different than the patch Thomas Spatzier tested but
it can't hurt (famous last words ...). This fixes s390x where kernel
start can be zero and was rejected.
2003-11-06 Thomas Spatzier <tspat@de.ibm.com>
* daemon/opd_cookie.c: changed an #if defined for selecting right
system call for IBM s390 or s390x, respectively
2003-11-04 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/path_filter.cpp: remove 2 identical FIXME
* libutil++/tests/file_manip_tests.cpp:
* libutil++/tests/path_filter_tests.cpp: reflect the behavior by
new tests
2003-11-04 Philippe Elie <phil.el@wanadoo.fr>
* libdb/db_manage.c:
* libop/op_events.h: -pedantic fix
2003-11-04 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_sfile.c:
* daemon/liblegacy/opd_kernel.c:
* libutil/op_cpufreq.c:
* libutil/op_file.c: a few s/goto/break/
* libpp/format_output.cpp: padding never used after initialization
2003-11-04 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/comma_list.h: don't accept cumulative behavior
* libutil++/string_manip.cpp: separate_token() return by value
* gui/oprof_start.cpp:
* libopt++/popt_options.cpp:
* libpp/parse_filename.cpp:
* libpp/profile_spec.cpp:
* libutil++/comma_list.h:
* libutil++/string_filter.cpp:
* libutil++/string_manip.cpp:
* libutil++/string_manip.h:
* libutil++/tests/comma_list_tests.cpp:
* libutil++/tests/string_manip_tests.cpp: update according
* libpp/profile_spec.cpp: remove all trace of defunct op_alias
2003-11-04 Philippe Elie <phil.el@wanadoo.fr>
* daemon/liblegacy/opd_image.c:
* daemon/liblegacy/opd_image.h:
* daemon/liblegacy/opd_mapping.c:
* daemon/liblegacy/opd_mapping.h:
* daemon/liblegacy/opd_proc.c:
* gui/oprof_start.cpp:
* gui/oprof_start.h:
* gui/oprof_start_config.cpp:
* gui/oprof_start_util.cpp:
* libop/op_config_24.h:
* libpp/format_output.cpp:
* libpp/op_header.cpp:
* libpp/profile.h:
* libpp/profile_container.cpp:
* libpp/profile_spec.cpp:
* libpp/profile_spec.h:
* libpp/symbol.h:
* libpp/symbol_sort.cpp:
* libutil++/stream_util.cpp:
* libutil++/stream_util.h:
* libutil++/utility.h:
* pp/common_option.cpp:
* pp/common_option.h:
* pp/opannotate_options.h:
* pp/opgprof.cpp:
* pp/opgprof_options.cpp:
* pp/opgprof_options.h:
* pp/opreport_options.cpp:
* pp/opreport_options.h:
* pp/populate.cpp: remove some .h dependencies
2003-11-03 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/tests/Makefile.am:
* libutil++/tests/utility_tests.cpp: new test files convering most of
utility.h and op_exception.h
2003-11-02 Philippe Elie <phil.el@wanadoo.fr>
* libpp/parse_filename.cpp: avoid repetitive vector::erase(v.begin())
* libregex/stl.pat.in:
* libregex/tests/mangled-name.in: add (i|o)stream operator(>>|<<)
2003-11-02 Philippe Elie <phil.el@wanadoo.fr>
* daemon/liblegacy/opd_image.h:
* daemon/liblegacy/opd_image.c:
* daemon/liblegacy/opd_proc.c:
* daemon/liblegacy/opd_sample_files.c: sparse sample file array
allocated by line.
2003-11-02 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/glob_filter.h:
* libutil++/path_filter.h:
* libutil++/string_filter.h: comment fix to match implementation
* libutil++/tests/path_filter_tests.cpp: new file test
* libutil++/tests/Makefile.am: upate build
* libutil++/tests/string_filter_tests.cpp: test white space at start
of pattern
2003-11-02 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/string_manip.cpp: format_double can only format percent
* libutil++/string_manip.h:
* libpp/format_output.cpp:
* libutil++/tests/string_manip_tests.cpp:
* pp/opannotate.cpp:
* pp/opreport.cpp: s/format_double/format_percent/
2003-11-02 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/glob_filter.h:
* libutil++/string_filter.h:
* libutil++/tests/string_filter_tests.cpp: minor tidy
* libutil++/tests/glob_filter_tests.cpp: new file
* libutil++/tests/Makefile.am: update build
2003-11-01 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: typo
* libutil++/generic_spec.cpp: removed file
* libutil++/Makefile.am: update according
* libutil++/generic_spec.h: ensure generic_spec<string> will not link
* libutil++/path_filter.cpp: minor tidy
2003-11-01 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/tests/string_manip_tests.cpp: ehance output on failure
* module/oprofile.h:
* module/oprofile.c: two new read-only sysctl: nr_buffer_overflow and
nr_note_buffer_overflow
2003-11-01 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/tests/Makefile.am:
* libutil++/tests/file_manip_tests.cpp: don't use getcwd nor __FILE__
but ${topdir} and hard coded filename
2003-11-01 John Levon <levon@movementarian.org>
* daemon/liblegacy/opd_parse_proc.c: use op_follow_link
* libutil/op_file.c:
* libutil/op_file.h: make op_get_link() static, rename
op_basename to op_c_basename
* libutil++/file_manip.cpp:
* libutil++/file_manip.h: rename to op_basename()/op_dirname().
Use op_follow_link() for follow_link().
* libutil++/tests/file_manip_tests.cpp:
* gui/oprof_start_util.cpp:
* libpp/locate_images.cpp:
* libpp/name_storage.cpp:
* libutil++/path_filter.cpp:
* pp/opannotate.cpp:
* pp/opreport.cpp: fixup from above changes
2003-11-01 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.h: has_debug_info() new member
* pp/populate.h:
* pp/populate.cpp:
* pp/opannotate.cpp: use it to error out when --assembly is not
requested and no debug information exists
2003-10-31 Philippe Elie <phil.el@wanadoo.fr>
* pp/common_option.cpp: don't exit() if merge_by.lib is set through
!allow_lib
2003-10-31 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport_options.cpp: move handle_merge_option() ...
* pp/common_option.h:
* pp/common_option.cpp: here
* pp/opannotate_options.cpp: use it but disallow --merge=lib
2003-10-31 Philippe Elie <phil.el@wanadoo.fr>
* libutil/op_file.c:
* libutil/op_file.h: implement dirname(), is_directory() and
op_follow_link()
* daemon/oprofiled.c: follow symlink for image filter
* libutil++/file_manip.cpp:
* libutil++/file_manip.h:
* gui/oprof_start_util.cpp:
* libpp/profile_spec.cpp: rename op_follow_link() to follow_link()
2003-10-31 Philippe Elie <phil.el@wanadoo.fr>
* libutil/tests/file_tests.c: "//usr" --> "//usr"
* libutil++/tests/.cvsignore:
* libutil++/tests/Makefile.am:
* libutil++/tests/file_manip_tests.cpp: new tests file.
2003-10-31 John Levon <levon@movementarian.org>
* daemon/opd_perfmon.c: fix compilation
2003-10-30 John Levon <levon@movementarian.org>
* libpp/profile_spec.cpp: introduce a helper function
to make the comma_list matching clear
2003-10-30 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/comma_list.h: is_set() new member
* libpp/profile_spec.cpp: fix matching logic for cpu/tid/tgid
2003-10-30 John Levon <levon@movementarian.org>
* libutil++/generic_spec.h: add value() and
is_set(), remove bool parameter from T value
match() (it was never set to true)
* libutil++/comma_list.h: do not accept
generic_spec, the behaviour was to implicitly
not match an "all" generic_spec. Instead:
* libpp/profile_spec.cpp: encode the matching
behaviour explicitly, and add a comment.
* libutil++/tests/comma_list_tests.cpp: fix to
match the above
2003-10-30 John Levon <levon@movementarian.org>
* Makefile.am: re-order build subdirs
* libabi/Makefile.am: only build abitest on
make check
* pp/Makefile.am: pp_common not pp_commons
2003-10-30 John Levon <levon@movementarian.org>
* libutil++/tests/Makefile.am:
* libutil++/tests/comma_list_tests.cpp: Add.
2003-10-30 John Levon <levon@movementarian.org>
* doc/Makefile.am: improve chunk rules
2003-10-30 John Levon <levon@movementarian.org>
* libutil++/tests/Makefile.am:
* libutil++/tests/string_filter_tests.cpp: Add.
* libutil++/tests/string_manip_tests.cpp: fix header include
2003-10-30 John Levon <levon@movementarian.org>
* libutil++/tests/string_manip_tests.cpp: fix tobool test
("33" is not castable to bool)
2003-10-30 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/string_manip.cpp:
* libutil++/string_manip.h: remove tostr()/tobool/touint(), rename
lexical_cast_no_ws<> to op_lexical_cast<>
* gui/oprof_start.cpp:
* gui/oprof_start_config.cpp:
* libpp/arrange_profiles.cpp:
* libpp/filename_spec.cpp:
* libpp/op_header.cpp:
* libutil++/comma_list.h:
* libutil++/generic_spec.h:
* libutil++/tests/string_manip_tests.cpp: use op_lexical_cast<>
2003-10-29 John Levon <levon@movementarian.org>
* pp/common_option.h: use std namespace
2003-10-28 Jason Lunz <lunz@falooley.org>
* doc/oprofile.1.in: document cpu,tid,tgid in profile
spec
2003-10-29 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_spec.cpp: error out for all tag:value specified
more than once.
2003-10-29 Philippe Elie <phil.el@wanadoo.fr>
* doc/opannotate.1.in:
* doc/opreport.1.in:
* doc/oprofile.xml:
* libregex/demangle_symbol.cpp:
* libregex/demangle_symbol.h:
* pp/common_option.cpp:
* pp/common_option.h:
* pp/opannotate_options.cpp:
* pp/opannotate_options.h:
* pp/opreport_options.cpp:
* pp/opreport_options.h: remove --no-demangle, --smart-demangle and
--demangle, replace them with --demangle=none|smart|normal
2003-10-29 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/tests: new directory
* libutil++/tests/string_manip_tests.cpp: new tests file
* configure.in:
* libutil++/Makefile.am:
* libutil++/tests/.cvsignore:
* libutil++/tests/Makefile.am: handle new test
* libutil++/string_manip.h:
* libutil++/string_manip.cpp: correct implementation of separate_token
to match the documentation
* daemon/liblegacy/opd_image.c: fix comment
2003-10-28 Philippe Elie <phil.el@wanadoo.fr>
* libpp/count_array.cpp:
* libpp/count_array.h:
* libpp/locate_images.h:
* libpp/parse_filename.cpp:
* libpp/profile.cpp:
* libpp/profile.h:
* libpp/profile_spec.cpp:
* libpp/symbol_sort.cpp: minor tidy
2003-10-28 Jason Lunz <lunz@falooley.org>
* doc/opcontrol.1.in: better wording for --separate=
* doc/oprofile.1.in: typo
2003-10-28 Philippe Elie <phil.el@wanadoo.fr>
* daemon/liblegacy/init.c:
* daemon/liblegacy/opd_24_stats.c:
* daemon/liblegacy/opd_24_stats.h:
* daemon/liblegacy/opd_image.c:
* daemon/liblegacy/opd_image.h:
* daemon/liblegacy/opd_kernel.c:
* daemon/liblegacy/opd_kernel.h:
* daemon/liblegacy/opd_mapping.c:
* daemon/liblegacy/opd_mapping.h:
* daemon/liblegacy/opd_parse_proc.c:
* daemon/liblegacy/opd_parse_proc.h:
* daemon/liblegacy/opd_proc.c:
* daemon/liblegacy/opd_proc.h:
* daemon/liblegacy/opd_sample_files.c:
* daemon/liblegacy/opd_sample_files.h: move doygen comment from *.c to
*.h. Add some doxygen comment.
2003-10-27 Philippe Elie <phil.el@wanadoo.fr>
* daemon/liblegacy/opd_24_stats.c:
* daemon/liblegacy/opd_image.h:
* daemon/liblegacy/opd_image.h: nr_images static
2003-10-27 John Levon <levon@movementarian.org>
* doc/opcontrol.1.in: document --image=
* doc/oprofile.xml:
* utils/opcontrol: make user specify "--image=all"
to reset. Clean up help message. Ensure note table
size is given a value. Add '-t' for '--stop', and
'-i' for '--image'.
2003-10-27 John Levon <levon@movementarian.org>
* doc/oprofile.xml: document opcontrol --image=
2003-10-27 John Levon <levon@movementarian.org>
* daemon/opd_events.h:
* daemon/opd_events.c: move code for handling
event descriptions here, and share find_counter_event(),
plus fill_header()
* daemon/opd_mangling.c:
* daemon/opd_perfmon.c:
* daemon/oprofiled.c:
* daemon/oprofiled.h:
* daemon/liblegacy/opd_proc.c:
* daemon/liblegacy/opd_sample_files.c: changes from
above
2003-10-27 John Levon <levon@movementarian.org>
* daemon/oprofiled.c: fix help text
* daemon/liblegacy/init.c:
* daemon/liblegacy/opd_proc.h:
* daemon/liblegacy/opd_proc.c: clean up headers
a bit
2003-10-27 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.cpp: check we can get kernel interface
2003-10-27 John Levon <levon@movementarian.org>
* daemon/liblegacy/Makefile.am: remove unneeded
-I for abi
2003-10-27 John Levon <levon@movementarian.org>
* daemon/init.c:
* daemon/opd_perfmon.c: move timer interrupt checks
into perfmon
2003-10-27 John Levon <levon@movementarian.org>
* daemon/oprofiled.c: use op_get_interface()
* libop/op_get_interface.c: simplify
2003-10-26 Philippe Elie <phil.el@wanadoo.fr>
* gui/ui/oprof_start.base.ui:
* gui/oprof_start.cpp:
* gui/oprof_start.h: check separate_lib checkbox when
separate_kernel_cb is checked
2003-10-26 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: allow to reset --image through empty --image=
or --image
2003-10-26 John Levon <levon@movementarian.org>
* daemon/opd_cookie.c: reduce the hash table size somewhat
* various: fixes for doxygen
2003-10-26 John Levon <levon@movementarian.org>
* HACKING:
* configure.in:
* Makefile.am:
* dae/: move all of 2.4 daemon code to ...
* daemon/liblegacy/: here
* daemon/Makefile.am:
* daemon/opd_util.h:
* daemon/opd_util.c: move to ...
* daemon/oprofiled.h:
* daemon/oprofiled.c: here, and call the right operations
depending upon oprofile kernel version.
* daemon/init.c:
* daemon/liblegacy/init.c: init and running for each version
2003-10-26 John Levon <levon@movementarian.org>
* daemon/opd_cookie.c: make sure to create the
cookie for the ignore value if it's not found
* daemon/opd_sfile.c: simplify ignored logic
2003-10-26 John Levon <levon@movementarian.org>
* doc/internals.xml:
* doc/buffers.png: add a diagram
2003-10-26 Philippe Elie <phil.el@wanadoo.fr>
implement image filtering:
* dae/opd_image.h: add a field filtered
* dae/opd_image.c: set it at image creation
* dae/opd_proc.c: don't record sample when !image->filtered
* daemon/opd_cookie.h: add a field filtered
* daemon/opd_cookie.c: set it a cookie_entry creation.
* daemon/opd_sfile.h: add a field filtered
* daemon/opd_file.c: set it a opd_sfile struct creation
* daemon/opd_trans.c: record sample if filtered
* daemon/opd_util.h: export opd_hash_name(), is_image_filtered()
* daemon/opd_util.c: implement --image=xxx
* oprofiled.c: #include "config.h" not <>
* utils/opcontrol: handle --image
2003-10-26 John Levon <levon@movementarian.org>
* doc/oprofile.xml: remove some outdated stuff
2003-10-25 John Levon <levon@movementarian.org>
* doc/internals.xml: more docs
2003-10-25 John Levon <levon@movementarian.org>
* daemon/opd_perfmon.c: cleanups
2003-10-24 John Levon <levon@movementarian.org>
* doc/internals.xml: write some more
2003-10-23 John Levon <levon@movementarian.org>
* configure.in: bump to 0.7.1cvs
2003-10-22 John Levon <levon@movementarian.org>
* libop/tests/Makefile.am:
* libop/tests/load_events_files_tests.c:
* libop/tests/alloc_counter_tests.c: fix
make distcheck
* configure.in: bump to 0.7
2003-10-22 John Levon <levon@movementarian.org>
* daemon/Makefile.am:
* daemon/opd_perfmon.h:
* daemon/opd_perfmon.c: re-enable. Wait for children.
More safety checking.
* daemon/oprofiled.c: only use perfmon if !timer
2003-10-20 Philippe Elie <phil.el@wanadoo.fr>
* doc/oprofile.xml:
* doc/oprofile.1.in: s/physical CPU/CPU/
2003-10-20 John Levon <levon@movementarian.org>
* daemon/Makefile.am:
* daemon/opd_perfmon.h: disable perfmon nicely
* gui/oprof_start.cpp:
* gui/oprof_start_config.h:
* gui/oprof_start_config.cpp:
* gui/ui/oprof_start.base.ui: Fix reading of separate
parameters. Add CPU and thread separation
2003-10-20 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_spec.cpp: relative path are relative to current dir
not filename.
2003-10-20 John Levon <levon@movementarian.org>
* doc/oprofile.xml:
* doc/opreport.1.in: fix --merge docs and profile specs
2003-10-20 John Levon <levon@movementarian.org>
* dae/opd_sample_files.c:
* daemon/opd_mangling.c:
* libabi/abi.cpp:
* libabi/abi_test.cpp:
* libabi/op_import.cpp:
* libop/op_config.h:
* libop/op_sample_file.h:
* libpp/op_header.cpp: remove ctr and separate_* from
header. Re-arrange it a little, and make it 64 bytes
on ILP32. Bump the version.
2003-10-20 John Levon <levon@movementarian.org>
* libpp/arrange_profiles.cpp: rework the clashing-axes
error message to be nicer to the user
2003-10-20 John Levon <levon@movementarian.org>
* libpp/arrange_profiles.cpp: if tid == tgid for
every profile class, allow axes of both TID and TGID
- there is no actual difference, only theoretical
2003-10-20 Philippe Elie <phil.el@wanadoo.fr>
* dae/oprofiled.c: correct an error message
* libop/op_alloc_counter.h: remove bogus FIXME
* libutil++/child_reader.cpp: avoid quadratic behaviour if child does a
lot of output in stderr
* libpp/opgprof.cpp: fix comment
2003-10-19 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.cpp: redundant return
2003-10-19 John Levon <levon@movementarian.org>
* libop/op_events.c: move to a fixed value for the default
event count value
2003-10-19 Philippe Elie <phil.el@wanadoo.fr>
remove some FIXME:
* libpp/format_output.h: remove first_output bool member
* libpp/format_output.cpp: call output_header from the right place
* libpp/op_header.h: remove bogus FIXME
* libregex/tests/Makefile.am: fix dependencies on mangled-name file,
fix make dist
* libregex/tests/mangled-name.in: simplify a bit and remove a bogus
FIXME
* libregex/tests/regex_test.cpp: fix comment
* module/ia64/op_syscalls.c:
* module/x86/hammer_op_syscalls.c:
* module/x86/op_syscalls.c: remove some FIXME
2003-10-17 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: clarify suggestion.
* pp/opreport_options.cpp: update options help string for --merge.
* libpp/profile_container.cpp:
* libpp/profile_spec.cpp:
* pp/common_option.cpp:
* pp/populate.cpp: ';' are not necessary to end namespace
2003-10-17 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: use a set<profile_classes> instead
of a vector<...> to replace a O(N*M) by a O(N*log(M)) behavior.
(N number of samples files, M number of class).
2003-10-17 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.cpp: show filename when warning about no debug
information available. get_linenr(): s/filename/source_filename/
2003-10-16 Philippe Elie <phil.el@wanadoo.fr>
* events/ia64/itanium/events: counter 0,1 not 2,3 for IA64_INST_RETIRED
* daemon/opd_util.c: opd_parse_events() fix use after free.
2003-10-16 John Levon <levon@movementarian.org>
* daemon/opd_perfmon.c: disable the code
2003-10-15 John Levon <levon@movementarian.org>
* daemon/opd_perfmon.c: fflushes to improve
order of debug log
2003-10-15 John Levon <levon@movementarian.org>
* daemon/opd_perfmon.c: fix dumb allocation typo;
handle signals correctly; wait for children to
come up before returning
2003-10-15 Philippe Elie <phil.el@wanadoo.fr>
* dae/opd_sample_files.c:
* daemon/opd_mangling.c:
* daemon/opd_perfmon.c:
* daemon/opd_util.c: check we not overflow op_nr_counters
2003-10-15 Philippe Elie <phil.el@wanadoo.fr>
* events/ia64/itanium/events: correct counter available according
to intel doc.
2003-10-15 John Levon <levon@movementarian.org>
* dae/opd_image.c:
* dae/opd_kernel.c:
* dae/opd_proc.c:
* dae/opd_sample_files.c:
* dae/oprofiled.c:
* daemon/opd_kernel.c:
* daemon/opd_mangling.c:
* daemon/opd_sfile.c:
* daemon/opd_trans.c:
* daemon/opd_util.c:
* daemon/opd_util.h:
* daemon/oprofiled.c: merge the options handling
for dae and daemon
2003-10-15 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_perfmon.c:
* module/ia64/op_pmu.c: bit mask for event select field is 8 bits not 7
2003-10-14 John Levon <levon@movementarian.org>
* configure.in:
* m4/findkernel.m4:
* utils/opcontrol: 2.5 refs -> 2.6
2003-10-14 John Levon <levon@movementarian.org>
* utils/opcontrol: merge some 2.4/6 code
2003-10-14 John Levon <levon@movementarian.org>
* dae/opd_image.c:
* dae/opd_sample_files.c:
* dae/oprofiled.c:
* utils/opcontrol: use --events for 2.4 daemon
too
* daemon/opd_perfmon.c:
* daemon/opd_mangling.c: fix counter numbering
on !perfmon
2003-10-14 John Levon <levon@movementarian.org>
* configure.in: xmemdup not xmemdump
2003-10-14 John Levon <levon@movementarian.org>
* daemon/opd_perfmon.c: propagate a SIGTERM
up to the parent.
2003-10-14 John Levon <levon@movementarian.org>
* m4/perfmon.m4:
* configure.in: remove pfmlib checks
* daemon/opd_util.h:
* daemon/opd_util.c:
* daemon/opd_mangling.c:
* daemon/oprofiled.c: parse more detailed events
passed on command line
* daemon/opd_perfmon.h:
* daemon/opd_perfmon.c: don't use libpfm at all,
do it ourselves.
* utils/opcontrol: pass more of the events info to
the daemon
2003-10-14 John Levon <levon@movementarian.org>
* m4/perfmon.m4:
* configure.in: look for pfmlib 3
* daemon/Makefile.am:
* daemon/opd_perfmon.h:
* daemon/opd_perfmon.c: interface to perfmon on 2.6 IA64
* daemon/opd_mangling.c:
* daemon/oprofiled.c: read event descriptions from command
line not oprofilefs
* daemon/opd_util.h:
* daemon/opd_util.c: receive SIGUSR1/2 for perfmon
* utils/opcontrol: handle multiple oprofileds. Send SIGUSR1/2
on start/stop. Pass in events list to oprofiled on 2.6. Don't
attempt to fill in oprofilefs with event info if using perfmon.
2003-10-14 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_mangling.c:
* daemon/opd_sfile.c:
* daemon/opd_sfile.h: protect the sfile we are acting on to be freed
by sfile_lru_clear()
* libdb/db_manage.c:
* libdb/odb_hash.h: Do not put hash->descr in an inconsistent state
when a failure occur.
2003-10-13 Philippe Elie <phil.el@wanadoo.fr>
* module/oprofile.c: don't restore syscall and stop counter twice
2003-10-13 Will Cohen <wcohen@redhat.com>
* libop/op_parse_event.c(parse_events): Correct fprintf.
2003-10-13 Philippe Elie <phil.el@wanadoo.fr>
* module/x86/hammer_op_syscalls.c: pass tgid to daemon. Not tested!
2003-10-12 John Levon <levon@movementarian.org>
* utils/opcontrol: share --separate-cpu/thread code now
2003-10-12 Philippe Elie <phil.el@wanadoo.fr>
* configure.in: add libregex/tests/mangled-name.in
* libregex/tests/mangled-name.txt: move ...
* libregex/tests/mangled-name.in: here, tune to support different arch
* libregex/tests/Makefile.am: s/mangled-name.txt/mangled-name.in
* libregex/stl.pat.in: fix iterator<... ptrdiff_t>
* libregex/tests/Makefile.am: update according to filename change
* libregex/tests/regex_test.cpp: really fails on exception.
2003-10-12 Philippe Elie <phil.el@wanadoo.fr>
* dae/oprofiled.c: don't set cpu_number when !--separate=cpu
* libop/tests/alloc_counter_tests.c: printf format for 64 bits arch
* libop/tests/cpu_type_tests.c: #include <string.h>
* libop/tests/parse_event_tests.c: #include <string.h>
2003-10-11 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_interface.h: struct op_sample: remove packed attribute
2003-10-11 Philippe Elie <phil.el@wanadoo.fr>
* dae/opd_image.c:
* dae/opd_image.h: reference count opd_image. Remove modification time
checking. Remove hash field. Tidy
* dae/opd_kernel.c: pass tid, tgid to op_get_kernel_image()
* dae/opd_mapping.c:
* dae/opd_mapping.h: use module hash code for image name to index
a cache of name, this hash code is no longer used elsewhere. When
killing map delete associated image, reference count of image
will check for a real delete.
* dae/opd_parse_proc.c: get tgid from /proc/pid/status
* dae/opd_proc.c: create an opd_proc by process when
separate_thread == true. Tidy by adding an opd_for_each_proc()
* dae/opd_proc.h: add tid/tgid to opd_proc struct
* dae/opd_sample_files.c:
* dae/opd_sample_files.h: lru all samples files, allowing to cleanup
a part of the lru if we go out of resource. Remove
opd_handle_old_sample_files() since we no longer check for image
modification time.
* dae/opd_stats.c:
* dae/opd_stats.h: statistics for opd_image struct depth search
* dae/oprofiled.c: add --separate-cpu and --separate-thread
* libop/op_interface.h: add tgid to samples struct passed from module
to daemon.
* module/compat22.h:
* module/compat24.h: op_get_tgid() return tgid, fall back to return
tid on 2.2 kernel.
* module/oprofile.c:
* module/ia64/op_syscalls.c: pass tgid to daemon. NOT TESTED but I
think it's ok. Note than even if it's broken ia64 should work w/o
--separate=thread
* module/x86/op_syscalls.c: pass tgid to daemon.
* utils/opcontrol: enable 2.4 thread/cpu separation
* libdb/tests/db_test.c: verbose on when we provide filename of db file
to test on command line.
2003-10-11 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_cpu_type.h:
* libop/op_cpu_type.c: constification
* utils/op_help.c: check only if CPU_NO_GOOD not range
* libutil/tests/Makefile.am:
* libregex/tests/Makefile.am:
* libdb/tests/Makefile.am: s/TEST = (.*)/TESTS = ${check_PROGRAMS}/
* libop/tests/alloc_counter_tests.c: comment fix
* libop/tests/Makefile.am:
* libop/tests/cpu_type_tests.c: new file, test libop/op_cpu_type.c
2003-10-10 Will Cohen <wcohen@redhat.com>
* libop/op_cpu_type.h (op_get_cpu_number): Clarify comment.
* libop/op_cpu_type.c (op_get_cpu_number): Check number.
* utils/op_help.c (main): Make check with CPU_NO_GOOD.
2003-10-10 Will Cohen <wcohen@redhat.com>
* libop/op_cpu_type.h (op_get_cpu_number): Declare.
* libop/op_cpu_type.c (op_get_cpu_number): New.
(op_get_cpu_type): Use op_get_cpu_number.
* utils/op_help.c (main): Use op_get_cpu_number.
2003-10-10 John Levon <levon@movementarian.org>
* libop/op_parse_event.c: fix compile for IA64
2003-10-09 John Levon <levon@movementarian.org>
* doc/oprofile.xml: document "no results" and
how to fix it
2003-10-08 John Levon <levon@movementarian.org>
* utils/op_help.c: standardise name
* gui/oprof_start.cpp: Qt 2.3.1 compile fix
(bug 819943)
2003-10-07 Philippe Elie <phil.el@wanadoo.fr>
* dae/opd_kernel.c: memory leak
* dae/opd_mapping.c:
* dae/opd_mapping.h:
* dae/opd_parse_proc.c:
* dae/opd_proc.c:
* dae/opd_proc.h: use a list of struct opd_map instead of an array,
remove last_map optimization.
* dae/oprofiled.c: memory leak
* libutil/op_cpufreq.c: memory leak, FILE* leak
* libutil/op_list.h: fix @author
2003-10-06 Philippe Elie <phil.el@wanadoo.fr>
* dae/oprofiled.c:
* dae/opd_proc.h:
* dae/opd_proc.c: use struct list_head to chain opd_proc struct in hash
table
* utils/op_help.c: comment fix
2003-10-06 John Levon <levon@movementarian.org>
* utils/opcontrol: work around 2.6 daemon's signal
handling race that could cause it to hang during
a --shutdown
2003-10-05 Philippe Elie <phil.el@wanadoo.fr>
* events/i386/p4/events:
* events/i386/p4-ht/events: put GLOBAL_POWER_EVENTS on top
* events/i386/pii/unit_masks:
* events/i386/piii/unit_masks: typo in help string
* utils/op_help.c: show "counter: all" instead an enumeration of all
counter
2003-10-02 Philippe Elie <phil.el@wanadoo.fr>
* events/*.events *.unit_masks: move these files to subdir named
arch/processor_name/events and arch/processor_name/unit_masks
* events/Makefile.am: update according
* libop/op_events.c: now it's safe to allow loading events file from a
directory provided through environment var OPROFILE_EVENTS_FILE_DIR
* libop/tests/alloc_counter_tests.c: use it
* libop/tests/load_events_files_tests.c: use it
2003-10-02 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_events.c: revert last commit (allowed to find events files
description directory in alternate directory)
* libop/tests/Makefile.am:
* libop/tests/load_events_files_tests.c: new files. Validate events
description file by loading them.
* libutil/op_cpufreq.c: comment why we don't have any code handling
s390
2003-10-01 Philippe Elie <phil.el@wanadoo.fr>
* configure.in:
* libop/Makefile.am: new subdir
* libop/op_events.c: allow to retrieve events file dir through
environment variable
* utils/op_help.c: move parse_events() and parsed_event struct to ...
* libop/op_parse_event.h:
* libop/op_parse_event.c: these new files
* libop/tests/Makefile.am: new tests subdir
* libop/tests/alloc_counter_tests.c: events mapping to counter nr tests
* libop/tests/parse_event_tests.c: event parsing tests
2003-10-01 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_alloc_counter.c: add forward declaration
* libop/op_alloc_counter.c: alloc counter in increasing number order,
it's less surprising.
2003-10-01 Philippe Elie <phil.el@wanadoo.fr>
* libdb/tests/db_test.c: if previous tests fails a corrupted samples
file can exist in test dir and will be re-used, remove() it.
2003-10-01 John Levon <levon@movementarian.org>
* daemon/opd_sfile.c:
* libabi/op_import.cpp:
* libop/op_interface.h:
* libpp/locate_images.h: small cleanups
* pp/opreport_options.cpp: don't complain about
"-x -m all"
2003-09-28 Philippe Elie <phil.el@wanadoo.fr>
* libutil/op_file.c:
* libutil/tests/file_tests.c: honor posix "//" filename namespace
2003-09-28 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_alloc_counter.h:
* libop/op_alloc_counter.c: change allocator by a backtracking
algorithm walking only through possible solution.
2003-09-26 Philippe Elie <phil.el@wanadoo.fr>
* libdb/tests/db_test.c: success must be silent
* dae/oprofiled.c:
* daemon/oprofiled.c:
* libutil/op_deviceio.c:
* libutil/op_deviceio.h: op_open_device(): remove unused parameter
fatal
2003-09-26 Philippe Elie <phil.el@wanadoo.fr>
* libutil/tests/file_tests.c: Fix some test: in some case the pathname
component must be valid since we lstat() them. Fix a segfault due
to missing ','
2003-09-26 John Levon <levon@movementarian.org>
* libdb/tests/Makefile.am:
* libregex/tests/Makefile.am:
* libutil/tests/Makefile.am: don't build tests
unless "make check"
2003-09-26 John Levon <levon@movementarian.org>
* libutil/op_file.c: don't test for NULL path
passed in, we want to crash here instead of
in xstrdup
* configure.in:
* libutil/Makefile.am:
* libutil/tests/Makefile.am:
* libutil/tests/file_tests.c:
* libutil/tests/string_tests.c: add some unit tests
for libutil string and path handling
2003-09-26 Philippe Elie <phil.el@wanadoo.fr>
* libdb/db_debug.c: remove useless display interface
* libdb/db_db_travel.c: remove callback interface
* libdb/odb_hash.h: remove display/callback interface
* libdb/db_test.cpp: move to tests subdir
* libdb/Makefile.am: update according
* libdb/tests: new dir
* libdb/tests/.cvsignore:
* libdb/tests/Makefile.am: new files
* libdb/tests/db_test.cpp: shorter tests
* libregex/mangled-name.txt:
* libregex/regex_testc.cpp: move to ...
* libregex/tests: new directory
* libdb/Makefile.am: update according
* libregex/tests/.cvsignore:
* libregex/tests/Makefile.am: new files
2003-09-26 John Levon <levon@movementarian.org>
* libabi/abi_test.cpp:
* libabi/op_import.cpp: small cleanups
2003-09-25 John Levon <levon@movementarian.org>
* daemon/opd_cookie.c:
* daemon/opd_kernel.c:
* daemon/opd_sfile.c:
* daemon/opd_trans.c:
* daemon/oprofiled.c: trivial cleanups
2003-09-25 Marc Herbert <marc.herbert@ens-lyon.fr>
* configure.in: fix prefix stuff to allow stow
to work
2003-09-25 Philippe Elie <phil.el@wanadoo.fr>
* pch-c++.h: remove
* Makefile.am: update according
* configure.in: no longer need for conditional enable_pch
* m4/precompiledheader.m4: don't use -Winvalid-pch
2003-09-25 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_sfile.c: sfile_lru_clear() return 0 if lru is empty
* daemon/opd_mangling.c: abort() if lru was empty (not tested)
* daemon/oprofiled.c: likewise; opd_alarm(): don't sfile_lru_clear()
* utils/op_help.c:
* daemon/opd_sfile.h:
* daemon/opd_cookie.h: s/()/(void)/ in some function prototype and
definition
* daemon/opd_cookie.c: s/"not looked up"/"not hashed"/
2003-09-25 John Levon <levon@movementarian.org>
* daemon/oprofiled.c: push rlimit down back to 2048.
This gives a running RSS of about 10Mb when thread
profiling on my box, which seems reasonable (at 8192
it was hitting 40Mb)
2003-09-25 Philippe Elie <phil.el@wanadoo.fr>
* doc/oprofile.xml: clarify what means a configured kernel.
2003-09-25 John Levon <levon@movementarian.org>
* daemon/opd_sfile.c: bump LRU_AMOUNT to 1000
2003-09-24 John Levon <levon@movementarian.org>
* doc/opcontrol.1.in:
* doc/oprofile.xml: document thread and cpu
profiling a bit
* daemon/opd_mangling.c:
* daemon/opd_sfile.c:
* daemon/oprofiled.c:
* utils/opcontrol: implement per-CPU profiling,
not tested yet
2003-09-24 John Levon <levon@movementarian.org>
* dae/opd_proc.c:
* dae/opd_sample_files.c:
* daemon/opd_mangling.c:
* daemon/opd_sfile.c:
* libabi/abi_test.cpp:
* libabi/op_import.cpp:
* libdb/db_insert.c:
* libdb/db_manage.c:
* libdb/db_test.c:
* libdb/odb_hash.h:
* libpp/op_header.cpp:
* libpp/profile.cpp: remove samples_odb_t.err_msg
entirely - prefer UNIX-style errno returns. Modify
error messages to match
2003-09-24 John Levon <levon@movementarian.org>
* dae/opd_sample_files.c:
* daemon/opd_sample_files.c:
* libpp/op_header.cpp:
* libpp/profile.cpp:
* libabi/abi_test.cpp:
* libabi/op_import.cpp:
* libdb/db_test.c:
* libdb/odb_hash.h:
* libdb/odb_manage.c: make odb_open return errno
instead of EXIT_FAILURE/SUCCESS to allow EMFILE
handling. Also do not leak fd's on failure.
* libutil/op_types.h: cookie_t moved into daemon/
* daemon/: major rewrite: move to a hash on all
parameters of struct transient. Lots of readability
cleanups, plus resistance to cookie lookup failures,
and hitting open file limits. Additionally thread
profiling for kernel threads is enabled now.
2003-09-24 John Levon <levon@movementarian.org>
* daemon/opd_image.c: remove support for missing
CTX_TGID
2003-09-24 John Levon <levon@movementarian.org>
* daemon/oprofiled.c: remove /proc/kcore support
2003-09-22 Philippe Elie <phil.el@wanadoo.fr>
* dae/opd_parse_proc.c: both op_file.h and op_fileio.h are needed
2003-09-22 John Levon <levon@movementarian.org>
* doc/CodingStyle: document doxygen placing rule
* libop/op_alloc_counter.h:
* libop/op_get_interface.c:
* libutil++/file_manip.cpp:
* libutil++/file_manip.h:
* libutil++/op_bfd.cpp:
* libutil++/op_bfd.h:
* libutil/op_deviceio.c:
* libutil/op_deviceio.h:
* libutil/op_get_time.c:
* libutil/op_get_time.h:
* libutil/op_libiberty.c:
* libutil/op_libiberty.h:
* libutil/op_lockfile.c:
* libutil/op_lockfile.h:
* libutil/op_popt.c:
* libutil/op_popt.h: follow the above
* libutil/op_file.c:
* libutil/op_file.h:
* libutil/op_fileio.c:
* libutil/op_fileio.h:
* dae/opd_parse_proc.c:
* libutil++/string_manip.cpp: move op_get_link to
op_file
2003-09-22 John Levon <levon@movementarian.org>
* libutil/op_fileio.h:
* libutil/op_fileio.c: warn about op_get_link()
restrictions
* libutil++/file_manip.h:
* libutil++/file_manip.cpp: s/op_read_link/op_follow_link,
and behaviour change to match
* libpp/profile_spec.cpp:
* gui/oprof_start_util.cpp: use op_follow_link
2003-09-22 Philippe Elie <phil.el@wanadoo.fr>
* dae/makefile.am: missing AM_CFLAGS setting
* dae/oprofiled.c:
* daemon/oprofiled.c: handle signal in read loop
* daemon/opd_util.h:
* daemon/opd_util.c: move opd_setup_signal() from dae/ daemon/
2003-09-22 John Levon <levon@movementarian.org>
* dae/oprofiled.c:
* daemon/oprofiled.c: mask SIGTERM too to prevent
the possibility of empty sample files
2003-09-21 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_output.h:
* libpp/format_output.cpp:
* pp/opreport.cpp: format_output::show_header no hide_header
2003-09-21 Philippe Elie <phil.el@wanadoo.fr>
* doc/opreport.1.in:
* doc/oprofile.xml:
* libpp/format_output.h:
* libpp/format_output.cpp:
* pp/opreport.cpp: --global_percent must be effective for detailed
output too
2003-09-21 John Levon <levon@movementarian.org>
* pp/opreport_options.cpp: prevent --global-percent
when appropriate
2003-09-21 John Levon <levon@movementarian.org>
* Makefile.am: back out broken make clean change
2003-09-21 John Levon <levon@movementarian.org>
* Makefile.am: make clean now removes *.html
* internals.xml: add some outline sections
2003-09-21 John Levon <levon@movementarian.org>
* doc/internals.xml: provide a short overview
and start a glossary
* libpp/count_array.h:
* libpp/format_output.cpp:
* libpp/format_output.h:
* libpp/profile.cpp:
* libpp/profile.h:
* libpp/profile_container.cpp:
* libpp/profile_container.h:
* pp/opreport.cpp: replace residual references to
count groups with profile class concept
2003-09-21 John Levon <levon@movementarian.org>
* doc/Makefile.am:
* doc/internals.xml: start an internals manual ...
2003-09-19 John Levon <levon@movementarian.org>
* pp/image_errors.cpp: missing include
2003-09-19 John Levon <levon@movementarian.org>
* libopt++/popt_options.h:
* libopt++/popt_options.cpp: remove additional_help
stuff, unused for some time
2003-09-18 John Levon <levon@movementarian.org>
* libutil++/Makefile.am:
* libutil++/image_flags.h: move to ...
* libpp/Makefile.am:
* libpp/image_error.h: ... here, and rename
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: take an in-out bool
instead of image_flags
* libpp/arrange_profiles.cpp:
* libpp/arrange_profiles.h:
* libpp/locate_images.cpp:
* libpp/locate_images.h:
* libpp/profile_spec.cpp:
* pp/image_errors.cpp:
* pp/opgprof.cpp:
* pp/populate.cpp: changes from above
2003-09-18 John Levon <levon@movementarian.org>
* libutil++/Makefile.am:
* libutil++/image_flags.h: flags for image read failure
* libpp/profile_spec.cpp:
* libpp/locate_images.h:
* libpp/locate_images.cpp:
* libpp/arrange_profiles.h:
* libpp/arrange_profiles.cpp: use image_flags
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: use image_flags, no longer error
out on format failure
* pp/Makefile.am:
* pp/image_errors.cpp:
* pp/image_errors.h: errors previously reported in locate_images
are now reported here by the client
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opgprof_options.cpp:
* pp/opreport.cpp:
* pp/populate.h:
* pp/populate.cpp: use the above
2003-09-18 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_output.cpp: use 9 not 12 for % field width
* libutil++/string_manip.cpp: shrink 100.0000 to 100.000
* pp/opreport.cpp: s/" "/' '
2003-09-18 John Levon <levon@movementarian.org>
* pp/opannotate_options.cpp:
* pp/opreport_options.cpp: clean up error messages
* pp/opgprof_options.h:
* pp/opgprof_options.cpp:
* pp/opgprof.cpp: use inverted_profile API
2003-09-18 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: overwrite all current settings with --separate,
this change behavior of --separate=kernel,library now we really setup
both in this case.
2003-09-18 John Levon <levon@movementarian.org>
* libpp/locate_images.cpp: rewrite a little
* libutil++/op_bfd.cpp: set fsize to default to -1,
for fake artificial symbol
2003-09-18 Philippe Elie <phil.el@wanadoo.fr>
* libpp/locate_images.h:
* libpp/locate_images.cpp: find_module_path() extra bool parameter
to know if we fail to retrieve the image.
* libpp/arrange_profiles.h:
* libpp/arrange_profiles.cpp: use it and save this bool in
inverted_profile struct
* libpp/profile_spec.cpp: update caller according
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: use the above change to create fake op_bfd
* pp/opgprof_options.cpp:
* pp/opgprof.cpp: update caller but never allow fake op_bfd
* pp/populate.cpp: allow to create fake op_bfd
2003-09-18 John Levon <levon@movementarian.org>
* dae/opd_image.c:
* dae/opd_proc.c:
* dae/opd_sample_files.c:
* dae/oprofiled.c:
* daemon/opd_image.c:
* daemon/opd_image.h:
* daemon/opd_kernel.c:
* daemon/opd_sample_files.c:
* daemon/oprofiled.c:
* gui/oprof_start.cpp:
* gui/oprof_start_config.cpp:
* gui/oprof_start_config.h:
* gui/ui/oprof_start.base.ui:
* libabi/abi.cpp:
* libabi/abi_test.cpp:
* libabi/op_import.cpp:
* libop/op_sample_file.h:
* libpp/op_header.cpp:
* utils/opcontrol: renamings of separate stuff
2003-09-17 Philippe Elie <phil.el@wanadoo.fr>
* dae/opd_kernel.c: thinko in opd_get_module_info(): we must take
care to re-use a previously created module not to create a new
2003-09-17 John Levon <levon@movementarian.org>
* daemon/opd_kernel.c: logging improvements
2003-09-17 Philippe Elie <phil.el@wanadoo.fr>
* dae/opd_kernel.c:
* daemon/opd_kernel.c: fix use after free of module
2003-09-17 John Levon <levon@movementarian.org>
* daemon/opd_image.c: fix thread profiling when
--separate-library=0
2003-09-17 Philippe Elie <phil.el@wanadoo.fr>
* dae/opd_kernel.c: add module to list of module ...
* daemon/opd_kernel.c: s/print/verbprintf
2003-09-17 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_config.h: remove OPD_MAX_MODULEs
* dae/opd_kernel.c:
* daemon/opd_kernel.c: remove fixed array of modules replaced by
a list. Unify the way we create opd_module
* utils/opcontrol: don't use --thread-profiling for 2.4
2003-09-17 Ka Fai Lu <kafai0928@yahoo.com>
I adapted slightly this patch Phil.
* daemon/opd_image.c:
* daemon/opd_image.h:
* daemon/opd_kernel.c:
* daemon/opd_sample_files.c:
* daemon/oprofiled.c:
* utils/opcontrol: implement per thread profiling
2003-09-16 Philippe Elie <phil.el@wanadoo.fr>
* libopt++/popt_options.h:
* libpp/locate_images.cpp: minor tidy
2003-09-16 John Levon <levon@movementarian.org>
* utils/opcontrol: don't pass pid/pgrp filter
to 2.6 daemon
* dae/oprofiled.c:
* daemon/oprofiled.c: setrlimit to 8192 (lame
workaround for now), minor cleanups
2003-09-15 John Levon <levon@movementarian.org>
* common_option.cpp: rename the array to
avoid a link error in GCC 3.4
2003-09-15 John Levon <levon@movementarian.org>
* libop/Makefile.am:
* libop/op_interface_25.h: move to ...
* daemon/Makefile.am:
* daemon/opd_interface.h: ... here
* daemon/opd_image.c:
* daemon/oprofiled.c: use above. Remove pointless
command line options.
* libop/op_config_25.h: remove.
* libop/op_hw_config.h: move DCOOKIE_SHIFT to
opd_interface.h
2003-09-15 John Levon <levon@movementarian.org>
* configure.in: use -Wdeclaration-after-statement
if available
* README:
* daemon/opd_util.c:
* daemon/opd_util.h:
* doc/opannotate.1.in:
* doc/opgprof.1.in:
* doc/opreport.1.in:
* doc/oprofile.1.in:
* doc/oprofile.xml:
* gui/oprof_start.cpp:
* gui/oprof_start_util.cpp:
* libop/op_cpu_type.c:
* libop/op_cpu_type.h:
* libop/op_get_interface.c:
* libpp/locate_images.cpp: remove references to
2.5, replaced with 2.6
2003-09-15 John Levon <levon@movementarian.org>
* doc/opreport.1.in: document --show-address
2003-09-15 John Levon <levon@movementarian.org>
* libpp/arrange_profiles.cpp:
* libpp/arrange_profiles.h:
* pp/populate.cpp: more commentary
2003-09-14 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: handle 2.95 right io manipulator and the lack
of a proper setw(w) << std::string
2003-09-14 John Levon <levon@movementarian.org>
* pp/opreport.cpp: re-add header for image summary
2003-09-14 John Levon <levon@movementarian.org>
* libpp/arrange_profiles.cpp: throw an exception
if there are two many unmerged profiles, with details
of how to fix it
* pp/opgprof_options.cpp:
* pp/common_option.cpp: clean up error messages
2003-09-14 John Levon <levon@movementarian.org>
* libpp/arrange_profiles.h:
* libpp/arrange_profiles.cpp: add location of
images when inverting profiles
* libpp/locate_images.cpp: return empty string
if file isn't readable
* pp/opannotate.cpp: use the above
* pp/opreport.cpp: use the above; place warnings
before any other output
2003-09-14 John Levon <levon@movementarian.org>
* pp/opgprof_options.cpp: use locate_image_path
2003-09-14 John Levon <levon@movementarian.org>
* Makefile.am:
* populate.h:
* populate.cpp: shared code for populating from
inverted profiles
* opreport.cpp:
* opannotate.cpp: use above
2003-09-14 John Levon <levon@movementarian.org>
* libpp/arrange_profiles.h:
* libpp/arrange_profiles.cpp: add invert_profiles
* pp/opreport.cpp: use it
2003-09-14 John Levon <levon@movementarian.org>
* doc/oprofile.xml:
* pp/opreport.cpp:
* pp/opreport_options.cpp:
* pp/opreport_options.h: Turn off VMA report by
default, add --show-address
2003-09-14 John Levon <levon@movementarian.org>
* pp/opreport.cpp: nice formatting of image report
column headers, respect --no-header
2003-09-14 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: use string::erase() not string::clear()
for 2.95
* libutil++/generic_spec.h: allow to ignore "all" match
* libutil++/comma_list.h: use it
2003-09-14 John Levon <levon@movementarian.org>
* pp/opreport.cpp: output column headers for
image report
2003-09-14 John Levon <levon@movementarian.org>
* libpp/op_header.h:
* libpp/op_header.cpp: output header info to
a string not a stream
* libpp/arrange_profiles.h:
* libpp/arrange_profiles.cpp: give classes a long
name, and fill in global event/cpu info
* pp/opannotate.cpp:
* pp/opannotate_options.cpp:
* pp/opannotate_options.h:
* pp/opgprof_options.cpp:
* pp/opreport.cpp:
* pp/opreport_options.cpp:
* pp/opreport_options.h: use the class long names
and info
2003-09-14 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_spec.cpp: handle symlink
2003-09-14 John Levon <levon@movementarian.org>
* arrange_profiles.h:
* arrange_profiles.cpp: Add code to give short names
to each class, unused yet
2003-09-14 Philippe Elie <phil.el@wanadoo.fr>
* libpp/arrange_profiles.cpp: missing include<> with gcc 2.95
2003-09-14 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* libpp/split_sample_filename.cpp:
* libpp/split_sample_filename.h: rename as ...
* libpp/parse_filename.cpp:
* libpp/parse_filename.h: ... this
* libpp/filename_spec.cpp:
* libpp/arrange_profiles.cpp:
* libpp/arrange_profiles.h: sort classes for niceness,
changes from above
* pp/opreport.cpp: remove needless double check of
exclude_dependent
* libutil++/string_manip.cpp: touint should init to 0
in case of parse failure
2003-09-14 Philippe Elie <phil.el@wanadoo.fr>
* configure.in: fix maximum template depth to 50
* libutil/op_fileio.c: op_get_link() don't truncate silently results
* m4/sstream.m4: use OP_CXXFLAGS not CXXFLAGS
2003-09-14 John Levon <levon@movementarian.org>
* pp/partition_files.h:
* pp/partition_files.cpp: remove, now unused
2003-09-14 John Levon <levon@movementarian.org>
* pp/opannotate.cpp:
* pp/opannotate_options.cpp:
* pp/opannotate_options.h: use arrange_profiles API
2003-09-14 John Levon <levon@movementarian.org>
* pp/opgprof_options.h:
* pp/opgprof_options.cpp:
* pp/opgprof.cpp: use arrange_profiles API
2003-09-14 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* libpp/arrange_profiles.cpp:
* libpp/arrange_profiles.h: introduce new
code for partitioning profiles and handling
merging
* libpp/partition_files.h:
* pp/opreport_options.cpp:
* pp/opreport_options.h:
* pp/opreport.cpp: use the above code
* libpp/format_flags.h:
* libpp/profile_container.cpp: remove unneeded
multiple apps hint
* libpp/count_array.cpp:
* libpp/count_array.h: remove unnecessary code
2003-09-14 John Levon <levon@movementarian.org>
* configure.in: back to 0.7cvs
2003-09-14 John Levon <levon@movementarian.org>
* pp/opannotate.cpp: gcc 2.91 workaround
(in 0.6.1 release)
2003-09-14 John Levon <levon@movementarian.org>
* configure.in: bump to 0.6.1
2003-09-13 John Levon <levon@movementarian.org>
* doc/oprofile.xml: document "incorrect source attribution"
a bit
2003-09-12 Philippe Elie <phil.el@wanadoo.fr>
* libpp/op_header.cpp: typo in comment
2003-09-11 John Levon <levon@movementarian.org>
* configure.in: check for -lintl, tweak -ldl check
2003-09-11 John Levon <levon@movementarian.org>
* dae/oprofiled.c:
* daemon/oprofiled.c:
* libdb/db_manage.c:
* libdb/db_test.c: correct headers
2003-09-11 John Levon <levon@movementarian.org>
* op_lockfile.c: use correct headers
2003-09-07 Philippe Elie <phil.el@wanadoo.fr>
* utils/op_help.c: check than all events are distincts
2003-09-06 Philippe Elie <phil.el@wanadoo.fr>
* pch-c++.h:
* m4/precompiledheader.m4: new file to handle precompiled header
* m4/Makefile.am:
* configure.in:
* Makefile.am: handle precompiled header
2003-09-05 John Levon <levon@movementarian.org>
* opd_image.c: cleanup of ctx_switch_set_image()
2003-09-05 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_image.c: After a context switch ensure we update correctly
the current image.
2003-09-04 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp:
* pp/opannotate.cpp: catch op_bfd exception and recover gracefully
2003-09-04 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: tweak "signaling daemon " message as suggested
by Carlo Wood
2003-09-04 John Levon <levon@movementarian.org>
* doc/oprofile.xml: mention --reset in
"Getting Started"
2003-09-03 John Levon <levon@movementarian.org>
* libop/op_events.c:
* libpp/op_header.cpp:
* dae/opd_sample_files.c:
* daemon/opd_sample_files.c: propagate event
error back up to caller
* libdb/odb_hash.h: fix comment
2003-09-02 John Levon <levon@movementarian.org>
* dae/opd_image.c:
* dae/opd_proc.c:
* dae/oprofiled.c:
* daemon/opd_image.c: use abort() not exit()
on "can't happen" errors
2003-09-02 John Levon <levon@movementarian.org>
* dae/opd_proc.c:
* daemon/opd_image.c: fix error message
2003-08-28 Philippe Elie <phil.el@wanadoo.fr>
* events/alpha.ev6.events: fix duplicate um tag
2003-08-28 John Levon <levon@movementarian.org>
* events/i386.athlon.events: fix duplicate minimum tag
* daemon/opd_image.c:
* libop/op_events.c: check for duplicate tags
2003-08-28 John Levon <levon@movementarian.org>
2003-08-27 Will Cohen <wcohen@redhat.com>
* utils/op_help.c (resolve_events): Typecast printf argument.
2003-08-25 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate_options.cpp:
* pp/opannotate_options.h:
* pp/opannotate.cpp: enable multiple events
* pp/opreport_options.cpp: remove #if 0 .... #endif
2003-08-25 Philippe Elie <phil.el@wanadoo.fr>
* libpp/count_array.cpp: avoid to access invalid memory
2003-08-25 Philippe Elie <phil.el@wanadoo.fr>
* configure.in:
* m4/builtinexpect.m4:
* m4/configmodule.m4:
* module/Makefile.in:
* module/ia64/Makefile.in:
* module/x86/makefile.in: always use EXTRA_CFLAGS_MODULE not
EXTRA_CFLAGS for module build flags
2003-08-23 Philippe Elie <phil.el@wanadoo.fr>
* libregex/op_regex.h:
* libregex/op_regex.cpp: tidy
* libutil++/op_bfd.cpp: remove obsolete comment
2003-08-23 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/file_manip.h:
* libutil++/file_manip.cpp: is_directory(dirname): return true if
dirname exists
* pp/common_option.cpp: validate --image-path parameters
2003-08-22 Philippe Elie <phil.el@wanadoo.fr>
* events/i386.p4.events: clarify than 128BIT_MMX_UOP count only integer
SSE2 ops
* pp/opreport.cpp: minor spacing change in output
2003-08-22 John Levon <levon@movementarian.org>
* daemon/oprofiled.c: report the kernel pointer size
2003-08-22 John Levon <levon@movementarian.org>
* daemon/oprofiled.c: read new /dev/oprofile/pointer_size
in preference to kcore. kcore code will eventually go.
2003-08-21 John Levon <levon@movementarian.org>
* libutil++/op_bfd.cpp: update gcc2_compiled. comment
to reflect reality
2003-08-19 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: really merge when --merge=lib and image name are
specified.
2003-08-16 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate.cpp: output threshold percent when necessary.
2003-08-16 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.cpp: remove ELF-based symbol size code
2003-08-15 William Cohen <wcohen@redhat.com>
* doc/opcontrol.1.in:
* doc/oprofile.1.in:
* doc/oprofile.xml: Correct path to /root/.oprofile/daemonrc.
2003-08-15 Thomas Spatzier <TSPAT@de.ibm.com>
* daemon/opd_cookie.h: fix s390 syscall
2003-08-14 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/string_manip.cpp: erase_to_last_of() is not a ltrim()
2003-08-14 Philippe Elie <phil.el@wanadoo.fr>
Dave Jones suggested this change.
* module/x86/op_model_p4.c: remove superflous ';' at end of some macro
2003-08-14 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/string_manip.h: remove erase_from_last_of()
* libutil++/string_manip.cpp: and tidy erase_to_last_of(), rtrim() and
ltrim()
2003-08-13 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.h:
* libpp/profile_container.cpp: remove nil_symbol_index
2003-08-13 John Levon <levon@movementarian.org>
* libpp/profile_container.cpp:
* libpp/profile_container.h: remove "base_vma" parameter
to add_samples(), we can just re-grab it straight from
the abfd
2003-08-13 John Levon <levon@movementarian.org>
* libpp/profile_container.cpp:
* libpp/profile_container.h: remove unused "zero samples"
optimization hint: it's always false
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp: from above
2003-08-12 John Levon <levon@movementarian.org>
* pp/opreport.cpp: small trivialities
2003-08-12 Philippe Elie <phil.el@wanadoo.fr>
* libregex/stl.pat.in: minor fix/improvements
* libregex/mangled-name.txt: add tests
2003-08-12 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: fix thinko when --merge=lib
2003-08-12 John Levon <levon@movementarian.org>
* pp/opreport.cpp: s/count_groups_summary/summary_container/g
2003-08-12 John Levon <levon@movementarian.org>
* doc/oprofile.xml: document opreport's side-by-side a little
bit
2003-08-12 John Levon <levon@movementarian.org>
* pp/opreport.cpp: s/group_summary/app_summary/, and
a lot of other renamings to clarify the count groups
usage.
2003-08-12 John Levon <levon@movementarian.org>
* utils/op_help.c: add --unit-mask
* utils/opcontrol: use --unit-mask
2003-08-12 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: re write using count_array_t
2003-08-11 John Levon <levon@movementarian.org>
* libpp/count_array.cpp:
* libpp/count_array.h: auto-resize the number of groups
based on how we index.
* libpp/profile_container.cpp: remove check
* pp/opannotate.cpp: count_array.zero() not .empty()
2003-08-11 John Levon <levon@movementarian.org>
* libpp/filename_spec.h:
* libpp/profile_spec.cpp:
* libpp/profile_spec.h: add comments, allow comma lists
for event, count, and unit mask
* libutil++/comma_list.h: implement missing method
2003-08-11 John Levon <levon@movementarian.org>
* libpp/format_output.cpp:
* libpp/format_output.h: add set_nr_groups(), remove
pp_nr_counters.
* libpp/profile_container.cpp:
* libpp/profile_container.h:
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp: count_group not counter
2003-08-11 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* libpp/counter_array.cpp:
* libpp/counter_array.h: rename to ...
* libpp/count_array.h:
* libpp/count_array.cpp: ... this ...
* libpp/format_output.cpp:
* libpp/format_output.h:
* libpp/profile.cpp:
* libpp/profile.h:
* libpp/profile_container.cpp:
* libpp/profile_container.h:
* libpp/sample_container.cpp:
* libpp/sample_container.h:
* libpp/symbol.h:
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp: ... and several renamings to starting
change the notion from "counters" to the more general notion
of "count groups"
2003-08-10 Philippe Elie <phil.el@wanadoo.fr>
Multiple counter support for pp tools.
* libpp/counter_array.h:
* libpp/counter_array.cpp: resurrected from pp-interface-branch, for
now memory use is inefficient.
* libpp/Makefile.am: add counter_array.cpp .h
* libpp/format_out.h:
* libpp/format_out.cpp: handle multiple counter + a general tidy
* libpp/format_flags.h: remove ff_immutable_mask and some nasty
requisite on flags value
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* libpp/sample_container.h:
* libpp/sample_container.cpp:
* libpp/symbol.h:
* libpp/symbol_container.cpp:
* libpp/symbol_sort.cpp:
* pp/opreport.cpp: handle multiple counter
* pp/opannotate.cpp: partial handling of multiple counter
* pp/opgprof.cpp:
* pp/opreport.cpp: minor bits
2003-08-08 Will Cohen <wcohen@redhat.com>
* dae/Makefile.am:
* daemon/Makefile.am: Correct library linking order.
* daemon/opd_util.c: Add needed include files.
2003-08-08 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: move_and_remove() do nothing if source doesn't exist
2003-08-08 Philippe Elie <phil.el@wanadoo.fr>
revert the previous patch
* dae/Makefile.am:
* dae/opd_sample_files.h:
* dae/opd_sample_files.c:
* daemon/Makefile.am:
* daemon/opd_sample_files.c: un-share opd_sample_files
code
2003-08-08 John Levon <levon@movementarian.org>
* dae/Makefile.am:
* dae/opd_sample_files.h:
* dae/opd_sample_files.c:
* daemon/Makefile.am:
* daemon/opd_sample_files.c: share opd_sample_files
code
2003-08-08 John Levon <levon@movementarian.org>
* dae/oprofiled.c:
* daemon/oprofiled.c:
* daemon/opd_util.h:
* daemon/opd_util.c: share opd_write_abi()
2003-08-08 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_alloc_counter.c:
* libop/op_events.h: minor doxygen fix
2003-08-08 John Levon <levon@movementarian.org>
* dae/Makefile.am:
* dae/oprofiled.c:
* daemon/Makefile.am:
* daemon/oprofiled.c:
* daemon/opd_util.h:
* daemon/opd_util.c: share some small bits of code
between the daemons
2003-08-08 John Levon <levon@movementarian.org>
* dae/oprofiled.c:
* daemon/oprofiled.c: remove mypid, unused
2003-08-08 John Levon <levon@movementarian.org>
* dae/Makefile.am:
* dae/opd_printf.h: remove duplicate header
and use daemon/opd_printf.h
2003-08-08 John Levon <levon@movementarian.org>
* dae/opd_image.c:
* dae/opd_sample_files.h:
* dae/opd_sample_files.c:
* daemon/opd_image.c:
* daemon/opd_sample_files.h:
* daemon/opd_sample_files.c: remove "create" bool
from opd_mangle_filename(): only one callsite needs
that functionality, open code the create instead
* dae/opd_proc.c:
* dae/opd_sample_files.h:
* dae/opd_sample_files.c:
* daemon/opd_sample_files.h:
* daemon/opd_sample_files.c: return error from
opd_open_sample_filename(). Do not fail when odb_open
fails due to --reset races.
* dae/oprofiled.c:
* daemon/oprofiled.c: a little more verbosity.
* libutil/op_file.h:
* libutil/op_file.c: fix create_dir/path() comments,
don't use access()
* utils/opcontrol: reduce chance of --reset races
2003-08-06 Philippe Elie <phil.el@wanadoo.fr>
* libpp/symbol_sort.h:
* libpp/symbol_sort.cpp: add app_name sort order, force sort order
for criteria unspecified by user.
* pp/opreport_options.cpp: update --sort option help string.
2003-08-04 John Levon <levon@movementarian.org>
* doc/oprofile.xml:
* doc/opannotate.1.in:
* pp/opannotate.cpp:
* pp/opannotate_options.h:
* pp/opannotate_options.cpp: add --base-dirs
2003-08-04 John Levon <levon@movementarian.org>
* doc/oprofile.xml:
* doc/opannotate.1.in:
* pp/opannotate.cpp:
* pp/opannotate_options.h:
* pp/opannotate_options.cpp: add --search-dirs
2003-08-04 John Levon <levon@movementarian.org>
* doc/oprofile.xml:
* doc/opannotate.1.in:
* pp/opannotate.cpp:
* pp/opannotate_options.h:
* pp/opannotate_options.cpp: remove --source-dir and --base-dir,
they're confusing and not useful in the current form
2003-08-03 John Levon <levon@movementarian.org>
* utils/opcontrol: avoid using ps, it's very slow with kallsyms
2003-08-03 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.cpp: c++ static function doesn't get a mangled name
in debug info (see gcc #11774). Try to recover through a not
completely reliable mechanism but better than ignoring the problem
2003-08-02 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: minor: more consistency about function ordering
2003-08-02 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile.h:
* libpp/profile.cpp: profile::sample_count() new to allow raw access
to samples count
* pp/opreport.cpp: use above function to implement opreport (w/o -l
or --details options). opreport is roughly twice faster.
2003-08-02 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: clarify multiple counter support
2003-08-01 John Levon <levon@movementarian.org>
* libregex/stl.pat.in: fix _List_iterator regex
(from Phil)
2003-07-31 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate.cpp: output cpu type and cpu speed.
2003-07-30 John Levon <levon@movementarian.org>
* libpp/partition_files.cpp: remove some apparently
dead code
2003-07-30 John Levon <levon@movementarian.org>
* events/i386.p4.unit_masks: make flame_uops value
mandatory, Yuan.Lu@rrze.uni-erlangen.de does not
see any events without setting the unit mask
2003-07-30 John Levon <levon@movementarian.org>
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: bfd_openr() keeps a copy of
the passed in char * around, sickenly enough. Ensure lifetimes
will always be correct by adding a filename data member to
op_bfd
2003-07-29 Philippe Elie <phil.el@wanadoo.fr>
* libpp/op_header.h:
* libpp/op_header.cpp: separate output of cpu_type, cpu_speed
and counter setup
* libpp/partition_files.h:
* libpp/partition_files.cpp: unmergeable_profile() split profile
by the unmergeable.
* pp/opreport_options.h:
* pp/opreport_options.cpp:
* pp/opreport.cpp: initial multiple counter output, multiple counter
with -l is not yet available.
2003-07-29 John Levon <levon@movementarian.org>
* doc/opcontrol.1.in: update for --event
2003-07-29 John Levon <levon@movementarian.org>
* configure.in:
* doc/srcdoc/Doxyfile.in:
* oprof_report/: remove badly out of date oprof_report
2003-07-28 John Levon <levon@movementarian.org>
* configure.in: bump to 0.7cvs
2003-07-26 John Levon <levon@movementarian.org>
* configure.in: bump to 0.6
2003-07-26 John Levon <levon@movementarian.org>
* utils/opcontrol: fix call of op_help
2003-07-26 John Levon <levon@movementarian.org>
* gui/oprof_start.cpp: replace folder icons with clearer
red/green circles
2003-07-26 John Levon <levon@movementarian.org>
* gui/oprof_start.cpp: actually select and show the default
event
2003-07-26 John Levon <levon@movementarian.org>
* gui/oprof_start.cpp: small string tweak, show "conflicts"
message consistently
2003-07-26 John Levon <levon@movementarian.org>
* gui/oprof_start.cpp: don't use invalidated iterator
2003-07-26 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.cpp: fix for 2.91.66
* libpp/profile.cpp: typo invoking an undefined behavior revealed
by gcc stl debug mode
* libpp/profile.h: ensure we provide the right typedef to std::
for profile::const_iterator revealed by gcc stl debug mode at compile
time. The implementation is a bit tricky to work with old compiler
* libpp/symbol_sort.cpp: compare must define a weak ordered relation
order, revealed by gcc stl debug mode.
2003-07-26 Philippe Elie <phil.el@wanadoo.fr>
* gui/ui/oprof_start.base.ui:
* gui/oprof_start.h:
* gui/oprof_start.cpp: change UI to use the new counter allocation
API
* libop/op_alloc_counter.h:
* libop/op_alloc_counter.c:
* utils/op_help.c: minor const-ness api change
2003-07-25 Will Cohen <wcohen@redhat.com>
* utils/opcontrol: Restrict the search path.
2003-07-25 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_alloc_counter.c: use tabulation
* libop/op_events.c:
* libop/op_events.h: find_event_by_name() new
* utils/op_help.c: use find_event_by_name()
2003-07-24 Philippe Elie <phil.el@wanadoo.fr>
* utils/op_help.c: make valgrind happy + minor cleanup
2003-07-24 Philippe Elie <phil.el@wanadoo.fr>
* libop/op_alloc_counter.h:
* libop/op_alloc_counter.c: new file providing mapping from an event
list to hardware counter number
* utils/op_help.c: use the above api
2003-07-24 Philippe Elie <phil.el@wanadoo.fr>
* utils/op_help.c: fix hardware counter allocation order
2003-07-23 John Levon <levon@movementarian.org>
* doc/oprofile.xml: comment out --base-dir mention
2003-07-23 John Levon <levon@movementarian.org>
* doc/oprofile.xml: remove mention of oprof_start_event
2003-07-23 John Levon <levon@movementarian.org>
* dae/oprofiled.c:
* daemon/oprofiled.c: don't uselessly try to unlink
non-existent lockfile
* daemon/opd_image.c:
* daemon/oprofiled.c: clean up buffer read messages
2003-07-23 John Levon <levon@movementarian.org>
* utils/opcontrol: error out at --setup time if vmlinux is not
valid. Cleanup the error message if so
* daemon/opd_kernel.c: fix potential null deref
2003-07-21 John Levon <levon@movementarian.org>
* gui/oprof_start.cpp: select "No event" when switching counter
if needed
2003-07-21 John Levon <levon@movementarian.org>
* gui/oprof_start.cpp: fix default event choosing when
daemonrc exists
2003-07-21 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.cpp: thinko in has_unique_event(), don't warn for
no counter with CPU_TIMER_INT
2003-07-21 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.cpp: allow to de-select a counter
2003-07-21 John Levon <levon@movementarian.org>
* gui/oprof_start.cpp:
* gui/oprof_start_util.h:
* gui/oprof_start_util.cpp: remove uptime pretty printing.
It's broken for 2.5 and ugly code
2003-07-21 John Levon <levon@movementarian.org>
* gui/oprof_start.h:
* gui/oprof_start.cpp: use a default event if no
events are set yet
2003-07-20 Philippe Elie <phil.el@wanadoo.fr>
* m4/compileroption.m4: fix for autoconf 2.13
2003-07-19 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.cpp:
* libpp/format_output.cpp:
* libpp/format_output.h:
* pp/opannotate.cpp:
* pp/opreport_options.cpp: minor tidy
2003-07-19 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.cpp: RTC mode was not working
2003-07-16 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start_config.h:
* gui/oprof_start_config.cpp: remove dead code, fix kernel_only read
2003-07-16 John Levon <levon@movementarian.org>
* utils/opcontrol: fix typo that was partly breaking
CPU_TIMER_INT
2003-07-16 John Levon <levon@movementarian.org>
* gui/oprof_start.h:
* gui/oprof_start.cpp: fixes for CPU_TIMER_INT
2003-07-16 John Levon <levon@movementarian.org>
* gui/ui/oprof_start.base.ui: remove add/remove event buttons,
fix resize weirdness
* gui/oprof_start.h:
* gui/oprof_start.cpp: remove add/remove event buttons, allow
short-form event descriptions
2003-07-15 Philippe Elie <phil.el@wanadoo.fr>
* gui/persistent_config.h: remove
* gui/oprof_start.h:
* gui/oprof_start.cpp: debug, remove dead code, works better now, see
TODO
2003-07-15 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start.h:
* gui/oprof_start.cpp:
* gui/oprof_start_util.cpp: re-enable partially the gui, sorta of
working if cautioulsy used
2003-07-15 John Levon <levon@movementarian.org>
* gui/ui/oprof_start_base.ui:
* gui/oprof_start.h:
* gui/oprof_start.cpp: some steps towards fixing gui for
the new events stuff
2003-07-15 John Levon <levon@movementarian.org>
* libop/op_events.h:
* libop/op_events.c: add op_default_event
* utils/op_help.c: move default event stuff to libop,
fix -c option
2003-07-15 John Levon <levon@movementarian.org>
* utils/op_help.c: fix default RTC event to be
"RTC_INTERRUPTS"
2003-07-15 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol
* events/rtc..events: use RTC_INTERRUPTS as event name
2003-07-15 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_sample_files.c: C89 compile fix
2003-07-15 John Levon <levon@movementarian.org>
* utils/opcontrol:
* utils/op_help.c: move the default event strings into
op_help.c instead of in opcontrol
2003-07-15 John Levon <levon@movementarian.org>
* doc/oprofile.xml: document event name for timer interrupt
* daemon/opd_sample_files.c: handle CPU_TIMER_INT
* utils/op_help.c: fix a core dump
2003-07-13 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_image.c: verbprintf() when starting reading buffer not
printf
2003-07-12 Philippe Elie <phil.el@wanadoo.fr>
* from BRANCH_CALLGRAPH:
* daemon/opd_image.c: printf -> verbprintf, fix comment
* daemon/opd_kernel.c: kernel/module samples statistics was wrong
* daemon/opd_image.c:
* daemon/opd_image.h:
* daemon/opd_kernel.c:
* daemon/opd_kernel.h: import cleanup from branch, mainly don't handle
samples in opd_kernel.c but return (creating if necessary) an
opd_image struct where the sample must go and let opd_image caller
in opd_image.c do sample insertion
2003-07-11 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: shows basename $0 with --version
* libpp/op_header.cpp: formating
2003-07-11 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: don't try to save current if the directory doesn't
exist
2003-07-11 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/stream_util.h:
* libutil++/stream_util.cpp: new file, io_state() save object
* libutil++/Makefile.am: handle new file
* libutil++/op_bfd.cpp:
* pp/opreport.cpp:
* libpp/op_header.cpp: use io_state
2003-07-09 Philippe Elie <phil.el@wanadoo.fr>
* module/x86/op_model_p4.c: reflect intel documentation fix.
2003-07-08 Will Cohen <wcohen@redhat.com>
* daemon/opd_kernel.c: Handle /proc/modules format.
2003-07-08 Will Cohen <wcohen@redhat.com>
* doc/oprofile.xml:
* configure.in: --enable-gcov option and documentation.
2003-07-08 Will Cohen <wcohen@redhat.com>
* utils/opcontrol: Correct P4 default event.
2003-06-03 John Levon <levon@movementarian.org>
* from BRANCH_CALLGRAPH
* libdb/odb_hash.h:
* libdb/db_manage.c:
* libdb/db_insert.c: namespace safety
* libpp/partition_files.cpp:
* libpp/profile.cpp: spacing, add a FIXME
2003-07-07 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp: cleanup walking through multimap with a
pair<iterator, iterator>
2003-07-05 Philippe Elie <phil.el@wanadoo.fr>
* daemon/opd_image.c:
* libdb/db_insert.c: 64 bits arch compile fix, thanks to Falk Hueffner
<falk@debian.org>
2003-07-02 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: honor options::show_header
2003-06-30 Graydon Hoare <graydon@redhat.com>
* libpp/op_header.cpp: Handle printing multiple bitmask values.
2003-06-19 John Levon <levon@movementarian.org>
* doc/Makefile.am: fix make distcheck
2003-06-18 John Levon <levon@movementarian.org>
* pp/opannotate_options.c: hide the unhandled
--base-dir option
2003-06-18 John Levon <levon@movementarian.org>
* pp/Makefile.am: don't build opdiff
2003-06-17 Will Cohen <wcohen@redhat.com>
* daemon/opd_cookie.h: Add s390 syscall value.
2003-06-17 John Levon <levon@movementarian.org>
* utils/opcontrol: don't accept "-r" - it's too easy to typo
2003-06-17 John Levon <levon@movementarian.org>
* doc/srcdoc/Doxyfile: removed
* doc/srcdoc/Doxyfile.in:
* configure.in: generate doxygen version nr. automatically
2003-06-17 Philippe Elie <phil.el@wanadoo.fr>
* libdb/db_insert.cpp: missing initialization of error message on
error path
2003-06-17 John Levon <levon@movementarian.org>
* utils/opcontrol: accept some short forms for common
operations
2003-06-17 John Levon <levon@movementarian.org>
* utils/opcontrol: accept --foo blah as well as
--foo=blah
2003-06-16 John Levon <levon@movementarian.org>
* utils/opcontrol: "opcontrol" will show usage
instead of doing nothing
2003-06-16 Will Cohen <wcohen@nc.rr.com>
* libabi/abi.cpp:
* libabi/op_import.cpp: Add required include for cassert.
2003-06-16 John Levon <levon@movementarian.org>
* events/x86-64.hammer.unit_masks: remove some
bogus FIXMEs
2003-06-15 John Levon <levon@movementarian.org>
* README: fix autogen.sh line
2003-06-15 John Levon <levon@movementarian.org>
* daemon/opd_image.c: 64 bit fixes
2003-06-15 John Levon <levon@movementarian.org>
* utils/op_help.c: c89 fix
2003-06-15 John Levon <levon@movementarian.org>
* daemon/opd_image.c: c89 fix
2003-06-15 John Levon <levon@movementarian.org>
* doc/oprofile.xml: document --event
* utils/opcontrol:
* utils/op_help.c: allow unit mask, kernel, user to be
optional. Verify not too many events are passed.
2003-06-15 John Levon <levon@movementarian.org>
* libop/op_cpu_type.c: fix nr_counters cpu type check
* utils/op_help: implement --check_events, event validation
and counter allocation
* utils/opcontrol: use the above, implement --event=default
2003-06-14 John Levon <levon@movementarian.org>
* daemon/opd_image.c: fix a stupid error in my previous TGID patch
2003-06-12 Graydon Hoare <graydon@redhat.com>
* libop/op_events.c (op_check_events): Check bitmasks as well as
exclusive values, for unit masks.
2003-06-12 John Levon <levon@movementarian.org>
* daemon/opd_image.c: we were not handling a truncated
TGID entry properly
2003-06-12 John Levon <levon@movementarian.org>
* libutil++/unique_storage.h: missing typename
2003-06-11 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate_options.cpp: typo in option name
2003-06-11 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.cpp: boring_symbol() new to get a better choice
when eliminating symbol at identical vma
2003-06-11 Philippe Elie <phil.el@wanadoo.fr>
* utils/opcontrol: fix rtc option checking, bug added after 0.5.3,
no big deal
2003-06-11 Philippe Elie <phil.el@wanadoo.fr>
* libregex/op_regex.cpp:
* libpp/profile.cpp: compile fix, tree was broken by my previous patch
2003-06-11 Jason Yeh <jason.yeh@amd.com>
* events/i386.athlon.events: add CPU_CLK_UNHALTED
* utils/opcontrol: use the above by default
* events/x86-64.hammer.events:
* events/x86-64.hammer.unit_masks: various fixes
2003-06-11 Philippe Elie <phil.el@wanadoo.fr>
* libpp/op_header.cpp:
* libpp/profile.cpp:
* libpp/profile_spec.cpp:
* libpp/symbol_sort.cpp:
* libregex/op_regex.cpp:
* libutil++/op_bfd.cpp: use exception rather exit(EXIT_FAILURE) in
library code
2003-06-11 John Levon <levon@movementarian.org>
* daemon/opd_image.c: future-proof the code handlers
2003-06-11 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate.cpp: output_asm() avoid output when the set of selected
symbols doesn't contain any samples
2003-06-11 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/unique_storage.h: we don't need to check if key is present
before trying to insert it
2003-06-10 Philippe Elie <phil.el@wanadoo.fr>
* libpp/name_storage.h: minor tidy
* libutil++/unique_storage.h: small efficiency improvement
2003-06-09 John Levon <levon@movementarian.org>
* pp/Makefile.am:
* libutil/Makefile.am: fix make distcheck
2003-06-09 John Levon <levon@movementarian.org>
* libpp/opp_symbol.h: rename to ...
* libpp/symbol.h: ... this
* libpp/Makefile.am:
* libpp/format_output.h:
* libpp/format_output.cpp:
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* libpp/sample_container.h:
* libpp/sample_container.cpp:
* libpp/symbol_functors.h:
* libpp/symbol_sort.cpp: fix up from above and some header
cleanups
2003-06-09 John Levon <levon@movementarian.org>
* libpp/profile.h: std::pair not pair
2003-06-08 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile.cpp: don't underflow start offset when the vma range
is unknown
* pp/opreport.cpp: use samples_range() not samples_range(0, ~0)
2003-06-08 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile.h:
* libpp/profile.cpp: replace accumulate_samples() API by an iterator
interface
* libpp/profile_container.h:
* libpp/profilecontainer.cpp:
* pp/opreport.cpp: use new API
2003-06-08 Philippe Elie <phil.el@wanadoo.fr>
* include/sstream: replace old version by the once shipped with
2.95.3, seekg() in the old was not working
2003-06-08 John Levon <levon@movementarian.org>
* libpp/name_storage.h: don't need to define the tag structs
* libutil++/unique_storage.h: fix the comments,
make get() public
2003-06-08 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_container.cpp:
* libutil++/string_manip.cpp: gcc 2.91.66 fix
2003-06-08 John Levon <levon@movementarian.org>
* libpp/name_storage.h:
* libpp/name_storage.cpp:
* libpp/opp_symbol.h:
* libpp/profile_container.cpp:
* libpp/symbol_functors.cpp:
* libutil++/unique_storage.h: don't derive from I()
at all for id_value, it's not needed. Hide .id and
provide operator<(), operator==(), operator!=(), and
set()
2003-06-08 John Levon <levon@movementarian.org>
* libutil++/unique_storage.h: make some of
id_value only visible to unique_storage.
2003-06-08 John Levon <levon@movementarian.org>
* libpp/name_storage.h:
* libutil++/unique_storage.h: move the ID class
into unique_storage, and make it derive from the
template parameter, to give simpler type safe support
2003-06-08 John Levon <levon@movementarian.org>
* libutil++/Makefile.am:
* libutil++/unique_storage.h: add new template for
unique storage of values
* libpp/name_storage.h:
* libpp/name_storage.cpp: use it
2003-06-07 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_container.cpp: fix order of file output with opannotate
--source to be consistent with other tools
2003-06-07 John Levon <levon@movementarian.org>
* libpp/profile_container.cpp: fix operator<
2003-06-07 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile.h:
* libpp/profile.cpp: change API to walk through vma with non zero
samples count rather looking for all vma. This is not very clean, an
iterator interface will be perhaps a better idea. Measures shows it's
to do it so for now I apply it.
* libpp/profile_container.cpp: update according to above change.
2003-06-07 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* libpp/symbol_container.h:
* libpp/symbol_container.cpp: remove dead api
find_symbol(string symbol_name)
2003-06-07 Philippe Elie <phil.el@wanadoo.fr>
* libpp/name_storage.h:
* libpp/name_storage.cpp:
* libpp/profile_container.cpp:
* libpp/profile_container.h:
* libpp/sample_container.h:
* libpp/sample_container.cpp:
* libpp/symbol_container.h:
* libpp/symbol_container.cpp:
* pp/opannotate.cpp: replace some use of string filename by
debug_name_id
2003-06-05 John Levon <levon@movementarian.org>
* daemon/Makefile.am:
* daemon/opd_kernel.c:
* daemon/p_module.h: remove p_module.h, unused
* daemon/opd_cookie.h: use __NR_lookup_dcookie and
use our definitions only if it's not defined
* daemon/opd_image.c:
* daemon/opd_kernel.c:
* daemon/opd_sample_files.c:
* daemon/oprofiled.c: pedantry
* libabi/op_import.cpp:
* libabi/abi_test.cpp: fix build from odb change
* libop/op_config.h: move NR_CPUS to ...
* libop/op_config_24.h: ... here
* libop/op_hw_config.h: remove unused OP_COUNT_MAX
2003-06-03 Philippe Elie <phil.el@wanadoo.fr>
* libpp/op_header.cpp:
* libpp/profile.cpp:
* dae/opd_proc.c:
* dae/opd_sample_files.c:
* daemon/opd_image.c:
* daemon/opd_sample_files.c:
* libdb/odb_hash.h:
* libdb/db_insert.c:
* libdb/db_manage.c:
* libdb/db_test.c: error message is now a field of a samples_odb_t
2003-06-03 John Levon <levon@movementarian.org>
* libutil++/child_reader.cpp:
* libabi/abi.cpp:
* libabi/abi.h:
* libabi/abi_test.cpp:
* libabi/op_api.h:
* libabi/op_abi.cpp:
* libabi/op_import.cpp: pedantry, remove unused code
2003-06-01 Philippe Elie <phil.el@wanadoo.fr>
* dae/oprofiled.c:
* libop/oprofiled.c:
* libop/op_cpu_type.c:
* module/oprofile.c:
* module/oprofile.h:
* pp/opdiff.cpp: more static data and function
2003-05-31 Philippe Elie <phil.el@wanadoo.fr>
* gui/oprof_start_util.h:
* libdb/db_stat.c:
* libdb/odb_hash.h:
* libpp/format_output.h:
* libpp/locate_image.h:
* libpp/name_storage.h:
* libpp/partition_files.h:
* libpp/profile.h:
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: improve doxygen comment
2003-05-31 Philippe Elie <phil.el@wanadoo.fr>
* configure.in: use AC_DEFINE_UNQUOTED() to define version string
in config.h not in version-1.h
* Makefile.am: distclean-local: is no longer used
* version-1.h.in: delete
* libutil/op_version.h:
* libutil/op_version.c: new file: package version output
* libutil/Makefile.am:
* dae/oprofiled.c:
* daemon/oprofiled.c:
* gui/oprof_start.h:
* libop/op_events.c:
* libopt++/popt_options.cpp:
* libregex/demangle_sybol.cpp:
* module/oprofile.c:
* utils/op_help.c: tweak # include according
2003-05-30 Dan Zink <Dan.Zink@hp.com>
* module/x86/op_apic.c: really disable the apic if it was disabled
2003-05-29 John Levon <levon@movementarian.org>
* utils/opcontrol: don't allow --rtc-value if not RTC mode
2003-05-27 John Levon <levon@movementarian.org>
* libutil++/string_manip.h: add <stdexcept>
* pp/opannotate.cpp: use '\n' not endl
* pp/opreport.cpp: untie cout
2003-05-29 Philippe Elie <phil.el@wanadoo.fr>
* merge with pp-interface-branch: following ChangeLog was unmerged
to branch
2003-05-27 John Levon <levon@movementarian.org>
* configure.in: oprofile 0.5.3 is released, back to
0.6cvs
2003-05-26 John Levon <levon@movementarian.org>
* doc/oprofile.xml: update docs for --no-vmlinux
2003-05-26 John Levon <levon@movementarian.org>
* libop/op_interface_25.h:
* daemon/opd_image.c: handle tgid for future
compatibility, fix compile on older gccs
2003-05-26 John Levon <levon@movementarian.org>
* libop/op_interface_25.h: add LAST_CODE
* daemon/opd_stats.h:
* daemon/opd_stats.c: count short reads of
buffer and unplaceable samples
* daemon/opd_image.c: rewrite buffer parsing
code, handle window where we can't place a
sample
2003-05-26 John Levon <levon@movementarian.org>
* libutil++/utility.h: fix typo
* utils/opcontrol: fix typo
2003-05-16 John Levon <levon@movementarian.org>
* pp/counter_profile.cpp: remove bogus cpu speed
consistency check
2003-05-09 John Levon <levon@movementarian.org>
* m4/Makefile.am:
* m4/compileroption.m4: add a generalised compiler option
tester
* configure.in: use it, add -fno-common
2003-05-09 John Levon <levon@movementarian.org>
* daemon/oprofiled.c:
* dae/oprofiled.c: remove duplicate declaration found
via -fno-common
2003-05-04 John Levon <levon@movementarian.org>
* doc/oprofile.xml: fix validation errors from xmllint --valid
2003-05-28 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_spec.cpp: make image:/path/to:image working
2003-05-28 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/string_manip.h:
* libutil++/string_manip.cpp: specialize
lexical_cast_no_ws<unsigned int> to accept hexadecimal input
* pp/common_option.cpp: missing << endl
2003-05-27 Philippe Elie <phil.el@wanadoo.fr>
* doc/oprofile.xml: update example in "Interpreting profiling results"
section
2003-05-26 John Levon <levon@movementarian.org>
* doc/oprofile.xml: add new pp tools options
2003-05-26 John Levon <levon@movementarian.org>
* doc/opreport.1.in:
* doc/opgprof.1.in:
* doc/opannotate.1.in:
* doc/op_help.1.in: complete
2003-05-26 John Levon <levon@movementarian.org>
* configure.in:
* doc/Makefile.am:
* doc/oprofile.1.in:
* doc/op_help.1.in:
* doc/opcontrol.1.in:
* doc/opreport.1.in:
* doc/opannotate.1.in:
* doc/opgprof.1.in: re-organise and add manpages
2003-05-26 John Levon <levon@movementarian.org>
* doc/oprofile.xml: start to document the pp interface
2003-05-26 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: remove automatic switch to --symbols mode
2003-05-26 Philippe Elie <phil.el@wanadoo.fr>
* libpp/symbol_sort.h:
* pp/opannotate_options.cpp:
* pp/opgprof_options.cpp:
* pp/opreport_options.cpp: handle meaningless options combinations
2003-05-26 Philippe Elie <phil.el@wanadoo.fr>
* pp/opgprof_options.cpp: no need to use unmergeable_profile here
2003-05-25 Philippe Elie <phil.el@wanadoo.fr>
* events/i386.piii.unit_masks: tweak comment, change default unit mask
for kni instruction to 0 and type to exclusive
2003-05-25 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_container.cpp: thinko
* pp/opreport.cpp: typo
2003-05-25 John Levon <levon@movementarian.org>
* libopt++/popt_options.h:
* libopt++/popt_options.cpp: obvious cleanup,
remove some dead code
2003-05-25 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_flags: cf_image_name new column_flags flag
* libpp/profile_container.cpp: use above flag. Don't compare app_name
by string but id
* pp/opreport.cpp: hide image_name when un-necessary
2003-05-24 Philippe Elie <phil.el@wanadoo.fr>
* doc/srcdoc/Doxyfile:
* libpp/profile.h:
* libpp/profile_container.h:
* libutil++/utility.h: remove gcc 2.91 noncopyable as empty base class
work-around
2003-05-23 Philippe Elie <phil.el@wanadoo.fr>
* configure.in: do early check of libiberty
* libpp/symbol_sort.cpp: 2.91 compile fix
2003-05-22 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/child_reader.h: minor #include fix
2003-05-22 Philippe Elie <phil.el@wanadoo.fr>
* libpp/name_storage.cpp: debug_name_storage::name()
return an empty string when for zero id to avoid exception
2003-05-21 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile.cpp:
* libpp/op_header.h:
* libpp/op_header.cpp: when sample file differ output the sample
filename
* pp/opannotate.cpp: remove spurious output
* */Makefile.am:
* configure.in: handle our own OP_CFLAGS, OP_CXXFLAGS to let user
free to use make CFLAGS=
2003-05-20 Philippe Elie <phil.el@wanadoo.fr>
* libpp/profile_spec.h:
* libpp/profile_spec.cpp: remove lib_image_exclude, use image_exclude
instead. match() Handle image exclusion.
* libregex/stl.pat.in: FIXME
* libutil++/string_manip.h: compile fix
2003-05-19 John Levon <levon@movementarian.org>
* libutil++/comma_list.h:
* libpp/filename_spec.cpp:
* libutil++/string_manip.h:
* libutil++/generic_spec.h: rename strict_convert<>
to lexical_cast_no_ws<>
2003-05-19 John Levon <levon@movementarian.org>
* libutil++/generic_spec.h: move strict_convert<> to...
* libutil++/string_manip.h: ...here
2003-05-19 John Levon <levon@movementarian.org>
* libutil++/generic_spec.h: comma_list isn't a friend
any more
* libutil++/comma_list.h: use generic_spec<>::match()
directly
2003-05-19 John Levon <levon@movementarian.org>
* libpp/name_storage.h: s/name_map/stored_names/, it's not
a map any more.
2003-05-19 Philippe Elie <phil.el@wanadoo.fr>
* libregex/mangled-name.txt:
* libregex/stl.pat.in: partial handling of _Identity<> and
_Select1st<>, pattern fail if type are too complex
2003-05-19 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_output.cpp: small cleanup
* libpp/name_storage.h:
* libpp/name_storage.cpp: ensure type safety by providing distinct
type identifier for each name_storage based container
* libpp/profile_container.cpp:
* libpp/sample_container.cpp:
* libpp/symbol_functors.cpp:
* libpp/symbol_sort.cpp:
* libpp/opp_symbol.h: use the name identifier api
* libpp/op_header.cpp:
* libpp/partition_files.cpp: use a set<string> not a name_storage
* libpp/format_output.cpp: small cleanup
2003-05-18 Philippe Elie <phil.el@wanadoo.fr>
* libpp/partition_files.cpp: merge partition entry when necessary
fixing a corner case when a binary can be a dependent or a primary
image and was not merged
2003-05-18 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport_options.cpp:
* pp/opannotate_options.cpp: remove conflicting options shortcut
2003-05-18 Philippe Elie <phil.el@wanadoo.fr>
* libregex/stl.pat.in: add list<T>::{const_}+iterator
2003-05-17 Philippe Elie <phil.el@wanadoo.fr>
* libpp/name_storage.cpp: basename() return an empty string for nil id
2003-05-17 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.cpp: get_linenr() init linenr to zero
* libpp/name_storage.cpp: don't use id zero
* libpp/opp_symbol.h: now we use id and not string we must provide
default ctor to initialize the id
* libpp/profile_container.cpp: init debug info entry only if
get_linenr() succeed
2003-05-17 Philippe Elie <phil.el@wanadoo.fr>
* libdb/db_manage.c: better handling of zero sample file size when
opening in read only mode
* module/x86/op_nmi.c: printk format fix
2003-05-17 John Levon <levon@movementarian.org>
* pp/opannotate_option.cpp:
* pp/opreport_options.cpp: command line changes
2003-05-17 John Levon <levon@movementarian.org>
* libpp/name_storage.h:
* libpp/name_storage.cpp: add present()
* libpp/op_header.cpp:
* libpp/partition_files.cpp: use a name store
to track what we've warned about, and clean up
the warnings a bit
2003-05-16 John Levon <levon@movementarian.org>
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: expose anonymous symbols
to the world as "??sectionname". Useful for .plt
and .fini, which are quite common.
* libpp/name_storage.cpp: demangle anonymous symbols
nicely.
2003-05-16 John Levon <levon@movementarian.org>
* libpp/symbol_sort.cpp: fix image-sorting
2003-05-16 John Levon <levon@movementarian.org>
* libpp/name_storage.h:
* libpp/name_storage.cpp: make ID be per-container
2003-05-16 John Levon <levon@movementarian.org>
* libpp/name_storage.h:
* libpp/name_storage.cpp: merge processed names
into one string, remove the boolean
2003-05-16 John Levon <levon@movementarian.org>
* libpp/name_storage.h:
* libpp/name_storage.cpp: whoops, use string
not stored_name for the ID map
2003-05-16 John Levon <levon@movementarian.org>
* libpp/name_storage.h:
* libpp/name_storage.cpp: split into three
stores for debug filenames, symbols, and images
* libpp/format_output.cpp:
* libpp/profile_container.cpp:
* libpp/sample_container.cpp:
* libpp/symbol_container.cpp:
* libpp/symbol_sort.cpp:
* pp/opannotate.cpp: changes from above
2003-05-16 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* libpp/name_storage.h:
* libpp/name_storage.cpp: add shared storage
and caching of symbol and file names
* libpp/opp_symbol.h:
* libpp/format_output.cpp:
* libpp/profile_container.cpp:
* libpp/sample_container.cpp:
* libpp/symbol_container.cpp:
* libpp/symbol_container.h:
* libpp/symbol_sort.cpp:
* libpp/symbol_sort.h:
* pp/opannotate.cpp:
* pp/opreport.cpp: use it
* pp/opgprof_options.cpp: add unused demangle
options to hack-fix the build
2003-05-16 John Levon <levon@movementarian.org>
* libpp/symbol_sort.cpp: fix --sort debug
2003-05-16 John Levon <levon@movementarian.org>
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: remove have_debug_info()
2003-05-16 Philippe Elie <phil.el@wanadoo.fr>
* libpp/op_header.cpp: remove cpu_speed checking
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: bail out in get_linenr() if binary doesn't
contain any debug info. Speed up my test case opreport --debug-info
-l by 25
2003-05-16 John Levon <levon@movementarian.org>
* libutil++/op_bfd.cpp: clean up interesting_symbol
a bit
2003-05-16 John Levon <levon@movementarian.org>
* libutil++/op_bfd.cpp: make sure linenr is
always set to something
* libpp/opp_symbol.h: linenr should be unsigned
* libpp/profile_container.cpp: remove some unneeded
copies
2003-05-16 John Levon <levon@movementarian.org>
* pp/opannotate.cpp: small renaming
2003-05-15 John Levon <levon@movementarian.org>
* libpp/symbol_container.h:
* libpp/symbol_container.cpp: add begin(), end(),
remove symbols_by_count()
* libpp/profile_container.cpp: use symbol container
iterator directly in select_symbols()
2003-05-15 John Levon <levon@movementarian.org>
* libpp/format_output.h:
* libpp/format_output.cpp:
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* libpp/symbol_container.h:
* libpp/symbol_container.cpp:
* libpp/symbol_sort.h:
* libpp/symbol_sort.cpp:
* pp/opannotate.cpp:
* pp/opreport.cpp:
* pp/opgprof.cpp: move symbol_collection typedef
into global namespace, and use consistently
2003-05-15 John Levon <levon@movementarian.org>
* libpp/format_output.h:
* libpp/format_output.cpp: add vma_format_64bit(),
remove bool parameter from output()
* pp/opreport.cpp: change from above, refactor flags
code into get_format_flags() helper
2003-05-12 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_output.h:
* libpp/format_output.cpp:
* libpp/symbol_sort.h:
* libpp/symbol_sort.cpp: handle reverse sort in sorting not in output
* pp/opannotate.cpp:
* pp/opreport.cpp: update according
2003-05-12 Philippe Elie <phil.el@wanadoo.fr>
* libpp/symbol_sort.h:
* libpp/symbol_sort.cpp: handle sort order as specified on command line
* pp/opgprof.cpp: sort symbol is not necessary for gprof
* pp/opreport.cpp:
* pp/opreport_options.cpp:
* pp/opannotate.cpp: use new sort API
2003-05-12 John Levon <levon@movementarian.org>
* libpp/symbol_sort.h:
* libpp/symbol_sort.cpp: partial implementation
of other sort options
2003-05-12 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* libpp/symbol_sort.h:
* libpp/symbol_sort.cpp: add sorting code
* symbol_functors.h: move some less() into
symbol_sort.cpp
* libpp/profile_container.h:
* libpp/profile_container.cpp: don't pass in
sort option to select_symbols(), do it in caller
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp:
* pp/opreport_options.h:
* pp/opreport_options.cpp: from the above
2003-05-12 John Levon <levon@movementarian.org>
* format_flags.h: remove vma64_p. Add column_flags
* libpp/profile_container.h:
* libpp/profile_container.cpp: pass in a struct
to select_symbols. Generate hints for 64-bit VMA
and multiple apps in the profile.
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp: use the above
2003-05-12 John Levon <levon@movementarian.org>
* libpp/format_output.cpp:
* libpp/format_flags.h:
* pp/opreport.cpp: trivial renaming of flags
2003-05-11 John Levon <levon@movementarian.org>
* libpp/format_output.cpp:
* libpp/format_flags.h: better output for
the default of short filenames
2003-05-11 John Levon <levon@movementarian.org>
* pp/opreport.cpp: improve the app/image name column
showing a bit
2003-05-11 John Levon <levon@movementarian.org>
* pp/opreport.cpp: default to -l if we were just
going to show one image summary.
2003-05-11 John Levon <levon@movementarian.org>
* pp/opreport.cpp: move some code around that
outputs the image summaries
2003-05-11 John Levon <levon@movementarian.org>
* libpp/format_output.h:
* libpp/format_output.cpp:
* pp/opreport.cpp:
* pp/opreport_options.h:
* pp/opreport_options.cpp: s/--short-filename/--long-filenames/
2003-05-11 John Levon <levon@movementarian.org>
* libpp/profile_spec.h:
* libpp/profile_spec.cpp: take exclude_dependent not
include_dependent
* pp/opannotate_options.c:
* pp/opgprof_options.c:
* pp/opreport_options.h:
* pp/opreport_options.c: change to use exclude_dependent,
remove --hide-dependent
2003-05-11 John Levon <levon@movementarian.org>
* locate_images.h:
* locate_images.cpp: extra_images can now use
relative paths for its search dirs. Move most of
the warnings out of find_image_path, and make it
also handle relative paths. Return the file
even if it wasn't readable.
* libpp/partition_files.cpp: give warnings when
necessary.
* libpp/profile_spec.h:
* libpp/profile_spec.cpp: handle relative paths
inside image specs, as stated in pp_interface; also
use the extra images search path for resolution.
* pp/opannotate_options.cpp:
* pp/opreport_options.cpp:
* pp/opgprof_options.cpp: changes from above
2003-05-11 John Levon <levon@movementarian.org>
* libpp/format_flags.h: source doc improvements
2003-05-11 John Levon <levon@movementarian.org>
* libpp/opp_symbol.h: move vma64_p to ...
* libpp/format_flags.h: ... here
2003-05-11 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* libpp/outsymbflags.h:
* libpp/format_flags.h:
* libpp/profile_container.h:
* libpp/format_output.h:
* libpp/format_output.cpp:
* pp/opreport.cpp: rename outsymbflags to format_flags
2003-05-11 John Levon <levon@movementarian.org>
* profile_container.h:
* profile_container.cpp:
* opannotate.cpp: clean up select_filename() in a
similar fashion
2003-05-11 John Levon <levon@movementarian.org>
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* pp/opreport.cpp:
* pp/opannotate.cpp:
* pp/opgprof.cpp: another select_symbols() API cleanup
2003-05-11 John Levon <levon@movementarian.org>
* pp/opgprof.cpp: use select_symbols so we can
handle --threshold
2003-05-11 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate.cpp: use threshold for source output
2003-05-11 John Levon <levon@movementarian.org>
* pp/common_option.h:
* pp/common_option.cpp:
* pp/opannotate_options.cpp:
* pp/opreport_options.cpp: make --threshold
be a common option.
2003-05-11 John Levon <levon@movementarian.org>
* pp/profile_container.h:
* pp/profile_container.cpp:
* pp/opannotate.cpp:
* pp/opreport.cpp: clean up select_symbols
interface
2003-05-11 John Levon <levon@movementarian.org>
* pp/opreport.cpp: make --threshold work for
image summaries too
2003-05-11 John Levon <levon@movementarian.org>
* pp/opreport_options.cpp: fix --threshold
description to match reality
2003-05-11 John Levon <levon@movementarian.org>
* libpp/partition_files.h:
* libpp/partition_files.cpp:
* pp/opannotate_options.cpp:
* pp/opgprof_options.cpp:
* pp/opreport.cpp:
* pp/opreport_options.cpp: rename merge_by members
2003-05-11 John Levon <levon@movementarian.org>
* pp/opreport.cpp: add some logic to not output
duplicate lines for dep images when we've already
shown all the possible details in the main image summary
2003-05-11 John Levon <levon@movementarian.org>
* pp/common_option.h: use std::
2003-05-11 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport_options.cpp: move handle_threshold()
* pp/common_option.h:
* pp/common_option.cpp: here
* pp/opannotate_options.h:
* pp/opannotate_options.cpp:
* pp/opannotate.cpp: handle --threshold
2003-05-10 John Levon <levon@movementarian.org>
* libop/op_mangle.h:
* libop/op_mangle.c: use a temp struct for
passing the mangle parameters with a set of
flags.
* dae/opd_sample_files.c:
* daemon/opd_sample_files.c: use it
2003-05-10 John Levon <levon@movementarian.org>
* Makefile.am:
* HACKING:
* libop++/:
* pp/Makefile.am:
* libpp/Makefile.am:
* libpp/op_header.h:
* libpp/op_header.cpp: remove libop++ after
moving op_header into libpp
2003-05-10 John Levon <levon@movementarian.org>
* libop++/op_header.cpp: make CPU info take up
one line not two
2003-05-10 John Levon <levon@movementarian.org>
* libop++/Makefile.am:
* libop++/op_header.cpp:
* libop++/op_print_event.h:
* libop++/op_print_event.cpp: remove op_print_event
files, making it a function local to op_header.cpp
2003-05-10 John Levon <levon@movementarian.org>
* libop++/op_header.h:
* libop++/op_header.cpp: make output_header() be
an operator<<
* pp/opannotate.cpp:
* pp/opreport.cpp: changes from the above
* libpp/profile.h: small cleanup
2003-05-10 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/string_manip.h:
* libutil++/string_manip.cpp: replace format_percent() by
format_double()
* libpp/format_output.cpp:
* pp/opannotate.cpp:
* pp/opreport.cpp: use format_double()
2003-05-09 John Levon <levon@movementarian.org>
* libpp/opp_symbol.h: app name, image name should
be in symbol not in file_location
* libpp/format_output.cpp:
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* libpp/symbol_container.cpp:
* libpp/symbol_functors.cpp: changes from above
2003-05-09 John Levon <levon@movementarian.org>
* libpp/format_output.h:
* libpp/format_output.cpp: vma_64 doesn't need
to be in field_datum. make one output() private
2003-05-09 John Levon <levon@movementarian.org>
* libpp/format_output.h:
* libpp/format_output.cpp: pass a symbol ref
not name down into the formatters
2003-05-09 John Levon <levon@movementarian.org>
* libutil++/string_manip.h:
* libutil++/string_manip.cpp: sample_filename() is unused
2003-05-09 Philippe Elie <phil.el@wanadoo.fr>
* libop++/op_header.h:
* libop++/op_header.cpp: read_header() new
* libop++/Makefile.in: we depend on libdb
* pp/opannotate.cpp:
* pp/opreport.cpp: better way to get sample file header
2003-05-09 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_output.cpp: remove redundant map formater
* pp/opannotate.cpp: spurious cout
2003-05-08 John Levon <levon@movementarian.org>
* pp/opreport.cpp:
* pp/opreport_options.cpp:
* pp/opreport_options.h: clean up cout stuff as
suggested by Phil
2003-05-08 John Levon <levon@movementarian.org>
* libpp/profile_spec.h:
* libpp/profile_spec.c: rename the set_p variables,
remove pointless is_empty() function
* pp/opreport.cpp: split collation and output into
two separate functions. Rename the temporary structures
so it's hopefully a bit more obvious what's happening.
Add sourcedocs.
2003-05-08 John Levon <levon@movementarian.org>
* pp/opreport_options.h:
* pp/opreport_options.cpp: add options::cout,
--output-file option
* pp/opreport.cpp: use options::cout
2003-05-08 John Levon <levon@movementarian.org>
* pp/format_output.cpp: fix cumulative column widths
2003-05-08 John Levon <levon@movementarian.org>
* opreport_options.h: add accumulated
* opreport.cpp: handle --accumulated
2003-05-08 Philippe Elie <phil.el@wanadoo.fr>
* libpp/symbol_container.cpp: minor tidy
* libpp/profile.h:
* libpp/profile.cpp: allow to cumulate sample file
* libpp/profile_container.h:
* libpp/profile_container.cpp: remove free function add_samples()
* pp/annotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp: when possible cumulate samples into a profile_t
first before cumulating them in a profile_container
2003-05-07 John Levon <levon@movementarian.org>
* pp/opannotate.cpp: small cleanup
2003-05-07 John Levon <levon@movementarian.org>
* pp/opreport_options.cpp: remove unneeded include
2003-05-07 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* libpp/parse_cmdline.h:
* libpp/parse_cmdline.cpp: rename to ...
* libpp/profile_spec.h:
* libpp/profile_spec.cpp: this. Make handle_nonoptions()
be a static factory create() method instead. Make
select_sample_filenames() be a member generate_file_list()
instead. Concomitant cleanups.
* libpp/filename_spec.h:
* pp/opannotate_options.cpp:
* pp/opgprof_options.cpp:
* pp/opreport_options.cpp: changes from above
2003-05-07 John Levon <levon@movementarian.org>
* libpp/profile.cpp: fix stupid error in last commit
2003-05-07 John Levon <levon@movementarian.org>
* libpp/profile.h:
* libpp/profile.cpp: remove sample_filename member,
bogus old spurious check, set_start_offset().
* libpp/profile_container.cpp:
* pp/opannotate.cpp:
* pp/opreport.cpp: changes from above
2003-05-07 John Levon <levon@movementarian.org>
* libpp/derive_files.h:
* libpp/derive_files.cpp: rename files as ...
* libpp/locate_images.h:
* libpp/locate_images.cpp: this.
* libpp/Makefile.am:
* libpp/partition_files.h:
* pp/common_option.h:
* pp/opgprof.cpp:
* pp/opgprof_options.h:
* pp/opreport_options.h: changes from above
2003-05-07 John Levon <levon@movementarian.org>
* libpp/derive_files.h:
* libpp/derive_files.cpp: rework into extra_images
class
* libpp/partition_files.h:
* libpp/partition_files.cpp:
* pp/common_option.h:
* pp/common_option.cpp:
* pp/opannotate.cpp:
* pp/opgprof.cpp:
* pp/opreport.cpp: use the above
2003-05-07 John Levon <levon@movementarian.org>
* libpp/Makefile.am:
* session.h:
* session.cpp: remove session.{h,cpp}
2003-05-07 Philippe Elie <phil.el@wanadoo.fr>
* pp/oprofpp.cpp pp/oprofpp_options.cpp pp/oprofpp_options.h:
* pp/op_time.cpp pp/op_time_options.cpp pp/op_time_options.h:
* pp/op_to_source.cpp pp/op_to_source_options.cpp:
* pp/op_to_source_options.h pp/op_merge.cpp: removed files
* pp/Makefile.am: update
2003-05-06 Philippe Elie <phil.el@wanadoo.fr>
* pp/opgprof.cpp: infamous typo
* pp/opannotate.cpp: output sample file header
2003-05-06 Philippe Elie <phil.el@wanadoo.fr>
* libpop++/op_mangling.h:
* libpop++/op_mangling.cpp: removed file
* libop++/op_header.h:
* libop++/op_header.cpp: new file, misc function acting on sample
file header stolen from libpp/profile.(cpp|h)
* libop++/op_print_event.h: typo
* libop++/op_print_event.cpp: save/restore ostream state
* libop++/Makefile.am: update
* libop/op_sample_file.h: remove dead #define OPD_MANGLE_CHAR
* libpp/profile.h:
* libpp/profile.cpp: move some member function to free function in
libop++/op_header.(cpp|h)
* libpp/profile_container.cpp: minor call change
* libpp/Makefile.am: op_merge can't be compiled currently inhibit build
* libpp/opreport.cpp: output sample file header
2003-05-06 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/path_filter.h: default param to empty string not "*"
* libpp/symbol_functors.h: remove dead code
* pp/opgprof.cpp: off by one in histsize calculation
2003-05-04 Philippe Elie <phil.el@wanadoo.fr>
* libutil/op_file.h:
* libutil/op_file.c: sanitize create_path()
* libutil++/path_filter.h: default ctor match all
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* libpp/sample_container.h:
* libpp/sample_container.cpp:
* libpp/symbol_container.h:
* libpp/symbol_container.cpp: extend api to allow selecting symbol
restricted to one application, ditto for retrieving samples
* pp/opannotate_options.h:
* pp/opannotate_options.cpp:
* pp/opannotate.cpp: implement
* pp/opgprof_options.h:
* pp/opgprof_options.cpp:
* pp/opreport_options.h:
* pp/opreport_options.cpp: comment fix
* pp/opreport.cpp: update to match new profile_container api
2003-05-03 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: don't show dependent file if !--include-dependent
2003-05-02 Philippe Elie <phil.el@wanadoo.fr>
* libpp/partition_files.h:
* libpp/partition_files.cpp: sort_by_image_name() new return a list
of sample filename sorted by bfd image name.
* libpp/profile_container.cpp: add_samples() don't build op_bfd object
used here but pass it as parameters
* pp/opgprof.cpp:
* pp/opreport.cpp: use the above change to avoid opening multiple time
a bfd object.
* pp/opannotate_options.cpp: add --(include|exclude)-symbols
* libpp/parse_cmdline.cpp:
* pp/opgprof_options.cpp:
* pp/opreport.cpp: make a distinction in error message between no
sample available and sample file available but no one was selected
2003-05-01 Philippe Elie <phil.el@wanadoo.fr>
* pp/opannotate_options.h:
* pp/opannotate_options.cpp:
* pp/opdiff.cpp:
* pp/opdiff_options.h:
* pp/opdiff_options.cpp:
* pp/opgprof.cpp:
* pp/opgprof_options.h:
* pp/opgprof_options.cpp:
* pp/opreport.cpp:
* pp/opreport_options.h:
* pp/opreport_options.cpp: move common options handling ...
* pp/common_option.h:
* pp/common_option.cpp: here
* pp/opannotate.cpp: add options
* libpp/parse_cmdline.cpp: #include <iterator> ...
2003-05-01 Philippe Elie <phil.el@wanadoo.fr>
* libpp/counter_util.h:
* libpp/counter_util.cpp: remove these files from cvs
* libpp/derive_files.h:
* libpp/derive_files.cpp: remove dead code derive_files() + typo
* libpp/parse_cmdline.cpp: select_sample_filename() throw if empty
session after filtering
* pp/common_option.cpp: catch invalid_argument, return failure on
catched exception
2003-05-01 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.cpp: remove _init from excluded symbol
* libpp/profile_container.cpp: tidy
* pp/opgprof.cpp: fix capping samples
2003-04-30 John Levon <levon@movementarian.org>
* pp/opgprof.cpp:
* pp/opgprof_options.cpp:
* libpp/profile.cpp: tiny cleanups, fix compile
2003-04-30 Philippe Elie <phil.el@wanadoo.fr>
* libdb/db_stat.c: minor improvement to stat, useful to track missed
sample by our tools.
* pp/op_report.cpp: move matching_sample_filename() to ...
* libpp/parse_cmdline.h:
* libpp/parse_cmdline.cpp: here renamed select_sample_filename()
* libpp/profile_container.h:
* libpp/profile_container.cpp: expose begin() / end() from
sample_container
* pp/common_option.h:
* pp/common_option.cpp: move option which was not really common to ..
* pp/opreport_options.h:
* pp/opreport_options.cpp: here
* pp/opannotate_options.h:
* pp/opannotate_options.cpp: and here
* pp/operport.cpp:
* pp/opannotate.cpp: better to return a value from main() ...
* pp/opgprof_options.h:
* pp/opgprof_options.cpp:
* pp/opgprof.cpp: implement opgprof
2003-04-29 Philippe Elie <phil.el@wanadoo.fr>
* libpp/parse_cmdline.h:
* libpp/parse_cmdline.cpp: handle opreport /lib/libc-2.2.5.so, now
non tag, non option argument match either an image name or lib name
2003-04-29 John Levon <levon@movementarian.org>
* libutil++/op_bfd.cpp: remove "static " inside anon namespace
2003-04-28 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_output.h:
* libpp/format_output.cpp: need header tweaking
* pp/opannotate.cpp:
* pp/opgprof.cpp: minor tidy
* pp/opreport_options.h:
* pp/opreport_options.cpp:
* pp/opreport.cpp: handle -no-header and --image-path
2003-04-28 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/glob_filter.cpp:
* libutil++/path_filter.cpp:
* libutil++/string_filter.cpp: #include <algorithm>
2003-04-28 John Levon <levon@movementarian.org>
* libutil++/string_filter.cpp:
* libutil++/string_filter.h:
* libutil++/glob_filter.h:
* libutil++/glob_filter.cpp:
* libutil++/path_filter.h:
* libutil++/path_filter.cpp: use std::find[_if],
share some code
2003-04-28 Philippe Elie <phil.el@wanadoo.fr>
* libutil++/op_bfd.cpp: replace a loop by a std::copy()
2003-04-28 John Levon <levon@movementarian.org>
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: cleanup of last fix
2003-04-28 John Levon <levon@movementarian.org>
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: make symbol filtering
happen *after* adding of artificial symbol
2003-04-28 John Levon <levon@movementarian.org>
* libutil++/string_filter.cpp:
* libutil++/glob_filter.cpp:
* libutil++/path_filter.cpp: match as true if
include_list is empty and not excluded
* libutil++/op_bfd.h:
* libutil++/op_bfd.cpp: use string_filter to
filter symbols
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* pp/opreport_options.h:
* pp/opreport_options.cpp:
* pp/opreport.cpp: changes from using string_filter
2003-04-28 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport.cpp: finish to remove use of split_sample_filename
2003-04-28 John Levon <levon@movementarian.org>
* libutil++/filename_match.h:
* libutil++/filename_match.cpp: replace with ...
* libutil++/Makefile.am:
* libutil++/string_filter.h:
* libutil++/string_filter.cpp:
* libutil++/glob_filter.h:
* libutil++/glob_filter.cpp:
* libutil++/path_filter.h:
* libutil++/path_filter.cpp: .. split up variants
of the filters
* libpp/parse_cmdline.cpp: use glob_filter
* pp/op_to_source.cpp: use path_filter
2003-04-28 Philippe Elie <phil.el@wanadoo.fr>
* libpp/partition_files.h:
* libpp/partition_files.cpp:
* libpp/split_sample_filename.h:
* libpp/split_sample_filename.cpp:
* pp/opreport.cpp: replace some use of std::string sample_filename
by a split_sample_filename struct
2003-04-28 John Levon <levon@movementarian.org>
* libutil++/filename_match.h:
* libutil++/filename_match.cpp: use file-scope
not private static member function
2003-04-27 Philippe Elie <phil.el@wanadoo.fr>
* libpp/format_output.h:
* libpp/format_output.cpp: remove all string based output format flag
* libpp/format_output.cpp: move options::demangle handling ...
* libregx/demangle_symbol.cpp: here
* libpp/profile_container.h:
* libpp/profile_container.cpp:
* pp/opreport_options.h:
* pp/opreport_options.cpp:
* pp/opreport.cpp: handle --include-symbols
2003-04-27 Philippe Elie <phil.el@wanadoo.fr>
* pp/opreport_options.h: