OSDN Git Service

/c-family
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 52e6f10..cf18334 100644 (file)
@@ -1,3 +1,96 @@
+2011-05-15  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (floating point move splitters): Fix
+       usage of standard_80387_constant_p.
+       (ix86_preferred_reload_class): Ditto.
+
+2011-05-15  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (*movdf_internal): Simplify insn condition.
+
+2011-05-14  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree-ssa-loop-im.c (SET_ALWAYS_EXECUTED_IN): New macro.
+       (fill_always_executed_in): Use [SET_]ALWAYS_EXECUTED_IN.
+       (tree_ssa_lim_finalize): Likewise.
+
+2011-05-14  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/constraint.md (Yd, Yx): New register constraints.
+       * config/i386/i386.md (*pushdf): Merge with *pushdf_nointeger.  Use
+       Yd conditional register constraint.
+       (*movtf_internal): Use standard_sse_constant_opcode.
+       (*movxf_internal): Merge with *movxf_internal_nointeger.  Use
+       Yx conditional register constraint.
+       (*movdf_internal): Merge with *movdf_internal_nointeger.  Use
+       Yd conditional register constraint.  Use standard_sse_constant_p to
+       check for valid SSE constants and call standard_sse_constant_opcode to
+       output SSE insn.
+       (*movsf_internal): Use standard_sse_constant_p to check for valid SSE
+       constants and call standard_sse_constant_opcode to output SSE insn.
+       * config/i386/i386.c (ix86_option_ovverride_internal): Set
+       TARGET_INTEGER_DFMODE_MOVES for 64bit targets.  Clear it when
+       optimize_size is set.
+       (standard_sse_constant_opcode): Output conditional AVX insn templates.
+
+2011-05-14  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/constraint.md (Yd, Yx): New register constraints.
+       * config/i386/i386.md (*pushdf): Merge with *pushdf_nointeger.  Use
+       Yd conditional register constraint.
+       (*movtf_internal): Use standard_sse_constant_opcode.
+       (*movxf_internal): Merge with *movxf_internal_nointeger.  Use
+       Yx conditional register constraint.
+       (*movdf_internal): Merge with *movdf_internal_nointeger.  Use
+       Yd conditional register constraint.  Use standard_sse_constant_p to
+       check for valid SSE constants and call standard_sse_constant_opcode to
+       output SSE insn.
+       (*movsf_internal): Use standard_sse_constant_p to check for valid SSE
+       constants and call standard_sse_constant_opcode to output SSE insn.
+       * config/i386/i386.c (ix86_option_ovverride_internal): Set
+       TARGET_INTEGER_DFMODE_MOVES for 64bit targets.  Clear it when
+       optimize_size is set.
+       (standard_sse_constant_opcode): Output conditional AVX insn templates.
+
+2011-05-14  Tobias Burnus  <burnus@net-b.de>
+
+       * doc/invoke.texi (-Ofast): Also enables -fstack-arrays.
+
+2011-05-13  Martin Jambor  <mjambor@suse.cz>
+
+       * ipa-prop.c (ipa_cst_from_jfunc): New function.
+       * ipa-prop.h (ipa_cst_from_jfunc): Declare.
+       * ipa-inline-analysis.c (evaluate_conditions_for_edge): Use it.
+       (evaluate_conditions_for_ipcp_clone): Removed.
+       (estimate_ipcp_clone_size_and_time): Accept vector of known constants.
+       * ipa-cp.c (ipcp_estimate_growth): Build vector of known constants.
+       * ipa-inline.h (estimate_ipcp_clone_size_and_time): Update.
+
+2011-05-13  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Adjust dump message.
+       * regcprop.c (copyprop_hardreg_forward): Test MAY_HAVE_DEBUG_INSNS in
+       lieu of MAY_HAVE_DEBUG_STMTS.
+       * tree-cfgcleanup.c (remove_forwarder_block): Do not attempt to move
+       debug statements if !MAY_HAVE_DEBUG_STMTS.
+
+2011-05-13  Martin Thuresson  <martint@google.com>
+
+       PR gcov-profile/47793
+       * libgcov.c (gcov_exit): Support relative profile paths.
+       * doc/invoke.texi (-fprofile-dir): Update for above change.
+
+2011-05-13  Richard Guenther  <rguenther@suse.de>
+
+       * gimple.c (gimple_canonical_types_compatible_p): Do not use
+       type-pair caching, do not compare hashes.
+
+2011-05-13  Nathan Froyd  <froydnj@codesourcery.com>
+
+       PR middle-end/48965
+       * tree-cfg.c (edge_to_cases_cleanup): Return true.
+       (verify_expr) [CASE_LABEL_EXPR]: Add checking.
+
 2011-05-13  Kai Tietz  <ktietz@redhat.com>
 
        * gimplify.c (gimplify_expr): Make sure operand is boolified.
