OSDN Git Service

* builtins.def (BUILT_IN_PUTC, BUILT_IN_PUTC_UNLOCKED): New.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index ea11951..7eb20a3 100644 (file)
@@ -1,3 +1,288 @@
+2005-12-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.def (BUILT_IN_PUTC, BUILT_IN_PUTC_UNLOCKED): New.
+
+       * config/pa/pa.c (pa_init_builtins): If we detect
+       DONT_HAVE_FPUTC_UNLOCKED, set builtin fputc_unlocked to
+       putc_unlocked.
+
+2005-12-01  Richard Guenther  <rguenther@suse.de>
+
+       * fold-const.c (fold_binary): Use fold_build2, not
+       fold (build (...)).
+
+2005-12-01  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config/ms1/ms1.c (ms1_reorg_hazard): Don't count noop moves.
+
+       * vec.h (VEC_block_remove): New.
+
+2005-12-01  Gabriel Dos Reis  <gdr@integrable-solutions.net>
+
+       PR c/13384
+       * c-common.c (lvalue_error): Fix wording.
+
+2005-12-01  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-forwprop.c (forward_propagate_addr_expr): Fix
+       thinko in last patch.
+
+2005-12-01  Geoffrey Keating  <geoffk@apple.com>
+
+       * config/t-slibgcc-darwin (SHLIB_LINK): Use -single_module rather
+       than -flat_namespace.
+
+2005-12-01  Ben Elliston  <bje@au.ibm.com>
+
+        * mklibgcc.in: Parameterise the script to build soft float
+       functions by iterating over each type, rather than cloning the
+       code for each type.
+
+2005-11-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       PR middle-end/25158
+       * builtins.c (fold_builtin_fputs): Defer check for missing
+       replacement functions.
+
+2005-11-30  Kean Johnston  <jkj@sco.com>
+
+       * config/i386/i386.c: Check the value of SUPPORTS_ONE_ONLY, not
+       simply its presense in case targets #define SUPPORTS_ONE_ONLY 0.
+
+2005-11-30  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/22501
+       * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): New
+       function split out from ...
+       (forward_propagate_addr_expr): ... here.  Use it to propagate
+       ADDR_EXPRs to all uses.
+
+2005-11-30  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * tree.h (CASE_FLT_FN, CASE_INT_FN): New macros.
+       * builtins.c (expand_builtin_mathfn): Use them.
+       (expand_builtin_mathfn_2): Likewise.
+       (expand_builtin_mathfn_3): Likewise.
+       (expand_builtin_int_roundingfn): Likewise.
+       (expand_builtin): Likewise.
+       (integer_valued_real_p): Likewise.
+       (fold_builtin_int_roundingfn): Likewise.
+       (fold_builtin_bitop): Likewise.
+       (fold_builtin_logarithm): Likewise.
+       (fold_builtin_1): Likewise.
+       * convert.c (convert_to_integer): Likewise.
+       * fold-const.c (negate_mathfn_p): Likewise.
+       (tree_expr_nonnegative_p): Likewise.
+
+2005-11-30  Dale Johannesen  <dalej@apple.com>
+            Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * combine.c (find_split_point):  Sign extend bitmask
+       when changing bitfield assignment to IOR of AND.
+
+2005-11-30  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config/ms1/ms1.md (decrement_and_branch_until_zero): Add early
+       clobber to scratch reg.
+       (*decrement_and_branch_until_zero_no_clobber): Remove.
+       (decrement_and_branch peephole): Add dummy scratch reg to pattern.
+       (mulhish3): Use TARGET_MS1_16_003, TARGET_MS2.
+       * config/ms1/ms1.opt (mmul): Remove.
+       * config/ms1/ms1.h (ASM_SPEC): Cope with uppercase arch names.
+       (LINK_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): Default to 16-002.
+
+2005-11-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+           Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * pa/predicates.md (symbolic_operand): Add comment.
+       * pa/pa.md (reload_insi_r1, reload_indi_r1): New reload expanders.
+       * pa/pa-protos.h (pa_secondary_reload_class): Delete.
+       * pa/pa.c (TARGET_SECONDARY_RELOAD): Define.
+       (pa_secondary_reload_class): Delete.
+       (pa_secondary_reload): New function derived from SECONDARY_RELOAD_CLASS
+       and pa_secondary_reload_class.  Reorder some checks.  Update inline
+       copy of symbolic operand.
+       * pa/pa.h (SECONDARY_RELOAD_CLASS): Delete.
+
+2005-11-30  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * loop-doloop.c (add_test): Only add jump notes if we did emit a
+       jump.
+
+2005-11-30  Jeff Law  <law@redhat.com>
+
+       * tree-ssa-uncprop.c (associate_equivalences_with_edges): Properly
+       handle SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
+
+2005-11-30  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/ia64/ia64.c (ia64_expand_tls_address): Add ORIG_OP1 argument.
+       Move ADDEND_{HI,LO} computation into TLS_MODEL_INITIAL_EXEC case.
+       (ia64_expand_move): Adjust caller.
+
+       * config/ia64/ia64.c (ia64_expand_atomic_op): Only use
+       fetchadd{4,8}.acq instruction if CODE is PLUS or MINUS, for MINUS
+       negate VAL.
+
+2005-11-30  Paolo Bonzini  <bonzini@gnu.org>
+
+       * simplify-rtx.c (simplify_plus_minus): Remove final parameter.
+       Always produce an output if we can remove NEGs or canonicalize
+       (minus (minus ...)) expressions.  Provide a fast path for the
+       two-operand case.
+       (simplify_gen_binary): Do not call simplify_plus_minus.
+       (simplify_binary_operation_1): Reassociate at the end of the
+       function.
+
+2005-11-29  Evan Cheng  <evan.cheng@apple.com>
+
+       * config/i386/xmmintrin.h (_MM_TRANSPOSE4_PS): Rewrite using high/low
+       moves and unpack to speed up.
+
+2005-11-29  David S. Miller  <davem@sunset.davemloft.net>
+
+       * config/sparc/sparc.c (gen_compare_reg): Kill 2nd and 3rd
+       argument, they are always sparc_compare_op0 and sparc_compare_op1.
+       (gen_v9_scc): Update callers.
+       * config/sparc/sparc.md: Likewise.
+       * config/sparc/sparc-protos.h: Update extern declaration.
+
+       * tree-into-ssa.c (rewrite_into_ssa): Fix comment typo.
+
+2005-11-29  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * fold-const.c (negate_expr) <case BIT_NOT_EXPR>: Add break after
+       the if.
+
+2005-11-29  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * fold-const.c (negate_expr_p): Return true for BIT_NOT_EXPR.
+       (fold_unary) <case NEGATE_EXPR>: Move -(~a) transformation to ...
+       (negate_expr): Here.
+
+2005-11-29  Ben Elliston  <bje@au.ibm.com>
+
+       * config/i386/i386.h (FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN):
+       Fix typo in comment.
+
+2005-11-29  Ben Elliston  <bje@au.ibm.com>
+
+       * Makefile.in (clean-target): Depend on clean-target-libgcc.
+       (clean-target-libgcc): Import rule from the top-level Makefile.in.
+
+2005-11-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       PR middle-end/20109
+       PR middle-end/25120
+       * builtins.c (init_target_chars): New.
+       (expand_builtin_printf, expand_builtin_fprintf,
+       expand_builtin_sprintf, fold_builtin_sprintf,
+       maybe_emit_sprintf_chk_warning, fold_builtin_sprintf_chk,
+       fold_builtin_snprintf_chk, fold_builtin_printf,
+       fold_builtin_fprintf): Check for matching format strings using
+       the target charset.
+
+2005-11-29  Paul Brook  <paul@codesourcery.com>
+
+       * config.gcc: Do not use fixproto on m68k-elf.
+
+2005-11-28  Roger Sayle  <roger@eyesopen.com>
+
+       * expmed.c (div_cost): Replace with...
+       (sdiv_cost, udiv_cost): New.
+       (init_expmed): Initialize sdiv_cost and udiv_cost, not div_cost.
+       Rename the div and mod fields, used to initialize sdiv_pow2_cheap
+       and smod_pow2_cheap, to sdiv_32 and smod_32 to avoid confusion.
+       (expand_divmod): Replace use of div_cost with either sdiv_cost
+       or udiv_cost depending upon the signedness of the operation.
+
+2005-11-28  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR libfortran/24991
+       * config/darwin.c (machopic_indirection_name,
+       machopic_output_indirection): Follow transparent alias chain.
+
+2005-11-28  Alexandre Oliva  <aoliva@redhat.com>
+
+       * varasm.c (ultimate_transparent_alias_target): Add comment.
+
+2005-11-28  Kazu Hirata  <kazu@codesourcery.com>
+
+       * config/m68k/m68k.c (notice_update_cc): Use SET_DEST and
+       SET_SRC instead of XEXP where appropriate.
+
+2005-11-28  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config/fp-bit.c (isnan, isinf, pack_d, unpack_d): Use
+       __builtin_expect.
+
+2005-11-28  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config/fp-bit.h (LSHIFT): Take shift count parameter.
+       * config/fp-bit.c (_fpadd_parts): Shift in one go instead of one
+       bit at a time.
+
+2005-11-28  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/bfin.c (bfin_secondary_reload): Renamed from
+       secondary_input_reload_class, made static.  Adapt to new
+       infrastructure.
+       (secondary_output_reload_class): Delete.
+       (TARGET_SECONDARY_RELOAD): New macro.
+       * config/bfin/bfin.h (SECONDARY_INPUT_RELOAD_CLASS,
+       SECONDARY_OUTPUT_RELOAD_CLASS): Delete.
+
+2005-11-28  Nathan Sidwell  <nathan@codesourcery.com>
+
+       PR c++/21166
+       * c-decl.c (finish_struct):  Only set DECL_PACKED on a field
+       when its natural alignment is > BITS_PER_UNIT.
+       * stor-layout.c (finalize_type_size): Revert my patch of 2005-08-08.
+       * c-common.c (handle_packed_attribute): Ignore packing on a field
+       whose type is naturally char aligned.
+
+2005-11-28  Richard Guenther  <rguenther@suse.de>
+
+       * c-common.c (strict_aliasing_warning): Handle all
+       component-ref like accesses.
+
+2005-11-28  Roger Sayle  <roger@eyesopen.com>
+           Uros Bizjak  <uros@kss-loka.si>
+
+       PR middle-end/20219
+       * fold-const.c (fold binary) <RDIV_EXPR>: Optimize
+       sin(x)/tan(x) as cos(x) and tan(x)/sin(x) as 1.0/cos(x)
+       when flag_unsafe_math_optimizations is set and
+       we don't care about NaNs or Infinities.
+
+       Move x/expN(y) and x/pow(y,z) transformation into common
+       flag_unsafe_math_optimizations section.
+
+2005-11-27  Mark Mitchell  <mark@codesourcery.com>
+
+       * gcc.c (main): Change type of argv to "char **".
+
+2005-11-28  Alan Modra  <amodra@bigpond.net.au>
+
+       * doc/invoke.texi (powerpc msdata-data): Static data doesn't go in
+       small data sections.
+       * config/rs6000/rs6000.c (rs6000_elf_in_small_data_p): Make global.
+       * config/rs6000/rs6000-protos.h: (rs6000_elf_in_small_data_p): Declare.
+       * config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_LOCAL): Rename to..
+       (ASM_OUTPUT_ALIGNED_DECL_LOCAL): ..this, adding extra parm.  Don't
+       output locals to sbss if !rs6000_elf_in_small_data_p.
+       (ASM_OUTPUT_ALIGNED_BSS): Adjust for above.
+
+2005-11-28  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/24997
+       * config/rs6000/rs6000.c (legitimate_indexed_address_p): Allow pattern
+       generated by reload.
+       * config/rs6000/predicates.md (indexed_or_indirect_operand): Use
+       indexed_or_indirect_address.
+       (indexed_or_indirect_address): Don't test for base reg.  Call
+       address_operand last.  Make it a special predicate.
+
 2005-11-27  Kazu Hirata  <kazu@codesourcery.com>
 
        * config/m68k/m68k.c (notice_update_cc): Remove useless code.