OSDN Git Service

* config/m32r/m32r.h (IRA_COVER_CLASSES): Define.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index d89d63e..e350c09 100644 (file)
@@ -1,3 +1,124 @@
+2008-08-28  Nick Clifton  <nickc@redhat.com>
+
+       * config/m32r/m32r.h (IRA_COVER_CLASSES): Define.
+
+2008-08-28  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm/vfp11.md: Update license notice.
+       * config/arm/cortex-r4.md: Ditto.
+
+2008-08-28  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/37207
+       * tree-ssa-ifcombine.c (recognize_single_bit_test): Fix
+       tuplification bug.
+
+2008-08-28  Dodji Seketeli  <dodji@redhat.com>
+
+       PR c++/36741
+       * tree.c (int_fits_type_p): Don't forget unsigned integers
+         of type sizetype which higher end word equals -1.
+
+2008-08-28  Ira Rosen  <irar@il.ibm.com>
+
+       * target.h (struct vectorize): Add new target builtin.
+       * tree-vectorizer.c (destroy_loop_vec_info): Call 
+       vect_free_slp_instance instead of vect_free_slp_node.
+       * tree-vectorizer.h (enum slp_load_perm_type): New.
+       (struct _slp_instance): Add new fields.
+       (SLP_INSTANCE_LOAD_PERMUTATION): New.
+       (SLP_INSTANCE_LOADS): New.
+       (vect_free_slp_tree): Remove.
+       (vect_free_slp_instance): Declare.        
+       (SLP_TREE_LOADS_PERM_TYPE, TARG_VEC_PERMUTE_COST): New.
+       (vectorizable_load): Add argument.
+       (vect_transform_slp_perm_load): New.
+       * tree-vect-analyze.c (vect_analyze_operations): Add an argument to 
+       vectorizable_load.
+       (vect_get_place_in_interleaving_chain): New function.
+       (vect_free_slp_tree): Make static.
+       (vect_free_slp_instance): New function.
+       (vect_build_slp_tree): Add new arguments. Allow load permutations and 
+       collect the load location in the interleaving chain.
+       (vect_supported_slp_permutation_p): New function.
+       (vect_supported_load_permutation_p): Likewise.
+       (vect_analyze_slp_instance): In case of loads permutation, call
+       vect_supported_load_permutation_p to check that the permutation is 
+       supported.
+       * target-def.h (TARGET_VECTORIZE_BUILTIN_VEC_PERM): New.
+       * tree-vect-transform.c (vect_transform_stmt): Add new argument.
+       (vect_create_mask_and_perm): New function.
+       (vect_get_mask_element, vect_transform_slp_perm_load): Likewise.
+       (vectorizable_load): Add an argument. Don't keep the created vectors  
+       statements in the node if permutation is required. Call 
+       vect_transform_slp_perm_load to generate the permutation.
+       (vect_transform_stmt): Add new argument. Call vectorizable_load with 
+       additional argument.
+       (vect_schedule_slp_instance): In case of loads permutation, allocate  
+       vectorized statements structure for all the related SLP nodes. Call 
+       vect_transform_stmt with addditional argument.
+       (vect_transform_loop): Call vect_transform_stmt with correct arguments. 
+       * config/spu/spu.c (spu_builtin_vec_perm): New. 
+       (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Redefine.
+       * config/spu/spu.h (TARG_VEC_PERMUTE_COS): Define.
+       * config/rs6000/rs6000.c (rs6000_builtin_vec_perm): New.
+       (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Redefine.
+
+2008-08-28  Chris Fairles  <chris.fairles@gmail.com>
+
+        * gthr-posix.h (__gthread_create,  __gthread_join, __gthread_detach,
+       __gthread_mutex_timed_lock, __gthread_recursive_mutex_timed_lock,
+       __gthread_cond_signal, __gthread_cond_timedwait,
+       __gthread_cond_timedwait_recursive): New functions.
+       * gthr-posix.c (pthread_mutex_timedlock, pthread_cond_timedwait):
+       Likewise.
+       * gthr.h: Comment on defining __GTHREADS_CXX0X macro in conforming
+       thread interfaces.
+
+2008-08-28  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/37005
+       * fold-const.c (maybe_canonicalize_comparison_1): Require
+       undefined overflow only for canonicalizing A +- CST cmp CST.
+       Make sure to not generate new constants that are not inside
+       their TYPE_MIN/MAX_VALUE range.
+       (maybe_canonicalize_comparison): Remove undefined overflow
+       checking from here.
+       (fold_binary): Remove now duplicate folding.
+
+2008-08-27  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * c-typeck.c (convert_for_assignment): Adjust WARN_FOR_ASSIGNMENT
+       use not updated in the last change.
+
+2008-08-27  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.h (REG_CLASS_CONTENTS): Drop fr32 from FPUL_REGS.
+       (IRA_COVER_CLASSES): Add FPUL_REGS.
+
+2008-08-27  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 37217
+       * c-common.c (conversion_warning): Check for null operands.
+
+2008-08-27  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c/31673
+       * c-decl.c (check_for_loop_decls): Improve error message. Give
+       hint.
+
+2008-08-27  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c/37186
+       * c-typeck.c (WARN_FOR_ASSIGNMENT): Add OPT parameter.
+       (convert_for_assignment): Pass corrent OPT_W* parameter to
+       WARN_FOR_ASSIGNMENT.
+
+2008-08-27  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/35321
+       * c-common.c (fold_offsetof_1): Handle TARGET_EXPR like CALL_EXPR.
+
 2008-08-27  Paul Brook  <paul@codesourcery.com>
 
        * config.gcc: Loosen checks for arm uclinux eabi targets.