OSDN Git Service

2009-04-13 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9965730..0544dd6 100644 (file)
@@ -1,3 +1,93 @@
+2009-04-13  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
+
+       * config/arm/arm.c (return_used_this_function): Remove.
+       (arm_output_function_prologue): Remove use of
+       return_used_this_function.
+       (output_return_instruction): Replace use of
+       return_used_this_function
+       by cfun->machine->return_used_this_function.
+       (arm_output_epilogue): Likewise.
+       (arm_output_function_epilogue): Likewise.
+       (thumb_unexpanded_epilogue): Likewise.
+       * config/arm/arm.h (struct machine_function):
+       New member return_used_this_function.
+       
+2009-04-12  Mark Mitchell  <mark@codesourcery.com>
+
+       * doc/install.texi: Correct description of default directory for
+       --with-gxx-include-dir.
+
+2009-04-12 Eric Botcazou <ebotcazou@adacore.com>
+
+       * fold-const.c (build_range_check): Properly deal with enumeral and
+       boolean base types.
+
+2009-04-12  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * doc/invoke.texi (max_gcse_passes): Remove documentation.
+       * params.def (PARAM_MAX_GCSE_PASSES): Remove.
+       * params.h (MAX_GCSE_PASSES): Remove.
+       * gcse.c (gcse_main): Run CPROP1, PRE or HOIST, and CPROP2
+       in sequence.  Remove ability to run multiple passes.
+       (bypass_jumps): Report run as third CPROP pass.
+
+2009-04-12  Adam Nemet  <anemet@caviumnetworks.com>
+
+       PR middle-end/39651
+       * except.c (can_throw_external): Look at each insn in a SEQUENCE
+       when deciding whether the whole SEQUENCE can throw.
+
+2009-04-12  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/39740
+       * config/alpha/predicates.md (local_symbolic_operand): Return 1 for
+       offseted label references.
+
+2009-04-11  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssa-pre.c (eliminate): Fix call of update_stmt.
+
+2009-04-11  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/39732
+       * tree-inline.c (declare_return_variable): Mark DECL_BY_REFERENCE
+       return variables as TREE_ADDRESSABLE.
+
+2009-04-11  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/39713
+       * tree-ssa-sccvn.c (vn_get_expr_for): Make sure built
+       reference trees have SSA_NAME operands.
+
+2009-04-11  Richard Guenther  <rguenther@suse.de>
+
+       PR c/39712
+       * c-gimplify.c (c_gimplify_expr): Adjust check for mismatched
+       address expressions.
+
+2009-04-11  Dave Korn  <dave.korn.cygwin@gmail.com>
+
+       * config/i386/cygwin-stdint.h (INT_LEAST32_TYPE):  Update to
+       match changes in Cygwin 1.7
+       (UINT_LEAST32_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE,
+       UINT_FAST16_TYPE, UINT_FAST32_TYPE):  Likewise.
+
+2009-04-10  Paolo Bonzini  <bonzini@gnu.org>
+
+       PR tree-optimization/39701
+       * doc/invoke.texi (Optimization Options): Document change in
+       meaning and initialization of -fdelete-null-pointer-checks.
+
+2009-04-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR middle-end/39701
+       * common.opt (-fdelete-null-pointer-checks): Initialize to 1.
+
+       * opts.c (decode_options): Don't set flag_delete_null_pointer_checks
+       here.
+
+       * doc/invoke.texi: Update -fdelete-null-pointer-checks.
+
 2009-04-10  Chao-ying Fu  <fu@mips.com>
 
        * doc/tm.texi (Instruction Output): Document
 2009-04-10  Paolo Bonzini  <bonzini@gnu.org>
 
        PR middle-end/39701
-        * fold-const.c (tree_single_nonzero_warnv_p): Pass non-static
-        variables as non-NULL even with -fdelete-null-pointer-checks.
+       * fold-const.c (tree_single_nonzero_warnv_p): Pass non-static
+       variables as non-NULL even with -fdelete-null-pointer-checks.
 
 2009-04-10  H.J. Lu  <hongjiu.lu@intel.com>
 
        * expmed.c (expand_divmod): Always use a comparison for a division
        by a large unsigned integer.
 
-        * fold-const.c (tree_single_nonzero_warnv_p): Always treat decls
-        for things others than variables or functions as nonzero.
+       * fold-const.c (tree_single_nonzero_warnv_p): Always treat decls
+       for things others than variables or functions as nonzero.
 
 2009-04-09  Nick Clifton  <nickc@redhat.com>
 
 
 2009-04-09  Paolo Bonzini  <bonzini@gnu.org>
 
