+2008-05-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ * final.c (frame_pointer_needed): Removed.
+ * flags.h (frame_pointer_needed): Likewise.
+
+ * function.h (rtl_data): Add frame_pointer_needed.
+ (frame_pointer_needed): New.
+
+2008-05-25 Arthur Loiret <arthur.loiret@u-psud.fr>
+
+ * config.gcc (sh2[lbe]*-*-linux*): Allow target.
+
+2008-05-25 Steven Bosscher <stevenb.gcc@gmail.com>
+
+ * gcse.c (hash_scan_set): Do not pick up a REG_EQUAL value if
+ SRC is a REG.
+
+2008-05-25 Alan Modra <amodra@bigpond.net.au>
+
+ * c-common.c (strip_array_types): Move function to..
+ * tree.c: ..here.
+ (get_inner_array_type): Delete.
+ * c-common.h (strip_array_types): Move declaration to..
+ * tree.h: ..here.
+ (get_inner_array_type): Delete.
+ * config/i386/i386.c (x86_field_alignment): Use strip_array_types.
+ * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Likewise.
+ * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Likewise.
+ * config/pa/pa.c (emit_move_sequence): Likewise.
+
+2008-05-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.md (*sse_prologue_save_insn): Set length
+ attribute to 34.
+
+2008-05-24 Andy Hutchinson <hutchinsonandy@aim.com>
+
+ * function.c: Include target hook for nonlocal_goto frame value.
+
+2008-05-24 Richard Guenther <rguenther@suse.de>
+
+ * tree-dfa.c (refs_may_alias_p): Re-instantiate case that
+ a scalar variable can be only accessed through a pointer
+ or a union.
+
+2008-05-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin_fpclassify): Fix spelling of FP_INFINITE.
+ * doc/extend.texi: Likewise.
+
+2008-05-23 DJ Delorie <dj@redhat.com>
+
+ * config/m32c/jump.md (untyped_call): Add.
+
+ * config/m32c/m32c.c (m32c_return_addr_rtx): Change pointer type
+ for A24 to PSImode.
+ (m32c_address_cost): Detail costs for indirect offsets.
+
+2008-05-23 Rafael Espindola <espindola@google.com>
+
+ * see.c (see_get_extension_data): Don't use SUBREG_REG to test
+ if a node is a SUBREG.
+ (see_analyze_one_def): Don't use SUBREG_REG to test if a node
+ is a SUBREG.
+
+2008-05-23 Paul Brook <paul@codesourcery.com>
+ Carlos O'Donell <carlos@codesourcery.com>
+
+ * doc/extend.texi: Clarify use of __attribute__((naked)).
+ * doc/tm.texi: Document TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS.
+ * target.h (gcc_target): Add allocate_stack_slots_for_args.
+ * function.c (use_register_for_decl): Use
+ targetm.calls.allocate_stack_slots_for_args.
+ * target-def.h (TARGET_CALLS): Add
+ TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS.
+ * config/arm/arm.c (arm_allocate_stack_slots_for_args):
+ New function.
+ (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Define.
+
+2008-05-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ * expr.c (highest_pow2_factor) <BIT_AND_EXPR>: New case.
+
+2008-05-23 Steven Munroe <sjmunroe@us.ibm.com>
+
+ * config/rs6000/darwin-ldouble.c (fmsub): Eliminate the full
+ PACK/UNPACK between FP_SUB_Q and FD_TRUNC so that the result
+ is only rounded once.
+
+2008-05-23 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-operands.c (mark_difference_for_renaming): Use
+ bitmap_xor.
+
+2008-05-23 Uros Bizjak <ubizjak@gmail.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ PR target/36079
+ * configure.ac: Handle --enable-cld.
+ * configure: Regenerated.
+ * config.gcc: Add USE_IX86_CLD to tm_defines for x86 targets.
+ * config/i386/i386.h (struct machine_function): Add needs_cld field.
+ (ix86_current_function_needs_cld): New define.
+ * config/i386/i386.md (UNSPEC_CLD): New unspec volatile constant.
+ (cld): New isns pattern.
+ (strmov_singleop, rep_mov, strset_singleop, rep_stos, cmpstrnqi_nz_1,
+ cmpstrnqi_1, strlenqi_1): Set ix86_current_function_needs_cld flag.
+ * config/i386/i386.opt (mcld): New option.
+ * config/i386/i386.c (ix86_expand_prologue): Emit cld insn if
+ TARGET_CLD and ix86_current_function_needs_cld.
+ (override_options): Use -mcld by default for 32-bit code if
+ USE_IX86_CLD.
+
+ * doc/install.texi (Options specification): Document --enable-cld.
+ * doc/invoke.texi (Machine Dependent Options)
+ [i386 and x86-64 Options]: Add -mcld option.
+ (Intel 386 and AMD x86-64 Options): Document -mcld option.
+
+2008-05-23 Kai Tietz <kai.tietz@onevison.com>
+ * config/i386/i386.c (return_in_memory_32): Add ATTRIBUTE_UNUSED.
+ (return_in_memory_64): Likewise.
+ (return_in_memory_ms_64): Likewise.
+
+2008-05-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-types.def (BT_FN_INT_INT_INT_INT_INT_INT_VAR): New.
+ * builtins.c (fold_builtin_fpclassify): New.
+ (fold_builtin_varargs): Handle BUILT_IN_FPCLASSIFY.
+ * builtins.def (BUILT_IN_FPCLASSIFY): New.
+ * c-common.c (handle_type_generic_attribute): Adjust to accept
+ fixed arguments before an elipsis.
+ (check_builtin_function_arguments): Handle BUILT_IN_FPCLASSIFY.
+ * doc/extend.texi: Document __builtin_fpclassify.
+
+2008-05-22 Aldy Hernandez <aldyh@redhat.com>
+
+ * omp-low.c (gate_expand_omp_ssa): Remove.
+ (pass_expand_omp_ssa): Remove.
+ (gate_expand_omp): Do not check for flag_openmp_ssa.
+ * common.opt (-fopenmp-ssa): Remove.
+ * passes.c (init_optimization_passes): Remove pass_expand_omp_ssa.
+
+2008-05-22 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.opt (mfixed-range): New option.
+ * config/sh/sh-protos.h (sh_fix_range): Declare.
+ * config/sh/sh.c (sh_fix_range): New function.
+ * config/sh/sh.h (sh_fixed_range_str): Declare.
+ (OVERRIDE_OPTIONS): Call sh_fix_range if sh_fixed_range_str
+ is not empty.
+ * doc/invoke.texi (SH Options): Document -mfixed-range.
+
+2008-05-22 Kai Tietz <kai.tietz@onevision.com>
+
+ * config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Undefine
+ it before the redeclaration.
+
+2008-05-22 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.c (get_sequence_length): Add new function.
+ (expand_prologue, expand_epilogue): Remove duplicate code.
+
+2008-05-22 Rafael Espindola <espindola@google.com>
+
+ * see.c (see_pre_insert_extensions): Use copy_rtx to avoid invalid rtx
+ sharing.
+
+2008-05-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ * defaults.h (UNITS_PER_SIMD_WORD): Add scalar mode as argument.
+ * doc/tm.texi (UNITS_PER_SIMD_WORD): Likewise.
+
+ * tree-vect-analyze.c (vect_compute_data_ref_alignment): Replace
+ UNITS_PER_SIMD_WORD with GET_MODE_SIZE (TYPE_MODE (vectype)).
+ (vect_update_misalignment_for_peel): Likewise.
+ (vector_alignment_reachable_p): Likewise.
+ * tree-vect-transform.c (vectorizable_load): Likewise.
+ * tree-vectorizer.c (vect_supportable_dr_alignment): Likewise.
+ (get_vectype_for_scalar_type): Pass mode of scalar_type
+ to UNITS_PER_SIMD_WORD.
+
+ * config/arm/arm.h (UNITS_PER_SIMD_WORD): Updated.
+ * config/i386/i386.h (UNITS_PER_SIMD_WORD): Likewise.
+ * config/mips/mips.h (UNITS_PER_SIMD_WORD): Likewise.
+ * config/rs6000/rs6000.h (UNITS_PER_SIMD_WORD): Likewise.
+ * config/sparc/sparc.h (UNITS_PER_SIMD_WORD): Likewise.
+
+2008-05-22 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/36293
+ * tree-vect-transform.c (vect_transform_strided_load): Don't check
+ if the first load must be skipped because of a gap.
+
+2008-05-22 Richard Guenther <rguenther@suse.de>
+
+ * tree-dfa.c (refs_may_alias_p): Exit early if possible. Handle
+ more cases of offset disambiguation that is possible if
+ strict-aliasing rules apply.
+ * tree-ssa-loop-im.c (mem_refs_may_alias_p): Use refs_may_alias_p
+ for basic offset and type-based disambiguation.
+
+2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.c (ix86_expand_vector_init_one_var): Use
+ ix86_expand_vector_set on V16QImode for SSE4.1.
+
+2008-05-21 Tom Tromey <tromey@redhat.com>
+
+ * c.opt (Wimport): Mark as undocumented.
+ * doc/invoke.texi (Option Summary): Don't mention -Wimport or
+ -Wno-import.
+ (Warning Options): Likewise.
+ * doc/cppopts.texi: Don't mention -Wimport.
+
2008-05-21 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/36287
2008-05-20 David Daney <ddaney@avtrex.com>
* config/mips/mips.md (UNSPEC_SYNC_NEW_OP_12,
- UNSPEC_SYNC_OLD_OP_12,
- UNSPEC_SYNC_EXCHANGE_12): New define_constants.
- (UNSPEC_SYNC_EXCHANGE, UNSPEC_MEMORY_BARRIER,
- UNSPEC_SET_GOT_VERSION,
+ UNSPEC_SYNC_OLD_OP_12, UNSPEC_SYNC_EXCHANGE_12): New define_constants.
+ (UNSPEC_SYNC_EXCHANGE, UNSPEC_MEMORY_BARRIER, UNSPEC_SET_GOT_VERSION,
UNSPEC_UPDATE_GOT_VERSION): Renumber.
(optab, insn): Add 'plus' and 'minus' to define_code_attr.
(atomic_hiqi_op): New define_code_iterator.
- (sync_compare_and_swap<mode>): Call
- mips_expand_atomic_qihi instead of
+ (sync_compare_and_swap<mode>): Call mips_expand_atomic_qihi instead of
mips_expand_compare_and_swap_12.
(compare_and_swap_12): Use MIPS_COMPARE_AND_SWAP_12 instead of
- MIPS_COMPARE_AND_SWAP_12_0. Pass argument to
- MIPS_COMPARE_AND_SWAP_12.
+ MIPS_COMPARE_AND_SWAP_12_0. Pass argument to MIPS_COMPARE_AND_SWAP_12.
(sync_<optab><mode>, sync_old_<optab><mode>,
sync_new_<optab><mode>, sync_nand<mode>, sync_old_nand<mode>,
- sync_new_nand<mode>): New define_expands for HI and QI mode
- operands.
+ sync_new_nand<mode>): New define_expands for HI and QI mode operands.
(sync_<optab>_12, sync_old_<optab>_12, sync_new_<optab>_12,
sync_nand_12, sync_old_nand_12, sync_new_nand_12): New insns.
- (sync_lock_test_and_set<mode>): New define_expand for HI and QI
- modes.
+ (sync_lock_test_and_set<mode>): New define_expand for HI and QI modes.
(test_and_set_12): New insn.
(sync_old_add<mode>, sync_new_add<mode>, sync_old_<optab><mode>,
sync_new_<optab><mode>, sync_old_nand<mode>,
2008-05-20 Jan Sjodin <jan.sjodin@amd.com>
Sebastian Pop <sebastian.pop@amd.com>
- * tree-loop-linear.c (gather_interchange_stats): Look in the access matrix,
- and never look at the tree representation of the memory accesses.
+ * tree-loop-linear.c (gather_interchange_stats): Look in the access
+ matrix, and never look at the tree representation of the memory
+ accesses.
(linear_transform_loops): Computes parameters and access matrices.
- * tree-data-ref.c (compute_data_dependences_for_loop): Returns false when fails.
+ * tree-data-ref.c (compute_data_dependences_for_loop): Returns false
+ when fails.
(access_matrix_get_index_for_parameter): New.
* tree-data-ref.h (struct access_matrix): New.
(AM_LOOP_NEST_NUM, AM_NB_INDUCTION_VARS, AM_PARAMETERS, AM_MATRIX,
PR tree-optimization/36206
* tree-chrec.h (chrec_fold_op): New.
- * tree-data-ref.c (initialize_matrix_A): Traverse NOP_EXPR, PLUS_EXPR, and
- other trees.
+ * tree-data-ref.c (initialize_matrix_A): Traverse NOP_EXPR, PLUS_EXPR,
+ and other trees.
2008-05-20 Nathan Sidwell <nathan@codesourcery.com>
* c-incpath.c (INO_T_EQ): Do not define on non-inode systems.
(DIRS_EQ): New.
- (remove_duplicates): Do not set inode on non-inode systems. Use
- DIRS_EQ.
+ (remove_duplicates): Do not set inode on non-inode systems.
+ Use DIRS_EQ.
2008-05-20 Sandra Loosemore <sandra@codesourcery.com>
2008-05-20 Richard Guenther <rguenther@suse.de>
- * tree-ssa-reassoc.c (fini_reassoc): Use the statistics
- infrastructure.
+ * tree-ssa-reassoc.c (fini_reassoc): Use the statistics infrastructure.
* tree-ssa-sccvn.c (process_scc): Likewise.
* tree-ssa-sink.c (execute_sink_code): Likewise.
* tree-ssa-threadupdate.c (thread_through_all_blocks): Likewise.