OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index d0c4473..03c589c 100644 (file)
@@ -1,3 +1,161 @@
+2004-06-25  Paul Brook  <paul@codesourcery.com>
+
+       * target-def.h (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT,
+       TARGET_CXX): Define.
+       (TARGET_INITIALIZER): Use TARGET_CXX.
+       * target.h (struct gcc_target): Add struct cxx.
+       * targhooks.h (default_cxx_guard_type): Add prototype.
+       * targhooks.c (default_cxx_guard_type): New function.
+       * config/arm/arm.c (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT):
+       Define.
+       (arm_cxx_guard_type, arm_cxx_guard_mask_bit): New functions.
+       * doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
+       TARGET_CXX_GUARD_MASK_BIT.
+
+2004-06-25  Devang Patel  <dpatel@apple.com>
+       
+       * config/rs6000/darwin.h (CC1_SPEC): Handle -gused and -gfull.
+       * config/i386/darwin.h (CC1_SPEC): Same.
+       
+2004-06-25  Mark G. Adams  <mark.g.adams@sympatico.ca>
+
+       * dbxout.h: Add include guards
+
+2004-06-25  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_EABI__.
+
+2004-06-25  Richard Earnshaw  <rearnsha@arm.com>
+
+       * arm.c (arm_arch4t): New variable.
+       (arm_override_options): Initialize it.  If compiling for armv5 or
+       higher clear TARGET_INTERWORK.
+       (output_call): Abort if called for armv5.  Use BX if it's available.
+       (output_call_mem): Use BLX if available and ensure that all armv5
+       code is interworking safe.
+       (output_return_instruction): Always use BX in preference to MOV if
+       it's available.
+       (arm_output_epilogue): Likewise.
+       (arm_final_prescan_insn): Never conditionally call a subroutine
+       on armv5.
+       * arm.h (arm_arch4t): Declare.
+       * arm.md (call_reg_armv5, call_value_reg_armv5): New.
+       (call_reg_arm, call_value_reg_arm): Renamed from call_reg and 
+       call_value_reg respectively.
+       (call_reg_thumb_v5, call_value_reg_thumb_v5): New.
+       (call_reg_thumb, call_value_reg_thumb): Renamed from call_indirect
+       and call_value_indirect respectively.
+
+2004-06-25  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.c (reg_or_const_float_1_operand): Reimplement
+       in terms of const_float_1_operand.
+
+2004-06-25  Richard Sandiford  <rsandifo@redhat.com>
+
+       PR target/16144
+       * config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand
+       is 1.0; force it into a register instead.
+
+2004-06-25  Bernardo Innocenti  <bernie@develer.com>
+
+       * config/m68k/m68k.h: Restore valid comment removed by mistake with
+       the recent m68k comments cleanup.
+
+2004-06-24  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * c-gimplify.c (gimplify_for_stmt): Use gimplify_and_add.
+       * gimplify.c (internal_get_tmp_var, gimplify_return_expr): Likewise.
+       (gimplify_loop_expr, gimplify_init_constructor): Likewise.
+       (gimplify_self_mod_expr, gimplify_cond_expr): Likewise.
+       
+       PR/16131
+       * gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
+
+       * gimplify.c: Remove unneeded forward declarations.
+
+       * gimplify.c (append_to_compound_expr): Deleted.
+       * tree-gimple.h (append_to_compound_expr): Deleted.
+
+       * fold-const.c (fold_addr_expr_with_type): Look through all
+       valid LHS modifiers to find a base to mark addressable.
+
+       * tree.h (debug_find_tree): Add declaration.
+       * tree-inline.c (debug_find_tree): Remove extern declaration.
+
+2004-06-24  Eric Christopher  <echristo@redhat.com>
+
+       * config/rs6000/rs6000.md: Apply change mistakenly
+       deleted with 2004-06-22 patch.
+
+2004-06-24  Richard Henderson  <rth@redhat.com>
+
+       * c-decl.c (c_in_iteration_stmt, c_in_case_stmt): Remove.
+       (c_break_label, c_cont_label): New.
+       (start_function): Update initializations.
+       (c_push_function_context): Update saves.
+       (c_pop_function_context): Update restores.
+       * c-parse.in: Update expected conflicts.
+       (stmt_count, compstmt_count): Remove.  Remove all updates.
+       (if_prefix, simple_if, do_stmt_start): Remove.
+       (lineno_labeled_stmt): Remove.
+       (lineno_labels): New.
+       (c99_block_lineno_labeled_stmt): Use it.
+       (lineno_stmt, lineno_label): Don't clear EXPR_LOCUS before calling
+       annotate_with_locus.
+       (select_or_iter_stmt): Replace by ...
+       (condition, if_statement_1, if_statement_2, if_statement,
+       start_break, start_continue, while_statement, do_statement,
+       for_cond_expr, for_incr_expr, for_statement, switch_statement): New.
+       (stmt): Split out ...
+       (stmt_nocomp): ... this.  Use c_finish_bc_stmt, c_finish_goto_label,
+       c_finish_goto_ptr.
+       * c-semantics.c (add_stmt): Don't add line numbers to labels.
+       * c-tree.h: Update prototypes.
+       (struct language_function): Remove x_in_iteration_stmt, x_in_case_stmt;
+       add x_break_label, x_cont_label, x_switch_stack.
+       (c_switch_stack): Declare.
+       * c-typeck.c (c_finish_goto_label, c_finish_goto_ptr): New.
+       (c_finish_return): Return the statement.
+       (c_switch_stack): Rename from switch_stack; export.
+       (if_elt, if_stack, if_stack_space, if_stack_pointer): Remove.
+       (c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_begin_else,
+       c_finish_else): Remove.
+       (c_finish_if_stmt): Rewrite to perform the entire operation.
+       (c_begin_while_stmt, c_finish_while_stmt_cond, c_finish_while_stmt,
+       c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
+       c_finish_for_stmt_incr, c_finish_for_stmt): Remove.
+       (c_finish_loop): New.
+       (c_finish_bc_stmt): New.
+       (c_finish_expr_stmt): Return the statement.  Split out...
+       (c_process_expr_stmt): ... this.  Don't add locus to error marks.
+       * gimplify.c (gimplify_cond_expr): Accept NULL type statements.
+       * tree-gimple.c (is_gimple_stmt): Likewise.
+       * tree-pretty-print.c (dump_generic_node <COND_EXPR>): Likewise.
+       (print_struct_decl): Delete empty compound statement.
+       * objc/objc-act.c (objc_build_throw_stmt): Return the statement.
+       * objc/objc-act.h: Update decl.
+
+2004-06-24  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * tree-pretty-print.c (dump_generic_node, case TYPE_DECL):
+       Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE.
+
+2004-06-24  Andrew Pinski  <apinski@apple.com>
+
+       * objc-act.c (build_objc_method_call): Save the lookup_object
+       so we do not call it twice.
+
+2004-06-24  Richard Henderson  <rth@redhat.com>
+
+       * tree-ssa-dom.c (real_avail_expr_hash): New.
+       (tree_ssa_dominator_optimize): Use it in the htab.
+
+2004-06-24  Frank Ch. Eigler  <fche@redhat.com>
+
+       * tree-mudflap.c (mx_register_decls): Add third (type) argument
+       to synthesized __mf_unregister call.
+
 2004-06-24  Roger Sayle  <roger@eyesopen.com>
 
        PR middle-end/15239