Skip to content

Commit

Permalink
new version 0.5
Browse files Browse the repository at this point in the history
performance improvements and optimizations
bug fixes
advanced monitoring
  • Loading branch information
sstefani committed Nov 22, 2015
1 parent 3df912b commit 3aed8a6
Show file tree
Hide file tree
Showing 53 changed files with 1,842 additions and 1,178 deletions.
2 changes: 1 addition & 1 deletion README.md
@@ -1,7 +1,7 @@
Mtrace
------

mtrace-ng is an interactive dynamic memory tracer, debugger and statistical analyses tool for C and C++, which intercepts, records and reports all kinds of dynamic memory allocations.
mtrace-ng is a dynamic memory tracer, debugger and statistical analyses tool for C and C++, which intercepts, records and reports all kinds of dynamic memory allocations.

It supports the developer to get statistics about the memory usage and finding memory leaks in an arbitrate program. Since mtrace-ng is using breakpoints for tracing the program, there is no need of modification of the source code nor any recompilation.

Expand Down
2 changes: 0 additions & 2 deletions TODO
Expand Up @@ -2,7 +2,5 @@ ppc single step enhancement
arm thumb support
dwarf debug support
arm & ppc hw bp support
dwarf caching
invalid stack trace cache for unmapped libraries
restore REALLOC_TRY when realloc fails
mremap revamp
69 changes: 59 additions & 10 deletions autom4te.cache/output.0
@@ -1,6 +1,6 @@
@%:@! /bin/sh
@%:@ Guess values for system-dependent variables and create Makefiles.
@%:@ Generated by GNU Autoconf 2.69 for mtrace-ng 0.4.
@%:@ Generated by GNU Autoconf 2.69 for mtrace-ng 0.5.
@%:@
@%:@ Report bugs to <stefani@seibold.net>.
@%:@
Expand Down Expand Up @@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='mtrace-ng'
PACKAGE_TARNAME='mtrace-ng'
PACKAGE_VERSION='0.4'
PACKAGE_STRING='mtrace-ng 0.4'
PACKAGE_VERSION='0.5'
PACKAGE_STRING='mtrace-ng 0.5'
PACKAGE_BUGREPORT='stefani@seibold.net'
PACKAGE_URL=''

