OSDN Git Service

PR middle-end/39573
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 13c4eb2..45ed3e5 100644 (file)
@@ -1,3 +1,126 @@
+2009-04-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * dwarf2out.c (class_scope_p): New static inline.
+       (class_or_namespace_scope_p): Use it.
+       (gen_variable_die): Use DW_TAG_member tag for static data member
+       declarations instead of DW_TAG_variable.
+
+       PR middle-end/39573
+       * omp-low.c (expand_omp_taskreg): Finalize taskreg static local_decls
+       variables.
+
+2009-04-08  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-sccvn.c (valueize_refs): Do not continue to
+       valueize random data.
+
+2009-04-08  David Edelsohn  <edelsohn@gnu.org>
+
+       * config.gcc (aix tm_file):  Add aix-stdint.h.
+       (aix tm clause use_gcc_stdint):  Set to wrap.
+       * config/rs6000/aix-stdint.h:  New file.
+       
+2009-04-08  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/36291
+       * tree-dfa.c (add_referenced_var): Do not recurse into
+       global initializers.
+       * tree-ssa-ccp.c (get_symbol_constant_value): Add newly
+       exposed variables.
+       (fold_const_aggregate_ref): Likewise.
+
+2009-04-08  Paolo Bonzini  <bonzini@gnu.org>
+
+        * recog.c (ordered_comparison_operator): New.
+        * gensupport.c (std_preds): Add it.
+       * doc/md.texi (Machine-Independent Predicates): Document it.
+
+2009-04-08  Jan Hubicka  <jh@suse.cz>
+
+       * tree-eh.c (cleanup_eh): When not optimizing, do not try EH merging.
+       * function.h (rtl_eh): Remove exception_handler_label_map.
+       * except.c (ehl_hash, ehl_eq, add_ehl_entry,
+       remove_exception_handler_label, for_each_eh_label_1): Remove.
+       (rtl_remove_unreachable_regions): Remove.
+       (convert_from_eh_region_ranges): Do not remove unreachable regions.
+       (find_exception_handler_labels): Don't build the hashtable.
+       (maybe_remove_eh_handler): Remove.
+       (for_each_eh_label): Rewrite to walk the tree.
+       (rest_of_handle_eh): Do not cleanup cfg prior EH construction.
+       * except.h (maybe_remove_eh_handler): Remove.
+       * passes.c (init_optimization_passes): Schedule second EH cleanup
+       before out-of-ssa.
+       * cfgrtl.c (rtl_delete_block, rtl_merge_blocks,
+       cfg_layout_merge_blocks): Do not call maybe_remove_eh_handler.
+
+2009-04-08  Paolo Bonzini  <bonzini@gnu.org>
+
+       * genoutput.c (validate_optab_operands): New.
+       (gen_insn, gen_expand): Call it.
+
+       * genflags.c (gen_insn): Detect misused iterators.
+       (main): Pass line_no to gen_insn, exit with status 1 on error.
+
+       * genextract.c (line_no): Make global.
+       (VEC_safe_set_locstr): Change assertion to error message.
+       (main): Exit with status 1 on error.
+
+2009-04-08  Joseph Myers  <joseph@codesourcery.com>
+
+       PR c/39614
+       PR c/39673
+       * c-common.h (C_MAYBE_CONST_EXPR_PRE, C_MAYBE_CONST_EXPR_EXPR,
+       C_MAYBE_CONST_EXPR_INT_OPERANDS, C_MAYBE_CONST_EXPR_NON_CONST,
+       EXPR_INT_CONST_OPERANDS): Remove duplicate definitions.
+       * c-convert.c (convert): Do not call fold on results of conversion
+       functions when the result is a C_MAYBE_CONST_EXPR.
+       * c-parser.c (c_parser_postfix_expression): Do not fold condition
+       of __builtin_choose_expr.
+       * c-typeck.c (remove_c_maybe_const_expr): New.
+       (build_unary_op, build_conditional_expr, build_compound_expr,
+       build_binary_op, c_objc_common_truthvalue_conversion): Call
+       remove_c_maybe_const_expr on any input C_MAYBE_CONST_EXPR with
+       integer operands.
+
+2009-04-08 Bingfeng Mei <bmei@broadcom.com>
+
+       * fold-const.c (const_binop): Combine two VECTOR_CST under operation 
+        CODE to produce a new one. Add a prototype to use fold_convert_const
+
+2009-04-08  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR bootstrap/39660
+       * config/i386/host-mingw32.c (mingw32_gt_pch_use_address): Don't
+       mix declarations and code.
+
+2009-04-08  Ben Elliston  <bje@au.ibm.com>
+
+       * gcc.c: Replace `CC' with `GCC' throughout.
+
+2009-04-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * doc/invoke.texi: Document Atom support.
+
+2009-04-07  Jason Merrill  <jason@redhat.com>
+
+       PR c++/25185
+       * c-common.h, c-common.c: Add flag_pretty_templates.
+       * c-opts.c (c_common_handle_option): Set it.
+       * c.opt: Add -fno-pretty-templates.
+       * doc/invoke.texi (C++ Dialect Options): Likewise.
+
+2009-04-07  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/ia64/ia64.c (ia64_builtins): Add IA64_BUILTIN_HUGE_VALQ.
+       (ia64_init_builtins): Handle IA64_BUILTIN_HUGE_VALQ.
+       (ia64_expand_builtin): Likewise.
+
+2009-04-07  Martin Jambor  <mjambor@suse.cz>
+
+       * tree-ssa-alias.c (refs_may_alias_p_1): Check for
+       is_gimple_min_invariant rather than CONSTANT_CLASS_P so that invariant
+       ADDR_EXPRS are include too.
+
 2009-04-07  Richard Guenther  <rguenther@suse.de>
 
        * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Non-aliased
 
 2009-04-07  Paolo Bonzini  <bonzini@gnu.org>
 
