toplev.c: Remove half-pic.
authorEric Christopher <echristo@gcc.gnu.org>
Thu, 6 Jun 2002 01:25:16 +0000 (01:25 +0000)
committerEric Christopher <echristo@gcc.gnu.org>
Thu, 6 Jun 2002 01:25:16 +0000 (01:25 +0000)
2002-06-05  Eric Christopher  <echristo@redhat.com>

* toplev.c: Remove half-pic.
* config/mips/mips.c: Ditto.
* config/mips/mips.h: Ditto. Remove unused defines.
* config/mips/openbsd.h: Update comment to reflect above.
* config/mips/mips.md: Remove half-pic constraints.
* halfpic.h: Delete.
* halfpic.c: Ditto.

From-SVN: r54296

gcc/ChangeLog
gcc/config/mips/mips.c
gcc/config/mips/mips.h
gcc/config/mips/mips.md
gcc/config/mips/openbsd.h
gcc/halfpic.c [deleted file]
gcc/halfpic.h [deleted file]
gcc/toplev.c

index 8fa7a5d489f0584b1f6c9e8a4a9ccde9d93730b0..042a369d7df3ef6f36e35e1bec2f646af2a1c265 100644 (file)
@@ -1,8 +1,18 @@
+2002-06-05  Eric Christopher  <echristo@redhat.com>
+
+       * toplev.c: Remove half-pic.
+       * config/mips/mips.c: Ditto.
+       * config/mips/mips.h: Ditto. Remove unused defines.
+       * config/mips/openbsd.h: Update comment to reflect above.
+       * config/mips/mips.md: Remove half-pic constraints.
+       * halfpic.h: Delete.
+       * halfpic.c: Ditto.
+
 2002-06-05  Jeffrey Law  <law@redhat.com>
 
         * pa.h (EXTRA_CONSTRAINT, T case): Further refine so that it
         rejects (mem (lo_sum (reg) (unspec))), but will allow
