Makefile.in (toplev.o, halfpic.o): Depend on halfpic.h
authorKaveh R. Ghazi <ghazi@caip.rutgers.edu>
Sun, 28 Oct 2001 14:01:20 +0000 (14:01 +0000)
committerKaveh Ghazi <ghazi@gcc.gnu.org>
Sun, 28 Oct 2001 14:01:20 +0000 (14:01 +0000)
* Makefile.in (toplev.o, halfpic.o): Depend on halfpic.h
* i386/osfrose.h (SUBTARGET_SWITCHES): Add missing comma.
(FUNCTION_PROFILER): Const-ify.
* halfpic.c: Include "expr.h", "output.h" and "halfpic.h".
(eliminate_constant_term, assemble_name, output_addr_const):
Remove declarations.
(ptr_half_pic_address_p, half_pic_hash): Prototype.
(all_refs, half_pic_prefix, half_pic_hash, half_pic_declare,
half_pic_external, half_pic_address_p, half_pic_ptr): Const-ify.
* halfpic.h (ptr_half_pic_address_p, half_pic_finish): Prototype.
(half_pic_declare, half_pic_external): Const-ify.
* toplev.c: Include "halfpic.h".

From-SVN: r46583

gcc/ChangeLog
gcc/Makefile.in
gcc/config/i386/osfrose.h
gcc/halfpic.c
gcc/halfpic.h
gcc/toplev.c

index e524acec3aac6e17129d4c551aae1a85e3ef5cdc..38932065f8f60a772c21bf00c289459b6c0db737 100644 (file)
@@ -1,3 +1,18 @@
+2001-10-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Makefile.in (toplev.o, halfpic.o): Depend on halfpic.h
+       * i386/osfrose.h (SUBTARGET_SWITCHES): Add missing comma.
+       (FUNCTION_PROFILER): Const-ify.
+       * halfpic.c: Include "expr.h", "output.h" and "halfpic.h".
+       (eliminate_constant_term, assemble_name, output_addr_const):
+       Remove declarations.
+       (ptr_half_pic_address_p, half_pic_hash): Prototype.
+       (all_refs, half_pic_prefix, half_pic_hash, half_pic_declare,
+       half_pic_external, half_pic_address_p, half_pic_ptr): Const-ify.
+       * halfpic.h (ptr_half_pic_address_p, half_pic_finish): Prototype.
+       (half_pic_declare, half_pic_external): Const-ify.
+       * toplev.c: Include "halfpic.h".
+
 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
 
        * config/alpha/alpha.md, config/arm/arm.c, config/arm/arm.h,
index a365017de48b9ca94f70fd7bfa9d709dde200508..aad6cee3303babeffdbfac9bd937f45ff14e111c 100644 (file)
@@ -1370,7 +1370,7 @@ toplev.o : toplev.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(RTL_H) function.h \
    debug.h insn-config.h intl.h $(RECOG_H) Makefile toplev.h \
    dwarf2out.h sdbout.h dbxout.h $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) \
    graph.h $(LOOP_H) except.h $(REGS_H) $(TIMEVAR_H) $(lang_options_files) \
-   ssa.h $(PARAMS_H) $(TM_P_H) reload.h dwarf2asm.h $(TARGET_H)
+   ssa.h $(PARAMS_H) $(TM_P_H) reload.h dwarf2asm.h $(TARGET_H) halfpic.h
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
          -DTARGET_NAME=\"$(target_alias)\" \
          -c $(srcdir)/toplev.c
@@ -1616,7 +1616,7 @@ mips-tdump: mips-tdump.o version.o $(LIBDEPS)
 mips-tdump.o : mips-tdump.c $(CONFIG_H) $(RTL_H) $(SYSTEM_H)
 
 # Build file to support OSF/rose half-pic format.
-halfpic.o: halfpic.c $(CONFIG_H) $(RTL_H) $(TREE_H) $(SYSTEM_H)
+halfpic.o: halfpic.c $(CONFIG_H) $(RTL_H) $(TREE_H) $(SYSTEM_H) halfpic.h
 
 #\f
 # Generate header and source files from the machine description,
index 785aa4fe7a6990288e163e4ab334c321de16c538..9996291e3e6b0d10ecde73e99b9ed927a3a9d380 100644 (file)
@@ -58,7 +58,7 @@ Boston, MA 02111-1307, USA.  */
 #define SUBTARGET_SWITCHES                                             \
      { "half-pic",              MASK_HALF_PIC,                         \
        N_("Emit half-PIC code") },                                     \