-        * optabs.c (can_compare_p): Test the predicate of a
-        cbranch and cstore pattern.
+       * optabs.c (can_compare_p): Test the predicate of a
+       cbranch and cstore pattern.
 
 2009-04-07  Paolo Bonzini  <bonzini@gnu.org>
 
-        * expr.c (convert_move): Use emit_store_flag instead of
-        "emulating" it.
+       * expr.c (convert_move): Use emit_store_flag instead of
+       "emulating" it.
 
 2009-04-07  Paolo Bonzini  <bonzini@gnu.org>
 
-        * config/i386/i386.c (ix86_compare_emitted): Remove.
-        (ix86_expand_compare, ix86_expand_branch): Handle MODE_CC
-        ix86_compare_op0 like ix86_compare_emitted used to be handled.
-        * config/i386/i386.h (ix86_compare_emitted): Remove.
-        * config/i386/i386.md (stack_protect_test): Set ix86_compare_op0
-        instead of ix86_compare_emitted.
-        * config/i386/sync.md (sync_compare_and_swap_cc): Likewise.
+       * config/i386/i386.c (ix86_compare_emitted): Remove.
+       (ix86_expand_compare, ix86_expand_branch): Handle MODE_CC
+       ix86_compare_op0 like ix86_compare_emitted used to be handled.
+       * config/i386/i386.h (ix86_compare_emitted): Remove.
+       * config/i386/i386.md (stack_protect_test): Set ix86_compare_op0
+       instead of ix86_compare_emitted.
+       * config/i386/sync.md (sync_compare_and_swap_cc): Likewise.
 
 2009-04-07  Andrew Stubbs  <ams@codesourcery.com>
 
 
 2009-03-31  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
 
-        PR target/27237
+       PR target/27237
        * doc/invoke.texi (ARM Options): Update documentation for -mthumb.
        
 2009-03-31  Richard Guenther  <rguenther@suse.de>
 
 2009-03-30  Paolo Bonzini  <bonzini@gnu.org>
 
-        * combine.c (simplify_comparison): Use have_insn_for.
-        * dojump.c (do_jump): Likewise.
+       * combine.c (simplify_comparison): Use have_insn_for.
+       * dojump.c (do_jump): Likewise.
 
 2009-03-30  Paolo Bonzini  <bonzini@gnu.org>
 
 
 2009-03-30  Paolo Bonzini  <bonzini@gnu.org>
 
-        * cfglayout.c (pass_into_cfg_layout_mode, pass_outof_cfg_layout_mode):
-        Provide/destroy PROP_cfglayout respectively.
-        * gcse.c (pass_jump_bypass, pass_gcse): Require it.
-        * tree-pass.h (PROP_cfglayout): New.
+       * cfglayout.c (pass_into_cfg_layout_mode, pass_outof_cfg_layout_mode):
+       Provide/destroy PROP_cfglayout respectively.
+       * gcse.c (pass_jump_bypass, pass_gcse): Require it.
+       * tree-pass.h (PROP_cfglayout): New.
 
 2009-03-30  Paolo Bonzini  <bonzini@gnu.org>