-        (mem (lo_sum (reg) (symbol_ref)) for PA2.0. 
+        (mem (lo_sum (reg) (symbol_ref)) for PA2.0.
 
 2002-06-05  Neil Booth  <neil@daikokuya.demon.co.uk>
 
@@ -52,7 +62,7 @@ Wed Jun  5 20:42:31 2002  J"orn Rennecke <joern.rennecke@superh.com>
        (diagnostic_set_info): Declare.
 
        * diagnostic.c (report_problematic_module): Rename to
-       diagnostic_repor_current_module. 
+       diagnostic_repor_current_module.
        (set_diagnostic_context): Remove.
        (count_error): Rename to diagnostic_error_count.
        (error_function_changed): Remove.
@@ -215,7 +225,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
 2002-06-03  Geoffrey Keating  <geoffk@redhat.com>
 
        Merge from pch-branch:
-       
+
        * gengtype.h (UNION_OR_STRUCT_P): New macro.
        * gengtype.c (write_gc_structure_fields): Use it.
        (write_gc_root): Use it here too.
@@ -362,7 +372,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        outside ifdefs.
        (incomplete_types): Likewise.
        (decl_scope_table): Likewise.
-       (dwarf2out_init): Don't call ggc_add_tree_varray_root.  
+       (dwarf2out_init): Don't call ggc_add_tree_varray_root.
        * cfglayout.c (scope_to_insns_finalize): Don't use VARRAY_FREE.
        * c-tree.h (struct lang_type): Update for change to length specifier.
        * c-parse.in (yylexstring): Don't use VARRAY_FREE.
@@ -436,7 +446,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        to list of includes.
 
        * gengtype.c (write_gc_marker_routine_for_structure): Name
-       the routines 'gt_ggc_mx_*' instead of 'gt_ggc_m_*'.  
+       the routines 'gt_ggc_mx_*' instead of 'gt_ggc_m_*'.
        (write_gc_types): Arrange for the tests with NULL to be inlined.
        (write_gc_roots): Update uses of procedure pointers.
        * ggc-common.c (gt_ggc_mx_rtx_def): Rename from gt_ggc_m_rtx_def.
@@ -579,7 +589,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        * c-tree.h (struct lang_identifier): Use gengtype.
        (union lang_tree_node): New.
        (c_mark_tree): Delete prototype.
-       * dwarf2out.c [!DWARF2_DEBUGGING_INFO]: Define dummy 
+       * dwarf2out.c [!DWARF2_DEBUGGING_INFO]: Define dummy
        dwarf2_debug_hooks.
        * gengtype-lex.l (IWORD): Allow 'bool'.
        (ptr_alias): Match.
@@ -664,7 +674,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        * config/d30v/d30v.c (d30v_init_expanders): Likewise.
        * config/arm/arm.c (arm_init_expanders): Likewise.
        * config/alpha/alpha.c (override_options): Likewise.
-       * gengtype.h (enum gc_used_enum): Add GC_MAYBE_POINTED_TO. 
+       * gengtype.h (enum gc_used_enum): Add GC_MAYBE_POINTED_TO.
        * gengtype.c (set_gc_used_type): Handle 'maybe_null' option.
        (write_gc_structure_fields): Don't handle 'really' option.
        Handle 'maybe_null' option.
@@ -985,7 +995,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        * tree.c: Use gengtype for roots.
        * tree.h: Use gengtype for roots.
        * varasm.c: Use gengtype for roots.
-       
+
        * Makefile.in (GTFILES): Add @all_gtfiles@.
        * configure: Regenerate.
        * configure.in: Construct all_gtfiles from the gtfiles definitions
@@ -1031,10 +1041,10 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        * config/arm/arm.c (arm_mark_machine_status): Delete.
        (arm_init_machine_status): Update calling sequence.
        (arm_init_expanders): Use canonical name for arm_mark_machine_status.
-       * config/cris/cris.c (cris_init_machine_status): Update 
+       * config/cris/cris.c (cris_init_machine_status): Update
        calling sequence.
        * config/d30v/d30v.h (struct machine_function): Use gengtype.
-       * config/d30v/d30v.c (d30v_init_machine_status): Update 
+       * config/d30v/d30v.c (d30v_init_machine_status): Update
        calling sequence.
        (d30v_mark_machine_status): Delete.
        * config/i386/i386.c: Include gt-i386.h.
@@ -1043,12 +1053,12 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        (ix86_mark_machine_status): Delete.
        (override_options): Use canonical namke for ix86_mark_machine_status.
        * config/ia64/ia64.h (struct machine_function): Use gengtype.
-       * config/ia64/ia64.c (ia64_init_machine_status): Update calling 
+       * config/ia64/ia64.c (ia64_init_machine_status): Update calling
        sequence.
        (ia64_mark_machine_status): Delete.
-       (ia64_override_options): Use canonical name for 
+       (ia64_override_options): Use canonical name for
        ia64_mark_machine_status.
-       * config/mmix/mmix.c (mmix_init_machine_status): Update calling 
+       * config/mmix/mmix.c (mmix_init_machine_status): Update calling
        sequence.
        * config/rs6000/rs6000.c (rs6000_init_machine_status): Likewise.
        * config/xtensa/xtensa.c (xtensa_init_machine_status): Likewise.
@@ -1191,7 +1201,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
        Document that the machine_function structures must be allocated
        using GC.  Update mark_machine_status documentation.
        * function.h: Don't declare free_machine_status.
-       * function.c (free_machine_status): Don't define. 
+       * function.c (free_machine_status): Don't define.
        (free_after_compilation): Don't call free_machine_status.
        (ggc_mark_struct_function): Mark f->machine.  Call
        mark_machine_status only on non-NULL pointers.
@@ -1388,7 +1398,7 @@ Tue Jun  4 19:29:42 CEST 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-06-03  Gabriel Dos Reis  <gdr@codesourcery.com>
 
-       * diagnostic.h (diagnostic_count): Move from output_buffer to 
+       * diagnostic.h (diagnostic_count): Move from output_buffer to
        diagnostic_context.
        (diagnostic_kind_count): Adjust definition.
 
@@ -1555,7 +1565,7 @@ config/h8300:
 2002-06-02  Gabriel Dos Reis  <gdr@codesourcery.com>
 
        * diagnostic.h (struct diagnostic_context):  Add new member
-       internal_error. 
+       internal_error.
        (internal_error_function): Remove declaration.
        * diagnostic.c (internal_error_function): Remove definition..
        (internal_error): Adjust use.
@@ -1641,7 +1651,7 @@ Sat Jun  1 23:29:51 CEST 2002  Jan Hubicka  <jh@suse.cz>
 2002-06-01  Daniel Berlin  <dberlin@dberlin.org>
 
        * tree-inline.c (expand_call_inline): Make the statement
-       expression we generate have a COMPOUND_STMT.    
+       expression we generate have a COMPOUND_STMT.
 
 2002-06-01  Roger Sayle  <roger@eyesopen.com>
 
index 1f6f71e42ef757c98ab1de8f01f57e857046cf5a..fb9bda58e12e60abd992bc822598b44f9f2206f0 100644 (file)
@@ -54,10 +54,6 @@ Boston, MA 02111-1307, USA.  */
 #include "target.h"
 #include "target-def.h"
 
-#ifdef HALF_PIC_DEBUG
-#include "halfpic.h"
-#endif
-
 #ifdef __GNU_STAB__
 #define STAB_CODE_TYPE enum __stab_debug_code
 #else
@@ -272,10 +268,6 @@ rtx branch_cmp[2];
 /* what type of branch to use */
 enum cmp_type branch_type;
 
-/* Number of previously seen half-pic pointers and references.  */
-static int prev_half_pic_ptrs = 0;
-static int prev_half_pic_refs = 0;
-
 /* The target cpu for code generation.  */
 enum processor_type mips_arch;
 
@@ -2277,46 +2269,10 @@ mips_move_1word (operands, insn, unsignedp)
 
       else if (code1 == SYMBOL_REF || code1 == CONST)
        {
-         if (HALF_PIC_P () && CONSTANT_P (op1) && HALF_PIC_ADDRESS_P (op1))
-           {
-             rtx offset = const0_rtx;
-
-             if (GET_CODE (op1) == CONST)
-               op1 = eliminate_constant_term (XEXP (op1, 0), &offset);
-
-             if (GET_CODE (op1) == SYMBOL_REF)
-               {
-                 operands[2] = HALF_PIC_PTR (op1);
-
-                 if (TARGET_STATS)
-                   mips_count_memory_refs (operands[2], 1);
-
-                 if (INTVAL (offset) == 0)
-                   {
-                     delay = DELAY_LOAD;
-                     ret = (unsignedp && TARGET_64BIT
-                            ? "lwu\t%0,%2"
-                            : "lw\t%0,%2");
-                   }
-                 else
-                   {
-                     dslots_load_total++;
-                     operands[3] = offset;
-                     if (unsignedp && TARGET_64BIT)
-                       ret = (SMALL_INT (offset)
-                              ? "lwu\t%0,%2%#\n\tadd\t%0,%0,%3"
-                              : "lwu\t%0,%2%#\n\t%[li\t%@,%3\n\tadd\t%0,%0,%@%]");
-                     else
-                       ret = (SMALL_INT (offset)
-                              ? "lw\t%0,%2%#\n\tadd\t%0,%0,%3"
-                              : "lw\t%0,%2%#\n\t%[li\t%@,%3\n\tadd\t%0,%0,%@%]");
-                   }
-               }
-           }
-         else if (TARGET_MIPS16
-                  && code1 == CONST
-                  && GET_CODE (XEXP (op1, 0)) == REG
-                  && REGNO (XEXP (op1, 0)) == GP_REG_FIRST + 28)
+         if (TARGET_MIPS16
+             && code1 == CONST
+             && GET_CODE (XEXP (op1, 0)) == REG
+             && REGNO (XEXP (op1, 0)) == GP_REG_FIRST + 28)
            {
              /* This case arises on the mips16; see
                  mips16_gp_pseudo_reg.  */
@@ -5203,10 +5159,6 @@ override_options ()
   if (mips_abi != ABI_32 && mips_abi != ABI_O64)
     flag_pcc_struct_return = 0;
 
-  /* Tell halfpic.c that we have half-pic code if we do.  */
-  if (TARGET_HALF_PIC)
-    HALF_PIC_INIT ();
-
   /* -fpic (-KPIC) is the default when TARGET_ABICALLS is defined.  We need
      to set flag_pic so that the LEGITIMATE_PIC_OPERAND_P macro will work.  */
   /* ??? -non_shared turns off pic code generation, but this is not
@@ -6369,11 +6321,6 @@ mips_asm_file_end (file)
   tree name_tree;
   struct extern_list *p;
 
-  if (HALF_PIC_P ())
-    {
-      HALF_PIC_FINISH (file);
-    }
-
   if (extern_head)
     {
       fputs ("\n", file);
@@ -7614,20 +7561,6 @@ mips_output_function_epilogue (file, size)
               dslots_jump_total, dslots_jump_filled,
               num_refs[0], num_refs[1], num_refs[2]);
 
-      if (HALF_PIC_NUMBER_PTRS > prev_half_pic_ptrs)
-       {
-         fprintf (stderr,
-                  " half-pic=%3d", HALF_PIC_NUMBER_PTRS - prev_half_pic_ptrs);
-         prev_half_pic_ptrs = HALF_PIC_NUMBER_PTRS;
-       }
-
-      if (HALF_PIC_NUMBER_REFS > prev_half_pic_refs)
-       {
-         fprintf (stderr,
-                  " pic-ref=%3d", HALF_PIC_NUMBER_REFS - prev_half_pic_refs);
-         prev_half_pic_refs = HALF_PIC_NUMBER_REFS;
-       }
-
       fputc ('\n', stderr);
     }
 
@@ -8085,11 +8018,6 @@ mips_encode_section_info (decl, first)
        SYMBOL_REF_FLAG (XEXP (DECL_RTL (decl), 0)) = 1;
     }
 
-  else if (HALF_PIC_P ())
-    {
-      if (first)
-       HALF_PIC_ENCODE (decl);
-    }
 }
 \f
 /* Return register to use for a function return value with VALTYPE for
index b17c2a0494d807ddab8ea1e4153575a3a0a6141f..5f71b54ebd27e25a3d5528c4bd31e9f47b0ef30d 100644 (file)
@@ -172,20 +172,6 @@ extern int mips_string_length;             /* length of strings for mips16 */
 extern void            sdata_section PARAMS ((void));
 extern void            sbss_section PARAMS ((void));
 
-/* Stubs for half-pic support if not OSF/1 reference platform.  */
-
-#ifndef HALF_PIC_P
-#define HALF_PIC_P() 0
-#define HALF_PIC_NUMBER_PTRS 0
-#define HALF_PIC_NUMBER_REFS 0
-#define HALF_PIC_ENCODE(DECL)
-#define HALF_PIC_DECLARE(NAME)
-#define HALF_PIC_INIT()        error ("half-pic init called on systems that don't support it")
-#define HALF_PIC_ADDRESS_P(X) 0
-#define HALF_PIC_PTR(X) X
-#define HALF_PIC_FINISH(STREAM)
-#endif
-
 /* Macros to silence warnings about numbers being signed in traditional
    C and unsigned in ISO C when compiled on 32-bit hosts.  */
 
@@ -210,7 +196,7 @@ extern void         sbss_section PARAMS ((void));
 #define MASK_SOFT_FLOAT           0x00000100   /* software floating point */
 #define MASK_FLOAT64      0x00000200   /* fp registers are 64 bits */
 #define MASK_ABICALLS     0x00000400   /* emit .abicalls/.cprestore/.cpload */
-#define MASK_HALF_PIC     0x00000800   /* Emit OSF-style pic refs to externs*/
+#define MASK_UNUSED1      0x00000800   /* Unused Mask.  */
 #define MASK_LONG_CALLS           0x00001000   /* Always call through a register */
 #define MASK_64BIT        0x00002000   /* Use 64 bit GP registers and insns */
 #define MASK_EMBEDDED_PIC  0x00004000  /* Generate embedded PIC code */
@@ -285,9 +271,6 @@ extern void         sbss_section PARAMS ((void));
                                        /* .abicalls, etc from Pyramid V.4 */
 #define TARGET_ABICALLS                (target_flags & MASK_ABICALLS)
 
-                                       /* OSF pic references to externs */
-#define TARGET_HALF_PIC                (target_flags & MASK_HALF_PIC)
-
                                        /* software floating point */
 #define TARGET_SOFT_FLOAT      (target_flags & MASK_SOFT_FLOAT)
 #define TARGET_HARD_FLOAT      (! TARGET_SOFT_FLOAT)
@@ -417,10 +400,6 @@ extern void                sbss_section PARAMS ((void));
      N_("Use Irix PIC")},                                              \
   {"no-abicalls",       -MASK_ABICALLS,                                \
      N_("Don't use Irix PIC")},                                                \
-  {"half-pic",           MASK_HALF_PIC,                                \
-     N_("Use OSF PIC")},                                               \
-  {"no-half-pic",       -MASK_HALF_PIC,                                \
-     N_("Don't use OSF PIC")},                                         \
   {"long-calls",         MASK_LONG_CALLS,                              \
      N_("Use indirect calls")},                                                \
   {"no-long-calls",     -MASK_LONG_CALLS,                              \
@@ -506,11 +485,7 @@ extern void                sbss_section PARAMS ((void));
 #endif
 
 #ifndef TARGET_ENDIAN_DEFAULT
-#ifndef DECSTATION
 #define TARGET_ENDIAN_DEFAULT MASK_BIG_ENDIAN
-#else
-#define TARGET_ENDIAN_DEFAULT 0
-#endif
 #endif
 
 #ifndef MIPS_ISA_DEFAULT
@@ -780,35 +755,6 @@ while (0)
 /* Show we can debug even without a frame pointer.  */
 #define CAN_DEBUG_WITHOUT_FP
 \f
-/* Complain about missing specs and predefines that should be defined in each
-   of the target tm files to override the defaults.  This is mostly a place-
-   holder until I can get each of the files updated [mm].  */
-
-#if defined(OSF_OS) \
-    || defined(DECSTATION) \
-    || defined(SGI_TARGET) \
-    || defined(MIPS_NEWS) \
-    || defined(MIPS_SYSV) \
-    || defined(MIPS_SVR4) \
-    || defined(MIPS_BSD43)
-
-#ifndef CPP_PREDEFINES
-       #error "Define CPP_PREDEFINES in the appropriate tm.h file"
-#endif
-
-#ifndef LIB_SPEC
-       #error "Define LIB_SPEC in the appropriate tm.h file"
-#endif
-
-#ifndef STARTFILE_SPEC
-       #error "Define STARTFILE_SPEC in the appropriate tm.h file"
-#endif
-
-#ifndef MACHINE_TYPE
-       #error "Define MACHINE_TYPE in the appropriate tm.h file"
-#endif
-#endif
-
 /* Tell collect what flags to pass to nm.  */
 #ifndef NM_FLAGS
 #define NM_FLAGS "-Bn"
@@ -1001,10 +947,6 @@ extern int mips_abi;
 %{mint64|mlong64|mlong32:-mexplicit-type-size }\
 %{mgp32: %{mfp64:%emay not use both -mgp32 and -mfp64} %{!mfp32: -mfp32}} \
 %{G*} %{EB:-meb} %{EL:-mel} %{EB:%{EL:%emay not use both -EB and -EL}} \
-%{pic-none:   -mno-half-pic} \
-%{pic-lib:    -mhalf-pic} \
-%{pic-extern: -mhalf-pic} \
-%{pic-calls:  -mhalf-pic} \
 %{save-temps: } \
 %(subtarget_cc1_spec) \
 %(cc1_cpu_spec)"
@@ -2234,7 +2176,6 @@ extern enum reg_class mips_char_to_class[256];
 
    `Q' is for mips16 GP relative constants
    `R' is for memory references which take 1 word for the instruction.
-   `S' is for references to extern items which are PIC for OSF/rose.
    `T' is for memory addresses that can be used to load two words.  */
 
 #define EXTRA_CONSTRAINT(OP,CODE)                                      \
@@ -2243,8 +2184,6 @@ extern enum reg_class mips_char_to_class[256];
                             && mips16_gp_offset_p (OP))                \
    : (GET_CODE (OP) != MEM) ? FALSE                                    \
    : ((CODE) == 'R')     ? simple_memory_operand (OP, GET_MODE (OP))   \
-   : ((CODE) == 'S')     ? (HALF_PIC_P () && CONSTANT_P (OP)           \
-                            && HALF_PIC_ADDRESS_P (OP))                \
    : FALSE)
 
 /* Given an rtx X being reloaded into a reg required to be
@@ -3092,14 +3031,13 @@ typedef struct mips_args {
    `la $5,s;sw $4,70000($5)' via LEGITIMIZE_ADDRESS.  */
 /* ??? SGI Irix 6 assembler fails for CONST address, so reject them.  */
 #define CONSTANT_ADDRESS_P(X)                                          \
-  ((GET_CODE (X) == LABEL_REF || GET_CODE (X) == SYMBOL_REF            \
+  (GET_CODE (X) == LABEL_REF || GET_CODE (X) == SYMBOL_REF             \
     || GET_CODE (X) == CONST_INT || GET_CODE (X) == HIGH               \
     || (GET_CODE (X) == CONST                                          \
        && ! (flag_pic && pic_address_needs_scratch (X))                \
        && (mips_abi == ABI_32                                          \
            || mips_abi == ABI_O64                                      \
-           || mips_abi == ABI_EABI)))                                  \
-   && (!HALF_PIC_P () || !HALF_PIC_ADDRESS_P (X)))
+           || mips_abi == ABI_EABI)))
 
 /* Define this, so that when PIC, reload won't try to reload invalid
    addresses which require two reload registers.  */
