OSDN Git Service

* configure.ac: Don't require ELF binutils to tolerate # 0 "".
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 97d34f3..6f51361 100644 (file)
@@ -1,3 +1,176 @@
+2007-03-16  Alexandre Oliva  <aoliva@redhat.com>
+
+       * configure.ac: Don't require ELF binutils to tolerate # 0 "".
+       * configure: Rebuilt.
+
+2007-03-16  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR debug/29906
+       * dwarf2out.c (force_type_die): Adjust comment.
+       (dwarf2out_imported_module_or_decl): Handle base AT_import types.
+
+2007-03-15  DJ Delorie  <dj@redhat.com>
+
+       * config/frv/predicates.md (minmax_operator): Don't check operands
+       here.
+
+2007-03-15  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-ssa-loop-niter.c (record_estimate): Add "upper" argument.
+       Update constant estimates of number of iterations.
+       (record_nonwrapping_iv): Add "upper" argument.  "data_size_bounds_p"
+       argument renamed to "realistic".
+       (compute_estimated_nb_iterations): Removed.
+       (record_niter_bound): New function.
+       (idx_infer_loop_bounds): For possible but unlikely tail arrays,
+       call record_nonwrapping_iv with upper = false.
+       (infer_loop_bounds_from_signedness): Pass upper argument to
+       record_nonwrapping_iv.
+       (estimate_numbers_of_iterations_loop): Do not call
+       compute_estimated_nb_iterations.  Record estimate based on profile
+       information.  Initialize the constant estimates of number of
+       iterations.
+       * tree-data-ref.c (estimated_loop_iterations): Return the recorded
+       estimates.
+       * tree-ssa-loop-prefetch.c (loop_prefetch_arrays): Add dump when
+       number of iterations is too small.
+       * cfgloop.h (struct nb_iter_bound): Remove "realistic" field.
+       (EST_NOT_AVAILABLE): Removed.
+       (struct loop): Replace estimated_nb_iterations by any_upper_bound,
+       nb_iterations_upper_bound, any_estimate and nb_iterations_estimate
+       fields.
+
+2007-03-15  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-ssa-loop-niter.c (refine_bounds_using_guard, bound_difference):
+       Handle NE_EXPR guards.
+
+2007-03-15  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c++/24924
+       * c-opts.c (c_common_post_options): Handle C++ post-processing here.
+       Set also -pedantic-errors by default for the  preprocessor unless
+       -fpermissive is given.
+       
+2007-03-15  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/29719
+       PR middle-end/31161
+       * builtins.c (expand_builtin_cexpi): As a fallback if we
+       don't have builtins for sincos or cexp create a function
+       declaration for cexp and expand to a call to that.
+       (expand_builtin_int_roundingfn): Always fall
+       back to floor/ceil and its variants even if they may be
+       not available.
+
+2007-03-15  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR middle-end/31159
+       * cfglayout.c (fixup_reorder_chain): Postpone deleting dead
+       jump tables, move the call to delete_dead_jumptables from here...
+       (cfg_layout_finalize): ...to here.  But rebuild jump labels first.
+       * cfgrtl.c (cfg_layout_can_merge_blocks_p): When not optimizing,
+       don't allow merging of blocks that try_redirect_by_replacing_jump
+       also does not handle when not optimizing.
+
+2007-03-15  Uros Bizjak  <ubizjak@gmail.com>
+           Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * config/i386/i386.md (x86_sahf_1): Correctly handle
+       HAVE_AS_IX86_SAHF.
+
+2007-03-15  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/31167
+       * config/i386/i386.md (*addti3_1, *addti3_1 splitter): Use
+       x86_64_general_operand as operand[2] predicate.  Remove "iF"
+       from operand constraints and use "e" constraint instead.
+       (*subti3_1, *subti3_1 splitter): Ditto.
+       (*negti2_1, *negti2_1 splitter): Use nonimmediate_operand as
+       operand[1] predicate.
+
+2007-03-14  Sebastian Pop  <sebastian.pop@inria.fr>
+
+       * tree-loop-linear.c (gather_interchange_stats): For multidimensional
+       arrays, multiply the access strides by the size of the sub-array.
+       * testsuite/gcc.dg/tree-ssa/ltrans-5.c: New.
+
+2007-03-14  Uros Bizjak  <ubizjak@gmail.com>
+
+       * configure.ac (HAVE_AS_IX86_SAHF): On x86 targets check whether
+       the configured assembler supports the sahf mnemonic.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+       * config/i386/i386.md (x86_sahf_1): Depending on HAVE_AS_IX86_SAHF,
+       emit "sahf" or ".byte\t0x9e" as asm template.
+
+2007-03-14  Michael Meissner  <michael.meissner@amd.com>
+
+       PR 31018
+       * config/i386/i386.h (X86_TUNE_SHORTEN_X87_SSE): New tuning
+       option to replace hard coded TARGET_xxx in md file.
+       (X86_TUNE_AVOID_VECTOR_DECODE): Ditto.
+       (X86_TUNE_SLOW_IMUL_IMM32_MEM): Ditto.
+       (X86_TUNE_SLOW_IMUL_IMM8): Ditto.
+       (X86_TUNE_MOVE_M1_VIA_OR): Ditto.
+       (X86_TUNE_NOT_UNPAIRABLE): Ditto.
+       (X86_TUNE_NOT_VECTORMODE): Ditto.
+       (TUNE_SHORTEN_X87_SSE): Use new tuning option.
+       (TUNE_AVOID_VECTOR_DECODE): Ditto.
+       (TUNE_SLOW_IMUL_IMM32_MEM): Ditto.
+       (TUNE_SLOW_IMUL_IMM8): Ditto.
+       (TUNE_MOVE_M1_VIA_OR): Ditto.
+       (TUNE_NOT_UNPAIRABLE): Ditto.
+       (TUNE_NOT_VECTORMODE): Ditto.
+       
+       * config/i386/i386.c (ix86_tune_features): Fill in new tuning
+       options.
+
+       * config/i386/i386.md (fix_trunc?f?1_sse peephole2): Use new
+       tuning options instead of hard coded TARGET_xxx.
+       (fix ssemode peephole2's): Ditto.
+       (imul peephole2's): Ditto.
+       (movsi_or): Ditto.
+       (movdi_or_rex64): Ditto.
+       (move peephole2): Ditto.
+       (not peephole2's): Ditto.
+
+2007-03-14  Dirk Mueller  <dmueller@suse.de>
+
+       * c-common.h (empty_body_warning): Rename to empty_if_body_warning.
+       * c-common.c (empty_if_body_warning): Rephrase diagnostic message.
+       * c-parser.c (c_parser_if_body): Always add an empty statement in case
+       of empty body.
+       * c-parser.c (c_parser_do_statement): Warn about empty body in
+       do/while statement.
+       * c-typeck (c_finish_if_stmt): Call empty_if_body_warning.
+       * doc/invoke.texi (-Wempty-body): Update documentation.
+
+2007-03-14  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c/21438
+       * c-common.h (warn_for_div_by_zero): Declare.
+       * c-common.c (warn_for_div_by_zero): Define.
+       * c-typeck.c (build_binary_op): Call warn_for_div_zero instead of
+       warning.
+
+2007-03-14  Richard Sandiford  <richard@codesourcery.com>
+
+       * Makefile.in (PREPROCESSOR_DEFINES): Add directory terminators
+       to PREFIX and STANDARD_PREFIX.
+
+2007-03-14  Richard Sandiford  <richard@codesourcery.com>
+           Phil Edwards  <phil@codesourcery.com>
+
+       * gthr-vxworks.h: Add an extern "C" wrapper for C++.
+       (__gthread_once_t): Remove busy field for RTPs.
+       (__GTHREAD_ONCE_INIT): Update accordingly.
+
+2007-03-14  Richard Sandiford  <richard@codesourcery.com>
+
+       * doc/invoke.texi: Document VxWorks options.
+
 2007-03-14  Uros Bizjak  <ubizjak@gmail.com>
 
        * doc/invoke.texi (i386 and x86-64 Options): Clarify -msahf option.