dpatel 02/09/25 12:51:31
Modified: gcc genindex.c
Log:
Optimize use of string functions.
Revision Changes Path
1.20 +29 -24 gcc3/gcc/genindex.c
Index: genindex.c
===================================================================
RCS file: /cvs/Darwin/gcc3/gcc/genindex.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- genindex.c 2002/09/17 22:54:19 1.19
+++ genindex.c 2002/09/25 19:51:30 1.20
@@ -171,6 +171,21 @@
init_gen_indexing ()
{
+ if (flag_gen_index || flag_debug_gen_index)
+ {
+ /* See if the list of indexed header file is to be checked
+ before generating index information for the headers. */
+ index_header_list_filename = getenv ("PB_INDEXED_HEADERS_FILE");
+ if (index_header_list_filename && *index_header_list_filename)
+ {
+ read_indexed_header_list ();
+ /* Irrespective of if indexed_header file is present or not,
+ switch ON indexed_header list. */
+ flag_check_indexed_header_list = 1;
+ }
+
+ }
+
if (flag_debug_gen_index)
{
flag_gen_index = 1;
@@ -197,17 +212,6 @@
if (flag_gen_index)
{
- /* See if the list of indexed header file is to be checked
- before generating index information for the headers. */
- index_header_list_filename = getenv ("PB_INDEXED_HEADERS_FILE");
- if (index_header_list_filename && *index_header_list_filename)
- {
- read_indexed_header_list ();
- /* Irrespective of if indexed_header file is present or not,
- switch ON indexed_header list. */
- flag_check_indexed_header_list = 1;
- }
-
/* open socket for communication */
index_socket_fd = connect_to_socket (index_host_name,
index_port_number);
@@ -216,6 +220,8 @@
warning ("Indexing information is not produced.");
flag_gen_index = 0;
}
+ else
+ flag_debug_gen_index = 0;
}
}
@@ -432,21 +438,19 @@
if (info)
{
- strcat (index_buffer, info);
+ strcpy (index_buffer + index_buffer_count, info);
index_buffer_count += info_length;
if (index_language != PB_INDEX_LANGUAGE_INVALID)
{
- sprintf(&nbuf[0],"%d ", index_language);
- strcat (index_buffer, nbuf);
- index_buffer_count += strlen (nbuf);
+ index_buffer_count += sprintf (index_buffer + index_buffer_count,
+ "%d", index_language);
}
}
if (number != -1)
{
- sprintf (&nbuf[0],"%u ", number);
- strcat (index_buffer, nbuf);
- index_buffer_count += strlen (nbuf);
+ index_buffer_count += sprintf (index_buffer + index_buffer_count,
+ "%u", number);
}
if (name)
@@ -468,7 +472,7 @@
index_buffer_count += 9;
index_buffer [index_buffer_count] = NULL;
}
- strcat (index_buffer, name);
+ strcpy (index_buffer + index_buffer_count, name);
index_buffer_count += name_length;
}
@@ -493,6 +497,7 @@
char *header;
int len = strlen (name);
int components;
+ int len_header;
/* If cpp-precomp is used as a preprocessor, then we have two
components. */
@@ -502,11 +507,11 @@
components = 1;
header = (char *) xmalloc (sizeof (char) * (40 + len));
- sprintf (header, "pbxindex-begin v1.2 0x%08lX %02u/%02u %s\n",
+ len_header = sprintf (header, "pbxindex-begin v1.2 0x%08lX %02u/%02u %s\n",
(unsigned long) getppid(), components, components, name);
- maybe_flush_index_buffer (len);
- strcat (index_buffer, header);
- index_buffer_count += strlen (header);
+ maybe_flush_index_buffer (len_header);
+ strcpy (index_buffer + index_buffer_count, header);
+ index_buffer_count += len_header;
free (header);
}
@@ -516,7 +521,7 @@
int len = strlen (footer);
maybe_flush_index_buffer (len);
- strcat (index_buffer, footer);
+ strcpy (index_buffer + index_buffer_count, footer);
index_buffer_count += len;
}