@@ -3354,13 +3292,6 @@ typedef struct mips_args {
 
 #define FUNCTION_MODE (Pmode == DImode ? DImode : SImode)
 
-/* Define TARGET_MEM_FUNCTIONS if we want to use calls to memcpy and
-   memset, instead of the BSD functions bcopy and bzero.  */
-
-#if defined(MIPS_SYSV) || defined(OSF_OS)
-#define TARGET_MEM_FUNCTIONS
-#endif
-
 \f
 /* A part of a C `switch' statement that describes the relative
    costs of constant RTL expressions.  It must contain `case'
@@ -4161,7 +4092,7 @@ typedef struct mips_args {
   ALL_COP_ADDITIONAL_REGISTER_NAMES                                    \
 }
 
-/* This is meant to be redefined in the host dependent files.  It is a 
+/* This is meant to be redefined in the host dependent files.  It is a
    set of alternative names and regnums for mips coprocessors.  */
 
 #define ALL_COP_ADDITIONAL_REGISTER_NAMES
@@ -4282,8 +4213,7 @@ while (0)
        LM[0-9]+        Silicon Graphics/ECOFF stabs label before each stmt.
        $Lb[0-9]+       Begin blocks for MIPS debug support
        $Lc[0-9]+       Label for use in s<xx> operation.
-       $Le[0-9]+       End blocks for MIPS debug support
-       $Lp\..+         Half-pic labels.  */
+       $Le[0-9]+       End blocks for MIPS debug support  */
 
 /* This is how to output the definition of a user-level label named NAME,
    such as the label on a static function or variable NAME.
@@ -4316,7 +4246,6 @@ do {                                                                      \
 do                                                                     \
  {                                                                     \
    mips_declare_object (STREAM, NAME, "", ":\n", 0);                   \
-   HALF_PIC_DECLARE (NAME);                                            \
  }                                                                     \
 while (0)
 
@@ -4393,10 +4322,10 @@ do {                                                    \
    emitting the label is moved to function_prologue, so that we can
    get the line number correctly emitted before the .ent directive,
    and after any .file directives.  */
-
+/*
 #undef ASM_DECLARE_FUNCTION_NAME
-#define ASM_DECLARE_FUNCTION_NAME(STREAM,NAME,DECL)    \
-  HALF_PIC_DECLARE (NAME)
+#define ASM_DECLARE_FUNCTION_NAME(STREAM,NAME,DECL)
+*/
 
 /* This is how to output an internal numbered label where
    PREFIX is the class of label and NUM is the number within the class.  */
index 118c15984ed9b8da41a376612f816e36cce9ca6d..83ae30eb0b9148cb8eac997ca06e3afcdc93332e 100644 (file)
@@ -4938,7 +4938,7 @@ move\\t%0,%z4\\n\\
 
   if ((INTVAL (offset) & 7) == 0
       && (mem_addr == stack_pointer_rtx || mem_addr == frame_pointer_rtx))
-    return \"sd\\t%1,%0\";
+    return \"sd\\t%z1,%0\";
 
   return \"usd\\t%z1,%0\";
 }"