Expand Down Expand Up @@ -1329,7 +1329,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures mtrace-ng 0.4 to adapt to many kinds of systems.
\`configure' configures mtrace-ng 0.5 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

Expand Down Expand Up @@ -1399,7 +1399,7 @@ fi

if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of mtrace-ng 0.4:";;
short | recursive ) echo "Configuration of mtrace-ng 0.5:";;
esac
cat <<\_ACEOF

Expand Down Expand Up @@ -1518,7 +1518,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
mtrace-ng configure 0.4
mtrace-ng configure 0.5
generated by GNU Autoconf 2.69

Copyright (C) 2012 Free Software Foundation, Inc.
Expand Down Expand Up @@ -2124,7 +2124,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by mtrace-ng $as_me 0.4, which was
It was created by mtrace-ng $as_me 0.5, which was
generated by GNU Autoconf 2.69. Invocation command line was

$ $0 $@
Expand Down Expand Up @@ -12006,7 +12006,7 @@ fi

# Define the identity of the package.
PACKAGE='mtrace-ng'
VERSION='0.4'
VERSION='0.5'


cat >>confdefs.h <<_ACEOF
Expand Down Expand Up @@ -13238,6 +13238,7 @@ for ac_func in \
atexit \
getcwd \
gettimeofday \
clock_gettime \
memset \
mkdir \
rmdir \
Expand All @@ -13260,6 +13261,54 @@ fi
done


{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5
$as_echo_n "checking for clock_gettime in -lrt... " >&6; }
if ${ac_cv_lib_rt_clock_gettime+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lrt $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */

/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char clock_gettime ();
int
main ()
{
return clock_gettime ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_rt_clock_gettime=yes
else
ac_cv_lib_rt_clock_gettime=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5
$as_echo "$ac_cv_lib_rt_clock_gettime" >&6; }
if test "x$ac_cv_lib_rt_clock_gettime" = xyes; then :
cat >>confdefs.h <<_ACEOF
@%:@define HAVE_LIBRT 1
_ACEOF

LIBS="-lrt $LIBS"

else
as_fn_error $? "*** librt not found on your system" "$LINENO" 5

fi


#
# Debugging
Expand Down Expand Up @@ -13844,7 +13893,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by mtrace-ng $as_me 0.4, which was
This file was extended by mtrace-ng $as_me 0.5, which was
generated by GNU Autoconf 2.69. Invocation command line was

CONFIG_FILES = $CONFIG_FILES
Expand Down Expand Up @@ -13910,7 +13959,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
mtrace-ng config.status 0.4
mtrace-ng config.status 0.5
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"

Expand Down
69 changes: 59 additions & 10 deletions autom4te.cache/output.1
@@ -1,6 +1,6 @@
@%:@! /bin/sh
@%:@ Guess values for system-dependent variables and create Makefiles.
@%:@ Generated by GNU Autoconf 2.69 for mtrace-ng 0.4.
@%:@ Generated by GNU Autoconf 2.69 for mtrace-ng 0.5.
@%:@
@%:@ Report bugs to <stefani@seibold.net>.
@%:@
Expand Down Expand Up @@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='mtrace-ng'
PACKAGE_TARNAME='mtrace-ng'
PACKAGE_VERSION='0.4'
PACKAGE_STRING='mtrace-ng 0.4'
PACKAGE_VERSION='0.5'
PACKAGE_STRING='mtrace-ng 0.5'
PACKAGE_BUGREPORT='stefani@seibold.net'
PACKAGE_URL=''

Expand Down Expand Up @@ -1329,7 +1329,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures mtrace-ng 0.4 to adapt to many kinds of systems.
\`configure' configures mtrace-ng 0.5 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

Expand Down Expand Up @@ -1399,7 +1399,7 @@ fi

if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of mtrace-ng 0.4:";;
short | recursive ) echo "Configuration of mtrace-ng 0.5:";;
esac
cat <<\_ACEOF

Expand Down Expand Up @@ -1518,7 +1518,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
mtrace-ng configure 0.4
mtrace-ng configure 0.5
generated by GNU Autoconf 2.69

Copyright (C) 2012 Free Software Foundation, Inc.
Expand Down Expand Up @@ -2124,7 +2124,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by mtrace-ng $as_me 0.4, which was
It was created by mtrace-ng $as_me 0.5, which was
generated by GNU Autoconf 2.69. Invocation command line was

$ $0 $@
Expand Down Expand Up @@ -12006,7 +12006,7 @@ fi

# Define the identity of the package.
PACKAGE='mtrace-ng'
VERSION='0.4'
VERSION='0.5'


cat >>confdefs.h <<_ACEOF
Expand Down Expand Up @@ -13238,6 +13238,7 @@ for ac_func in \
atexit \
getcwd \
gettimeofday \
clock_gettime \
memset \
mkdir \
rmdir \
Expand All @@ -13260,6 +13261,54 @@ fi
done


{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5
$as_echo_n "checking for clock_gettime in -lrt... " >&6; }
if ${ac_cv_lib_rt_clock_gettime+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lrt $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */

/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char clock_gettime ();
int
main ()
{
return clock_gettime ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_rt_clock_gettime=yes
else
ac_cv_lib_rt_clock_gettime=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5
$as_echo "$ac_cv_lib_rt_clock_gettime" >&6; }
if test "x$ac_cv_lib_rt_clock_gettime" = xyes; then :
cat >>confdefs.h <<_ACEOF
@%:@define HAVE_LIBRT 1
_ACEOF

LIBS="-lrt $LIBS"

else
as_fn_error $? "*** librt not found on your system" "$LINENO" 5

fi


#
# Debugging
Expand Down Expand Up @@ -13844,7 +13893,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by mtrace-ng $as_me 0.4, which was
This file was extended by mtrace-ng $as_me 0.5, which was
generated by GNU Autoconf 2.69. Invocation command line was

CONFIG_FILES = $CONFIG_FILES
Expand Down Expand Up @@ -13910,7 +13959,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
mtrace-ng config.status 0.4
mtrace-ng config.status 0.5
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"

Expand Down

0 comments on commit 3aed8a6

Please sign in to comment.