Permalink
Browse files

Kill Devel::DProf

It has been deprecated in 5.14. Now is the time to remove it.
  • Loading branch information...
1 parent 7ac818b commit c9dab4e97a0bc57966ab975591aa385f9d89f9e2 @rafl rafl committed Jun 14, 2011
Showing with 36 additions and 2,656 deletions.
  1. +0 −1 INSTALL
  2. +0 −23 MANIFEST
  3. +3 −14 NetWare/Makefile
  4. +0 −9 Porting/Maintainers.pl
  5. +0 −4 configure.com
  6. +0 −247 cpan/Devel-DProf/DProf.pm
  7. +0 −790 cpan/Devel-DProf/DProf.xs
  8. +0 −13 cpan/Devel-DProf/Todo
  9. +0 −942 cpan/Devel-DProf/bin/dprofpp
  10. +0 −63 cpan/Devel-DProf/dprof/V.pm
  11. +0 −18 cpan/Devel-DProf/dprof/test1_t
  12. +0 −24 cpan/Devel-DProf/dprof/test1_v
  13. +0 −21 cpan/Devel-DProf/dprof/test2_t
  14. +0 −36 cpan/Devel-DProf/dprof/test2_v
  15. +0 −19 cpan/Devel-DProf/dprof/test3_t
  16. +0 −29 cpan/Devel-DProf/dprof/test3_v
  17. +0 −24 cpan/Devel-DProf/dprof/test4_t
  18. +0 −36 cpan/Devel-DProf/dprof/test4_v
  19. +0 −25 cpan/Devel-DProf/dprof/test5_t
  20. +0 −15 cpan/Devel-DProf/dprof/test5_v
  21. +0 −29 cpan/Devel-DProf/dprof/test6_t
  22. +0 −16 cpan/Devel-DProf/dprof/test6_v
  23. +0 −9 cpan/Devel-DProf/dprof/test7_t
  24. +0 −10 cpan/Devel-DProf/dprof/test7_v
  25. +0 −15 cpan/Devel-DProf/dprof/test8_t
  26. +0 −11 cpan/Devel-DProf/dprof/test8_v
  27. +0 −93 cpan/Devel-DProf/t/DProf.t
  28. +0 −1 djgpp/config.over
  29. +2 −2 lib/Benchmark.pm
  30. +0 −1 pod.lst
  31. +0 −1 pod/perldebtut.pod
  32. +7 −11 pod/perldebug.pod
  33. +6 −2 pod/perldelta.pod
  34. +4 −19 pod/perlfaq3.pod
  35. +1 −1 pod/perlperf.pod
  36. +3 −11 pod/perlutil.pod
  37. +0 −1 pod/roffitall
  38. +1 −0 t/porting/known_pod_issues.dat
  39. +0 −1 utils.lst
  40. +3 −5 utils/Makefile
  41. +3 −5 utils/Makefile.SH
  42. +0 −51 utils/dprofpp.PL
  43. +1 −4 vms/descrip_mms.template
  44. +1 −2 win32/Makefile
  45. +1 −2 win32/makefile.mk