@@ -5131,17 +5131,17 @@ move\\t%0,%z4\\n\\
   "")
 
 (define_insn "movdi_internal2"
-  [(set (match_operand:DI 0 "nonimmediate_operand" "=d,d,d,d,d,d,R,m,*x,*d,*x,*a,*B*C*D,*B*C*D,*B*C*D,*d,*m,*R")
-       (match_operand:DI 1 "movdi_operand" "d,S,IKL,Mnis,R,m,dJ,dJ,J,*x,*d,*J,*d,*m,*R,*B*C*D,*B*C*D,*B*C*D"))]
+  [(set (match_operand:DI 0 "nonimmediate_operand" "=d,d,d,d,d,R,m,*x,*d,*x,*a,*B*C*D,*B*C*D,*B*C*D,*d,*m,*R")
+       (match_operand:DI 1 "movdi_operand" "d,IKL,Mnis,R,m,dJ,dJ,J,*x,*d,*J,*d,*m,*R,*B*C*D,*B*C*D,*B*C*D"))]
   "TARGET_64BIT && !TARGET_MIPS16
    && (register_operand (operands[0], DImode)
        || se_register_operand (operands[1], DImode)
        || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0)
        || operands[1] == CONST0_RTX (DImode))"
   "* return mips_move_2words (operands, insn); "
