OSDN Git Service

* hpux-unwind.h (pa_fallback_frame_state): Handle return parameter
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index bc5e24f..242e624 100644 (file)
@@ -1,3 +1,422 @@
+2006-05-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * hpux-unwind.h (pa_fallback_frame_state): Handle return parameter
+       relocation and relocation stubs.
+
+2006-05-08  Eric Christopher  <echristo@apple.com>
+
+       * unwind-dw2-fde-darwin.c (examine_objects): Only check data
+       section for ppc.
+
+2006-05-08  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/25962
+       * cgraphunit.c (decide_is_function_needed): When not optimizing even
+       unused static functions are needed.
+
+2006-05-08  Roger Sayle  <roger@eyesopen.com>
+
+       PR target/27158
+       * reload.c (find_reloads_toplev): Only return the simplified SUBREG
+       of a reg_equiv_constant if the result is a legitimate constant.
+
+2006-05-08  Uros Bizjak  <uros@kss-loka.si>
+
+       PR target/27277
+       * config/i386/i386.c (ix86_rtx_costs) [FLOAT_EXTEND]: For
+       standard 80387 constants, raise the cost to prevent
+       compress_float_constant() to generate load from memory.
+
+2006-05-08  Kazu Hirata  <kazu@codesourcery.com>
+
+       * config/arm/constraints.md (c): Fix a typo.
+
+       * see.c, tree-flow-inline.h, tree-phinodes.c: Fix comment
+       typos.
+
+2006-05-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/24879
+       * config/i386/pmmintrin.h (_mm_monitor): Remove macro. Use
+       inline function.
+       (_mm_mwait): Likewise.
+
+       * config/i386/sse.md (sse3_mwait): Replace "mwait\t%0, %1" with
+       "mwait".
+       (sse3_monitor): Make it 32bit only.
+       (sse3_monitor64): New. 64bit monitor.
+
+2006-05-07  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR target/27421
+       * config/i386/i386.c (classify_argument): Skip fields with invalid
+       types.
+
+2006-05-07  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/27409
+       * tree-ssa-structalias.c (get_constraint_for_component_ref):
+       Do not try to find zero-sized subvars.
+
+2006-05-07  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/27136
+       * tree-ssa-loop-niter.c (get_val_for): Correct function
+       comment, assert requirements.
+       (loop_niter_by_eval): Stop processing if the iterated
+       value did not simplify.
+
+2006-05-07  Mircea Namolaru  <namolaru@il.ibm.com>
+
+        * opts.c (flag_see): remove its setting at -O3.
+
+2006-05-07  Richard Earnshaw  <rearnsha@arm.com>
+
+       * genpeep.c (main): Make insn-peep.c depend on flags.h.
+       * arm/constraints.md: New file.
+       * arm.h (REG_CLASS_FROM_LETTER_P): Delete.
+       (CONST_OK_FOR_ARM_LETTER, CONST_OK_FOR_THUMB_LETTER)
+       (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_ARM_LETTER)
+       (CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT_STR_ARM)
+       (CONSTRAINT_LEN, EXTRA_CONSTRAINT_THUMB, EXTRA_CONSTRAINT_STR)
+       (EXTRA_MEMORY_CONSTRAINT): Likewise.
+       * arm.md: Include constraints.md.
+       (thumb_movsi_insn): Use satisfies_constraint_J.
+       (movhi, movqi): Use satisfies_constraint_I.
+
+2006-04-29 Anatoly Sokolov <aesok@post.ru>
+
+        * config/avr/avr.h (CRT_BINUTILS_SPECS): Fixed crt* file name
+       for atmeg a645 device.
+
+2006-05-06   Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/27151
+       * tree-vect-transform.c (vectorizable_condition): Punt on
+       values that have a different type than the condition.
+
+2006-05-03  Aldy Hernandez  <aldyh@redhat.com>
+
+       PR/21391
+       * c-parser.c (c_parser_cast_expression): Only insert casts into
+       hash table if pointer.
+       * function.c (used_types_insert_helper): Rename from
+       used_types_insert.
+       (used_types_insert): Call used_types_insert_helper.
+       * function.h (used_types_insert): Accept only one argument.
+
+2006-05-05  David Edelsohn  <edesohn@gnu.org>
+
+       * config/rs6000/rs6000.md: Mark all "X" constraints for clobbered
+       scratch with output modifier.
+
+2006-05-04  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/26481
+       * config/rs6000/rs6000.md (stmsi_power): Mark clobber constraint
+       with output modifier.
+
+2006-05-04  Richard Sandiford  <richard@codesourcery.com>
+
+       PR target/26765
+       * config/mips/mips.c (mips_symbolic_address_p): Return true
+       for SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL, SYMBOL_TPREL,
+       SYMBOL_GOTTPREL, and SYMBOL_TLS.
+
+2006-05-04  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/14287
+       PR tree-optimization/14844
+       PR tree-optimization/19792
+       PR tree-optimization/21608
+       PR tree-optimization/27090
+       * tree-ssa-pre.c (try_combine_conversion): New function.
+       (compute_avail): After constructing the value-handle
+       expression, use try_combine_conversion to combine NOP_EXPRs
+       with previous value-handle expressions and use the result if it
+       is available.
+
+2006-05-04  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config/mips/linux64.h (DWARF_OFFSET_SIZE): Remove.
+
+2006-05-04  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/25962
+       * cgraphunit.c (verify_cgraph_node): Fix cgraph_hash testing.
+
+2006-05-04  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/predicates.md (const01_rtx): Tell generator programs
+       that this only matches CONST_INTs.  All users changed to VOIDmode
+       operands.
+
+       * config/bfin/bfin.c: Include "optabs.h".
+       (bfin_rtx_costs): Some costs for vector operations, to allow combine
+       to do more work.
+       (enum bfin_builtins): Add a number of fractional and vector builtins.
+       (bfin_init_builtins): Likewise.
+       (struct builtin_description, bdesc_2arg, bdesc_1arg): New.
+       (safe_vector_operand, bfin_expand_binop_builtin,
+       bfin_expand_unop_builtin): New functions.
+       (bfin_expand_builtin): Handle the new builtins.
+       * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define
+       __ADSPBLACKFIN__.
+
+2006-05-04  Leehod Baruch  <leehod@il.ibm.com>
+
+        * see.c: New file.
+        * Makefile.in (OBJS-common): Add see.o.
+        (see.o): Add dependencies.
+        * common.opt (fsee): New flag for the see optimization was added.
+        * opts.c (flag_see): Initialized.
+        * passes.c (init_optimization_passes, pass_see): New pass.
+        * rtl.h (see_main): Declaration as extern.
+        * timevar.def (TV_SEE): New.
+        * tree-pass.h (pass_see): Declaration as extern.
+        * invoke.texi (-fsee): Document.
+        * recog.c (validate_simplify_insn): New function.
+        * recog.h (validate_simplify_insn): Declaration as extern.
+        * df-problems.c (df_chain_dump): Check for NULL.
+
+2006-05-04  Kenneth Zadeck <zadeck@naturalbridge.com>
+            Daniel Berlin  <dberlin@dberlin.org>
+
+        * cfgrtl.c (insert_insn_bb_end_new): New function.
+        * basic-block.h (insert_insn_bb_end_new): Declaration as extern.
+
+2006-05-04  Leehod Baruch  <leehod.baruch@weizmann.ac.il>
+
+        * df.h (struct web_entry): Moved from web.c.
+        (union_defs): Declaration as extern.
+        (unionfind_root): Likewise.
+        (unionfind_union): Likewise.
+        * web.c (struct web_entry): Moved to df.h.
+        (unionfind_root): Remove static declaration.
+        (unionfind_union): Likewise.
+        (union_defs): Likewise and generalize to use callback function.
+        (web_main): Update arguments for union_defs function call.
+
+2006-05-04  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/26447
+       * tree-ssa-pre.c (realify_fake_stores): For necessary loads
+       produce SSA_NAME copies before the store stmt to avoid
+       breaking exception handling.
+
+2006-05-04  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/27388
+       * gimplify.c (omp_is_private): If var is shared in some outer context,
+       return false instead of true.  Stop searching on parallel context
+       boundary.
+
+2006-05-03  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR java/8260
+       * coverage.c: Use get_gcov_unsigned_t() instead of
+       unsigned_type_node all over.
+
+2006-05-02  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/27381
+       * tree-phinodes.c (remove_phi_arg_num): When moving a phi argument,
+       maintain the same immediate_use links.
+       * tree-ssa-operands.c (dump_immediate_uses_for): Show iteration marker
+       node rather than segfaulting.
+
+2006-05-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/27395
+       * gimplify.c (gimplify_scan_omp_clauses): Compare OMP_CLAUSE_CODE
+       rather than TREE_CODE to OMP_CLAUSE_REDUCTION.  Set also GOVD_SEEN
+       bit for OMP_CLAUSE_REDUCTION_PLACEHOLDER.
+
+2006-05-02  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/26626
+       * tree-ssa-structalias.c (compute_points_to_sets): For now, solve
+       always.
+       * tree-ssa-operands.c (access_can_touch_variable): Allow
+       typecasting through union pointers.
+
+2006-05-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/26943
+       * omp-low.c (maybe_lookup_decl_in_outer_ctx): New function.
+       (build_outer_var_ref): Use maybe_lookup_decl_in_outer_ctx
+       to find if var will be a global variable even in the nested context.
+       (omp_copy_decl): Only check for global variable at the end, it might
+       be overridden in outer contexts.
+       (scan_sharing_clauses): For global variables don't create a field.
+       (lower_rec_input_clauses): Do nothing for global shared variables.
+       Emit a barrier at the end of ILIST if there were any decls in both
+       firstprivate and lastprivate clauses.
+       (lower_send_clauses): Do nothing for global variables except for
+       COPYIN.
+
+2006-05-02  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree.c (unsigned_type_for, signed_type_for): Make sure a type
+       of the correct signedness is returned.
+
+2006-05-02  Jeff Law  <law@redhat.com>
+
+       PR tree-optimization/27364
+       * tree-vrp.c (vrp_int_const_binop): Fix detection of overflow from
+       multiply expressions.
+
+2006-05-02  Tom Tromey  <tromey@redhat.com>
+
+       * tree-flow-inline.h (op_iter_init_phiuse): Fixed typo.
+
+2006-05-02  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR target/27387
+       * arm.c (arm_output_mi_thunk): Use pc-relative addressing when
+       -mthumb -fPIC are used.
+
+2006-05-02  Stanislaw Skowronek  <skylark@linux-mips.org>
+           Joshua Kinard  <kumba@gentoo.org>
+
+       PR target/25871
+       * gcc/config/mips/mips.h (TRAMPOLINE_TEMPLATE): Avoid 32-bit moves
+       with 64-bit pointers.
+
+2006-05-02  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm/arm.c (add_minipool_forward_ref): Check if insn
+       and pool overlap.
+       (create_fix_barrier): Check that a suitable barrier location is
+       found.
+       (arm_reorg): Include ftmp->address in allowable range of addresses.
+
+2006-05-02  David Billinghurst <David.Billinghurst@riotinto.com>
+
+       PR ada/27366
+       * ada/env.c (__gnat_clearenv): Use unsetenv() to clear environment
+       on Cygwin.
+
+2006-05-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/27337
+       * gimplify.c (gimplify_scan_omp_clauses): Handle INDIRECT_REF
+       around RESULT_DECL for result passed by reference.
+       (gimplify_expr): Call omp_notice_variable when RESULT_DECL is seen.
+       * omp-low.c (use_pointer_for_field): Don't look at
+       DECL_HAS_VALUE_EXPR_P for RESULT_DECLs.
+       (scan_omp_1): Call remap_decl on RESULT_DECLs.
+       (lower_rec_input_clauses): Don't allocate VLA memory for the second
+       time or var for passing by reference for
+       OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE clauses.  Allow creation of
+       TREE_ADDRESSABLE variables when passing by reference.
+
+       * omp-low.c (dump_omp_region): Fix output formatting.
+
+       PR middle-end/27328
+       * omp-low.c (remove_exit_barrier): Handle NULL exit_bb.
+       (expand_omp_parallel): Likewise.
+       * tree-cfg.c (move_sese_region_to_fn): Likewise.
+
+       PR middle-end/27325
+       * omp-low.c (lower_omp_sections): Call maybe_catch_exception
+       on statement list containing also constructors and destructors.
+       (lower_omp_single, lower_omp_for, lower_omp_parallel): Likewise.
+
+       PR middle-end/27310
+       * except.c (duplicate_eh_regions): Fix clearing of
+       cfun->eh->region_array entries.
+
+2006-05-01  DJ Delorie  <dj@redhat.com>
+
+       * configure.ac (gcc_cv_nm): Don't use an in-tree nm if
+       build!=host.
+       (gcc_cv_objdump): Likewise.
+       * configure: Regenerated.
+
+2006-05-01  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR target/27374
+       * config/arm/vfp.md (*arm_movdi_vfp): Correct the output
+       templates for case 3 and 4.
+
+2006-05-01  DJ Delorie  <dj@redhat.com>
+
+       * vec.c: Include bconfig.h when appropriate.
+       * Makefile.in (build/vec.o): Adjust dependencies.
+       * mkconfig.sh: Make sure config.h isn't used for build machine
+       compiles.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree-into-ssa.c (phis_to_rewrite, blocks_with_phis_to_rewrite): New
+       variables.
+       (mark_phi_for_rewrite): New function.
+       (insert_phi_nodes_for, mark_use_interesting): Call
+       mark_phi_for_rewrite.
+       (rewrite_update_phi_arguments): Traverse only phis in phis_to_rewrite.
+       (update_ssa): Initialize and free phis_to_rewrite.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/27291
+       * loop-doloop.c (add_test, doloop_modify): Handle the case condition is
+       folded to a constant.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/27283
+       * tree-ssa-loop-ivopts.c (struct nfe_cache_elt): Store just trees,
+       not whole # of iteration descriptions.
+       (niter_for_exit): Return just # of iterations.  Fail if # of iterations
+       uses abnormal ssa name.
+       (niter_for_single_dom_exit): Ditto.
+       (find_induction_variables, may_eliminate_iv): Expect niter_for_exit to
+       return just the number of iterations.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/27144
+       * tree-ssa-loop-niter.c (derive_constant_upper_bound): New function.
+       (record_estimate): Only record constant upper bound.
+       (infer_loop_bounds_from_undefined): Call
+       compute_estimated_nb_iterations just once.
+       (proved_non_wrapping_p): Renamed to ...
+       (n_of_executions_at_most): ... this.  Expect bound to be a constant.
+       (convert_step_widening, scev_probably_wraps_p): Call
+       n_of_executions_at_most instead of proved_non_wrapping_p.
+       (substitute_in_loop_info): Do not replace values in bounds.
+       * cfgloop.h (struct nb_iter_bound): Remove "additional" field.  Update
+       comments.
+
+2006-05-01  Richard Henderson  <rth@redhat.com>
+
+       PR c/27358
+       * c-parser.c (c_parser_skip_to_end_of_block_or_statement): Move after
+       c_parser_skip_to_pragma_eol.  Convert to switch statement.  Handle
+       CPP_PRAGMA.
+
+2006-05-01  Roger Sayle  <roger@eyesopen.com>
+
+       * c-typeck.c (parser_build_binary_op): Don't call the function
+       unsigned_conversion_warning to spot operand/result type overflow.
+       (build_binary_op): Instead, call convert_and_check instead of
+       convert to report the problem when the operands are promoted.
+       * c-common.c (unsigned_conversion_warning): Make static.
+       * c-common.h (unsigned_conversion_warning): Delete prototype.
+
+2006-05-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/26726
+       * tree-ssa-loop-ivopts.c (idx_find_step): Mark source of the
+       problem ...
+       (find_interesting_uses_address): ... we work around here
+       by folding INDIRECT_REFs in the substituted base.
+
+2006-05-01  Diego Novillo  <dnovillo@redhat.com>
+
+       * omp-low.c (dump_omp_region): Add newlines.
+
 2006-04-30  Roger Sayle  <roger@eyesopen.com>
 
        * common.opt (Woverflow): New command line option.