OSDN Git Service

PR c/17301
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 77818b2..f7cfba9 100644 (file)
@@ -1,3 +1,83 @@
+2004-10-10  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       PR c/17301
+       * builtins.c (expand_builtin_va_start): Check for too few
+       arguments to va_start.
+
+2004-10-10  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       PR c/17189
+       * c-decl.c (grokfield): Make diagnostic for bad cases of unnamed
+       fields a pedwarn.  Pedwarn here for unnamed structs/unions if
+       pedantic.
+       * c-parse.in (component_decl): Don't pedwarn here for unnamed
+       fields.
+
+2004-10-09  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR tree-optimization/17906
+       * tree-tailcall.c (tree_optimize_tail_calls_1): Do not attempt to
+       copy non-gimple reg arguments.
+
+2004-10-09  Roger Sayle  <roger@eyesopen.com>
+
+       PR rtl-optimization/17853
+       * simplify-rtx.c (simplify_relational_operation): Correct comment.
+       Reorganize handling of comparison operations with floating point
+       results (always return 0.0 even without FLOAT_STORE_FLAG_VALUE).
+       Likewise, introduce support for comparison operations with vector
+       result types, introducing a new VECTOR_STORE_FLAG_VALUE target macro.
+
+       * doc/rtl.texi: Document new VECTOR_STORE_FLAG_VALUE target macro.
+       * doc/tm.texi: Likewise.
+
+2004-10-09  Steven Bosscher  <stevenb@suse.de>
+
+       * regs.h (struct reg_info_def): Remove the last_node_uid and
+       changes_mode fields.
+       (REGNO_LAST_NOTE_UID): Don't define.
+       * regclass.c (reg_scan_mark_refs): Don't set REGNO_LAST_NOTE_UID.
+       * regmove.c (copy_src_to_dest): Likewise.
+
+2004-10-09  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/17894
+       * fold-const.c (fold_div_compare): When optimizing X/C1 op C2, the
+       relational comparison operator op needs to be swapped/reversed when
+       C1 is negative.  i.e. X/-10 < 1 becomes X >= -9, not X < -9.
+
+2004-10-08  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/17902
+       * tree-ssa-phiopt.c (conditional_replacement): Use bsi_after_labels
+       instead of bsi_start.
+       (value_replacement): Likewise.
+       (abs_replacement): Likewise
+
+2004-10-09  Steven Bosscher  <stevenb@suse.de>
+
+       * cfgexpand.c (maybe_dump_rtl_for_tree_stmt): New function.
+       (expand_gimple_cond_expr, expand_gimple_tailcall,
+       expand_gimple_basic_block): Use it to dump RTL for each stmt.
+       (tree_expand_cfg): Announce full RTL function dump.
+       * tree-optimize.c (execute_one_pass): Use normal RTL printing,
+       not the graph version.
+       * tree-pretty-print.c (dump_generic_node): Allow empty statements
+       in the arms of a COND_EXPR for lowered nodes.
+
+2004-10-08  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config/rs6000/spe.h (atosfix16, atosfix32, atosfix64, atoufix16,
+       atoufix32, atoufix64, strtosfix16, strtosfix32, strtosfix64,
+       strtoufix16, strtoufix32, strtoufix64): Declare.
+
+2004-10-08  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-lex.c (interpret_float): Give a pedwarn rather than a warning
+       for an out-of-range floating point constant.
+       * builtins.c (fold_builtin_inf): Give a pedwarn rather than a
+       warning if the target format does not support infinities.
+
 2004-10-08  Kazu Hirata  <kazu@cs.umass.edu>
 
        * emit-rtl.c (last_label_num, base_label_num): Remove.
 
 2004-10-07  Devang Patel  <dpatel@apple.com>
 
-        * rs6000/altivec.md (UNSPEC_VCMPBFP, UNSPEC_VCMPEQUB, UNSPEC_VCMPEQUH,
-        UNSPEC_VCMPEQUW, UNSPEC_VCMPGEFP, UNSPEC_VCMPGTUB, UNSPEC_VCMPGTSB,
-        UNSPEC_VCMPGTUH, UNSPEC_VCMPGTSH, UNSPEC_VCMPGTUW, UNSPEC_VCMPGTSW,
-        UNSPEC_VCMPGTFP, UNSPEC_VSEL4SI, UNSPEC_VSEL4SF, UNSPEC_VSEL8HI,
-        UNSPEC_VSEL16QI, UNSPEC_VCOND_V4SI, UNSPEC_VCOND_V4SF, UNSPEC_VCOND_V8HI,
-        UNSPEC_VCOND_V16QI, UNSPEC_VCONDU_V4SI, UNSPEC_VCONDU_V8HI, 
+       * rs6000/altivec.md (UNSPEC_VCMPBFP, UNSPEC_VCMPEQUB, UNSPEC_VCMPEQUH,
+       UNSPEC_VCMPEQUW, UNSPEC_VCMPGEFP, UNSPEC_VCMPGTUB, UNSPEC_VCMPGTSB,
+       UNSPEC_VCMPGTUH, UNSPEC_VCMPGTSH, UNSPEC_VCMPGTUW, UNSPEC_VCMPGTSW,
+       UNSPEC_VCMPGTFP, UNSPEC_VSEL4SI, UNSPEC_VSEL4SF, UNSPEC_VSEL8HI,
+       UNSPEC_VSEL16QI, UNSPEC_VCOND_V4SI, UNSPEC_VCOND_V4SF, UNSPEC_VCOND_V8HI,
+       UNSPEC_VCOND_V16QI, UNSPEC_VCONDU_V4SI, UNSPEC_VCONDU_V8HI, 
        UNSPEC_VCONDU_V16QI): New constant defines.
-        (vcondv4si, vcondv4sf, vcondv8hi, vcondv16qi, vconduv4si, vconduv8hi,
+       (vcondv4si, vcondv4sf, vcondv8hi, vcondv16qi, vconduv4si, vconduv8hi,
        vconduv16qi): New patterns.
-        * rs6000/rs6000-protos.h (rs6000_emit_vector_cond_expr): New function.
-        * rs6000/rs6000.c (rs6000_emit_vector_cond_expr): New function.
-        (get_vec_cmp_insn): Same.
-        (get_vsel_insn): Same.
-        (rs6000_emit_vector_compare): Same.
-        (rs6000_emit_vector_select): Same.
+       * rs6000/rs6000-protos.h (rs6000_emit_vector_cond_expr): New function.
+       * rs6000/rs6000.c (rs6000_emit_vector_cond_expr): New function.
+       (get_vec_cmp_insn): Same.
+       (get_vsel_insn): Same.
+       (rs6000_emit_vector_compare): Same.
+       (rs6000_emit_vector_select): Same.
        (INSN_NOT_AVAILABLE): New.
        
 2004-10-07  Zdenek Dvorak  <dvorakz@suse.cz>
 
 2004-10-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
 
-       PR middle-end/17285
+       PR middle-end/17835
        * expmed.c (expand_sdiv_pow2): Force a stack adjustment
        before tentatively building the conditional move sequence.