-  [(set_attr "type"    "move,load,arith,arith,load,load,store,store,hilo,hilo,hilo,hilo,xfer,load,load,xfer,store,store")
+  [(set_attr "type"    "move,arith,arith,load,load,store,store,hilo,hilo,hilo,hilo,xfer,load,load,xfer,store,store")
    (set_attr "mode"    "DI")
-   (set_attr "length"  "4,8,4,8,4,8,4,8,4,4,4,8,8,8,8,8,8,8")])
+   (set_attr "length"  "4,4,8,4,8,4,8,4,4,4,8,8,8,8,8,8,8")])
 
 (define_insn ""
   [(set (match_operand:DI 0 "nonimmediate_operand" "=d,y,d,d,d,d,d,d,R,m,*d")
@@ -5517,7 +5517,7 @@ move\\t%0,%z4\\n\\
    (set_attr "mode"    "SI")
    (set_attr_alternative
     "length"
-    [(if_then_else 
+    [(if_then_else
       (lt (symbol_ref "(unsigned HOST_WIDE_INT) INTVAL (operands[0])")
          (const_int 1024))
       (const_int 4)
@@ -5527,28 +5527,28 @@ move\\t%0,%z4\\n\\
 ;; in FP registers (off by default, use -mdebugh to enable).
 
 (define_insn "movsi_internal1"
-  [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d,d,d,d,d,R,m,*d,*f*z,*f,*f,*f,*R,*m,*x,*x,*d,*d,*B*C*D,*B*C*D,*B*C*D,*d,*m,*R")
-       (match_operand:SI 1 "move_operand" "d,S,IKL,Mnis,R,m,dJ,dJ,*f*z,*d,*f,*R,*m,*f,*f,J,*d,*x,*a,*d,*m,*R,*B*C*D,*B*C*D,*B*C*D"))]
+  [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d,d,d,d,R,m,*d,*f*z,*f,*f,*f,*R,*m,*x,*x,*d,*d,*B*C*D,*B*C*D,*B*C*D,*d,*m,*R")
+       (match_operand:SI 1 "move_operand" "d,IKL,Mnis,R,m,dJ,dJ,*f*z,*d,*f,*R,*m,*f,*f,J,*d,*x,*a,*d,*m,*R,*B*C*D,*B*C*D,*B*C*D"))]
   "TARGET_DEBUG_H_MODE && !TARGET_MIPS16
    && (register_operand (operands[0], SImode)
        || register_operand (operands[1], SImode)
        || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0))"
   "* return mips_move_1word (operands, insn, FALSE);"
-  [(set_attr "type"    "move,load,arith,arith,load,load,store,store,xfer,xfer,move,load,load,store,store,hilo,hilo,hilo,hilo,xfer,load,load,xfer,store,store")
+  [(set_attr "type"    "move,arith,arith,load,load,store,store,xfer,xfer,move,load,load,store,store,hilo,hilo,hilo,hilo,xfer,load,load,xfer,store,store")
    (set_attr "mode"    "SI")
-   (set_attr "length"  "4,8,4,8,4,8,4,8,4,4,4,4,8,4,8,4,4,4,4,4,4,8,4,4,8")])
+   (set_attr "length"  "4,4,8,4,8,4,8,4,4,4,4,8,4,8,4,4,4,4,4,4,8,4,4,8")])
 
 (define_insn "movsi_internal2"
-  [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d,d,d,d,d,R,m,*d,*z,*x,*d,*x,*d,*B*C*D,*B*C*D,*B*C*D,*d,*m,*R")
-       (match_operand:SI 1 "move_operand" "d,S,IKL,Mnis,R,m,dJ,dJ,*z,*d,J,*x,*d,*a,*d,*m,*R,*B*C*D,*B*C*D,*B*C*D"))]
+  [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d,d,d,d,R,m,*d,*z,*x,*d,*x,*d,*B*C*D,*B*C*D,*B*C*D,*d,*m,*R")
+       (match_operand:SI 1 "move_operand" "d,IKL,Mnis,R,m,dJ,dJ,*z,*d,J,*x,*d,*a,*d,*m,*R,*B*C*D,*B*C*D,*B*C*D"))]
   "!TARGET_DEBUG_H_MODE && !TARGET_MIPS16
    && (register_operand (operands[0], SImode)
        || register_operand (operands[1], SImode)
        || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0))"
   "* return mips_move_1word (operands, insn, FALSE);"
-  [(set_attr "type"    "move,load,arith,arith,load,load,store,store,xfer,xfer,hilo,hilo,hilo,hilo,xfer,load,load,xfer,store,store")
+  [(set_attr "type"    "move,arith,arith,load,load,store,store,xfer,xfer,hilo,hilo,hilo,hilo,xfer,load,load,xfer,store,store")
    (set_attr "mode"    "SI")
-   (set_attr "length"  "4,8,4,8,4,8,4,8,4,4,4,4,4,4,4,4,8,4,4,8")])
+   (set_attr "length"  "4,4,8,4,8,4,8,4,4,4,4,4,4,4,4,8,4,4,8")])
 
 ;; This is the mips16 movsi instruction.  We accept a small integer as
 ;; the source if the destination is a GP memory reference.  This is
