Fix TUI support checks in gdb.tui tests.
[deliverable/binutils-gdb.git] / gprof / basic_blocks.c
index 6fdee5af05d506d3b42451d2607584b94b952175..e1a3b1a508b81d9cb4c71049bf1966360a872a9d 100644 (file)
@@ -2,13 +2,13 @@
    of basic-block info to/from gmon.out; computing and formatting of
    basic-block related statistics.
 
    of basic-block info to/from gmon.out; computing and formatting of
    basic-block related statistics.
 
-   Copyright 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1999-2020 Free Software Foundation, Inc.
 
    This file is part of GNU Binutils.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
    This file is part of GNU Binutils.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-   02111-1307, USA.  */
+   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+   02110-1301, USA.  */
 \f
 \f
-#include "libiberty.h"
 #include "gprof.h"
 #include "gprof.h"
+#include "libiberty.h"
+#include "filenames.h"
 #include "basic_blocks.h"
 #include "corefile.h"
 #include "gmon_io.h"
 #include "basic_blocks.h"
 #include "corefile.h"
 #include "gmon_io.h"
@@ -60,7 +61,7 @@ cmp_bb (const PTR lp, const PTR rp)
 
   if (left->file && right->file)
     {
 
   if (left->file && right->file)
     {
-      r = strcmp (left->file->name, right->file->name);
+      r = filename_cmp (left->file->name, right->file->name);
 
       if (r)
        return r;
 
       if (r)
        return r;
@@ -247,7 +248,7 @@ bb_write_blocks (FILE *ofp, const char *filename)
        <filename>:<line-number>: (<function-name>:<bb-addr): <ncalls>  */
 
 void
        <filename>:<line-number>: (<function-name>:<bb-addr): <ncalls>  */
 
 void
-print_exec_counts ()
+print_exec_counts (void)
 {
   Sym **sorted_bbs, *sym;
   unsigned int i, j, len;
 {
   Sym **sorted_bbs, *sym;
   unsigned int i, j, len;
@@ -280,6 +281,8 @@ print_exec_counts ()
 
   for (i = 0; i < len; ++i)
     {
 
   for (i = 0; i < len; ++i)
     {
+      sym = sorted_bbs [i];
+
       if (sym->ncalls > 0 || ! ignore_zeros)
        {
          /* FIXME: This only works if bfd_vma is unsigned long.  */
       if (sym->ncalls > 0 || ! ignore_zeros)
        {
          /* FIXME: This only works if bfd_vma is unsigned long.  */
@@ -308,7 +311,7 @@ print_exec_counts ()
    line of a file in sequential order.
 
    Global variable bb_annotate_all_lines enables execution count
    line of a file in sequential order.
 
    Global variable bb_annotate_all_lines enables execution count
-   compression (counts are supressed if identical to the last one)
+   compression (counts are suppressed if identical to the last one)
    and prints counts on all executed lines.  Otherwise, print
    all basic-block execution counts exactly once on the line
    that starts the basic-block.  */
    and prints counts on all executed lines.  Otherwise, print
    all basic-block execution counts exactly once on the line
    that starts the basic-block.  */
@@ -316,7 +319,7 @@ print_exec_counts ()
 static void
 annotate_with_count (char *buf, unsigned int width, int line_num, PTR arg)
 {
 static void
 annotate_with_count (char *buf, unsigned int width, int line_num, PTR arg)
 {
-  Source_File *sf = arg;
+  Source_File *sf = (Source_File *) arg;
   Sym *b;
   unsigned int i;
   static unsigned long last_count;
   Sym *b;
   unsigned int i;
   static unsigned long last_count;
@@ -325,7 +328,7 @@ annotate_with_count (char *buf, unsigned int width, int line_num, PTR arg)
   b = NULL;
 
   if (line_num <= sf->num_lines)
   b = NULL;
 
   if (line_num <= sf->num_lines)
-    b = sf->line[line_num - 1];
+    b = (Sym *) sf->line[line_num - 1];
 
   if (!b)
     {
 
   if (!b)
     {
@@ -456,7 +459,7 @@ annotate_with_count (char *buf, unsigned int width, int line_num, PTR arg)
    regarding that source file are printed.  */
 
 void
    regarding that source file are printed.  */
 
 void
-print_annotated_source ()
+print_annotated_source (void)
 {
   Sym *sym, *line_stats, *new_line;
   Source_File *sf;
 {
   Sym *sym, *line_stats, *new_line;
   Source_File *sf;
@@ -485,7 +488,7 @@ print_annotated_source ()
     {
       if (sf->num_lines > 0)
        {
     {
       if (sf->num_lines > 0)
        {
-         sf->line = (void *) xmalloc (sf->num_lines * sizeof (sf->line[0]));
+         sf->line = (void **) xmalloc (sf->num_lines * sizeof (sf->line[0]));
          memset (sf->line, 0, sf->num_lines * sizeof (sf->line[0]));
        }
     }
          memset (sf->line, 0, sf->num_lines * sizeof (sf->line[0]));
        }
     }
@@ -499,7 +502,7 @@ print_annotated_source ()
                  && !sym_lookup (&syms[EXCL_ANNO], sym->addr))))
        {
          sym->file->ncalls += sym->ncalls;
                  && !sym_lookup (&syms[EXCL_ANNO], sym->addr))))
        {
          sym->file->ncalls += sym->ncalls;
-         line_stats = sym->file->line[sym->line_num - 1];
+         line_stats = (Sym *) sym->file->line[sym->line_num - 1];
 
          if (!line_stats)
            {
 
          if (!line_stats)
            {
@@ -549,7 +552,7 @@ print_annotated_source ()
 
          for (i = 0; i < table_len; ++i)
            {
 
          for (i = 0; i < table_len; ++i)
            {
-             sym = sf->line[i];
+             sym = (Sym *) sf->line[i];
 
              if (!sym || sym->ncalls == 0)
                  break;
 
              if (!sym || sym->ncalls == 0)
                  break;
This page took 0.025533 seconds and 4 git commands to generate.