@@ -6,8 +99,7 @@
 
 2011-05-13  H.J. Lu  <hongjiu.lu@intel.com>
 
-       * config/i386/i386.c (ix86_save_reg): Change return type to
-       bool.
+       * config/i386/i386.c (ix86_save_reg): Change return type to bool.
        (ix86_hard_regno_mode_ok): Change return value to bool.  Use
        can_create_pseudo_p ().
 
 2011-05-11  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/i386/i386.c (legitimize_tls_address)
-       <TLS_MODEL_GLOBAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
+       <case TLS_MODEL_GLOBAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
        expanders directly for TARGET_GNU2_TLS.  Determine pic and
        __tls_get_addr symbol reference here.  Update call to
        gen_tls_global_dynamic_{32,64} for added arguments.
-       <TLS_MODEL_LOCAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
+       <case TLS_MODEL_LOCAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
        expanders directly for TARGET_GNU2_TLS.  Determine
        __tls_get_addr symbol reference here.  Update call to
        gen_tls_local_dynamic_base_{32,64} for added arguments.  Attach
        * config/bfin/uclinux.h (LINK_GCC_C_SEQUENCE_SPEC): Make sure
        libbffastfp overrides libgcc when -mfast-fp.
 
-2011-05-03  Stuart Henderson <shenders@gcc.gnu.org>
+2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>
 
        Originally from Bernd Schmidt
        * config/bfin/uclinux.h (SUBTARGET_FDPIC_NOT_SUPPORTED): New macro.
 
 2011-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
 
-       * c-family/c-common.c (struct c_common_resword): Add __underlying_type.
-       * c-family/c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
        * doc/extend.texi: Document __underlying_type.
 
 2011-04-25  Segher Boessenkool  <segher@kernel.crashing.org>
        * haifa-sched.c (prune_ready_list, schedule_block): Use
        sched_pressure_p rather than flag_sched_pressure.
 
-2011-04-15  Pat Haugen <pthaugen@us.ibm.com>
+2011-04-15  Pat Haugen  <pthaugen@us.ibm.com>
 
        * config/rs6000/rs6000.c (call_ABI_of_interest): Call
        cgraph_get_node instead of cgraph_get_create_node.
 
 2011-04-14  Anatoly Sokolov  <aesok@post.ru>
            Eric Weddington  <eric.weddington@atmel.com>
-           Georg-Johann Lay <avr@gjlay.de>
+           Georg-Johann Lay  <avr@gjlay.de>
 
        * config/avr/avr.c ("insn-codes.h", "optabs.h", "langhooks.h"):
        New Includes
        (TREE_CHAIN): Check for a TS_COMMON structure.
        (TREE_TYPE): Check for a TS_TYPED structure.
 
-2011-04-12  Pat Haugen <pthaugen@us.ibm.com>
+2011-04-12  Pat Haugen  <pthaugen@us.ibm.com>
 
        * config/rs6000/rs6000.c (call_ABI_of_interest): Call
        cgraph_get_create_node instead of cgraph_node.
        * config/i386/cygming.opt: Make sure trailing empty line is retained.
        * config/i386/mingw-w64.opt: Likewise.
 
-2011-04-01  Gary Funck <gary@intrepid.com>
+2011-04-01  Gary Funck  <gary@intrepid.com>
 
        * c-decl.c (grokdeclarator): Fix formatting.