@@ -5559,8 +5559,8 @@ move\\t%0,%z4\\n\\
 ;; into a register.
 
 (define_insn ""
-  [(set (match_operand:SI 0 "nonimmediate_operand" "=d,y,d,d,d,d,d,d,d,R,m,*d,*d")
-       (match_operand:SI 1 "move_operand" "d,d,y,S,K,N,s,R,m,d,d,*x,*a"))]
+  [(set (match_operand:SI 0 "nonimmediate_operand" "=d,y,d,d,d,d,d,d,R,m,*d,*d")
+       (match_operand:SI 1 "move_operand" "d,d,y,K,N,s,R,m,d,d,*x,*a"))]
   "TARGET_MIPS16
    && (register_operand (operands[0], SImode)
        || register_operand (operands[1], SImode)
@@ -5572,13 +5572,12 @@ move\\t%0,%z4\\n\\
           && (SMALL_INT (operands[1])
               || SMALL_INT_UNSIGNED (operands[1]))))"
   "* return mips_move_1word (operands, insn, FALSE);"
-  [(set_attr "type"    "move,move,move,load,arith,arith,arith,load,load,store,store,hilo,hilo")
+  [(set_attr "type"    "move,move,move,arith,arith,arith,load,load,store,store,hilo,hilo")
    (set_attr "mode"    "SI")
    (set_attr_alternative "length"
                [(const_int 4)
                 (const_int 4)
                 (const_int 4)
-                (const_int 8)
                 (if_then_else (match_operand:VOID 1 "m16_uimm8_1" "")
                               (const_int 4)
                               (const_int 8))
index 5fc062b95bd6a67e8bbb2c4ea797e59e86e176a5..6ed34403e9e6034742491943b0b7b973adeb705c 100644 (file)
@@ -35,7 +35,7 @@ Boston, MA 02111-1307, USA.  */
 #define LIB_SPEC OBSD_LIB_SPEC
 
 /* By default, OpenBSD mips is little endian.  This is important to set
-   here as mips/mips.h defaults to big endian unless DECSTATION.  */
+   here as mips/mips.h defaults to big endian.  */
 #ifndef TARGET_ENDIAN_DEFAULT
 #define TARGET_ENDIAN_DEFAULT 0
 #endif
@@ -81,7 +81,7 @@ Boston, MA 02111-1307, USA.  */
 
 /* Controlling the compilation driver.  */
 
-/* LINK_SPEC appropriate for OpenBSD:  support for GCC options 
+/* LINK_SPEC appropriate for OpenBSD:  support for GCC options
    -static, -assert, and -nostdlib. Dynamic loader control.  */
 #undef LINK_SPEC
 #define LINK_SPEC \
diff --git a/gcc/halfpic.c b/gcc/halfpic.c
deleted file mode 100644 (file)
index f491314..0000000
+++ /dev/null
@@ -1,399 +0,0 @@
-/* OSF/rose half-pic support functions.
-   Copyright (C) 1992, 1997, 1998, 1999 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC 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, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING.  If not, write to the Free
-Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.  */
-
-/* The OSF/rose half-pic model assumes that the non-library code does
-   not need to have full PIC (position independent code), but rather,
-   that pointers to external references are put into the data section
-   and dereferenced as normal pointers.  References to static data does
-   not need to be PIC-ized.
-
-   Another optimization is to have the compiler know what symbols are
-   in the shared libraries, and to only lay down the pointers to
-   things which in the library proper.  */
-
-#include "config.h"
-
-#ifdef HALF_PIC_INIT
-
-#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
-
-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) PARAMS ((rtx)) = half_pic_address_p;
-
-/* Obstack to hold generated pic names.  */
-static struct obstack half_pic_obstack;
-
-/* List of pointers created to pic references.  */
-
-struct all_refs {
-  struct all_refs *hash_next;  /* next name in hash chain */
-  struct all_refs *next;       /* next name created */
-  int             external_p;  /* name is an external reference */
-  int             pointer_p;   /* pointer created.  */
-  const char     *ref_name;    /* reference name to ptr to real_name */
-  int             ref_len;     /* reference name length */
-  const char     *real_name;   /* real function/data name */
-  int             real_len;    /* strlen (real_name) */
-};
-
-static struct all_refs *half_pic_names;
-
-static const char *half_pic_prefix;
-static int   half_pic_prefix_len;
-
-\f
-/* Return the hash bucket of a name or NULL.  The hash chain is
-   organized as a self reorganizing circularly linked chain.  It is
-   assumed that any name passed to use will never be reallocated.  For
-   names in SYMBOL_REF's this is true, because the names are allocated
-   on the permanent obstack.  */
-
-#ifndef MAX_HASH_TABLE
-#define MAX_HASH_TABLE 1009
-#endif
-
-#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)
-     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;
-
-  const unsigned char *uname;
-  int hash;
-  int i;
-  int ch;
-  struct all_refs *first;
-  struct all_refs *ptr;
-
-  if (len == 0)
-    len = strlen (name);
-
-  /* Compute hash code */
-  uname = (const unsigned char *)name;
-  ch = uname[0];
-  hash = len * 613 + ch;
-  for (i = 1; i < len; i += 2)
-    hash = (hash * 613) + uname[i];
-
-  hash &= (1 << HASHBITS) - 1;
-  hash %= MAX_HASH_TABLE;
-
-  /* See if the name is in the hash table.  */
-  ptr = first = hash_table[hash];
-  if (ptr)
-    {
-      do
-       {
-         if (len == ptr->real_len
-             && ch == *(ptr->real_name)
-             && !strcmp (name, ptr->real_name))
-           {
-             hash_table[hash] = ptr;
-             return ptr;
-           }
-
-         ptr = ptr->hash_next;
-       }
-      while (ptr != first);
-    }
-
-  /* name not in hash table.  */
-  if (!create_p)
-    return (struct all_refs *) 0;
-
-  ptr = (struct all_refs *) obstack_alloc (&half_pic_obstack, sizeof (struct all_refs));
-  *ptr = zero_all_refs;
-
-  ptr->real_name = name;
-  ptr->real_len  = len;
-
-  /* Update circular links.  */
-  if (first == (struct all_refs *) 0)
-    ptr->hash_next = ptr;
-
-  else
-    {
-      ptr->hash_next = first->hash_next;
-      first->hash_next = ptr;
-    }
-
-  hash_table[hash] = ptr;
-  return ptr;
-}
-
-\f
-/* Do any half-pic initializations.  */
-
-void
-half_pic_init ()
-{
-  flag_half_pic = TRUE;
-  half_pic_prefix = HALF_PIC_PREFIX;
-  half_pic_prefix_len = strlen (half_pic_prefix);
-  obstack_init (&half_pic_obstack);
-}
-
-\f
-/* Write out all pointers to pic references.  */
-
-void
-half_pic_finish (stream)
-     FILE *stream;
-{
-  struct all_refs *p = half_pic_names;
-
-  if (!p)
-    return;
-
-  data_section ();
-  for (; p != 0; p = p->next)
-    {
-      /* Emit the pointer if used.  */
-      if (p->pointer_p)
-       {
-         ASM_OUTPUT_LABEL (stream, p->ref_name);
-         assemble_aligned_integer (POINTER_SIZE / BITS_PER_UNIT,
-                                   gen_rtx_SYMBOL_REF (Pmode, p->real_name));
-       }
-    }
-}
-
-\f
-/* Encode in a declaration whether or not it is half-pic.  */
-
-void
-half_pic_encode (decl)
-     tree decl;
-{
-  enum tree_code code = TREE_CODE (decl);
-  tree asm_name;
-  struct all_refs *ptr;
-
-  if (!flag_half_pic)
-    return;
-
-  if (code != VAR_DECL && code != FUNCTION_DECL)
-    return;
-
-  asm_name = DECL_ASSEMBLER_NAME (decl);
-
-  if (!asm_name)
-    return;
-
-#ifdef HALF_PIC_DEBUG
-  if (HALF_PIC_DEBUG)
-    {
-      fprintf (stderr, "\n========== Half_pic_encode %.*s\n",
-              IDENTIFIER_LENGTH (asm_name),
-              IDENTIFIER_POINTER (asm_name));
-      debug_tree (decl);
-    }
-#endif
-
-  /* If this is not an external reference, it can't be half-pic.  */
-  if (!DECL_EXTERNAL (decl) && (code != VAR_DECL || !TREE_PUBLIC (decl)))
-    return;
-
-  ptr = half_pic_hash (IDENTIFIER_POINTER (asm_name),
-                      IDENTIFIER_LENGTH (asm_name),
-                      TRUE);
-
-  ptr->external_p = TRUE;
-
-#ifdef HALF_PIC_DEBUG
-  if (HALF_PIC_DEBUG)
-    fprintf (stderr, "\n%.*s is half-pic\n",
-            IDENTIFIER_LENGTH (asm_name),
-            IDENTIFIER_POINTER (asm_name));
-#endif
-}
-
-\f
-/* Mark that an object is now local, and no longer needs half-pic.  */
-
-void
-half_pic_declare (name)
-     const char *name;
-{
-  struct all_refs *ptr;
-
-  if (!flag_half_pic)
-    return;
-
-  ptr = half_pic_hash (name, 0, FALSE);
-  if (!ptr)
-    return;
-
-  ptr->external_p = FALSE;
-
-#ifdef HALF_PIC_DEBUG
-  if (HALF_PIC_DEBUG)
-    fprintf (stderr, "\n========== Half_pic_declare %s\n", name);
-#endif
-}
-
-\f
-/* Mark that an object is explicitly external.  */
-
-void
-half_pic_external (name)
-     const char *name;
-{
-  struct all_refs *ptr;
-
-  if (!flag_half_pic)
-    return;
-
-  ptr = half_pic_hash (name, 0, TRUE);
-  if (!ptr)
-    return;
-
-  ptr->external_p = TRUE;
-
-#ifdef HALF_PIC_DEBUG
-  if (HALF_PIC_DEBUG)
-    fprintf (stderr, "\n========== Half_pic_external %s\n", name);
-#endif
-}
-
-\f
-/* Return whether an address is half-pic.  */
-
-int
-half_pic_address_p (addr)
-     rtx addr;
-{
-  const char *name;
-  int len;
-  struct all_refs *ptr;
-
-  if (!flag_half_pic)
-    return FALSE;
-
-  switch (GET_CODE (addr))
-    {
-    default:
-      break;
-
-    case CONST:
-      {
-       rtx offset = const0_rtx;
-       addr = eliminate_constant_term (XEXP (addr, 0), &offset);
-       if (GET_CODE (addr) != SYMBOL_REF)
-         return FALSE;
-      }
-      /* fall through */
-
-    case SYMBOL_REF:
-      name = XSTR (addr, 0);
-
-#ifdef HALF_PIC_DEBUG
-      if (HALF_PIC_DEBUG)
-       fprintf (stderr, "\n========== Half_pic_address_p %s\n", name);
-#endif
-
-      /* If this is a label, it will have a '*' in front of it.  */
-      if (name[0] == '*')
-       return FALSE;
-
-      /* If this is a reference to the actual half-pic pointer, it
-        is obviously not half-pic.  */
-
-      len = strlen (name);
-      if (len > half_pic_prefix_len
-         && half_pic_prefix[0] == name[0]
-         && !strncmp (name, half_pic_prefix, half_pic_prefix_len))
-       return FALSE;
-
-      ptr = half_pic_hash (name, len, FALSE);
-      if (ptr == (struct all_refs *) 0)
-       return FALSE;
-
-      if (ptr->external_p)
-       {
-#ifdef HALF_PIC_DEBUG
-         if (HALF_PIC_DEBUG)
-           fprintf (stderr, "%s is half-pic\n", name);
-#endif
-         return TRUE;
-       }
-    }
-
-  return FALSE;
-}
-
-\f
-/* Return the name of the pointer to the PIC function, allocating
-   it if need be.  */
-
-struct rtx_def *
-half_pic_ptr (operand)
-     rtx operand;
-{
-  const char *name;
-  struct all_refs *p;
-  int len;
-
-  if (GET_CODE (operand) != SYMBOL_REF)
-    return operand;
-
-  name = XSTR (operand, 0);
-  len = strlen (name);
-  p = half_pic_hash (name, len, FALSE);
-  if (p == (struct all_refs *) 0 || !p->external_p)
-    return operand;
-
-  if (!p->pointer_p)
-    {                          /* first time, create pointer */
-      obstack_grow (&half_pic_obstack, half_pic_prefix, half_pic_prefix_len);
-      obstack_grow (&half_pic_obstack, name, len+1);
-
-      p->next      = half_pic_names;
-      p->ref_name  = (char *) obstack_finish (&half_pic_obstack);
-      p->ref_len   = len + half_pic_prefix_len;
-      p->pointer_p = TRUE;
-
-      half_pic_names = p;
-      half_pic_number_ptrs++;
-    }
-
-  half_pic_number_refs++;
-  return gen_rtx_SYMBOL_REF (Pmode, p->ref_name);
-}
-
-#endif /* HALF_PIC_INIT */
diff --git a/gcc/halfpic.h b/gcc/halfpic.h
deleted file mode 100644 (file)
index 37bc499..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/* OSF/rose half-pic support definitions.
-   Copyright (C) 1992, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC 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, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING.  If not, write to the Free
-Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.  */
-
-#ifndef NO_HALF_PIC
-
-/* Declare the variable flag_half_pic as 'int' instead of 'extern
-   int', so that BSS variables are created (even though this is not
-   strict ANSI).  This is because rtl.c now refers to the
-   CONSTANT_ADDRESS_P macro, which in turn refers to flag_half_pic,
-   and wants to call half_pic_address_p, whose address we also store
-   in a BSS variable.  This way, the gen* programs won't get
-   unknown symbol errors when being linked (flag_half_pic will never
-   be true in the gen* programs).  */
-
-int flag_half_pic;                     /* Global half-pic flag.  */
-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 ((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 */
-#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.  */
-
-#define HALF_PIC_P()           (flag_half_pic)
-#define HALF_PIC_NUMBER_PTRS   (half_pic_number_ptrs)
-#define HALF_PIC_NUMBER_REFS   (half_pic_number_refs)
-
-#define HALF_PIC_ENCODE(DECL)  half_pic_encode (DECL)
-#define HALF_PIC_DECLARE(NAME) half_pic_declare (NAME)
-#define HALF_PIC_EXTERNAL(NAME)        half_pic_external (NAME)
-#define HALF_PIC_INIT()                half_pic_init ()
-#define HALF_PIC_FINISH(STREAM)        half_pic_finish (STREAM)
-#define HALF_PIC_ADDRESS_P(X)  ((*ptr_half_pic_address_p) (X))
-#define HALF_PIC_PTR(X)                half_pic_ptr (X)
-
-/* Prefix for half-pic names */
-#ifndef HALF_PIC_PREFIX
-#define        HALF_PIC_PREFIX "__pic_"
-#endif
-
-#endif /* NO_HALF_PIC */
index 9dd6468aebb17700e38a62c1721ad1e2e953748b..7ac28c0fddd21af649acfbe8be42c5f2bd738573 100644 (file)
@@ -88,10 +88,6 @@ 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
 /* Carry information from ASM_DECLARE_OBJECT_NAME
    to ASM_FINISH_DECLARE_OBJECT.  */