ChangeLog entries since last run on 2004-06-19T03:15:56Z: --- /Users/regress/tbox/changelog_mail/gcc/gcc/ChangeLog Fri Jun 18 20:16:48 2004 +++ gcc/gcc/ChangeLog Sat Jun 19 06:15:29 2004 @@ -1,3 +1,11 @@ +2004-06-18 Richard Henderson + + PR c++/16036 + * gimple-low.c (lower_function_body): Generate return statement for + fall off the end of the function here ... + * tree-cfg.c (make_edges): ... instead of here. + * gimplify.c (gimplify_return_expr): Mark return temp TREE_NO_WARNING. + 2004-06-18 Zdenek Dvorak * tree-ssa.c (raise_value): Removed. ChangeLog entries between 2004-06-19T03:15:56Z 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 Jun 17 21:04:56 2004 @@ -1,3 +1,551 @@ +2004-06-17 Corinna Vinschen + + * configure.in: Don't build Cygwin native newlib if winsup + directory is missing. Emit warning instead. + * configure: Regenerate. + +2004-06-09 Paolo Bonzini + + * Makefile.tpl (touch-stage[+id+]): New. + (restage[+prev+]): Depend on touch-stage[+id+]. + + * Makefile.tpl (RECURSE_FLAGS_TO_PASS): New. + Use it throughout. + + * Makefile.def: Add profile and feedback bootstrap stages. + Remove next field from bootstrap stages. + * Makefile.tpl (LN, LN_S): Substitute. + (stageN-start, stageN-end): Use double-colon rules, to + provide a hook for additional setup commands. + (distclean-stageN-gcc, restageN): Create dependencies from + [+prev+], not from [+next+]. + (stageN-bubble): Add commands for successive stages from + [+prev+], using double-colon rules. + (all-stageN-gcc): Fix typo. + (stagefeedback-start, profiledbootstrap): New. + * Makefile.in: Regenerate. + * configure.in: Call ACX_PROG_LN. + * configure: Regenerate. + +2004-06-08 Canqun Yang + + * MAINTAINERS (Write After Approval): Add myself. + +2004-06-03 Mark G. Adams + + * MAINTAINERS (Write After Approval): Add myself. + +2004-06-03 Paolo Bonzini + + * configure.in: Fix --enable-bootstrap breakage introduced in trees + without gcc. + * configure: Regenerate. + +2004-06-01 Paolo Bonzini + + * Makefile.tpl: Fix typo. + * Makefile.in: Regenerate. + +2004-06-01 Paolo Bonzini + + * configure.in: Remove new- prefix from toplevel + bootstrap targets. + * configure: Regenerate. + +2004-06-01 Paolo Bonzini + + * Makefile.tpl (all.normal): Rename to all. + (all): Replace with a rule to pick the default + target from configure. + (all-gcc, configure-gcc): Use conditionals to + do nothing when toplevel bootstrap is going on. + (GCC directory bootstrap) [gcc-bootstrap]: Disable. + (Toplevel bootstrap) [gcc-no-bootstrap]: Disable. + * configure.in: Support --enable-bootstrap. + + * Makefile.def: Remove new- prefix from toplevel + bootstrap targets. + * Makefile.tpl: Likewise. + + * Makefile.def: Add bootstrap_stage 4. Add bootstrap2 + target. + + * Makefile.tpl (Toplevel bootstrap): Pass $(BASE_FLAGS_TO_PASS) + $(RECURSE_FLAGS) to recursive invocation of make. + + * Makefile.in: Regenerate. + * configure: Regenerate. + +2004-05-30 Andreas Jaeger + Jim Wilson + + * config-ml.in: Pass FFLAGS and ADAFLAGS for multilibs, handle F77 + like CC. + +2004-05-27 Daniel Jacobowitz + + * configure.in: Fix sed invocation for GFORTRAN_FOR_TARGET. + * configure: Regenerate. + +2004-05-25 Daniel Jacobowitz + + * Makefile.tpl (BUILD_EXPORTS, HOST_EXPORTS, GCC_HOST_EXPORTS) + (STAGE_HOST_EXPORTS, BASE_TARGET_EXPORTS, RAW_CXX_TARGET_EXPORTS) + (NORMAL_TARGET_EXPORTS): New macros. Use them in all the recursive + targets. + * Makefile.in: Regenerate. + +2004-05-24 Paolo Bonzini + + * configure.in: Test the ability to symlink directories. + * configure: Regenerate. + + * Makefile.def (bootstrap-stage): New definitions. + * Makefile.tpl (configure-stage1-gcc, + configure-stage2-gcc, configure-stage3-gcc, + all-stage1-gcc, all-stage2-gcc, all-stage3-gcc, + new-bootstrap, new-cleanstrap, new-restage1, new-restage2, + new-restage3, compare): Autogenerate, see Makefile.in + entry for behavioral changes. + (distclean-stage1, new-stage1-start, new-stage1-end, + new-stage1-bubble, distclean-stage2, new-stage2-start, + new-stage2-end, new-stage2-bubble, distclean-stage3, + new-stage3-start, new-stage3-end): New autogenerated targets. + (objext, prebootstrap, BOOT_CFLAGS, + POSTSTAGE1_FLAGS_TO_PASS): Move above the autogenerated + targets. + + * Makefile.in: Regenerate. + (distclean-stage1, new-stage1-start, new-stage1-end, + new-stage1-bubble, distclean-stage2, new-stage2-start, + new-stage2-end, new-stage2-bubble, distclean-stage3, + new-stage3-start, new-stage3-end): New targets. + (all-stage1-gcc): Move prebootstrap dependency from here... + (configure-stage1-gcc): ...to here. + (new-bootstrap): Use bubble targets. + (new-cleanstrap, new-restage1, new-restage2, new-restage3): + Use per-stage distclean targets. + (configure-stage1-gcc, configure-stage2-gcc, + configure-stage3-gcc, all-stage1-gcc, + all-stage2-gcc, all-stage3-gcc, new-bootstrap): + Use new-stageN-start to prepare the tree. + +2004-05-23 Paolo Bonzini + + * Makefile.def (host_modules): add libcpp. + * Makefile.tpl: Add dependencies on and for libcpp. + * Makefile.in: Regenerate. + * configure.in: Add libcpp host module. + * configure: Regenerate. + +2004-05-21 Paolo Bonzini + + * Makefile.tpl: Whenever a recursive target is defined, wrap + it in a special @if/@endif block, and prepare its maybe + dependency in the @if/@endif block + * configure.in: Instead of writing maybe dependencies, remove + the @if/@endif statements, and remove the @if/@endif blocks + that remain. + * configure: Regenerate. + * Makefile.in: Regenerate. + +2004-05-20 Janis Johnson + + * MAINTAINERS (Various Maintainers): Add myself for compat testsuite. + +2004-05-18 Kaz Kojima + + PR bootstrap/15120 + * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on sh*. + * */configure: Rebuilt. + +2004-05-17 Zack Weinberg + + * Makefile.def, Makefile.tpl, configure.in: Remove all mention + of libf2c. + * configure, Makefile.in: Regenerate. + +2004-05-13 Tobias Schlüter + + * MAINTAINERS (Write After Approval): Add myself. + +2004-05-13 Diego Novillo + + Merge from tree-ssa-20020619-branch. + + * Makefile.def: Add libbanshee, libmudflap and libgfortran. + * Makefile.tpl (BUILD_CONFIGDIRS): Add libbanshee. + (HOST_GMPLIBS): Define. + (HOST_GMPINC): Define. + (TARGET_LIB_PATH): Add libmudflap. + (GFORTRAN_FOR_TARGET): Define. + (configure-build*): Export GFORTRAN. + (configure-gcc): Export GMPLIBS and GMPINC. + (all-gcc): Add maybe-all-libbanshee. + (configure-target-libgfortran): Define. + * Makefile.in: Regenerate. + * configure.in (host_libs): Add libbanshee. + (target_libraries): Add target-libmudflap and target-libgfortran. + Add --with-libbanshee. + Handle --disable-libmudflap. + (*-*-freebsd*): Use with_gmp. + Add $(libgcj) to noconfigdirs. + * configure: Regenerate. + * depcomp: New file. + * MAINTAINERS: Add tree-ssa maintainers. + +2004-05-04 Vladimir Makarov + + * MAINTAINERS (Various Maintainers): Add myself. + +2004-04-30 Brian Ford + + * MAINTAINERS (Write After Approval): Add myself. + +2004-04-29 Uros Bizjak + + * MAINTAINERS (Write After Approval): Add myself. + +2004-04-28 Paolo Bonzini + + * config/acx.m4: Fix fastcompare support for new-bootstrap. + * configure: Regenerate. + +2004-04-27 Paolo Bonzini + + Revert: + 2004-04-26 Paolo Bonzini + + * Makefile.def (flags_to_pass): Remove *dir variables that + are passed to the modules via TOPLEVEL_CONFIGURE_ARGUMENTS, + as well as prefix and exec_prefix. + * Makefile.in: Regenerate. + +2004-04-26 Robert Millan + + Add patches from libtool CVS. + * libtool.m4: Add kfreebsd*-gnu and knetbsd*-gnu. + * ltconfig: Likewise. + * ltcf-c.sh: Likewise. + * ltcf-cxx.sh: Likewise. + * ltcf-gcj.sh: Likewise. + +2004-04-26 Paolo Bonzini + + * Makefile.def (host_modules): Mark with the bootstrap + flag packages on which gcc depends. + * Makefile.tpl (all-bootstrap): Use it. + * Makefile.in: Regenerate. + +2004-04-26 Paolo Bonzini + + * Makefile.def (flags_to_pass): Remove *dir variables that + are passed to the modules via TOPLEVEL_CONFIGURE_ARGUMENTS, + as well as prefix and exec_prefix. + * Makefile.in: Regenerate. + +2004-04-26 Paolo Bonzini + + * configure.in: Invoke ACX_PROG_CMP_IGNORE_INITIAL. + * configure: Regenerate. + * config/acx.m4: Mutuate ACX_PROG_CMP_IGNORE_INITIAL from gcc. + * gcc/Makefile.tpl (compare): Use the result of the test. + * gcc/Makefile.in: Regenerate. + +2004-04-23 Paolo Bonzini + + * Makefile.tpl (all-stage1-gcc, all-stage2-gcc, all-stage3-gcc): + Always relocate gcc and prev-gcc to the original names, even + if the build fails. + (new-cleanstrap, new-restage1, new-restage2, new-restage3): + New targets. + +2004-04-23 Laurent GUERBY + + * MAINTAINERS: Update my email address. + +2004-04-19 Rainer Orth + + * configure.in (mips*-*-irix5*): Enable ld. + * configure: Regenerate. + +2004-04-16 Rainer Orth + + * configure: Regenerate. + +2004-04-15 James E Wilson + + * Makefile.tpl (configure-[+module+], configure-gcc, + configure-stage1-gcc, configure-stage2-gcc, configure-stage3-gcc): + Set and export LDFLAGS. + * Makefile.in: Regenerate. + +2004-04-12 Michael Chastain + + * MAINTAINERS: Add myself to write-after-approval. + +2004-04-09 Nathanael Nerode + + PR bootstrap/14871 + * Makefile.tpl: If we don't have built-in-tree target tools, + use the ones found by configure rather than hacking around with + program_transform_name. + * configure.in: Give Makefile.tpl the information necessary + to do that. + * Makefile.in: Regenerate. + * configure: Regenerate. + +2004-04-06 Nathanael Nerode + + PR bootstrap/14760 + * configure.in: When computing baseargs, strip *all* copies of + offending options. Also, don't match/substitute the trailing space, + so that this actually works when two similar options are separated by + only one space. + * configure: Regenerate. + +2004-04-06 David Edelsohn + + * configure.in (powerpc-*-aix*): Remove target-libada from noconfigdirs. + (rs6000-*-aix*): Same. + * configure: Regenerate. + +2004-04-05 Ranjit Mathew + + * MAINTAINERS: Add myself to write-after-approval. + +2004-04-03 Bud Davis + + * MAINTAINERS: Add myself to write-after-approval. + +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 Fri Jun 18 20:16:48 2004 @@ -1,3 +1,16183 @@ +2004-06-18 Zdenek Dvorak + + * tree-ssa.c (raise_value): Removed. + (get_eq_name, check_phi_redundancy): New functions. + (kill_redundant_phi_nodes): Use standard ssa minimalization algorithm. + +2004-06-18 Roger Sayle + + * fold-const.c (fold) : Add + constant folding for unordered comparison tree nodes. If both + operands are real constants, call fold_relational_const. If either + operand is a NaN, evaluate the other for side-effects and return a + constant. Optimize (double)float1 CMP (double)float2 into the + equivalent float1 CMP float2. + (nondestructive_fold_binary_to_constant) : Call fold_relational_const for constant operands. + (fold_relational_const): Add support for unordered comparison tree + nodes. Don't constant fold "ordered" floating point comparisons + against NaN if when flag_trapping_math is set. + +2004-06-19 Jakub Jelinek + + * fold-const.c (build_range_check): If !in_p and recursive call + fails, exit immediately. If high - low overflows and etype is + a signed type, retry with unsigned etype. + (merge_ranges): If !in0_p and !in1_p, handle even range2 adjacent + to range1 at TYPE_MAX_VALUE and TYPE_MIN_VALUE. + +2004-06-18 Richard Henderson + + * c-gimplify.c (gimplify_condition): Remove. + (gimplify_c_loop, gimplify_if_stmt, gimplify_switch_stmt): Don't + call it. + +2004-06-18 Richard Henderson + + * tree-eh.c (decide_copy_try_finally): Fix scaling of copy and + switch estimates. + +2004-06-18 Andrew Pinski + + * config/i386/darwin.h (HOT_TEXT_SECTION_NAME): Define. + (NORMAL_TEXT_SECTION_NAME): Define. + (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Define. + (SECTION_FORMAT_STRING): Define. + +2004-06-18 Steven Bosscher + + * config/xtensa/xtensa.c + (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define. + * xtensa.md: Replace the old pipeline description with a DFA model. + +2004-06-18 Steven Bosscher + Ulrich Weigand + + * config/s390/s390.md: Remove the generic pipeline description. + * config/s390/2064.md: Make all insn reservations apply to + the z900, g5 and g6. + * config/s390/s390.c (s390_use_dfa_pipeline_interface): Remove. + (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): + Define to hook_int_void_1. + (s390_adjust_cost): Cleanup. Don't check address dependency here. + (s390_first_cycle_multipass_dfa_lookahead): Always return 4. + +2004-06-18 Daniel Berlin + Diego Novillo + + * tree-dfa.c (create_var_ann): tree_ann -> tree_ann_t. + (create_stmt_ann): Ditto. + (create_tree_ann): New function. + (create_cst_ann): Remove. + (create_expr_ann): Ditto. + + * tree-flow-inline.h (cst_ann): Remove. + (get_cst_ann): Ditto. + (get_expr_ann): Ditto. + (expr_ann): Ditto. + (get_tree_ann): New function. + (tree_ann): Ditto. + (ann_type): tree_ann -> tree_ann_t. + * tree-flow.h (tree_ann_type): CST_ANN, EXPR_ANN removed. + (struct cst_ann_d): Removed. + (struct expr_ann_d): Ditto. + (union tree_ann_d): Removed cst and expr. + (tree_ann): Renamed to tree_ann_t. + * tree-ssa-ccp.c (set_rhs): tree_ann -> tree_ann_t. + * tree-ssa-pre.c (get_value_handle): Rewrite for single common + annotation. + (set_value_handle): Ditto. + (phi_translate): Ditto. + * tree-tailcall.c (adjust_return_value): tree_ann -> tree_ann_t. + +2004-06-18 Kaz Kojima + + * config/sh/t-linux64: New file. + * config.gcc: Add it to tmake_file for sh64*-*-linux*. + +2004-06-18 Paolo Bonzini + + * emit-rtl.c (unshare_all_rtl_1): New name of unshare_all_rtl. + (unshare_all_rtl_again): Call unshare_all_rtl_1. + (unshare_all_rtl): New. + * function.c (instantiate_virtual_regs): Remove parameters. + * function.h (instantiate_virtual_regs): Add prototype. + * rtl.h (unshare_all_rtl): Add prototype. + * tree.h (instantiate_virtual_regs, unshare_all_rtl): Remove + prototype. + * passes.c: Remove assertions on the parameters to + rest_of_handle_* functions. Remove the parameters to + the functions, replacing decl with current_function_decl + and insns with get_insns (). + +2004-06-17 Roger Sayle + + * fold-const.c (constant_boolean_node): Handle boolean_type_node + directly, return either boolean_true_node or boolean_false_node. + +2004-06-18 Kelley Cook + + * opts.sh: Delete. Break out generated code to next four files. + * opt-gather.awk: New file. + * optc-gen.awk: New file. + * opth-gen.awk: New file. + * opt-functions.awk: New common file. + * Makefile.in: Update for above. + * configure.ac: Update comment. + * configure: Regenerate. + +2004-06-17 Richard Henderson + + * c-common.c (flag_objc_sjlj_exceptions): New. + * c-common.h (flag_objc_sjlj_exceptions): Declare. + * c-opts.c (c_common_handle_option): Set it. + (c_common_post_options): Handle interation of different + objective-c exception and runtime switches. + * c-decl.c (c_eh_initialized_p): New. + (finish_decl): Use it instead of local eh_initialized_p. + * c-parse.in (nested_function, notype_nested_function): Record + the result of compstmt. + (compstmt_or_error): Likewise. + (compstmt): Don't add_stmt the result. + (stmt): Don't return anything. Rewrite objc try and sync rules. + (objc_try_stmt, objc_catch_list): Remove. + (objc_catch_block, objc_finally_block): Remove. + (objc_catch_prefix, objc_catch_clause, objc_opt_catch_list): New. + (objc_try_catch_clause, objc_finally_clause): New. + (objc_try_catch_stmt): Rewrite. + * c-tree.h (c_eh_initialized_p): Declare. + * c-opt (fobjc-sjlj-exceptions): New. + * except.c (output_function_exception_table): Don't call cgraph + on non-decls. + * objc/objc-act.c (UTAG_EXCDATA_VAR, UTAG_CAUGHTEXC_VAR, + UTAG_RETHROWEXC_VAR, UTAG_EVALONCE_VAR, struct val_stack, + catch_count_stack, exc_binding_stack, if_nesting_count, + blk_nesting_count, objc_enter_block, objc_exit_block, + objc_declare_variable, val_stack_push, val_stack_pop, + objc_build_try_enter_fragment, objc_build_extract_expr, + objc_build_try_exit_fragment, objc_build_extract_fragment, + objc_build_try_prologue, objc_build_try_epilogue, + objc_build_catch_stmt, objc_build_catch_epilogue, + objc_build_finally_prologue, objc_build_finally_epilogue, + objc_build_try_catch_finally_stmt, objc_build_synchronized_prologue, + objc_build_synchronized_epilogue): Remove. + (objc_create_temporary_var, struct objc_try_context, cur_try_context, + objc_eh_runtime_type, objc_init_exceptions, objc_build_exc_ptr, + next_sjlj_build_try_exit, next_sjlj_build_enter_and_setjmp, + next_sjlj_build_exc_extract, next_sjlj_build_catch_list, + next_sjlj_build_try_catch_finally, objc_begin_try_stmt, + objc_begin_catch_clause, objc_finish_catch_clause, + objc_build_finally_clause, objc_finish_try_stmt, + objc_build_synchronized): New. + (objc_is_object_id, objc_is_class_id): New. + (objc_comptypes): Use them. + (build_next_objc_exception_stuff): Break NeXT sjlj out from + build_objc_exception_stuff. + (synth_module_prologue): Update to match. + (objc_build_throw_stmt): Use cur_try_context to decide if + we're in a @catch. + * objc/objc-act.h: Update prototypes. + (OCTI_EXCEPTION_BLK_STACK, objc_exception_block_stack): Remove. + +2004-06-17 Andrew Pinski + + * c-typeck.c (tagged_types_tu_compatible_p ): + Use TYPE_FIELDS instead of TYPE_VALUES. + +2004-06-17 Jason Merrill + + PR c++/16015 + * gimplify.c (gimplify_target_expr): Handle void initializer. + * expr.c (expand_expr_real_1) [TARGET_EXPR]: Likewise. + * doc/c-tree.texi (Expression trees): Update TARGET_EXPR + and AGGR_INIT_EXPR. + +2004-06-17 Roger Sayle + + * fold-const.c (fold_relational_const): Use constant_boolean_node. + +2004-06-17 Jan Hubicka + + PR target/15433 + * i386.md (SSE SF cmov 0 splitter): The conditional is VOIDmode; fix + operand numbering in the output template. + (SSE DF cmov 0 splitter): The conditional is VOIDmode. + +2004-06-17 Jan Hubicka + + * except.c (can_throw_internal): Recognize RESX expresisons. + +2004-06-17 Jan Hubicka + + * cfgbuild.c (make_edges): Do not use label_value_list. + (find_basic_blocks_1): Do not collect label_value_list. + (find_sub_basic_blocks): Update call of make_edges. + +2004-06-17 Andrew MacLeod + + * tree-cfg.c (tree_make_forwarder_block): Use SET_PHI_RESULT. + * tree-flow-inline.h (get_use_op_ptr): Return a use_operand_p. + (get_use_from_ptr, get_def_from_ptr): New. Return operand pointers. + (get_def_op_ptr): Return a def_operand_p instead of a 'tree *'. + (get_v_may_def_result_ptr): Return a def_operand_p. + (get_v_may_def_op_ptr, get_vuse_op_ptr): Return a use_operand_p. + (get_v_must_def_op_ptr): Return a def_operand_p. + (get_phi_result_ptr): New. Return a pointer to the result of a PHI. + (get_phi_arg_def_ptr): New. Return a pointer to an argument of a PHI. + (phi_element_for_edge): Remove. + * tree-flow.h (propagate_value, replace_exp): Change prototype. + (propagate_tree_value): Add new prototype. + (phi_element_for_edge): Remove prototype. + * tree-into-ssa.c (mark_def_sites): Use new operand types. + (prepare_operand_for_rename): Split into two functions. + (prepare_use_operand_for_rename): Prepare use operands. + (prepare_def_operand_for_rename): Prepare def operands. + (rewrite_stmt): Use new operand types. + (rewrite_operand): Use new operand types, change parameter type. + * tree-outof-ssa.c (replace_variable): Split into two functions. + (replace_use_variable): Rewrite uses. + (replace_def_variable): Rewrite defs. + (rewrite_trees, rewrite_vars_out_of_ssa): Use new operand types. + * tree-phinodes.c (make_phi_node, resize_phi_node): Use new types. + (add_phi_arg, remove_phi_arg_num): Use new operand types. + * tree-ssa-ccp.c (substitute_and_fold): Use new operand types. + (ccp_fold, replace_uses_in): Use new operand types. + * tree-ssa-copy.c (replace_ssa_names): Rename to replace_ssa_names_ann + and no longer set the value, change parameter type. + (replace_exp_1): Use new operand types. + (propagate_value): Change parameter type, use new operand types. + (propagate_tree_value): Propagate_value without SSA operands. + (replace_exp, cprop_operand, cprop_into_stmt): Use new operand types. + (cprop_into_successor_phis): Use new operand types. + * tree-ssa-dom.c (thread_across_edge): Use new operand types. + (eliminate_redundant_computations): Use new operand types. + * tree-ssa-dse.c (fix_phi_uses): Use new operand_types. + (fix_stmt_v_may_defs): Use new operand_types. + * tree-ssa-live.c (create_ssa_var_map): Use new operand_types. + (build_tree_conflict_graph): Use new operand_types. + * tree-ssa-loop.c (duplicate_blocks): Use PHI_ARG_DEF_FROM_EDGE. + * tree-ssa-operands.c (struct freelist_d): Remove. + (check_optype_freelist, add_optype_freelist): Remove. + (allocate_def_optype, allocate_use_optype, allocate_v_may_def_optype, + allocate_vuse_optype, allocate_v_must_def_optype): Call ggc_alloc. + (free_uses, free_defs, free_vuses, free_v_may_defs, free_v_must_defs): + Call ggc_free instead of add_optype_freelist. + (init_ssa_operands, fini_ssa_operands): Remove free list code. + (finalize_ssa_defs, finalize_ssa_uses): Set new use/def operands. + * tree-ssa-operands.h (struct def_optype_d): Change underlying type. + (struct use_optype_d): Change underlying type. + (def_operand_p, use_operand_p): New types for pointers to operands. + (USE_OP, DEF_OP, V_MAY_DEF_RESULT, V_MAY_DEF_OP, VUSE_OP, + V_MUST_DEF_OP): Use new pointer type instead of dereferencing directly. + (USE_FROM_PTR, DEF_FROM_PTR): New macros to "dereference" operand + pointer types. + (SET_USE, SET_DEF): New macros to set operands from their pointer. + (SET_USE_OP, SET_DEF_OP, SET_V_MAY_DEF_RESULT, SET_V_MAY_DEF_OP, + SET_VUSE_OP, SET_V_MUST_DEF_OP): New SET routines for operands. + (PHI_RESULT_PTR, PHI_RESULT, SET_PHI_RESULT): Macros to manage the + PHI result as an operand. + (PHI_ARG_DEF_PTR, PHI_ARG_DEF, SET_PHI_ARG_DEF, PHI_ARG_DEF_FROM_EDGE, + PHI_ARG_DEF_PTR_FROM_EDGE): Macros to manage the PHI arguments. + * tree-ssa-pre.c (eliminate): Call propagate_tree_value. + * tree-tailcall.c (independent_of_stmt_p, propagate_through_phis): Use + PHI_ARG_DEF_FROM_EDGE. + * tree.h (PHI_RESULT): Renamed to PHI_RESULT_TREE. + (PHI_ARG_DEF): Renamed to PHI_ARG_DEF_TREE. + +2004-06-17 Zdenek Dvorak + + PR tree-optimization/15991 + * tree-cfg.c (tree_block_label): Export. + * tree-flow-inline.h (bsi_after_labels): New function. + * tree-flow.h (bsi_after_labels, tree_block_label): Declare. + * tree-ssa.c (propagate_into_addr): New function. + (replace_immediate_uses): Handle propagation of pointer constants. + (raise_value): Do not restrict propagation of pointer constants. + * tree-ssanames.c (duplicate_ssa_name): New function. + * tree.h (duplicate_ssa_name): Declare. + +2004-06-17 David Ayers + + * c-parse.in: Unify Objective-C token names. + +2004-06-17 Zack Weinberg + + Bug 14610 + * Makefile.in (min-insn-modes.o): Correct dependencies. + * real.c (encode_ieee_extended, decode_ieee_extended): Always + produce/consume 12-byte little-endian Intel format. + (encode_ieee_extended_128, decode_ieee_extended_128): Delete. + (encode_ieee_extended_motorola, decode_ieee_extended_motorola) + (encode_ieee_extended_intel_96, decode_ieee_extended_intel_96) + (encode_ieee_extended_intel_128, decode_ieee_extended_intel_128): + New functions which convert between 12-byte little-endian Intel + format and the desired format. + (ieee_extended_motorola_format, ieee_extended_intel_96_round_53_format) + (ieee_extended_intel_96_format, ieee_extended_intel_128_format): + Update. + +2004-06-17 Zack Weinberg + + * expmed.c (expand_mult_const): In sanity check, compare only + the bits of val and val_so_far that are significant in the + result mode. + +2004-06-17 Daniel Berlin + + * tree-ssa-pre.c: Update comments. + (val_expr_pair_eq): Factor code from here. + (expr_pred_trans_eq): and here. + (expressions_equal_p): To here. + (print_value_set): Print value for expression. + (phi_trans_lookup): Rename some variables. + (lookup): Ditto. + (value_exists_in_set_bitmap): Ditto. + (value_remove_from_set_bitmap): Ditto. + (value_insert_into_set_bitmap): Ditto. + +2004-06-17 Ulrich Weigand + + * config/s390/s390-modes.def (CCL3mode): New machine mode. + * config/s390/s390.c (s390_match_ccmode_set): Support CCL3mode. + (s390_alc_comparison, s390_slb_comparison): Likewise. + (s390_branch_condition_mask): Likewise. + * config/s390/s390.md ("*subdi3_cc2", "*subdi3_cconly2"): New. + ("*subsi3_cc2", "*subsi3_cconly2"): New. + + * config/s390/s390.h (PREDICATE_CODE): Accept SIGN_EXTEND and + ZERO_EXTEND for s390_alc_comparison and s390_slb_comparison. + * config/s390/s390.c (s390_alc_comparison, s390_slb_comparison): + Handle SIGN_EXTEND and ZERO_EXTEND. + + * config/s390/s390-protos.h (s390_expand_addcc): New prototype. + * config/s390/s390.c (s390_expand_addcc): New function. + * config/s390/s390.md ("adddicc", "addsicc"): New expanders. + ("*sconddi", "*scondsi", "*sconddi_neg", "*scondsi_neg"): New insns. + ("sltu", "sgtu", "sleu", "sgeu"): New expanders. + +2004-06-17 Ben Elliston + + * tree-alias-common.c: Add whitespace. + * tree-inline.c: Correct comment about this file's purpose. + * tree-optimize.c: Likewise. + * tree-tailcall.c: Likewise. + + * tree-alias-ander.h: Add standard top-of-file comment. + * tree-alias-common.h: Likewise. + * tree-alias-type.h: Likewise. + +2004-06-16 Daniel Berlin + + * tree-ssa-pre.c (compute_avail): Value number uses as well. + Strip useless type conversions. + Casts have to be treated slightly different than normal unaries. + +2004-06-16 Richard Henderson + + * c-common.def (COMPOUND_STMT): Remove. + * c-common.c (finish_fname_decls): Don't look through it. + * c-typeck.c (c_tree_expr_nonnegative_p): Likewise. + * c-common.h (COMPOUND_BODY): Remove. + (c_common_stmt_codes): Remove COMPOUND_STMT. + * c-dump.c (c_dump_tree): Likewise. + * c-gimplify.c (c_gimplify_stmt): Likewise. + * c-pretty-print.c (pp_c_statement): Likewise. + * tree.h (DECL_SAVED_TREE): Update commentary. + * doc/c-tree.texi (ASM_EXPR): Rename from ASM_STMT. + (CASE_LABEL_EXPR): Rename from CASE_LABEL. + (GOTO_EXPR): Rename from GOTO_STMT. + (GOTO_FAKE_P): Remove. + (COMPOUND_STMT): Remove. + (HANDLER): Update wrt COMPOUND_STMT. + (STMT_EXPR): Likewise. + (LABEL_EXPR): Rename from LABEL_STMT. + (SCOPE_STMT): Remove. + * objc/objc-act.c (objc_build_try_catch_finally_stmt): Don't look + through COMPOUND_STMT. + +2004-06-16 Richard Henderson + + * c-common.h (c_begin_if_stmt, c_begin_while_stmt, + c_finish_while_stmt_cond): Remove decls. + * c-parse.in (if_prefix): Don't save c_begin_if_stmt result. + * c-typeck.c (c_begin_if_stmt): Return void. + (c_begin_else): Tidy. Save stmt_count. + * c-tree.h (c_begin_if_stmt): Update decl. + + * objc/objc-act.c (objc_build_try_enter_fragment, + objc_build_extract_fragment, objc_build_try_epilogue, + objc_build_catch_stmt, objc_build_catch_epilogue, + objc_build_finally_prologue, objc_build_finally_epilogue): Update + for if builder function changes. + +2004-06-16 Ulrich Weigand + + * config/s390/s390.c (struct machine_function): New member + last_restore_gpr. + (s390_frame_info): Add BASE_USED and RETURN_ADDR_USED parameters. + Do not modify machine->save_return_addr_p or regs_ever_live. + Fill in machine->last_restore_gpr. + (s390_optimize_prolog): Use s390_frame_info to compute registers + to save/restore, remove duplicated code. + (s390_arg_frame_offset): Use s390_frame_info to compute frame + size, remove duplicated code. **** TRUNCATED ****