ChangeLog entries since last run on 2004-03-30T11:43:16Z: --- /Users/regress/tbox/changelog_mail/gcc/gcc/ChangeLog Tue Mar 30 03:44:01 2004 +++ gcc/gcc/ChangeLog Tue Mar 30 12:21:16 2004 @@ -1,3 +1,30 @@ +2004-03-29 Fariborz Jahanian + + * fold-const.c (fold): Reassociate multiply expression + with an adjacent non-multiply expression to use + architecture's multiply-add instruction. + +2004-03-30 Zack Weinberg + + * gengtype.c (create_option): New function. + * gengtype.h: Prototype it. + * gengtype-yacc.y (stringseq): New rule. + (option): Use create_option. Add new bare ID production. Use + stringseq, not STRING directly. + + * alias.c, bitmap.c, c-decl.c, cgraph.h, cpplib.h, cselib.h + * dwarf2out.c, emit-rtl.c, function.h, lists.c, tree.h + * varray.h, config/alpha/alpha.c: + Use new shorter form of GTY markers. + + * doc/gty.texi: Rewrite. + +2004-03-30 Andrew Pinski + + * config/darwin.c (machopic_function_base_name): + Remove current_name and getting the name of the + current function. + 2004-03-30 Nick Clifton * config/arm/arm.md (thumb_jump): Reduce the backward branch --- /Users/regress/tbox/changelog_mail/gcc/gcc/cp/ChangeLog Mon Mar 29 10:34:25 2004 +++ gcc/gcc/cp/ChangeLog Tue Mar 30 12:21:25 2004 @@ -1,3 +1,7 @@ +2004-03-30 Zack Weinberg + + * name-lookup.c, parser.c: Use new shorter form of GTY markers. + 2004-03-29 Zack Weinberg * error.c (dump_function_name): If T's DECL_LANG_SPECIFIC --- /Users/regress/tbox/changelog_mail/gcc/gcc/f/ChangeLog Thu Mar 25 23:02:08 2004 +++ gcc/gcc/f/ChangeLog Tue Mar 30 12:21:29 2004 @@ -1,3 +1,7 @@ +2004-03-30 Zack Weinberg + + * com.c: Use new shorter form of GTY markers. + 2004-03-21 Joseph S. Myers * g77.texi: Update link to "G++ and GCC". --- /Users/regress/tbox/changelog_mail/gcc/gcc/java/ChangeLog Thu Mar 25 23:02:10 2004 +++ gcc/gcc/java/ChangeLog Tue Mar 30 12:21:34 2004 @@ -1,3 +1,8 @@ +2004-03-30 Zack Weinberg + + * builtins.c, expr.c, jcf.h, parse.h: Use new shorter + form of GTY markers. + 2004-03-25 Marcus Meissner PR java/14689: --- /Users/regress/tbox/changelog_mail/gcc/include/ChangeLog Wed Feb 25 02:15:55 2004 +++ gcc/include/ChangeLog Tue Mar 30 12:21:40 2004 @@ -1,3 +1,7 @@ +2004-03-30 Zack Weinberg + + * hashtab.h, splay-tree.h: Use new shorter form of GTY markers. + 2004-02-24 Ian Lance Taylor * dyn-string.h: Update copyright date. ChangeLog entries between 2004-03-30T11:43:16Z and the last time everything passed, on 2004-01-26T14:22:28Z: --- /Users/regress/tbox/changelog_pass/gcc/ChangeLog Fri Jan 23 18:13:03 2004 +++ gcc/ChangeLog Thu Mar 25 23:01:03 2004 @@ -1,3 +1,231 @@ +2004-03-24 Nathanael Nerode + + * Makefile.tpl (top level bootstrap support): Remove now-unneeded + STRICT_WARN, WARN_CFLAGS flags passed down to make. + * Makefile.in: Regenerate. + + * configure.in (top level bootstrap support): Rework --enable-werror + to set @stage2_werror_flag@. + * configure: Regenerate. + * Makefile.tpl (top level bootstrap support): Pass + @stage2_werror_flag@ down to configure in stages 2 and 3. + * Makefile.in: Regenerate. + +2004-03-23 Nathanael Nerode + + * Makefile.tpl (new-bootstrap): Set CC and CC_FOR_BUILD in configure + for stages 2 and 3 as well as in make. As a consequence, remove + OUTPUT_OPTION (now detected by configure) from the flags passed down + to make. + * Makefile.in: Regenerate. + + * Makefile.tpl (new-bootstrap): Fix typo. + * Makefile.in: Regenerate. + +2004-03-22 Nathanael Nerode + + * Makefile.tpl: Rearrange by moving recursive_targets rules + into their proper sections. + * Makefile.tpl (top level bootstrap support): Move disabling + of coverage flags from 'make' to 'configure'; improve comments. + * Makefile.in: Regenerate. + + * Makefile.tpl (experimental top level bootstrap) Move stage1 + language setting from all- target to configure- target; disable + intermodule optimization in stage 1; prevent gratuitous rebuilds + of stage 1. + * Makefile.in: Regenerate. + * configure.in: Comma-separate stage 1 language list for top + level bootstrap. + * configure: Regenerate. + + * Makefile.tpl: Clean up experimental top level bootstrap support: + note known problems; set CONFIG_SHELL; don't set BUILD_CC; relocate + prev-gcc in configure- targets as well as all- targets. + * Makefile.in: Regenerate. + +2004-03-21 Kelley Cook + + * compile: New file imported from automake. + +2004-03-17 Paolo Bonzini + + * configure.in: Remove symbolic link section. + * configure: Regenerate. + * Makefile.tpl (links): Remove. + * Makefile.in: Regenerate. + +2004-03-15 Paolo Bonzini + Nathanael Nerode + + * configure.in (DEFAULT_YACC, DEFAULT_M4, DEFAULT_LEX): + Set with AC_CHECK_PROGS. + * configure.in: Fix comment typo from last patch. + * configure: Regenerate. + +2004-03-15 Nathanael Nerode + + * Makefile.tpl: Introduce experimental top level bootstrap support. + * Makefile.in: Regenerate. + * configure.in: Introduce support for top level bootstrap. + * configure: Regenerate. + +2004-03-12 Eric Botcazou + Paolo Bonzini + + PR bootstrap/14522 + * configure.in: Cope with shells that do not support unquoted ^ + * configure: Regenerate. + +2004-03-11 Eric Botcazou + Paolo Bonzini + + PR bootstrap/14522 + * configure.in: Cope with shells that do not support nesting + quotes inside quoted backquote substitutions. + * configure: Regenerate. + +2004-03-10 Andrew Pinski + + PR bootstrap/14522 + * configure.in: Fix escaping of $. + * configure: Regenerate. + +2004-03-11 Nathanael Nerode + + * configure: Regenerate, since I forgot to while committing Paolo's + changes. + +2004-03-08 Paolo Bonzini + + PR ada/14131 + Move language detection to the top level. + * configure.in: Find default values for the tools as + soon as possible. Disable ada if GNAT is not found. + Emit error message about missing languages. Expand + --enable-languages=all for the gcc subdirectory. + +2004-03-10 Ben Elliston + + * MAINTAINERS: Update my email address. + +2004-03-05 David Edelsohn + + * ltconfig: Disable building static libraries if building shared + libraries on AIX 5L. + +2004-03-01 Richard Sandiford + + * configure.in (mips64*-*-linux*): Override mips*-*-linux* case + and disable libgcj. + * configure: Regenerated. + +2004-03-01 Brian Booth + + * MAINTAINERS: Add myself to write-after-approval. + +2004-03-01 Paolo Bonzini + + * MAINTAINERS: Add myself to write-after-approval. + +2004-02-28 Nathanael Nerode + + PR bootstrap/7087 + * Makefile.tpl: Guard XFOO sed statements better. + * Makefile.tpl: Add dependency for configure-target-libada. + * Makefile.in: Regenerate (incidentally fixes broken + commit when libada-branch was merged). + +2004-02-25 Kelley Cook + + * MAINTAINERS: Add myself to write-after-approval. + +2004-02-20 Andrew Pinski + + * MAINTAINERS: Add Nicola Pero and myself as libobjc + maintainers. + +2004-02-20 Andrew Cagney + + * config.guess: Update from version 2003-10-16 to 2004-02-16. + * config.sub: Update from version 2003-11-03 to 2004-02-16. + +2004-02-19 Nathanael Nerode + + PR bootstrap/11932 + * mkinstalldirs, install-sh: Import from automake CVS HEAD. + +2004-02-14 Jerry Quinn + + * MAINTAINERS: Added myself to write-after-approval. + +2004-02-14 Michael Koch + + * MAINTAINERS: Added myself to write-after-approval. + +2004-02-13 Joseph S. Myers + + * MAINTAINERS: Move Steve Chamberlain to write-after-approval. Move + some OS port maintainers to OS port maintainers section. + +2004-02-13 Frank Ch. Eigler + + * MAINTAINERS: Add self. + +2004-02-12 Kazu Hirata + + * MAINTAINERS: Alphabetize. + +2004-02-12 Paolo Bonzini + + * MAINTAINERS: Remove myself. + +2004-02-11 David Edelsohn + + * configure.in (powerpc-*-aix*): Add target-libada to noconfigdirs. + (rs6000-*-aix*): Same. + * configure: Regenerate. + +2004-02-11 Kelley Cook + + * configure.in (host): Add in missing $noconfigdirs to defines. + * configure: Regenerate. + +2004-02-10 Arnaud Charlet , + Nathanael Nerode + + PR ada/6637, PR ada/5911 + Merge with libada-branch: + * configure.in, Makefile.tpl, Makefile.def: Add target-libada, + with appropriate dependencies. Add --enable-libada configure switch. + * configure, Makefile.in: Regenerate. + +2004-02-09 Paolo Bonzini + + * MAINTAINERS: Add myself to write-after-approval. + +2004-02-05 Rainer Orth + + * configure.in: Don't pass --with-stabs on IRIX 5 either. + * configure: Regenerate. + +2004-02-04 Geoffrey Keating + + Merge from upstream: + + * ltmain.in: When setting IFS to '~', be careful about user + arguments that contain '~'. + + 2004-02-04 Peter O'Gorman + + * ltmain.in (infer_tag): Move tag inferrence to a shell function. + Also test $base_compile against $CC with escaped arguments. Bug + reported by Geoff Keating . + +2004-02-04 Kazu Hirata + + * MAINTAINERS: Remove i960 port. + 2004-01-23 DJ Delorie * Makefile.def (target_modules) [libiberty]: Don't stage. --- /Users/regress/tbox/changelog_pass/gcc/gcc/ChangeLog Mon Jan 26 06:23:27 2004 +++ gcc/gcc/ChangeLog Tue Mar 30 03:44:01 2004 @@ -1,3 +1,8219 @@ +2004-03-30 Nick Clifton + + * config/arm/arm.md (thumb_jump): Reduce the backward branch + range, and increase the forward branch range, to allow for + the fact that the PC will be off by 4. + +2004-03-30 Alan Modra + + * .cvsignore: Add GPATH, GRTAGS, GSYMS and GTAGS (GNU GLOBAL) + +2004-03-30 Hartmut Penner + + * config/rs6000/rs6000.c (output_vec_const_move): + Find all cases of EASY_VECTOR_15_ADD_SELF. + (easy_vector_constant_add_self): Accept + all vector constant loadable by vsplt* and vadd*. + (easy_vector_same): Use easy_vector_splat_const. + (easy_vector_const): Use easy_vector_splat_const. + (easy_vector_splat_const): New function. + (gen_easy_vector_constant_add_self): New function. + + * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self): + New prototype. + + * config/rs6000/altivec.md (movv4si splitter): Change to + emit move insn with halfed vector constant. + (*movv8hi splitter): Likewise. + (*movv16qi splitter): Likewise. + +2004-03-30 Hartmut Penner + + PR 11591 + * config/rs6000/rs6000.c (rs6000_legitimate_address): + Allow any offset to argument pointer in no-strict case. + +2004-03-30 Jan Hubicka + + * toplev.c (backend_init): Add missing call to inint_optimization_passes. + * passes.c (init_optimization_passes, finish_optimization_passes): Output cgraph + dump file in non-unit-at-a-time mode. + +2004-03-29 Hans-Peter Nilsson + + * config/cris/cris.h: Correct #ifdef to test for + HAVE_AS_NO_MUL_BUG_ABORT_OPTION, not + HAVE_AS_MUL_BUG_ABORT_OPTION. + +2004-03-29 Richard Kenner + + * function.c (put_var_into_stack): If old RTL was ADDRESSOF, update + the address inside the old RTL. + +2004-03-28 Zack Weinberg + + * c-decl.c: Verify that C_SIZEOF_STRUCT_LANG_IDENTIFIER is correct. + (struct c_binding, struct c_scope): Add chain_next + attributes to GTY markers. + (struct lang_identifier, struct lang_tree_node): Define + here... + * c-tree.h: ... not here. No longer need to declare struct + c_binding either. Do define C_SIZEOF_STRUCT_LANG_IDENTIFIER. + * c-lang.c, objc/objc-lang.c: Set LANG_HOOKS_IDENTIFIER_SIZE + to C_SIZEOF_STRUCT_LANG_IDENTIFIER. + + PR 14734, 11944 + * c-decl.c (get_parm_info): If error_mark_node is encountered + in the bindings chain, unbind and discard it; don't abort. + +2004-03-28 Olga Golovonevsky + Dorit Naishlos + + * config/rs6000/altivec.md: (andvv16qi3, andv8hi3, one_cmplv16qi2, + one_cmplv8hi2, one_cmplv4si2, iorv16qi3, iorv8hi3,): New modelling. + +2004-03-28 Stephane Carrez + + * config/m68hc11/m68hc11-protos.h (m68hc11_page0_symbol_p): Declare. + + * config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute): New. + (m68hc11_attribute_table): New attribute "page0" to mark a global + variable as being allocated from within page0 section. + (m68hc11_encode_label): New function. + (m68hc11_strip_name_encoding): New function. + (m68hc11_page0_symbol_p): New function. + (m68hc11_indirect_p): Accept global variables marked in page0. + (m68hc11_encode_section_info): Lookup "page0" attribute. + + * config/m68hc11/m68hc11.h (EXTRA_CONSTRAINT): 'R' constraint also + represents access to page0 variables. + + * config/m68hc11/m68hc11.md ("*logicalsi3_zexthi"): Use gen_rtx_REG. + ("*logicalsi3_silshl16_zext"): Likewise. + ("*ashldi3_const32"): Likewise. + (peephole2 ashift): Likewise. + +2004-03-28 Joseph S. Myers + + * c-tree.h (C_DECL_REGISTER): New. + * c-aux-info.c (gen_decl), c-decl.c (objc_mark_locals_volatile, + finish_decl, grokdeclarator, get_parm_info), c-typeck.c + (build_array_ref, c_mark_addressable): Set and use it. + * c-decl.c (grokdeclarator), c-typeck.c (c_mark_addressable): + Allow structures with volatile fields to be declared register. + Don't check TREE_ADDRESSABLE before warning about taking address + of register. + * c-decl.c (finish_decl): Don't allow structures with volatile + fields to be placed in named register. + * doc/trouble.texi: Remove reference to structures with volatile + fields in registers. + +2004-03-27 Ulrich Weigand + + * function.c (thread_prologue_and_epilogue): Move + NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes + before the epilogue. + +2004-03-27 Ulrich Weigand + + * expr.c (store_constructor): Use gen_int_mode to correctly + sign-extend CONST_INT value. + +2004-03-27 Kaveh R. Ghazi + + * builtin-types.def (BT_WINT, BT_FN_INT_WINT, BT_FN_WINT_WINT): New. + * builtins.def (DEF_C94_BUILTIN): New. Add wctype builtins. + * doc/extend.texi: Likewise. + +2004-03-26 Diego Novillo + + * c-typeck.c (comptypes): Replace calls to TYPE_DOMAIN + with TYPE_ORIG_SIZE_TYPE. + +2004-03-25 Aldy Hernandez + + PR 14219 + * c-typeck.c (build_binary_op): Do not allow comparisons of + vectors. + +2004-03-26 James A. Morrison + + * config.gcc: Remove sparc-tti-*. + * config/sparc/pbd.h: Delete. + + * config/sparc/sol2.h: Remove note about Sun OS 4.x. + * config/sparc/aout.h: Likewise. + + * config/sparc/sparc.h: Remove if 0'd code. + * config/sparc/sparc.md (call): Remove if 0'd code. + (call_value): Likewise. + (nonlocal_goto): Likewise. + (unimp_insn): Delete. + +2004-03-25 Roger Sayle + + * fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like + BIT_IOR_EXPR; A^B is nonnegative when A and B are nonnegative. + +2004-03-25 Richard Henderson + + PR 11527 + * c-typeck.c (pop_init_level): Emit pending init elements earlier + rather than later. + +2004-03-25 Kaveh R. Ghazi + + * builtins.c (fold_builtin): Fix error in last change. + +2004-03-25 Richard Sandiford + + * config/mips/mips.h: Formatting fix. + +2004-03-25 Kaveh R. Ghazi + + * builtins.def: Add ctype builtins. + * doc/extend.texi: Likewise. + +2004-03-25 Kaveh R. Ghazi + + * builtins.c (fold_builtin): Add new builtin optimizations for + sqrt and/or cbrt. + * fold-const.c (fold): Likewise. + +2004-03-25 David Edelsohn + + * config/rs6000/rs6000.c (rs6000_always_hint): New variable. + (rs6000_sched_groups): New variable. + (processor_target_table): Add power5. + (rs6000_override_options): Set rs6000_sched_insert_nops, + rs6000_sched_costly_dep and rs6000_sched_restricted_insns_priority + from rs6000_sched_groups. + (output_cbranch): Use rs6000_always_hint. + (rs6000_variable_issue): Use rs6000_sched_groups. + (rs6000_adjust_cost): Add CPU_POWER5. + (is_microcoded_insn): Use rs6000_sched_groups. + (is_dispatch_slot_restricted): Use rs6000_sched_groups. + Return 2 for POWER5 cracked instructions. + (is_cracked_insn): Use rs6000_sched_groups. + (is_branch_slot_insn): Use rs6000_sched_groups. + (rs6000_issue_rate): Add CPU_POWER5. + (rs6000_sched_finish): Use rs6000_sched_groups. + (rs6000_rtx_costs): Add PROCESSOR_POWER5. + * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER5. + (DEFAULT_SCHED_COSTLY_DEP): Delete. + (DEFAULT_RESTRICTED_INSNS_PRIORITY): Delete. + (DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Delete. + * config/rs6000/rs6000.md (define_attr "cpu"): Add power5. + * config/rs6000/power5.md: New file. + * doc/invoke.texi: Add power5 option. + +2004-03-25 Kazu Hirata + + * cfgrtl.c, dbxout.c, tree.def, config/darwin.h, + config/arm/arm.c, objc/objc-act.c: Fix comment typos. + * doc/invoke.texi: Fix a typo. + +2004-03-25 Kazu Hirata + + PR optimization/9707. + * stmt.c (emit_case_nodes): Emit equality comparisons instead + of recursing if both children are single-valued cases with no + children. + +2004-03-25 Paul Brook + + * config/arm/arm.c (vfp_print_multi): Remove. + (arm_output_fldmx): New function. + (vfp_emit_fstmx): Return block size, not insn. Add ARM10 VFPr1 bugfix. + (arm_expand_prologue): Update to match. + (arm_get_vfp_saved_size): New Function. + (arm_get_frame_offsets): Use it. + (arm_output_epilogue): Use new functions. + +2004-03-24 Richard Henderson + + * alias.c (alias_invariant, alias_invariant_size): Mark GTY. + (reg_known_value, reg_known_value_size): Likewise; make static. + (reg_known_equiv_p): Make static. + (clear_reg_alias_info): Update for new indexing. + (get_reg_known_value, set_reg_known_value): New. + (get_reg_known_equiv_p, set_reg_known_equiv_p): New. + (canon_rtx): Use them. + (init_alias_analysis): Likewise. Allocate reg_known_value with gc. + Don't play queer offsetting games with reg_known_value and + reg_known_equiv_p. + (end_alias_analysis): Free reg_known_value with gc. + * rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare. + * sched-deps.c (reg_known_equiv_p, reg_known_value): Remove. + (deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new + functions instead. + +2004-03-24 Kazu Hirata + + * dwarf2asm.c, loop.h, pretty-print.c, pretty-print.h, + config/i386/mmintrin.h: Update copyright. + +2004-03-24 Nathanael Nerode + + * configure.ac: Add --enable-werror-always (for top level bootstrap + support). + * configure: Regenerate. + +2004-03-24 Ziemowit Laski + + * objc/objc-act.c (objc_comptypes): Treat comparisons + between 'Class' and ' *' as explicitly invalid. + +2004-03-24 David Edelsohn + + * doc/invoke.texi (-frename-registers: Add enabled at -O3. + (-fprofile-values): Add enabled with profile-{generate,use}. + (-fvpt): Same. + (-ftracer): Add enabled with profile-use. + (-funit-at-a-time): Add enabled at -O2,-O3. + (-funroll-loops): Add enabled with profile-use. + (-funswitch-loops): Add enabled with profile-use. Remove duplicates. + (max-gcse-passes): Mention default. + (max-cse-path-length): Mention default. + +2004-03-24 Nathanael Nerode + + * Makefile.in (STRICT2_WARN): Reorder. + * configure.ac: Check for -Wold-style-definition, and use it + in strict1_warn if it's available. + * configure: Regnerate. + +2004-03-24 Paul Brook + + * config.gcc : Add --with-abi= + * config/arm/arm-protos.h (arm_get_frame_size, thumb_get_frame_size, + thumb_far_jump_used): Remove prototypes. + (arm_needs_doubleword_align): Add prototype. + (thumb_compute_initial_elimination_offset): Ditto. + * config/arm/arm.c (arm_get_frame_offsets): New function. + (use_return_insn, output_return_instruction, arm_output_epilogue, + arm_output_function_epilogue, arm_compute_initial_elimination_offset, + arm_expand_prologue, thumb_expand_epilogue): Use it. + (arm_abi, target_abi_name, all_arm_abis): New variables. + (arm_override_options): Set them. Set structure padding for AAPCS. + (arm_return_in_memory): Update ABI check. + (arm_init_cumulative_args): Initialize can_split. + (arm_needs_doubleword_align): New function. + (arm_function_arg): Don't split args after pushing to stack. Handle + doubleword/even reg alignment. + (arm_va_arg): Handle all doubleword aligned args. + (add_minpoolforward ref, dump_minpool, push_minpool_fix): Align based + on ABI, not CPU. + (arm_compute_save_reg0_reg12_mask): Fix comment. + (thumb_get_frame_size, thumb_get_frame_size): Remove. + (thumb_jump_far_used_p): Remove superfluous argument. Return save + value for alignment. + (thumb_unexpanded_epilogue, thumb_output_function_prologue): Change + to match. + (thumb_compute_initial_elimination_offset): New function. + (thumb_expand_prologue): Use arm_get_frame_offsets. Remove + unneccessary rounding. + * config/arm/arm.h (target_abi_name): Declare. + (ARM_DOUBLEWORD_ALIGN, DOUBLEWORD_ALIGNMENT, TARGET_IWMMXT_ABI, + arm_abi_type, ARM_DEFAULT_ABI): Define. + (ARM_FLAG_ATPCS): Remove. + (TARGET_OPTIONS, OPTION_DEFAULT_SPECS): Add -mabi=. + (BIGGEST_ALIGNMENT, PREFERRED_STACK_BOUNDARY, STACK_BOUNDARY): Use it. + (ADJUST_FIELD_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT, + TYPE_NEEDS_IWMMXT_ALIGNMENT): Remove. + (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P): + Contitionalize on ABI, not CPU. + (struct arm_stack_offsets): Define. + (struct machine_function): Add stack_offsets. Remove frame_size. + (FUNCTION_ARG_PARTIAL_NREGS): Don't split if previous args have been + pushed. + (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY): Handle general + doubleword alignment. + (THUMB_INITIAL_ELIMINATION_OFFSET, + ARM_INITIAL_ELIMINATION_OFFSET): Remove. + (INITIAL_ELIMINATION_OFFSET): Call functions directly. + * config/arm/arm.md (align_8): Enable for all targets. + * config/arm/netbsd-elf.h (TARGET_DEFAULT): Remove TARGET_ATPCS. + (ARM_DEFAULT_ABI): Define. + * doc/invoke.texi : Document -mabi=. Update documentation for + -mstructure-size-boundary. + +2004-03-24 Nathanael Nerode + + * configure.ac: Check for -Wno-variadic-macros; don't use + -pedantic (in stage 1 or a simple 'make all') unless it's available, + and if it's available, use it. Also, clean up check for + -Wno-long-long. + * configure: Regenerate. + +2004-03-24 Richard Sandiford + + * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Remove tm_defines. + * config/mips/vr.h (DEFAULT_VR_ARCH): New macro, defined to vr4130. + (MULTILIB_DEFAULTS): Use it. + (MIPS_CPU_STRING_DEFAULT): Remove. + (MIPS_ABI_DEFAULT, MIPS_MARCH_CONTROLS_SOFT_FLOAT): Define. + (DRIVER_SELF_SPECS): Make -mfix-vr4122-bugs imply -march=vr4120. Make + EABI64 -mlong32 the default ABI. Enforce the default architecture. + * config/mips/t-vr (MULTILIB_OPTIONS): Add mfix-vr4122-bugs, + march=vr4130, march=vr4300, march=vr5000 and march=vr5500. + (MULTILIB_MATCHES): Use -mfix-vr4122-bugs multilibs for -march=vr4120. + (MULTILIB_EXCEPTIONS): Change choice of multilibs. Update comments + accordingly. + +2004-03-24 DJ Delorie + Richard Sandiford + + * config/mips/mips.h (MASK_FIX_VR4122, TARGET_FIX_VR4122): New macros. + (TARGET_SWITCHES): Add -mfix-vr4122-bugs and -mno-fix-vr4122-bugs. + (ASM_SPEC): Pass down -mfix-vr4122-bugs. + * config/mips/mips.c (mips_avoid_hazards): Don't emit whole functions + in .set noreorder and .set nomacro if TARGET_FIX_VR4122. + (mips_init_libfuncs): Use special functions for divsi3 and modsi3 + if TARGET_FIX_VR4122. + * config/mips/mips.md (define_attr length): Account for nops inserted + after macc and dmult when using -mfix-vr4122-bugs. + (umuldi3_highpart, divmodsi4, divmoddi4): Disable if TARGET_FIX_VR4122. + * config/mips/t-vr (LIB2FUNCS_STATIC_EXTRA): Define instead of + LIB2FUNCS_EXTRA. Add config/mips/vr4122-div.S. + * config/mips/vr4122-div.S: New file. + * doc/invoke.texi: Document -mfix-vr4122-bugs. + +2004-03-24 Richard Sandiford + + * config/mips/mips.h (PROCESSOR_R4130): New processor_type. + (TARGET_MIPS4130): New macro. + (ISA_HAS_MACC): Return true if TARGET_MIPS4130 && !TARGET_MIPS16. + * config/mips/mips.c (mips_cpu_info_table): Add a vr4130 entry. + (override_options): Extend MIPS_MARCH_CONTROLS_SOFT_FLOAT to deal + with PROCESSOR_R4130. + * config/mips/mips.md (define_attr cpu): Add r4130. + * doc/invoke.texi: Document vr4130 as a supported MIPS architecture. + +2004-03-24 Maciej W. Rozycki + Richard Sandiford + + * doc/invoke.texi: Apply missed hunk from 2004-03-03 change. + +2004-03-24 Alexandre Oliva + + PR preprocessor/14438 + * cpplib.c (do_pragma): Remove line_change call after pragma + handler. + +2004-03-23 Ian Lance Taylor + + * doc/extend.texi (ARM Built-in Functions): Replace with correct + declarations. + +2004-03-23 Roger Sayle + + * reg-stack.c (get_true_reg): Handle FLOAT_TRUNCATE like FLOAT_EXTEND + if flag_unsafe_math_optimizations. + * config/i386/i386.md (truncdfsf2): If flag_unsafe_math_optimizations + and TARGET_80387 expand using truncdfsf2_noop pattern. + (truncxfsf2): Likewise using truncxfsf2_noop. + (truncxfdf2): Likewise using truncxfdf2_noop. + (truncdfsf2_noop, truncxfsf2_noop, truncxfdf2_noop): New patterns. + +2004-03-23 Ziemowit Laski + + * hooks.c (hook_constcharptr_tree_null): New hook. + * hooks.h (hook_constcharptr_tree_null): New prototype. + * target-def.h (TARGET_MANGLE_FUNDAMENTAL_TYPE): New target hook. + * target.h (mangle_fundamental_type): New target hook. + * config/rs6000/rs6000.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Point + target hook at rs6000_mangle_fundamental_type. + (rs6000_mangle_fundamental_type): New function. + * doc/tm.texi (TARGET_MANGLE_FUNDAMENTAL_TYPE): Document. + +2004-03-23 Zack Weinberg + + PR 12267, 12391, 12560, 13129, 14114, 14133 + * c-tree.h: Forward declare struct c_binding. Declare + c_override_bindings_to_false. Update prototypes. + (struct lang_identifier): Update comments. Change fields to be + struct c_binding *. + (IDENTIFIER_SYMBOL_VALUE, IDENTIFIER_TAG_VALUE) + (IDENTIFIER_LABEL_VALUE, C_DECL_INVISIBLE) + (KEEP_NO, KEEP_YES, KEEP_MAYBE): Delete. + (C_DECL_IN_EXTERNAL_SCOPE, C_DECL_DECLARED_BUILTIN): New. + * c-common.h: Update prototypes. + * c-decl.c (struct c_scope): Update commentary. Remove names, + names_last, parms, parms_last, tags, and shadowed fields. Add + bindings and depth fields. + (scope_freelist): Move to more appropriate location. + (c_print_identifier): Update for changes to struct lang_identifier. + (objc_mark_locals_volatile): Update for new bindings structures. + (global_bindings_p): Honor c_override_global_bindings_to_false. + (pushlevel): Rename to push_scope; take no arguments; use the + scope_freelist; initialize scope->depth and check for overflow. + (poplevel): Rename to pop_scope; totally rewritten for new bindings + structures. + (diagnose_mismatched_decls): Use C_DECL_DECLARED_BUILTIN, not + C_DECL_INVISIBLE, for certain decisions. Adjust some diagnostics. + Improve some commentary. Adjust handling of forward parm decls. + (merge_decls): Set C_DECL_DECLARED_BUILTIN when appropriate. + Preserve C_DECL_IN_EXTERNAL_SCOPE. + (warn_if_shadowing): Correct indentation. Improve diagnostics. + (pushdecl): Remove unnecessary assertion. Short-circuit anonymous + decls. Rewrite for new bindings structures. Improve commentary. + Eliminate the copy_node call. + (implicit_decl_warning): Use the "diag" idiom (as seen in + locate_old_decl) to reduce code duplication; call locate_old_decl + if appropriate. Relocate to remove need for forward declaration. + (implicitly_declare): Adjust for new bindings structures. Kludge + around Objective-C not-really-builtin functions. + (undeclared_variable): Improve diagnostics. If current_function_decl + is nonnull but current_function_scope is null, use current_scope. + Use bind. + (lookup_tag): Adjust for new bindings structures. Kludge around + Objective-C's tag declarations that wind up in the external scope. + (lookup_name): Adjust for new bindings structures. Kludge around + c-common.c's pseudo-typedefs that wind up in the external scope. + (lookup_name_current_level): Rename lookup_name_in_scope; take a + second argument indicating the scope to examine; rewrite for + new bindings structures. + (c_init_decl_processing): Adjust for renamed functions. Do not + initialize current_file_decl, first_builtin_decl, last_builtin_decl. + First scope pushed is the external scope, not the global scope. + (builtin_function): Use bind, not pushdecl. Adjust other bits + for new data structures. Keep track of builtins that should be + made visible automatically. + (start_decl): Adjust diagnostics. Remove unnecessary call to + expand_decl. + (grokparms): Return 0 if arg_types is error_mark_node. + (get_parm_info): Rename "void_at_end" argument to "ellipsis", with + reversed sense. Rewrite for new bindings structures. Do not + leave any decls in the scope, to prevent pop_scope from doing + contradictory things with them. + (finish_struct, finish_enum): Remove redundant diagnostics. + (build_enumerator): Don't cascade diagnostics for error_mark_node. + Mark location where -pedantic changes the meaning of the program. + (store_parm_decls_newstyle, store_parm_decls_oldstyle): Load the + parameter decls into the function's scope structure using bind. + Warn here about function definitions in the wrong style. + Adjust diagnostics. + (store_parm_decls): Correct the determination of whether a + function was defined with a prototype. + (c_write_global_declarations): Operate on all file decls and on + the external scope. Split body of the loop to... + (c_write_global_declarations_1): ... this new function, to avoid + code duplication. + (truly_local_externals, first_builtin_decl, last_builtin_decl) + (make_scope, pop_scope, in_parm_level_p, set_block) + (any_external_decl, record_external_decl, bind_label, getdecls) + (link_hash_hash, link_hash_eq, merge_translation_unit_decls) + (c_reset_state): Delete. + (visible_builtins, c_override_global_bindings_to_false) + (c_binding, I_SYMBOL_BINDING, I_SYMBOL_DECL, I_TAG_BINDING) + (I_TAG_DECL, I_LABEL_BINDING, I_LABEL_DECL, file_scope) + (external_scope, binding_freelist, bind, free_binding_and_advance) + (push_file_scope, pop_file_scope): New. + (pushtag, pushdecl_top_level, lookup_label, declare_label) + (define_label, c_make_fname_decl, finish_decl) + (mark_forward_parm_decls, build_compound_literal) + (grokdeclarator, start_function, check_for_loop_decls) + (identifier_global_value, record_builtin_type): Minor adjustments + for new bindings structures. Improve diagnostics and commentary. + * c-objc-common.c (start_cdtor, finish_cdtor): Adjust calls to + pushlevel/poplevel respectively. + (c_objc_common_finish_file): Don't call merge_translation_unit_decls. + * c-opts.c (c_common_parse_file): Remove spurious ATTRIBUTE_UNUSED. + Warn about YYDEBUG not being defined only if -dy. Remove no-longer- + correct loop over multiple translation units; call fatal_error if + requested to compile more than one file at once. (This disables + IMA temporarily - an up-front error being preferable to a crash.) + * c-parse.in (pushlevel, poplevel rules): Rename push_scope, pop_scope. + (all actions): Adjust calls to pushlevel/poplevel. + (parsing_iso_function_signature): Delete. + (extdef_1): Fold into extdef. + (old_style_parm_decls_1): Fold into old_style_parm_decls. Don't + warn here about function definitions in the wrong style. + (after_tyle_declarator, parm_declarator_starttypename) + (parm_declarator_nostarttypename, notype_declarator): Remove + commented-out productions. + (parmlist_1, parmlist_2): Use make_node, not tree_cons, to create + an empty TREE_LIST node. Adjust calls to get_parm_info. + (parmlist_2 : ELLIPSIS): Tag the arg-info block with error_mark_node + to suppress -Wold-style-definition after this error. + (c_parse_file): Don't clear the binding stack or call + finish_fname_decls here. Correct comment. + * c-typeck.c (same_translation_unit_p): Export. + (common_type): Use c_override_global_bindings_to_false, not + pushlevel/poplevel/declare_parm_level. + * c-lang.c: Override LANG_HOOKS_CLEAR_BINDING_STACK, + LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK, + and LANG_HOOKS_GETDECLS with do-nothing stubs. + * objc/objc-lang.c: Likewise. + * objc/objc-act.c: Adjust all calls to pushlevel, poplevel, + get_parm_info. + (OBJC_VOID_AT_END): Delete; replace all uses + with void_list_node. + (generate_forward_declaration_to_string_table): Delete. + * objc/objc-act.h (OCTI_STRG_DECL, UOBJC_STRINGS_decl): Delete. + + * coverage.c (create_coverage): Don't pushdecl anything. + * langhooks.c (lhd_clear_binding_stack): Call + lang_hooks.decls.poplevel, not poplevel. + * tree.c (list_length): If ENABLE_TREE_CHECKING, abort on a + circular list rather than going into an infinite loop. + +2004-03-23 Olivier Hainque + + * optabs.c (expand_binop): When synthesizing double word rotates + from single word shifts, use a new register target if the provided + target is not a REG already. + +2004-03-23 Richard Kenner + + * alias.c (get_alias_set): Add support for TYPE_REF_CAN_ALIAS_ALL. + * c-common.c (handle_mode_attribute): Add extra arg to + build_pointer_type_for_mode and build_reference_type_for_mode. + * c-typeck.c (build_c_cast): Only look at TREE_CONSTANT_OVERFLOW + for INTEGER_CST. + * tree.c (build_pointer_type_for_mode): Add arg CAN_ALIAS_ALL. + Chain pointers via TYPE_NEXT_PTR_TO. + (build_reference_type_for_mode): Similarly. + (build_type_no_quals): Add extra arg to build_pointer_type_for_mode + and build_reference_type_for_mode. + (tree_check4_failed): New function. + * tree.h (TREE_CHECK4, PTR_OR_REF_CHECK): New macros. + (TYPE_REF_CAN_ALIAS_ALL, TYPE_NEXT_PTR_TO, TYPE_NEXT_REF_TO): Likewise. + (TREE_NO_UNSUED_WARNING, TREE_VIA_VIRTUAL, TREE_CONSTANT_OVERFLOW): + Add check. + +2004-03-23 Roger Sayle + + * fold-const.c (tree_expr_nonnegative_p): A&B is nonnegative when + A is nonnegative or B is nonnegative. Similarly A|B is nonnegative + when both A and B are nonnegative. + (tree_expr_nonzero_p): A|B is nonzero when A is nonzero or B is + nonzero. + +2004-03-23 Kazu Hirata + + * fold-const.c (fold): Remove cases for INTEGER_CST, REAL_CST, + VECTOR_CST, STRING_CST, COMPLEX_CST, and CONSTRUCTOR. + +2004-03-23 Kazu Hirata + + PR optimization/14669 + * fold-const.c (fold): Only unwiden integer comparisons for equality + and inequality operators, or when the signedness doesn't change. + +2004-03-23 Jakub Jelinek + + * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file. + * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set. + * config/sparc/t-linux: New file. + +2004-03-23 Richard Sandiford + + * gcse.c (can_assign_to_reg_p): New function, split out from... + (want_to_gcse_p): ...here. + (compute_ld_motion_mems): Use can_assign_to_reg_p to validate + the rhs of a store. + +2004-03-22 Diego Novillo + + * c-typeck.c (same_translation_unit_p): Fix pasto. + +2004-03-22 David Edelsohn + + * params.def (PARAM_MAX_SCHED_REGION_BLOCKS): New. + (PARAM_MAX_SCHED_REGION_INSNS): New. + * sched-rgn.c: Include params.h + (MAX_RGN_BLOCKS): Delete. + (MAX_RGN_INSNS): Delete. + (too_large): Return bool. Convert to PARAM_VALUE. + * Makefile.in (sched-rgn.o): Depend on $(PARAMS_H). + * doc/invoke.texi (param): Document max-sched-region-blocks and + max-sched-region-insns. + +2004-03-22 Joel Brobecker + + * dwarf2out.c (is_subrange_type): Do not emit a subrange_type DIE + for base types. + +2004-03-22 Joel Brobecker + + * dwarf2out.c (is_subrange_type): Minor code rework. No behavior + change. + +2004-03-22 Jakub Jelinek + + PR c/14069 + * c-decl.c (finish_struct): Change type of incorrect flexible array + field into error_mark_node. + +2004-03-22 Andrew Pinski + + PR target/14580 + * config/rs6000/rs6000.c (symbol_ref_operand): Reject symbols + who are not local for Darwin PIC. + +2004-03-22 Ulrich Weigand + + * regrename.c (regrename_optimize): Set regs_ever_live for all + registers introduced as replacement. + +2004-03-22 Eric Botcazou + + PR middle-end/14470 + * expr.c (mark_queue): New function. + (emit_insns_enqueued_after_mark): New function replacing + emit_queue. Clear the body of emitted queued insns. + (emit_queue): Call emit_insns_enqueued_after_mark. + (store_expr): Mark the increment queue on entry. Emit + only the incrementations queued when expanding the source. + +2004-03-22 Nathanael Nerode + + * configure.ac: Allow --disable-coverage-flags (for the future benefit + of top level bootstrap, and consistency). Reindent. + * configure: Regenerate. + +2004-03-21 Kazu Hirata + + * bt-load.c, builtins.c, cfghooks.c, cfgrtl.c, gcse.c, + ggc-page.c, integrate.c, var-tracking.c, web.c: Remove + unnecessary casts. + +2004-03-22 Danny Smith + + PR target/14291 **** TRUNCATED ****