Changeset 609 for branches/GNU/src/binutils/gprof
- Timestamp:
- Aug 16, 2003, 6:59:22 PM (22 years ago)
- Location:
- branches/GNU/src/binutils/gprof
- Files:
-
- 56 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GNU/src/binutils/gprof/ChangeLog
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 2001-06-11 Alan Modra <amodra@bigpond.net.au> 2 3 Merge from mainline. 4 2001-05-16 Alexandre Oliva <aoliva@redhat.com> 1 2003-03-27 Chris Demetriou <cgd@broadcom.com> 2 3 * gmon_io.c (enum gmon_ptr_size, enum gmon_ptr_signedness): New. 4 (gmon_get_ptr_size, gmon_get_ptr_signedness): New. 5 (gmon_io_read_vma, gmon_io_write_vma, gmon_read_raw_arc) 6 (gmon_write_raw_arc, gmon_out_read, gmon_out_write): Adjust to 7 use new functions and enums. 8 9 2003-02-21 K Schutte <schutte@fel.tno.nl> 10 11 * corefile.c (core_create_line_syms): Check for a NULL sentinel 12 value before using it. 13 14 2002-12-02 Nick Clifton <nickc@redhat.com> 15 16 * configure.in (LINGUAS): Add pt_BR. 17 * configure: Regenerate. 18 * po/pt_BR: New Brazillian Portugese translation. 19 20 2002-11-30 Alan Modra <amodra@bigpond.net.au> 21 22 * basic_blocks.c, basic_blocks.h, cg_arcs.c, cg_dfn.c, cg_print.c, 23 corefile.c, gmon_io.c, gprof.c, gprof.h, hist.c, mips.c, source.c, 24 source.h, sym_ids.c, sym_ids.h, symtab.h, tahoe.c, vax.c: Replace 25 boolean with bfd_boolean, true with TRUE, false with FALSE. 26 Formatting. 27 28 2002-11-12 Nick Clifton <nickc@redhat.com> 29 30 * configure.in (ALL_LINGUAS): Add da. 31 * configure: Regenerate. 32 * po/da.po: New Danish translation. 33 34 2002-08-22 Nick Clifton <nickc@redhat.com> 35 36 * gprof.c (main): Turn off default excluded functions in FLAT 37 profile. 38 39 2002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca> 40 41 * gmon_io.c (gmon_io_read_64, gmon_io_write_64): Define only if 42 BFD_HOST_U_64_BIT is defined. 43 (gmon_io_read_vma, gmon_io_write_vma): Add ifdefs. 44 45 2002-07-30 Nick Clifton <nickc@redhat.com> 46 47 * po/tr.po: Updated Turkish translation. 48 49 2002-07-30 Nick Clifton <nickc@redhat.com> 50 51 * alpha.c, cg_arcs.c, cg_dfn.c, gmon.h, gprof.c, gprof.h, hertz.c, 52 i386.c, mips.c, sparc.c, tahoe.c, utils.c, vax.c: Update Copyright 53 notice so that it applies even if the sources are modified. 54 55 2002-07-29 Ulrich Drepper <drepper@redhat.com> 56 57 * gprof.texi (Executing the Program): Add documentation on how to use 58 bbconv.pl. Patch by Eric Hanchrow. 59 60 2002-07-25 Nick Clifton <nickc@redhat.com> 61 62 * po/es.po: Updated Spanish translation. 63 * po/fr.po: Updated French translation. 64 65 2002-07-24 Dave Brolley <brolley@redhat.com> 66 67 * corefile.c (core_create_function_syms): Use the end of the section 68 containing the symbol to compute max_vma. 69 70 2002-07-24 Nick Clifton <nickc@redhat.com> 71 72 * po/sv.po: Updated Swedish translation. 73 * po/es.po: Updated Spanish translation. 74 75 2002-07-23 Nick Clifton <nickc@redhat.com> 76 77 * po/fr.po: Updated French translation. 78 * po/id.po: New Indonesian translation. 79 * configure.in (LINGUAS): Add id. 80 * configure: Regenerate. 81 82 2002-05-02 Nick Clifton <nickc@cambridge.redhat.com> 83 84 * po/Make-in (.po.gmo): Do not attempt to create a .gmo file if 85 the sources are read-only. 86 87 2002-04-04 Alan Modra <amodra@bigpond.net.au> 88 89 * dep-in.sed: Cope with absolute paths. 90 * Makefile.am (dep.sed): Subst TOPDIR. 91 Run "make dep-am". 92 * Makefile.in: Regenerate. 93 94 2002-03-21 Alan Modra <amodra@bigpond.net.au> 95 96 * Makefile.am: Run "make dep-am". 97 * Makefile.in: Regenerate. 98 99 2002-03-18 Nick Clifton <nickc@cambridge.redhat.com> 100 101 * po/fr.po: Updated version. 102 103 2002-03-13 Nick Clifton <nickc@cambridge.redhat.com> 104 105 * po/fr.po: Updated version. 106 107 2002-03-07 Daniel Jacobowitz <drow@mvista.com> 108 109 * gprof.texi: Wrap @menu in @ifnottex, not @ifinfo. 110 111 2002-02-19 Frank Ch. Eigler <fche@redhat.com> 112 113 * hist.c (hist_print): Rewrite log_scale calculation loop. 114 115 2002-02-11 Alan Modra <amodra@bigpond.net.au> 116 117 * Makefile.am: "make dep-am". 118 * Makefile.in: Regenerate. 119 120 2002-02-10 Daniel Jacobowitz <drow@mvista.com> 121 122 * gprof.c: Include "getopt.h" after other includes, so that 123 the proper macros are defined. 124 * gen-c-prog.awk: Emit a prototype for the generated function. 125 126 2002-02-01 Alan Modra <amodra@bigpond.net.au> 127 128 * configure.in (build_warnings): Add -Wstrict-prototypes 129 -Wmissing-prototypes. 130 * aclocal.m4: Regenerate. 131 * gconfig.in: Regenerate. 132 * configure: Regenerate. 133 * Makefile.am: Run "make dep-am". 134 * Makefile.in: Regenerate. 135 136 * alpha.c (alpha_find_call): Warning fixes. 137 * mips.c (mips_find_call): Likewise. 138 * sparc.c (sparc_find_call): Likewise. 139 * basic_blocks.c: Warning fixes. Eliminate DEFUN. 140 * call_graph.c: Likewise. 141 * cg_arcs.c: Likewise. 142 * cg_dfn.cp: Likewise. 143 * gprof.c: Likewise. 144 * gprof.h: Likewise. 145 * hist.c: Likewise. 146 * search_list.c: Likewise. 147 * source.c: Likewise. 148 * source.h: Likewise. 149 * sym_ids.c: Likewise. 150 * symtab.c: Likewise. 151 * symtab.h: Likewise. 152 * utils.c: Likewise. 153 * cg_print.c: Likewise. 154 (struct function_map, symbol_map, symbol_map_count): Move 155 declaration to.. 156 * corefile: ..here. 157 * corefile.c: Warning fixes. Eliminate DEFUN. 158 (struct function_map): Remove declaration. 159 * gmon_io.c: Warning fixes. Eliminate DEFUN. 160 (gmon_io_read_64): Make static. 161 (gmon_io_write_64): Likewise. 162 (gmon_read_raw_arc): Likewise. 163 (gmon_write_raw_arc): Likewise. 164 (gmon_io_write_8): Don't pass char, pass int param. 165 * gmon_io.h (gmon_io_write_8): Likewise. 166 167 * Makefile.am: Run "make dep-am" 168 * Makefile.in: Regenerate. 169 170 * basic_blocks.c: Replace bool with boolean, TRUE with true and 171 FALSE with false throughout. 172 * basic_blocks.h: Likewise. 173 * cg_arcs.c: Likewise. 174 * cg_dfn.c: Likewise. 175 * cg_print.c: Likewise. 176 * corefile.c: Likewise. 177 * gmon_io.c: Likewise. 178 * gprof.c: Likewise. 179 * hist.c: Likewise. 180 * mips.c: Likewise. 181 * source.c: Likewise. 182 * source.h: Likewise. 183 * sym_ids.c: Likewise. 184 * sym_ids.h: Likewise. 185 * symtab.h: Likewise. 186 * tahoe.c: Likewise. 187 * vax.c: Likewise. 188 * gprof.h: Likewise. 189 (TRUE): Don't define. 190 (FALSE): Don't define. 191 192 2002-01-31 Jason R Thorpe <thorpej@wasabisystems.com> 193 194 * TODO: Remove "host architecture pointer size" item. 195 * acconfig.h: Remove. 196 * gconfig.in: Regenerate. 197 * configure.in: Remove check for gmon pointer size. 198 * configure: Regenerate. 199 * gmon.h (GMON_HDRSIZE_BSD44_32): Define. 200 (GMON_HDRSIZE_BSD44_64): Ditto. 201 (GMON_HDRSIZE_OLDBSD_32): Ditto. 202 (GMON_HDRSIZE_OLDBSD_64): Ditto. 203 (struct raw_phdr): Wrap in #if 0, keeping it for 204 documentation purposes only. 205 (struct old_raw_phdr): Likewise. 206 (struct raw_arc): Likewise. Change type/size of 207 "count" member to long match 4.4BSD. 208 * gmon_io: Update copyright years. 209 (gmon_io_read_64): New function. 210 (gmon_io_read_vma): Use bfd_arch_bits_per_address to 211 determine target pointer size. Use gmon_io_read_32 212 and gmon_io_read_64. 213 (gmon_io_write_64): New function. 214 (gmon_io_write_vma): Use bfd_arch_bits_per_address to 215 determine target pointer size. Use gmon_io_write_32 216 and gmon_io_write_64. 217 (get_vma): Remove. 218 (put_vma): Ditto. 219 (gmon_read_raw_arc): New function. 220 (gmon_write_raw_arc): New function. 221 (gmon_out_read): Do not use struct raw_phdr or 222 struct old_raw_phdr to read the gmon header. Use 223 gmon_read_raw_arc to read call graph records. 224 (gmon_out_write): Do not use struct raw_phdr or 225 struct old_raw_phdr to write the gmon header. Use 226 gmon_write_raw_arc to write call graph records. 227 * po/gprof.pot: Regenerate. 228 * Makefile.in: Regenerate. 229 230 2002-01-31 Alan Modra <amodra@bigpond.net.au> 231 232 * alpha.c (alpha_Instruction): Don't use. 233 (alpha_find_call): Avoid use of bitfields and casts between 234 pointers and integers of different sizes. Avoid endian problems 235 when cross-compiling. 236 * vax.c (vax_find_call): Likewise. 237 (struct modebyte): Don't use. 238 (vax_operandmode): Pass in an unsigned char *. 239 (vax_operandlength): Likewise. 240 (vax_reladdr): Rename to vax_offset and return relative offset 241 rather than address. 242 * i386.c (i386_find_call): Avoid casts between pointers and 243 integers of different sizes. 244 * sparc.c (sparc_find_call): Likewise. Avoid endian problems. 245 * tahoe.c (tahoe_find_call): Likewise. 246 (tahoe_reladdr): Rename to tahoe_offset and return relative offset 247 rather than address. 248 249 * basic_blocks.h: Don't include headers here. 250 * call_graph.h: Likewise. 251 * cg_arcs.h: Likewise. 252 * cg_print.h: Likewise. 253 * corefile.h: Likewise. 254 * gmon_io.h: Likewise. 255 * gmon_out.h: Likewise. 256 * hertz.h: Likewise. 257 * hist.h: Likewise. 258 * source.h: Likewise. 259 * sym_ids.h: Likewise. 260 * symtab.h: Likewise. 261 * gprof.h: Don't include ansidecl.h, do include bfd.h. 262 (bool): Don't typedef. 263 * alpha.c: Adjust #include's for above header changes. 264 * basic_blocks.c: Likewise. 265 * call_graph.c: Likewise. 266 * cg_arcs.c: Likewise. 267 * cg_dfn.c: Likewise. 268 * cg_print.c: Likewise. 269 * corefile.c: Likewise. 270 * gmon_io.c: Likewise. 271 * gprof.c: Likewise. 272 * hertz.c: Likewise. 273 * hist.c: Likewise. 274 * i386.c: Likewise. 275 * mips.c: Likewise. 276 * sparc.c: Likewise. 277 * sym_ids.c: Likewise. 278 * symtab.c: Likewise. 279 * tahoe.c: Likewise. 280 * utils.c: Likewise. 281 * vax.c: Likewise. 282 283 * po/POTFILES.in: Regenerate. 284 285 2002-01-27 Daniel Jacobowitz <drow@mvista.com> 286 287 * configure: Regenerated. 288 289 2002-01-26 Richard Henderson <rth@redhat.com> 290 291 * i386.c (i386_iscall): Static. 292 * tahoe.c (indirectchild, tahoe_operandmode): Static. 293 (tahoe_operandlength, tahoe_reladdr): Static. 294 * vax.c (indirectchild): Static. 295 296 2002-01-26 Hans-Peter Nilsson <hp@bitrange.com> 297 298 * Makefile.am (install): Depend on install-info. 299 * Makefile.in: Regenerate. 300 301 2002-01-26 Jason Thorpe <thorpej@wasabisystems.com> 302 303 * mips.c: New file. 304 * Makefile.am (sources): Add mips.c. 305 (mips.o): New rule. 306 * Makefile.in: Regenerate. 307 * corefile.c: Update copyright years. 308 (find_call): Call mips_find_call for bfd_arch_mips. 309 310 2002-01-26 Nick Clifton <nickc@cambridge.redhat.com> 311 312 * po/fr.po: Updated version. 313 314 2002-01-25 Nick Clifton <nickc@cambridge.redhat.com> 315 316 * po/es.po: Updated version. 317 318 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com> 319 320 * po/gprof.pot: Regenerate. 321 322 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com> 323 324 * po/es.po: New file: Spanish translation. 325 * configure.in (ALL_LINGUAS): Add es. 326 * configure: Regenerate. 327 328 2002-01-03 Nick Clifton <nickc@cambridge.redhat.com> 329 330 * gmon_io.c (gmon_out_read): Remove use of ngettext(). It is not 331 present under AIX. 332 333 2002-01-02 Nick Clifton <nickc@cambridge.redhat.com> 334 335 * cg_print.c (print_header): Fix spelling typo. 336 337 * gmon_io.c (gmon_out_read): Fix formatting of text messages to 338 allow easier translation into other languages. 339 340 2001-12-21 Nick Clifton <nickc@cambridge.redhat.com> 341 342 * configure.in (ALL_LINGUAS): Add sv. 343 * configure: Regenerate. 344 * po/sv.po: Import from translation project web site. 345 346 2001-12-03 Nick Clifton <nickc@cambridge.redhat.com> 347 348 * configure.in (LINGUAS): Add tr. 349 * configure: Regenerate. 350 * po/tr.po: Import from translation project's web site. 351 352 2001-11-02 Nick Clifton <nickc@cambridge.redhat.com> 353 354 * configure.in (ALL_LINGUAS): Add 'fr'. 355 * configure: Regernate. 356 * po/fr.po: New file. 357 358 2001-10-03 Alan Modra <amodra@bigpond.net.au> 359 360 * configure: Regenerate. 361 362 2001-10-02 Alan Modra <amodra@bigpond.net.au> 363 364 * Makefile.am (Makefile): Depend on bfd/configure.in. 365 Run "make dep-am". 366 * Makefile.in: Regenerate. 367 368 2001-09-18 Bruno Haible <haible@clisp.cons.org> 369 370 * gprof.c (main): For gettext, also set the LC_CTYPE locate facet. 371 * sym_ids.c: Include "safe-ctype.h" instead of <ctype.h>. 372 (parse_spec): Use ISDIGIT instead of isdigit. 373 374 2001-09-18 Alan Modra <amodra@bigpond.net.au> 375 376 * sparc.c (sparc_find_call): Warning fix. 377 * alpha.c (alpha_find_call): Likewise. 378 379 2001-08-09 Alan Modra <amodra@bigpond.net.au> 380 381 * alpha.c: Add missing prototypes. 382 * sparc.c: Likewise. 383 * tahoe.c: Likewise. 384 * vax.c: Likewise. 385 * i386.c: Likewise. 386 (i386_iscall): Don't use DEFUN. 387 388 2001-07-19 Nick Clifton <nickc@cambridge.redhat.com> 389 390 * NOTES: Rename to README for consistency with other binutils. 391 392 2001-06-18 H.J. Lu <hjl@gnu.org> 393 394 * Makefile.am (diststuff): Add $(MANS). 395 (gprof.1): Remove the prefix `$(srcdir)/'. 396 * Makefile.in: Regenerated. 397 398 * gprof.1: Removed. 399 400 2001-06-12 Ben Elliston <bje@redhat.com> 401 402 * gprof.texi (File Format): Profile data files are stored in 403 target byte order, not host byte order. 404 405 2001-05-16 Alexandre Oliva <aoliva@redhat.com> 406 5 407 * gmon_io.c (gmon_io_read, gmon_io_write_vma, 6 408 gmon_io_write_32, gmon_io_write_8, gmon_io_write): Adjust 7 409 argument list for K&R C. 8 410 9 2001-03-13 David Mosberger <davidm@hpl.hp.com> 411 2001-04-06 Stephane Carrez <Stephane.Carrez@worldnet.fr> 412 413 * gprof.texi: Put @c man begin and @c man end indications 414 to generate man page using texi2pod and pod2man. Added SEEALSO, 415 SYNOPSIS, BUGS, FILES and DESCRIPTION from original gprof.1 416 enclosed in @ifset man condition. 417 * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable. 418 Generate gprof.1 from gprof.texi. 419 * gprof.1: Generate from gprof.texi. 420 * Makefile.in: Regenerate. 421 422 2001-03-13 David Mosberger <davidm@hpl.hp.com> 423 10 424 * hist.c (hist_dimension): Declare as an array of 16 characters. 11 425 (hist_read_rec): If SAMPLEDEBUG, print each histogram bin count. 426 12 427 * basic_blocks.c: Whitespace and formatting changes. 13 428 * bb_exit_func.c: Ditto. … … 37 452 * utils.c: Ditto. 38 453 * vax.c: Ditto. 454 39 455 * gmon_out.h (gmon_hist_hdr): Delete. 40 456 (gmon_cg_arc_record): Delete. 457 41 458 * gmon_io.c (put_vma): Declare "static". 42 459 (get_vma): Ditto. … … 55 472 * hist.c (hist_read_rec): Ditto. 56 473 (hist_write_hist): Ditto. 474 57 475 From Jes Sorensen <jes@linuxcare.com> 58 476 * gmon_out.h: Use GMON_PTR_SIZE instead of sizeof(char*). … … 65 483 * Makefile.in: Regenerate. 66 484 67 2001-02-27 Alan Modra <alan@linuxcare.com.au> 485 2001-02-27 Alan Modra <alan@linuxcare.com.au> 486 68 487 * configure.in (BFD_VERSION): New. 69 488 (AM_INIT_AUTOMAKE): Use $BFD_VERSION. … … 72 491 * Makefile.am: Run "make dep-am" 73 492 * Makefile.in: Regenerate. 74 75 2001-06-10 Philip Blundell <philb@gnu.org>76 77 * configure.in: Set version to 2.11.1.78 * configure: Regenerate.79 80 2001-06-07 Alan Modra <amodra@bigpond.net.au>81 82 * Many files: Update copyright notices.83 84 2001-03-16 Philip Blundell <philb@gnu.org>85 86 * configure: Regenerate.87 88 2001-03-11 Philip Blundell <philb@gnu.org>89 90 * configure.in: Set version to 2.11.91 493 92 494 2001-01-27 Michael Sokolov <msokolov@ivan.Harhan.ORG> … … 242 644 HAVE_SYSCONF, try setitimer and fall back on sysconf. 243 645 244 Fri Apr 7 15:56:57 2000Andrew Cagney <cagney@b1.cygnus.com>646 2000-04-07 Andrew Cagney <cagney@b1.cygnus.com> 245 647 246 648 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add … … 331 733 * Makefile.in: Rebuild. 332 734 333 Mon Jun 14 10:35:28 1999Andreas Schwab <schwab@issan.cs.uni-dortmund.de>735 1999-06-14 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 334 736 335 737 * gprof.texi: Fix typo. … … 383 785 * gconfig.in: Rebuild. 384 786 385 Sun Dec 6 21:57:50 1998Ian Lance Taylor <ian@cygnus.com>787 1998-12-06 Ian Lance Taylor <ian@cygnus.com> 386 788 387 789 * gprof.texi (Symspecs): Mention that you have to add any 388 790 underscore yourself when naming a symbol. 389 791 390 Mon Nov 2 15:05:33 1998Geoffrey Noer <noer@cygnus.com>792 1998-11-02 Geoffrey Noer <noer@cygnus.com> 391 793 392 794 * configure.in: detect cygwin* instead of cygwin32* … … 1661 2063 * gprof.c: symbol values are now real values, don't add the vma 1662 2064 anymore. (done for solaris; should verify this on other platforms) 1663 * ChangeLog: created. -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/Makefile.am
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 24 24 cg_print.c corefile.c gmon_io.c gprof.c hertz.c hist.c source.c \ 25 25 search_list.c symtab.c sym_ids.c utils.c \ 26 i386.c alpha.c vax.c tahoe.c sparc.c 26 i386.c alpha.c vax.c tahoe.c sparc.c mips.c 27 27 gprof_SOURCES = $(sources) flat_bl.c bsd_callg_bl.c fsf_callg_bl.c 28 28 gprof_DEPENDENCIES = ../bfd/libbfd.la ../libiberty/libiberty.a $(INTLDEPS) … … 34 34 search_list.h source.h sym_ids.h symtab.h utils.h 35 35 36 EXTRA_DIST = flat_bl.c bsd_callg_bl.c fsf_callg_bl.c bbconv.pl37 38 36 BUILT_SOURCES = flat_bl.c bsd_callg_bl.c fsf_callg_bl.c 39 40 diststuff: $(BUILT_SOURCES) info 37 EXTRA_DIST = $(BUILT_SOURCES) bbconv.pl $(man_MANS) 38 39 diststuff: $(BUILT_SOURCES) info $(man_MANS) 41 40 42 41 .m.c: … … 50 49 && mv tmp $(srcdir)/po/POTFILES.in 51 50 51 MANCONF = -Dman 52 53 TEXI2POD = perl $(srcdir)/../etc/texi2pod.pl 54 55 POD2MAN = pod2man --center="GNU" --release="binutils-$(VERSION)" --section=1 56 52 57 info_TEXINFOS = gprof.texi 53 58 man_MANS = gprof.1 59 60 # Build the man page from the texinfo file 61 # The sed command removes the no-adjust Nroff command so that 62 # the man output looks standard. 63 gprof.1: $(srcdir)/gprof.texi 64 touch $@ 65 -$(TEXI2POD) $(MANCONF) -Dgprof < $(srcdir)/gprof.texi > gprof.pod 66 -($(POD2MAN) gprof.pod | \ 67 sed -e '/^.if n .na/d' > $@.T$$$$ && \ 68 mv -f $@.T$$$$ $@) || \ 69 (rm -f $@.T$$$$ && exit 1) 70 rm -f gprof.pod 71 72 Makefile: $(BFDDIR)/configure.in 73 74 # We want install to imply install-info as per GNU standards, despite the 75 # cygnus option. 76 install: install-info 54 77 55 78 # Targets to rebuild dependencies in this Makefile. … … 78 101 -e 's!@BFDDIR@!$(BFDDIR)!' \ 79 102 -e 's!@SRCDIR@!$(srcdir)!' \ 80 -e "s!@OBJDIR@!$${objdir}!" 103 -e "s!@OBJDIR@!$${objdir}!" \ 104 -e 's!@TOPDIR@!'`echo $(srcdir) | sed -e s,/gprof$$,,`'!' 81 105 82 106 dep: DEP … … 101 125 # DO NOT DELETE THIS LINE -- mkdep uses it. 102 126 # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. 103 basic_blocks.o: basic_blocks.c basic_blocks.h gprof.h \ 104 $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 105 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \ 106 $(INCDIR)/bin-bugs.h source.h search_list.h symtab.h \ 107 ../bfd/bfd.h corefile.h gmon_io.h gmon.h gmon_out.h \ 108 $(INCDIR)/libiberty.h sym_ids.h 109 call_graph.o: call_graph.c cg_arcs.h gprof.h $(INCDIR)/ansidecl.h \ 110 $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 111 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 112 symtab.h ../bfd/bfd.h source.h search_list.h call_graph.h \ 113 corefile.h gmon_io.h gmon.h gmon_out.h sym_ids.h 127 basic_blocks.o: basic_blocks.c $(INCDIR)/libiberty.h \ 128 $(INCDIR)/ansidecl.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 129 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h ../bfd/bfd.h \ 130 $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h basic_blocks.h \ 131 corefile.h gmon_io.h gmon_out.h search_list.h source.h \ 132 symtab.h sym_ids.h 133 call_graph.o: call_graph.c gprof.h $(BFDDIR)/sysdep.h \ 134 $(INCDIR)/ansidecl.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 135 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 136 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 137 symtab.h cg_arcs.h call_graph.h corefile.h gmon_io.h \ 138 gmon_out.h sym_ids.h 114 139 cg_arcs.o: cg_arcs.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 115 140 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 116 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 117 call_graph.h symtab.h ../bfd/bfd.h source.h search_list.h \ 118 cg_arcs.h cg_dfn.h cg_print.h utils.h sym_ids.h 141 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 142 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 143 symtab.h call_graph.h cg_arcs.h cg_dfn.h cg_print.h \ 144 utils.h sym_ids.h 119 145 cg_dfn.o: cg_dfn.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 120 146 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 121 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \122 cg_arcs.h symtab.h ../bfd/bfd.h source.h search_list.h \123 cg_dfn.h utils.h147 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 148 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 149 symtab.h cg_arcs.h cg_dfn.h utils.h 124 150 cg_print.o: cg_print.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 125 cg_arcs.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \126 $(INCDIR)/f open-same.h $(INCDIR)/filenames.h gconfig.h \127 $(INCDIR)/bin-bugs.h symtab.h ../bfd/bfd.h source.h \128 s earch_list.h cg_print.h hist.h utils.h151 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 152 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 153 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 154 symtab.h cg_arcs.h cg_print.h hist.h utils.h corefile.h 129 155 corefile.o: corefile.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 130 156 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 131 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 132 corefile.h ../bfd/bfd.h symtab.h source.h search_list.h 133 gmon_io.o: gmon_io.c cg_arcs.h gprof.h $(INCDIR)/ansidecl.h \ 134 $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 135 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 136 symtab.h ../bfd/bfd.h source.h search_list.h basic_blocks.h \ 137 corefile.h call_graph.h gmon_io.h gmon.h gmon_out.h \ 157 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 158 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 159 symtab.h corefile.h 160 gmon_io.o: gmon_io.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 161 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 162 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 163 search_list.h source.h symtab.h cg_arcs.h basic_blocks.h \ 164 corefile.h call_graph.h gmon_io.h gmon_out.h gmon.h \ 138 165 hertz.h hist.h $(INCDIR)/libiberty.h 139 gprof.o: gprof.c $(INCDIR)/ getopt.h $(INCDIR)/libiberty.h \140 $(INCDIR)/ansidecl.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \141 $(INCDIR)/f open-same.h $(INCDIR)/filenames.h gconfig.h \142 $(INCDIR)/bin-bugs.h basic_blocks.h source.h search_list.h \143 symtab.h ../bfd/bfd.h call_graph.h cg_arcs.h cg_print.h \144 corefile.h gmon_io.h gmon.h hertz.h hist.h sym_ids.h \145 $(INCDIR)/demangle.h 146 hertz.o: hertz.c hertz.h gprof.h $(INCDIR)/ansidecl.h \147 $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \148 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h166 gprof.o: gprof.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 167 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 168 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 169 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 170 symtab.h basic_blocks.h call_graph.h cg_arcs.h cg_print.h \ 171 corefile.h gmon_io.h hertz.h hist.h sym_ids.h $(INCDIR)/demangle.h 172 hertz.o: hertz.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 173 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 174 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 175 hertz.h 149 176 hist.o: hist.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 150 177 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 151 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 152 corefile.h ../bfd/bfd.h gmon_io.h gmon.h gmon_out.h \ 153 hist.h symtab.h source.h search_list.h sym_ids.h utils.h 154 source.o: source.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 155 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 156 gconfig.h $(INCDIR)/bin-bugs.h $(INCDIR)/libiberty.h \ 157 search_list.h source.h 178 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 179 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 180 symtab.h corefile.h gmon_io.h gmon_out.h hist.h sym_ids.h \ 181 utils.h 182 source.o: source.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 183 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 184 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 185 $(INCDIR)/libiberty.h search_list.h source.h 158 186 search_list.o: search_list.c $(INCDIR)/libiberty.h \ 159 187 $(INCDIR)/ansidecl.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 160 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \161 $(INCDIR)/ bin-bugs.h search_list.h162 symtab.o: symtab.c gprof.h $( INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \163 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 164 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \165 s ource.h search_list.h corefile.h188 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h ../bfd/bfd.h \ 189 $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h search_list.h 190 symtab.o: symtab.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 191 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 192 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 193 search_list.h source.h symtab.h cg_arcs.h corefile.h 166 194 sym_ids.o: sym_ids.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 167 cg_arcs.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 168 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \ 169 $(INCDIR)/bin-bugs.h symtab.h ../bfd/bfd.h source.h \ 170 search_list.h sym_ids.h 171 utils.o: utils.c gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 172 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \ 173 $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 174 source.h search_list.h 175 i386.o: i386.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 176 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 177 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 178 source.h search_list.h corefile.h hist.h 179 alpha.o: alpha.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 180 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 181 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 182 source.h search_list.h corefile.h hist.h 183 vax.o: vax.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 184 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 185 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 186 source.h search_list.h corefile.h hist.h 187 tahoe.o: tahoe.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 188 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 189 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 190 source.h search_list.h corefile.h hist.h 191 sparc.o: sparc.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 192 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 193 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 194 source.h search_list.h corefile.h hist.h 195 flat_bl.o: flat_bl.c 196 bsd_callg_bl.o: bsd_callg_bl.c 197 fsf_callg_bl.o: fsf_callg_bl.c 195 $(INCDIR)/safe-ctype.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 196 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h ../bfd/bfd.h \ 197 $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h search_list.h \ 198 source.h symtab.h cg_arcs.h sym_ids.h 199 utils.o: utils.c $(INCDIR)/demangle.h $(INCDIR)/ansidecl.h \ 200 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 201 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 202 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 203 symtab.h cg_arcs.h utils.h 204 i386.o: i386.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 205 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 206 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 207 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 208 hist.h 209 alpha.o: alpha.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 210 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 211 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 212 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 213 hist.h 214 vax.o: vax.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 215 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 216 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 217 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 218 hist.h 219 tahoe.o: tahoe.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 220 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 221 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 222 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 223 hist.h 224 sparc.o: sparc.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 225 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 226 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 227 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 228 hist.h 229 mips.o: mips.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 230 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 231 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 232 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 233 hist.h 234 flat_bl.o: flat_bl.c $(INCDIR)/ansidecl.h 235 bsd_callg_bl.o: bsd_callg_bl.c $(INCDIR)/ansidecl.h 236 fsf_callg_bl.o: fsf_callg_bl.c $(INCDIR)/ansidecl.h 198 237 # IF YOU PUT ANYTHING HERE IT WILL GO AWAY -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/Makefile.in
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 # Makefile.in generated automatically by automake 1.4 from Makefile.am2 3 # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.1 # Makefile.in generated automatically by automake 1.4-p5 from Makefile.am 2 3 # Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. 4 4 # This Makefile.in is free software; the Free Software Foundation 5 5 # gives unlimited permission to copy and/or distribute it, … … 124 124 cg_print.c corefile.c gmon_io.c gprof.c hertz.c hist.c source.c \ 125 125 search_list.c symtab.c sym_ids.c utils.c \ 126 i386.c alpha.c vax.c tahoe.c sparc.c 126 i386.c alpha.c vax.c tahoe.c sparc.c mips.c 127 127 128 128 gprof_SOURCES = $(sources) flat_bl.c bsd_callg_bl.c fsf_callg_bl.c … … 136 136 137 137 138 EXTRA_DIST = flat_bl.c bsd_callg_bl.c fsf_callg_bl.c bbconv.pl139 140 138 BUILT_SOURCES = flat_bl.c bsd_callg_bl.c fsf_callg_bl.c 139 EXTRA_DIST = $(BUILT_SOURCES) bbconv.pl $(man_MANS) 141 140 142 141 POTFILES = $(sources) $(noinst_HEADERS) 142 143 MANCONF = -Dman 144 145 TEXI2POD = perl $(srcdir)/../etc/texi2pod.pl 146 147 POD2MAN = pod2man --center="GNU" --release="binutils-$(VERSION)" --section=1 143 148 144 149 info_TEXINFOS = gprof.texi … … 163 168 hist.$(OBJEXT) source.$(OBJEXT) search_list.$(OBJEXT) symtab.$(OBJEXT) \ 164 169 sym_ids.$(OBJEXT) utils.$(OBJEXT) i386.$(OBJEXT) alpha.$(OBJEXT) \ 165 vax.$(OBJEXT) tahoe.$(OBJEXT) sparc.$(OBJEXT) flat_bl.$(OBJEXT) \166 bsd_callg_bl.$(OBJEXT) fsf_callg_bl.$(OBJEXT)170 vax.$(OBJEXT) tahoe.$(OBJEXT) sparc.$(OBJEXT) mips.$(OBJEXT) \ 171 flat_bl.$(OBJEXT) bsd_callg_bl.$(OBJEXT) fsf_callg_bl.$(OBJEXT) 167 172 gprof_LDFLAGS = 168 173 CFLAGS = @CFLAGS@ … … 182 187 HEADERS = $(noinst_HEADERS) 183 188 184 DIST_COMMON = ./stamp-h.in ChangeLog Makefile.am Makefile.in TODO\185 acconfig.hacinclude.m4 aclocal.m4 configure configure.in gconfig.in189 DIST_COMMON = README ./stamp-h.in ChangeLog Makefile.am Makefile.in \ 190 TODO acinclude.m4 aclocal.m4 configure configure.in gconfig.in 186 191 187 192 … … 226 231 $(MAKE) $(srcdir)/stamp-h.in; \ 227 232 else :; fi 228 $(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h233 $(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) 229 234 cd $(top_srcdir) && $(AUTOHEADER) 230 235 @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null … … 385 390 list='$(INFO_DEPS)'; \ 386 391 for file in $$list; do \ 387 test -z "$ ii" \392 test -z "$$ii" \ 388 393 || install-info --info-dir=$(DESTDIR)$(infodir) --remove $$file; \ 389 394 done … … 499 504 rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ 500 505 rev="$$subdir $$rev"; \ 501 test "$$subdir" = "." &&dot_seen=yes; \506 test "$$subdir" != "." || dot_seen=yes; \ 502 507 done; \ 503 508 test "$$dot_seen" = "no" && rev=". $$rev"; \ … … 707 712 708 713 709 diststuff: $(BUILT_SOURCES) info 714 diststuff: $(BUILT_SOURCES) info $(man_MANS) 710 715 711 716 .m.c: … … 716 721 for file in $(POTFILES); do echo $$file; done | sort > tmp \ 717 722 && mv tmp $(srcdir)/po/POTFILES.in 723 724 # Build the man page from the texinfo file 725 # The sed command removes the no-adjust Nroff command so that 726 # the man output looks standard. 727 gprof.1: $(srcdir)/gprof.texi 728 touch $@ 729 -$(TEXI2POD) $(MANCONF) -Dgprof < $(srcdir)/gprof.texi > gprof.pod 730 -($(POD2MAN) gprof.pod | \ 731 sed -e '/^.if n .na/d' > $@.T$$$$ && \ 732 mv -f $@.T$$$$ $@) || \ 733 (rm -f $@.T$$$$ && exit 1) 734 rm -f gprof.pod 735 736 Makefile: $(BFDDIR)/configure.in 737 738 # We want install to imply install-info as per GNU standards, despite the 739 # cygnus option. 740 install: install-info 718 741 719 742 # Targets to rebuild dependencies in this Makefile. … … 742 765 -e 's!@BFDDIR@!$(BFDDIR)!' \ 743 766 -e 's!@SRCDIR@!$(srcdir)!' \ 744 -e "s!@OBJDIR@!$${objdir}!" 767 -e "s!@OBJDIR@!$${objdir}!" \ 768 -e 's!@TOPDIR@!'`echo $(srcdir) | sed -e s,/gprof$$,,`'!' 745 769 746 770 dep: DEP … … 763 787 # DO NOT DELETE THIS LINE -- mkdep uses it. 764 788 # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. 765 basic_blocks.o: basic_blocks.c basic_blocks.h gprof.h \ 766 $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 767 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \ 768 $(INCDIR)/bin-bugs.h source.h search_list.h symtab.h \ 769 ../bfd/bfd.h corefile.h gmon_io.h gmon.h gmon_out.h \ 770 $(INCDIR)/libiberty.h sym_ids.h 771 call_graph.o: call_graph.c cg_arcs.h gprof.h $(INCDIR)/ansidecl.h \ 772 $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 773 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 774 symtab.h ../bfd/bfd.h source.h search_list.h call_graph.h \ 775 corefile.h gmon_io.h gmon.h gmon_out.h sym_ids.h 789 basic_blocks.o: basic_blocks.c $(INCDIR)/libiberty.h \ 790 $(INCDIR)/ansidecl.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 791 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h ../bfd/bfd.h \ 792 $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h basic_blocks.h \ 793 corefile.h gmon_io.h gmon_out.h search_list.h source.h \ 794 symtab.h sym_ids.h 795 call_graph.o: call_graph.c gprof.h $(BFDDIR)/sysdep.h \ 796 $(INCDIR)/ansidecl.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 797 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 798 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 799 symtab.h cg_arcs.h call_graph.h corefile.h gmon_io.h \ 800 gmon_out.h sym_ids.h 776 801 cg_arcs.o: cg_arcs.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 777 802 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 778 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 779 call_graph.h symtab.h ../bfd/bfd.h source.h search_list.h \ 780 cg_arcs.h cg_dfn.h cg_print.h utils.h sym_ids.h 803 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 804 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 805 symtab.h call_graph.h cg_arcs.h cg_dfn.h cg_print.h \ 806 utils.h sym_ids.h 781 807 cg_dfn.o: cg_dfn.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 782 808 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 783 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \784 cg_arcs.h symtab.h ../bfd/bfd.h source.h search_list.h \785 cg_dfn.h utils.h809 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 810 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 811 symtab.h cg_arcs.h cg_dfn.h utils.h 786 812 cg_print.o: cg_print.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 787 cg_arcs.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \788 $(INCDIR)/f open-same.h $(INCDIR)/filenames.h gconfig.h \789 $(INCDIR)/bin-bugs.h symtab.h ../bfd/bfd.h source.h \790 s earch_list.h cg_print.h hist.h utils.h813 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 814 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 815 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 816 symtab.h cg_arcs.h cg_print.h hist.h utils.h corefile.h 791 817 corefile.o: corefile.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 792 818 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 793 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 794 corefile.h ../bfd/bfd.h symtab.h source.h search_list.h 795 gmon_io.o: gmon_io.c cg_arcs.h gprof.h $(INCDIR)/ansidecl.h \ 796 $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 797 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 798 symtab.h ../bfd/bfd.h source.h search_list.h basic_blocks.h \ 799 corefile.h call_graph.h gmon_io.h gmon.h gmon_out.h \ 819 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 820 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 821 symtab.h corefile.h 822 gmon_io.o: gmon_io.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 823 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 824 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 825 search_list.h source.h symtab.h cg_arcs.h basic_blocks.h \ 826 corefile.h call_graph.h gmon_io.h gmon_out.h gmon.h \ 800 827 hertz.h hist.h $(INCDIR)/libiberty.h 801 gprof.o: gprof.c $(INCDIR)/ getopt.h $(INCDIR)/libiberty.h \802 $(INCDIR)/ansidecl.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \803 $(INCDIR)/f open-same.h $(INCDIR)/filenames.h gconfig.h \804 $(INCDIR)/bin-bugs.h basic_blocks.h source.h search_list.h \805 symtab.h ../bfd/bfd.h call_graph.h cg_arcs.h cg_print.h \806 corefile.h gmon_io.h gmon.h hertz.h hist.h sym_ids.h \807 $(INCDIR)/demangle.h 808 hertz.o: hertz.c hertz.h gprof.h $(INCDIR)/ansidecl.h \809 $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \810 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h828 gprof.o: gprof.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 829 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 830 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 831 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 832 symtab.h basic_blocks.h call_graph.h cg_arcs.h cg_print.h \ 833 corefile.h gmon_io.h hertz.h hist.h sym_ids.h $(INCDIR)/demangle.h 834 hertz.o: hertz.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 835 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 836 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 837 hertz.h 811 838 hist.o: hist.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 812 839 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 813 $(INCDIR)/filenames.h gconfig.h $(INCDIR)/bin-bugs.h \ 814 corefile.h ../bfd/bfd.h gmon_io.h gmon.h gmon_out.h \ 815 hist.h symtab.h source.h search_list.h sym_ids.h utils.h 816 source.o: source.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 840 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 841 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 842 symtab.h corefile.h gmon_io.h gmon_out.h hist.h sym_ids.h \ 843 utils.h 844 source.o: source.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 817 845 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 818 gconfig.h $(INCDIR)/bin-bugs.h $(INCDIR)/libiberty.h \819 search_list.h source.h846 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 847 $(INCDIR)/libiberty.h search_list.h source.h 820 848 search_list.o: search_list.c $(INCDIR)/libiberty.h \ 821 849 $(INCDIR)/ansidecl.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 822 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \823 $(INCDIR)/ bin-bugs.h search_list.h824 symtab.o: symtab.c gprof.h $( INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \850 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h ../bfd/bfd.h \ 851 $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h search_list.h 852 symtab.o: symtab.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 825 853 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 826 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \827 s ource.h search_list.h corefile.h854 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 855 search_list.h source.h symtab.h cg_arcs.h corefile.h 828 856 sym_ids.o: sym_ids.c $(INCDIR)/libiberty.h $(INCDIR)/ansidecl.h \ 829 cg_arcs.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 830 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \ 831 $(INCDIR)/bin-bugs.h symtab.h ../bfd/bfd.h source.h \ 832 search_list.h sym_ids.h 833 utils.o: utils.c gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 834 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h gconfig.h \ 835 $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 836 source.h search_list.h 837 i386.o: i386.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 857 $(INCDIR)/safe-ctype.h gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h \ 858 $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h ../bfd/bfd.h \ 859 $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h search_list.h \ 860 source.h symtab.h cg_arcs.h sym_ids.h 861 utils.o: utils.c $(INCDIR)/demangle.h $(INCDIR)/ansidecl.h \ 862 gprof.h $(BFDDIR)/sysdep.h ../bfd/config.h $(INCDIR)/fopen-same.h \ 863 $(INCDIR)/filenames.h ../bfd/bfd.h $(INCDIR)/symcat.h \ 864 gconfig.h $(INCDIR)/bin-bugs.h search_list.h source.h \ 865 symtab.h cg_arcs.h utils.h 866 i386.o: i386.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 838 867 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 839 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 840 source.h search_list.h corefile.h hist.h 841 alpha.o: alpha.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 868 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 869 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 870 hist.h 871 alpha.o: alpha.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 842 872 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 843 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 844 source.h search_list.h corefile.h hist.h 845 vax.o: vax.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 873 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 874 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 875 hist.h 876 vax.o: vax.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 846 877 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 847 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 848 source.h search_list.h corefile.h hist.h 849 tahoe.o: tahoe.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 878 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 879 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 880 hist.h 881 tahoe.o: tahoe.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 850 882 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 851 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 852 source.h search_list.h corefile.h hist.h 853 sparc.o: sparc.c gprof.h $(INCDIR)/ansidecl.h $(BFDDIR)/sysdep.h \ 883 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 884 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 885 hist.h 886 sparc.o: sparc.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 854 887 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 855 gconfig.h $(INCDIR)/bin-bugs.h cg_arcs.h symtab.h ../bfd/bfd.h \ 856 source.h search_list.h corefile.h hist.h 857 flat_bl.o: flat_bl.c 858 bsd_callg_bl.o: bsd_callg_bl.c 859 fsf_callg_bl.o: fsf_callg_bl.c 888 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 889 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 890 hist.h 891 mips.o: mips.c gprof.h $(BFDDIR)/sysdep.h $(INCDIR)/ansidecl.h \ 892 ../bfd/config.h $(INCDIR)/fopen-same.h $(INCDIR)/filenames.h \ 893 ../bfd/bfd.h $(INCDIR)/symcat.h gconfig.h $(INCDIR)/bin-bugs.h \ 894 search_list.h source.h symtab.h cg_arcs.h corefile.h \ 895 hist.h 896 flat_bl.o: flat_bl.c $(INCDIR)/ansidecl.h 897 bsd_callg_bl.o: bsd_callg_bl.c $(INCDIR)/ansidecl.h 898 fsf_callg_bl.o: fsf_callg_bl.c $(INCDIR)/ansidecl.h 860 899 # IF YOU PUT ANYTHING HERE IT WILL GO AWAY 861 900 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/TODO
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 2 - gmon_io.c cannot deal with target architecture that have a pointer size3 that is different from the host architectures pointer size---fix this4 (gmon_out.h, and gmon_io.c)5 2 - add support for prof file format so that prof files can be displayed 6 3 at the line-level (this is useful for the uprofile tool under DEC's -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/aclocal.m4
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 dnl aclocal.m4 generated automatically by aclocal 1.4 1 dnl aclocal.m4 generated automatically by aclocal 1.4-p5 2 2 3 dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.3 dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. 4 4 dnl This file is free software; the Free Software Foundation 5 5 dnl gives unlimited permission to copy and/or distribute it, … … 35 35 dnl AM_INIT_AUTOMAKE(package,version, [no-define]) 36 36 37 AC_DEFUN( AM_INIT_AUTOMAKE,37 AC_DEFUN([AM_INIT_AUTOMAKE], 38 38 [AC_REQUIRE([AC_PROG_INSTALL]) 39 39 PACKAGE=[$1] … … 63 63 # 64 64 65 AC_DEFUN( AM_SANITY_CHECK,65 AC_DEFUN([AM_SANITY_CHECK], 66 66 [AC_MSG_CHECKING([whether build environment is sane]) 67 67 # Just in case … … 104 104 dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) 105 105 dnl The program must properly implement --version. 106 AC_DEFUN( AM_MISSING_PROG,106 AC_DEFUN([AM_MISSING_PROG], 107 107 [AC_MSG_CHECKING(for working $2) 108 108 # Run test in a subshell; some versions of sh will print an error if … … 120 120 # Like AC_CONFIG_HEADER, but automatically create stamp file. 121 121 122 AC_DEFUN( AM_CONFIG_HEADER,122 AC_DEFUN([AM_CONFIG_HEADER], 123 123 [AC_PREREQ([2.12]) 124 124 AC_CONFIG_HEADER([$1]) … … 146 146 # serial 1 147 147 148 AC_DEFUN( AM_MAINTAINER_MODE,148 AC_DEFUN([AM_MAINTAINER_MODE], 149 149 [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) 150 150 dnl maintainer-mode is disabled by default … … 163 163 # Define a conditional. 164 164 165 AC_DEFUN( AM_CONDITIONAL,165 AC_DEFUN([AM_CONDITIONAL], 166 166 [AC_SUBST($1_TRUE) 167 167 AC_SUBST($1_FALSE) -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/alpha.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983, 199 8 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993, 1998 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 29 #include "gprof.h" 30 #include "search_list.h" 31 #include "source.h" 32 #include "symtab.h" 20 33 #include "cg_arcs.h" 21 34 #include "corefile.h" 22 35 #include "hist.h" 23 #include "symtab.h"24 36 25 37 /* … … 34 46 #define Jxx_FUNC_JSR_COROUTINE 3 35 47 48 #if 0 49 /* Here to document only. We can't use this when cross compiling as 50 the bitfield layout might not be the same as native. */ 36 51 typedef union 37 52 { … … 60 75 } 61 76 alpha_Instruction; 77 #endif 62 78 63 79 static Sym indirect_child; 64 80 81 void alpha_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 65 82 66 83 /* … … 77 94 bfd_vma p_highpc; 78 95 { 79 static bfd_vma delta = 0; 80 bfd_vma dest_pc; 81 alpha_Instruction *pc; 96 bfd_vma pc, dest_pc; 97 unsigned int insn; 82 98 Sym *child; 83 99 84 if ( !delta)100 if (indirect_child.name == NULL) 85 101 { 86 delta = (bfd_vma) core_text_space - core_text_sect->vma;87 88 102 sym_init (&indirect_child); 89 103 indirect_child.name = _("<indirect child>"); … … 107 121 parent->name, (unsigned long) p_lowpc, 108 122 (unsigned long) p_highpc)); 109 for (pc = (alpha_Instruction *) (p_lowpc + delta); 110 pc < (alpha_Instruction *) (p_highpc + delta); 111 ++pc) 123 for (pc = (p_lowpc + 3) & ~(bfd_vma) 3; pc < p_highpc; pc += 4) 112 124 { 113 switch (pc->a.op_code) 125 insn = bfd_get_32 (core_bfd, ((unsigned char *) core_text_space 126 + pc - core_text_sect->vma)); 127 switch (insn & (0x3f << 26)) 114 128 { 115 case OP_Jxx :129 case OP_Jxx << 26: 116 130 /* 117 131 * There is no simple and reliable way to determine the … … 122 136 * to see that there are other calls as well. 123 137 */ 124 if ( pc->j.func == Jxx_FUNC_JSR125 || pc->j.func == Jxx_FUNC_JSR_COROUTINE)138 if ((insn & (3 << 14)) == Jxx_FUNC_JSR << 14 139 || (insn & (3 << 14)) == Jxx_FUNC_JSR_COROUTINE << 14) 126 140 { 127 141 DBG (CALLDEBUG, 128 142 printf (_("[find_call] 0x%lx: jsr%s <indirect_child>\n"), 129 (unsigned long) pc - delta, 130 pc->j.func == Jxx_FUNC_JSR ? "" : "_coroutine")); 143 (unsigned long) pc, 144 ((insn & (3 << 14)) == Jxx_FUNC_JSR << 14 145 ? "" : "_coroutine"))); 131 146 arc_add (parent, &indirect_child, (unsigned long) 0); 132 147 } 133 148 break; 134 149 135 case OP_BSR :150 case OP_BSR << 26: 136 151 DBG (CALLDEBUG, 137 printf (_("[find_call] 0x%lx: bsr"), 138 (unsigned long) pc - delta)); 152 printf (_("[find_call] 0x%lx: bsr"), (unsigned long) pc)); 139 153 /* 140 154 * Regular PC relative addressing. Check that this is the 141 155 * address of a function. The linker sometimes redirects 142 156 * the entry point by 8 bytes to skip loading the global 143 * pointer, so we all for either address:157 * pointer, so we allow for either address: 144 158 */ 145 dest_pc = ((bfd_vma) (pc + 1 + pc->b.disp)) - delta; 159 dest_pc = pc + 4 + (((bfd_signed_vma) (insn & 0x1fffff) 160 ^ 0x100000) - 0x100000); 146 161 if (dest_pc >= s_lowpc && dest_pc <= s_highpc) 147 162 { -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/basic_blocks.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 3 3 basic-block related statistics. 4 4 5 Copyright 2000, 2001 Free Software Foundation, Inc.5 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 6 6 7 7 This file is part of GNU Binutils. … … 23 23 24 24 25 #include <stdio.h> 25 #include "libiberty.h" 26 #include "gprof.h" 26 27 #include "basic_blocks.h" 27 28 #include "corefile.h" 28 29 #include "gmon_io.h" 29 30 #include "gmon_out.h" 30 #include "gprof.h" 31 #include "libiberty.h" 31 #include "search_list.h" 32 32 #include "source.h" 33 #include "symtab.h" 33 34 #include "sym_ids.h" 34 #ifdef HAVE_UNISTD_H 35 #include <unistd.h> 36 #endif 35 36 static int cmp_bb PARAMS ((const PTR, const PTR)); 37 static int cmp_ncalls PARAMS ((const PTR, const PTR)); 38 static void fskip_string PARAMS ((FILE *)); 39 static void annotate_with_count PARAMS ((char *, unsigned int, int, PTR)); 37 40 38 41 /* Default option values: */ 39 b oolbb_annotate_all_lines = FALSE;42 bfd_boolean bb_annotate_all_lines = FALSE; 40 43 unsigned long bb_min_calls = 1; 41 44 int bb_table_length = 10; … … 51 54 52 55 static int 53 DEFUN (cmp_bb, (lp, rp), const void *lp AND const void *rp) 56 cmp_bb (lp, rp) 57 const PTR lp; 58 const PTR rp; 54 59 { 55 60 int r; … … 80 85 calls, ties are broken in increasing order of line numbers. */ 81 86 static int 82 DEFUN (cmp_ncalls, (lp, rp), const void *lp AND const void *rp) 87 cmp_ncalls (lp, rp) 88 const PTR lp; 89 const PTR rp; 83 90 { 84 91 const Sym *left = *(const Sym **) lp; … … 100 107 /* Skip over variable length string. */ 101 108 static void 102 DEFUN (fskip_string, (fp), FILE * fp) 109 fskip_string (fp) 110 FILE *fp; 103 111 { 104 112 int ch; … … 115 123 116 124 void 117 DEFUN (bb_read_rec, (ifp, filename), FILE * ifp AND const char *filename) 125 bb_read_rec (ifp, filename) 126 FILE *ifp; 127 const char *filename; 118 128 { 119 129 int nblocks, b; … … 185 195 else 186 196 { 187 static b ooluser_warned = FALSE;197 static bfd_boolean user_warned = FALSE; 188 198 189 199 if (!user_warned) … … 203 213 only. */ 204 214 void 205 DEFUN (bb_write_blocks, (ofp, filename), FILE * ofp AND const char *filename) 206 { 207 int nblocks = 0; 215 bb_write_blocks (ofp, filename) 216 FILE *ofp; 217 const char *filename; 218 { 219 unsigned int nblocks = 0; 208 220 Sym *sym; 209 221 int i; … … 231 243 { 232 244 if (gmon_io_write_vma (ofp, sym->bb_addr[i]) 233 || gmon_io_write_vma (ofp, sym->bb_calls[i]))245 || gmon_io_write_vma (ofp, (bfd_vma) sym->bb_calls[i])) 234 246 { 235 247 perror (filename); … … 246 258 247 259 void 248 DEFUN_VOID (print_exec_counts)260 print_exec_counts () 249 261 { 250 262 Sym **sorted_bbs, *sym; 251 int i, j, len;263 unsigned int i, j, len; 252 264 253 265 if (first_output) … … 313 325 314 326 static void 315 DEFUN (annotate_with_count, (buf, width, line_num, arg), 316 char *buf AND int width AND int line_num AND void *arg) 327 annotate_with_count (buf, width, line_num, arg) 328 char *buf; 329 unsigned int width; 330 int line_num; 331 PTR arg; 317 332 { 318 333 Source_File *sf = arg; 319 334 Sym *b; 320 int i;335 unsigned int i; 321 336 static unsigned long last_count; 322 337 unsigned long last_print = (unsigned long) -1; … … 339 354 unsigned long ncalls; 340 355 int ncalls_set; 341 int len;356 unsigned int len; 342 357 343 358 ++num_executable_lines; … … 415 430 if (! ncalls_set) 416 431 { 417 int c;432 unsigned int c; 418 433 419 434 for (c = 0; c < width; c++) … … 442 457 else 443 458 { 444 int c;459 unsigned int c; 445 460 446 461 strcpy (buf + width - len, tmpbuf); … … 456 471 457 472 void 458 DEFUN_VOID (print_annotated_source)473 print_annotated_source () 459 474 { 460 475 Sym *sym, *line_stats, *new_line; -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/basic_blocks.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* basic_blocks.h 2 Copyright 2000 Free Software Foundation, Inc.2 Copyright 2000, 2002 Free Software Foundation, Inc. 3 3 4 4 This file is part of GNU Binutils. … … 22 22 #define basic_blocks_h 23 23 24 #include <stdio.h>25 #include "gprof.h"26 #include "source.h"27 #include "symtab.h"28 29 24 /* Options: */ 30 extern b ool bb_annotate_all_lines;/* Force annotation of all lines? */25 extern bfd_boolean bb_annotate_all_lines; /* Force annotation of all lines? */ 31 26 extern int bb_table_length; /* Length of most-used bb table. */ 32 27 extern unsigned long bb_min_calls; /* Minimum execution count. */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/bsd_callg_bl.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 3 3 4 4 #include <stdio.h> 5 #include "ansidecl.h" 5 6 7 void bsd_callg_blurb PARAMS ((FILE *)); 6 8 void 7 9 bsd_callg_blurb (file) -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/call_graph.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* call_graph.c - Create call graphs. 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 21 21 22 22 23 #include "gprof.h" 24 #include "search_list.h" 25 #include "source.h" 26 #include "symtab.h" 23 27 #include "cg_arcs.h" 24 28 #include "call_graph.h" … … 26 30 #include "gmon_io.h" 27 31 #include "gmon_out.h" 28 #include "symtab.h"29 32 #include "sym_ids.h" 30 33 31 extern void 32 DEFUN (cg_tally, (from_pc, self_pc, count), 33 bfd_vma from_pc AND bfd_vma self_pc AND unsigned long count) 34 void 35 cg_tally (from_pc, self_pc, count) 36 bfd_vma from_pc; 37 bfd_vma self_pc; 38 unsigned long count; 34 39 { 35 40 Sym *parent; … … 77 82 78 83 void 79 DEFUN (cg_read_rec, (ifp, filename), FILE * ifp AND CONST char *filename) 84 cg_read_rec (ifp, filename) 85 FILE *ifp; 86 const char *filename; 80 87 { 81 88 bfd_vma from_pc, self_pc; … … 104 111 105 112 void 106 DEFUN (cg_write_arcs, (ofp, filename), FILE * ofp AND const char *filename) 113 cg_write_arcs (ofp, filename) 114 FILE *ofp; 115 const char *filename; 107 116 { 108 117 Arc *arc; -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/call_graph.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 23 23 #define call_graph_h 24 24 25 #include <stdio.h>26 #include "gprof.h"27 #include "symtab.h"28 29 25 extern void cg_tally PARAMS ((bfd_vma, bfd_vma, unsigned long)); 30 26 extern void cg_read_rec PARAMS ((FILE *, const char *)); -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/cg_arcs.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983, 2001 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993, 2001 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 29 #include "libiberty.h" 20 30 #include "gprof.h" 31 #include "search_list.h" 32 #include "source.h" 33 #include "symtab.h" 21 34 #include "call_graph.h" 22 35 #include "cg_arcs.h" … … 26 39 #include "sym_ids.h" 27 40 41 static int cmp_topo PARAMS ((const PTR, const PTR)); 42 static void propagate_time PARAMS ((Sym *)); 43 static void cycle_time PARAMS ((void)); 44 static void cycle_link PARAMS ((void)); 45 static void inherit_flags PARAMS ((Sym *)); 46 static void propagate_flags PARAMS ((Sym **)); 47 static int cmp_total PARAMS ((const PTR, const PTR)); 48 28 49 Sym *cycle_header; 29 50 unsigned int num_cycles; … … 36 57 */ 37 58 Arc * 38 DEFUN (arc_lookup, (parent, child), Sym * parent AND Sym * child) 59 arc_lookup (parent, child) 60 Sym *parent; 61 Sym *child; 39 62 { 40 63 Arc *arc; … … 65 88 */ 66 89 void 67 DEFUN (arc_add, (parent, child, count), 68 Sym * parent AND Sym * child AND unsigned long count) 90 arc_add (parent, child, count) 91 Sym *parent; 92 Sym *child; 93 unsigned long count; 69 94 { 70 95 static unsigned int maxarcs = 0; … … 132 157 133 158 static int 134 DEFUN (cmp_topo, (lp, rp), const PTR lp AND const PTR rp) 159 cmp_topo (lp, rp) 160 const PTR lp; 161 const PTR rp; 135 162 { 136 163 const Sym *left = *(const Sym **) lp; … … 142 169 143 170 static void 144 DEFUN (propagate_time, (parent), Sym * parent) 171 propagate_time (parent) 172 Sym *parent; 145 173 { 146 174 Arc *arc; … … 226 254 */ 227 255 static void 228 DEFUN_VOID (cycle_time)256 cycle_time () 229 257 { 230 258 Sym *member, *cyc; … … 250 278 251 279 static void 252 DEFUN_VOID (cycle_link)280 cycle_link () 253 281 { 254 282 Sym *sym, *cyc, *member; … … 338 366 */ 339 367 static void 340 DEFUN (inherit_flags, (child), Sym * child) 368 inherit_flags (child) 369 Sym *child; 341 370 { 342 371 Sym *head, *parent, *member; … … 416 445 */ 417 446 static void 418 DEFUN (propagate_flags, (symbols), Sym ** symbols) 447 propagate_flags (symbols) 448 Sym **symbols; 419 449 { 420 450 int index; … … 516 546 */ 517 547 static int 518 DEFUN (cmp_total, (lp, rp), const PTR lp AND const PTR rp) 548 cmp_total (lp, rp) 549 const PTR lp; 550 const PTR rp; 519 551 { 520 552 const Sym *left = *(const Sym **) lp; … … 573 605 */ 574 606 Sym ** 575 DEFUN_VOID (cg_assemble)607 cg_assemble () 576 608 { 577 609 Sym *parent, **time_sorted_syms, **top_sorted_syms; -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/cg_arcs.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 #ifndef cg_arcs_h 2 2 #define cg_arcs_h 3 4 #include "gprof.h"5 #include "symtab.h"6 3 7 4 /* -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/cg_dfn.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 18 */ 19 #include <stdio.h> 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 */ 20 29 #include "libiberty.h" 21 30 #include "gprof.h" 31 #include "search_list.h" 32 #include "source.h" 33 #include "symtab.h" 22 34 #include "cg_arcs.h" 23 35 #include "cg_dfn.h" 24 #include "symtab.h"25 36 #include "utils.h" 26 37 … … 34 45 DFN_Stack; 35 46 47 static bfd_boolean is_numbered PARAMS ((Sym *)); 48 static bfd_boolean is_busy PARAMS ((Sym *)); 49 static void find_cycle PARAMS ((Sym *)); 50 static void pre_visit PARAMS ((Sym *)); 51 static void post_visit PARAMS ((Sym *)); 52 36 53 DFN_Stack *dfn_stack = NULL; 37 54 int dfn_maxdepth = 0; … … 43 60 * Is CHILD already numbered? 44 61 */ 45 static bool 46 DEFUN (is_numbered, (child), Sym * child) 62 static bfd_boolean 63 is_numbered (child) 64 Sym *child; 47 65 { 48 66 return child->cg.top_order != DFN_NAN && child->cg.top_order != DFN_BUSY; … … 53 71 * Is CHILD already busy? 54 72 */ 55 static bool 56 DEFUN (is_busy, (child), Sym * child) 73 static bfd_boolean 74 is_busy (child) 75 Sym *child; 57 76 { 58 77 if (child->cg.top_order == DFN_NAN) … … 71 90 */ 72 91 static void 73 DEFUN (find_cycle, (child), Sym * child) 92 find_cycle (child) 93 Sym *child; 74 94 { 75 95 Sym *head = 0; … … 194 214 */ 195 215 static void 196 DEFUN (pre_visit, (parent), Sym * parent) 216 pre_visit (parent) 217 Sym *parent; 197 218 { 198 219 ++dfn_depth; … … 218 239 */ 219 240 static void 220 DEFUN (post_visit, (parent), Sym * parent) 241 post_visit (parent) 242 Sym *parent; 221 243 { 222 244 Sym *member; … … 252 274 */ 253 275 void 254 DEFUN (cg_dfn, (parent), Sym * parent) 276 cg_dfn (parent) 277 Sym *parent; 255 278 { 256 279 Arc *arc; -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/cg_print.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* cg_print.c - Print routines for displaying call graphs. 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 22 22 23 23 #include "libiberty.h" 24 #include "gprof.h" 25 #include "search_list.h" 26 #include "source.h" 27 #include "symtab.h" 24 28 #include "cg_arcs.h" 25 29 #include "cg_print.h" 26 30 #include "hist.h" 27 31 #include "utils.h" 32 #include "corefile.h" 28 33 29 34 /* Return value of comparison functions used to sort tables. */ … … 32 37 #define GREATERTHAN 1 33 38 34 static void order_and_dump_functions_by_arcs PARAMS ((Arc **, unsigned long, 35 int, Arc **, 36 unsigned long *)); 39 static void print_header PARAMS ((void)); 40 static void print_cycle PARAMS ((Sym *)); 41 static int cmp_member PARAMS ((Sym *, Sym *)); 42 static void sort_members PARAMS ((Sym *)); 43 static void print_members PARAMS ((Sym *)); 44 static int cmp_arc PARAMS ((Arc *, Arc *)); 45 static void sort_parents PARAMS ((Sym *)); 46 static void print_parents PARAMS ((Sym *)); 47 static void sort_children PARAMS ((Sym *)); 48 static void print_children PARAMS ((Sym *)); 49 static void print_line PARAMS ((Sym *)); 50 static int cmp_name PARAMS ((const PTR, const PTR)); 51 static int cmp_arc_count PARAMS ((const PTR, const PTR)); 52 static int cmp_fun_nuses PARAMS ((const PTR, const PTR)); 53 static void order_and_dump_functions_by_arcs 54 PARAMS ((Arc **, unsigned long, int, Arc **, unsigned long *)); 55 37 56 /* Declarations of automatically generated functions to output blurbs. */ 38 57 extern void bsd_callg_blurb PARAMS ((FILE * fp)); … … 43 62 44 63 static void 45 DEFUN_VOID (print_header)64 print_header () 46 65 { 47 66 if (first_output) … … 77 96 "", "", "", "", _("called"), _("total"), _("parents")); 78 97 printf ("%-6.6s %5.5s %7.7s %11.11s %7.7s+%-7.7s %-8.8s\t%5.5s\n", 79 _("index"), _("%time"), _("self"), _("descend ents"),98 _("index"), _("%time"), _("self"), _("descendants"), 80 99 _("called"), _("self"), _("name"), _("index")); 81 100 printf ("%6.6s %5.5s %7.7s %11.11s %7.7s/%-7.7s %-8.8s\n", … … 92 111 93 112 static void 94 DEFUN (print_cycle, (cyc), Sym * cyc) 113 print_cycle (cyc) 114 Sym *cyc; 95 115 { 96 116 char buf[BUFSIZ]; … … 115 135 116 136 static int 117 DEFUN (cmp_member, (left, right), Sym * left AND Sym * right) 137 cmp_member (left, right) 138 Sym *left; 139 Sym *right; 118 140 { 119 141 double left_time = left->cg.prop.self + left->cg.prop.child; … … 140 162 141 163 static void 142 DEFUN (sort_members, (cyc), Sym * cyc) 164 sort_members (cyc) 165 Sym *cyc; 143 166 { 144 167 Sym *todo, *doing, *prev; … … 167 190 168 191 static void 169 DEFUN (print_members, (cyc), Sym * cyc) 192 print_members (cyc) 193 Sym *cyc; 170 194 { 171 195 Sym *member; … … 201 225 202 226 static int 203 DEFUN (cmp_arc, (left, right), Arc * left AND Arc * right) 227 cmp_arc (left, right) 228 Arc *left; 229 Arc *right; 204 230 { 205 231 Sym *left_parent = left->parent; … … 287 313 288 314 static void 289 DEFUN (sort_parents, (child), Sym * child) 315 sort_parents (child) 316 Sym * child; 290 317 { 291 318 Arc *arc, *detached, sorted, *prev; … … 320 347 321 348 static void 322 DEFUN (print_parents, (child), Sym * child) 349 print_parents (child) 350 Sym *child; 323 351 { 324 352 Sym *parent; … … 374 402 375 403 static void 376 DEFUN (sort_children, (parent), Sym * parent) 404 sort_children (parent) 405 Sym *parent; 377 406 { 378 407 Arc *arc, *detached, sorted, *prev; … … 407 436 408 437 static void 409 DEFUN (print_children, (parent), Sym * parent) 438 print_children (parent) 439 Sym *parent; 410 440 { 411 441 Sym *child; … … 446 476 447 477 static void 448 DEFUN (print_line, (np), Sym * np) 478 print_line (np) 479 Sym *np; 449 480 { 450 481 char buf[BUFSIZ]; … … 479 510 480 511 void 481 DEFUN (cg_print, (timesortsym), Sym ** timesortsym) 512 cg_print (timesortsym) 513 Sym ** timesortsym; 482 514 { 483 515 unsigned int index; … … 530 562 531 563 static int 532 DEFUN (cmp_name, (left, right), const PTR left AND const PTR right) 564 cmp_name (left, right) 565 const PTR left; 566 const PTR right; 533 567 { 534 568 const Sym **npp1 = (const Sym **) left; … … 540 574 541 575 void 542 DEFUN_VOID (cg_print_index)576 cg_print_index () 543 577 { 544 578 unsigned int index; … … 654 688 655 689 static int 656 DEFUN (cmp_arc_count, (left, right), const PTR left AND const PTR right) 690 cmp_arc_count (left, right) 691 const PTR left; 692 const PTR right; 657 693 { 658 694 const Arc **npp1 = (const Arc **) left; … … 671 707 672 708 static int 673 DEFUN (cmp_fun_nuses, (left, right), const PTR left AND const PTR right) 709 cmp_fun_nuses (left, right) 710 const PTR left; 711 const PTR right; 674 712 { 675 713 const Sym **npp1 = (const Sym **) left; … … 753 791 754 792 void 755 DEFUN_VOID (cg_print_function_ordering)793 cg_print_function_ordering () 756 794 { 757 795 unsigned long index, used, unused, scratch_index; … … 958 996 } 959 997 960 /* Place functions based on the arcs in ARCS with NUMARCSentries;998 /* Place functions based on the arcs in THE_ARCS with ARC_COUNT entries; 961 999 place unused arcs into UNPLACED_ARCS/UNPLACED_ARC_COUNT. 962 1000 963 If ALL is nonzero, then place all functions referenced by ARCS,964 else only place those referenced in the top 99% of the arcs in ARCS. */1001 If ALL is nonzero, then place all functions referenced by THE_ARCS, 1002 else only place those referenced in the top 99% of the arcs in THE_ARCS. */ 965 1003 966 1004 #define MOST 0.99 967 1005 static void 968 order_and_dump_functions_by_arcs ( arcs, numarcs, all,1006 order_and_dump_functions_by_arcs (the_arcs, arc_count, all, 969 1007 unplaced_arcs, unplaced_arc_count) 970 Arc ** arcs;971 unsigned long numarcs;1008 Arc **the_arcs; 1009 unsigned long arc_count; 972 1010 int all; 973 1011 Arc **unplaced_arcs; … … 987 1025 { 988 1026 total_arcs = 0; 989 for (index = 0; index < numarcs; index++)990 total_arcs += arcs[index]->count;1027 for (index = 0; index < arc_count; index++) 1028 total_arcs += the_arcs[index]->count; 991 1029 } 992 1030 else … … 995 1033 tmp_arcs = 0; 996 1034 997 for (index = 0; index < numarcs; index++)1035 for (index = 0; index < arc_count; index++) 998 1036 { 999 1037 Sym *sym1, *sym2; 1000 1038 Sym *child, *parent; 1001 1039 1002 tmp_arcs += arcs[index]->count;1040 tmp_arcs += the_arcs[index]->count; 1003 1041 1004 1042 /* Ignore this arc if it's already been placed. */ 1005 if ( arcs[index]->has_been_placed)1043 if (the_arcs[index]->has_been_placed) 1006 1044 continue; 1007 1045 1008 child = arcs[index]->child;1009 parent = arcs[index]->parent;1046 child = the_arcs[index]->child; 1047 parent = the_arcs[index]->parent; 1010 1048 1011 1049 /* If we're not using all arcs, and this is a rarely used … … 1015 1053 || child->has_been_placed || parent->has_been_placed) 1016 1054 { 1017 unplaced_arcs[(*unplaced_arc_count)++] = arcs[index];1055 unplaced_arcs[(*unplaced_arc_count)++] = the_arcs[index]; 1018 1056 continue; 1019 1057 } … … 1025 1063 if (parent->next && parent->prev && child->next && child->prev) 1026 1064 { 1027 unplaced_arcs[(*unplaced_arc_count)++] = arcs[index];1065 unplaced_arcs[(*unplaced_arc_count)++] = the_arcs[index]; 1028 1066 continue; 1029 1067 } … … 1080 1118 /* Couldn't find anywhere to attach the functions, 1081 1119 put the arc on the unplaced arc list. */ 1082 unplaced_arcs[(*unplaced_arc_count)++] = arcs[index];1120 unplaced_arcs[(*unplaced_arc_count)++] = the_arcs[index]; 1083 1121 continue; 1084 1122 } … … 1105 1143 { 1106 1144 /* This would tie two ends together. */ 1107 unplaced_arcs[(*unplaced_arc_count)++] = arcs[index];1145 unplaced_arcs[(*unplaced_arc_count)++] = the_arcs[index]; 1108 1146 continue; 1109 1147 } … … 1117 1155 parent->prev = child; 1118 1156 child->next = parent; 1119 arcs[index]->has_been_placed = 1;1157 the_arcs[index]->has_been_placed = 1; 1120 1158 } 1121 1159 } … … 1128 1166 parent->next = child; 1129 1167 child->prev = parent; 1130 arcs[index]->has_been_placed = 1;1168 the_arcs[index]->has_been_placed = 1; 1131 1169 } 1132 1170 } … … 1140 1178 parent->prev = child; 1141 1179 child->next = parent; 1142 arcs[index]->has_been_placed = 1;1180 the_arcs[index]->has_been_placed = 1; 1143 1181 } 1144 1182 else … … 1147 1185 parent->next = child; 1148 1186 child->prev = parent; 1149 arcs[index]->has_been_placed = 1;1187 the_arcs[index]->has_been_placed = 1; 1150 1188 } 1151 1189 } … … 1153 1191 1154 1192 /* Dump the chains of functions we've made. */ 1155 for (index = 0; index < numarcs; index++)1193 for (index = 0; index < arc_count; index++) 1156 1194 { 1157 1195 Sym *sym; 1158 if ( arcs[index]->parent->has_been_placed1159 || arcs[index]->child->has_been_placed)1196 if (the_arcs[index]->parent->has_been_placed 1197 || the_arcs[index]->child->has_been_placed) 1160 1198 continue; 1161 1199 1162 sym = arcs[index]->parent;1200 sym = the_arcs[index]->parent; 1163 1201 1164 1202 /* If this symbol isn't attached to any other … … 1186 1224 those which weren't placed by the main algorithm. */ 1187 1225 if (all) 1188 for (index = 0; index < numarcs; index++)1226 for (index = 0; index < arc_count; index++) 1189 1227 { 1190 1228 Sym *sym; 1191 if ( arcs[index]->parent->has_been_placed1192 || arcs[index]->child->has_been_placed)1229 if (the_arcs[index]->parent->has_been_placed 1230 || the_arcs[index]->child->has_been_placed) 1193 1231 continue; 1194 1232 1195 sym = arcs[index]->parent;1233 sym = the_arcs[index]->parent; 1196 1234 1197 1235 sym->has_been_placed = 1; … … 1204 1242 code for the bulk of its work. */ 1205 1243 1206 struct function_map1207 {1208 char *function_name;1209 char *file_name;1210 };1211 1212 1244 void 1213 DEFUN_VOID (cg_print_file_ordering)1245 cg_print_file_ordering () 1214 1246 { 1215 1247 unsigned long scratch_arc_count, index; 1216 1248 Arc **scratch_arcs; 1217 extern struct function_map *symbol_map;1218 extern unsigned int symbol_map_count;1219 1249 char *last; 1220 1250 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/cg_print.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 23 23 #define cg_print_h 24 24 25 #include "gprof.h"26 #include "symtab.h"27 28 25 extern double print_time; /* Total of time being printed. */ 29 26 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/configure
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 50 50 silent= 51 51 site= 52 sitefile=53 52 srcdir= 54 53 target=NONE … … 165 164 --no-create do not create output files 166 165 --quiet, --silent do not print \`checking...' messages 167 --site-file=FILE use FILE as the site file168 166 --version print the version of autoconf that created configure 169 167 Directory and file names: … … 336 334 site="$ac_optarg" ;; 337 335 338 -site-file | --site-file | --site-fil | --site-fi | --site-f)339 ac_prev=sitefile ;;340 -site-file=* | --site-file=* | --site-fil=* | --site-fi=* | --site-f=*)341 sitefile="$ac_optarg" ;;342 343 336 -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) 344 337 ac_prev=srcdir ;; … … 506 499 507 500 # Prefer explicitly selected file to automatically selected ones. 508 if test -z "$sitefile"; then 509 if test -z "$CONFIG_SITE"; then 510 if test "x$prefix" != xNONE; then 511 CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" 512 else 513 CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" 514 fi 501 if test -z "$CONFIG_SITE"; then 502 if test "x$prefix" != xNONE; then 503 CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" 504 else 505 CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" 515 506 fi 516 else517 CONFIG_SITE="$sitefile"518 507 fi 519 508 for ac_site_file in $CONFIG_SITE; do … … 554 543 555 544 echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 556 echo "configure:5 57: checking for Cygwin environment" >&5545 echo "configure:546: checking for Cygwin environment" >&5 557 546 if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then 558 547 echo $ac_n "(cached) $ac_c" 1>&6 559 548 else 560 549 cat > conftest.$ac_ext <<EOF 561 #line 5 62"configure"550 #line 551 "configure" 562 551 #include "confdefs.h" 563 552 … … 570 559 ; return 0; } 571 560 EOF 572 if { (eval echo configure:5 73: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then561 if { (eval echo configure:562: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then 573 562 rm -rf conftest* 574 563 ac_cv_cygwin=yes … … 587 576 test "$ac_cv_cygwin" = yes && CYGWIN=yes 588 577 echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 589 echo "configure:5 90: checking for mingw32 environment" >&5578 echo "configure:579: checking for mingw32 environment" >&5 590 579 if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then 591 580 echo $ac_n "(cached) $ac_c" 1>&6 592 581 else 593 582 cat > conftest.$ac_ext <<EOF 594 #line 5 95"configure"583 #line 584 "configure" 595 584 #include "confdefs.h" 596 585 … … 599 588 ; return 0; } 600 589 EOF 601 if { (eval echo configure: 602: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then590 if { (eval echo configure:591: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then 602 591 rm -rf conftest* 603 592 ac_cv_mingw32=yes … … 664 653 665 654 echo $ac_n "checking host system type""... $ac_c" 1>&6 666 echo "configure:6 67: checking host system type" >&5655 echo "configure:656: checking host system type" >&5 667 656 668 657 host_alias=$host … … 685 674 686 675 echo $ac_n "checking target system type""... $ac_c" 1>&6 687 echo "configure:6 88: checking target system type" >&5676 echo "configure:677: checking target system type" >&5 688 677 689 678 target_alias=$target … … 703 692 704 693 echo $ac_n "checking build system type""... $ac_c" 1>&6 705 echo "configure: 706: checking build system type" >&5694 echo "configure:695: checking build system type" >&5 706 695 707 696 build_alias=$build … … 728 717 set dummy gcc; ac_word=$2 729 718 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 730 echo "configure:7 31: checking for $ac_word" >&5719 echo "configure:720: checking for $ac_word" >&5 731 720 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then 732 721 echo $ac_n "(cached) $ac_c" 1>&6 … … 758 747 set dummy cc; ac_word=$2 759 748 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 760 echo "configure:7 61: checking for $ac_word" >&5749 echo "configure:750: checking for $ac_word" >&5 761 750 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then 762 751 echo $ac_n "(cached) $ac_c" 1>&6 … … 809 798 set dummy cl; ac_word=$2 810 799 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 811 echo "configure:8 12: checking for $ac_word" >&5800 echo "configure:801: checking for $ac_word" >&5 812 801 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then 813 802 echo $ac_n "(cached) $ac_c" 1>&6 … … 841 830 842 831 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 843 echo "configure:8 44: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5832 echo "configure:833: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 844 833 845 834 ac_ext=c … … 852 841 cat > conftest.$ac_ext << EOF 853 842 854 #line 8 55"configure"843 #line 844 "configure" 855 844 #include "confdefs.h" 856 845 857 846 main(){return(0);} 858 847 EOF 859 if { (eval echo configure:8 60: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then848 if { (eval echo configure:849: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 860 849 ac_cv_prog_cc_works=yes 861 850 # If we can't run a trivial program, we are probably using a cross compiler. … … 883 872 fi 884 873 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 885 echo "configure:8 86: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5874 echo "configure:875: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 886 875 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 887 876 cross_compiling=$ac_cv_prog_cc_cross 888 877 889 878 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 890 echo "configure:8 91: checking whether we are using GNU C" >&5879 echo "configure:880: checking whether we are using GNU C" >&5 891 880 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then 892 881 echo $ac_n "(cached) $ac_c" 1>&6 … … 897 886 #endif 898 887 EOF 899 if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure: 900: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then888 if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:889: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then 900 889 ac_cv_prog_gcc=yes 901 890 else … … 916 905 CFLAGS= 917 906 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 918 echo "configure:9 19: checking whether ${CC-cc} accepts -g" >&5907 echo "configure:908: checking whether ${CC-cc} accepts -g" >&5 919 908 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then 920 909 echo $ac_n "(cached) $ac_c" 1>&6 … … 948 937 949 938 echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6 950 echo "configure:9 51: checking for POSIXized ISC" >&5939 echo "configure:940: checking for POSIXized ISC" >&5 951 940 if test -d /etc/conf/kconfig.d && 952 941 grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1 … … 982 971 # ./install, which can be erroneously created by make from ./install.sh. 983 972 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 984 echo "configure:9 85: checking for a BSD compatible install" >&5973 echo "configure:974: checking for a BSD compatible install" >&5 985 974 if test -z "$INSTALL"; then 986 975 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then … … 1035 1024 1036 1025 echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 1037 echo "configure:10 38: checking whether build environment is sane" >&51026 echo "configure:1027: checking whether build environment is sane" >&5 1038 1027 # Just in case 1039 1028 sleep 1 … … 1092 1081 1093 1082 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 1094 echo "configure:10 95: checking whether ${MAKE-make} sets \${MAKE}" >&51083 echo "configure:1084: checking whether ${MAKE-make} sets \${MAKE}" >&5 1095 1084 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` 1096 1085 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then … … 1138 1127 missing_dir=`cd $ac_aux_dir && pwd` 1139 1128 echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 1140 echo "configure:11 41: checking for working aclocal" >&51129 echo "configure:1130: checking for working aclocal" >&5 1141 1130 # Run test in a subshell; some versions of sh will print an error if 1142 1131 # an executable is not found, even if stderr is redirected. … … 1151 1140 1152 1141 echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 1153 echo "configure:11 54: checking for working autoconf" >&51142 echo "configure:1143: checking for working autoconf" >&5 1154 1143 # Run test in a subshell; some versions of sh will print an error if 1155 1144 # an executable is not found, even if stderr is redirected. … … 1164 1153 1165 1154 echo $ac_n "checking for working automake""... $ac_c" 1>&6 1166 echo "configure:11 67: checking for working automake" >&51155 echo "configure:1156: checking for working automake" >&5 1167 1156 # Run test in a subshell; some versions of sh will print an error if 1168 1157 # an executable is not found, even if stderr is redirected. … … 1177 1166 1178 1167 echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 1179 echo "configure:11 80: checking for working autoheader" >&51168 echo "configure:1169: checking for working autoheader" >&5 1180 1169 # Run test in a subshell; some versions of sh will print an error if 1181 1170 # an executable is not found, even if stderr is redirected. … … 1190 1179 1191 1180 echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 1192 echo "configure:11 93: checking for working makeinfo" >&51181 echo "configure:1182: checking for working makeinfo" >&5 1193 1182 # Run test in a subshell; some versions of sh will print an error if 1194 1183 # an executable is not found, even if stderr is redirected. … … 1208 1197 enableval="$enable_shared" 1209 1198 p=${PACKAGE-default} 1210 case "$enableval"in1199 case $enableval in 1211 1200 yes) enable_shared=yes ;; 1212 1201 no) enable_shared=no ;; … … 1231 1220 enableval="$enable_static" 1232 1221 p=${PACKAGE-default} 1233 case "$enableval"in1222 case $enableval in 1234 1223 yes) enable_static=yes ;; 1235 1224 no) enable_static=no ;; … … 1254 1243 enableval="$enable_fast_install" 1255 1244 p=${PACKAGE-default} 1256 case "$enableval"in1245 case $enableval in 1257 1246 yes) enable_fast_install=yes ;; 1258 1247 no) enable_fast_install=no ;; … … 1282 1271 1283 1272 ac_prog=ld 1284 if test "$ ac_cv_prog_gcc" = yes; then1273 if test "$GCC" = yes; then 1285 1274 # Check if gcc -print-prog-name=ld gives a path. 1286 1275 echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 1287 echo "configure:12 88: checking for ld used by GCC" >&51276 echo "configure:1277: checking for ld used by GCC" >&5 1288 1277 case $host in 1289 1278 *-*-mingw*) … … 1293 1282 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; 1294 1283 esac 1295 case "$ac_prog"in1284 case $ac_prog in 1296 1285 # Accept absolute paths. 1297 1286 [\\/]* | [A-Za-z]:[\\/]*) … … 1315 1304 elif test "$with_gnu_ld" = yes; then 1316 1305 echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 1317 echo "configure:13 18: checking for GNU ld" >&51306 echo "configure:1307: checking for GNU ld" >&5 1318 1307 else 1319 1308 echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 1320 echo "configure:13 21: checking for non-GNU ld" >&51321 fi 1322 if eval "test \"`echo '$''{' ac_cv_path_LD'+set}'`\" = set"; then1309 echo "configure:1310: checking for non-GNU ld" >&5 1310 fi 1311 if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then 1323 1312 echo $ac_n "(cached) $ac_c" 1>&6 1324 1313 else … … 1328 1317 test -z "$ac_dir" && ac_dir=. 1329 1318 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then 1330 ac_cv_path_LD="$ac_dir/$ac_prog"1319 lt_cv_path_LD="$ac_dir/$ac_prog" 1331 1320 # Check to see if the program is GNU ld. I'd rather use --version, 1332 1321 # but apparently some GNU ld's only accept -v. 1333 1322 # Break only if it was the GNU/non-GNU ld that we prefer. 1334 if "$ ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then1323 if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then 1335 1324 test "$with_gnu_ld" != no && break 1336 1325 else … … 1341 1330 IFS="$ac_save_ifs" 1342 1331 else 1343 ac_cv_path_LD="$LD" # Let the user override the test with a path.1344 fi 1345 fi 1346 1347 LD="$ ac_cv_path_LD"1332 lt_cv_path_LD="$LD" # Let the user override the test with a path. 1333 fi 1334 fi 1335 1336 LD="$lt_cv_path_LD" 1348 1337 if test -n "$LD"; then 1349 1338 echo "$ac_t""$LD" 1>&6 … … 1353 1342 test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } 1354 1343 echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 1355 echo "configure:13 56: checking if the linker ($LD) is GNU ld" >&51356 if eval "test \"`echo '$''{' ac_cv_prog_gnu_ld'+set}'`\" = set"; then1344 echo "configure:1345: checking if the linker ($LD) is GNU ld" >&5 1345 if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then 1357 1346 echo $ac_n "(cached) $ac_c" 1>&6 1358 1347 else 1359 1348 # I'd rather use --version here, but apparently some GNU ld's only accept -v. 1360 1349 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then 1361 ac_cv_prog_gnu_ld=yes1362 else 1363 ac_cv_prog_gnu_ld=no1364 fi 1365 fi 1366 1367 echo "$ac_t""$ ac_cv_prog_gnu_ld" 1>&61368 with_gnu_ld=$ ac_cv_prog_gnu_ld1350 lt_cv_prog_gnu_ld=yes 1351 else 1352 lt_cv_prog_gnu_ld=no 1353 fi 1354 fi 1355 1356 echo "$ac_t""$lt_cv_prog_gnu_ld" 1>&6 1357 with_gnu_ld=$lt_cv_prog_gnu_ld 1369 1358 1370 1359 1371 1360 echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6 1372 echo "configure:13 73: checking for $LD option to reload object files" >&51361 echo "configure:1362: checking for $LD option to reload object files" >&5 1373 1362 if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then 1374 1363 echo $ac_n "(cached) $ac_c" 1>&6 … … 1382 1371 1383 1372 echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 1384 echo "configure:13 85: checking for BSD-compatible nm" >&51385 if eval "test \"`echo '$''{' ac_cv_path_NM'+set}'`\" = set"; then1373 echo "configure:1374: checking for BSD-compatible nm" >&5 1374 if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then 1386 1375 echo $ac_n "(cached) $ac_c" 1>&6 1387 1376 else 1388 1377 if test -n "$NM"; then 1389 1378 # Let the user override the test. 1390 ac_cv_path_NM="$NM"1379 lt_cv_path_NM="$NM" 1391 1380 else 1392 1381 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" … … 1400 1389 # Tru64's nm complains that /dev/null is an invalid object file 1401 1390 if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then 1402 ac_cv_path_NM="$tmp_nm -B"1391 lt_cv_path_NM="$tmp_nm -B" 1403 1392 break 1404 1393 elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then 1405 ac_cv_path_NM="$tmp_nm -p"1394 lt_cv_path_NM="$tmp_nm -p" 1406 1395 break 1407 1396 else 1408 ac_cv_path_NM=${ac_cv_path_NM="$tmp_nm"} # keep the first match, but1397 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but 1409 1398 continue # so that we can try to find one that supports BSD flags 1410 1399 fi … … 1412 1401 done 1413 1402 IFS="$ac_save_ifs" 1414 test -z "$ ac_cv_path_NM" && ac_cv_path_NM=nm1415 fi 1416 fi 1417 1418 NM="$ ac_cv_path_NM"1403 test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm 1404 fi 1405 fi 1406 1407 NM="$lt_cv_path_NM" 1419 1408 echo "$ac_t""$NM" 1>&6 1420 1409 1421 1410 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 1422 echo "configure:14 23: checking whether ln -s works" >&51411 echo "configure:1412: checking whether ln -s works" >&5 1423 1412 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then 1424 1413 echo $ac_n "(cached) $ac_c" 1>&6 … … 1441 1430 1442 1431 echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6 1443 echo "configure:14 44: checking how to recognise dependant libraries" >&51432 echo "configure:1433: checking how to recognise dependant libraries" >&5 1444 1433 if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then 1445 1434 echo $ac_n "(cached) $ac_c" 1>&6 … … 1459 1448 # whether `pass_all' will *always* work, you probably want this one. 1460 1449 1461 case "$host_os"in1462 aix 4*)1450 case $host_os in 1451 aix*) 1463 1452 lt_cv_deplibs_check_method=pass_all 1464 1453 ;; … … 1469 1458 1470 1459 bsdi4*) 1471 1472 1460 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' 1461 lt_cv_file_magic_cmd='/usr/bin/file -L' 1473 1462 lt_cv_file_magic_test_file=/shlib/libc.so 1474 1463 ;; … … 1479 1468 ;; 1480 1469 1470 darwin* | rhapsody*) 1471 lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' 1472 lt_cv_file_magic_cmd='/usr/bin/file -L' 1473 case "$host_os" in 1474 rhapsody* | darwin1.012) 1475 lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' 1476 ;; 1477 *) # Darwin 1.3 on 1478 lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' 1479 ;; 1480 esac 1481 ;; 1482 1481 1483 freebsd* ) 1482 1484 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then 1483 case "$host_cpu"in1485 case $host_cpu in 1484 1486 i*86 ) 1485 1487 # Not sure whether the presence of OpenBSD here was a mistake. 1486 1488 # Let's accept both of them until this is cleared up. 1487 1488 1489 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' 1490 lt_cv_file_magic_cmd=/usr/bin/file 1489 1491 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` 1490 1492 ;; … … 1499 1501 ;; 1500 1502 1501 hpux10.20*) 1502 # TODO: Does this work for hpux-11 too? 1503 lt_cv_deplibs_check_method='file_magic (s0-90-90-9|PA-RISC0-9.0-9) shared library' 1504 lt_cv_file_magic_cmd=/usr/bin/file 1505 lt_cv_file_magic_test_file=/usr/lib/libc.sl 1503 hpux10.20*|hpux11*) 1504 case $host_cpu in 1505 hppa*) 1506 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' 1507 lt_cv_file_magic_cmd=/usr/bin/file 1508 lt_cv_file_magic_test_file=/usr/lib/libc.sl 1509 ;; 1510 ia64*) 1511 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' 1512 lt_cv_file_magic_cmd=/usr/bin/file 1513 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so 1514 ;; 1515 esac 1506 1516 ;; 1507 1517 1508 1518 irix5* | irix6*) 1509 case "$host_os"in1519 case $host_os in 1510 1520 irix5*) 1511 1521 # this will be overridden with pass_all, but let us keep it just in case … … 1513 1523 ;; 1514 1524 *) 1515 case "$LD"in1525 case $LD in 1516 1526 *-32|*"-32 ") libmagic=32-bit;; 1517 1527 *-n32|*"-n32 ") libmagic=N32;; … … 1520 1530 esac 1521 1531 # this will be overridden with pass_all, but let us keep it just in case 1522 1523 1532 lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" 1533 ;; 1524 1534 esac 1525 1535 lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` … … 1529 1539 # This must be Linux ELF. 1530 1540 linux-gnu*) 1531 case "$host_cpu"in1532 alpha* | i*86 | powerpc* | sparc* | ia64* )1541 case $host_cpu in 1542 alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* ) 1533 1543 lt_cv_deplibs_check_method=pass_all ;; 1534 1544 *) 1535 1545 # glibc up to 2.1.1 does not perform some relocations on ARM 1536 1537 1546 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; 1547 esac 1538 1548 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` 1539 1549 ;; 1540 1550 1541 1551 netbsd*) 1542 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then : 1552 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then 1553 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' 1543 1554 else 1544 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' 1545 lt_cv_file_magic_cmd='/usr/bin/file -L' 1546 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` 1555 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$' 1547 1556 fi 1557 ;; 1558 1559 newsos6) 1560 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' 1561 lt_cv_file_magic_cmd=/usr/bin/file 1562 lt_cv_file_magic_test_file=/usr/lib/libnls.so 1548 1563 ;; 1549 1564 … … 1564 1579 ;; 1565 1580 1581 sysv5uw[78]* | sysv4*uw2*) 1582 lt_cv_deplibs_check_method=pass_all 1583 ;; 1584 1566 1585 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) 1567 case "$host_vendor"in1586 case $host_vendor in 1568 1587 ncr) 1569 1588 lt_cv_deplibs_check_method=pass_all 1570 1589 ;; 1571 1590 motorola) 1572 1573 1591 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' 1592 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` 1574 1593 ;; 1575 1594 esac … … 1584 1603 1585 1604 echo $ac_n "checking for object suffix""... $ac_c" 1>&6 1586 echo "configure:1 587: checking for object suffix" >&51605 echo "configure:1606: checking for object suffix" >&5 1587 1606 if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then 1588 1607 echo $ac_n "(cached) $ac_c" 1>&6 … … 1590 1609 rm -f conftest* 1591 1610 echo 'int i = 1;' > conftest.$ac_ext 1592 if { (eval echo configure:1 593: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then1611 if { (eval echo configure:1612: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then 1593 1612 for ac_file in conftest.*; do 1594 1613 case $ac_file in … … 1610 1629 1611 1630 echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 1612 echo "configure:16 13: checking for executable suffix" >&51631 echo "configure:1632: checking for executable suffix" >&5 1613 1632 if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then 1614 1633 echo $ac_n "(cached) $ac_c" 1>&6 … … 1620 1639 echo 'int main () { return 0; }' > conftest.$ac_ext 1621 1640 ac_cv_exeext= 1622 if { (eval echo configure:16 23: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then1641 if { (eval echo configure:1642: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then 1623 1642 for file in conftest.*; do 1624 1643 case $file in 1625 *.c | *.o | *.obj | *.ilk | *.pdb) ;;1644 *.c | *.o | *.obj) ;; 1626 1645 *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; 1627 1646 esac … … 1649 1668 1650 1669 # Only perform the check for file, if the check method requires it 1651 case "$deplibs_check_method"in1670 case $deplibs_check_method in 1652 1671 file_magic*) 1653 1672 if test "$file_magic_cmd" = '$MAGIC_CMD'; then 1654 1673 echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6 1655 echo "configure:16 56: checking for ${ac_tool_prefix}file" >&51674 echo "configure:1675: checking for ${ac_tool_prefix}file" >&5 1656 1675 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then 1657 1676 echo $ac_n "(cached) $ac_c" 1>&6 1658 1677 else 1659 case "$MAGIC_CMD"in1678 case $MAGIC_CMD in 1660 1679 /*) 1661 1680 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. … … 1673 1692 lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" 1674 1693 if test -n "$file_magic_test_file"; then 1675 case "$deplibs_check_method"in1694 case $deplibs_check_method in 1676 1695 "file_magic "*) 1677 1696 file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" … … 1715 1734 if test -n "$ac_tool_prefix"; then 1716 1735 echo $ac_n "checking for file""... $ac_c" 1>&6 1717 echo "configure:17 18: checking for file" >&51736 echo "configure:1737: checking for file" >&5 1718 1737 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then 1719 1738 echo $ac_n "(cached) $ac_c" 1>&6 1720 1739 else 1721 case "$MAGIC_CMD"in1740 case $MAGIC_CMD in 1722 1741 /*) 1723 1742 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. … … 1735 1754 lt_cv_path_MAGIC_CMD="$ac_dir/file" 1736 1755 if test -n "$file_magic_test_file"; then 1737 case "$deplibs_check_method"in1756 case $deplibs_check_method in 1738 1757 "file_magic "*) 1739 1758 file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" … … 1786 1805 set dummy ${ac_tool_prefix}ranlib; ac_word=$2 1787 1806 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 1788 echo "configure:1 789: checking for $ac_word" >&51807 echo "configure:1808: checking for $ac_word" >&5 1789 1808 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then 1790 1809 echo $ac_n "(cached) $ac_c" 1>&6 … … 1818 1837 set dummy ranlib; ac_word=$2 1819 1838 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 1820 echo "configure:18 21: checking for $ac_word" >&51839 echo "configure:1840: checking for $ac_word" >&5 1821 1840 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then 1822 1841 echo $ac_n "(cached) $ac_c" 1>&6 … … 1853 1872 set dummy ${ac_tool_prefix}strip; ac_word=$2 1854 1873 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 1855 echo "configure:18 56: checking for $ac_word" >&51874 echo "configure:1875: checking for $ac_word" >&5 1856 1875 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then 1857 1876 echo $ac_n "(cached) $ac_c" 1>&6 … … 1885 1904 set dummy strip; ac_word=$2 1886 1905 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 1887 echo "configure:1 888: checking for $ac_word" >&51906 echo "configure:1907: checking for $ac_word" >&5 1888 1907 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then 1889 1908 echo $ac_n "(cached) $ac_c" 1>&6 … … 1923 1942 test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" 1924 1943 test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" 1925 test "$ ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"1926 test "$ ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"1944 test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" 1945 test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" 1927 1946 1928 1947 … … 1949 1968 # Some flags need to be propagated to the compiler or linker for good 1950 1969 # libtool support. 1951 case "$host"in1970 case $host in 1952 1971 *-*-irix6*) 1953 1972 # Find out which ABI we are using. 1954 echo '#line 19 55"configure"' > conftest.$ac_ext1955 if { (eval echo configure:19 56: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then1956 case "`/usr/bin/file conftest.o`"in1973 echo '#line 1974 "configure"' > conftest.$ac_ext 1974 if { (eval echo configure:1975: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then 1975 case `/usr/bin/file conftest.$ac_objext` in 1957 1976 *32-bit*) 1958 1977 LD="${LD-ld} -32" … … 1969 1988 ;; 1970 1989 1990 ia64-*-hpux*) 1991 # Find out which ABI we are using. 1992 echo 'int i;' > conftest.$ac_ext 1993 if { (eval echo configure:1994: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then 1994 case "`/usr/bin/file conftest.o`" in 1995 *ELF-32*) 1996 HPUX_IA64_MODE="32" 1997 ;; 1998 *ELF-64*) 1999 HPUX_IA64_MODE="64" 2000 ;; 2001 esac 2002 fi 2003 rm -rf conftest* 2004 ;; 2005 1971 2006 *-*-sco3.2v5*) 1972 2007 # On SCO OpenServer 5, we need -belf to get full-featured binaries. … … 1974 2009 CFLAGS="$CFLAGS -belf" 1975 2010 echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 1976 echo "configure: 1977: checking whether the C compiler needs -belf" >&52011 echo "configure:2012: checking whether the C compiler needs -belf" >&5 1977 2012 if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then 1978 2013 echo $ac_n "(cached) $ac_c" 1>&6 … … 1987 2022 1988 2023 cat > conftest.$ac_ext <<EOF 1989 #line 1990"configure"2024 #line 2025 "configure" 1990 2025 #include "confdefs.h" 1991 2026 … … 1994 2029 ; return 0; } 1995 2030 EOF 1996 if { (eval echo configure: 1997: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then2031 if { (eval echo configure:2032: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 1997 2032 rm -rf conftest* 1998 2033 lt_cv_cc_needs_belf=yes … … 2104 2139 exec 5>>./config.log 2105 2140 2106 2107 2141 2108 2142 … … 2118 2152 set dummy gcc; ac_word=$2 2119 2153 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 2120 echo "configure:21 21: checking for $ac_word" >&52154 echo "configure:2155: checking for $ac_word" >&5 2121 2155 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then 2122 2156 echo $ac_n "(cached) $ac_c" 1>&6 … … 2148 2182 set dummy cc; ac_word=$2 2149 2183 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 2150 echo "configure:21 51: checking for $ac_word" >&52184 echo "configure:2185: checking for $ac_word" >&5 2151 2185 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then 2152 2186 echo $ac_n "(cached) $ac_c" 1>&6 … … 2199 2233 set dummy cl; ac_word=$2 2200 2234 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 2201 echo "configure:22 02: checking for $ac_word" >&52235 echo "configure:2236: checking for $ac_word" >&5 2202 2236 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then 2203 2237 echo $ac_n "(cached) $ac_c" 1>&6 … … 2231 2265 2232 2266 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 2233 echo "configure:22 34: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&52267 echo "configure:2268: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 2234 2268 2235 2269 ac_ext=c … … 2242 2276 cat > conftest.$ac_ext << EOF 2243 2277 2244 #line 22 45"configure"2278 #line 2279 "configure" 2245 2279 #include "confdefs.h" 2246 2280 2247 2281 main(){return(0);} 2248 2282 EOF 2249 if { (eval echo configure:22 50: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then2283 if { (eval echo configure:2284: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 2250 2284 ac_cv_prog_cc_works=yes 2251 2285 # If we can't run a trivial program, we are probably using a cross compiler. … … 2273 2307 fi 2274 2308 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 2275 echo "configure:2 276: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&52309 echo "configure:2310: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 2276 2310 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 2277 2311 cross_compiling=$ac_cv_prog_cc_cross 2278 2312 2279 2313 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 2280 echo "configure:2 281: checking whether we are using GNU C" >&52314 echo "configure:2315: checking whether we are using GNU C" >&5 2281 2315 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then 2282 2316 echo $ac_n "(cached) $ac_c" 1>&6 … … 2287 2321 #endif 2288 2322 EOF 2289 if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2 290: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then2323 if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2324: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then 2290 2324 ac_cv_prog_gcc=yes 2291 2325 else … … 2306 2340 CFLAGS= 2307 2341 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 2308 echo "configure:23 09: checking whether ${CC-cc} accepts -g" >&52342 echo "configure:2343: checking whether ${CC-cc} accepts -g" >&5 2309 2343 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then 2310 2344 echo $ac_n "(cached) $ac_c" 1>&6 … … 2349 2383 # ./install, which can be erroneously created by make from ./install.sh. 2350 2384 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 2351 echo "configure:23 52: checking for a BSD compatible install" >&52385 echo "configure:2386: checking for a BSD compatible install" >&5 2352 2386 if test -z "$INSTALL"; then 2353 2387 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then … … 2405 2439 do 2406 2440 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 2407 echo "configure:24 08: checking for $ac_func" >&52441 echo "configure:2442: checking for $ac_func" >&5 2408 2442 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then 2409 2443 echo $ac_n "(cached) $ac_c" 1>&6 2410 2444 else 2411 2445 cat > conftest.$ac_ext <<EOF 2412 #line 24 13"configure"2446 #line 2447 "configure" 2413 2447 #include "confdefs.h" 2414 2448 /* System header to define __stub macros and hopefully few prototypes, … … 2433 2467 ; return 0; } 2434 2468 EOF 2435 if { (eval echo configure:24 36: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then2469 if { (eval echo configure:2470: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 2436 2470 rm -rf conftest* 2437 2471 eval "ac_cv_func_$ac_func=yes" … … 2458 2492 2459 2493 2460 ALL_LINGUAS= 2494 ALL_LINGUAS="fr tr sv es id da pt_BR" 2461 2495 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 2462 echo "configure:24 63: checking how to run the C preprocessor" >&52496 echo "configure:2497: checking how to run the C preprocessor" >&5 2463 2497 # On Suns, sometimes $CPP names a directory. 2464 2498 if test -n "$CPP" && test -d "$CPP"; then … … 2475 2509 # not just through cpp. 2476 2510 cat > conftest.$ac_ext <<EOF 2477 #line 2478 "configure"2478 #include "confdefs.h"2479 #include <assert.h>2480 Syntax Error2481 EOF2482 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"2483 { (eval echo configure:2484: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }2484 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`2485 if test -z "$ac_err"; then2486 :2487 else2488 echo "$ac_err" >&52489 echo "configure: failed program was:" >&52490 cat conftest.$ac_ext >&52491 rm -rf conftest*2492 CPP="${CC-cc} -E -traditional-cpp"2493 cat > conftest.$ac_ext <<EOF2494 #line 2495 "configure"2495 #include "confdefs.h"2496 #include <assert.h>2497 Syntax Error2498 EOF2499 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"2500 { (eval echo configure:2501: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }2501 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`2502 if test -z "$ac_err"; then2503 :2504 else2505 echo "$ac_err" >&52506 echo "configure: failed program was:" >&52507 cat conftest.$ac_ext >&52508 rm -rf conftest*2509 CPP="${CC-cc} -nologo -E"2510 cat > conftest.$ac_ext <<EOF2511 2511 #line 2512 "configure" 2512 2512 #include "confdefs.h" … … 2524 2524 cat conftest.$ac_ext >&5 2525 2525 rm -rf conftest* 2526 CPP="${CC-cc} -E -traditional-cpp" 2527 cat > conftest.$ac_ext <<EOF 2528 #line 2529 "configure" 2529 #include "confdefs.h" 2530 #include <assert.h> 2531 Syntax Error 2532 EOF 2533 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 2534 { (eval echo configure:2535: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 2535 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 2536 if test -z "$ac_err"; then 2537 : 2538 else 2539 echo "$ac_err" >&5 2540 echo "configure: failed program was:" >&5 2541 cat conftest.$ac_ext >&5 2542 rm -rf conftest* 2543 CPP="${CC-cc} -nologo -E" 2544 cat > conftest.$ac_ext <<EOF 2545 #line 2546 "configure" 2546 #include "confdefs.h" 2547 #include <assert.h> 2548 Syntax Error 2549 EOF 2550 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 2551 { (eval echo configure:2552: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 2552 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 2553 if test -z "$ac_err"; then 2554 : 2555 else 2556 echo "$ac_err" >&5 2557 echo "configure: failed program was:" >&5 2558 cat conftest.$ac_ext >&5 2559 rm -rf conftest* 2526 2560 CPP=/lib/cpp 2527 2561 fi … … 2542 2576 set dummy ranlib; ac_word=$2 2543 2577 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 2544 echo "configure:25 45: checking for $ac_word" >&52578 echo "configure:2579: checking for $ac_word" >&5 2545 2579 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then 2546 2580 echo $ac_n "(cached) $ac_c" 1>&6 … … 2570 2604 2571 2605 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 2572 echo "configure:2 573: checking for ANSI C header files" >&52606 echo "configure:2607: checking for ANSI C header files" >&5 2573 2607 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then 2574 2608 echo $ac_n "(cached) $ac_c" 1>&6 2575 2609 else 2576 2610 cat > conftest.$ac_ext <<EOF 2577 #line 2 578"configure"2611 #line 2612 "configure" 2578 2612 #include "confdefs.h" 2579 2613 #include <stdlib.h> … … 2583 2617 EOF 2584 2618 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 2585 { (eval echo configure:2 586: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }2619 { (eval echo configure:2620: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 2586 2620 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 2587 2621 if test -z "$ac_err"; then … … 2600 2634 # SunOS 4.x string.h does not declare mem*, contrary to ANSI. 2601 2635 cat > conftest.$ac_ext <<EOF 2602 #line 26 03"configure"2636 #line 2637 "configure" 2603 2637 #include "confdefs.h" 2604 2638 #include <string.h> … … 2618 2652 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. 2619 2653 cat > conftest.$ac_ext <<EOF 2620 #line 26 21"configure"2654 #line 2655 "configure" 2621 2655 #include "confdefs.h" 2622 2656 #include <stdlib.h> … … 2639 2673 else 2640 2674 cat > conftest.$ac_ext <<EOF 2641 #line 26 42"configure"2675 #line 2676 "configure" 2642 2676 #include "confdefs.h" 2643 2677 #include <ctype.h> … … 2650 2684 2651 2685 EOF 2652 if { (eval echo configure:26 53: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null2686 if { (eval echo configure:2687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null 2653 2687 then 2654 2688 : … … 2674 2708 2675 2709 echo $ac_n "checking for working const""... $ac_c" 1>&6 2676 echo "configure:2 677: checking for working const" >&52710 echo "configure:2711: checking for working const" >&5 2677 2711 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then 2678 2712 echo $ac_n "(cached) $ac_c" 1>&6 2679 2713 else 2680 2714 cat > conftest.$ac_ext <<EOF 2681 #line 2 682"configure"2715 #line 2716 "configure" 2682 2716 #include "confdefs.h" 2683 2717 … … 2728 2762 ; return 0; } 2729 2763 EOF 2730 if { (eval echo configure:27 31: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then2764 if { (eval echo configure:2765: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then 2731 2765 rm -rf conftest* 2732 2766 ac_cv_c_const=yes … … 2749 2783 2750 2784 echo $ac_n "checking for inline""... $ac_c" 1>&6 2751 echo "configure:27 52: checking for inline" >&52785 echo "configure:2786: checking for inline" >&5 2752 2786 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then 2753 2787 echo $ac_n "(cached) $ac_c" 1>&6 … … 2756 2790 for ac_kw in inline __inline__ __inline; do 2757 2791 cat > conftest.$ac_ext <<EOF 2758 #line 27 59"configure"2792 #line 2793 "configure" 2759 2793 #include "confdefs.h" 2760 2794 … … 2763 2797 ; return 0; } 2764 2798 EOF 2765 if { (eval echo configure:2 766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then2799 if { (eval echo configure:2800: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then 2766 2800 rm -rf conftest* 2767 2801 ac_cv_c_inline=$ac_kw; break … … 2789 2823 2790 2824 echo $ac_n "checking for off_t""... $ac_c" 1>&6 2791 echo "configure:2 792: checking for off_t" >&52825 echo "configure:2826: checking for off_t" >&5 2792 2826 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then 2793 2827 echo $ac_n "(cached) $ac_c" 1>&6 2794 2828 else 2795 2829 cat > conftest.$ac_ext <<EOF 2796 #line 2 797"configure"2830 #line 2831 "configure" 2797 2831 #include "confdefs.h" 2798 2832 #include <sys/types.h> … … 2822 2856 2823 2857 echo $ac_n "checking for size_t""... $ac_c" 1>&6 2824 echo "configure:28 25: checking for size_t" >&52858 echo "configure:2859: checking for size_t" >&5 2825 2859 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then 2826 2860 echo $ac_n "(cached) $ac_c" 1>&6 2827 2861 else 2828 2862 cat > conftest.$ac_ext <<EOF 2829 #line 28 30"configure"2863 #line 2864 "configure" 2830 2864 #include "confdefs.h" 2831 2865 #include <sys/types.h> … … 2857 2891 # for constant arguments. Useless! 2858 2892 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 2859 echo "configure:28 60: checking for working alloca.h" >&52893 echo "configure:2894: checking for working alloca.h" >&5 2860 2894 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then 2861 2895 echo $ac_n "(cached) $ac_c" 1>&6 2862 2896 else 2863 2897 cat > conftest.$ac_ext <<EOF 2864 #line 28 65"configure"2898 #line 2899 "configure" 2865 2899 #include "confdefs.h" 2866 2900 #include <alloca.h> … … 2869 2903 ; return 0; } 2870 2904 EOF 2871 if { (eval echo configure:2 872: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then2905 if { (eval echo configure:2906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 2872 2906 rm -rf conftest* 2873 2907 ac_cv_header_alloca_h=yes … … 2890 2924 2891 2925 echo $ac_n "checking for alloca""... $ac_c" 1>&6 2892 echo "configure:2 893: checking for alloca" >&52926 echo "configure:2927: checking for alloca" >&5 2893 2927 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then 2894 2928 echo $ac_n "(cached) $ac_c" 1>&6 2895 2929 else 2896 2930 cat > conftest.$ac_ext <<EOF 2897 #line 2 898"configure"2931 #line 2932 "configure" 2898 2932 #include "confdefs.h" 2899 2933 … … 2923 2957 ; return 0; } 2924 2958 EOF 2925 if { (eval echo configure:29 26: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then2959 if { (eval echo configure:2960: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 2926 2960 rm -rf conftest* 2927 2961 ac_cv_func_alloca_works=yes … … 2955 2989 2956 2990 echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 2957 echo "configure:29 58: checking whether alloca needs Cray hooks" >&52991 echo "configure:2992: checking whether alloca needs Cray hooks" >&5 2958 2992 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then 2959 2993 echo $ac_n "(cached) $ac_c" 1>&6 2960 2994 else 2961 2995 cat > conftest.$ac_ext <<EOF 2962 #line 29 63"configure"2996 #line 2997 "configure" 2963 2997 #include "confdefs.h" 2964 2998 #if defined(CRAY) && ! defined(CRAY2) … … 2985 3019 for ac_func in _getb67 GETB67 getb67; do 2986 3020 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 2987 echo "configure: 2988: checking for $ac_func" >&53021 echo "configure:3022: checking for $ac_func" >&5 2988 3022 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then 2989 3023 echo $ac_n "(cached) $ac_c" 1>&6 2990 3024 else 2991 3025 cat > conftest.$ac_ext <<EOF 2992 #line 2993"configure"3026 #line 3027 "configure" 2993 3027 #include "confdefs.h" 2994 3028 /* System header to define __stub macros and hopefully few prototypes, … … 3013 3047 ; return 0; } 3014 3048 EOF 3015 if { (eval echo configure:30 16: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3049 if { (eval echo configure:3050: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3016 3050 rm -rf conftest* 3017 3051 eval "ac_cv_func_$ac_func=yes" … … 3040 3074 3041 3075 echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 3042 echo "configure:30 43: checking stack direction for C alloca" >&53076 echo "configure:3077: checking stack direction for C alloca" >&5 3043 3077 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then 3044 3078 echo $ac_n "(cached) $ac_c" 1>&6 … … 3048 3082 else 3049 3083 cat > conftest.$ac_ext <<EOF 3050 #line 30 51"configure"3084 #line 3085 "configure" 3051 3085 #include "confdefs.h" 3052 3086 find_stack_direction () … … 3067 3101 } 3068 3102 EOF 3069 if { (eval echo configure:3 070: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null3103 if { (eval echo configure:3104: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null 3070 3104 then 3071 3105 ac_cv_c_stack_direction=1 … … 3088 3122 fi 3089 3123 3090 for ac_hdr in unistd.h3124 for ac_hdr in stdlib.h unistd.h sys/stat.h sys/types.h 3091 3125 do 3092 3126 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` 3093 3127 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 3094 echo "configure:3 095: checking for $ac_hdr" >&53128 echo "configure:3129: checking for $ac_hdr" >&5 3095 3129 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then 3096 3130 echo $ac_n "(cached) $ac_c" 1>&6 3097 3131 else 3098 3132 cat > conftest.$ac_ext <<EOF 3099 #line 31 00"configure"3133 #line 3134 "configure" 3100 3134 #include "confdefs.h" 3101 3135 #include <$ac_hdr> 3102 3136 EOF 3103 3137 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 3104 { (eval echo configure:31 05: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }3138 { (eval echo configure:3139: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 3105 3139 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 3106 3140 if test -z "$ac_err"; then … … 3131 3165 do 3132 3166 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 3133 echo "configure:31 34: checking for $ac_func" >&53167 echo "configure:3168: checking for $ac_func" >&5 3134 3168 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then 3135 3169 echo $ac_n "(cached) $ac_c" 1>&6 3136 3170 else 3137 3171 cat > conftest.$ac_ext <<EOF 3138 #line 31 39"configure"3172 #line 3173 "configure" 3139 3173 #include "confdefs.h" 3140 3174 /* System header to define __stub macros and hopefully few prototypes, … … 3159 3193 ; return 0; } 3160 3194 EOF 3161 if { (eval echo configure:31 62: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3195 if { (eval echo configure:3196: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3162 3196 rm -rf conftest* 3163 3197 eval "ac_cv_func_$ac_func=yes" … … 3184 3218 3185 3219 echo $ac_n "checking for working mmap""... $ac_c" 1>&6 3186 echo "configure:3 187: checking for working mmap" >&53220 echo "configure:3221: checking for working mmap" >&5 3187 3221 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then 3188 3222 echo $ac_n "(cached) $ac_c" 1>&6 … … 3192 3226 else 3193 3227 cat > conftest.$ac_ext <<EOF 3194 #line 3 195"configure"3228 #line 3229 "configure" 3195 3229 #include "confdefs.h" 3196 3230 … … 3220 3254 #include <sys/mman.h> 3221 3255 3256 #if HAVE_SYS_TYPES_H 3257 # include <sys/types.h> 3258 #endif 3259 3260 #if HAVE_STDLIB_H 3261 # include <stdlib.h> 3262 #endif 3263 3264 #if HAVE_SYS_STAT_H 3265 # include <sys/stat.h> 3266 #endif 3267 3268 #if HAVE_UNISTD_H 3269 # include <unistd.h> 3270 #endif 3271 3222 3272 /* This mess was copied from the GNU getpagesize.h. */ 3223 3273 #ifndef HAVE_GETPAGESIZE 3224 # ifdef HAVE_UNISTD_H3225 # include <unistd.h>3226 # endif3227 3274 3228 3275 /* Assume that all systems that can run configure have sys/param.h. */ … … 3332 3379 3333 3380 EOF 3334 if { (eval echo configure:33 35: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null3381 if { (eval echo configure:3382: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null 3335 3382 then 3336 3383 ac_cv_func_mmap_fixed_mapped=yes … … 3360 3407 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` 3361 3408 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 3362 echo "configure:3 363: checking for $ac_hdr" >&53409 echo "configure:3410: checking for $ac_hdr" >&5 3363 3410 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then 3364 3411 echo $ac_n "(cached) $ac_c" 1>&6 3365 3412 else 3366 3413 cat > conftest.$ac_ext <<EOF 3367 #line 3 368"configure"3414 #line 3415 "configure" 3368 3415 #include "confdefs.h" 3369 3416 #include <$ac_hdr> 3370 3417 EOF 3371 3418 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 3372 { (eval echo configure:3 373: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }3419 { (eval echo configure:3420: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 3373 3420 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 3374 3421 if test -z "$ac_err"; then … … 3400 3447 do 3401 3448 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 3402 echo "configure:34 03: checking for $ac_func" >&53449 echo "configure:3450: checking for $ac_func" >&5 3403 3450 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then 3404 3451 echo $ac_n "(cached) $ac_c" 1>&6 3405 3452 else 3406 3453 cat > conftest.$ac_ext <<EOF 3407 #line 34 08"configure"3454 #line 3455 "configure" 3408 3455 #include "confdefs.h" 3409 3456 /* System header to define __stub macros and hopefully few prototypes, … … 3428 3475 ; return 0; } 3429 3476 EOF 3430 if { (eval echo configure:34 31: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3477 if { (eval echo configure:3478: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3431 3478 rm -rf conftest* 3432 3479 eval "ac_cv_func_$ac_func=yes" … … 3457 3504 do 3458 3505 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 3459 echo "configure:3 460: checking for $ac_func" >&53506 echo "configure:3507: checking for $ac_func" >&5 3460 3507 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then 3461 3508 echo $ac_n "(cached) $ac_c" 1>&6 3462 3509 else 3463 3510 cat > conftest.$ac_ext <<EOF 3464 #line 3 465"configure"3511 #line 3512 "configure" 3465 3512 #include "confdefs.h" 3466 3513 /* System header to define __stub macros and hopefully few prototypes, … … 3485 3532 ; return 0; } 3486 3533 EOF 3487 if { (eval echo configure:3 488: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3534 if { (eval echo configure:3535: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3488 3535 rm -rf conftest* 3489 3536 eval "ac_cv_func_$ac_func=yes" … … 3519 3566 if test $ac_cv_header_locale_h = yes; then 3520 3567 echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 3521 echo "configure:35 22: checking for LC_MESSAGES" >&53568 echo "configure:3569: checking for LC_MESSAGES" >&5 3522 3569 if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then 3523 3570 echo $ac_n "(cached) $ac_c" 1>&6 3524 3571 else 3525 3572 cat > conftest.$ac_ext <<EOF 3526 #line 35 27"configure"3573 #line 3574 "configure" 3527 3574 #include "confdefs.h" 3528 3575 #include <locale.h> … … 3531 3578 ; return 0; } 3532 3579 EOF 3533 if { (eval echo configure:35 34: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3580 if { (eval echo configure:3581: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3534 3581 rm -rf conftest* 3535 3582 am_cv_val_LC_MESSAGES=yes … … 3552 3599 fi 3553 3600 echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6 3554 echo "configure:3 555: checking whether NLS is requested" >&53601 echo "configure:3602: checking whether NLS is requested" >&5 3555 3602 # Check whether --enable-nls or --disable-nls was given. 3556 3603 if test "${enable_nls+set}" = set; then … … 3572 3619 3573 3620 echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6 3574 echo "configure:3 575: checking whether included gettext is requested" >&53621 echo "configure:3622: checking whether included gettext is requested" >&5 3575 3622 # Check whether --with-included-gettext or --without-included-gettext was given. 3576 3623 if test "${with_included_gettext+set}" = set; then … … 3591 3638 ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'` 3592 3639 echo $ac_n "checking for libintl.h""... $ac_c" 1>&6 3593 echo "configure:3 594: checking for libintl.h" >&53640 echo "configure:3641: checking for libintl.h" >&5 3594 3641 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then 3595 3642 echo $ac_n "(cached) $ac_c" 1>&6 3596 3643 else 3597 3644 cat > conftest.$ac_ext <<EOF 3598 #line 3 599"configure"3645 #line 3646 "configure" 3599 3646 #include "confdefs.h" 3600 3647 #include <libintl.h> 3601 3648 EOF 3602 3649 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 3603 { (eval echo configure:36 04: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }3650 { (eval echo configure:3651: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 3604 3651 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 3605 3652 if test -z "$ac_err"; then … … 3618 3665 echo "$ac_t""yes" 1>&6 3619 3666 echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6 3620 echo "configure:36 21: checking for gettext in libc" >&53667 echo "configure:3668: checking for gettext in libc" >&5 3621 3668 if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then 3622 3669 echo $ac_n "(cached) $ac_c" 1>&6 3623 3670 else 3624 3671 cat > conftest.$ac_ext <<EOF 3625 #line 36 26"configure"3672 #line 3673 "configure" 3626 3673 #include "confdefs.h" 3627 3674 #include <libintl.h> … … 3630 3677 ; return 0; } 3631 3678 EOF 3632 if { (eval echo configure:36 33: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3679 if { (eval echo configure:3680: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3633 3680 rm -rf conftest* 3634 3681 gt_cv_func_gettext_libc=yes … … 3646 3693 if test "$gt_cv_func_gettext_libc" != "yes"; then 3647 3694 echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6 3648 echo "configure:36 49: checking for bindtextdomain in -lintl" >&53695 echo "configure:3696: checking for bindtextdomain in -lintl" >&5 3649 3696 ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'` 3650 3697 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then … … 3654 3701 LIBS="-lintl $LIBS" 3655 3702 cat > conftest.$ac_ext <<EOF 3656 #line 3 657"configure"3703 #line 3704 "configure" 3657 3704 #include "confdefs.h" 3658 3705 /* Override any gcc2 internal prototype to avoid an error. */ … … 3665 3712 ; return 0; } 3666 3713 EOF 3667 if { (eval echo configure:3 668: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3714 if { (eval echo configure:3715: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3668 3715 rm -rf conftest* 3669 3716 eval "ac_cv_lib_$ac_lib_var=yes" … … 3681 3728 echo "$ac_t""yes" 1>&6 3682 3729 echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6 3683 echo "configure:3 684: checking for gettext in libintl" >&53730 echo "configure:3731: checking for gettext in libintl" >&5 3684 3731 if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then 3685 3732 echo $ac_n "(cached) $ac_c" 1>&6 3686 3733 else 3687 3734 cat > conftest.$ac_ext <<EOF 3688 #line 3 689"configure"3735 #line 3736 "configure" 3689 3736 #include "confdefs.h" 3690 3737 … … 3693 3740 ; return 0; } 3694 3741 EOF 3695 if { (eval echo configure:3 696: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3742 if { (eval echo configure:3743: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3696 3743 rm -rf conftest* 3697 3744 gt_cv_func_gettext_libintl=yes … … 3721 3768 set dummy msgfmt; ac_word=$2 3722 3769 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 3723 echo "configure:37 24: checking for $ac_word" >&53770 echo "configure:3771: checking for $ac_word" >&5 3724 3771 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then 3725 3772 echo $ac_n "(cached) $ac_c" 1>&6 … … 3755 3802 do 3756 3803 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 3757 echo "configure:3 758: checking for $ac_func" >&53804 echo "configure:3805: checking for $ac_func" >&5 3758 3805 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then 3759 3806 echo $ac_n "(cached) $ac_c" 1>&6 3760 3807 else 3761 3808 cat > conftest.$ac_ext <<EOF 3762 #line 3 763"configure"3809 #line 3810 "configure" 3763 3810 #include "confdefs.h" 3764 3811 /* System header to define __stub macros and hopefully few prototypes, … … 3783 3830 ; return 0; } 3784 3831 EOF 3785 if { (eval echo configure:3 786: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3832 if { (eval echo configure:3833: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3786 3833 rm -rf conftest* 3787 3834 eval "ac_cv_func_$ac_func=yes" … … 3810 3857 set dummy gmsgfmt; ac_word=$2 3811 3858 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 3812 echo "configure:38 13: checking for $ac_word" >&53859 echo "configure:3860: checking for $ac_word" >&5 3813 3860 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then 3814 3861 echo $ac_n "(cached) $ac_c" 1>&6 … … 3846 3893 set dummy xgettext; ac_word=$2 3847 3894 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 3848 echo "configure:38 49: checking for $ac_word" >&53895 echo "configure:3896: checking for $ac_word" >&5 3849 3896 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then 3850 3897 echo $ac_n "(cached) $ac_c" 1>&6 … … 3878 3925 3879 3926 cat > conftest.$ac_ext <<EOF 3880 #line 3 881"configure"3927 #line 3928 "configure" 3881 3928 #include "confdefs.h" 3882 3929 … … 3886 3933 ; return 0; } 3887 3934 EOF 3888 if { (eval echo configure:3 889: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then3935 if { (eval echo configure:3936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then 3889 3936 rm -rf conftest* 3890 3937 CATOBJEXT=.gmo … … 3918 3965 set dummy msgfmt; ac_word=$2 3919 3966 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 3920 echo "configure:39 21: checking for $ac_word" >&53967 echo "configure:3968: checking for $ac_word" >&5 3921 3968 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then 3922 3969 echo $ac_n "(cached) $ac_c" 1>&6 … … 3952 3999 set dummy gmsgfmt; ac_word=$2 3953 4000 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 3954 echo "configure: 3955: checking for $ac_word" >&54001 echo "configure:4002: checking for $ac_word" >&5 3955 4002 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then 3956 4003 echo $ac_n "(cached) $ac_c" 1>&6 … … 3988 4035 set dummy xgettext; ac_word=$2 3989 4036 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 3990 echo "configure: 3991: checking for $ac_word" >&54037 echo "configure:4038: checking for $ac_word" >&5 3991 4038 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then 3992 4039 echo $ac_n "(cached) $ac_c" 1>&6 … … 4078 4125 else 4079 4126 echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6 4080 echo "configure:4 081: checking for catalogs to be installed" >&54127 echo "configure:4128: checking for catalogs to be installed" >&5 4081 4128 NEW_LINGUAS= 4082 4129 for lang in ${LINGUAS=$ALL_LINGUAS}; do … … 4106 4153 ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'` 4107 4154 echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6 4108 echo "configure:41 09: checking for linux/version.h" >&54155 echo "configure:4156: checking for linux/version.h" >&5 4109 4156 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then 4110 4157 echo $ac_n "(cached) $ac_c" 1>&6 4111 4158 else 4112 4159 cat > conftest.$ac_ext <<EOF 4113 #line 41 14"configure"4160 #line 4161 "configure" 4114 4161 #include "confdefs.h" 4115 4162 #include <linux/version.h> 4116 4163 EOF 4117 4164 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 4118 { (eval echo configure:41 19: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }4165 { (eval echo configure:4166: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 4119 4166 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 4120 4167 if test -z "$ac_err"; then … … 4161 4208 4162 4209 4163 if test - d $srcdir/po; then4210 if test -f $srcdir/po/POTFILES.in; then 4164 4211 test -d po || mkdir po 4165 4212 if test "x$srcdir" != "x."; then … … 4179 4226 4180 4227 echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 4181 echo "configure:4 182: checking whether to enable maintainer-specific portions of Makefiles" >&54228 echo "configure:4229: checking whether to enable maintainer-specific portions of Makefiles" >&5 4182 4229 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. 4183 4230 if test "${enable_maintainer_mode+set}" = set; then … … 4204 4251 4205 4252 echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 4206 echo "configure:42 07: checking for executable suffix" >&54253 echo "configure:4254: checking for executable suffix" >&5 4207 4254 if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then 4208 4255 echo $ac_n "(cached) $ac_c" 1>&6 … … 4214 4261 echo 'int main () { return 0; }' > conftest.$ac_ext 4215 4262 ac_cv_exeext= 4216 if { (eval echo configure:42 17: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then4263 if { (eval echo configure:4264: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then 4217 4264 for file in conftest.*; do 4218 4265 case $file in 4219 *.c | *.o | *.obj | *.ilk | *.pdb) ;;4266 *.c | *.o | *.obj) ;; 4220 4267 *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; 4221 4268 esac … … 4239 4286 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` 4240 4287 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 4241 echo "configure:42 42: checking for $ac_hdr" >&54288 echo "configure:4289: checking for $ac_hdr" >&5 4242 4289 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then 4243 4290 echo $ac_n "(cached) $ac_c" 1>&6 4244 4291 else 4245 4292 cat > conftest.$ac_ext <<EOF 4246 #line 42 47"configure"4293 #line 4294 "configure" 4247 4294 #include "confdefs.h" 4248 4295 #include <$ac_hdr> 4249 4296 EOF 4250 4297 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" 4251 { (eval echo configure:42 52: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }4298 { (eval echo configure:4299: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } 4252 4299 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` 4253 4300 if test -z "$ac_err"; then … … 4276 4323 4277 4324 4278 echo $ac_n "checking the size of gmon pointers""... $ac_c" 1>&6 4279 echo "configure:4280: checking the size of gmon pointers" >&5 4280 if test "$cross_compiling" = yes; then 4281 gmon_ptr_size=4 4282 else 4283 cat > conftest.$ac_ext <<EOF 4284 #line 4285 "configure" 4285 #include "confdefs.h" 4286 #include <stdio.h> 4287 #include <stdlib.h> 4288 #if HAVE_SYS_GMON_OUT_H 4289 #include <sys/gmon_out.h> 4290 #endif 4291 main() 4292 { 4293 #if HAVE_SYS_GMON_OUT_H 4294 struct gmon_cg_arc_record arc; 4295 FILE *f=fopen("conftestval", "w"); 4296 if (!f) exit(1); 4297 fprintf(f, "%d\n", sizeof(arc.from_pc)); 4298 exit(0); 4299 #else 4300 FILE *f=fopen("conftestval", "w"); 4301 if (!f) exit(1); 4302 fprintf(f, "%d\n", (int) sizeof(char *)); 4303 exit(1); 4304 #endif 4305 } 4306 EOF 4307 if { (eval echo configure:4308: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null 4308 then 4309 gmon_ptr_size=`cat conftestval` 4310 else 4311 echo "configure: failed program was:" >&5 4312 cat conftest.$ac_ext >&5 4313 rm -fr conftest* 4314 gmon_ptr_size=4 4315 fi 4316 rm -fr conftest* 4317 fi 4318 4319 echo "$ac_t""$gmon_ptr_size" 1>&6 4320 4321 cat >> confdefs.h <<EOF 4322 #define GMON_PTR_SIZE $gmon_ptr_size 4323 EOF 4324 4325 4326 build_warnings="-W -Wall" 4325 build_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes" 4327 4326 # Check whether --enable-build-warnings or --disable-build-warnings was given. 4328 4327 if test "${enable_build_warnings+set}" = set; then -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/configure.in
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 24 24 AC_CHECK_FUNCS(setmode) 25 25 26 ALL_LINGUAS= 26 ALL_LINGUAS="fr tr sv es id da pt_BR" 27 27 CY_GNU_GETTEXT 28 28 … … 32 32 AC_CHECK_HEADERS(sys/gmon_out.h) 33 33 34 AC_MSG_CHECKING(the size of gmon pointers) 35 AC_TRY_RUN([#include <stdio.h> 36 #include <stdlib.h> 37 #if HAVE_SYS_GMON_OUT_H 38 #include <sys/gmon_out.h> 39 #endif 40 main() 41 { 42 #if HAVE_SYS_GMON_OUT_H 43 struct gmon_cg_arc_record arc; 44 FILE *f=fopen("conftestval", "w"); 45 if (!f) exit(1); 46 fprintf(f, "%d\n", sizeof(arc.from_pc)); 47 exit(0); 48 #else 49 FILE *f=fopen("conftestval", "w"); 50 if (!f) exit(1); 51 fprintf(f, "%d\n", (int) sizeof(char *)); 52 exit(1); 53 #endif 54 }], gmon_ptr_size=`cat conftestval`, gmon_ptr_size=4, gmon_ptr_size=4) 55 AC_MSG_RESULT($gmon_ptr_size) 56 57 AC_DEFINE_UNQUOTED(GMON_PTR_SIZE, $gmon_ptr_size) 58 59 build_warnings="-W -Wall" 34 build_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes" 60 35 AC_ARG_ENABLE(build-warnings, 61 36 [ --enable-build-warnings Enable build-time compiler warnings if gcc is used], -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/corefile.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* corefile.c 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002, 2003 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 23 23 #include "libiberty.h" 24 24 #include "gprof.h" 25 #include "search_list.h" 26 #include "source.h" 27 #include "symtab.h" 25 28 #include "corefile.h" 26 #include "symtab.h"27 29 28 30 bfd *core_bfd; … … 36 38 37 39 /* For mapping symbols to specific .o files during file ordering. */ 38 struct function_map39 {40 char *function_name;41 char *file_name;42 };43 44 40 struct function_map *symbol_map; 45 41 unsigned int symbol_map_count; 42 43 static void read_function_mappings PARAMS ((const char *)); 44 static int core_sym_class PARAMS ((asymbol *)); 45 static bfd_boolean get_src_info 46 PARAMS ((bfd_vma, const char **, const char **, int *)); 46 47 47 48 extern void i386_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); … … 50 51 extern void tahoe_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 51 52 extern void sparc_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 53 extern void mips_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 52 54 53 55 static void 54 DEFUN (read_function_mappings, (filename), const char *filename) 56 read_function_mappings (filename) 57 const char *filename; 55 58 { 56 59 FILE *file = fopen (filename, "r"); … … 138 141 139 142 void 140 DEFUN (core_init, (a_out_name), const char *a_out_name) 143 core_init (aout_name) 144 const char *aout_name; 141 145 { 142 core_bfd = bfd_openr (a _out_name, 0);146 core_bfd = bfd_openr (aout_name, 0); 143 147 144 148 if (!core_bfd) 145 149 { 146 perror (a _out_name);150 perror (aout_name); 147 151 done (1); 148 152 } … … 150 154 if (!bfd_check_format (core_bfd, bfd_object)) 151 155 { 152 fprintf (stderr, _("%s: %s: not in a.out format\n"), whoami, a _out_name);156 fprintf (stderr, _("%s: %s: not in a.out format\n"), whoami, aout_name); 153 157 done (1); 154 158 } … … 162 166 { 163 167 fprintf (stderr, _("%s: can't find .text section in %s\n"), 164 whoami, a _out_name);168 whoami, aout_name); 165 169 done (1); 166 170 } … … 173 177 if (core_num_syms < 0) 174 178 { 175 fprintf (stderr, "%s: %s: %s\n", whoami, a _out_name,179 fprintf (stderr, "%s: %s: %s\n", whoami, aout_name, 176 180 bfd_errmsg (bfd_get_error ())); 177 181 done (1); … … 183 187 if (core_num_syms < 0) 184 188 { 185 fprintf (stderr, "%s: %s: %s\n", whoami, a _out_name,189 fprintf (stderr, "%s: %s: %s\n", whoami, aout_name, 186 190 bfd_errmsg (bfd_get_error ())); 187 191 done (1); … … 213 217 214 218 void 215 DEFUN (core_get_text_space, (core_bfd), bfd * core_bfd) 219 core_get_text_space (cbfd) 220 bfd *cbfd; 216 221 { 217 core_text_space = (PTR) malloc ( core_text_sect->_raw_size);222 core_text_space = (PTR) malloc ((unsigned int) core_text_sect->_raw_size); 218 223 219 224 if (!core_text_space) … … 224 229 } 225 230 226 if (!bfd_get_section_contents (c ore_bfd, core_text_sect, core_text_space,227 0, core_text_sect->_raw_size))231 if (!bfd_get_section_contents (cbfd, core_text_sect, core_text_space, 232 (bfd_vma) 0, core_text_sect->_raw_size)) 228 233 { 229 234 bfd_perror ("bfd_get_section_contents"); … … 238 243 239 244 void 240 DEFUN (find_call, (parent, p_lowpc, p_highpc), 241 Sym * parent AND bfd_vma p_lowpc AND bfd_vma p_highpc) 245 find_call (parent, p_lowpc, p_highpc) 246 Sym *parent; 247 bfd_vma p_lowpc; 248 bfd_vma p_highpc; 242 249 { 243 250 switch (bfd_get_arch (core_bfd)) … … 261 268 case bfd_arch_tahoe: 262 269 tahoe_find_call (parent, p_lowpc, p_highpc); 270 break; 271 272 case bfd_arch_mips: 273 mips_find_call (parent, p_lowpc, p_highpc); 263 274 break; 264 275 … … 278 289 279 290 static int 280 DEFUN (core_sym_class, (sym), asymbol * sym) 291 core_sym_class (sym) 292 asymbol *sym; 281 293 { 282 294 symbol_info syminfo; … … 360 372 /* Get whatever source info we can get regarding address ADDR. */ 361 373 362 static bool 363 DEFUN (get_src_info, (addr, filename, name, line_num), 364 bfd_vma addr AND const char **filename AND const char **name 365 AND int *line_num) 374 static bfd_boolean 375 get_src_info (addr, filename, name, line_num) 376 bfd_vma addr; 377 const char **filename; 378 const char **name; 379 int *line_num; 366 380 { 367 381 const char *fname = 0, *func_name = 0; … … 393 407 394 408 void 395 core_create_function_syms (c ore_bfd)396 bfd *c ore_bfd ATTRIBUTE_UNUSED;409 core_create_function_syms (cbfd) 410 bfd *cbfd ATTRIBUTE_UNUSED; 397 411 { 398 bfd_vma min_vma = ~0, max_vma = 0; 412 bfd_vma min_vma = ~(bfd_vma) 0; 413 bfd_vma max_vma = 0; 399 414 int class; 400 415 long i, found, skip; … … 529 544 symtab.limit->is_static = TRUE; 530 545 546 /* Keep track of the minimum and maximum vma addresses used by all 547 symbols. When computing the max_vma, use the ending address of the 548 section containing the symbol, if available. */ 531 549 min_vma = MIN (symtab.limit->addr, min_vma); 532 max_vma = MAX (symtab.limit->addr, max_vma); 550 if (core_syms[i]->section) 551 max_vma = MAX (core_syms[i]->section->vma 552 + core_syms[i]->section->_cooked_size - 1, max_vma); 553 else 554 max_vma = MAX (symtab.limit->addr, max_vma); 533 555 534 556 /* If we see "main" without an initial '_', we assume names … … 555 577 symtab.limit->name = "<hicore>"; 556 578 symtab.limit->addr = max_vma + 1; 557 symtab.limit->end_addr = ~ 0;579 symtab.limit->end_addr = ~(bfd_vma) 0; 558 580 ++symtab.limit; 559 581 … … 566 588 567 589 void 568 DEFUN (core_create_line_syms, (core_bfd), bfd * core_bfd) 590 core_create_line_syms (cbfd) 591 bfd *cbfd; 569 592 { 570 593 char *prev_name, *prev_filename; 571 int prev_name_len, prev_filename_len;572 bfd_vma vma, min_vma = ~ 0, max_vma = 0;594 unsigned int prev_name_len, prev_filename_len; 595 bfd_vma vma, min_vma = ~(bfd_vma) 0, max_vma = 0; 573 596 bfd_vma offset; 574 597 Sym *prev, dummy, *sentinel, *sym; … … 580 603 cases where parts of a program were not compiled with -g. For 581 604 those parts we still want to get info at the function level. */ 582 core_create_function_syms (c ore_bfd);605 core_create_function_syms (cbfd); 583 606 584 607 /* Pass 1 - counter number of symbols. */ … … 600 623 for (offset = 0; offset < core_text_sect->_raw_size; offset += min_insn_size) 601 624 { 602 int len;625 unsigned int len; 603 626 604 627 vma = core_text_sect->vma + offset; … … 713 736 714 737 /* Update sentinels. */ 715 sentinel = sym_lookup (&symtab, 0); 716 717 if (strcmp (sentinel->name, "<locore>") == 0 738 sentinel = sym_lookup (&symtab, (bfd_vma) 0); 739 740 if (sentinel 741 && strcmp (sentinel->name, "<locore>") == 0 718 742 && min_vma <= sentinel->end_addr) 719 743 sentinel->end_addr = min_vma - 1; 720 744 721 sentinel = sym_lookup (&symtab, ~0); 722 723 if (strcmp (sentinel->name, "<hicore>") == 0 && max_vma >= sentinel->addr) 745 sentinel = sym_lookup (&symtab, ~(bfd_vma) 0); 746 747 if (sentinel 748 && strcmp (sentinel->name, "<hicore>") == 0 749 && max_vma >= sentinel->addr) 724 750 sentinel->addr = max_vma + 1; 725 751 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/corefile.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* corefile.h 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 23 23 #define corefile_h 24 24 25 #include "bfd.h" 25 struct function_map 26 { 27 char *function_name; 28 char *file_name; 29 }; 30 31 extern struct function_map *symbol_map; 32 extern unsigned int symbol_map_count; 26 33 27 34 extern bfd *core_bfd; /* BFD for core-file. */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/dep-in.sed
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 4 4 5 5 s!@INCDIR@!$(INCDIR)!g 6 s!@TOPDIR@/include!$(INCDIR)!g 6 7 s!@BFDDIR@!$(BFDDIR)!g 8 s!@TOPDIR@/bfd!$(BFDDIR)!g 7 9 s!@SRCDIR@/!!g 8 10 s!@OBJDIR@/!!g -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/flat_bl.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 3 3 4 4 #include <stdio.h> 5 #include "ansidecl.h" 5 6 7 void flat_blurb PARAMS ((FILE *)); 6 8 void 7 9 flat_blurb (file) -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/fsf_callg_bl.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 3 3 4 4 #include <stdio.h> 5 #include "ansidecl.h" 5 6 7 void fsf_callg_blurb PARAMS ((FILE *)); 6 8 void 7 9 fsf_callg_blurb (file) -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gconfig.in
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 43 43 /* Define if you have the ANSI C header files. */ 44 44 #undef STDC_HEADERS 45 46 /* Define as the size of a pointer in the target profile file format. */47 #undef GMON_PTR_SIZE48 45 49 46 /* Define if you have the __argz_count function. */ … … 104 101 #undef HAVE_NL_TYPES_H 105 102 103 /* Define if you have the <stdlib.h> header file. */ 104 #undef HAVE_STDLIB_H 105 106 106 /* Define if you have the <string.h> header file. */ 107 107 #undef HAVE_STRING_H … … 112 112 /* Define if you have the <sys/param.h> header file. */ 113 113 #undef HAVE_SYS_PARAM_H 114 115 /* Define if you have the <sys/stat.h> header file. */ 116 #undef HAVE_SYS_STAT_H 117 118 /* Define if you have the <sys/types.h> header file. */ 119 #undef HAVE_SYS_TYPES_H 114 120 115 121 /* Define if you have the <unistd.h> header file. */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gen-c-prog.awk
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 4 4 printf " from %s using the gen-c-prog.awk script. <== */\n\n", FILE 5 5 print "#include <stdio.h>" 6 print "#include \"ansidecl.h\"" 6 7 } 7 8 … … 13 14 curfun = FUNCTION 14 15 print "" 16 print "void ", FUNCTION, "PARAMS ((FILE *));" 15 17 print "void"; 16 18 printf "%s (file)\n", FUNCTION -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gmon.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 /* -2 * Copyright (c) 19 91, 2001 The Regents of the University of California.3 * All rights reserved.1 /* 2 * Copyright (c) 1983, 1991, 1993, 2001 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 5 * Redistribution and use in source and binary forms, with or without … … 11 11 * notice, this list of conditions and the following disclaimer in the 12 12 * documentation and/or other materials provided with the distribution. 13 * 3. All advertising materials mentioning features or use of this software 14 * must display the following acknowledgement: 15 * This product includes software developed by the University of 16 * California, Berkeley and its contributors. 17 * 4. Neither the name of the University nor the names of its contributors 13 * 3. Neither the name of the University nor the names of its contributors 18 14 * may be used to endorse or promote products derived from this software 19 15 * without specific prior written permission. … … 30 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 27 * SUCH DAMAGE. 32 *33 * @(#)gmon.h 5.2 (Berkeley) 5/6/9134 28 */ 35 29 #ifndef gmon_h 36 30 #define gmon_h 37 31 38 struct raw_phdr 39 { 40 /* FIXME: Checking a host compiler define means that we can't use 41 a cross gprof to the alpha. */ 42 char low_pc[GMON_PTR_SIZE]; /* base pc address of sample buffer */ 43 char high_pc[GMON_PTR_SIZE];/* max pc address of sampled buffer */ 44 char ncnt[4]; /* size of sample buffer (plus this header) */ 32 /* Size of the 4.4BSD gmon header */ 33 #define GMON_HDRSIZE_BSD44_32 (4 + 4 + 4 + 4 + 4 + (3 * 4)) 34 #define GMON_HDRSIZE_BSD44_64 (8 + 8 + 4 + 4 + 4 + (3 * 4)) 45 35 46 char version[4]; /* version number */ 47 char profrate[4]; /* profiling clock rate */ 48 char spare[3*4]; /* reserved */ 49 }; 36 #if 0 /* For documentation purposes only. */ 37 struct raw_phdr 38 { 39 char low_pc[sizeof(void *)]; /* base pc address of sample buffer */ 40 char high_pc[sizeof(void *)];/* max pc address of sampled buffer */ 41 char ncnt[4]; /* size of sample buffer (plus this 42 header) */ 43 44 char version[4]; /* version number */ 45 char profrate[4]; /* profiling clock rate */ 46 char spare[3*4]; /* reserved */ 47 }; 48 #endif 50 49 51 50 #define GMONVERSION 0x00051879 52 51 53 struct old_raw_phdr 54 { 55 char low_pc[GMON_PTR_SIZE]; /* base pc address of sample buffer */ 56 char high_pc[GMON_PTR_SIZE];/* max pc address of sampled buffer */ 57 char ncnt[4]; /* size of sample buffer (plus this header) */ 52 /* Size of the old BSD gmon header */ 53 #define GMON_HDRSIZE_OLDBSD_32 (4 + 4 + 4) 58 54 59 /* FIXME: Checking host compiler defines here means that we can't 60 use a cross gprof alpha OSF. */ 55 /* FIXME: Checking host compiler defines here means that we can't 56 use a cross gprof alpha OSF. */ 57 #if defined(__alpha__) && defined (__osf__) 58 #define GMON_HDRSIZE_OLDBSD_64 (8 + 8 + 4 + 4) 59 #else 60 #define GMON_HDRSIZE_OLDBSD_64 (8 + 8 + 4) 61 #endif 62 63 #if 0 /* For documentation purposes only. */ 64 struct old_raw_phdr 65 { 66 char low_pc[sizeof(void *)]; /* base pc address of sample buffer */ 67 char high_pc[sizeof(void *)];/* max pc address of sampled buffer */ 68 char ncnt[4]; /* size of sample buffer (plus this 69 header) */ 61 70 #if defined (__alpha__) && defined (__osf__) 62 /*63 * DEC's OSF v3.0 uses 4 bytes of padding to bring the header to64 * a size that is a multiple of 8.65 */66 char pad[4];71 /* 72 * DEC's OSF v3.0 uses 4 bytes of padding to bring the header to 73 * a size that is a multiple of 8. 74 */ 75 char pad[4]; 67 76 #endif 68 }; 77 }; 78 #endif 69 79 70 80 /* … … 121 131 * might introduce different padding): 122 132 */ 123 struct raw_arc 124 { 125 char from_pc[GMON_PTR_SIZE]; 126 char self_pc[GMON_PTR_SIZE]; 127 char count[4]; 128 }; 133 #if 0 /* For documentation purposes only. */ 134 struct raw_arc 135 { 136 char from_pc[sizeof(void *)]; 137 char self_pc[sizeof(void *)]; 138 char count[sizeof(long)]; 139 }; 140 #endif 129 141 130 142 /* -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gmon_io.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* gmon_io.c - Input and output from/to gmon.out files. 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 21 21 22 22 23 #include "gprof.h" 24 #include "search_list.h" 25 #include "source.h" 26 #include "symtab.h" 23 27 #include "cg_arcs.h" 24 28 #include "basic_blocks.h" 25 #include "bfd.h"26 29 #include "corefile.h" 27 30 #include "call_graph.h" … … 29 32 #include "gmon_out.h" 30 33 #include "gmon.h" /* Fetch header for old format. */ 31 #include "gprof.h"32 34 #include "hertz.h" 33 35 #include "hist.h" 34 36 #include "libiberty.h" 35 37 38 enum gmon_ptr_size { 39 ptr_32bit, 40 ptr_64bit 41 }; 42 43 enum gmon_ptr_signedness { 44 ptr_signed, 45 ptr_unsigned 46 }; 47 48 static enum gmon_ptr_size gmon_get_ptr_size PARAMS ((void)); 49 static enum gmon_ptr_signedness gmon_get_ptr_signedness PARAMS ((void)); 50 51 #ifdef BFD_HOST_U_64_BIT 52 static int gmon_io_read_64 PARAMS ((FILE *, BFD_HOST_U_64_BIT *)); 53 static int gmon_io_write_64 PARAMS ((FILE *, BFD_HOST_U_64_BIT)); 54 #endif 55 static int gmon_read_raw_arc 56 PARAMS ((FILE *, bfd_vma *, bfd_vma *, unsigned long *)); 57 static int gmon_write_raw_arc 58 PARAMS ((FILE *, bfd_vma, bfd_vma, unsigned long)); 59 36 60 int gmon_input = 0; 37 61 int gmon_file_version = 0; /* 0 == old (non-versioned) file format. */ 38 62 63 static enum gmon_ptr_size 64 gmon_get_ptr_size () 65 { 66 int size; 67 68 /* Pick best size for pointers. Start with the ELF size, and if not 69 elf go with the architecture's address size. */ 70 size = bfd_get_arch_size (core_bfd); 71 if (size == -1) 72 size = bfd_arch_bits_per_address (core_bfd); 73 74 switch (size) 75 { 76 case 32: 77 return ptr_32bit; 78 79 case 64: 80 return ptr_64bit; 81 82 default: 83 fprintf (stderr, _("%s: address size has unexpected value of %u\n"), 84 whoami, size); 85 done (1); 86 } 87 } 88 89 static enum gmon_ptr_signedness 90 gmon_get_ptr_signedness () 91 { 92 int sext; 93 94 /* Figure out whether to sign extend. If BFD doesn't know, assume no. */ 95 sext = bfd_get_sign_extend_vma (core_bfd); 96 if (sext == -1) 97 return ptr_unsigned; 98 return (sext ? ptr_signed : ptr_unsigned); 99 } 100 39 101 int 40 DEFUN (gmon_io_read_vma, (ifp, valp), FILE * ifp AND bfd_vma *valp) 102 gmon_io_read_32 (ifp, valp) 103 FILE *ifp; 104 unsigned int *valp; 105 { 106 char buf[4]; 107 108 if (fread (buf, 1, 4, ifp) != 4) 109 return 1; 110 *valp = bfd_get_32 (core_bfd, buf); 111 return 0; 112 } 113 114 #ifdef BFD_HOST_U_64_BIT 115 static int 116 gmon_io_read_64 (ifp, valp) 117 FILE *ifp; 118 BFD_HOST_U_64_BIT *valp; 41 119 { 42 120 char buf[8]; 43 bfd_vma val; 44 45 switch (GMON_PTR_SIZE) 46 { 47 case 4: 48 if (fread (buf, 1, 4, ifp) != 4) 121 122 if (fread (buf, 1, 8, ifp) != 8) 123 return 1; 124 *valp = bfd_get_64 (core_bfd, buf); 125 return 0; 126 } 127 #endif 128 129 int 130 gmon_io_read_vma (ifp, valp) 131 FILE *ifp; 132 bfd_vma *valp; 133 { 134 unsigned int val32; 135 #ifdef BFD_HOST_U_64_BIT 136 BFD_HOST_U_64_BIT val64; 137 #endif 138 139 switch (gmon_get_ptr_size ()) 140 { 141 case ptr_32bit: 142 if (gmon_io_read_32 (ifp, &val32)) 49 143 return 1; 50 val = bfd_get_32 (core_bfd, buf); 144 if (gmon_get_ptr_signedness () == ptr_signed) 145 *valp = (int) val32; 146 else 147 *valp = val32; 51 148 break; 52 149 53 case 8: 54 if (fread (buf, 1, 8, ifp) != 8) 150 #ifdef BFD_HOST_U_64_BIT 151 case ptr_64bit: 152 if (gmon_io_read_64 (ifp, &val64)) 55 153 return 1; 56 val = bfd_get_64 (core_bfd, buf); 154 #ifdef BFD_HOST_64_BIT 155 if (gmon_get_ptr_signedness () == ptr_signed) 156 *valp = (BFD_HOST_64_BIT) val64; 157 else 158 #endif 159 *valp = val64; 57 160 break; 58 59 default: 60 fprintf (stderr, _("%s: GMON_PTR_SIZE has unexpected value of %u\n"), 61 whoami, GMON_PTR_SIZE); 62 done (1); 63 } 64 *valp = val; 161 #endif 162 } 65 163 return 0; 66 164 } 67 165 68 166 int 69 DEFUN (gmon_io_read_32, (ifp, valp), FILE * ifp AND unsigned int *valp) 167 gmon_io_read (ifp, buf, n) 168 FILE *ifp; 169 char *buf; 170 size_t n; 171 { 172 if (fread (buf, 1, n, ifp) != n) 173 return 1; 174 return 0; 175 } 176 177 int 178 gmon_io_write_32 (ofp, val) 179 FILE *ofp; 180 unsigned int val; 70 181 { 71 182 char buf[4]; 72 183 73 if (fread (buf, 1, 4, ifp) != 4) 74 return 1; 75 *valp = bfd_get_32 (core_bfd, buf); 76 return 0; 77 } 184 bfd_put_32 (core_bfd, (bfd_vma) val, buf); 185 if (fwrite (buf, 1, 4, ofp) != 4) 186 return 1; 187 return 0; 188 } 189 190 #ifdef BFD_HOST_U_64_BIT 191 static int 192 gmon_io_write_64 (ofp, val) 193 FILE *ofp; 194 BFD_HOST_U_64_BIT val; 195 { 196 char buf[8]; 197 198 bfd_put_64 (core_bfd, (bfd_vma) val, buf); 199 if (fwrite (buf, 1, 8, ofp) != 8) 200 return 1; 201 return 0; 202 } 203 #endif 78 204 79 205 int 80 DEFUN (gmon_io_read, (ifp, buf, n), FILE * ifp AND char *buf AND size_t n) 81 { 82 if (fread (buf, 1, n, ifp) != n) 83 return 1; 84 return 0; 85 } 86 87 int 88 DEFUN (gmon_io_write_vma, (ofp, val), FILE * ofp AND bfd_vma val) 89 { 90 char buf[8]; 91 92 switch (GMON_PTR_SIZE) 93 { 94 case 4: 95 bfd_put_32 (core_bfd, val, buf); 96 if (fwrite (buf, 1, 4, ofp) != 4) 206 gmon_io_write_vma (ofp, val) 207 FILE *ofp; 208 bfd_vma val; 209 { 210 211 switch (gmon_get_ptr_size ()) 212 { 213 case ptr_32bit: 214 if (gmon_io_write_32 (ofp, (unsigned int) val)) 97 215 return 1; 98 216 break; 99 217 100 case 8: 101 bfd_put_64 (core_bfd, val, buf);102 if ( fwrite (buf, 1, 8, ofp) != 8)218 #ifdef BFD_HOST_U_64_BIT 219 case ptr_64bit: 220 if (gmon_io_write_64 (ofp, (BFD_HOST_U_64_BIT) val)) 103 221 return 1; 104 222 break; 105 106 default: 107 fprintf (stderr, _("%s: GMON_PTR_SIZE has unexpected value of %u\n"), 108 whoami, GMON_PTR_SIZE); 109 done (1); 223 #endif 110 224 } 111 225 return 0; … … 113 227 114 228 int 115 DEFUN (gmon_io_write_32, (ofp, val), FILE * ofp AND unsigned int val) 116 { 117 char buf[4]; 118 119 bfd_put_32 (core_bfd, val, buf); 120 if (fwrite (buf, 1, 4, ofp) != 4) 121 return 1; 122 return 0; 123 } 124 125 int 126 DEFUN (gmon_io_write_8, (ofp, val), FILE * ofp AND unsigned char val) 229 gmon_io_write_8 (ofp, val) 230 FILE *ofp; 231 unsigned int val; 127 232 { 128 233 char buf[1]; … … 135 240 136 241 int 137 DEFUN (gmon_io_write, (ofp, buf, n), FILE * ofp AND char *buf AND size_t n) 242 gmon_io_write (ofp, buf, n) 243 FILE *ofp; 244 char *buf; 245 size_t n; 138 246 { 139 247 if (fwrite (buf, 1, n, ofp) != n) … … 142 250 } 143 251 144 /* get_vma and put_vma are for backwards compatibility only */ 145 static bfd_vma 146 DEFUN (get_vma, (abfd, addr), bfd * abfd AND bfd_byte * addr) 147 { 148 switch (sizeof (char*)) 149 { 150 case 4: 151 return bfd_get_32 (abfd, addr); 152 case 8: 153 return bfd_get_64 (abfd, addr); 154 default: 155 fprintf (stderr, _("%s: bfd_vma has unexpected size of %ld bytes\n"), 156 whoami, (long) sizeof (char*)); 157 done (1); 158 } 159 } 160 161 static void 162 DEFUN (put_vma, (abfd, val, addr), bfd * abfd AND bfd_vma val AND bfd_byte * addr) 163 { 164 switch (sizeof (char*)) 165 { 166 case 4: 167 bfd_put_32 (abfd, val, addr); 252 static int 253 gmon_read_raw_arc (ifp, fpc, spc, cnt) 254 FILE *ifp; 255 bfd_vma *fpc; 256 bfd_vma *spc; 257 unsigned long *cnt; 258 { 259 #ifdef BFD_HOST_U_64_BIT 260 BFD_HOST_U_64_BIT cnt64; 261 #endif 262 unsigned int cnt32; 263 264 if (gmon_io_read_vma (ifp, fpc) 265 || gmon_io_read_vma (ifp, spc)) 266 return 1; 267 268 switch (gmon_get_ptr_size ()) 269 { 270 case ptr_32bit: 271 if (gmon_io_read_32 (ifp, &cnt32)) 272 return 1; 273 *cnt = cnt32; 168 274 break; 169 case 8: 170 bfd_put_64 (abfd, val, addr); 275 276 #ifdef BFD_HOST_U_64_BIT 277 case ptr_64bit: 278 if (gmon_io_read_64 (ifp, &cnt64)) 279 return 1; 280 *cnt = cnt64; 171 281 break; 172 default: 173 fprintf (stderr, _("%s: bfd_vma has unexpected size of %ld bytes\n"), 174 whoami, (long) sizeof (char*)); 175 done (1); 176 } 282 #endif 283 } 284 return 0; 285 } 286 287 static int 288 gmon_write_raw_arc (ofp, fpc, spc, cnt) 289 FILE *ofp; 290 bfd_vma fpc; 291 bfd_vma spc; 292 unsigned long cnt; 293 { 294 295 if (gmon_io_write_vma (ofp, fpc) 296 || gmon_io_write_vma (ofp, spc)) 297 return 1; 298 299 switch (gmon_get_ptr_size ()) 300 { 301 case ptr_32bit: 302 if (gmon_io_write_32 (ofp, (unsigned int) cnt)) 303 return 1; 304 break; 305 306 #ifdef BFD_HOST_U_64_BIT 307 case ptr_64bit: 308 if (gmon_io_write_64 (ofp, (BFD_HOST_U_64_BIT) cnt)) 309 return 1; 310 break; 311 #endif 312 } 313 return 0; 177 314 } 178 315 179 316 void 180 DEFUN (gmon_out_read, (filename), const char *filename) 317 gmon_out_read (filename) 318 const char *filename; 181 319 { 182 320 FILE *ifp; … … 273 411 int ncnt; 274 412 }; 275 int i, samp_bytes, header_size ;413 int i, samp_bytes, header_size = 0; 276 414 unsigned long count; 277 415 bfd_vma from_pc, self_pc; 278 struct raw_arc raw_arc;279 struct raw_phdr raw;280 416 static struct hdr h; 281 417 UNIT raw_bin_count; 282 418 struct hdr tmp; 419 int version; 283 420 284 421 /* Information from a gmon.out file is in two parts: an array of … … 295 432 } 296 433 297 if (fread (&raw, 1, sizeof (struct raw_phdr), ifp) 298 != sizeof (struct raw_phdr)) 299 { 300 fprintf (stderr, _("%s: file too short to be a gmon file\n"), 434 /* The beginning of the old BSD header and the 4.4BSD header 435 are the same: lowpc, highpc, ncnt */ 436 if (gmon_io_read_vma (ifp, &tmp.low_pc) 437 || gmon_io_read_vma (ifp, &tmp.high_pc) 438 || gmon_io_read_32 (ifp, &tmp.ncnt)) 439 { 440 bad_gmon_file: 441 fprintf (stderr, _("%s: file too short to be a gmon file\n"), 301 442 filename); 302 443 done (1); 303 444 } 304 445 305 tmp.low_pc = get_vma (core_bfd, (bfd_byte *) &raw.low_pc[0]); 306 tmp.high_pc = get_vma (core_bfd, (bfd_byte *) &raw.high_pc[0]); 307 tmp.ncnt = bfd_get_32 (core_bfd, (bfd_byte *) &raw.ncnt[0]); 308 309 if (bfd_get_32 (core_bfd, (bfd_byte *) &raw.version[0]) 310 == GMONVERSION) 446 /* Check to see if this a 4.4BSD-style header. */ 447 if (gmon_io_read_32 (ifp, &version)) 448 goto bad_gmon_file; 449 450 if (version == GMONVERSION) 311 451 { 312 452 int profrate; 313 453 314 454 /* 4.4BSD format header. */ 315 profrate = bfd_get_32 (core_bfd, (bfd_byte *) &raw.profrate[0]); 455 if (gmon_io_read_32 (ifp, &profrate)) 456 goto bad_gmon_file; 316 457 317 458 if (!s_highpc) … … 325 466 } 326 467 327 header_size = sizeof (struct raw_phdr); 468 switch (gmon_get_ptr_size ()) 469 { 470 case ptr_32bit: 471 header_size = GMON_HDRSIZE_BSD44_32; 472 break; 473 474 case ptr_64bit: 475 header_size = GMON_HDRSIZE_BSD44_64; 476 break; 477 } 328 478 } 329 479 else … … 337 487 } 338 488 339 if (fseek (ifp, sizeof (struct old_raw_phdr), SEEK_SET) < 0) 340 { 341 perror (filename); 342 done (1); 343 } 344 345 header_size = sizeof (struct old_raw_phdr); 489 switch (gmon_get_ptr_size ()) 490 { 491 case ptr_32bit: 492 header_size = GMON_HDRSIZE_OLDBSD_32; 493 break; 494 495 case ptr_64bit: 496 header_size = GMON_HDRSIZE_OLDBSD_64; 497 break; 498 } 499 } 500 501 /* Position the file to after the header. */ 502 if (fseek (ifp, header_size, SEEK_SET) < 0) 503 { 504 perror (filename); 505 done (1); 346 506 } 347 507 … … 408 568 /* The rest of the file consists of a bunch of 409 569 <from,self,count> tuples. */ 410 while ( fread (&raw_arc, sizeof (raw_arc), 1, ifp) == 1)570 while (gmon_read_raw_arc (ifp, &from_pc, &self_pc, &count) == 0) 411 571 { 412 572 ++narcs; 413 from_pc = get_vma (core_bfd, (bfd_byte *) raw_arc.from_pc);414 self_pc = get_vma (core_bfd, (bfd_byte *) raw_arc.self_pc);415 count = bfd_get_32 (core_bfd, (bfd_byte *) raw_arc.count);416 573 417 574 DBG (SAMPLEDEBUG, … … 449 606 printf (_("File `%s' (version %d) contains:\n"), 450 607 filename, gmon_file_version); 451 printf (_("\t%d histogram record%s\n"), 452 nhist, nhist == 1 ? "" : "s"); 453 printf (_("\t%d call-graph record%s\n"), 454 narcs, narcs == 1 ? "" : "s"); 455 printf (_("\t%d basic-block count record%s\n"), 456 nbbs, nbbs == 1 ? "" : "s"); 608 printf (nhist == 1 ? 609 _("\t%d histogram record\n") : 610 _("\t%d histogram records\n"), nhist); 611 printf (narcs == 1 ? 612 _("\t%d call-graph record\n") : 613 _("\t%d call-graph records\n"), narcs); 614 printf (nbbs == 1 ? 615 _("\t%d basic-block count record\n") : 616 _("\t%d basic-block count records\n"), nbbs); 457 617 first_output = FALSE; 458 618 } … … 461 621 462 622 void 463 DEFUN (gmon_out_write, (filename), const char *filename) 623 gmon_out_write (filename) 624 const char *filename; 464 625 { 465 626 FILE *ofp; … … 478 639 479 640 memcpy (&ghdr.cookie[0], GMON_MAGIC, 4); 480 bfd_put_32 (core_bfd, GMON_VERSION, (bfd_byte *) ghdr.version);641 bfd_put_32 (core_bfd, (bfd_vma) GMON_VERSION, (bfd_byte *) ghdr.version); 481 642 482 643 if (fwrite (&ghdr, sizeof (ghdr), 1, ofp) != 1) … … 500 661 else if (file_format == FF_BSD || file_format == FF_BSD44) 501 662 { 502 struct raw_arc raw_arc;503 663 UNIT raw_bin_count; 504 struct raw_phdr h; 505 int i; 664 int i, hdrsize; 665 unsigned padsize; 666 char pad[3*4]; 506 667 Arc *arc; 507 668 Sym *sym; 508 669 509 memset (&h, 0, sizeof h); 510 put_vma (core_bfd, s_lowpc, (bfd_byte *) &h.low_pc); 511 put_vma (core_bfd, s_highpc, (bfd_byte *) &h.high_pc); 512 bfd_put_32 (core_bfd, 513 hist_num_bins * sizeof (UNIT) + sizeof (struct raw_phdr), 514 (bfd_byte *) &h.ncnt); 515 516 /* Write header. Use new style BSD format is explicitly 517 specified, or if the profiling rate is non-standard; 518 otherwise, use the old BSD format. */ 670 memset (pad, 0, sizeof (pad)); 671 672 hdrsize = 0; 673 /* Decide how large the header will be. Use the 4.4BSD format 674 header if explicitly specified, or if the profiling rate is 675 non-standard. Otherwise, use the old BSD format. */ 519 676 if (file_format == FF_BSD44 520 || hz != hertz ()) 521 { 522 bfd_put_32 (core_bfd, GMONVERSION, (bfd_byte *) &h.version); 523 bfd_put_32 (core_bfd, hz, (bfd_byte *) &h.profrate); 524 if (fwrite (&h, sizeof (struct raw_phdr), 1, ofp) != 1) 677 || hz != hertz()) 678 { 679 padsize = 3*4; 680 switch (gmon_get_ptr_size ()) 681 { 682 case ptr_32bit: 683 hdrsize = GMON_HDRSIZE_BSD44_32; 684 break; 685 686 case ptr_64bit: 687 hdrsize = GMON_HDRSIZE_BSD44_64; 688 break; 689 } 690 } 691 else 692 { 693 padsize = 0; 694 switch (gmon_get_ptr_size ()) 695 { 696 case ptr_32bit: 697 hdrsize = GMON_HDRSIZE_OLDBSD_32; 698 break; 699 700 case ptr_64bit: 701 hdrsize = GMON_HDRSIZE_OLDBSD_64; 702 /* FIXME: Checking host compiler defines here means that we can't 703 use a cross gprof alpha OSF. */ 704 #if defined(__alpha__) && defined (__osf__) 705 padsize = 4; 706 #endif 707 break; 708 } 709 } 710 711 /* Write the parts of the headers that are common to both the 712 old BSD and 4.4BSD formats. */ 713 if (gmon_io_write_vma (ofp, s_lowpc) 714 || gmon_io_write_vma (ofp, s_highpc) 715 || gmon_io_write_32 (ofp, hist_num_bins * sizeof (UNIT) + hdrsize)) 716 { 717 perror (filename); 718 done (1); 719 } 720 721 /* Write out the 4.4BSD header bits, if that's what we're using. */ 722 if (file_format == FF_BSD44 723 || hz != hertz()) 724 { 725 if (gmon_io_write_32 (ofp, GMONVERSION) 726 || gmon_io_write_32 (ofp, (unsigned int) hz)) 525 727 { 526 728 perror (filename); … … 528 730 } 529 731 } 530 else 531 { 532 if (fwrite (&h, sizeof (struct old_raw_phdr), 1, ofp) != 1) 732 733 /* Now write out any necessary padding after the meaningful 734 header bits. */ 735 if (padsize != 0 736 && fwrite (pad, 1, padsize, ofp) != padsize) 737 { 738 perror (filename); 739 done (1); 740 } 741 742 /* Dump the samples. */ 743 for (i = 0; i < hist_num_bins; ++i) 744 { 745 bfd_put_16 (core_bfd, (bfd_vma) hist_sample[i], 746 (bfd_byte *) &raw_bin_count[0]); 747 if (fwrite (&raw_bin_count[0], sizeof (raw_bin_count), 1, ofp) != 1) 533 748 { 534 749 perror (filename); … … 537 752 } 538 753 539 /* Dump the samples. */540 for (i = 0; i < hist_num_bins; ++i)541 {542 bfd_put_16 (core_bfd, hist_sample[i], (bfd_byte *) & raw_bin_count[0]);543 if (fwrite (&raw_bin_count[0], sizeof (raw_bin_count), 1, ofp) != 1)544 {545 perror (filename);546 done (1);547 }548 }549 550 754 /* Dump the normalized raw arc information. */ 551 755 for (sym = symtab.base; sym < symtab.limit; ++sym) … … 553 757 for (arc = sym->cg.children; arc; arc = arc->next_child) 554 758 { 555 put_vma (core_bfd, arc->parent->addr, 556 (bfd_byte *) raw_arc.from_pc); 557 put_vma (core_bfd, arc->child->addr, 558 (bfd_byte *) raw_arc.self_pc); 559 bfd_put_32 (core_bfd, arc->count, (bfd_byte *) raw_arc.count); 560 if (fwrite (&raw_arc, sizeof (raw_arc), 1, ofp) != 1) 759 if (gmon_write_raw_arc (ofp, arc->parent->addr, 760 arc->child->addr, arc->count)) 561 761 { 562 762 perror (filename); -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gmon_io.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* gmon_io.h 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 22 22 #ifndef gmon_io_h 23 23 #define gmon_io_h 24 25 #include "bfd.h"26 #include "gmon.h"27 24 28 25 /* Some platforms need to put stdin into binary mode, to read … … 56 53 extern int gmon_io_write_vma PARAMS ((FILE *ifp, bfd_vma val)); 57 54 extern int gmon_io_write_32 PARAMS ((FILE *ifp, unsigned int val)); 58 extern int gmon_io_write_8 PARAMS ((FILE *ifp, unsigned charval));55 extern int gmon_io_write_8 PARAMS ((FILE *ifp, unsigned int val)); 59 56 extern int gmon_io_write PARAMS ((FILE *ifp, char *buf, size_t n)); 60 57 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gmon_out.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 26 26 #define gmon_out_h 27 27 28 #include <gconfig.h>29 30 28 #define GMON_MAGIC "gmon" /* magic cookie */ 31 29 #define GMON_VERSION 1 /* version number */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.1
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 .\" Copyright (c) 1983, 1990 The Regents of the University of California. 2 .\" All rights reserved. 1 .\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13 3 2 .\" 4 .\" Redistribution and use in source and binary forms are permitted provided 5 .\" that: (1) source distributions retain this entire copyright notice and 6 .\" comment, and (2) distributions including binaries display the following 7 .\" acknowledgement: ``This product includes software developed by the 8 .\" University of California, Berkeley and its contributors'' in the 9 .\" documentation or other materials provided with the distribution and in 10 .\" all advertising materials mentioning features or use of this software. 11 .\" Neither the name of the University nor the names of its contributors may 12 .\" be used to endorse or promote products derived from this software without 13 .\" specific prior written permission. 14 .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED 15 .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF 16 .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 3 .\" Standard preamble: 4 .\" ======================================================================== 5 .de Sh \" Subsection heading 6 .br 7 .if t .Sp 8 .ne 5 9 .PP 10 \fB\\$1\fR 11 .PP 12 .. 13 .de Sp \" Vertical space (when we can't use .PP) 14 .if t .sp .5v 15 .if n .sp 16 .. 17 .de Vb \" Begin verbatim text 18 .ft CW 19 .nf 20 .ne \\$1 21 .. 22 .de Ve \" End verbatim text 23 .ft R 24 .fi 25 .. 26 .\" Set up some character translations and predefined strings. \*(-- will 27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left 28 .\" double quote, and \*(R" will give a right double quote. | will give a 29 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to 30 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' 31 .\" expand to `' in nroff, nothing in troff, for use with C<>. 32 .tr \(*W-|\(bv\*(Tr 33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' 34 .ie n \{\ 35 . ds -- \(*W- 36 . ds PI pi 37 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch 38 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch 39 . ds L" "" 40 . ds R" "" 41 . ds C` "" 42 . ds C' "" 43 'br\} 44 .el\{\ 45 . ds -- \|\(em\| 46 . ds PI \(*p 47 . ds L" `` 48 . ds R" '' 49 'br\} 17 50 .\" 18 .\" @(#)gprof.1 6.6 (Berkeley) 7/24/90 51 .\" If the F register is turned on, we'll generate index entries on stderr for 52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index 53 .\" entries marked with X<> in POD. Of course, you'll have to process the 54 .\" output yourself in some meaningful fashion. 55 .if \nF \{\ 56 . de IX 57 . tm Index:\\$1\t\\n%\t"\\$2" 58 .. 59 . nr % 0 60 . rr F 61 .\} 19 62 .\" 20 .TH GPROF 1 "January 29, 1993" 21 .SH NAME 63 .\" For nroff, turn off justification. Always turn off hyphenation; it makes 64 .\" way too many mistakes in technical documents. 65 .hy 0 66 .\" 67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). 68 .\" Fear. Run. Save yourself. No user-serviceable parts. 69 . \" fudge factors for nroff and troff 70 .if n \{\ 71 . ds #H 0 72 . ds #V .8m 73 . ds #F .3m 74 . ds #[ \f1 75 . ds #] \fP 76 .\} 77 .if t \{\ 78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m) 79 . ds #V .6m 80 . ds #F 0 81 . ds #[ \& 82 . ds #] \& 83 .\} 84 . \" simple accents for nroff and troff 85 .if n \{\ 86 . ds ' \& 87 . ds ` \& 88 . ds ^ \& 89 . ds , \& 90 . ds ~ ~ 91 . ds / 92 .\} 93 .if t \{\ 94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" 95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' 96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' 97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' 98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' 99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' 100 .\} 101 . \" troff and (daisy-wheel) nroff accents 102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' 103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H' 104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] 105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' 106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' 107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] 108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] 109 .ds ae a\h'-(\w'a'u*4/10)'e 110 .ds Ae A\h'-(\w'A'u*4/10)'E 111 . \" corrections for vroff 112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' 113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' 114 . \" for low resolution devices (crt and lpr) 115 .if \n(.H>23 .if \n(.V>19 \ 116 \{\ 117 . ds : e 118 . ds 8 ss 119 . ds o a 120 . ds d- d\h'-1'\(ga 121 . ds D- D\h'-1'\(hy 122 . ds th \o'bp' 123 . ds Th \o'LP' 124 . ds ae ae 125 . ds Ae AE 126 .\} 127 .rm #[ #] #H #V #F C 128 .\" ======================================================================== 129 .\" 130 .IX Title "GPROF 1" 131 .TH GPROF 1 "2003-04-27" "binutils-2.13.90" "GNU" 132 .SH "NAME" 22 133 gprof \- display call graph profile data 23 .SH SYNOPSIS 24 .B gprof [ \-abcsz ] [ \-e|\-E 25 .I name 26 .B ] [ \-f|\-F 27 .I name 28 .B ] 29 .B [ \-k 30 .I fromname toname 31 .B ] [ 32 .I objfile 33 .B [ 34 .I gmon.out 35 .B ] 36 .B ] 37 .SH DESCRIPTION 38 .B gprof 39 produces an execution profile of C, Pascal, or Fortran77 programs. 40 The effect of called routines is incorporated in the profile of each caller. 41 The profile data is taken from the call graph profile file 42 \&(`gmon.out' default) which is created by programs 43 that are compiled with the 44 .B \-pg 45 option of 46 .BR cc ( 1 ) , 47 .BR pc ( 1 ) , 48 and 49 .BR f77 ( 1 ) . 50 The 51 .B \-pg 52 option also links in versions of the library routines 53 that are compiled for profiling. 54 .B Gprof 55 reads the given object file (the default is `a.out') 56 and establishes the relation between its symbol table 57 and the call graph profile from `gmon.out'. 58 If more than one profile file is specified, 59 the 60 .B gprof 134 .SH "SYNOPSIS" 135 .IX Header "SYNOPSIS" 136 gprof [ \-[abcDhilLsTvwxyz] ] [ \-[ACeEfFJnNOpPqQZ][\fIname\fR] ] 137 [ \-I \fIdirs\fR ] [ \-d[\fInum\fR] ] [ \-k \fIfrom/to\fR ] 138 [ \-m \fImin-count\fR ] [ \-t \fItable-length\fR ] 139 [ \-\-[no\-]annotated\-source[=\fIname\fR] ] 140 [ \-\-[no\-]exec\-counts[=\fIname\fR] ] 141 [ \-\-[no\-]flat\-profile[=\fIname\fR] ] [ \-\-[no\-]graph[=\fIname\fR] ] 142 [ \-\-[no\-]time=\fIname\fR] [ \-\-all\-lines ] [ \-\-brief ] 143 [ \-\-debug[=\fIlevel\fR] ] [ \-\-function\-ordering ] 144 [ \-\-file\-ordering ] [ \-\-directory\-path=\fIdirs\fR ] 145 [ \-\-display\-unused\-functions ] [ \-\-file\-format=\fIname\fR ] 146 [ \-\-file\-info ] [ \-\-help ] [ \-\-line ] [ \-\-min\-count=\fIn\fR ] 147 [ \-\-no\-static ] [ \-\-print\-path ] [ \-\-separate\-files ] 148 [ \-\-static\-call\-graph ] [ \-\-sum ] [ \-\-table\-length=\fIlen\fR ] 149 [ \-\-traditional ] [ \-\-version ] [ \-\-width=\fIn\fR ] 150 [ \-\-ignore\-non\-functions ] [ \-\-demangle[=\fI\s-1STYLE\s0\fR] ] 151 [ \-\-no\-demangle ] [ \fIimage-file\fR ] [ \fIprofile-file\fR ... ] 152 .SH "DESCRIPTION" 153 .IX Header "DESCRIPTION" 154 \&\f(CW\*(C`gprof\*(C'\fR produces an execution profile of C, Pascal, or Fortran77 155 programs. The effect of called routines is incorporated in the profile 156 of each caller. The profile data is taken from the call graph profile file 157 (\fIgmon.out\fR default) which is created by programs 158 that are compiled with the \fB\-pg\fR option of 159 \&\f(CW\*(C`cc\*(C'\fR, \f(CW\*(C`pc\*(C'\fR, and \f(CW\*(C`f77\*(C'\fR. 160 The \fB\-pg\fR option also links in versions of the library routines 161 that are compiled for profiling. \f(CW\*(C`Gprof\*(C'\fR reads the given object 162 file (the default is \f(CW\*(C`a.out\*(C'\fR) and establishes the relation between 163 its symbol table and the call graph profile from \fIgmon.out\fR. 164 If more than one profile file is specified, the \f(CW\*(C`gprof\*(C'\fR 61 165 output shows the sum of the profile information in the given profile files. 62 166 .PP 63 .B Gprof 64 calculates the amount of time spent in each routine. 167 \&\f(CW\*(C`Gprof\*(C'\fR calculates the amount of time spent in each routine. 65 168 Next, these times are propagated along the edges of the call graph. 66 169 Cycles are discovered, and calls into a cycle are made to share the time 67 170 of the cycle. 68 The first listing shows the functions 69 sorted according to the time they represent 70 including the time of their call graph descendants. 71 Below each function entry is shown its (direct) call graph children, 72 and how their times are propagated to this function. 73 A similar display above the function shows how this function's time and the 74 time of its descendants is propagated to its (direct) call graph parents. 75 .PP 76 Cycles are also shown, with an entry for the cycle as a whole and 77 a listing of the members of the cycle and their contributions to the 78 time and call counts of the cycle. 79 .PP 80 Second, a flat profile is given, 81 similar to that provided by 82 .BR prof ( 1 ) . 83 This listing gives the total execution times, the call counts, 84 the time in milliseconds the call spent in the routine itself, and 85 the time in milliseconds the call spent in the routine itself including 86 its descendants. 87 .PP 88 Finally, an index of the function names is provided. 89 .SH OPTIONS 90 The following options are available: 91 .TP 92 .B \-a 93 suppresses the printing of statically declared functions. 94 If this option is given, all relevant information about the static function 95 (e.g., time samples, calls to other functions, calls from other functions) 96 belongs to the function loaded just before the static function in the 97 \&`objfile' file. 98 .TP 99 .B \-b 100 suppresses the printing of a description of each field in the profile. 101 .TP 102 .B \-c 103 the static call graph of the program is discovered by a heuristic 104 that examines the text space of the object file. 105 Static-only parents or children are shown 106 with call counts of 0. 107 .TP 108 .BI "\-e " name 109 suppresses the printing of the graph profile entry for routine 110 .I name 111 and all its descendants 112 (unless they have other ancestors that aren't suppressed). 113 More than one 114 .B \-e 115 option may be given. 116 Only one 117 .I name 118 may be given with each 119 .B \-e 120 option. 121 .TP 122 .BI "\-E " name 123 suppresses the printing of the graph profile entry for routine 124 .I name 125 (and its descendants) as 126 .B \-e , 127 above, and also excludes the time spent in 128 .I name 129 (and its descendants) from the total and percentage time computations. 130 (For example, 131 .BI "\-E " mcount 132 .BI "\-E " mcleanup 133 is the default.) 134 .TP 135 .BI "\-f " name 136 prints the graph profile entry of only the specified routine 137 .I name 138 and its descendants. 139 More than one 140 .B \-f 141 option may be given. 142 Only one 143 .I name 144 may be given with each 145 .B \-f 146 option. 147 .TP 148 .BI "\-F " name 149 prints the graph profile entry of only the routine 150 .I name 151 and its descendants (as 152 .B \-f , 153 above) and also uses only the times of the printed routines 154 in total time and percentage computations. 155 More than one 156 .B \-F 157 option may be given. 158 Only one 159 .I name 160 may be given with each 161 .B \-F 162 option. 163 The 164 .B \-F 165 option 166 overrides 167 the 168 .B \-E 169 option. 170 .TP 171 .BI "\-k " "fromname toname" 172 will delete any arcs from routine 173 .I fromname 174 to routine 175 .IR toname . 176 This can be used to break undesired cycles. 177 More than one 178 .B \-k 179 option may be given. 180 Only one pair of routine names may be given with each 181 .B \-k 182 option. 183 .TP 184 .B \-s 185 a profile file `gmon.sum' is produced that represents 186 the sum of the profile information in all the specified profile files. 187 This summary profile file may be given to later 188 executions of gprof (probably also with a 189 .BR \-s ) 190 to accumulate profile data across several runs of an `objfile' file. 191 .TP 192 .B -v 193 prints the version number for gprof, and then exits. 194 .TP 195 .B -z 196 displays routines that have zero usage (as shown by call counts 197 and accumulated time). 198 This is useful with the 199 .B \-c 200 option for discovering which routines were never called. 201 .PP 202 .SH FILES 203 .ta \w'gmon.sum 'u 204 a.out the namelist and text space. 205 .br 206 gmon.out dynamic call graph and profile. 207 .br 208 gmon.sum summarized dynamic call graph and profile. 209 .SH SEE ALSO 210 .BR monitor ( 3 ) , 211 .BR profil ( 2 ) , 212 .BR cc ( 1 ) , 213 .BR prof ( 1 ) 214 .sp 215 ``An Execution Profiler for Modular Programs'', 216 by S. Graham, P. Kessler, M. McKusick; 217 .I 218 Software \- Practice and Experience, 219 Vol. 13, pp. 671-685, 1983. 220 .sp 221 ``gprof: A Call Graph Execution Profiler'', 222 by S. Graham, P. Kessler, M. McKusick; 223 .I 224 Proceedings of the SIGPLAN '82 Symposium on Compiler Construction, 225 SIGPLAN Notices, Vol. 17, No 6, pp. 120-126, June 1982. 226 .SH HISTORY 227 .B Gprof 228 appeared in 4.2 BSD. 229 .SH BUGS 171 .PP 172 Several forms of output are available from the analysis. 173 .PP 174 The \fIflat profile\fR shows how much time your program spent in each function, 175 and how many times that function was called. If you simply want to know 176 which functions burn most of the cycles, it is stated concisely here. 177 .PP 178 The \fIcall graph\fR shows, for each function, which functions called it, which 179 other functions it called, and how many times. There is also an estimate 180 of how much time was spent in the subroutines of each function. This can 181 suggest places where you might try to eliminate function calls that use a 182 lot of time. 183 .PP 184 The \fIannotated source\fR listing is a copy of the program's 185 source code, labeled with the number of times each line of the 186 program was executed. 187 .SH "OPTIONS" 188 .IX Header "OPTIONS" 189 These options specify which of several output formats 190 \&\f(CW\*(C`gprof\*(C'\fR should produce. 191 .PP 192 Many of these options take an optional \fIsymspec\fR to specify 193 functions to be included or excluded. These options can be 194 specified multiple times, with different symspecs, to include 195 or exclude sets of symbols. 196 .PP 197 Specifying any of these options overrides the default (\fB\-p \-q\fR), 198 which prints a flat profile and call graph analysis 199 for all functions. 200 .ie n .IP """\-A[\f(CIsymspec\f(CW]""" 4 201 .el .IP "\f(CW\-A[\f(CIsymspec\f(CW]\fR" 4 202 .IX Item "-A[symspec]" 203 .PD 0 204 .ie n .IP """\-\-annotated\-source[=\f(CIsymspec\f(CW]""" 4 205 .el .IP "\f(CW\-\-annotated\-source[=\f(CIsymspec\f(CW]\fR" 4 206 .IX Item "--annotated-source[=symspec]" 207 .PD 208 The \fB\-A\fR option causes \f(CW\*(C`gprof\*(C'\fR to print annotated source code. 209 If \fIsymspec\fR is specified, print output only for matching symbols. 210 .ie n .IP """\-b""" 4 211 .el .IP "\f(CW\-b\fR" 4 212 .IX Item "-b" 213 .PD 0 214 .ie n .IP """\-\-brief""" 4 215 .el .IP "\f(CW\-\-brief\fR" 4 216 .IX Item "--brief" 217 .PD 218 If the \fB\-b\fR option is given, \f(CW\*(C`gprof\*(C'\fR doesn't print the 219 verbose blurbs that try to explain the meaning of all of the fields in 220 the tables. This is useful if you intend to print out the output, or 221 are tired of seeing the blurbs. 222 .ie n .IP """\-C[\f(CIsymspec\f(CW]""" 4 223 .el .IP "\f(CW\-C[\f(CIsymspec\f(CW]\fR" 4 224 .IX Item "-C[symspec]" 225 .PD 0 226 .ie n .IP """\-\-exec\-counts[=\f(CIsymspec\f(CW]""" 4 227 .el .IP "\f(CW\-\-exec\-counts[=\f(CIsymspec\f(CW]\fR" 4 228 .IX Item "--exec-counts[=symspec]" 229 .PD 230 The \fB\-C\fR option causes \f(CW\*(C`gprof\*(C'\fR to 231 print a tally of functions and the number of times each was called. 232 If \fIsymspec\fR is specified, print tally only for matching symbols. 233 .Sp 234 If the profile data file contains basic-block count records, specifying 235 the \fB\-l\fR option, along with \fB\-C\fR, will cause basic-block 236 execution counts to be tallied and displayed. 237 .ie n .IP """\-i""" 4 238 .el .IP "\f(CW\-i\fR" 4 239 .IX Item "-i" 240 .PD 0 241 .ie n .IP """\-\-file\-info""" 4 242 .el .IP "\f(CW\-\-file\-info\fR" 4 243 .IX Item "--file-info" 244 .PD 245 The \fB\-i\fR option causes \f(CW\*(C`gprof\*(C'\fR to display summary information 246 about the profile data file(s) and then exit. The number of histogram, 247 call graph, and basic-block count records is displayed. 248 .ie n .IP """\-I \f(CIdirs\f(CW""" 4 249 .el .IP "\f(CW\-I \f(CIdirs\f(CW\fR" 4 250 .IX Item "-I dirs" 251 .PD 0 252 .ie n .IP """\-\-directory\-path=\f(CIdirs\f(CW""" 4 253 .el .IP "\f(CW\-\-directory\-path=\f(CIdirs\f(CW\fR" 4 254 .IX Item "--directory-path=dirs" 255 .PD 256 The \fB\-I\fR option specifies a list of search directories in 257 which to find source files. Environment variable \fI\s-1GPROF_PATH\s0\fR 258 can also be used to convey this information. 259 Used mostly for annotated source output. 260 .ie n .IP """\-J[\f(CIsymspec\f(CW]""" 4 261 .el .IP "\f(CW\-J[\f(CIsymspec\f(CW]\fR" 4 262 .IX Item "-J[symspec]" 263 .PD 0 264 .ie n .IP """\-\-no\-annotated\-source[=\f(CIsymspec\f(CW]""" 4 265 .el .IP "\f(CW\-\-no\-annotated\-source[=\f(CIsymspec\f(CW]\fR" 4 266 .IX Item "--no-annotated-source[=symspec]" 267 .PD 268 The \fB\-J\fR option causes \f(CW\*(C`gprof\*(C'\fR not to 269 print annotated source code. 270 If \fIsymspec\fR is specified, \f(CW\*(C`gprof\*(C'\fR prints annotated source, 271 but excludes matching symbols. 272 .ie n .IP """\-L""" 4 273 .el .IP "\f(CW\-L\fR" 4 274 .IX Item "-L" 275 .PD 0 276 .ie n .IP """\-\-print\-path""" 4 277 .el .IP "\f(CW\-\-print\-path\fR" 4 278 .IX Item "--print-path" 279 .PD 280 Normally, source filenames are printed with the path 281 component suppressed. The \fB\-L\fR option causes \f(CW\*(C`gprof\*(C'\fR 282 to print the full pathname of 283 source filenames, which is determined 284 from symbolic debugging information in the image file 285 and is relative to the directory in which the compiler 286 was invoked. 287 .ie n .IP """\-p[\f(CIsymspec\f(CW]""" 4 288 .el .IP "\f(CW\-p[\f(CIsymspec\f(CW]\fR" 4 289 .IX Item "-p[symspec]" 290 .PD 0 291 .ie n .IP """\-\-flat\-profile[=\f(CIsymspec\f(CW]""" 4 292 .el .IP "\f(CW\-\-flat\-profile[=\f(CIsymspec\f(CW]\fR" 4 293 .IX Item "--flat-profile[=symspec]" 294 .PD 295 The \fB\-p\fR option causes \f(CW\*(C`gprof\*(C'\fR to print a flat profile. 296 If \fIsymspec\fR is specified, print flat profile only for matching symbols. 297 .ie n .IP """\-P[\f(CIsymspec\f(CW]""" 4 298 .el .IP "\f(CW\-P[\f(CIsymspec\f(CW]\fR" 4 299 .IX Item "-P[symspec]" 300 .PD 0 301 .ie n .IP """\-\-no\-flat\-profile[=\f(CIsymspec\f(CW]""" 4 302 .el .IP "\f(CW\-\-no\-flat\-profile[=\f(CIsymspec\f(CW]\fR" 4 303 .IX Item "--no-flat-profile[=symspec]" 304 .PD 305 The \fB\-P\fR option causes \f(CW\*(C`gprof\*(C'\fR to suppress printing a flat profile. 306 If \fIsymspec\fR is specified, \f(CW\*(C`gprof\*(C'\fR prints a flat profile, 307 but excludes matching symbols. 308 .ie n .IP """\-q[\f(CIsymspec\f(CW]""" 4 309 .el .IP "\f(CW\-q[\f(CIsymspec\f(CW]\fR" 4 310 .IX Item "-q[symspec]" 311 .PD 0 312 .ie n .IP """\-\-graph[=\f(CIsymspec\f(CW]""" 4 313 .el .IP "\f(CW\-\-graph[=\f(CIsymspec\f(CW]\fR" 4 314 .IX Item "--graph[=symspec]" 315 .PD 316 The \fB\-q\fR option causes \f(CW\*(C`gprof\*(C'\fR to print the call graph analysis. 317 If \fIsymspec\fR is specified, print call graph only for matching symbols 318 and their children. 319 .ie n .IP """\-Q[\f(CIsymspec\f(CW]""" 4 320 .el .IP "\f(CW\-Q[\f(CIsymspec\f(CW]\fR" 4 321 .IX Item "-Q[symspec]" 322 .PD 0 323 .ie n .IP """\-\-no\-graph[=\f(CIsymspec\f(CW]""" 4 324 .el .IP "\f(CW\-\-no\-graph[=\f(CIsymspec\f(CW]\fR" 4 325 .IX Item "--no-graph[=symspec]" 326 .PD 327 The \fB\-Q\fR option causes \f(CW\*(C`gprof\*(C'\fR to suppress printing the 328 call graph. 329 If \fIsymspec\fR is specified, \f(CW\*(C`gprof\*(C'\fR prints a call graph, 330 but excludes matching symbols. 331 .ie n .IP """\-y""" 4 332 .el .IP "\f(CW\-y\fR" 4 333 .IX Item "-y" 334 .PD 0 335 .ie n .IP """\-\-separate\-files""" 4 336 .el .IP "\f(CW\-\-separate\-files\fR" 4 337 .IX Item "--separate-files" 338 .PD 339 This option affects annotated source output only. 340 Normally, \f(CW\*(C`gprof\*(C'\fR prints annotated source files 341 to standard\-output. If this option is specified, 342 annotated source for a file named \fIpath/\fIfilename\fI\fR 343 is generated in the file \fI\fIfilename\fI\-ann\fR. If the underlying 344 filesystem would truncate \fI\fIfilename\fI\-ann\fR so that it 345 overwrites the original \fI\fIfilename\fI\fR, \f(CW\*(C`gprof\*(C'\fR generates 346 annotated source in the file \fI\fIfilename\fI.ann\fR instead (if the 347 original file name has an extension, that extension is \fIreplaced\fR 348 with \fI.ann\fR). 349 .ie n .IP """\-Z[\f(CIsymspec\f(CW]""" 4 350 .el .IP "\f(CW\-Z[\f(CIsymspec\f(CW]\fR" 4 351 .IX Item "-Z[symspec]" 352 .PD 0 353 .ie n .IP """\-\-no\-exec\-counts[=\f(CIsymspec\f(CW]""" 4 354 .el .IP "\f(CW\-\-no\-exec\-counts[=\f(CIsymspec\f(CW]\fR" 4 355 .IX Item "--no-exec-counts[=symspec]" 356 .PD 357 The \fB\-Z\fR option causes \f(CW\*(C`gprof\*(C'\fR not to 358 print a tally of functions and the number of times each was called. 359 If \fIsymspec\fR is specified, print tally, but exclude matching symbols. 360 .ie n .IP """\-\-function\-ordering""" 4 361 .el .IP "\f(CW\-\-function\-ordering\fR" 4 362 .IX Item "--function-ordering" 363 The \fB\-\-function\-ordering\fR option causes \f(CW\*(C`gprof\*(C'\fR to print a 364 suggested function ordering for the program based on profiling data. 365 This option suggests an ordering which may improve paging, tlb and 366 cache behavior for the program on systems which support arbitrary 367 ordering of functions in an executable. 368 .Sp 369 The exact details of how to force the linker to place functions 370 in a particular order is system dependent and out of the scope of this 371 manual. 372 .ie n .IP """\-\-file\-ordering \f(CImap_file\f(CW""" 4 373 .el .IP "\f(CW\-\-file\-ordering \f(CImap_file\f(CW\fR" 4 374 .IX Item "--file-ordering map_file" 375 The \fB\-\-file\-ordering\fR option causes \f(CW\*(C`gprof\*(C'\fR to print a 376 suggested .o link line ordering for the program based on profiling data. 377 This option suggests an ordering which may improve paging, tlb and 378 cache behavior for the program on systems which do not support arbitrary 379 ordering of functions in an executable. 380 .Sp 381 Use of the \fB\-a\fR argument is highly recommended with this option. 382 .Sp 383 The \fImap_file\fR argument is a pathname to a file which provides 384 function name to object file mappings. The format of the file is similar to 385 the output of the program \f(CW\*(C`nm\*(C'\fR. 386 .Sp 387 .Vb 8 388 \& c-parse.o:00000000 T yyparse 389 \& c-parse.o:00000004 C yyerrflag 390 \& c-lang.o:00000000 T maybe_objc_method_name 391 \& c-lang.o:00000000 T print_lang_statistics 392 \& c-lang.o:00000000 T recognize_objc_keyword 393 \& c-decl.o:00000000 T print_lang_identifier 394 \& c-decl.o:00000000 T print_lang_type 395 \& ... 396 .Ve 397 .Sp 398 To create a \fImap_file\fR with \s-1GNU\s0 \f(CW\*(C`nm\*(C'\fR, type a command like 399 \&\f(CW\*(C`nm \-\-extern\-only \-\-defined\-only \-v \-\-print\-file\-name program\-name\*(C'\fR. 400 .ie n .IP """\-T""" 4 401 .el .IP "\f(CW\-T\fR" 4 402 .IX Item "-T" 403 .PD 0 404 .ie n .IP """\-\-traditional""" 4 405 .el .IP "\f(CW\-\-traditional\fR" 4 406 .IX Item "--traditional" 407 .PD 408 The \fB\-T\fR option causes \f(CW\*(C`gprof\*(C'\fR to print its output in 409 ``traditional'' \s-1BSD\s0 style. 410 .ie n .IP """\-w \f(CIwidth\f(CW""" 4 411 .el .IP "\f(CW\-w \f(CIwidth\f(CW\fR" 4 412 .IX Item "-w width" 413 .PD 0 414 .ie n .IP """\-\-width=\f(CIwidth\f(CW""" 4 415 .el .IP "\f(CW\-\-width=\f(CIwidth\f(CW\fR" 4 416 .IX Item "--width=width" 417 .PD 418 Sets width of output lines to \fIwidth\fR. 419 Currently only used when printing the function index at the bottom 420 of the call graph. 421 .ie n .IP """\-x""" 4 422 .el .IP "\f(CW\-x\fR" 4 423 .IX Item "-x" 424 .PD 0 425 .ie n .IP """\-\-all\-lines""" 4 426 .el .IP "\f(CW\-\-all\-lines\fR" 4 427 .IX Item "--all-lines" 428 .PD 429 This option affects annotated source output only. 430 By default, only the lines at the beginning of a basic-block 431 are annotated. If this option is specified, every line in 432 a basic-block is annotated by repeating the annotation for the 433 first line. This behavior is similar to \f(CW\*(C`tcov\*(C'\fR's \fB\-a\fR. 434 .ie n .IP """\-\-demangle[=\f(CIstyle\f(CW]""" 4 435 .el .IP "\f(CW\-\-demangle[=\f(CIstyle\f(CW]\fR" 4 436 .IX Item "--demangle[=style]" 437 .PD 0 438 .ie n .IP """\-\-no\-demangle""" 4 439 .el .IP "\f(CW\-\-no\-demangle\fR" 4 440 .IX Item "--no-demangle" 441 .PD 442 These options control whether \*(C+ symbol names should be demangled when 443 printing output. The default is to demangle symbols. The 444 \&\f(CW\*(C`\-\-no\-demangle\*(C'\fR option may be used to turn off demangling. Different 445 compilers have different mangling styles. The optional demangling style 446 argument can be used to choose an appropriate demangling style for your 447 compiler. 448 .Sh "Analysis Options" 449 .IX Subsection "Analysis Options" 450 .ie n .IP """\-a""" 4 451 .el .IP "\f(CW\-a\fR" 4 452 .IX Item "-a" 453 .PD 0 454 .ie n .IP """\-\-no\-static""" 4 455 .el .IP "\f(CW\-\-no\-static\fR" 4 456 .IX Item "--no-static" 457 .PD 458 The \fB\-a\fR option causes \f(CW\*(C`gprof\*(C'\fR to suppress the printing of 459 statically declared (private) functions. (These are functions whose 460 names are not listed as global, and which are not visible outside the 461 file/function/block where they were defined.) Time spent in these 462 functions, calls to/from them, etc, will all be attributed to the 463 function that was loaded directly before it in the executable file. 464 This option affects both the flat profile and the call graph. 465 .ie n .IP """\-c""" 4 466 .el .IP "\f(CW\-c\fR" 4 467 .IX Item "-c" 468 .PD 0 469 .ie n .IP """\-\-static\-call\-graph""" 4 470 .el .IP "\f(CW\-\-static\-call\-graph\fR" 4 471 .IX Item "--static-call-graph" 472 .PD 473 The \fB\-c\fR option causes the call graph of the program to be 474 augmented by a heuristic which examines the text space of the object 475 file and identifies function calls in the binary machine code. 476 Since normal call graph records are only generated when functions are 477 entered, this option identifies children that could have been called, 478 but never were. Calls to functions that were not compiled with 479 profiling enabled are also identified, but only if symbol table 480 entries are present for them. 481 Calls to dynamic library routines are typically \fInot\fR found 482 by this option. 483 Parents or children identified via this heuristic 484 are indicated in the call graph with call counts of \fB0\fR. 485 .ie n .IP """\-D""" 4 486 .el .IP "\f(CW\-D\fR" 4 487 .IX Item "-D" 488 .PD 0 489 .ie n .IP """\-\-ignore\-non\-functions""" 4 490 .el .IP "\f(CW\-\-ignore\-non\-functions\fR" 4 491 .IX Item "--ignore-non-functions" 492 .PD 493 The \fB\-D\fR option causes \f(CW\*(C`gprof\*(C'\fR to ignore symbols which 494 are not known to be functions. This option will give more accurate 495 profile data on systems where it is supported (Solaris and \s-1HPUX\s0 for 496 example). 497 .ie n .IP """\-k \f(CIfrom\f(CW/\f(CIto\f(CW""" 4 498 .el .IP "\f(CW\-k \f(CIfrom\f(CW/\f(CIto\f(CW\fR" 4 499 .IX Item "-k from/to" 500 The \fB\-k\fR option allows you to delete from the call graph any arcs from 501 symbols matching symspec \fIfrom\fR to those matching symspec \fIto\fR. 502 .ie n .IP """\-l""" 4 503 .el .IP "\f(CW\-l\fR" 4 504 .IX Item "-l" 505 .PD 0 506 .ie n .IP """\-\-line""" 4 507 .el .IP "\f(CW\-\-line\fR" 4 508 .IX Item "--line" 509 .PD 510 The \fB\-l\fR option enables line-by-line profiling, which causes 511 histogram hits to be charged to individual source code lines, 512 instead of functions. 513 If the program was compiled with basic-block counting enabled, 514 this option will also identify how many times each line of 515 code was executed. 516 While line-by-line profiling can help isolate where in a large function 517 a program is spending its time, it also significantly increases 518 the running time of \f(CW\*(C`gprof\*(C'\fR, and magnifies statistical 519 inaccuracies. 520 .ie n .IP """\-m \f(CInum\f(CW""" 4 521 .el .IP "\f(CW\-m \f(CInum\f(CW\fR" 4 522 .IX Item "-m num" 523 .PD 0 524 .ie n .IP """\-\-min\-count=\f(CInum\f(CW""" 4 525 .el .IP "\f(CW\-\-min\-count=\f(CInum\f(CW\fR" 4 526 .IX Item "--min-count=num" 527 .PD 528 This option affects execution count output only. 529 Symbols that are executed less than \fInum\fR times are suppressed. 530 .ie n .IP """\-n[\f(CIsymspec\f(CW]""" 4 531 .el .IP "\f(CW\-n[\f(CIsymspec\f(CW]\fR" 4 532 .IX Item "-n[symspec]" 533 .PD 0 534 .ie n .IP """\-\-time[=\f(CIsymspec\f(CW]""" 4 535 .el .IP "\f(CW\-\-time[=\f(CIsymspec\f(CW]\fR" 4 536 .IX Item "--time[=symspec]" 537 .PD 538 The \fB\-n\fR option causes \f(CW\*(C`gprof\*(C'\fR, in its call graph analysis, 539 to only propagate times for symbols matching \fIsymspec\fR. 540 .ie n .IP """\-N[\f(CIsymspec\f(CW]""" 4 541 .el .IP "\f(CW\-N[\f(CIsymspec\f(CW]\fR" 4 542 .IX Item "-N[symspec]" 543 .PD 0 544 .ie n .IP """\-\-no\-time[=\f(CIsymspec\f(CW]""" 4 545 .el .IP "\f(CW\-\-no\-time[=\f(CIsymspec\f(CW]\fR" 4 546 .IX Item "--no-time[=symspec]" 547 .PD 548 The \fB\-n\fR option causes \f(CW\*(C`gprof\*(C'\fR, in its call graph analysis, 549 not to propagate times for symbols matching \fIsymspec\fR. 550 .ie n .IP """\-z""" 4 551 .el .IP "\f(CW\-z\fR" 4 552 .IX Item "-z" 553 .PD 0 554 .ie n .IP """\-\-display\-unused\-functions""" 4 555 .el .IP "\f(CW\-\-display\-unused\-functions\fR" 4 556 .IX Item "--display-unused-functions" 557 .PD 558 If you give the \fB\-z\fR option, \f(CW\*(C`gprof\*(C'\fR will mention all 559 functions in the flat profile, even those that were never called, and 560 that had no time spent in them. This is useful in conjunction with the 561 \&\fB\-c\fR option for discovering which routines were never called. 562 .Sh "Miscellaneous Options" 563 .IX Subsection "Miscellaneous Options" 564 .ie n .IP """\-d[\f(CInum\f(CW]""" 4 565 .el .IP "\f(CW\-d[\f(CInum\f(CW]\fR" 4 566 .IX Item "-d[num]" 567 .PD 0 568 .ie n .IP """\-\-debug[=\f(CInum\f(CW]""" 4 569 .el .IP "\f(CW\-\-debug[=\f(CInum\f(CW]\fR" 4 570 .IX Item "--debug[=num]" 571 .PD 572 The \fB\-d\fR \fInum\fR option specifies debugging options. 573 If \fInum\fR is not specified, enable all debugging. 574 .ie n .IP """\-O\f(CIname\f(CW""" 4 575 .el .IP "\f(CW\-O\f(CIname\f(CW\fR" 4 576 .IX Item "-Oname" 577 .PD 0 578 .ie n .IP """\-\-file\-format=\f(CIname\f(CW""" 4 579 .el .IP "\f(CW\-\-file\-format=\f(CIname\f(CW\fR" 4 580 .IX Item "--file-format=name" 581 .PD 582 Selects the format of the profile data files. Recognized formats are 583 \&\fBauto\fR (the default), \fBbsd\fR, \fB4.4bsd\fR, \fBmagic\fR, and 584 \&\fBprof\fR (not yet supported). 585 .ie n .IP """\-s""" 4 586 .el .IP "\f(CW\-s\fR" 4 587 .IX Item "-s" 588 .PD 0 589 .ie n .IP """\-\-sum""" 4 590 .el .IP "\f(CW\-\-sum\fR" 4 591 .IX Item "--sum" 592 .PD 593 The \fB\-s\fR option causes \f(CW\*(C`gprof\*(C'\fR to summarize the information 594 in the profile data files it read in, and write out a profile data 595 file called \fIgmon.sum\fR, which contains all the information from 596 the profile data files that \f(CW\*(C`gprof\*(C'\fR read in. The file \fIgmon.sum\fR 597 may be one of the specified input files; the effect of this is to 598 merge the data in the other input files into \fIgmon.sum\fR. 599 .Sp 600 Eventually you can run \f(CW\*(C`gprof\*(C'\fR again without \fB\-s\fR to analyze the 601 cumulative data in the file \fIgmon.sum\fR. 602 .ie n .IP """\-v""" 4 603 .el .IP "\f(CW\-v\fR" 4 604 .IX Item "-v" 605 .PD 0 606 .ie n .IP """\-\-version""" 4 607 .el .IP "\f(CW\-\-version\fR" 4 608 .IX Item "--version" 609 .PD 610 The \fB\-v\fR flag causes \f(CW\*(C`gprof\*(C'\fR to print the current version 611 number, and then exit. 612 .Sh "Deprecated Options" 613 .IX Subsection "Deprecated Options" 614 .RS 4 615 These options have been replaced with newer versions that use symspecs. 616 .RE 617 .ie n .IP """\-e \f(CIfunction_name\f(CW""" 4 618 .el .IP "\f(CW\-e \f(CIfunction_name\f(CW\fR" 4 619 .IX Item "-e function_name" 620 The \fB\-e\fR \fIfunction\fR option tells \f(CW\*(C`gprof\*(C'\fR to not print 621 information about the function \fIfunction_name\fR (and its 622 children...) in the call graph. The function will still be listed 623 as a child of any functions that call it, but its index number will be 624 shown as \fB[not printed]\fR. More than one \fB\-e\fR option may be 625 given; only one \fIfunction_name\fR may be indicated with each \fB\-e\fR 626 option. 627 .ie n .IP """\-E \f(CIfunction_name\f(CW""" 4 628 .el .IP "\f(CW\-E \f(CIfunction_name\f(CW\fR" 4 629 .IX Item "-E function_name" 630 The \f(CW\*(C`\-E \f(CIfunction\f(CW\*(C'\fR option works like the \f(CW\*(C`\-e\*(C'\fR option, but 631 time spent in the function (and children who were not called from 632 anywhere else), will not be used to compute the percentages-of-time for 633 the call graph. More than one \fB\-E\fR option may be given; only one 634 \&\fIfunction_name\fR may be indicated with each \fB\-E\fR option. 635 .ie n .IP """\-f \f(CIfunction_name\f(CW""" 4 636 .el .IP "\f(CW\-f \f(CIfunction_name\f(CW\fR" 4 637 .IX Item "-f function_name" 638 The \fB\-f\fR \fIfunction\fR option causes \f(CW\*(C`gprof\*(C'\fR to limit the 639 call graph to the function \fIfunction_name\fR and its children (and 640 their children...). More than one \fB\-f\fR option may be given; 641 only one \fIfunction_name\fR may be indicated with each \fB\-f\fR 642 option. 643 .ie n .IP """\-F \f(CIfunction_name\f(CW""" 4 644 .el .IP "\f(CW\-F \f(CIfunction_name\f(CW\fR" 4 645 .IX Item "-F function_name" 646 The \fB\-F\fR \fIfunction\fR option works like the \f(CW\*(C`\-f\*(C'\fR option, but 647 only time spent in the function and its children (and their 648 children...) will be used to determine total-time and 649 percentages-of-time for the call graph. More than one \fB\-F\fR option 650 may be given; only one \fIfunction_name\fR may be indicated with each 651 \&\fB\-F\fR option. The \fB\-F\fR option overrides the \fB\-E\fR option. 652 .SH "FILES" 653 .IX Header "FILES" 654 .ie n .IP """\f(CIa.out\f(CW""" 4 655 .el .IP "\f(CW\f(CIa.out\f(CW\fR" 4 656 .IX Item "a.out" 657 the namelist and text space. 658 .ie n .IP """\f(CIgmon.out\f(CW""" 4 659 .el .IP "\f(CW\f(CIgmon.out\f(CW\fR" 4 660 .IX Item "gmon.out" 661 dynamic call graph and profile. 662 .ie n .IP """\f(CIgmon.sum\f(CW""" 4 663 .el .IP "\f(CW\f(CIgmon.sum\f(CW\fR" 4 664 .IX Item "gmon.sum" 665 summarized dynamic call graph and profile. 666 .SH "BUGS" 667 .IX Header "BUGS" 230 668 The granularity of the sampling is shown, but remains 231 669 statistical at best. … … 247 685 the execution of the profiling routine, in which case all is lost. 248 686 .PP 249 The profiled program must call 250 .BR exit ( 2 ) 687 The profiled program must call \f(CW\*(C`exit\*(C'\fR(2) 251 688 or return normally for the profiling information to be saved 252 in the `gmon.out' file. 689 in the \fIgmon.out\fR file. 690 .SH "SEE ALSO" 691 .IX Header "SEE ALSO" 692 \&\fImonitor\fR\|(3), \fIprofil\fR\|(2), \fIcc\fR\|(1), \fIprof\fR\|(1), and the Info entry for \fIgprof\fR. 693 .PP 694 ``An Execution Profiler for Modular Programs'', 695 by S. Graham, P. Kessler, M. McKusick; 696 Software \- Practice and Experience, 697 Vol. 13, pp. 671\-685, 1983. 698 .PP 699 ``gprof: A Call Graph Execution Profiler'', 700 by S. Graham, P. Kessler, M. McKusick; 701 Proceedings of the \s-1SIGPLAN\s0 '82 Symposium on Compiler Construction, 702 \&\s-1SIGPLAN\s0 Notices, Vol. 17, No 6, pp. 120\-126, June 1982. 703 .SH "COPYRIGHT" 704 .IX Header "COPYRIGHT" 705 Copyright (C) 1988, 92, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc. 706 .PP 707 Permission is granted to copy, distribute and/or modify this document 708 under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1 709 or any later version published by the Free Software Foundation; 710 with no Invariant Sections, with no Front-Cover Texts, and with no 711 Back-Cover Texts. A copy of the license is included in the 712 section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R". -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983, 199 8, 2001 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993, 1998, 2001, 2002 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 #include "getopt.h" 29 20 30 #include "libiberty.h" 21 31 #include "gprof.h" 32 #include "search_list.h" 33 #include "source.h" 34 #include "symtab.h" 22 35 #include "basic_blocks.h" 23 36 #include "call_graph.h" … … 28 41 #include "hertz.h" 29 42 #include "hist.h" 30 #include "source.h"31 43 #include "sym_ids.h" 32 44 #include "demangle.h" 45 #include "getopt.h" 46 47 static void usage PARAMS ((FILE *, int)) ATTRIBUTE_NORETURN; 48 int main PARAMS ((int, char **)); 33 49 34 50 const char *whoami; … … 43 59 int output_style = 0; 44 60 int output_width = 80; 45 b oolbsd_style_output = FALSE;46 b ooldemangle = TRUE;47 b ooldiscard_underscores = TRUE;48 b oolignore_direct_calls = FALSE;49 b oolignore_static_funcs = FALSE;50 b oolignore_zeros = TRUE;51 b oolline_granularity = FALSE;52 b oolprint_descriptions = TRUE;53 b oolprint_path = FALSE;54 b oolignore_non_functions = FALSE;61 bfd_boolean bsd_style_output = FALSE; 62 bfd_boolean demangle = TRUE; 63 bfd_boolean discard_underscores = TRUE; 64 bfd_boolean ignore_direct_calls = FALSE; 65 bfd_boolean ignore_static_funcs = FALSE; 66 bfd_boolean ignore_zeros = TRUE; 67 bfd_boolean line_granularity = FALSE; 68 bfd_boolean print_descriptions = TRUE; 69 bfd_boolean print_path = FALSE; 70 bfd_boolean ignore_non_functions = FALSE; 55 71 File_Format file_format = FF_AUTO; 56 72 57 b oolfirst_output = TRUE;73 bfd_boolean first_output = TRUE; 58 74 59 75 char copyright[] = … … 141 157 142 158 static void 143 DEFUN (usage, (stream, status), FILE * stream AND int status) 159 usage (stream, status) 160 FILE *stream; 161 int status; 144 162 { 145 163 fprintf (stream, _("\ … … 165 183 166 184 int 167 DEFUN (main, (argc, argv), int argc AND char **argv) 185 main (argc, argv) 186 int argc; 187 char **argv; 168 188 { 169 189 char **sp, *str; … … 173 193 #if defined (HAVE_SETLOCALE) && defined (HAVE_LC_MESSAGES) 174 194 setlocale (LC_MESSAGES, ""); 195 #endif 196 #if defined (HAVE_SETLOCALE) 197 setlocale (LC_CTYPE, ""); 175 198 #endif 176 199 bindtextdomain (PACKAGE, LOCALEDIR); … … 490 513 sym_id_add (*sp, EXCL_TIME); 491 514 sym_id_add (*sp, EXCL_GRAPH); 492 #ifdef __alpha__493 515 sym_id_add (*sp, EXCL_FLAT); 494 #endif495 516 } 496 517 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 18 16 * 19 * @(#)gprof.h 5.9 (Berkeley) 6/1/90 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 20 28 */ 21 29 #ifndef gprof_h 22 30 #define gprof_h 23 31 24 #include "ansidecl.h"25 26 32 /* Include the BFD sysdep.h file. */ 27 33 #include "sysdep.h" 34 #include "bfd.h" 28 35 29 36 /* Undefine the BFD PACKAGE and VERSION macros before including the … … 64 71 #include "bin-bugs.h" 65 72 66 /*67 * These may already be defined on some systems. We could probably68 * just use the BFD versions of these, since BFD has already dealt69 * with this problem.70 */71 #undef FALSE72 #define FALSE 073 #undef TRUE74 #define TRUE 175 76 73 #define STYLE_FLAT_PROFILE (1<<0) 77 74 #define STYLE_CALL_GRAPH (1<<1) … … 110 107 File_Format; 111 108 112 typedef int bool;113 109 typedef unsigned char UNIT[2]; /* unit of profiling */ 114 110 … … 121 117 * Command-line options: 122 118 */ 123 extern int debug_level; /* debug level */119 extern int debug_level; /* debug level */ 124 120 extern int output_style; 125 extern int output_width; /* controls column width in index */126 extern b oolbsd_style_output; /* as opposed to FSF style output */127 extern b ooldemangle; /* demangle symbol names? */128 extern b ooldiscard_underscores; /* discard leading underscores? */129 extern b oolignore_direct_calls; /* don't count direct calls */130 extern b oolignore_static_funcs; /* suppress static functions */131 extern b oolignore_zeros; /* ignore unused symbols/files */132 extern b oolline_granularity; /* function or line granularity? */133 extern b oolprint_descriptions; /* output profile description */134 extern b oolprint_path; /* print path or just filename? */135 extern b ool ignore_non_functions;/* Ignore non-function symbols. */121 extern int output_width; /* controls column width in index */ 122 extern bfd_boolean bsd_style_output; /* as opposed to FSF style output */ 123 extern bfd_boolean demangle; /* demangle symbol names? */ 124 extern bfd_boolean discard_underscores; /* discard leading underscores? */ 125 extern bfd_boolean ignore_direct_calls; /* don't count direct calls */ 126 extern bfd_boolean ignore_static_funcs; /* suppress static functions */ 127 extern bfd_boolean ignore_zeros; /* ignore unused symbols/files */ 128 extern bfd_boolean line_granularity; /* function or line granularity? */ 129 extern bfd_boolean print_descriptions; /* output profile description */ 130 extern bfd_boolean print_path; /* print path or just filename? */ 131 extern bfd_boolean ignore_non_functions; /* Ignore non-function symbols. */ 136 132 137 extern File_Format file_format; /* requested file format */133 extern File_Format file_format; /* requested file format */ 138 134 139 extern b oolfirst_output; /* no output so far? */135 extern bfd_boolean first_output; /* no output so far? */ 140 136 141 extern void done PARAMS ((int status)) ;137 extern void done PARAMS ((int status)) ATTRIBUTE_NORETURN; 142 138 143 139 #endif /* gprof_h */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.info
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 This is gprof.info, produced by makeinfo version 4. 0from gprof.texi.1 This is gprof.info, produced by makeinfo version 4.3 from gprof.texi. 2 2 3 3 START-INFO-DIR-ENTRY … … 7 7 This file documents the gprof profiler of the GNU system. 8 8 9 Copyright (C) 1988, 92, 97, 98, 99, 2000 Free Software Foundation,10 Inc.9 Copyright (C) 1988, 92, 97, 98, 99, 2000, 2001 Free Software 10 Foundation, Inc. 11 11 12 12 Permission is granted to copy, distribute and/or modify this document 13 under the terms of the GNU Free Documentation License, Version 1.1 14 or any later version published by the Free Software Foundation; 15 with no Invariant Sections, with no Front-Cover Texts, and with no 16 Back-Cover Texts. A copy of the license is included in the 17 section entitled "GNUFree Documentation License".13 under the terms of the GNU Free Documentation License, Version 1.1 or 14 any later version published by the Free Software Foundation; with no 15 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover 16 Texts. A copy of the license is included in the section entitled "GNU 17 Free Documentation License". 18 18 19 19 20 20 Indirect: 21 gprof.info-1: 7 1822 gprof.info-2: 48 16023 gprof.info-3: 82 29421 gprof.info-1: 707 22 gprof.info-2: 48575 23 gprof.info-3: 82712 24 24 25 25 Tag Table: 26 26 (Indirect) 27 Node: Top7 1828 Node: Introduction19 6029 Node: Compiling42 8930 Node: Executing69 5031 Node: Invoking9 31432 Node: Output Options1 072833 Node: Analysis Options17 54034 Node: Miscellaneous Options2 073335 Node: Deprecated Options2 189436 Node: Symspecs2 396437 Node: Output2 578538 Node: Flat Profile2 681039 Node: Call Graph3 174040 Node: Primary3 495541 Node: Callers37 48742 Node: Subroutines 3959543 Node: Cycles41 39544 Node: Line-by-line48 16045 Node: Annotated Source5 195946 Node: Inaccuracy5 482047 Node: Sampling Error55 07448 Node: Assumptions5 763949 Node: How do I?59 10750 Node: Incompatibilities60 32551 Node: Details6 179252 Node: Implementation62 18153 Node: File Format68 07354 Node: Internals72 32855 Node: Debugging8 069856 Node: GNU Free Documentation License82 29427 Node: Top707 28 Node: Introduction1949 29 Node: Compiling4278 30 Node: Executing6939 31 Node: Invoking9729 32 Node: Output Options11143 33 Node: Analysis Options17955 34 Node: Miscellaneous Options21148 35 Node: Deprecated Options22309 36 Node: Symspecs24379 37 Node: Output26200 38 Node: Flat Profile27225 39 Node: Call Graph32155 40 Node: Primary35370 41 Node: Callers37902 42 Node: Subroutines40010 43 Node: Cycles41810 44 Node: Line-by-line48575 45 Node: Annotated Source52374 46 Node: Inaccuracy55235 47 Node: Sampling Error55489 48 Node: Assumptions58054 49 Node: How do I?59522 50 Node: Incompatibilities60740 51 Node: Details62207 52 Node: Implementation62596 53 Node: File Format68488 54 Node: Internals72746 55 Node: Debugging81116 56 Node: GNU Free Documentation License82712 57 57 58 58 End Tag Table -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.info-1
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 This is gprof.info, produced by makeinfo version 4. 0from gprof.texi.1 This is gprof.info, produced by makeinfo version 4.3 from gprof.texi. 2 2 3 3 START-INFO-DIR-ENTRY … … 7 7 This file documents the gprof profiler of the GNU system. 8 8 9 Copyright (C) 1988, 92, 97, 98, 99, 2000 Free Software Foundation,10 Inc.9 Copyright (C) 1988, 92, 97, 98, 99, 2000, 2001 Free Software 10 Foundation, Inc. 11 11 12 12 Permission is granted to copy, distribute and/or modify this document 13 under the terms of the GNU Free Documentation License, Version 1.1 14 or any later version published by the Free Software Foundation; 15 with no Invariant Sections, with no Front-Cover Texts, and with no 16 Back-Cover Texts. A copy of the license is included in the 17 section entitled "GNUFree Documentation License".13 under the terms of the GNU Free Documentation License, Version 1.1 or 14 any later version published by the Free Software Foundation; with no 15 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover 16 Texts. A copy of the license is included in the section entitled "GNU 17 Free Documentation License". 18 18 19 19 … … 206 206 didn't get written into `gmon.out'. The Perl script `bbconv.pl', 207 207 included with the `gprof' source distribution, will convert a `bb.out' 208 file into a format readable by `gprof'. 208 file into a format readable by `gprof'. Invoke it like this: 209 210 bbconv.pl < bb.out > BH-DATA 211 212 This translates the information in `bb.out' into a form that `gprof' 213 can understand. But you still need to tell `gprof' about the existence 214 of this translated information. To do that, include BB-DATA on the 215 `gprof' command line, _along with `gmon.out'_, like this: 216 217 gprof OPTIONS EXECUTABLE-FILE gmon.out BB-DATA [YET-MORE-PROFILE-DATA-FILES...] [> OUTFILE] 209 218 210 219 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.info-2
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 This is gprof.info, produced by makeinfo version 4. 0from gprof.texi.1 This is gprof.info, produced by makeinfo version 4.3 from gprof.texi. 2 2 3 3 START-INFO-DIR-ENTRY … … 7 7 This file documents the gprof profiler of the GNU system. 8 8 9 Copyright (C) 1988, 92, 97, 98, 99, 2000 Free Software Foundation,10 Inc.9 Copyright (C) 1988, 92, 97, 98, 99, 2000, 2001 Free Software 10 Foundation, Inc. 11 11 12 12 Permission is granted to copy, distribute and/or modify this document 13 under the terms of the GNU Free Documentation License, Version 1.1 14 or any later version published by the Free Software Foundation; 15 with no Invariant Sections, with no Front-Cover Texts, and with no 16 Back-Cover Texts. A copy of the license is included in the 17 section entitled "GNUFree Documentation License".13 under the terms of the GNU Free Documentation License, Version 1.1 or 14 any later version published by the Free Software Foundation; with no 15 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover 16 Texts. A copy of the license is included in the section entitled "GNU 17 Free Documentation License". 18 18 19 19 … … 487 487 consists of a header containing the magic cookie and a version number, 488 488 as well as some spare bytes available for future extensions. All data 489 in a profile data file is in the native format of the host on which the490 profile was collected. GNU `gprof' adapts automatically to the489 in a profile data file is in the native format of the target for which 490 the profile was collected. GNU `gprof' adapts automatically to the 491 491 byte-order in use. 492 492 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.info-3
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 This is gprof.info, produced by makeinfo version 4. 0from gprof.texi.1 This is gprof.info, produced by makeinfo version 4.3 from gprof.texi. 2 2 3 3 START-INFO-DIR-ENTRY … … 7 7 This file documents the gprof profiler of the GNU system. 8 8 9 Copyright (C) 1988, 92, 97, 98, 99, 2000 Free Software Foundation,10 Inc.9 Copyright (C) 1988, 92, 97, 98, 99, 2000, 2001 Free Software 10 Foundation, Inc. 11 11 12 12 Permission is granted to copy, distribute and/or modify this document 13 under the terms of the GNU Free Documentation License, Version 1.1 14 or any later version published by the Free Software Foundation; 15 with no Invariant Sections, with no Front-Cover Texts, and with no 16 Back-Cover Texts. A copy of the license is included in the 17 section entitled "GNUFree Documentation License".13 under the terms of the GNU Free Documentation License, Version 1.1 or 14 any later version published by the Free Software Foundation; with no 15 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover 16 Texts. A copy of the license is included in the section entitled "GNU 17 Free Documentation License". 18 18 19 19 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/gprof.texi
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 19 19 This file documents the gprof profiler of the GNU system. 20 20 21 Copyright (C) 1988, 92, 97, 98, 99, 2000 Free Software Foundation, Inc. 21 @c man begin COPYRIGHT 22 Copyright (C) 1988, 92, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc. 23 24 Permission is granted to copy, distribute and/or modify this document 25 under the terms of the GNU Free Documentation License, Version 1.1 26 or any later version published by the Free Software Foundation; 27 with no Invariant Sections, with no Front-Cover Texts, and with no 28 Back-Cover Texts. A copy of the license is included in the 29 section entitled "GNU Free Documentation License". 30 31 @c man end 32 33 @ignore 34 Permission is granted to process this file through Tex and print the 35 results, provided the printed document carries copying permission 36 notice identical to this one except for the removal of this paragraph 37 (this paragraph not being relevant to the printed manual). 38 39 @end ignore 40 @end ifinfo 41 42 @finalout 43 @smallbook 44 45 @titlepage 46 @title GNU gprof 47 @subtitle The @sc{gnu} Profiler 48 @author Jay Fenlason and Richard Stallman 49 50 @page 51 52 This manual describes the @sc{gnu} profiler, @code{gprof}, and how you 53 can use it to determine which parts of a program are taking most of the 54 execution time. We assume that you know how to write, compile, and 55 execute programs. @sc{gnu} @code{gprof} was written by Jay Fenlason. 56 57 @vskip 0pt plus 1filll 58 Copyright @copyright{} 1988, 92, 97, 98, 99, 2000 Free Software Foundation, Inc. 22 59 23 60 Permission is granted to copy, distribute and/or modify this document … … 28 65 section entitled "GNU Free Documentation License". 29 66 30 @ignore31 Permission is granted to process this file through Tex and print the32 results, provided the printed document carries copying permission33 notice identical to this one except for the removal of this paragraph34 (this paragraph not being relevant to the printed manual).35 36 @end ignore37 @end ifinfo38 39 @finalout40 @smallbook41 42 @titlepage43 @title GNU gprof44 @subtitle The @sc{gnu} Profiler45 @author Jay Fenlason and Richard Stallman46 47 @page48 49 This manual describes the @sc{gnu} profiler, @code{gprof}, and how you50 can use it to determine which parts of a program are taking most of the51 execution time. We assume that you know how to write, compile, and52 execute programs. @sc{gnu} @code{gprof} was written by Jay Fenlason.53 54 @vskip 0pt plus 1filll55 Copyright @copyright{} 1988, 92, 97, 98, 99, 2000 Free Software Foundation, Inc.56 57 Permission is granted to copy, distribute and/or modify this document58 under the terms of the GNU Free Documentation License, Version 1.159 or any later version published by the Free Software Foundation;60 with no Invariant Sections, with no Front-Cover Texts, and with no61 Back-Cover Texts. A copy of the license is included in the62 section entitled "GNU Free Documentation License".63 64 67 @end titlepage 65 68 66 @if info69 @ifnottex 67 70 @node Top 68 71 @top Profiling a Program: Where Does It Spend Its Time? … … 92 95 * GNU Free Documentation License:: GNU Free Documentation License 93 96 @end menu 94 @end if info97 @end ifnottex 95 98 96 99 @node Introduction 97 100 @chapter Introduction to Profiling 101 102 @ifset man 103 @c man title gprof display call graph profile data 104 105 @smallexample 106 @c man begin SYNOPSIS 107 gprof [ -[abcDhilLsTvwxyz] ] [ -[ACeEfFJnNOpPqQZ][@var{name}] ] 108 [ -I @var{dirs} ] [ -d[@var{num}] ] [ -k @var{from/to} ] 109 [ -m @var{min-count} ] [ -t @var{table-length} ] 110 [ --[no-]annotated-source[=@var{name}] ] 111 [ --[no-]exec-counts[=@var{name}] ] 112 [ --[no-]flat-profile[=@var{name}] ] [ --[no-]graph[=@var{name}] ] 113 [ --[no-]time=@var{name}] [ --all-lines ] [ --brief ] 114 [ --debug[=@var{level}] ] [ --function-ordering ] 115 [ --file-ordering ] [ --directory-path=@var{dirs} ] 116 [ --display-unused-functions ] [ --file-format=@var{name} ] 117 [ --file-info ] [ --help ] [ --line ] [ --min-count=@var{n} ] 118 [ --no-static ] [ --print-path ] [ --separate-files ] 119 [ --static-call-graph ] [ --sum ] [ --table-length=@var{len} ] 120 [ --traditional ] [ --version ] [ --width=@var{n} ] 121 [ --ignore-non-functions ] [ --demangle[=@var{STYLE}] ] 122 [ --no-demangle ] [ @var{image-file} ] [ @var{profile-file} @dots{} ] 123 @c man end 124 @end smallexample 125 126 @c man begin DESCRIPTION 127 @code{gprof} produces an execution profile of C, Pascal, or Fortran77 128 programs. The effect of called routines is incorporated in the profile 129 of each caller. The profile data is taken from the call graph profile file 130 (@file{gmon.out} default) which is created by programs 131 that are compiled with the @samp{-pg} option of 132 @code{cc}, @code{pc}, and @code{f77}. 133 The @samp{-pg} option also links in versions of the library routines 134 that are compiled for profiling. @code{Gprof} reads the given object 135 file (the default is @code{a.out}) and establishes the relation between 136 its symbol table and the call graph profile from @file{gmon.out}. 137 If more than one profile file is specified, the @code{gprof} 138 output shows the sum of the profile information in the given profile files. 139 140 @code{Gprof} calculates the amount of time spent in each routine. 141 Next, these times are propagated along the edges of the call graph. 142 Cycles are discovered, and calls into a cycle are made to share the time 143 of the cycle. 144 145 @c man end 146 147 @c man begin BUGS 148 The granularity of the sampling is shown, but remains 149 statistical at best. 150 We assume that the time for each execution of a function 151 can be expressed by the total time for the function divided 152 by the number of times the function is called. 153 Thus the time propagated along the call graph arcs to the function's 154 parents is directly proportional to the number of times that 155 arc is traversed. 156 157 Parents that are not themselves profiled will have the time of 158 their profiled children propagated to them, but they will appear 159 to be spontaneously invoked in the call graph listing, and will 160 not have their time propagated further. 161 Similarly, signal catchers, even though profiled, will appear 162 to be spontaneous (although for more obscure reasons). 163 Any profiled children of signal catchers should have their times 164 propagated properly, unless the signal catcher was invoked during 165 the execution of the profiling routine, in which case all is lost. 166 167 The profiled program must call @code{exit}(2) 168 or return normally for the profiling information to be saved 169 in the @file{gmon.out} file. 170 @c man end 171 172 @c man begin FILES 173 @table @code 174 @item @file{a.out} 175 the namelist and text space. 176 @item @file{gmon.out} 177 dynamic call graph and profile. 178 @item @file{gmon.sum} 179 summarized dynamic call graph and profile. 180 @end table 181 @c man end 182 183 @c man begin SEEALSO 184 monitor(3), profil(2), cc(1), prof(1), and the Info entry for @file{gprof}. 185 186 ``An Execution Profiler for Modular Programs'', 187 by S. Graham, P. Kessler, M. McKusick; 188 Software - Practice and Experience, 189 Vol. 13, pp. 671-685, 1983. 190 191 ``gprof: A Call Graph Execution Profiler'', 192 by S. Graham, P. Kessler, M. McKusick; 193 Proceedings of the SIGPLAN '82 Symposium on Compiler Construction, 194 SIGPLAN Notices, Vol. 17, No 6, pp. 120-126, June 1982. 195 @c man end 196 @end ifset 98 197 99 198 Profiling allows you to learn where your program spent its time and which … … 130 229 The next three chapters explain these steps in greater detail. 131 230 231 @c man begin DESCRIPTION 232 132 233 Several forms of output are available from the analysis. 133 234 … … 146 247 source code, labeled with the number of times each line of the 147 248 program was executed. @xref{Annotated Source}. 249 @c man end 148 250 149 251 To better understand how profiling works, you may wish to read … … 256 358 The Perl script @code{bbconv.pl}, included with the @code{gprof} 257 359 source distribution, will convert a @file{bb.out} file into 258 a format readable by @code{gprof}. 360 a format readable by @code{gprof}. Invoke it like this: 361 362 @smallexample 363 bbconv.pl < bb.out > @var{bh-data} 364 @end smallexample 365 366 This translates the information in @file{bb.out} into a form that 367 @code{gprof} can understand. But you still need to tell @code{gprof} 368 about the existence of this translated information. To do that, include 369 @var{bb-data} on the @code{gprof} command line, @emph{along with 370 @file{gmon.out}}, like this: 371 372 @smallexample 373 gprof @var{options} @var{executable-file} gmon.out @var{bb-data} [@var{yet-more-profile-data-files}@dots{}] [> @var{outfile}] 374 @end smallexample 259 375 260 376 @node Invoking … … 298 414 @section Output Options 299 415 416 @c man begin OPTIONS 300 417 These options specify which of several output formats 301 418 @code{gprof} should produce. … … 635 752 636 753 @end table 754 755 @c man end 637 756 638 757 Note that only one function can be specified with each @code{-e}, … … 1732 1851 consists of a header containing the magic cookie and a version number, 1733 1852 as well as some spare bytes available for future extensions. All data 1734 in a profile data file is in the native format of the host onwhich1735 the profile was collected. @sc{gnu} @code{gprof} adapts automatically to the1736 byte-order in use.1853 in a profile data file is in the native format of the target for which 1854 the profile was collected. @sc{gnu} @code{gprof} adapts automatically 1855 to the byte-order in use. 1737 1856 1738 1857 In the new file format, the header is followed by a sequence of -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/hertz.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 29 #include "gprof.h" 19 30 #include "hertz.h" 20 31 -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/hertz.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 #ifndef hertz_h 2 2 #define hertz_h 3 4 #include "gprof.h"5 3 6 4 #define HZ_WRONG 0 /* impossible clock frequency */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/hist.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* hist.c - Histogram related operations. 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 21 21 22 22 23 #include <stdio.h>24 23 #include "libiberty.h" 25 24 #include "gprof.h" 25 #include "search_list.h" 26 #include "source.h" 27 #include "symtab.h" 26 28 #include "corefile.h" 27 29 #include "gmon_io.h" 28 30 #include "gmon_out.h" 29 31 #include "hist.h" 30 #include "symtab.h"31 32 #include "sym_ids.h" 32 33 #include "utils.h" … … 35 36 36 37 static void scale_and_align_entries PARAMS ((void)); 38 static void print_header PARAMS ((int)); 39 static void print_line PARAMS ((Sym *, double)); 40 static int cmp_time PARAMS ((const PTR, const PTR)); 37 41 38 42 /* Declarations of automatically generated functions to output blurbs. */ … … 78 82 79 83 void 80 DEFUN (hist_read_rec, (ifp, filename), FILE * ifp AND const char *filename) 84 hist_read_rec (ifp, filename) 85 FILE * ifp; 86 const char *filename; 81 87 { 82 88 bfd_vma n_lowpc, n_highpc; … … 153 159 154 160 void 155 DEFUN (hist_write_hist, (ofp, filename), FILE * ofp AND const char *filename) 161 hist_write_hist (ofp, filename) 162 FILE * ofp; 163 const char *filename; 156 164 { 157 165 UNIT count; … … 174 182 for (i = 0; i < hist_num_bins; ++i) 175 183 { 176 bfd_put_16 (core_bfd, hist_sample[i], (bfd_byte *) &count[0]);184 bfd_put_16 (core_bfd, (bfd_vma) hist_sample[i], (bfd_byte *) &count[0]); 177 185 178 186 if (fwrite (&count[0], sizeof (count), 1, ofp) != 1) … … 256 264 257 265 void 258 DEFUN_VOID (hist_assign_samples)266 hist_assign_samples () 259 267 { 260 268 bfd_vma bin_low_pc, bin_high_pc; … … 345 353 346 354 static void 347 DEFUN (print_header, (prefix), const char prefix) 355 print_header (prefix) 356 int prefix; 348 357 { 349 358 char unit[64]; … … 384 393 385 394 static void 386 DEFUN (print_line, (sym, scale), Sym * sym AND double scale) 395 print_line (sym, scale) 396 Sym *sym; 397 double scale; 387 398 { 388 399 if (ignore_zeros && sym->ncalls == 0 && sym->hist.time == 0) … … 421 432 422 433 static int 423 DEFUN (cmp_time, (lp, rp), const PTR lp AND const PTR rp) 434 cmp_time (lp, rp) 435 const PTR lp; 436 const PTR rp; 424 437 { 425 438 const Sym *left = *(const Sym **) lp; … … 448 461 449 462 void 450 DEFUN_VOID (hist_print)463 hist_print () 451 464 { 452 465 Sym **time_sorted_syms, *top_dog, *sym; 453 466 unsigned int index; 454 intlog_scale;467 unsigned log_scale; 455 468 double top_time, time; 456 469 bfd_vma addr; … … 517 530 top_time /= hz; 518 531 519 while (SItab[log_scale].scale * top_time < 1000.0 520 && ((size_t) log_scale 521 < sizeof (SItab) / sizeof (SItab[0]) - 1)) 532 for (log_scale = 0; log_scale < ARRAY_SIZE (SItab); log_scale ++) 522 533 { 523 ++log_scale; 534 double scaled_value = SItab[log_scale].scale * top_time; 535 536 if (scaled_value >= 1.0 && scaled_value < 1000.0) 537 break; 524 538 } 525 539 } -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/hist.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 23 23 #define hist_h 24 24 25 #include "bfd.h"26 27 25 extern bfd_vma s_lowpc; /* Lowpc from the profile file. */ 28 26 extern bfd_vma s_highpc; /* Highpc from the profile file. */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/i386.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983, 2001 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993, 2001 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 29 #include "gprof.h" 30 #include "search_list.h" 31 #include "source.h" 32 #include "symtab.h" 20 33 #include "cg_arcs.h" 21 34 #include "corefile.h" 22 35 #include "hist.h" 23 #include "symtab.h"24 36 37 static int i386_iscall PARAMS ((unsigned char *)); 38 void i386_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 25 39 26 int 27 DEFUN (i386_iscall, (ip), unsigned char *ip) 40 static int 41 i386_iscall (ip) 42 unsigned char *ip; 28 43 { 29 44 if (*ip == 0xe8) … … 41 56 unsigned char *instructp; 42 57 Sym *child; 43 bfd_vma destpc, delta;58 bfd_vma pc, destpc; 44 59 45 60 if (core_text_space == 0) … … 59 74 (unsigned long) p_highpc)); 60 75 61 delta = (bfd_vma) core_text_space - core_text_sect->vma; 62 63 for (instructp = (unsigned char *) (p_lowpc + delta); 64 instructp < (unsigned char *) (p_highpc + delta); 65 instructp ++) 76 for (pc = p_lowpc; pc < p_highpc; ++pc) 66 77 { 78 instructp = (unsigned char *) core_text_space + pc - core_text_sect->vma; 67 79 if (i386_iscall (instructp)) 68 80 { 69 81 DBG (CALLDEBUG, 70 printf ("[findcall]\t0x%lx:call", 71 (unsigned long) (instructp - (unsigned char *) delta))); 82 printf ("[findcall]\t0x%lx:call", (unsigned long) pc)); 72 83 /* 73 84 * regular pc relative addressing … … 76 87 */ 77 88 78 destpc = ((bfd_vma) bfd_get_32 (core_bfd, instructp + 1) 79 + (bfd_vma) instructp - (bfd_vma) delta + 5); 89 destpc = bfd_get_32 (core_bfd, instructp + 1) + pc + 5; 80 90 if (destpc >= s_lowpc && destpc <= s_highpc) 81 91 { -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/po/Make-in
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 71 71 .po.gmo: 72 72 file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ 73 && rm -f $$file && $(GMSGFMT) -o $$file $< 73 && test -w $$file \ 74 && (rm -f $$file && $(GMSGFMT) -o $$file $< ) \ 75 || echo "$$file is not writable" 74 76 75 77 .po.cat: -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/po/POTFILES.in
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 23 23 hist.h 24 24 i386.c 25 mips.c 25 26 search_list.c 26 27 search_list.h -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/po/gprof.pot
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 7 7 msgstr "" 8 8 "Project-Id-Version: PACKAGE VERSION\n" 9 "POT-Creation-Date: 200 0-07-27 16:32-0700\n"9 "POT-Creation-Date: 2002-01-31 18:32+0000\n" 10 10 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 11 11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 13 13 "MIME-Version: 1.0\n" 14 14 "Content-Type: text/plain; charset=CHARSET\n" 15 "Content-Transfer-Encoding: ENCODING\n"16 17 #: alpha.c: 8915 "Content-Transfer-Encoding: 8bit\n" 16 17 #: alpha.c:93 mips.c:47 18 18 msgid "<indirect child>" 19 19 msgstr "" 20 20 21 #: alpha.c:1 0621 #: alpha.c:110 mips.c:64 22 22 #, c-format 23 23 msgid "[find_call] %s: 0x%lx to 0x%lx\n" 24 24 msgstr "" 25 25 26 #: alpha.c:1 2826 #: alpha.c:132 27 27 #, c-format 28 28 msgid "[find_call] 0x%lx: jsr%s <indirect_child>\n" 29 29 msgstr "" 30 30 31 #: alpha.c:1 3731 #: alpha.c:142 32 32 #, c-format 33 33 msgid "[find_call] 0x%lx: bsr" 34 34 msgstr "" 35 35 36 #: basic_blocks.c:12 3 call_graph.c:86 hist.c:12236 #: basic_blocks.c:122 call_graph.c:90 hist.c:93 37 37 #, c-format 38 38 msgid "%s: %s: unexpected end of file\n" 39 39 msgstr "" 40 40 41 #: basic_blocks.c:19 841 #: basic_blocks.c:190 42 42 #, c-format 43 43 msgid "%s: warning: ignoring basic-block exec counts (use -l or --line)\n" … … 45 45 46 46 #. FIXME: This only works if bfd_vma is unsigned long. 47 #: basic_blocks.c:2 96 basic_blocks.c:30647 #: basic_blocks.c:281 basic_blocks.c:291 48 48 #, c-format 49 49 msgid "%s:%d: (%s:0x%lx) %lu executions\n" 50 50 msgstr "" 51 51 52 #: basic_blocks.c:2 97 basic_blocks.c:30752 #: basic_blocks.c:282 basic_blocks.c:292 53 53 msgid "<unknown>" 54 54 msgstr "" 55 55 56 #: basic_blocks.c:5 5156 #: basic_blocks.c:536 57 57 #, c-format 58 58 msgid "" … … 65 65 msgstr "" 66 66 67 #: basic_blocks.c:5 7567 #: basic_blocks.c:560 68 68 msgid "" 69 69 "\n" … … 72 72 msgstr "" 73 73 74 #: basic_blocks.c:5 7674 #: basic_blocks.c:561 75 75 #, c-format 76 76 msgid "%9ld Executable lines in this file\n" 77 77 msgstr "" 78 78 79 #: basic_blocks.c:5 7879 #: basic_blocks.c:563 80 80 #, c-format 81 81 msgid "%9ld Lines executed\n" 82 82 msgstr "" 83 83 84 #: basic_blocks.c:5 7984 #: basic_blocks.c:564 85 85 #, c-format 86 86 msgid "%9.2f Percent of the file executed\n" 87 87 msgstr "" 88 88 89 #: basic_blocks.c:5 8389 #: basic_blocks.c:568 90 90 #, c-format 91 91 msgid "" … … 94 94 msgstr "" 95 95 96 #: basic_blocks.c:5 8596 #: basic_blocks.c:570 97 97 #, c-format 98 98 msgid "%9.2f Average executions per line\n" 99 99 msgstr "" 100 100 101 #: call_graph.c:6 6101 #: call_graph.c:69 102 102 #, c-format 103 103 msgid "[cg_tally] arc from %s to %s traversed %lu times\n" 104 104 msgstr "" 105 105 106 #: cg_print.c:5 4106 #: cg_print.c:58 107 107 msgid "" 108 108 "\t\t Call graph (explanation follows)\n" … … 110 110 msgstr "" 111 111 112 #: cg_print.c: 56112 #: cg_print.c:60 113 113 msgid "" 114 114 "\t\t\tCall graph\n" … … 116 116 msgstr "" 117 117 118 #: cg_print.c: 59 hist.c:391118 #: cg_print.c:63 hist.c:355 119 119 #, c-format 120 120 msgid "" … … 123 123 msgstr "" 124 124 125 #: cg_print.c:63 125 #: cg_print.c:67 126 #, c-format 126 127 msgid "" 127 128 " for %.2f%% of %.2f seconds\n" … … 129 130 msgstr "" 130 131 131 #: cg_print.c: 67132 #: cg_print.c:71 132 133 msgid "" 133 134 " no time propagated\n" … … 135 136 msgstr "" 136 137 137 #: cg_print.c: 76 cg_print.c:79 cg_print.c:81138 #: cg_print.c:80 cg_print.c:83 cg_print.c:85 138 139 msgid "called" 139 140 msgstr "" 140 141 141 #: cg_print.c: 76 cg_print.c:81142 #: cg_print.c:80 cg_print.c:85 142 143 msgid "total" 143 144 msgstr "" 144 145 145 #: cg_print.c: 76146 #: cg_print.c:80 146 147 msgid "parents" 147 148 msgstr "" 148 149 149 #: cg_print.c: 78 cg_print.c:79150 #: cg_print.c:82 cg_print.c:83 150 151 msgid "index" 151 152 msgstr "" 152 153 153 #: cg_print.c: 78154 #: cg_print.c:82 154 155 msgid "%time" 155 156 msgstr "" 156 157 157 #: cg_print.c: 78 cg_print.c:79158 #: cg_print.c:82 cg_print.c:83 158 159 msgid "self" 159 160 msgstr "" 160 161 161 #: cg_print.c: 78162 msgid "descend ents"163 msgstr "" 164 165 #: cg_print.c: 79 hist.c:416162 #: cg_print.c:82 163 msgid "descendants" 164 msgstr "" 165 166 #: cg_print.c:83 hist.c:381 166 167 msgid "name" 167 168 msgstr "" 168 169 169 #: cg_print.c:8 1170 #: cg_print.c:85 170 171 msgid "children" 171 172 msgstr "" 172 173 173 #: cg_print.c:86 174 #: cg_print.c:90 175 #, c-format 174 176 msgid "index %% time self children called name\n" 175 177 msgstr "" 176 178 177 #: cg_print.c:1 09179 #: cg_print.c:113 178 180 #, c-format 179 181 msgid " <cycle %d as a whole> [%d]\n" 180 182 msgstr "" 181 183 182 #: cg_print.c:33 5184 #: cg_print.c:339 183 185 #, c-format 184 186 msgid "%6.6s %5.5s %7.7s %11.11s %7.7s %7.7s <spontaneous>\n" 185 187 msgstr "" 186 188 187 #: cg_print.c:3 36189 #: cg_print.c:340 188 190 #, c-format 189 191 msgid "%6.6s %5.5s %7.7s %7.7s %7.7s %7.7s <spontaneous>\n" 190 192 msgstr "" 191 193 192 #: cg_print.c:57 0194 #: cg_print.c:574 193 195 msgid "" 194 196 "Index by function name\n" … … 196 198 msgstr "" 197 199 198 #: cg_print.c:6 27 cg_print.c:636200 #: cg_print.c:631 cg_print.c:640 199 201 #, c-format 200 202 msgid "<cycle %d>" 201 203 msgstr "" 202 204 203 #: corefile.c:6 1205 #: corefile.c:64 204 206 #, c-format 205 207 msgid "%s: could not open %s.\n" 206 208 msgstr "" 207 209 208 #: corefile.c:7 5 corefile.c:109210 #: corefile.c:78 corefile.c:112 209 211 #, c-format 210 212 msgid "%s: unable to parse mapping file %s.\n" 211 213 msgstr "" 212 214 213 #: corefile.c:15 1215 #: corefile.c:154 214 216 #, c-format 215 217 msgid "%s: %s: not in a.out format\n" 216 218 msgstr "" 217 219 218 #: corefile.c:16 2220 #: corefile.c:165 219 221 #, c-format 220 222 msgid "%s: can't find .text section in %s\n" 221 223 msgstr "" 222 224 223 #: corefile.c:22 0225 #: corefile.c:223 224 226 #, c-format 225 227 msgid "%s: ran out room for %lu bytes of text space\n" 226 228 msgstr "" 227 229 228 #: corefile.c:23 4230 #: corefile.c:237 229 231 #, c-format 230 232 msgid "%s: can't do -c\n" 231 233 msgstr "" 232 234 233 #: corefile.c:2 65235 #: corefile.c:272 234 236 #, c-format 235 237 msgid "%s: -c not supported on architecture %s\n" 236 238 msgstr "" 237 239 238 #: corefile.c:43 2240 #: corefile.c:439 239 241 #, c-format 240 242 msgid "%s: file `%s' has no symbols\n" 241 243 msgstr "" 242 244 243 #: corefile.c:73 2245 #: corefile.c:739 244 246 #, c-format 245 247 msgid "%s: somebody miscounted: ltab.len=%d instead of %ld\n" 246 248 msgstr "" 247 249 248 #: gmon_io.c:50 gmon_io.c:71 249 #, c-format 250 msgid "%s: bfd_vma has unexpected size of %ld bytes\n" 251 msgstr "" 252 253 #: gmon_io.c:107 gmon_io.c:199 250 #: gmon_io.c:83 gmon_io.c:137 gmon_io.c:188 gmon_io.c:216 gmon_io.c:386 251 #: gmon_io.c:413 gmon_io.c:609 gmon_io.c:634 252 #, c-format 253 msgid "%s: bits per address has unexpected value of %u\n" 254 msgstr "" 255 256 #: gmon_io.c:252 gmon_io.c:347 254 257 #, c-format 255 258 msgid "%s: file too short to be a gmon file\n" 256 259 msgstr "" 257 260 258 #: gmon_io.c: 117 gmon_io.c:233261 #: gmon_io.c:262 gmon_io.c:396 259 262 #, c-format 260 263 msgid "%s: file `%s' has bad magic cookie\n" 261 264 msgstr "" 262 265 263 #: gmon_io.c: 128266 #: gmon_io.c:273 264 267 #, c-format 265 268 msgid "%s: file `%s' has unsupported version %d\n" 266 269 msgstr "" 267 270 268 #: gmon_io.c: 158271 #: gmon_io.c:303 269 272 #, c-format 270 273 msgid "%s: %s: found bad tag %d (file corrupted?)\n" 271 274 msgstr "" 272 275 273 #: gmon_io.c: 221276 #: gmon_io.c:369 274 277 #, c-format 275 278 msgid "%s: profiling rate incompatible with first gmon file\n" 276 279 msgstr "" 277 280 278 #: gmon_io.c: 250281 #: gmon_io.c:429 279 282 #, c-format 280 283 msgid "%s: incompatible with first gmon file\n" 281 284 msgstr "" 282 285 283 #: gmon_io.c: 278286 #: gmon_io.c:457 284 287 #, c-format 285 288 msgid "%s: file '%s' does not appear to be in gmon.out format\n" 286 289 msgstr "" 287 290 288 #: gmon_io.c: 299291 #: gmon_io.c:478 289 292 #, c-format 290 293 msgid "%s: unexpected EOF after reading %d/%d bins\n" 291 294 msgstr "" 292 295 293 #: gmon_io.c: 335296 #: gmon_io.c:511 294 297 msgid "time is in ticks, not seconds\n" 295 298 msgstr "" 296 299 297 #: gmon_io.c: 341 gmon_io.c:475300 #: gmon_io.c:517 gmon_io.c:704 298 301 #, c-format 299 302 msgid "%s: don't know how to deal with file format %d\n" 300 303 msgstr "" 301 304 302 #: gmon_io.c: 348305 #: gmon_io.c:524 303 306 #, c-format 304 307 msgid "File `%s' (version %d) contains:\n" 305 308 msgstr "" 306 309 307 #: gmon_io.c:350 308 #, c-format 309 msgid "\t%d histogram record%s\n" 310 msgstr "" 311 312 #: gmon_io.c:352 313 #, c-format 314 msgid "\t%d call-graph record%s\n" 315 msgstr "" 316 317 #: gmon_io.c:354 318 #, c-format 319 msgid "\t%d basic-block count record%s\n" 320 msgstr "" 321 322 #: gprof.c:145 310 #: gmon_io.c:527 311 #, c-format 312 msgid "\t%d histogram record\n" 313 msgstr "" 314 315 #: gmon_io.c:528 316 #, c-format 317 msgid "\t%d histogram records\n" 318 msgstr "" 319 320 #: gmon_io.c:530 321 #, c-format 322 msgid "\t%d call-graph record\n" 323 msgstr "" 324 325 #: gmon_io.c:531 326 #, c-format 327 msgid "\t%d call-graph records\n" 328 msgstr "" 329 330 #: gmon_io.c:533 331 #, c-format 332 msgid "\t%d basic-block count record\n" 333 msgstr "" 334 335 #: gmon_io.c:534 336 #, c-format 337 msgid "\t%d basic-block count records\n" 338 msgstr "" 339 340 #: gprof.c:147 323 341 #, c-format 324 342 msgid "" … … 338 356 msgstr "" 339 357 340 #: gprof.c:16 1358 #: gprof.c:163 341 359 #, c-format 342 360 msgid "Report bugs to %s\n" 343 361 msgstr "" 344 362 345 #: gprof.c:23 0363 #: gprof.c:235 346 364 #, c-format 347 365 msgid "%s: debugging not supported; -d ignored\n" 348 366 msgstr "" 349 367 350 #: gprof.c:31 0368 #: gprof.c:315 351 369 #, c-format 352 370 msgid "%s: unknown file format %s\n" … … 354 372 355 373 #. This output is intended to follow the GNU standards document. 356 #: gprof.c:39 4374 #: gprof.c:399 357 375 #, c-format 358 376 msgid "GNU gprof %s\n" 359 377 msgstr "" 360 378 361 #: gprof.c: 395379 #: gprof.c:400 362 380 msgid "" 363 381 "Based on BSD gprof, copyright 1983 Regents of the University of California.\n" 364 382 msgstr "" 365 383 366 #: gprof.c: 396384 #: gprof.c:401 367 385 msgid "" 368 386 "This program is free software. This program has absolutely no warranty.\n" 369 387 msgstr "" 370 388 371 #: gprof.c:4 37389 #: gprof.c:442 372 390 #, c-format 373 391 msgid "%s: unknown demangling style `%s'\n" 374 392 msgstr "" 375 393 376 #: gprof.c:4 57394 #: gprof.c:462 377 395 #, c-format 378 396 msgid "" … … 380 398 msgstr "" 381 399 382 #: gprof.c:5 57400 #: gprof.c:562 383 401 #, c-format 384 402 msgid "%s: sorry, file format `prof' is not yet supported\n" 385 403 msgstr "" 386 404 387 #: gprof.c:6 18405 #: gprof.c:623 388 406 #, c-format 389 407 msgid "%s: gmon.out file is missing histogram\n" 390 408 msgstr "" 391 409 392 #: gprof.c:6 25410 #: gprof.c:630 393 411 #, c-format 394 412 msgid "%s: gmon.out file is missing call-graph data\n" 395 413 msgstr "" 396 414 397 #: hist.c:1 58415 #: hist.c:122 398 416 #, c-format 399 417 msgid "%s: `%s' is incompatible with first gmon file\n" 400 418 msgstr "" 401 419 402 #: hist.c:1 74420 #: hist.c:138 403 421 #, c-format 404 422 msgid "%s: %s: unexpected EOF after reading %d of %d samples\n" 405 423 msgstr "" 406 424 407 #: hist.c:3 87425 #: hist.c:351 408 426 #, c-format 409 427 msgid "%c%c/call" 410 428 msgstr "" 411 429 412 #: hist.c:395 430 #: hist.c:359 431 #, c-format 413 432 msgid "" 414 433 " for %.2f%% of %.2f %s\n" … … 416 435 msgstr "" 417 436 418 #: hist.c: 401437 #: hist.c:365 419 438 #, c-format 420 439 msgid "" … … 423 442 msgstr "" 424 443 425 #: hist.c: 406444 #: hist.c:370 426 445 msgid "" 427 446 " no time accumulated\n" … … 429 448 msgstr "" 430 449 431 #: hist.c: 413450 #: hist.c:377 432 451 msgid "cumulative" 433 452 msgstr "" 434 453 435 #: hist.c: 413454 #: hist.c:377 436 455 msgid "self " 437 456 msgstr "" 438 457 439 #: hist.c: 413458 #: hist.c:377 440 459 msgid "total " 441 460 msgstr "" 442 461 443 #: hist.c: 415462 #: hist.c:380 444 463 msgid "time" 445 464 msgstr "" 446 465 447 #: hist.c: 415466 #: hist.c:380 448 467 msgid "calls" 449 468 msgstr "" 450 469 451 #: hist.c: 504470 #: hist.c:469 452 471 msgid "" 453 472 "\n" … … 457 476 msgstr "" 458 477 459 #: hist.c: 510478 #: hist.c:475 460 479 msgid "Flat profile:\n" 461 480 msgstr "" 462 481 482 #: mips.c:75 483 #, c-format 484 msgid "[find_call] 0x%lx: jal" 485 msgstr "" 486 487 #: mips.c:100 488 #, c-format 489 msgid "[find_call] 0x%lx: jalr\n" 490 msgstr "" 491 463 492 #: source.c:163 464 493 #, c-format … … 471 500 msgstr "" 472 501 473 #: utils.c:9 3502 #: utils.c:96 474 503 #, c-format 475 504 msgid " <cycle %d>" -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/search_list.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* search-list.c 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 27 27 28 28 void 29 DEFUN (search_list_append, (list, paths), 30 Search_List * list AND const char *paths) 29 search_list_append (list, paths) 30 Search_List *list; 31 const char *paths; 31 32 { 32 33 Search_List_Elem *new_el; 33 34 const char *beg, *colon; 34 int len;35 unsigned int len; 35 36 36 37 colon = paths - 1; -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/source.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* source.c - Keep track of source files. 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 30 30 31 31 /* Default option values. */ 32 b oolcreate_annotation_files = FALSE;32 bfd_boolean create_annotation_files = FALSE; 33 33 34 34 Search_List src_search_list = {0, 0}; … … 37 37 38 38 Source_File * 39 DEFUN (source_file_lookup_path, (path), const char *path) 39 source_file_lookup_path (path) 40 const char *path; 40 41 { 41 42 Source_File *sf; … … 64 65 65 66 Source_File * 66 DEFUN (source_file_lookup_name, (filename), const char *filename) 67 source_file_lookup_name (filename) 68 const char *filename; 67 69 { 68 70 const char *fname; … … 91 93 92 94 FILE * 93 DEFUN (annotate_source, (sf, max_width, annote, arg), 94 Source_File * sf AND int max_width 95 AND void (*annote) PARAMS ((char *buf, int w, int l, void *arg)) 96 AND void *arg) 95 annotate_source (sf, max_width, annote, arg) 96 Source_File *sf; 97 unsigned int max_width; 98 void (*annote) PARAMS ((char *, unsigned int, int, void *)); 99 void *arg; 97 100 { 98 static b oolfirst_file = TRUE;101 static bfd_boolean first_file = TRUE; 99 102 int i, line_num, nread; 100 b oolnew_line;103 bfd_boolean new_line; 101 104 char buf[8192]; 102 105 char fname[PATH_MAX]; -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/source.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* source.h 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 23 23 #define source_h 24 24 25 #include <stdio.h>26 #include "gprof.h"27 #include "search_list.h"28 29 25 typedef struct source_file 30 26 { … … 39 35 40 36 /* Options. */ 41 extern bool create_annotation_files; /* Create annotated output files? */ 37 38 /* Create annotated output files? */ 39 extern bfd_boolean create_annotation_files; 42 40 43 41 /* List of directories to search for source files. */ … … 59 57 that summary statistics can be printed. If the returned file 60 58 is not stdout, it should be closed when done with it. */ 61 extern FILE *annotate_source PARAMS ((Source_File * sf, int max_width,62 void (*annote) (char *b, int w, int l,63 void *arg),64 void *arg));59 extern FILE *annotate_source 60 PARAMS ((Source_File *sf, unsigned int max_width, 61 void (*annote) (char *, unsigned int, int, PTR arg), 62 PTR arg)); 65 63 #endif /* source_h */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/sparc.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 29 #include "gprof.h" 30 #include "search_list.h" 31 #include "source.h" 32 #include "symtab.h" 20 33 #include "cg_arcs.h" 21 34 #include "corefile.h" 22 35 #include "hist.h" 23 #include "symtab.h"24 36 25 37 /* … … 27 39 */ 28 40 #define CALL (0xc0000000) 41 42 void sparc_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 29 43 30 44 void … … 34 48 bfd_vma p_highpc; 35 49 { 36 bfd_vma dest_pc, delta;37 unsigned int *instr;50 bfd_vma pc, dest_pc; 51 unsigned int insn; 38 52 Sym *child; 39 40 delta = (bfd_vma) core_text_space - core_text_sect->vma;41 53 42 54 if (core_text_space == 0) … … 55 67 parent->name, (unsigned long) p_lowpc, 56 68 (unsigned long) p_highpc)); 57 for (instr = (unsigned int *) (((p_lowpc + delta) + 3) &~ 3); 58 instr < (unsigned int *) (p_highpc + delta); 59 ++instr) 69 for (pc = (p_lowpc + 3) & ~(bfd_vma) 3; pc < p_highpc; pc += 4) 60 70 { 61 if ((*instr & CALL)) 71 insn = bfd_get_32 (core_bfd, ((unsigned char *) core_text_space 72 + pc - core_text_sect->vma)); 73 if (insn & CALL) 62 74 { 63 75 DBG (CALLDEBUG, 64 printf ("[find_call] 0x%lx: callf", 65 (unsigned long) instr - delta)); 76 printf ("[find_call] 0x%lx: callf", (unsigned long) pc)); 66 77 /* 67 78 * Regular pc relative addressing check that this is the 68 79 * address of a function. 69 80 */ 70 dest_pc = ((bfd_vma) (instr + (*instr & ~CALL))) - delta; 81 dest_pc = pc + (((bfd_signed_vma) (insn & 0x3fffffff) 82 ^ 0x20000000) - 0x20000000); 71 83 if (dest_pc >= s_lowpc && dest_pc <= s_highpc) 72 84 { -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/sym_ids.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* sym_ids.c 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 21 21 22 22 23 #include <ctype.h>24 25 23 #include "libiberty.h" 24 #include "safe-ctype.h" 25 #include "gprof.h" 26 #include "search_list.h" 27 #include "source.h" 28 #include "symtab.h" 26 29 #include "cg_arcs.h" 27 30 #include "sym_ids.h" … … 32 35 char *spec; /* Parsing modifies this. */ 33 36 Table_Id which_table; 34 b oolhas_right;37 bfd_boolean has_right; 35 38 36 39 struct match … … 45 48 *id_list; 46 49 50 static void parse_spec 51 PARAMS ((char *, Sym *)); 52 static void parse_id 53 PARAMS ((struct sym_id *)); 54 static bfd_boolean match 55 PARAMS ((Sym *, Sym *)); 56 static void extend_match 57 PARAMS ((struct match *, Sym *, Sym_Table *, bfd_boolean)); 58 59 47 60 Sym_Table syms[NUM_TABLES]; 48 61 … … 73 86 74 87 void 75 DEFUN (sym_id_add, (spec, which_table), 76 const char *spec AND Table_Id which_table) 88 sym_id_add (spec, which_table) 89 const char *spec; 90 Table_Id which_table; 77 91 { 78 92 struct sym_id *id; … … 102 116 103 117 static void 104 DEFUN (parse_spec, (spec, sym), char *spec AND Sym * sym) 118 parse_spec (spec, sym) 119 char *spec; 120 Sym *sym; 105 121 { 106 122 char *colon; … … 125 141 if (strlen (spec)) 126 142 { 127 if ( isdigit ((unsigned char)spec[0]))143 if (ISDIGIT (spec[0])) 128 144 sym->line_num = atoi (spec); 129 145 else … … 141 157 sym->file = &non_existent_file; 142 158 } 143 else if ( isdigit ((unsigned char)*spec))159 else if (ISDIGIT (*spec)) 144 160 { 145 161 sym->line_num = atoi (spec); … … 157 173 158 174 static void 159 DEFUN (parse_id, (id), struct sym_id *id) 175 parse_id (id) 176 struct sym_id *id; 160 177 { 161 178 char *slash; … … 205 222 /* Return TRUE iff PATTERN matches SYM. */ 206 223 207 static bool 208 DEFUN (match, (pattern, sym), Sym * pattern AND Sym * sym) 224 static bfd_boolean 225 match (pattern, sym) 226 Sym *pattern; 227 Sym *sym; 209 228 { 210 229 return (pattern->file ? pattern->file == sym->file : TRUE) … … 218 237 219 238 static void 220 DEFUN (extend_match, (m, sym, tab, second_pass), 221 struct match *m AND Sym * sym AND Sym_Table * tab AND bool second_pass) 239 extend_match (m, sym, tab, second_pass) 240 struct match *m; 241 Sym *sym; 242 Sym_Table *tab; 243 bfd_boolean second_pass; 222 244 { 223 245 if (m->prev_match != sym - 1) … … 254 276 255 277 void 256 DEFUN_VOID (sym_id_parse)278 sym_id_parse () 257 279 { 258 280 Sym *sym, *left, *right; … … 352 374 very big (the user has to type them!), so a linear search is probably 353 375 tolerable. */ 354 bool 355 DEFUN (sym_id_arc_is_present, (symtab, from, to), 356 Sym_Table * symtab AND Sym * from AND Sym * to) 376 bfd_boolean 377 sym_id_arc_is_present (sym_tab, from, to) 378 Sym_Table *sym_tab; 379 Sym *from; 380 Sym *to; 357 381 { 358 382 Sym *sym; 359 383 360 for (sym = sym tab->base; sym < symtab->limit; ++sym)384 for (sym = sym_tab->base; sym < sym_tab->limit; ++sym) 361 385 { 362 386 if (from->addr >= sym->addr && from->addr <= sym->end_addr -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/sym_ids.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* sym_ids.h 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 23 23 #define sym_ids_h 24 24 25 #include "symtab.h"26 27 25 typedef enum 28 26 { … … 39 37 extern Sym_Table syms[NUM_TABLES]; 40 38 41 extern void sym_id_add 42 extern void sym_id_parse 43 extern b ool sym_id_arc_is_presentPARAMS ((Sym_Table *, Sym *, Sym *));39 extern void sym_id_add PARAMS ((const char *, Table_Id)); 40 extern void sym_id_parse PARAMS ((void)); 41 extern bfd_boolean sym_id_arc_is_present PARAMS ((Sym_Table *, Sym *, Sym *)); 44 42 45 43 #endif /* sym_ids_h */ -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/symtab.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* symtab.c 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 22 22 23 23 #include "gprof.h" 24 #include "search_list.h" 25 #include "source.h" 26 #include "symtab.h" 24 27 #include "cg_arcs.h" 25 28 #include "corefile.h" 26 #include "symtab.h" 29 30 static int cmp_addr PARAMS ((const PTR, const PTR)); 27 31 28 32 Sym_Table symtab; … … 32 36 33 37 void 34 DEFUN (sym_init, (sym), Sym * sym) 38 sym_init (sym) 39 Sym *sym; 35 40 { 36 41 memset (sym, 0, sizeof (*sym)); … … 56 61 57 62 static int 58 DEFUN (cmp_addr, (lp, rp), const PTR lp AND const PTR rp) 59 { 60 Sym *left = (Sym *) lp; 61 Sym *right = (Sym *) rp; 63 cmp_addr (lp, rp) 64 const PTR lp; 65 const PTR rp; 66 { 67 const Sym *left = (const Sym *) lp; 68 const Sym *right = (const Sym *) rp; 62 69 63 70 if (left->addr > right->addr) … … 74 81 75 82 void 76 DEFUN (symtab_finalize, (tab), Sym_Table * tab) 83 symtab_finalize (tab) 84 Sym_Table *tab; 77 85 { 78 86 Sym *src, *dst; … … 171 179 172 180 Sym * 173 DEFUN (dbg_sym_lookup, (symtab, address), Sym_Table * symtab AND bfd_vma address) 181 dbg_sym_lookup (sym_tab, address) 182 Sym_Table *sym_tab; 183 bfd_vma address; 174 184 { 175 185 long low, mid, high; … … 179 189 (unsigned long) address); 180 190 181 sym = sym tab->base;182 for (low = 0, high = sym tab->len - 1; low != high;)191 sym = sym_tab->base; 192 for (low = 0, high = sym_tab->len - 1; low != high;) 183 193 { 184 194 mid = (high + low) >> 1; … … 210 220 If address does not hit any symbol, 0 is returned. */ 211 221 Sym * 212 DEFUN (sym_lookup, (symtab, address), Sym_Table * symtab AND bfd_vma address) 222 sym_lookup (sym_tab, address) 223 Sym_Table *sym_tab; 224 bfd_vma address; 213 225 { 214 226 long low, high; … … 219 231 #endif /* DEBUG */ 220 232 221 if (!sym tab->len)233 if (!sym_tab->len) 222 234 return 0; 223 235 224 sym = sym tab->base;225 for (low = 0, high = sym tab->len - 1; low != high;)236 sym = sym_tab->base; 237 for (low = 0, high = sym_tab->len - 1; low != high;) 226 238 { 227 239 DBG (LOOKUPDEBUG, ++probes); … … 240 252 DBG (LOOKUPDEBUG, 241 253 printf ("[sym_lookup] %d probes (symtab->len=%u)\n", 242 probes, sym tab->len - 1));254 probes, sym_tab->len - 1)); 243 255 return &sym[mid]; 244 256 } … … 261 273 { 262 274 DBG (LOOKUPDEBUG, printf ("[sym_lookup] %d (%u) probes, fall off\n", 263 probes, sym tab->len - 1));275 probes, sym_tab->len - 1)); 264 276 return &sym[mid + 1]; 265 277 } -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/symtab.h
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* symtab.h 2 2 3 Copyright 2000, 2001 Free Software Foundation, Inc.3 Copyright 2000, 2001, 2002 Free Software Foundation, Inc. 4 4 5 5 This file is part of GNU Binutils. … … 23 23 #define symtab_h 24 24 25 #include "bfd.h"26 #include "gprof.h"27 28 25 /* For a profile to be intelligible to a human user, it is necessary 29 26 to map code-addresses into source-code information. Source-code … … 33 30 The symbol table is used to map addresses into source-code 34 31 information. */ 35 36 #include "source.h"37 32 38 33 #define NBBS 10 … … 84 79 int index; /* Index in the graph list. */ 85 80 int top_order; /* Graph call chain top-sort order. */ 86 b oolprint_flag; /* Should this be printed? */81 bfd_boolean print_flag; /* Should this be printed? */ 87 82 struct 88 83 { … … 120 115 extern void sym_init PARAMS ((Sym *)); 121 116 extern void symtab_finalize PARAMS ((Sym_Table *)); 117 #ifdef DEBUG 118 extern Sym *dbg_sym_lookup PARAMS ((Sym_Table *, bfd_vma)); 119 #endif 122 120 extern Sym *sym_lookup PARAMS ((Sym_Table *, bfd_vma)); 123 121 extern void find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/tahoe.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983, 2001 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993, 2001 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 29 #include "gprof.h" 30 #include "search_list.h" 31 #include "source.h" 32 #include "symtab.h" 20 33 #include "cg_arcs.h" 21 34 #include "corefile.h" 22 35 #include "hist.h" 23 #include "symtab.h"24 36 25 37 /* … … 45 57 * A symbol to be the child of indirect callf: 46 58 */ 47 Sym indirectchild; 48 49 50 tahoe_operandenum 59 static Sym indirectchild; 60 61 static tahoe_operandenum tahoe_operandmode PARAMS ((unsigned char *)); 62 static char *tahoe_operandname PARAMS ((tahoe_operandenum)); 63 static long tahoe_operandlength PARAMS ((unsigned char *)); 64 static bfd_signed_vma tahoe_offset PARAMS ((unsigned char *)); 65 void tahoe_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 66 67 static tahoe_operandenum 51 68 tahoe_operandmode (modep) 52 69 unsigned char *modep; 53 70 { 54 long usesreg = ((long) *modep)& 0xf;55 56 switch (( (long) *modep) >> 4)71 long usesreg = *modep & 0xf; 72 73 switch ((*modep >> 4) & 0xf) 57 74 { 58 75 case 0: … … 90 107 } 91 108 92 char *109 static char * 93 110 tahoe_operandname (mode) 94 111 tahoe_operandenum mode; … … 144 161 } 145 162 146 long163 static long 147 164 tahoe_operandlength (modep) 148 165 unsigned char *modep; … … 182 199 } 183 200 184 bfd_vma185 tahoe_ reladdr(modep)186 char *modep;201 static bfd_signed_vma 202 tahoe_offset (modep) 203 unsigned char *modep; 187 204 { 188 205 tahoe_operandenum mode = tahoe_operandmode (modep); 189 char *cp; 190 short *sp; 191 long *lp; 192 int i; 193 long value = 0; 194 195 cp = modep; 196 ++cp; /* skip over the mode */ 206 207 ++modep; /* skip over the mode */ 197 208 switch (mode) 198 209 { 199 210 default: 200 211 fprintf (stderr, "[reladdr] not relative address\n"); 201 return (bfd_vma) modep;212 return 0; 202 213 case byterel: 203 return (bfd_vma) (cp + sizeof *cp + *cp);214 return 1 + bfd_get_signed_8 (core_bfd, modep); 204 215 case wordrel: 205 for (i = 0; (size_t) i < sizeof *sp; i++) 206 value = (value << 8) + (cp[i] & 0xff); 207 return (bfd_vma) (cp + sizeof *sp + value); 216 return 2 + bfd_get_signed_16 (core_bfd, modep); 208 217 case longrel: 209 for (i = 0; (size_t) i < sizeof *lp; i++) 210 value = (value << 8) + (cp[i] & 0xff); 211 return (bfd_vma) (cp + sizeof *lp + value); 218 return 4 + bfd_get_signed_32 (core_bfd, modep); 212 219 } 213 220 } … … 224 231 tahoe_operandenum mode; 225 232 tahoe_operandenum firstmode; 226 bfd_vma destpc;227 static b oolinited = FALSE;233 bfd_vma pc, destpc; 234 static bfd_boolean inited = FALSE; 228 235 229 236 if (!inited) … … 250 257 parent->name, (unsigned long) p_lowpc, 251 258 (unsigned long) p_highpc)); 252 for (instructp = (unsigned char *) core_text_space + p_lowpc; 253 instructp < (unsigned char *) core_text_space + p_highpc; 254 instructp += length) 259 for (pc = p_lowpc; pc < p_highpc; pc += length) 255 260 { 256 261 length = 1; 257 if (*instructp == CALLF) 262 instructp = ((unsigned char *) core_text_space 263 + pc - core_text_sect->vma); 264 if ((*instructp & 0xff) == CALLF) 258 265 { 259 266 /* … … 262 269 */ 263 270 DBG (CALLDEBUG, printf ("[findcall]\t0x%lx:callf", 264 ((unsigned long) 265 (instructp 266 - (unsigned char *) core_text_space)))); 271 (unsigned long) pc)); 267 272 firstmode = tahoe_operandmode (instructp + length); 268 273 switch (firstmode) … … 308 313 * a function. 309 314 */ 310 destpc = tahoe_reladdr (instructp + length) 311 - (bfd_vma) core_text_space; 315 destpc = pc + tahoe_offset (instructp + length); 312 316 if (destpc >= s_lowpc && destpc <= s_highpc) 313 317 { -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/utils.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983, 199 8, 2001 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993, 2001 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 #include <demangle.h>29 #include "demangle.h" 20 30 #include "gprof.h" 31 #include "search_list.h" 32 #include "source.h" 33 #include "symtab.h" 21 34 #include "cg_arcs.h" 22 #include " symtab.h"35 #include "utils.h" 23 36 24 37 … … 27 40 */ 28 41 int 29 DEFUN (print_name_only, (self), Sym * self) 42 print_name_only (self) 43 Sym *self; 30 44 { 31 45 const char *name = self->name; … … 86 100 87 101 void 88 DEFUN (print_name, (self), Sym * self) 102 print_name (self) 103 Sym *self; 89 104 { 90 105 print_name_only (self); -
Property cvs2svn:cvs-rev
changed from
-
branches/GNU/src/binutils/gprof/vax.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* 2 * Copyright (c) 1983, 2001 Regents of the University of California.3 * All rights reserved.2 * Copyright (c) 1983, 1993, 2001 3 * The Regents of the University of California. All rights reserved. 4 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that: (1) source distributions retain this entire copyright 7 * notice and comment, and (2) distributions including binaries display 8 * the following acknowledgement: ``This product includes software 9 * developed by the University of California, Berkeley and its contributors'' 10 * in the documentation or other materials provided with the distribution 11 * and in all advertising materials mentioning features or use of this 12 * software. Neither the name of the University nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 16 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the University nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 18 28 */ 19 29 #include "gprof.h" 30 #include "search_list.h" 31 #include "source.h" 32 #include "symtab.h" 20 33 #include "cg_arcs.h" 21 34 #include "corefile.h" 22 35 #include "hist.h" 23 #include "symtab.h"24 36 25 37 /* … … 42 54 typedef enum opermodes operandenum; 43 55 56 #if 0 57 /* Here to document only. We can't use this when cross compiling as 58 the bitfield layout might not be the same as native. */ 44 59 struct modebyte 45 60 { … … 47 62 unsigned int modefield:4; 48 63 }; 64 #endif 49 65 50 66 /* 51 67 * A symbol to be the child of indirect calls: 52 68 */ 53 Sym indirectchild; 54 69 static Sym indirectchild; 70 71 static operandenum vax_operandmode PARAMS ((unsigned char *)); 72 static char *vax_operandname PARAMS ((operandenum)); 73 static long vax_operandlength PARAMS ((unsigned char *)); 74 static bfd_signed_vma vax_offset PARAMS ((unsigned char *)); 75 void vax_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); 55 76 56 77 static operandenum 57 78 vax_operandmode (modep) 58 struct modebyte*modep;59 { 60 long usesreg = modep->regfield;61 62 switch ( modep->modefield)79 unsigned char *modep; 80 { 81 int usesreg = *modep & 0xf; 82 83 switch ((*modep >> 4) & 0xf) 63 84 { 64 85 case 0: … … 152 173 static long 153 174 vax_operandlength (modep) 154 struct modebyte*modep;175 unsigned char *modep; 155 176 { 156 177 … … 182 203 return 5; 183 204 case indexed: 184 return 1 + vax_operandlength ( (struct modebyte *) ((char *) modep)+ 1);205 return 1 + vax_operandlength (modep + 1); 185 206 } 186 207 /* NOTREACHED */ … … 188 209 } 189 210 190 static bfd_ vma191 vax_ reladdr(modep)192 struct modebyte*modep;211 static bfd_signed_vma 212 vax_offset (modep) 213 unsigned char *modep; 193 214 { 194 215 operandenum mode = vax_operandmode (modep); 195 char *cp; 196 short *sp; 197 long *lp; 198 199 cp = (char *) modep; 200 ++cp; /* skip over the mode */ 216 217 ++modep; /* skip over the mode */ 201 218 switch (mode) 202 219 { 203 220 default: 204 221 fprintf (stderr, "[reladdr] not relative address\n"); 205 return (bfd_vma) modep;222 return 0; 206 223 case byterel: 207 return (bfd_vma) (cp + sizeof *cp + *cp);224 return 1 + bfd_get_signed_8 (core_bfd, modep); 208 225 case wordrel: 209 sp = (short *) cp; 210 return (bfd_vma) (cp + sizeof *sp + *sp); 226 return 2 + bfd_get_signed_16 (core_bfd, modep); 211 227 case longrel: 212 lp = (long *) cp; 213 return (bfd_vma) (cp + sizeof *lp + *lp); 228 return 4 + bfd_get_signed_32 (core_bfd, modep); 214 229 } 215 230 } … … 227 242 operandenum mode; 228 243 operandenum firstmode; 229 bfd_vma destpc;230 static b oolinited = FALSE;244 bfd_vma pc, destpc; 245 static bfd_boolean inited = FALSE; 231 246 232 247 if (!inited) … … 253 268 parent->name, (unsigned long) p_lowpc, 254 269 (unsigned long) p_highpc)); 255 for (instructp = (unsigned char *) core_text_space + p_lowpc; 256 instructp < (unsigned char *) core_text_space + p_highpc; 257 instructp += length) 270 for (pc = p_lowpc; pc < p_highpc; pc += length) 258 271 { 259 272 length = 1; 260 if (*instructp == CALLS) 273 instructp = ((unsigned char *) core_text_space 274 + pc - core_text_sect->vma); 275 if ((*instructp & 0xff) == CALLS) 261 276 { 262 277 /* … … 265 280 */ 266 281 DBG (CALLDEBUG, 267 printf ("[findcall]\t0x%lx:calls", 268 ((unsigned long) 269 (instructp - (unsigned char *) core_text_space)))); 270 firstmode = vax_operandmode ((struct modebyte *) (instructp + length)); 282 printf ("[findcall]\t0x%lx:calls", (unsigned long) pc)); 283 firstmode = vax_operandmode (instructp + length); 271 284 switch (firstmode) 272 285 { … … 277 290 goto botched; 278 291 } 279 length += vax_operandlength ( (struct modebyte *) (instructp + length));280 mode = vax_operandmode ( (struct modebyte *) (instructp + length));292 length += vax_operandlength (instructp + length); 293 mode = vax_operandmode (instructp + length); 281 294 DBG (CALLDEBUG, 282 295 printf ("\tfirst operand is %s", vax_operandname (firstmode)); … … 300 313 */ 301 314 arc_add (parent, &indirectchild, (unsigned long) 0); 302 length += vax_operandlength ( 303 (struct modebyte *) (instructp + length)); 315 length += vax_operandlength (instructp + length); 304 316 continue; 305 317 case byterel: … … 311 323 * a function. 312 324 */ 313 destpc = vax_reladdr ((struct modebyte *) (instructp + length)) 314 - (bfd_vma) core_text_space; 325 destpc = pc + vax_offset (instructp + length); 315 326 if (destpc >= s_lowpc && destpc <= s_highpc) 316 327 { … … 329 340 */ 330 341 arc_add (parent, child, (unsigned long) 0); 331 length += vax_operandlength ((struct modebyte *) 332 (instructp + length)); 342 length += vax_operandlength (instructp + length); 333 343 continue; 334 344 } -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.