OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 14acc11..e7d95c7 100644 (file)
@@ -1,3 +1,374 @@
+2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR middle-end/39315
+       * cfgexpand.c (expand_one_stack_var_at): Change alignment
+       limit to MAX_SUPPORTED_STACK_ALIGNMENT.
+
+2009-03-27  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/39120
+       * tree-ssa-structalias.c (handle_rhs_call): Fill out return
+       constraints.
+       (handle_lhs_call): Process return constraints.  Add escape
+       constraints if necessary.
+       (handle_const_call): Fill out return constraints.  Make nested
+       case more precise.  Avoid consttmp if possible.
+       (handle_pure_call): Fill out return constraints.  Avoid
+       callused if possible.
+       (find_func_aliases): Simplify call handling.
+
+2009-03-27  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/39120
+       * tree-ssa-structalias.c (do_sd_constraint): Do not use CALLUSED
+       as a representative.
+       (solve_graph): Do propagate CALLUSED.
+       (handle_pure_call): Use a scalar constraint from CALLUSED for
+       the return value.
+       (find_what_p_points_to): CALLUSED shall not appear in poins-to
+       solutions.
+
+2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR c/39323
+       * c-common.c (handle_aligned_attribute): Properly check alignment
+       overflow.  Use (1U << i) instead of (1 << i).
+
+       * emit-rtl.c (get_mem_align_offset): Use "unsigned int" for
+       align.
+
+       * expr.h (get_mem_align_offset): Updated.
+
+       * tree.h (tree_decl_common): Change align to "unsigned int" and
+       move it before pointer_alias_set.
+
+2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/38034
+       * config/ia64/sync.md (cmpxchg_rel_<mode>): Replace input
+       gr_register_operand with gr_reg_or_0_operand.
+       (cmpxchg_rel_di): Likewise.
+       (sync_lock_test_and_set<mode>): Likewise.
+
+2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * jump.c (rtx_renumbered_equal_p): Use subreg_get_info.
+       (true_regnum): Likewise.
+
+       * rtlanal.c (subreg_info): Moved to ...
+       * rtl.h (subreg_info): Here.  New.
+       (subreg_get_info): New.
+
+       * rtlanal.c (subreg_get_info): Make it extern.
+
+2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/39472
+       * config/i386/i386.c (ix86_abi): New.
+       (override_options): Handle -mabi=.
+       (ix86_function_arg_regno_p): Replace DEFAULT_ABI with
+       ix86_abi.
+       (ix86_call_abi_override): Likewise.
+       (init_cumulative_args): Likewise.
+       (function_arg_advance): Likewise.
+       (function_arg_64): Likewise.
+       (function_arg): Likewise.
+       (ix86_pass_by_reference): Likewise.
+       (ix86_function_value_regno_p): Likewise.
+       (ix86_build_builtin_va_list_abi): Likewise.
+       (setup_incoming_varargs_64): Likewise.
+       (is_va_list_char_pointer): Likewise.
+       (ix86_init_machine_status): Likewise.
+       (ix86_reg_parm_stack_space): Use enum calling_abi on
+       call_abi.
+       (ix86_function_type_abi): Return enum calling_abi.  Rewrite
+       for 64bit.  Replace DEFAULT_ABI with ix86_abi.
+       (ix86_function_abi): Make it static and return enum
+       calling_abi.
+       (ix86_cfun_abi): Return enum calling_abi.  Replace DEFAULT_ABI
+       with ix86_abi.
+       (ix86_fn_abi_va_list): Updated.
+
+       * config/i386/i386.h (ix86_abi): New.
+       (STACK_BOUNDARY): Replace DEFAULT_ABI with ix86_abi.
+       (CONDITIONAL_REGISTER_USAGE): Likewise.
+       (CUMULATIVE_ARGS): Change call_abi type to enum calling_abi.
+       (machine_function): Likewise.
+
+       * config/i386/i386.md (untyped_call): Replace DEFAULT_ABI
+       with ix86_abi.
+       * config/i386/cygming.h (TARGET_64BIT_MS_ABI): Likewise.
+       (STACK_BOUNDARY): Likewise.
+       * config/i386/mingw32.h (EXTRA_OS_CPP_BUILTINS): Likewise.
+
+       * config/i386/i386.opt (mabi=): New.
+
+       * config/i386/i386-protos.h (ix86_cfun_abi): Changed to
+       return enum calling_abi.
+       (ix86_function_type_abi): Likewise.
+       (ix86_function_abi): Removed.
+
+       * doc/invoke.texi: Document -mabi= option for x86.
+
+2009-03-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.c (real_dconstp): Delete.
+       (fold_builtin_logarithm): Remove inaccurate log(e) special case.
+
+2009-03-27  Dodji Seketeli  <dodji@redhat.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/37959
+       * dwarf2out.c (dwarf_attr_name): Handle DW_AT_explicit attribute.
+       (gen_subprogram_die): When a function is explicit, generate the
+       DW_AT_explicit attribute.
+       * langhooks.h (struct lang_hooks_for_decls): Add
+       function_decl_explicit_p langhook.
+       * langhooks-def.h (LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P): Define.
+       (LANG_HOOKS_DECLS): Add LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P.
+
+2009-03-27  Jakub Jelinek  <jakub@redhat.com>
+
+       * builtins.c (fold_builtin_memory_op): Optimize memmove
+       into memcpy if we can prove source and destination don't overlap.
+
+       * tree-inline.c: Include gt-tree-inline.h.
+       (clone_fn_id_num): New variable.
+       (clone_function_name): New function.
+       (tree_function_versioning): Use it.
+       * Makefile.in (GTFILES): Add tree-inline.c.
+
+2009-03-27  Mark Mitchell  <mark@codesourcery.com>
+
+       * BASE-VER: Change to 4.5.0.
+
+2009-03-27  Xinliang David Li  <davidxl@google.com>
+
+       PR tree-optimization/39557
+       * tree-ssa.c (warn_uninitialized_vars): free postdom info.
+
+2009-03-27  Xinliang David Li  <davidxl@google.com>
+
+       PR tree-optimization/39548
+       * tree-ssa-copy.c (copy_prop_visit_phi_node): Add copy 
+       candidate check.
+
+2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * c-common.c (pointer_int_sum): Use %wd on return from
+       tree_low_cst.
+
+2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * c-common.c (pointer_int_sum): Use HOST_WIDE_INT_PRINT_DEC
+       on return from tree_low_cst.
+
+2009-03-27  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       PR c++/36799
+       * ginclude/stdarg.h (va_copy): Define also for __GXX_EXPERIMENTAL_CXX0X__.
+
+2009-03-27  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c++/35652
+       * builtins.h (c_strlen): Do not warn here.
+       * c-typeck.c (build_binary_op): Adjust calls to pointer_int_sum.
+       * c-common.c (pointer_int_sum): Take an explicit location.
+       Warn about offsets out of bounds.
+       * c-common.h (pointer_int_sum): Adjust declaration.
+
+2009-03-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * doc/invoke.texi (i386 and x86-64 Windows Options): Fix texinfo
+       markup glitch.
+
+2009-03-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/39554
+       * opts.c (warn_if_disallowed_function_p): Don't assume
+       get_callee_fndecl must return non-NULL.
+
+2009-03-26  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR rtl-optimization/39522
+       * reload1.c (reload_as_needed): Invalidate reg_last_reload_reg too
+       when reg_reloaded_valid is set.
+
+2009-03-26  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
+
+       * config/spu/divv2df3.c: New file.
+       * config/spu/t-spu-elf (LIB2FUNCS_STATIC_EXTRA): Add it.
+       (DPBIT_FUNCS): Filter out _div_df.
+
+2009-03-26  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/bfin.c (bfin_optimize_loop): If the LSETUP goes before
+       a jump insn, count that jump in the distance to the loop start.
+
+2009-03-25  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR target/39523
+       * config/sh/sh.c (calc_live_regs): Fix condition for global
+       registers except PIC_OFFSET_TABLE_REGNUM.
+
+2009-03-25  Kai Tietz  <kai.tietz@onevision.com>
+
+       PR/39518
+       * doc/invoke.texi (-mconsole): New.
+       (-mcygwin): New.
+       (-mno-cygwin): New.
+       (-mdll): New.
+       (-mnop-fun-dllimport): New.
+       (-mthread): New.
+       (-mwin32): New.
+       (-mwindows): New.
+       (sub section "i386 and x86-64 Windows Options"): New.
+
+2009-03-25  Ralf Corsépius <ralf.corsepius@rtems.org>
+
+       * config/arm/rtems-elf.h: Remove LINK_GCC_C_SEQUENCE_SPEC.
+       * config/rs6000/t-rtems: Remove MULTILIB_EXTRA_OPTS.
+
+2009-03-25  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/39497
+       * Makefile.in (dfp.o-warn): Use -fno-strict-aliasing instead
+       of -Wno-error.
+
+2009-03-25  Andrey Belevantsev  <abel@ispras.ru>
+
+       * config/ia64/ia64.c (ia64_set_sched_flags): Zero spec_info->mask when
+       neither of haifa/selective schedulers are working.
+
+2009-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * doc/invoke.texi (Debugging Options): Fix description of
+       -fno-merge-debug-strings.
+
+2009-03-24  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/libgcc.ver: New version-script.
+       * config/cris/t-linux (SHLIB_MAPFILES): Use it.
+
+       * configure.ac <GAS features, nop mnemonic>: Add pattern
+       crisv32-*-* for "nop".
+       <GAS features, Thread-local storage>: Add item for CRIS and
+       CRIS v32.
+       * configure: Regenerate.
+
+2009-03-24  Ira Rosen  <irar@il.ibm.com>
+
+       PR tree-optimization/39529
+       * tree-vect-transform.c (vect_create_data_ref_ptr): Call
+       mark_sym_for_renaming for the tag copied to the new vector
+       pointer.
+
+2009-03-24  Arthur Loiret  <aloiret@debian.org>
+
+       * config.host (alpha*-*-linux*): Use driver-alpha.o and
+       alpha/x-alpha.
+       * config/alpha/linux.h (host_detect_local_cpu): Declare, add to
+       EXTRA_SPEC_FUNCTIONS.
+       (MCPU_MTUNE_NATIVE_SPECS, DRIVER_SELF_SPECS): New macros.
+       * config/alpha/driver-alpha.c, config/alpha/x-alpha: New.
+       * doc/invoke.texi (DEC Alpha Options): Document 'native' value for
+       -march and -mtune options.
+
+2009-03-24  Ralf Corsépius <ralf.corsepius@rtems.org>
+
+       * config/m68k/t-rtems: Add m5329 multilib.
+
+2009-03-24  Dodji Seketeli  <dodji@redhat.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/39524
+       * dwarf2out.c (gen_variable_die): Avoid adding duplicate declaration
+       nodes.
+
+2009-03-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/39495
+       * c-parser.c (c_parser_omp_for_loop): Call c_parser_binary_expression
+       instead of c_parser_expression_conv, if original_code isn't one of the
+       4 allowed comparison codes, fail.
+
+2009-03-23  Richard Guenther  <rguenther@suse.de>
+
+       * cgraph.h (struct cgraph_node): Reorder fields for 64-bit hosts.
+       * tree.h (struct tree_type): Likewise.
+       * reload.h (struct insn_chain): Likewise.
+       * dwarf2out.c (struct dw_loc_descr_struct): Likewise.
+       * function.h (struct function): Likewise.
+       * tree-ssa-structalias.c (struct equiv_class_label): Likewise.
+
+2009-03-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/39516
+       * lambda-code.c (perfect_nestify): Fix type of the uboundvar variable.
+
+2009-03-23 Bingfeng Mei  <bmei@broadcom.com>
+
+       * config.gcc (need_64bit_hwint): Make clear that need_64bit_hwint 
+       should be set true if BITS_PER_WORD of target is bigger than 32
+
+2009-03-22  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC):
+       Translate -B-options to -rpath-link.  Correct existing
+       rpath-link and conditionalize on !nostdlib.
+
+2009-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * doc/extend.texi (Function Attributes, Variable Attributes):
+       Fix typos.
+       * doc/invoke.texi (Debugging Options, Optimize Options)
+       (i386 and x86-64 Options, MCore Options): Likewise.
+
+2009-03-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/37890
+       * dwarf2out.c (gen_namespace_die): Add context_die argument and use
+       it for block local namespace aliases.
+       (gen_decl_die): Pass context_die to gen_namespace_die.
+
+2009-03-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/39495
+       * c-omp.c (c_finish_omp_for): Allow NE_EXPR with TREE_TYPE (decl)'s
+       minimum or maximum value.
+
+2009-03-19  Alexandre Oliva  <aoliva@redhat.com>
+
+       * reginfo.c (globalize_reg): Recompute derived reg sets.
+
+2009-03-19  Ozkan Sezer <sezeroz@gmail.com>
+
+       PR target/39063
+       * libgcc2.c (mprotect): Do not use signed arguments for
+       VirtualProtect, use DWORD arguments.  Also fix the 'may
+       be used uninitialized' warning for the np variable.
+
+2009-03-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/39496
+       * config/i386/i386.c (ix86_function_regparm): Don't optimize local
+       functions using regparm calling conventions when not optimizing.
+       (ix86_function_sseregparm): Similarly for sseregparm calling
+       conventions.
+
+2009-03-19  Li Feng  <nemokingdom@gmail.com>
+
+       PR middle-end/39500
+       * tree-data-ref.c (analyze_subscript_affine_affine): There is no
+       dependence if the first conflict is after niter iterations.
+
+2009-03-19  Hans-Peter Nilsson  <hp@axis.com>
+
+       PR middle-end/38609
+       * config/cris/cris.h (FRAME_POINTER_REQUIRED): Force for all
+       functions with dynamic stack-pointer adjustments.
+
 2009-03-19  Ben Elliston  <bje@au.ibm.com>
 
        * doc/invoke.texi (RS/6000 and PowerPC Options): Fix -msdata-data
 2009-03-07  Jan Hubicka  <jh@suse.cz>
 
        PR target/39361
-       * tree-inline.c (setup_one_parameter): Do replacement of const argument
-       by constant in SSA form.
+       * tree-inline.c (setup_one_parameter): Do replacement of const
+       argument by constant in SSA form.
 
 2009-03-07  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>