OSDN Git Service

add fixes for new hp/ux patch
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 788eba6..c8b988f 100644 (file)
@@ -1,3 +1,244 @@
+2002-10-04  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/inclhack.def(hpux11_abs):  use format fix
+       * fixinc/fixincl.x: regenerate
+       * fixinc/tests/base/stdlib.h: accommodate new fix test
+
+Sat Oct  5 19:42:45 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * c-common.c (cb_register_builtins):  Use really_no_inline.
+
+2002-10-04  David Edelsohn  <edelsohn@gnu.org>
+
+       * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
+       copied instruction if the note is not loop invariant.
+
+2002-10-04  Loren J. Rittle  <ljrittle@acm.org>
+
+       * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
+
+2002-10-04  Steve Ellcey  <sje@cup.hp.com>
+
+       * doc/invoke.texi (HPPA):  Add -mlinker-opt, -mgnu-ld,
+       and -mhp-ld options to list of options.  Add -mgnu-ld
+       and -mhp-ld option descriptions.
+
+2002-10-04  Steve Ellcey  <sje@cup.hp.com>
+
+       * fixinc/inclhack.def (hpux11_abs):  New.
+       (stdio_va_list): change __va_list__ to __gnuc_va_list.
+       * fixinc/fixincl.x: Rebuild.
+
+2002-10-04  Roger Sayle  <roger@eyesopen.com>
+
+       * config/i386/i386.h (processor_costs): Add new fields fadd,
+       fmul, fdiv, fabs, fchs and fsqrt to costs structure.
+       (RTX_COSTS): Use these fields to determine the RTX costs
+       of floating point addition/subtraction, multiplication,
+       division, fabs, negation and square root respectively.
+       * config/i386/i386.c (size_cost): Provide instruction sizes
+       for these new fields.
+       (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
+       k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
+       counts for these new fields for all x86 processor variants.
+
+2002-10-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * mips.c (mips_const_double_ok): Delete unused variable.
+
+       * gengtype.c (rtx_next): Change type to int.
+
+2002-10-04  Andreas Jaeger  <aj@suse.de>
+
+       * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
+
+2002-10-04  Richard Henderson  <rth@redhat.com>
+
+       * real.h (SIGNIFICAND_BITS): Add one more word.
+       (CONST_DOUBLE_FORMAT): Accomodate 6 words.
+       * real.c (times_pten): New.
+       (real_to_decimal, real_from_string): Use it.
+       (sticky_rshift_significand): Use & to find modulus.
+       (rshift_significand, lshift_significand): Likewise.
+       (do_divide): Apply sticky bit after normalization.
+       (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
+
+2002-10-03  Andreas Jaeger  <aj@suse.de>
+
+       * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
+       to unsigned long, adjust printf format string.
+       (output_mangled_typename): Likewise.
+
+2002-10-03  Jason Thorpe  <thorpej@wasabisystems.com>
+
+       * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
+       * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
+       (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
+       assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
+       (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
+       (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
+       * config/vax/elf.h (FUNCTION_PROFILER): Remove.
+       (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
+
+2002-10-03  Mark Mitchell  <mark@codesourcery.com>
+
+       * doc/invoke.texi (-Wabi): Document mangling bug.
+
+2002-10-04  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
+       name for the tbtab label that depends on the function asm name.
+       Don't output tbtab label unless optional_tbtab.
+       (output_mi_thunk): Formatting.
+
+2002-10-03  Richard Henderson  <rth@redhat.com>
+
+       * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
+       * config/m68k/m68k.c (override_options): ... here.
+       * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
+       * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
+       * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
+       * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
+
+2002-10-03  Richard Henderson  <rth@redhat.com>
+
+       * real.h (struct real_value): Use ENUM_BITFIELD.
+
+2002-10-03  Richard Henderson  <rth@redhat.com>
+
+       * config/i960/i960.md (call, call_value): Use emit_call_insn.
+
+2002-10-03  Steve Ellcey  <sje@cup.hp.com>
+
+       * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
+
+2002-10-03  Steve Ellcey  <sje@cup.hp.com>
+
+       * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
+       * config/pa/pa.h (MASK_GNU_LD): New.
+       (TARGET_GNU_LD): New.
+       * config/pa/pa64-hpux.h (LINK_SPEC): Set based
+       on gnu-ld and MASK_GNU_LD.
+       (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
+
+Thu Oct  3 23:35:51 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (athlon_cost): Fix the move costs.
+
+Thu Oct  3 23:20:58 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * final.c (final): Use symbol name as function name for profiling.
+       * profile.c (get_exec_counts): Likewise.
+       (branch_prob): Likewise.
+
+2002-10-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
+
+2002-10-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * gcc.c (print_multi_os_directory): New variable.
+       (option_map): Support --print-multi-os-directory.
+       (struct prefix_list): Add os_multilib field.
+       (multilib_os_dir): New variable.
+       (static_specs): Add multilib_options.
+       (find_a_file): Add multilib argument.  Search in GCC or OS multilib
+       subdirs if non-zero.
+       (read_specs, execute): Update callers.
+       (find_file): Likewise.  Don't prefix name with multilib_dir, instead
+       pass 1 as multilib option.
+       (display_help): Include --print-multi-os-directory.
+       (add_prefix): Add os_multilib argument.  Initialize pl->os_multilib.
+       (process_command): Update callers.  Handle --print-multi-os-directory.
+       (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
+       set.
+       (main): Update find_a_file and add_prefix callers.
+       Handle print_multi_os_directory.
+       (struct mdswitchstr): New.
+       (mdswitches, n_mdswitches): New variables.
+       (used_arg): Add MULTILIB_DEFAULT switches too if they are not
+       present on the command line nor their mutually incompatible
+       switches.
+       (default_arg): Optimize.
+       (set_multilib_dir): Compute multilib_os_dir.  Initialize mdswitches
+       array.
+       (print_multilib_info): Only print GCC multilib dir name, not OS
+       multilib dirname.
+       * genmultilib: Add osdirnames parameter.  Output multilib_options
+       variable.  If osdirnames is specified, output dirnames as
+       dirname:osdirname.
+       * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
+       and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
+       to compute libgcc_s soname and install path.
+       * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
+       SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
+       (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
+       argument.
+
+       * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
+       (SHLIB_SLIBDIR_SUFFIXES): Remove.
+       * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
+       ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
+       (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
+       and -m64.
+       * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
+       (SHLIB_SLIBDIR_SUFFIXES): Remove.
+       * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
+       (STARTFILE_ARCH_SPEC): Remove.
+       * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
+       (SHLIB_SLIBDIR_SUFFIXES): Remove.
+       * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
+       * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
+       (SHLIB_SLIBDIR_SUFFIXES): Remove.
+
+Thu Oct  3 21:42:20 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * predict.c (choose_function_section): Avoid choice for linkonce functions.
+
+Thu Oct  3 15:15:00 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (lea to mul peep2): Fix condition.
+
+2002-10-02  John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
+       * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
+
+2002-10-02  Richard Henderson  <rth@redhat.com>
+
+       PR opt/7124
+       * config/i386/i386.c (ix86_register_move_cost): Increase cost
+       for secondary_memory_needed pairs.
+
+2002-10-02  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * doc/vms.texi: Blow away false include file section.
+
+2002-10-02  Roger Sayle  <roger@eyesopen.com>
+
+       PR optimization/6627
+       * toplev.c (force_align_functions_log): New global variable.
+       * flags.h (force_align_functions_log): Add extern prototype.
+       * varasm.c (assemble_start_function): Use it to force minimum
+       function alignment.
+       * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
+       minimum function alignment to one byte.
+       (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
+       the least significant bit of vtable member function pointers.
+       * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
+       here from cp/cp-tree.h.
+
+Wed Oct  2 17:01:36 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (print_operand_address): Use RIP addressing for offsetted
+       label refs too.
+
+2002-09-30  David S. Miller  <davem@redhat.com>
+
+       PR middle-end/7151
+       * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
+       (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
+
 2002-10-01  Roger Sayle  <roger@eyesopen.com>
 
        * unroll.c (loop_iterations): Revert 2002-09-08 change.
        for TLS debug info to !DECL_EXTERNAL.
 
 2002-10-01  Matt Thomas  <matt@3am-software.com>
-            Jason Thorpe  <thorpej@wasabisystems.com>
+           Jason Thorpe  <thorpej@wasabisystems.com>
 
        * config.gcc (vax-*-netbsdelf*): Enable configuration.
-       * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only 
+       * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
        if not already defined.
        * config/vax/elf.h: New file.
        * config/vax/netbsd-elf.h: New file.
        * stor-layout.c (update_alignment_for_field): New function.
        (place_union_field): Use it.
        (place_field): Likewise.
-       
+
 2002-10-01  Nathan Sidwell  <nathan@codesourcery.com>
 
        PR other/8077
 
 2002-09-30  Andrew Haley  <aph@redhat.com>
 
-       * flow.c (insn_dead_p): When using non-call-exceptions, don't 
+       * flow.c (insn_dead_p): When using non-call-exceptions, don't
        eliminate insns that may trap.
        * cse.c (insn_live_p): Likewise.
 
        * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
        Add new RL_REGS register class.
        (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
-        Call xtensa_preferred_reload_class for both input and output reloads.
+       Call xtensa_preferred_reload_class for both input and output reloads.
        * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
        (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
        instead of either AR_REGS or GR_REGS classes.
@@ -906,7 +1147,7 @@ Tue Aug 27 20:07:01 CEST 2002  Jan Hubicka  <jh@suse.cz>
        (const_float_1_operand): Use dconst1.
        * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
        movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
-       Don't allow arbitrary constants; fix predicates and C constraint.
+       Don't allow arbitrary constants; fix predicates and C constraint.
 
 2002-09-20  Neil Booth  <neil@daikokuya.co.uk>