OSDN Git Service

* attribs.c (init_attributes, decl_attributes): Use ARRAY_SIZE in
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index d757905..f2de82d 100644 (file)
@@ -1,3 +1,310 @@
+2002-03-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * attribs.c (init_attributes, decl_attributes): Use ARRAY_SIZE in
+       lieu of explicit sizeof/sizeof.
+       * i386.c (override_options, ix86_init_mmx_sse_builtins,
+       ix86_expand_builtin): Likewise.
+       * mips.c (mips_add_gc_roots): Likewise.
+       * mmix.c (mmix_output_condition): Likewise.
+       * rs6000.c (rs6000_override_options, altivec_expand_builtin,
+       altivec_init_builtins): Likewise.
+       * sparc.c (mark_ultrasparc_pipeline_state): Likewise.
+       * cppexp.c (Nsuff, parse_number): Likewise.
+       * cppinit.c (builtin_array_end): Likewise.
+       * gcc.c (n_default_compilers, process_command): Likewise.
+       * genpreds.c (output_predicate_decls): Likewise.
+       * ggc-page.c (NUM_EXTRA_ORDERS): Likewise.
+       * lcm.c (N_ENTITIES): Likewise.
+       * stor-layout.c (set_sizetype): Likewise.
+       
+2002-03-03  Richard Henderson  <rth@redhat.com>
+
+       * toplev.c (rest_of_decl_compilation): Do not invoke make_decl_rtl
+       for types or labels.
+
+2002-03-03  Richard Henderson  <rth@redhat.com>
+
+       * c-decl.c (start_decl): Initialized variables are not common.
+
+2002-03-02  Per Bothner  <per@bothner.com>
+
+       * gcc.c (option_map):  Suport new --bootclasspath option.
+       --CLASSPATH is now just an alias for --classpath.
+
+2002-03-02  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.h (ix86_expand_prologue): Do not emit pic register
+       load if "internal" visibility.
+       * doc/extend.texi: Document visibility meanings.
+
+2002-03-02  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.h (ENCODE_SECTION_INFO): MODULE_LOCAL_P applies
+       to functions as well.
+
+2002-03-02  Richard Henderson  <rth@redhat.com>
+
+       * attribs.c (handle_alias_attribute): Don't call assemble_alias.
+       (handle_visibility_attribute): Don't call assemble_visibility.
+       * toplev.c (rest_of_decl_compilation): Invoke make_decl_rtl even
+       without asmspec.  Invoke assemble_alias when needed.
+       * varasm.c (maybe_assemble_visibility): New.
+       (assemble_start_function, assemble_variable, assemble_alias): Use it.
+
+2002-03-02  Richard Henderson  <rth@redhat.com>
+
+       * varasm.c (make_decl_rtl): Remove call to REDO_SECTION_INFO_P;
+       invoke ENCODE_SECTION_INFO with first call flag.
+
+       * config/darwin-protos.h, config/darwin.c, config/darwin.h,
+       config/a29k/a29k.h, config/alpha/alpha-protos.h, config/alpha/alpha.c,
+       config/alpha/alpha.h, config/arc/arc.h, config/arm/arm-protos.h, 
+       config/arm/arm.h, config/arm/pe.c, config/arm/pe.h,
+       config/avr/avr-protos.h, config/avr/avr.c, config/avr/avr.h,
+       config/c4x/c4x-protos.h, config/c4x/c4x.c, config/c4x/c4x.h,
+       config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
+       config/d30v/d30v.h, config/h8300/h8300.h, config/i370/i370.h,
+       config/i386/cygwin.h, config/i386/i386-interix.h, config/i386/i386.h,
+       config/i386/osfrose.h, config/i386/win32.h, config/i386/winnt.c,
+       config/ia64/ia64-protos.h, config/ia64/ia64.c, config/ia64/ia64.h,
+       config/m32r/m32r-protos.h, config/m32r/m32r.c, config/m32r/m32r.h,
+       config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c, 
+       config/m68hc11/m68hc11.h, config/m88k/m88k.h, 
+       config/mcore/mcore-protos.h, config/mcore/mcore.c,
+       config/mcore/mcore.h, config/mips/mips.h, config/ns32k/ns32k.h,
+       config/pa/pa.h, config/romp/romp.h, config/rs6000/linux64.h,
+       config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c, 
+       config/rs6000/sysv4.h, config/rs6000/xcoff.h, config/s390/s390.h,
+       config/sh/sh.h, config/sparc/sparc.h,
+       config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
+       config/stormy16/stormy16.h, config/v850/v850.h, config/vax/vms.h,
+       config/xtensa/xtensa.h, doc/tm.texi: ENCODE_SECTION_INFO now takes
+       FIRST argument.  As needed, examine it and do nothing.
+
+       * config/darwin.h, config/alpha/alpha.h, config/arm/pe.h, 
+       config/i386/cygwin.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h,
+       config/mcore/mcore.h: Remove REDO_SECTION_INFO_P.
+
+       * config/arm/t-pe (pe.o): Add dependencies.
+
+2002-03-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * a29k.h, alpha.h, arc.h, arm.h, avr.h, clipper.h, convex.h,
+       cris.h, d30v.h, elxsi.h, fr30.h, h8300.h, i370.h, i386.h, i860.h,
+       i960.h, ia64.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h,
+       mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pdp11.h,
+       pj.h, romp.h, rs6000.h, s390.h, sh.h, sparc.h, stormy16.h, v850.h,
+       vax.h, we32k.h, xtensa.h: (BITS_PER_UNIT): Delete.
+       * defaults.h (BITS_PER_UNIT): Define.
+       * doc/tm.texi (BITS_PER_UNIT): Document default value.
+
+2002-03-02  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300-protos.h: Add a prototype for
+       compute_a_shift_length.
+       * config/h8300/h8300.c (h8300_asm_insn_count): New.
+       (compute_a_shift_length): Likewise.
+       (h8300_adjust_insn_length): Do not adjust insn length of shift
+       insns.
+       * config/h8300/h8300.md (anonymous shift patterns): Use
+       compute_a_shift_length.
+
+Sat Mar  2 06:30:14 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * config/sparc/sparc.c (sparc_initialize_trampoline): Use
+       trunc_int_for_mode.
+
+       * emit-rtl.c (offset_address): Call update_temp_slot_address.
+
+2002-03-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Makefile.in (CRTSTUFF_CFLAGS): Add -fno-zero-initialized-in-bss.
+       * doc/invoke.texi (-fno-zero-initialized-in-bss): Document.
+       * flags.h (flag_zero_initialized_in_bss): Declare.
+       * toplev.c (flag_zero_initialized_in_bss): New flag.
+       (lang_independent_options): Add flag_zero_initialized_in_bss.
+       * tree.c (initializer_zerop): New function.
+       * tree.h (initializer_zerop): Declare.
+       * varasm.c (assemble_variable): If we can emit bss, put zero
+       initializers in the bss section.
+
+2002-03-02  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.h (ASM_WEAKEN_DECL): AIX assembler doesn't
+       like more than one symbol per .weak directive.
+
+2002-03-01  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.c (ia64_initial_elimination_offset): Do not
+       adjust argument_pointer by pretend_args_size.
+       (ia64_va_start): Adjust va_start address by -pretend_args_size.
+
+2002-03-01  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.c (h8300_adjust_insn_length): Clean up.
+
+Fri Mar  1 20:59:14 CET 2002  Jan Hubicka  <jh@suse.cz>
+
+       * toplev.c (rest_of_compilation): Delete dead jumptables before
+       loop.
+       * flow.c (delete_dead_jumptables): Make global.
+       * rtl.h (delete_dead_jumptables): Declare.
+
+2002-03-01  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.h (HANDLE_PRAGMA_PACK): Delete.
+       * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Define.
+       * config/rs6000/xcoff.h (COLLET_EXPORT_LIST): Delete.
+
+2002-03-01  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300-protos.h: Fix formatting.
+       * config/h8300/h8300.c: Likewise.
+       * config/h8300/h8300.h: Likewise.
+
+2002-03-01  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.c (print_operand): Support 16-bit
+       constant addresses.
+       * config/h8300/h8300.h (TINY_CONSTANT_ADDRESS_P): New.
+
+2002-02-28  Richard Henderson  <rth@redhat.com>
+
+       * expmed.c (store_bit_field): Prevent generation of CONCATs;
+       pun complex values as integers; use gen_lowpart instead of
+       gen_rtx_SUBREG.
+       (extract_bit_field): Likewise.
+
+2002-03-01  Alan Modra  <amodra@bigpond.net.au>
+           David Edelsohn  <edelsohn@gnu.org>
+
+       * doc/tm.texi (ASM_WEAKEN_DECL): Document.
+       (ASM_WEAKEN_LABEL): Mention ASM_WEAKEN_DECL.
+       (SUPPORTS_WEAK): Likewise.
+       * output.h (add_weak): Add tree param.
+       * varasm.c (add_weak): Likewise.  Save decl.
+       (struct weak_syms): Add decl field.
+       (mark_weak_decls): New function.
+       (init_varasm_once): ggc_add_root mark_weak_decls.
+       (assemble_start_function): Use ASM_WEAKEN_DECL.
+       (assemble_variable): Likewise.
+       (assemble_alias): Likewise.
+       (declare_weak): Pass decl to add_weak.
+       (weak_finish): Use ASM_WEAKEN_DECL. Try to find decl.
+       (remove_from_pending_weak_list): Declare and define for
+       ASM_WEAKEN_DECL.
+       * c-pragma.c (handle_pragma_weak): Adjust add_weak call.
+       * c-pragma.h (HANDLE_PRAGMA_WEAK): Define if ASM_WEAKEN_DECL too.
+       * defaults.h (SUPPORTS_WEAK): Likewise.
+       * config/rs6000/linux64.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
+       .weak for code sym.  Do emit .size for descriptor sym.
+       (ASM_DECLARE_FUNCTION_SIZE): Define.
+       * config/rs6000/rs6000.h (ASM_WEAKEN_DECL): Define.
+       (ASM_OUTPUT_DEF_FROM_DECLS): Don't emit .weak here.  Don't output
+       .lglobl unless TARGET_XCOFF.  Formatting fixes.
+       * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
+       .weak for code sym.
+       (HANDLE_PRAGMA_WEAK): Remove.
+       (ASM_WEAKEN_LABEL): Remove.
+       * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Define.
+
+2002-03-01  Jason Merrill  <jason@redhat.com>
+
+       * tree.h (TARGET_EXPR_SLOT, TARGET_EXPR_INITIAL): New macros.
+       (TARGET_EXPR_CLEANUP): New macro.
+
+2002-02-28  Steve Ellcey  <sje@cup.hp.com>
+
+       * doc/rtl.texi (SUBREG_PROMOTED_UNSIGNED_P): Change definition
+       to take ptr_extend into account as third type of extension.
+       (SUBREG_PROMOTED_UNSIGNED_SET): Definition of new macro to set bit
+       fields used by SUBREG_PROMOTED_UNSIGNED_P.
+       * rtl.h (SUBREG_PROMOTED_UNSIGNED_SET): New macro.
+       (SUBREG_PROMOTED_UNSIGNED_P): Change to return -1 as well as 0 or 1.
+       * calls.c (precompute_arguments): Use new macro.
+       (expand_call): Ditto.
+       * combine.c (nonzero_bits): Ditto.
+       (record_promoted_value): Ditto.
+       * expr.c (store_expr): Ditto.
+       (expand_expr): Ditto.
+       * function.c (assign_parms): Ditto.
+
+2002-02-28  Alexandre Oliva  <aoliva@redhat.com>
+
+       * gcc.c (init_gcc_specs): Get -static and -static-libgcc to
+       override -shared and -shared-libgcc.
+
+2002-02-28  David O'Brien  <obrien@FreeBSD.org>
+
+       * config.gcc (sparc64-*-freebsd): Explicitly accept a cpu specification
+       of "ultrasparc".
+       * config/sparc/freebsd.h: Do not use MASK_FASTER_STRUCTS.  It appears
+       to be broken.
+
+2002-02-28  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.c (ia64_adjust_cost): All non-MM consumers have
+       4 cycle latency from MM producers.
+       (ia64_internal_sched_reorder): Likewise with pipeline flush.
+
+2002-02-28  Jakub Jelinek  <jakub@redhat.com>
+
+       * mklibgcc.in: Don't use GNU make extension.
+
+2002-02-28  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * c-parse.in (STATIC): New terminal.
+       (scspec): New non-terminal.  Update productions accordingly.
+       (program): Remove bogus ifc / end ifc.
+       (array_declarator): Simplify production using STATIC.
+
+2002-02-28  Jim Meyering  <meyering@lucent.com>
+
+       * cpplex.c (cpp_parse_escape): Restore mistakenly-removed code:
+       \a still means TARGET_BELL.
+
+2002-02-28  Richard Henderson  <rth@redhat.com>
+
+       * haifa-sched.c (sched_emit_insn): New.
+       (schedule_block): Use last_scheduled_insn to track last insn.
+       * sched-int.h (sched_emit_insn): Prototype.
+       * config/ia64/ia64.c (last_issued): Remove.
+       (ia64_variable_issue): Don't set it.
+       (nop_cycles_until): Use sched_emit_insn.
+
+2002-02-28  Andrew MacLeod  <amacleod@redhat.com>
+
+       * config/sparc/sparc.c (sparc64_initialize_trampoline): Generate sign
+       extended constants.
+
+2002-02-28  Kazu Hirata  <kazu@hxi.com>
+
+       * config/h8300/h8300.c: Fix formatting.
+       * config/h8300/h8300.h: Likewise.
+
+2002-02-28  Marek Michalkiewicz  <marekm@amelek.gda.pl>
+
+       * config/avr/avr.c (avr_hard_regno_mode_ok): Do not allow r29
+       which may overwrite the high byte of the frame pointer.
+
+2002-02-28  Bo Thorsen  <bo@suse.de>
+
+       * config/i386/linux64.h (LINK_SPEC): Fix 32/64 bit compilation.
+       (STARTFILE_SPEC): Add 64 bit files.
+       (ENDFILE_SPEC): Likewise.
+
+2002-02-28  Jason Merrill  <jason@redhat.com>
+
+       * c-decl.c (finish_function): Only warn about missing return
+       statement with -Wreturn-type.
+
+Don Feb 28 11:24:30 CET 2002  Jan Hubicka  <jh@suse.cz>
+
+       * cfgrtl.c (purge_dead_edges): Fix handling of EH edges.
+
+       * i386.h (CONDITIONAL_REGISTER_USAGE): Do not write to
+       PIC_OFFSET_TABLE_REGNUM when it is INVALID_REGNUM
+
 Don Feb 28 11:07:36 CET 2002  Jan Hubicka  <jh@suse.cz>
 
        * basic-block.h (BB_REACHABLE): Renumber.