-     { "no-half-pic",          -MASK_HALF_PIC, "" }                    \
+     { "no-half-pic",          -MASK_HALF_PIC, "" },                   \
      { "debug-half-pic",        MASK_HALF_PIC_DEBUG,                   \
        0 /* intentionally undoc */ },                                  \
      { "debugb",                MASK_HALF_PIC_DEBUG,                   \
@@ -209,8 +209,8 @@ do                                                                  \
   {                                                                    \
     if (!OSF_PROFILE_BEFORE_PROLOGUE)                                  \
       {                                                                        \
-       char *prefix = (TARGET_UNDERSCORES) ? "_" : "";                 \
-       char *lprefix = LPREFIX;                                        \
+       const char *const prefix = (TARGET_UNDERSCORES) ? "_" : "";     \
+       const char *const lprefix = LPREFIX;                            \
        int labelno = LABELNO;                                          \
                                                                        \
        /* Note that OSF/rose blew it in terms of calling mcount,       \
index fbe8f08ac73159fb72fbc50b2d8a2a7641fbb2af..4931212bdfe23cd2b1f541e1524ea7bb6f009f19 100644 (file)
@@ -35,19 +35,18 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #include "system.h"
 #include "tree.h"
 #include "rtl.h"
+#include "expr.h"
+#include "output.h"
 #include "obstack.h"
+#include "halfpic.h"
 
 #define obstack_chunk_alloc xmalloc
 #define obstack_chunk_free free
 
-extern rtx eliminate_constant_term ();
-extern void assemble_name ();
-extern void output_addr_const ();
-
 int flag_half_pic              = 0;    /* Global half-pic flag.  */
 int half_pic_number_ptrs       = 0;    /* # distinct pointers found */
 int half_pic_number_refs       = 0;    /* # half-pic references */
-int (*ptr_half_pic_address_p)() = half_pic_address_p;
+int (*ptr_half_pic_address_p) PARAMS ((rtx)) = half_pic_address_p;
 
 /* Obstack to hold generated pic names.  */
 static struct obstack half_pic_obstack;
@@ -59,15 +58,15 @@ struct all_refs {
   struct all_refs *next;       /* next name created */
   int             external_p;  /* name is an external reference */
   int             pointer_p;   /* pointer created.  */
-  char           *ref_name;    /* reference name to ptr to real_name */
+  const char     *ref_name;    /* reference name to ptr to real_name */
   int             ref_len;     /* reference name length */
-  char           *real_name;   /* real function/data name */
+  const char     *real_name;   /* real function/data name */
   int             real_len;    /* strlen (real_name) */
 };
 
 static struct all_refs *half_pic_names;
 
-static char *half_pic_prefix;
+static const char *half_pic_prefix;
 static int   half_pic_prefix_len;
 
 \f
@@ -83,16 +82,18 @@ static int   half_pic_prefix_len;
 
 #define HASHBITS 30
 
+static struct all_refs *half_pic_hash PARAMS ((const char *, int, int));
+
 static struct all_refs *
 half_pic_hash (name, len, create_p)
-     char *name;               /* name to hash */
+     const char *name;         /* name to hash */
      int len;                  /* length of the name (or 0 to call strlen) */
      int create_p;             /* != 0 to create new hash bucket if new */
 {
   static struct all_refs *hash_table[MAX_HASH_TABLE];
   static struct all_refs  zero_all_refs;
 
-  unsigned char *uname;
+  const unsigned char *uname;
   int hash;
   int i;
   int ch;
@@ -103,7 +104,7 @@ half_pic_hash (name, len, create_p)
     len = strlen (name);
 
   /* Compute hash code */
-  uname = (unsigned char *)name;
+  uname = (const unsigned char *)name;
   ch = uname[0];
   hash = len * 613 + ch;
   for (i = 1; i < len; i += 2)
@@ -246,7 +247,7 @@ half_pic_encode (decl)
 
 void
 half_pic_declare (name)
-     char *name;
+     const char *name;
 {
   struct all_refs *ptr;
 
@@ -270,7 +271,7 @@ half_pic_declare (name)
 
 void
 half_pic_external (name)
-     char *name;
+     const char *name;
 {
   struct all_refs *ptr;
 
@@ -296,7 +297,7 @@ int
 half_pic_address_p (addr)
      rtx addr;
 {
-  char *name;
+  const char *name;
   int len;
   struct all_refs *ptr;
 
@@ -363,7 +364,7 @@ struct rtx_def *
 half_pic_ptr (operand)
      rtx operand;
 {
-  char *name;
+  const char *name;
   struct all_refs *p;
   int len;
 
index 99367f7f6612a06d8f8d19676ca379fd85592564..ca318d85043f6f9c489a73355502534586daae55 100644 (file)
@@ -35,18 +35,19 @@ struct rtx_def;
    be true in the gen* programs).  */
 
 int flag_half_pic;                     /* Global half-pic flag.  */
-int (*ptr_half_pic_address_p) ();      /* ptr to half_pic_address_p () */
+int (*ptr_half_pic_address_p) PARAMS ((struct rtx_def *)); /* ptr to half_pic_address_p () */
 
 extern int  half_pic_number_ptrs;                              /* # distinct pointers found */
 extern int  half_pic_number_refs;                              /* # half-pic references */
-extern void half_pic_encode PARAMS ((union tree_node *));              /* encode whether half-pic */
-extern void half_pic_declare PARAMS ((char *));                        /* declare object local */
-extern void half_pic_external PARAMS ((char *));                       /* declare object external */
+extern void half_pic_encode PARAMS ((union tree_node *));      /* encode whether half-pic */
+extern void half_pic_declare PARAMS ((const char *));          /* declare object local */
+extern void half_pic_external PARAMS ((const char *));         /* declare object external */
 extern void half_pic_init PARAMS ((void));                     /* half_pic initialization */
 extern int  half_pic_address_p PARAMS ((struct rtx_def *));    /* true if an address is half-pic */
 extern struct rtx_def *half_pic_ptr PARAMS ((struct rtx_def *));       /* return RTX for half-pic pointer */
-/* Can't use prototype since FILE isn't defined yet.  */
-extern void half_pic_finish (/* FILE * */);            /* half_pic termination */
+#ifdef BUFSIZ
+extern void half_pic_finish PARAMS ((FILE *)); /* half_pic termination */
+#endif
 
 /* Macros to provide access to the half-pic stuff (so they can easily
    be stubbed out.  */
index c68a446ba29b9431b1912d32931e49646df7d73c..62dabc74438976a88b99c674d4441b1869d615ad 100644 (file)
@@ -85,6 +85,10 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #include "xcoffout.h"          /* Needed for external data
                                   declarations for e.g. AIX 4.x.  */
 #endif
+
+#ifdef HALF_PIC_DEBUG
+#include "halfpic.h"
+#endif
 \f
 #ifdef VMS
 /* The extra parameters substantially improve the I/O performance.  */