-        * config/i386/i386.md (cmpcc): New.
-        * config/i386/sync.md (sync_compare_and_swap*): Set FLAGS_REG.
-        (sync_compare_and_swap_cc*): Delete.
-
-        * config/s390/s390.c (s390_compare_emitted): Remove.
-        (s390_emit_compare): Handle MODE_CC s390_compare_op0 like
-        s390_compare_emitted used to be handled.  Assert that modes match.
-        (s390_emit_compare_and_swap): Use s390_emit_compare, do not
-        refer to sync_compare_and_swap_ccsi.
-        * config/s390/s390.h (s390_compare_emitted): Remove.
-        * config/s390/s390.md (seq): Look for MODE_CC s390_compare_op0
-        instead of s390_compare_emitted.
-        (stack_protect_test, sync_compare_and_swap_cc): Set s390_compare_op0
-        instead of s390_compare_emitted.
-        * config/s390/s390.md (cmpcc): New.
-        (sync_compare_and_swapqi, sync_compare_and_swaphi): Clobber
-        CC_REGNUM, do not pretend it's set.
-        (sync_compare_and_swap_cc*): Delete.
-        * config/s390/predicates.md (cc_reg_operand): New.
-
-        * expr.c (sync_compare_and_swap_cc): Delete.
-        * optabs.h (sync_compare_and_swap_cc): Delete.
-        * optabs.c (prepare_cmp_insn): Ignore which specific CCmode
-        is being used with can_compare_p.
-        (emit_cmp_and_jump_insn_1): Likewise when looking in the optab.
-        (find_cc_set): New.
-        (expand_bool_compare_and_swap): Do not use sync_compare_and_swap_cc,
-        look for a MODE_CC set instead.  Use emit_store_flag.
-        (expand_compare_and_swap_loop): Likewise, with some additional
-        complication to avoid a force_reg when useless.  Use
-        emit_cmp_and_jump_insns.
-        * genopinit.c (optabs): Delete sync_compare_and_swap_cc.
-        * doc/md.texi (sync_compare_and_swap_cc): Merge with
-        sync_compare_and_swap documentation.
+       * config/i386/i386.md (cmpcc): New.
+       * config/i386/sync.md (sync_compare_and_swap*): Set FLAGS_REG.
+       (sync_compare_and_swap_cc*): Delete.
+
+       * config/s390/s390.c (s390_compare_emitted): Remove.
+       (s390_emit_compare): Handle MODE_CC s390_compare_op0 like
+       s390_compare_emitted used to be handled.  Assert that modes match.
+       (s390_emit_compare_and_swap): Use s390_emit_compare, do not
+       refer to sync_compare_and_swap_ccsi.
+       * config/s390/s390.h (s390_compare_emitted): Remove.
+       * config/s390/s390.md (seq): Look for MODE_CC s390_compare_op0
+       instead of s390_compare_emitted.
+       (stack_protect_test, sync_compare_and_swap_cc): Set s390_compare_op0
+       instead of s390_compare_emitted.
+       * config/s390/s390.md (cmpcc): New.
+       (sync_compare_and_swapqi, sync_compare_and_swaphi): Clobber
+       CC_REGNUM, do not pretend it's set.
+       (sync_compare_and_swap_cc*): Delete.
+       * config/s390/predicates.md (cc_reg_operand): New.
+
+       * expr.c (sync_compare_and_swap_cc): Delete.
+       * optabs.h (sync_compare_and_swap_cc): Delete.
+       * optabs.c (prepare_cmp_insn): Ignore which specific CCmode
+       is being used with can_compare_p.
+       (emit_cmp_and_jump_insn_1): Likewise when looking in the optab.
+       (find_cc_set): New.
+       (expand_bool_compare_and_swap): Do not use sync_compare_and_swap_cc,
+       look for a MODE_CC set instead.  Use emit_store_flag.
+       (expand_compare_and_swap_loop): Likewise, with some additional
+       complication to avoid a force_reg when useless.  Use
+       emit_cmp_and_jump_insns.
+       * genopinit.c (optabs): Delete sync_compare_and_swap_cc.
+       * doc/md.texi (sync_compare_and_swap_cc): Merge with
+       sync_compare_and_swap documentation.
 
 2009-04-09  Jan Hubicka  <jh@suse.cz>