View
@@ -2094,7 +2094,6 @@ make install will install the following:
cpan2dist The CPANPLUS distribution creator.
cpanp The CPANPLUS shell.
cpanp-run-perl A helper for cpanp.
- dprofpp Perl code profiler post-processor.
enc2xs Encoding module generator.
find2perl find-to-perl translator.
h2ph Extract constants and simple macros from C headers.
View
@@ -513,28 +513,6 @@ cpan/DB_File/t/db-hash.t See if DB_File works
cpan/DB_File/t/db-recno.t See if DB_File works
cpan/DB_File/typemap Berkeley DB extension interface types
cpan/DB_File/version.c Berkeley DB extension interface version check
-cpan/Devel-DProf/bin/dprofpp Perl code profile post-processor
-cpan/Devel-DProf/DProf.pm Perl code profiler
-cpan/Devel-DProf/dprof/test1_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test1_v Perl code profiler tests
-cpan/Devel-DProf/dprof/test2_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test2_v Perl code profiler tests
-cpan/Devel-DProf/dprof/test3_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test3_v Perl code profiler tests
-cpan/Devel-DProf/dprof/test4_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test4_v Perl code profiler tests
-cpan/Devel-DProf/dprof/test5_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test5_v Perl code profiler tests
-cpan/Devel-DProf/dprof/test6_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test6_v Perl code profiler tests
-cpan/Devel-DProf/dprof/test7_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test7_v Perl code profiler tests
-cpan/Devel-DProf/dprof/test8_t Perl code profiler tests
-cpan/Devel-DProf/dprof/test8_v Perl code profiler tests
-cpan/Devel-DProf/dprof/V.pm Perl code profiler tests
-cpan/Devel-DProf/DProf.xs Perl code profiler
-cpan/Devel-DProf/t/DProf.t Perl code profiler
-cpan/Devel-DProf/Todo Perl code profiler todo list
cpan/Devel-PPPort/apicheck_c.PL Devel::PPPort apicheck generator
cpan/Devel-PPPort/Changes Devel::PPPort changes
cpan/Devel-PPPort/devel/buildperl.pl Devel::PPPort perl version builder
@@ -5153,7 +5131,6 @@ utils/cpan2dist.PL the cpan2dist utility
utils/cpan.PL easily interact with CPAN from the command line
utils/cpanp.PL the cpanp utility
utils/cpanp-run-perl.PL the cpanp-run-perl utility
-utils/dprofpp.PL Perl code profile post-processor
utils/enc2xs.PL Encode module generator
utils/h2ph.PL A thing to turn C .h files into perl .ph files
utils/h2xs.PL Program to make .xs files from C header files
View
@@ -318,7 +318,6 @@ DUMPER_NLM = $(AUTODIR)\Data\Dumper\Dumper.NLM
PEEK_NLM = $(AUTODIR)\Devel\Peek\Peek.NLM
RE_NLM = $(AUTODIR)\re\re.NLM
BYTELOADER_NLM = $(AUTODIR)\ByteLoader\ByteLoader.NLM
-DPROF_NLM = $(AUTODIR)\Devel\DProf\DProf.NLM
GLOB_NLM = $(AUTODIR)\File\Glob\Glob.NLM
HOSTNAME_NLM = $(AUTODIR)\Sys\Hostname\Hostname.NLM
CWD_NLM = $(EXTDIR)\Cwd\Cwd.NLM
@@ -344,7 +343,6 @@ EXTENSION_NLM = \
$(GLOB_NLM) \
$(PEEK_NLM) \
$(RE_NLM) \
- $(DPROF_NLM) \
$(HOSTNAME_NLM) \
$(CWD_NLM) \
$(STORABLE_NLM) \
@@ -662,7 +660,6 @@ PL2BAT = ..\win32\bin\pl2bat.pl
UTILS = \
..\utils\h2ph \
..\utils\splain \
- ..\utils\dprofpp \
..\utils\perlbug \
..\utils\pl2pm \
..\utils\c2ph \
@@ -790,7 +787,7 @@ DLL_OBJ = $(DLL_SRC:.c=.obj)
X2P_OBJ = $(X2P_SRC:.c=.obj)
DYNAMIC_EXT = Socket IO Fcntl Opcode SDBM_File POSIX attributes B re \
- Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \
+ Data/Dumper Devel/Peek ByteLoader File/Glob \
Storable/Storable List/Util MIME/Base64/Base64 XS/APItest/APItest \
XS/Typemap/Typemap Unicode/Collate/Collate Unicode/Normalize/Normalize Sys/Hostname
@@ -811,7 +808,6 @@ DUMPER = $(EXTDIR)\Data\Dumper\Dumper
ERRNO = $(EXTDIR)\Errno\Errno
PEEK = $(EXTDIR)\Devel\Peek\Peek
BYTELOADER = $(EXTDIR)\ByteLoader\ByteLoader
-DPROF = $(EXTDIR)\Devel\DProf\DProf
GLOB = $(EXTDIR)\File\Glob\Glob
HOSTNAME = $(EXTDIR)\Sys\Hostname\Hostname
CWD = $(EXTDIR)\Cwd\Cwd
@@ -838,7 +834,6 @@ EXTENSION_C = \
$(PEEK).c \
$(B).c \
$(BYTELOADER).c \
- $(DPROF).c \
$(GLOB).c \
$(HOSTNAME).c \
$(CWD).c \
@@ -1210,12 +1205,6 @@ $(BYTELOADER_NLM):
$(MAKE)
cd ..\..\netware
-$(DPROF_NLM):
- cd $(EXTDIR)\Devel\$(*B)
- ..\..\..\miniperl -I..\..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl
- $(MAKE)
- cd ..\..\..\netware
-
$(GLOB_NLM):
cd $(EXTDIR)\File\$(*B)
..\..\..\miniperl -I..\..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl
@@ -1403,7 +1392,7 @@ distclean: clean nwclean
-del /f /q $(LIBDIR)\SDBM_File.pm $(LIBDIR)\Socket.pm $(LIBDIR)\POSIX.pm
-del /f /q $(LIBDIR)\B.pm $(LIBDIR)\O.pm $(LIBDIR)\re.pm
-del /f /q $(LIBDIR)\Data\Dumper.pm $(LIBDIR)\ByteLoader.pm
- -del /f /q $(LIBDIR)\Devel\Peek.pm $(LIBDIR)\Devel\DProf.pm
+ -del /f /q $(LIBDIR)\Devel\Peek.pm
-del /f /q $(LIBDIR)\File\Glob.pm
-del /f /q $(LIBDIR)\Unicode\Normalize.pm
-del /f /q $(LIBDIR)\Unicode\Collate.pm
@@ -1413,7 +1402,7 @@ distclean: clean nwclean
-del /f /q $(PODDIR)\*.html
-del /f /q $(PODDIR)\*.bat
cd ..\utils
- -del /f /q h2ph splain perlbug pl2pm c2ph h2xs perldoc dprofpp
+ -del /f /q h2ph splain perlbug pl2pm c2ph h2xs perldoc
-del /f /q *.bat
cd ..\netware
cd ..\x2p
View
@@ -537,15 +537,6 @@ package Maintainers;
'UPSTREAM' => 'blead',
},
- 'Devel::DProf' =>
- {
- 'MAINTAINER' => 'rafl',
- 'DISTRIBUTION' => 'FLORA/Devel-DProf-20110228.00.tar.gz',
- 'FILES' => q[cpan/Devel-DProf],
- 'EXCLUDED' => [ qr{^t/release-} ],
- 'UPSTREAM' => 'cpan',
- },
-
'Devel::SelfStubber' =>
{
'MAINTAINER' => 'p5p',
View
@@ -7372,10 +7372,6 @@ $ WRITE CONFIG "$ cpan2dist == """ + perl_setup_perl + " ''vms_prefix':[utils]c
$! FIXME: "-" is an operator and illegal in a symbol name -- cpanp-run-perl can't work
$!$ WRITE CONFIG "$ cpanp-run-perl == """ + perl_setup_perl + " ''vms_prefix':[utils]cpanp-run-perl.com"""
$ WRITE CONFIG "$ cpanp == """ + perl_setup_perl + " ''vms_prefix':[utils]cpanp.com"""
-$ IF F$LOCATE("Devel::DProf",dynamic_ext) .LT. F$LENGTH(dynamic_ext)
-$ THEN
-$ WRITE CONFIG "$ dprofpp == """ + perl_setup_perl + " ''vms_prefix':[utils]dprofpp.com"""
-$ ENDIF
$ WRITE CONFIG "$ enc2xs == """ + perl_setup_perl + " ''vms_prefix':[utils]enc2xs.com"""
$ WRITE CONFIG "$ find2perl == """ + perl_setup_perl + " ''vms_prefix':[utils]find2perl.com"""
$ WRITE CONFIG "$ h2ph == """ + perl_setup_perl + " ''vms_prefix':[utils]h2ph.com"""
View
@@ -1,247 +0,0 @@
-use 5.006_001;
-
-=head1 NAME
-
-Devel::DProf - a B<DEPRECATED> Perl code profiler
-
-=head1 SYNOPSIS
-
- perl -d:DProf test.pl
-
-=head1 ACHTUNG!
-
-C<Devel::DProf> is B<DEPRECATED> and will be removed from a future version of
-Perl. We strongly recommend that you install and use L<Devel::NYTProf> instead,
-as it offers significantly improved profiling and reporting.
-
-=head1 DESCRIPTION
-
-The Devel::DProf package is a Perl code profiler. This will collect
-information on the execution time of a Perl script and of the subs in that
-script. This information can be used to determine which subroutines are
-using the most time and which subroutines are being called most often. This
-information can also be used to create an execution graph of the script,
-showing subroutine relationships.
-
-To profile a Perl script run the perl interpreter with the B<-d> debugging
-switch. The profiler uses the debugging hooks. So to profile script
-F<test.pl> the following command should be used:
-
- perl -d:DProf test.pl
-
-When the script terminates (or when the output buffer is filled) the
-profiler will dump the profile information to a file called
-F<tmon.out>. A tool like I<dprofpp> can be used to interpret the
-information which is in that profile. The following command will
-print the top 15 subroutines which used the most time:
-
- dprofpp
-
-To print an execution graph of the subroutines in the script use the
-following command:
-
- dprofpp -T
-
-Consult L<dprofpp> for other options.
-
-=head1 PROFILE FORMAT
-
-The old profile is a text file which looks like this:
-
- #fOrTyTwO
- $hz=100;
- $XS_VERSION='DProf 19970606';
- # All values are given in HZ
- $rrun_utime=2; $rrun_stime=0; $rrun_rtime=7
- PART2
- + 26 28 566822884 DynaLoader::import
- - 26 28 566822884 DynaLoader::import
- + 27 28 566822885 main::bar
- - 27 28 566822886 main::bar
- + 27 28 566822886 main::baz
- + 27 28 566822887 main::bar
- - 27 28 566822888 main::bar
- [....]
-
-The first line is the magic number. The second line is the hertz value, or
-clock ticks, of the machine where the profile was collected. The third line
-is the name and version identifier of the tool which created the profile.
-The fourth line is a comment. The fifth line contains three variables
-holding the user time, system time, and realtime of the process while it was
-being profiled. The sixth line indicates the beginning of the sub
-entry/exit profile section.
-
-The columns in B<PART2> are:
-
- sub entry(+)/exit(-) mark
- app's user time at sub entry/exit mark, in ticks
- app's system time at sub entry/exit mark, in ticks
- app's realtime at sub entry/exit mark, in ticks
- fully-qualified sub name, when possible
-
-With newer perls another format is used, which may look like this:
-
- #fOrTyTwO
- $hz=10000;
- $XS_VERSION='DProf 19971213';
- # All values are given in HZ
- $over_utime=5917; $over_stime=0; $over_rtime=5917;
- $over_tests=10000;
- $rrun_utime=1284; $rrun_stime=0; $rrun_rtime=1284;
- $total_marks=6;
-
- PART2
- @ 406 0 406
- & 2 main bar
- + 2
- @ 456 0 456
- - 2
- @ 1 0 1
- & 3 main baz
- + 3
- @ 141 0 141
- + 2
- @ 141 0 141
- - 2
- @ 1 0 1
- & 4 main foo
- + 4
- @ 142 0 142
- + & Devel::DProf::write
- @ 5 0 5
- - & Devel::DProf::write
-
-(with high value of $ENV{PERL_DPROF_TICKS}).
-
-New C<$over_*> values show the measured overhead of making $over_tests
-calls to the profiler These values are used by the profiler to
-subtract the overhead from the runtimes.
-
-Lines starting with C<@> mark the amount of time passed since the
-previous C<@> line. The numbers following the C<@> are integer tick
-counts representing user, system, and real time. Divide these numbers
-by the $hz value in the header to get seconds.
-
-Lines starting with C<&> map subroutine identifiers (an integer) to
-subroutine packages and names. These should only occur once per
-subroutine.
-
-Lines starting with C<+> or C<-> mark normal entering and exit of
-subroutines. The number following is a reference to a subroutine
-identifier.
-
-Lines starting with C<*> mark where subroutines are entered by C<goto
-&subr>, but note that the return will still be marked as coming from
-the original sub. The sequence might look like this:
-
- + 5
- * 6
- - 5
-
-Lines starting with C</> is like C<-> but mark where subroutines are
-exited by dying. Example:
-
- + 5
- + 6
- / 6
- / 5
-
-Finally you might find C<@> time stamp marks surrounded by C<+ &
-Devel::DProf::write> and C<- & Devel::DProf::write> lines. These 3
-lines are outputted when printing of the mark above actually consumed
-measurable time.
-
-=head1 AUTOLOAD
-
-When Devel::DProf finds a call to an C<&AUTOLOAD> subroutine it looks at the
-C<$AUTOLOAD> variable to find the real name of the sub being called. See
-L<perlsub/"Autoloading">.
-
-=head1 ENVIRONMENT
-
-C<PERL_DPROF_BUFFER> sets size of output buffer in words. Defaults to 2**14.
-
-C<PERL_DPROF_TICKS> sets number of ticks per second on some systems where
-a replacement for times() is used. Defaults to the value of C<HZ> macro.
-
-C<PERL_DPROF_OUT_FILE_NAME> sets the name of the output file. If not set,
-defaults to tmon.out.
-
-=head1 BUGS
-
-Builtin functions cannot be measured by Devel::DProf.
-
-With a newer Perl DProf relies on the fact that the numeric slot of
-$DB::sub contains an address of a subroutine. Excessive manipulation
-of this variable may overwrite this slot, as in
-
- $DB::sub = 'current_sub';
- ...
- $addr = $DB::sub + 0;
-
-will set this numeric slot to numeric value of the string
-C<current_sub>, i.e., to C<0>. This will cause a segfault on the exit
-from this subroutine. Note that the first assignment above does not
-change the numeric slot (it will I<mark> it as invalid, but will not
-write over it).
-
-Another problem is that if a subroutine exits using goto(LABEL),
-last(LABEL) or next(LABEL) then perl may crash or Devel::DProf will die
-with the error:
-
- panic: Devel::DProf inconsistent subroutine return
-
-For example, this code will break under Devel::DProf:
-
- sub foo {
- last FOO;
- }
- FOO: {
- foo();
- }
-
-A pattern like this is used by Test::More's skip() function, for
-example. See L<perldiag> for more details.
-
-=head1 SEE ALSO
-
-L<perl>, L<dprofpp>, times(2)
-
-=cut
-
-# This sub is needed for calibration.
-package Devel::DProf;
-
-sub NONESUCH_noxs {
- return $Devel::DProf::VERSION;
-}
-
-{
- package DB;
-
- #
- # As of perl5.003_20, &DB::sub stub is not needed (some versions
- # even had problems if stub was redefined with XS version).
- #
-
- # disable DB single-stepping
- BEGIN { $single = 0; }
-
- # This sub is needed during startup.
- sub DB {
- # print "nonXS DBDB\n";
- }
-}
-
-use XSLoader ();
-
-$Devel::DProf::VERSION = '20110228.00'; # this version not authorized by
- # Dean Roehrich. See "Changes" file.
-
-use if $] >= 5.013, 'deprecate';
-
-sub import {
- XSLoader::load 'Devel::DProf', $Devel::DProf::VERSION;
-}
-
-1;
Oops, something went wrong.

0 comments on commit c9dab4e

Please sign in to comment.