X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2FChangeLog;h=1a5ab353a4f8924f221c4dc1a1b2248d8f3bbb6a;hp=af07c9306572bc12fffeb19e547f8eabd5a780c8;hb=9068ac4664bcf3b108485a27ffeaf33a0e8fe2be;hpb=03150a338ef2f77b0e6a8b3238e3f6f9fba15e4f diff --git a/gcc/ChangeLog b/gcc/ChangeLog index af07c930657..1a5ab353a4f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,178 @@ +2008-11-23 Helge Deller + + * pa/linux-atomic.c (EBUSY): Define if not _LP64. + (__kernel_cmpxchg): Return -EBUSY if the kernel LWS call + succeeded and lws_ret is not equal to oldval. + +2008-11-23 Kaz Kojima + + * config/sh/sh.md (consttable_4): Call mark_symbol_refs_as_used. + +2008-11-22 Andreas Schwab + + * varasm.c (default_file_start): Suppress ASM_APP_OFF also with + -dA and -dP. + +2008-11-22 Adam Nemet + + * config/mips/mips.md (rdhwr): Rename to rdhwr_synci_step_. + Use constant 1 as the operand. + * config/mips/mips.c (mips_expand_synci_loop): Make INC Pmode. + Rename gen_rdhwr to gen_rdhwr_synci_step_si or + gen_rdhwr_synci_step_di depending on the size of Pmode. + +2008-11-22 Uros Bizjak + + PR target/38222 + * config/i386/i386.md (SWI248): New mode iterator. + (SWI32): Remove mode iterator. + (popcount2): Rename from popcounthi2, popcountsi2 and + popcounthi2 insn patterns. Macroize pattern using SWI248 mode + iterator. Generate popcnt mnemonic without mode extensions + for Darwin x86 targets. + (*popcount2_cmp): Ditto. + (*popcountsi2_cmp_zext): Generate popcnt mnemonic without mode + extensions for Darwin x86 targets. + +2008-11-22 Eric Botcazou + + * config/sparc/sparc.c (TARGET_ASM_OUTPUT_DWARF_DTPREL): Define + only if HAVE_AS_SPARC_UA_PCREL is defined. + +2008-11-22 Richard Sandiford + + * ira-costs.c (find_allocno_class_costs): Work out the maximum + allocno_costs value of the classees with the lowest total_costs + value. Use this to set ALLOCNO_COVER_CLASS_COST here... + (setup_allocno_cover_class_and_costs): ...rather than here. + Use the ALLOCNO_COVER_CLASS_COST for all registers in the + preferred class. + +2008-11-22 Jakub Jelinek + + PR middle-end/37323 + * builtins.c (expand_builtin_apply_args): Emit sequence before + parm_birth_insn instead of after entry_of_function's first insn. + + PR middle-end/37316 + * function.c (assign_parm_remove_parallels): Pass + data->passed_type as third argument to emit_group_store. + + PR target/37170 + * final.c (mark_symbol_refs_as_used): New function. + * output.h (mark_symbol_refs_as_used): New prototype. + * config/s390/s390.c (s390_mark_symbol_ref_as_used): Removed. + (s390_output_pool_entry): Use mark_symbol_refs_as_used. + * config/arm/arm.md (consttable_4): Likewise. + + PR target/37880 + * doc/invoke.texi: Adjust wording of -mcmodel=medium description. + +2008-11-21 Jakub Jelinek + + PR middle-end/38200 + * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Only + propagate x = &a into *x = b if conversion from b to a's type is + useless. + +2008-11-21 Eric Botcazou + + * caller-save.c (insert_one_insn): Take into account REG_INC notes + for the liveness computation of the new insn. + +2008-11-21 DJ Delorie + + * config/stormy16/stormy16.md (movqi_internal, movhi_internal): + Moves to/from below100 space (W) can only use r0-r7. + +2008-11-21 Paolo Carlini + + PR other/38214 + * doc/invoke.texi (Optimization Options): Fix typo. + +2008-11-21 H.J. Lu + Xuepeng Guo + + * config.gcc (extra_headers): For x86 and x86-64, remove + gmmintrin.h, add immintrin.h and avxintrin.h. + + * config/i386/gmmintrin.h: Renamed to ... + * config/i386/avxintrin.h: This. Issue an error if + _IMMINTRIN_H_INCLUDED is undedined. + + * config/i386/immintrin.h: New. + +2008-11-21 Jakub Jelinek + + PR target/38208 + * reload1.c (eliminate_regs_in_insn): For trunc_int_for_mode use + mode of PLUS, not mode of the eliminated register. + +2008-11-21 Uros Bizjak + + * config/i386/mmx.md (mmx_nand3): Rename to mmx_andnot3. + * config/i386/sse.md (avx_nand3): Rename to avx_andnot3. + (_nand3): Rename to _andnot3. + (sse2_nand3): Rename to sse2_andnot3. + (*sse_nand3): Rename to *sse_andnot3. + (*avx_nand3): Rename to *avx_andnot3. + (*nand3): Rename to *andnot3. + (*nandtf3): rename to *andnottf3. + * config/i386/i386.c (bdesc_args) [IX86_BUILTIN_PANDN]: + Use CODE_FOR_mmx_andnotv2si3. + [IX86_BUILTIN_ANDNPS]: Use CODE_FOR_sse_andnotv4sf3. + [IX86_BUILTIN_ANDNPD]: Use CODE_FOR_sse2_andnotv2df3. + [IX86_BUILTIN_PANDN128]: Use CODE_FOR_sse2_andnotv2di3. + [IX86_BUILTIN_ANDNPS256]: Use CODE_FOR_avx_andnotv8sf3. + [IX86_BUILTIN_ANDNPD256]: Use CODE_FOR_avx_andnotv4df3. + +2008-11-21 Uros Bizjak + + PR middle-end/37908 + * config/ia64/ia64.c (ia64_expand_atomic_ope): Properly handle NAND + case by calculating ~(new_reg & val) instead of (~new_reg & val). + * config/ia64/sync.md (sync_nand): Change insn RTX + to (not:IMODE (and:IMODE (...))). + (sync_old_nand): Ditto. + (sync_new_nand): Ditto. + +2008-11-20 Joseph Myers + + * config/arm/thumb2.md (thumb2_casesi_internal, + thumb2_casesi_internal_pic): Use earlyclobber for scratch operand 4. + +2008-11-20 Andreas Krebbel + + * gcc/config/s390/s390.c (s390_expand_atomic): Adjust QI/HI atomic + nand to the changed 4.4 semantic. + +2008-11-20 Jakub Jelinek + + PR middle-end/29215 + * builtins.c (SLOW_UNALIGNED_ACCESS): Define if not defined. + (fold_builtin_memory_op): Handle even the case where just one + of src and dest is an address of a var decl component, using + TYPE_REF_CAN_ALIAS_ALL pointers. Remove is_gimple_min_invariant + and readonly_data_expr src check. + * tree-ssa-sccvn.c (DFS): Use clear_and_done_ssa_iter to shut + up warnings. + + PR rtl-optimization/36998 + * dwarf2out.c (stack_adjust_offset): Add cur_args_size and cur_offset + arguments. Handle sp = reg and (set (foo) (mem (pre_inc (reg sp)))). + (compute_barrier_args_size_1, dwarf2out_frame_debug_expr): Adjust + stack_adjust_offset callers. + (dwarf2out_stack_adjust): Likewise. Handle insns in annulled + branches properly. + (compute_barrier_args_size): Handle insns in annulled branches + properly. + +2008-11-20 Uros Bizjak + + PR target/38151 + * config/i386/i386.c (classify_argument) [integer mode size <= 64bit]: + Handle cases when integer argument crosses argument register boundary. + 2008-11-20 Rainer Orth PR bootstrap/33100 @@ -18,10 +193,10 @@ PR rtl-optimization/32283 * tree-ssa-loop-niter.c (scev_probably_wraps_p): Use type of the base of the induction variable to decide whether it may wrap. - * tree-ssa-loop-ivopts.c (rewrite_use_compare): Emit the initialization - of the bound before the loop. - * simplify-rtx.c (simplify_binary_operation_1): Add two simplifications - regarding AND. + * tree-ssa-loop-ivopts.c (rewrite_use_compare): Emit the + initialization of the bound before the loop. + * simplify-rtx.c (simplify_binary_operation_1): Add two + simplifications regarding AND. (simplify_plus_minus): Only fail if no simplification is possible. * loop-iv.c (simple_rhs_p): Consider reg + reg and reg << cst simple. @@ -64,8 +239,7 @@ PR bootstrap/37790 * ira-int.h (ira_copy_allocno_live_range_list, - ira_merge_allocno_live_ranges, - ira_allocno_live_ranges_intersect_p, + ira_merge_allocno_live_ranges, ira_allocno_live_ranges_intersect_p, ira_finish_allocno_live_range_list): New prototypes. (ira_allocno_live_ranges_intersect_p, ira_pseudo_live_ranges_intersect_p): Remove. @@ -73,8 +247,7 @@ * ira-conflicts.c (ira_allocno_live_ranges_intersect_p, ira_pseudo_live_ranges_intersect_p): Rename to allocnos_have_intersected_live_ranges_p and - pseudos_have_intersected_live_ranges_p. Move them from here to - ... + pseudos_have_intersected_live_ranges_p. Move them from here to ... * ira-color.c: ... here (coalesced_allocno_conflict_p): Use @@ -112,8 +285,7 @@ 2008-11-19 Richard Guenther * tree.c (build2_stat): Allow non-POINTER_PLUS_EXPRs with - non-sizetype offsets if their precision matches that of - the pointer. + non-sizetype offsets if their precision matches that of the pointer. * expr.c (expand_expr_real_1): Always sign-extend the offset operand of a POINTER_PLUS_EXPR. @@ -134,12 +306,13 @@ 2008-11-19 Razya Ladelsky - PR target/38156 - * tree-parloops.c (loop_parallel_p): NULL vect_dump. + PR target/38156 + * tree-parloops.c (loop_parallel_p): NULL vect_dump. (separate_decls_in_region): Create shared struct even when there are only reductions. 2008-11-19 Hariharan Sandanagobalane + * config/picochip/picochip.c (headers): Remove an unnecessary header file. @@ -272,7 +445,7 @@ 2008-11-16 Eric Botcazou * config/sparc/sparc.c (function_arg_vector_value): Remove 'base_mode' - parameter.  Use DImode for computing the number of registers. + parameter. Use DImode for computing the number of registers. (function_arg): Adjust for above change. (function_value): Likewise.