Richard Henderson [Sun, 30 Jan 2005 02:33:27 +0000 (18:33 -0800)]
re PR middle-end/19689 (ICE in store_bit_field, at expmed.c)
PR middle-end/19689
* expr.c (store_field): Don't strip sub-mode cast when the input
data is even smaller.
From-SVN: r94429
Richard Henderson [Sun, 30 Jan 2005 02:13:46 +0000 (18:13 -0800)]
re PR middle-end/19687 (ICE with union initializer)
PR middle-end/19687
* expr.c (categorize_ctor_elements_1): Check for CONSTRUCTOR of a
union being empty.
From-SVN: r94421
Richard Henderson [Sun, 30 Jan 2005 00:27:01 +0000 (16:27 -0800)]
combine.c (make_field_assignment): Fix argument order to gen_int_mode.
* combine.c (make_field_assignment): Fix argument order
to gen_int_mode.
From-SVN: r94420
GCC Administrator [Sun, 30 Jan 2005 00:16:18 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r94417
Richard Guenther [Sat, 29 Jan 2005 19:25:17 +0000 (19:25 +0000)]
re PR tree-optimization/15791 (fold misses that two ADDR_EXPR of an arrary obvious not equal)
2005-01-29 Richard Guenther <richard.guenther@uni-tuebingen.de>
PR tree-optimization/15791
* fold-const.c (extract_array_ref): New function.
(fold): Fold comparisons between &a[i] and &a[j] or
semantically equivalent trees.
* gcc.dg/tree-ssa/pr15791-1.c: New testcase.
* gcc.dg/tree-ssa/pr15791-2.c: Likewise.
* gcc.dg/tree-ssa/pr15791-3.c: Likewise.
* gcc.dg/tree-ssa/pr15791-4.c: Likewise.
* gcc.dg/tree-ssa/pr15791-5.c: Likewise.
* g++.dg/tree-ssa/pr15791-1.C: Likewise.
* g++.dg/tree-ssa/pr15791-2.C: Likewise.
* g++.dg/tree-ssa/pr15791-3.C: Likewise.
* g++.dg/tree-ssa/pr15791-4.C: Likewise.
* g++.dg/tree-ssa/pr15791-5.C: Likewise.
From-SVN: r94414
Jeff Law [Sat, 29 Jan 2005 18:55:10 +0000 (11:55 -0700)]
gcse.c (insert_expr_in_table): Revamp handling of available and anticipatable occurrence lists to avoid...
* gcse.c (insert_expr_in_table): Revamp handling of available
and anticipatable occurrence lists to avoid unnecessary list
walking.
(insert_set_in_table): Similarly.
From-SVN: r94413
Paul Brook [Sat, 29 Jan 2005 17:46:34 +0000 (17:46 +0000)]
re PR fortran/18565 (gfortran: CONJG: false error message about standard violation)
2005-01-29 Paul Brook <paul@codesourcery.com>
PR fortran/18565
* check.c (real_or_complex_check): New function.
(gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc): New functions.
* intrinsic.c (add_functions): Use new check functions.
* intrinsic.h (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc):
Add prototypes.
testsuite/
* gfortran.dg/double_complex_1.f90: New test.
From-SVN: r94412
Joseph Myers [Sat, 29 Jan 2005 16:12:45 +0000 (16:12 +0000)]
c-common.c (fix_string_type): Just use c_build_qualified_type to build string type.
* c-common.c (fix_string_type): Just use c_build_qualified_type to
build string type.
(c_build_qualified_type): Build qualified array types with
TYPE_MAIN_VARIANT pointing to corresponding unqualified type.
* c-decl.c (c_make_fname_decl): Build unqualified array type
before qualified type.
(grokdeclarator): Use TYPE_MAIN_VARIANT of typedef type if element
type is qualified, not just if type itself is. Don't apply
qualifiers to array type when declarator is processed. Apply
qualifiers to field type whether or not it is an array type.
Don't handle array types specially for applying qualifiers to
variables.
* c-typeck.c (composite_type): Build unqualified element type and
array type when forming composite of array types.
(common_pointer_type, comptypes, comp_target_types,
type_lists_compatible_p, build_indirect_ref, build_array_ref,
convert_for_assignment): Don't apply TYPE_MAIN_VARIANT to array
types.
(type_lists_compatible_p): Cache TREE_VALUE (args1) and TREE_VALUE
(args2) in variables a1 and a2.
testsuite:
* gcc.dg/Wwrite-strings-1.c, gcc.dg/array-quals-2.c,
gcc.dg/lvalue-3.c: New tests.
* gcc.dg/concat.c: Update expected messages.
From-SVN: r94411
Thomas Koenig [Sat, 29 Jan 2005 15:45:17 +0000 (15:45 +0000)]
re PR libfortran/19595 ([4.0 only] eor does not work)
2005-01-29 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/19595
* io/transfer.c (data_transfer_init): eor requires advance="NO".
testsuite/
* gfortran.dg/eor_1.f90: New test.
From-SVN: r94410
Steven G. Kargl [Sat, 29 Jan 2005 15:35:50 +0000 (15:35 +0000)]
re PR fortran/19589 (Regression: Error on Data assignment with LOGICAL*1)
2005-01-29 Steven G. Kargl <kargls@comcast.net>
PR fortran/19589
* expr.c (gfc_check_assign): Check for conformance of logical operands
testsuite/
* gfortran.dg/logical_data_1.f90: New test.
From-SVN: r94409
Kazu Hirata [Sat, 29 Jan 2005 12:16:36 +0000 (12:16 +0000)]
lang-specs.h, [...]: Update copyright.
* lang-specs.h, objc-act.c, objc-act.h, objc-lang.c: Update
copyright.
From-SVN: r94408
Kazu Hirata [Sat, 29 Jan 2005 12:08:04 +0000 (12:08 +0000)]
cse.c (n_elements_made, [...]): Remove.
* cse.c (n_elements_made, max_elements_made): Remove.
(insert): Don't touch n_elements_made.
(cse_main): Don't touch n_elements_made or max_elements_made.
From-SVN: r94407
Hans-Peter Nilsson [Sat, 29 Jan 2005 04:22:08 +0000 (04:22 +0000)]
configure.in (noconfigdirs): Match like cris-*-*.
* configure.in (noconfigdirs) <crisv32-*-*>: Match like cris-*-*.
<crisv32-*-*, cris-*-*>: Only disable target-newlib and
target-libgloss when not *-*-elf and *-*-aout.
* configure: Regenerate.
From-SVN: r94404
Mark Mitchell [Sat, 29 Jan 2005 02:07:18 +0000 (02:07 +0000)]
re PR c++/19253 (bad error message / ICE for invalid template parameter)
PR c++/19253
* parser.c (cp_parser_diagnose_invalid_type_name): Commit to
tentative parses.
PR c++/19253
* g++.dg/template/crash33.C: New test.
From-SVN: r94403
Mark Mitchell [Sat, 29 Jan 2005 00:47:57 +0000 (00:47 +0000)]
re PR c++/19667 (ICE on (very trivial) invalid)
PR c++/19667
* g++.dg/template/crash32.C: New test.
PR c++/19667
* pt.c (redeclare_class_template): Robustify.
From-SVN: r94402
Jeroen Frijters [Sat, 29 Jan 2005 00:43:50 +0000 (00:43 +0000)]
re PR libgcj/19649 (java.util.Date.getTimezoneOffset returns negated output)
2004-01-28 Jeroen Frijters <jeroen@frijters.net>
PR libgcj/19649
* java/util/Date.java
(Date(int,int,int), Date(int,int,int,int,int)): Delegate to other
constructor.
(Date(int,int,int,int,int,int)): Fixed to handle out-of-range
arguments.
(getTimezoneOffset): Inverted sign.
From-SVN: r94401
GCC Administrator [Sat, 29 Jan 2005 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r94399
Stephane Carrez [Fri, 28 Jan 2005 22:08:16 +0000 (23:08 +0100)]
re PR target/15384 (Lines witout effect in t-m68hc11-gas file)
PR target/15384
* config/m68hc11/t-m68hc11-gas (dp-bit.c): Fix typo causing a
configuration part of dp-bit.c to be lost.
From-SVN: r94390
Paolo Carlini [Fri, 28 Jan 2005 21:00:19 +0000 (21:00 +0000)]
type_traits (is_function): Minor consistency tweaks.
2005-01-28 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (is_function): Minor consistency tweaks.
From-SVN: r94385
Geoffrey Keating [Fri, 28 Jan 2005 18:57:59 +0000 (18:57 +0000)]
libstdc++.exp (libstdc++_init): Search the path for the compiler.
* testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
for the compiler. Don't set cxxflags.
(v3_target_compile): Search for libv3test.a relative to $objdir.
(lsearch_all_inline): New.
(lsearch_all_inline_not): New.
(v3-list-tests): Rewrite to not need generated files.
* testsuite/Makefile.am (IGNORE_WCHAR_T): New.
(IGNORE_THREAD): New.
(TESTS_TO_IGNORE): New.
(site.exp): Set tests_to_ignore, cxxflags.
* aclocal.m4: Regenerate.
* Makefile.in: Regenerate.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r94384
Roger Sayle [Fri, 28 Jan 2005 17:49:47 +0000 (17:49 +0000)]
expmed.c (expand_mult_highpart_optab): When attempting to use a non-widening multiplication in a wider mode...
* expmed.c (expand_mult_highpart_optab): When attempting to use
a non-widening multiplication in a wider mode, the operands need
to be converted (zero or sign extended) to that mode.
From-SVN: r94383
Ian Lance Taylor [Fri, 28 Jan 2005 17:33:54 +0000 (17:33 +0000)]
re PR middle-end/16558 (bogus missing-return warning)
PR middle-end/16558
* g++.dg/warn/Wreturn-type-2.C: New test.
From-SVN: r94382
Ian Lance Taylor [Fri, 28 Jan 2005 17:32:57 +0000 (17:32 +0000)]
re PR middle-end/16558 (bogus missing-return warning)
PR middle-end/16558
PR middle-end/19583
* gimple-low.c (block_may_fallthru): TRY_FINALLY_EXPR only falls
through if both operands fall through.
From-SVN: r94381
Paolo Carlini [Fri, 28 Jan 2005 17:20:43 +0000 (17:20 +0000)]
type_traits: Implement is_empty.
2005-01-28 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Implement is_empty.
* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
is_empty.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
typedefs.cc: Likewise.
* include/tr1/type_traits (__is_abstract_helper): Simplify a bit.
From-SVN: r94379
Kazu Hirata [Fri, 28 Jan 2005 17:12:08 +0000 (17:12 +0000)]
* cse.c (fold_rtx) <PC>: Don't optimize.
From-SVN: r94378
Jeff Law [Fri, 28 Jan 2005 16:50:58 +0000 (09:50 -0700)]
* gcc.dg/tree-ssa/
20050128-1.c: New test.
From-SVN: r94377
Jeff Law [Fri, 28 Jan 2005 16:35:46 +0000 (09:35 -0700)]
fold-const.c (fold, [...]): Optimize 0 % X.
* fold-const.c (fold, case CEIL_MOD_EXPR): Optimize 0 % X.
(case FLOOR_MOD_EXPR, ROUND_MOD_EXPR, TRUNC_MOD_EXPR): Similarly.
From-SVN: r94376
Kazu Hirata [Fri, 28 Jan 2005 15:45:11 +0000 (15:45 +0000)]
cse.c (cse_reg_info_free_list, [...]): Remove.
* cse.c (cse_reg_info_free_list, cse_reg_info_used_list,
cse_reg_info_used_list_end): Remove.
(cse_reg_info_list, cse_reg_info_list_free): New.
(get_cse_reg_info): When allocating an instance of
cse_reg_info, add it to the beginning of the cse_reg_info_list
list. Remove code to maintain cse_reg_info_used_list.
(new_basic_block): Reset the free list to the beginning of
cse_reg_info_list.
From-SVN: r94375
Steven Bosscher [Fri, 28 Jan 2005 15:23:48 +0000 (15:23 +0000)]
Fix date on my entry from this morning.
From-SVN: r94374
Richard Sandiford [Fri, 28 Jan 2005 14:00:12 +0000 (14:00 +0000)]
Rmove bogus line from last entry.
From-SVN: r94372
Richard Sandiford [Fri, 28 Jan 2005 13:57:29 +0000 (13:57 +0000)]
frv.c (bdesc_2arg): Remove __MDPACKH.
* config/frv/frv.c (bdesc_2arg): Remove __MDPACKH.
(frv_init_builtins): Change its prototype to take 4 uhalf arguments.
(frv_expand_mdpackh_builtin): New function.
(frv_expand_builtin): Use it to expand __MDPACKH.
* config/frv/media.h (__MDPACKH): Update prototype.
* doc/extend.texi (__MDPACKH): Update documentation.
From-SVN: r94371
Paolo Carlini [Fri, 28 Jan 2005 13:29:41 +0000 (13:29 +0000)]
type_traits: Implement is_abstract, by exploiting the resolution of DR core/337.
2005-01-28 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Implement is_abstract, by exploiting the
resolution of DR core/337.
* testsuite/testsuite_tr1.h: Add AbstractClass.
* testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
is_abstract.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
typedefs.cc: Likewise.
* include/tr1/type_traits (is_function): Rewrite, use the conversion
F& -> F* instead, thus avoiding problems with abstract classes.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_function/is_function.cc: Add a test for tricky AbstractClass.
From-SVN: r94370
Uros Bizjak [Fri, 28 Jan 2005 09:16:50 +0000 (10:16 +0100)]
i386.c (ix86_expand_fp_absneg_operator): Use SSE_FLOAT_MODE_P for use_sse computation.
* config/i386/i386.c (ix86_expand_fp_absneg_operator): Use
SSE_FLOAT_MODE_P for use_sse computation.
From-SVN: r94365
Steven Bosscher [Fri, 28 Jan 2005 08:26:24 +0000 (08:26 +0000)]
* gcc.dg/tree-ssa/
20030711-2.c: Run at -O2, not -O1.
From-SVN: r94364
Ralf Corsepius [Fri, 28 Jan 2005 06:16:14 +0000 (07:16 +0100)]
re PR target/19663 (LINK_GCC_C_SEQUENCE_SPEC doesn't play nice with RTEMS)
2005-01-28 Ralf Corsepius <ralf.corsepius@rtems.org>
PR target/19663
* config/sparc/rtemself.h (LINK_GCC_C_SEQUENCE_SPEC): undefine.
From-SVN: r94363
Matt Austern [Fri, 28 Jan 2005 05:54:55 +0000 (05:54 +0000)]
objc-act.c (objc_finish_file): In ObjC++ mode, set at_eof before calling instantiate_pending_templates.
* objc-act.c (objc_finish_file): In ObjC++ mode, set at_eof before
calling instantiate_pending_templates.
From-SVN: r94362
Richard Henderson [Fri, 28 Jan 2005 00:55:07 +0000 (16:55 -0800)]
builtins.c (expand_builtin_copysign): New.
* builtins.c (expand_builtin_copysign): New.
(expand_builtin): Call it.
* genopinit.c (optabs): Add copysign_optab.
* optabs.c (init_optabs): Initialize it.
(expand_copysign): New.
* optabs.h (OTI_copysign, copysign_optab): New.
(expand_copysign): Declare.
* config/alpha/alpha.md (UNSPEC_COPYSIGN): New.
(copysignsf3, ncopysignsf3, copysigndf3, ncopysigndf3): New.
* config/i386/i386.c (ix86_build_signbit_mask): Split from ...
(ix86_expand_fp_absneg_operator): ... here.
(ix86_split_copysign): New.
* config/i386/i386-protos.h: Update.
* config/i386/i386.md (UNSPEC_COPYSIGN): New.
(copysignsf3, copysigndf3): New.
* config/ia64/ia64.md (UNSPEC_COPYSIGN): New.
(copysignsf3, ncopysignsf3): New.
(copysigndf3, ncopysigndf3): New.
(copysignxf3, ncopysignxf3): New.
* config/ia64/ia64.c (rtx_needs_barrier): Handle UNSPEC_COPYSIGN.
From-SVN: r94357
Richard Henderson [Fri, 28 Jan 2005 00:42:46 +0000 (16:42 -0800)]
* gcc.dg/uninit-I.c: Fix typos in dg-options and dg-warning directives.
From-SVN: r94356
GCC Administrator [Fri, 28 Jan 2005 00:16:26 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r94354
Arend Bayer [Thu, 27 Jan 2005 23:00:19 +0000 (23:00 +0000)]
cse.c: (find_best_addr): Don't call copy_rtx before calling fold_rtx.
* cse.c: (find_best_addr): Don't call copy_rtx before calling
fold_rtx. Save cost recomputation if fold_rtx did nothing.
(fold_rtx) <ASM_OPERANDS>: Don't do anything if INSN is
NULL_RTX.
Co-Authored-By: Kazu Hirata <kazu@cs.umass.edu>
From-SVN: r94345
Jeff Law [Thu, 27 Jan 2005 22:33:14 +0000 (15:33 -0700)]
tree-into-ssa.c (ssa_rewrite_initialize_block): Do not register definitions of SSA_NAMEs which are not being rewritten.
* tree-into-ssa.c (ssa_rewrite_initialize_block): Do not register
definitions of SSA_NAMEs which are not being rewritten.
(rewrite_ssa_into_ssa): Only initialize the current definition
of an SSA_NAME if that SSA_NAME has been marked for rewriting.
If checking is enabled, assert that SSA_NAME_AUX is clear for all
SSA_NAMEs before returning.
From-SVN: r94343
Eric Botcazou [Thu, 27 Jan 2005 21:46:36 +0000 (21:46 +0000)]
Fix a couple of typos.
From-SVN: r94340
Laurent GUERBY [Thu, 27 Jan 2005 20:19:50 +0000 (20:19 +0000)]
Makefile.in: Fix a-intnam.ads from previous commit, add 2005 to copyright.
2005-01-27 Laurent GUERBY <laurent@guerby.net>
* Makefile.in: Fix a-intnam.ads from previous commit,
add 2005 to copyright.
* a-intman-rtems.ads: Renamed to...
* a-intnam-rtems.ads:
From-SVN: r94335
Richard Sandiford [Thu, 27 Jan 2005 20:02:56 +0000 (20:02 +0000)]
* gcc.dg/intmax_t-1.c: Extend dg-error to cover mips*-elf targets.
From-SVN: r94332
Richard Sandiford [Thu, 27 Jan 2005 19:50:02 +0000 (19:50 +0000)]
* gcc.dg/mips-movcc-1.c, gcc.dg/mips-movcc-2.c, gcc.dg/mips-movcc-3.c,
* gcc.dg/mips-nmadd-1.c, gcc.dg/mips-nmadd-2.c, gcc.dg/mips-rsqrt-1.c,
* gcc.dg/mips-rsqrt-2, gcc.dg/mips-rsqrt-3.c: Add dummy asm statements
to cope with cases where the multilib options override the dg-options.
From-SVN: r94331
Stuart Hastings [Thu, 27 Jan 2005 18:58:44 +0000 (18:58 +0000)]
Per request from Eric Botcazou, fix my ChangeLog entry of 26jan2005:
fix relative path, move new testcase to testsuite ChangeLog.
From-SVN: r94329
Kazu Hirata [Thu, 27 Jan 2005 18:22:35 +0000 (18:22 +0000)]
c-common.def, [...]: Update copyright.
* c-common.def, c-dump.c, c-gimplify.c, c-objc-common.c,
cfgexpand.c, dbxout.c, function.h, opts.c, tree-flow-inline.h,
tree-ssa-operands.h, tree-ssa-threadupdate.c, tree-tailcall.c,
config/avr/avr.md, config/cris/aout.h, config/cris/cris.h,
config/mips/iris6.h, config/sh/sh.c: Update copyright.
From-SVN: r94328
Steven Bosscher [Thu, 27 Jan 2005 16:32:12 +0000 (16:32 +0000)]
re PR middle-end/17278 (8% C++ compile-time regression in comparison with 3.4.1 at -O1 optimization level)
PR middle-end/17278
* opts.c (decode_options): Move flag_thread_jumps from -O1 and
higher to -O2 and higher. Likewise for tree PRE.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Only iterate at -O2
and better.
From-SVN: r94325
Ian Lance Taylor [Thu, 27 Jan 2005 14:36:17 +0000 (14:36 +0000)]
re PR middle-end/19583 (Incorrect diagnostic: control may reach end of non-void function '...' being inlined)
PR middle-end/19583
* gimple-low.c (try_catch_may_fallthru): New static function.
(block_may_fallthru): Handle TRY_CATCH_EXPR.
* tree-inline.c (expand_call_inline): Don't warn about reaching
the end of a non-void function being inlined if the function uses
a return slot.
From-SVN: r94323
Jakub Jelinek [Thu, 27 Jan 2005 12:41:40 +0000 (13:41 +0100)]
* config/i386/i386.h (CALL_USED_REGISTERS): Fix comment pastos.
From-SVN: r94321
Jakub Jelinek [Thu, 27 Jan 2005 12:38:38 +0000 (13:38 +0100)]
re PR c/18946 (ICE in pushdecl)
PR c/18946
* c-decl.c (warn_if_shadowing): Handle old_decl error_mark_node.
(pushdecl): Only use DECL_FILE_SCOPE_P if DECL_P.
(implicitly_declare): Handle error_mark_node.
* gcc.dg/noncompile/
20050120-1.c: New test.
From-SVN: r94320
Laurent GUERBY [Thu, 27 Jan 2005 11:57:04 +0000 (11:57 +0000)]
Makefile.in: Rename GNAT RTEMS specific files.
2005-01-27 Laurent GUERBY <laurent@guerby.net>
* Makefile.in: Rename GNAT RTEMS specific files.
* 5rtpopsp.adb, 4rintnam.ads, 5rosinte.adb,
5rosinte.ads, 5rparame.adb: Replaced by files below.
* s-tpopsp-rtems.adb, a-intman-rtems.ads, s-osinte-rtems.adb,
s-osinte-rtems.ads, s-parame-rtems.adb: Replace files above.
From-SVN: r94319
Joel Sherrill [Thu, 27 Jan 2005 11:52:46 +0000 (11:52 +0000)]
re PR ada/19488 (RTEMS Ada RTS doesn't compile)
2005-01-27 Joel Sherrill <joel.sherrill@oarcorp.com>
Laurent GUERBY <laurent@guerby.net>
PR ada/19488
* 5rosinte.ads: Add No_Key constant.
* 5rtpopsp.adb: Initialize ATCB_Key with No_Key and fix style.
* gsocket.h: Do not include <sys/socket.h> with RTEMS either.
Co-Authored-By: Laurent GUERBY <laurent@guerby.net>
From-SVN: r94318
Richard Henderson [Thu, 27 Jan 2005 09:28:45 +0000 (01:28 -0800)]
re PR c++/14329 ([4.1 only] badly formatted warnings for SRA replacements used uninitialized)
PR tree-opt/14329
* tree.h (struct tree_decl): Add debug_expr_is_from.
(DECL_DEBUG_EXPR_IS_FROM): New.
(DECL_DEBUG_EXPR): Rename from DECL_DEBUG_ALIAS_OF.
* dwarf2out.c (dwarf2out_var_location): Update to match.
* tree-outof-ssa.c (create_temp): Likewise.
* var-tracking.c (track_expr_p): Likewise.
* tree-sra.c (instantiate_element): Set DECL_DEBUG_EXPR.
* c-objc-common.c (c_tree_printer) <'D'>: Handle DECL_DEBUG_EXPR.
* toplev.c (default_tree_printer): Likewise.
From-SVN: r94317
Alexandre Oliva [Thu, 27 Jan 2005 08:37:19 +0000 (08:37 +0000)]
frv.c (frv_class_likely_spilled_p): Add GR8_REGS, GR9_REGS, GR89_REGS, FDPIC_FPTR_REGS, FDPIC_REGS.
* config/frv/frv.c (frv_class_likely_spilled_p): Add GR8_REGS,
GR9_REGS, GR89_REGS, FDPIC_FPTR_REGS, FDPIC_REGS.
From-SVN: r94316
Steven Bosscher [Thu, 27 Jan 2005 07:32:26 +0000 (07:32 +0000)]
tree.h (SWITCH_COND, [...]): Add tree checks.
* tree.h (SWITCH_COND, SWITCH_BODY, SWITCH_LABELS, CASE_LOW,
CASE_HIGH, CASE_LABEL, ASM_STRING, ASM_OUTPUTS, ASM_INPUTS,
ASM_CLOBBERS): Add tree checks.
* c-common.h (SWITCH_TYPE): Rename to SWITCH_STMT_TYPE.
(SWITCH_STMT_COND, SWITCH_STMT_BODY): New.
* c-common.def (SWITCH_STMT): Update to match.
* c-common.c (c_do_switch_warnings): Use SWITCH_STMT accessor
macros instead of SWITCH_EXPR ones.
* c-dump.c (c_dump_tree): Likewise.
* c-gimplify.c (gimplify_switch_stmt): Likewise.
* c-typeck.c (c_start_case, do_case, c_finish_case): Likewise.
cp/
* decl.c (finish_case_label): Use SWITCH_STMT accessor macros
instead of SWITCH_EXPR ones.
* pt.c (tsubst_expr): Likewise.
* semantics.c (begin_switch_stmt, finish_switch_cond,
finish_switch_stmt): Likewise.
doc/
* c-tree.texi (SWITCH_STMT): Update accessor macro names.
From-SVN: r94315
Alan Modra [Thu, 27 Jan 2005 07:26:49 +0000 (07:26 +0000)]
unwind-dw2.c (execute_stack_op): Add missing cases for DW_OP_shl, DW_OP_shr, DW_OP_shra, DW_OP_xor.
* unwind-dw2.c (execute_stack_op): Add missing cases for
DW_OP_shl, DW_OP_shr, DW_OP_shra, DW_OP_xor.
From-SVN: r94314
Eric Botcazou [Thu, 27 Jan 2005 07:15:36 +0000 (08:15 +0100)]
config.gcc (Obsolete configurations): Remove 'dummy'...
* config.gcc (Obsolete configurations): Remove 'dummy', add
sparclite-*-coff*, sparclite-*-elf*, sparc86x-*-elf* and
sparc-*-openbsd*.
From-SVN: r94313
Diego Novillo [Thu, 27 Jan 2005 04:45:20 +0000 (04:45 +0000)]
re PR tree-optimization/19633 (local address incorrectly thought to escape)
PR tree-optimization/19633
* tree-ssa-alias.c (ptr_is_dereferenced_by): Also handle
CALL_EXPRs.
(maybe_create_global_var): Do not create .GLOBAL_VAR if there
are no call-clobbered variables.
* tree-outof-ssa.c (check_replaceable): Return false for calls
with side-effects.
testsuite/ChangeLog
PR tree-optimization/19633
* gcc.dg/pr19633.c: New test.
* gcc.dg/tree-ssa/pr19633.c: New test.
From-SVN: r94311
Ulrich Weigand [Thu, 27 Jan 2005 01:49:01 +0000 (01:49 +0000)]
dbxout.c (dbxout_symbol_location): Resolve constant pool references even for variables with NULL DECL_INITIAL.
ChangeLog:
* dbxout.c (dbxout_symbol_location): Resolve constant pool references
even for variables with NULL DECL_INITIAL.
testsuite/ChangeLog:
* gcc.dg/
20041216-1.c: New test.
From-SVN: r94303
Stuart Hastings [Thu, 27 Jan 2005 01:03:27 +0000 (01:03 +0000)]
gimplify.c (shortcut_cond_expr): Re-compute side-effects.
2005-01-26 Stuart Hastings <stuart@apple.com>
* gcc/gimplify.c (shortcut_cond_expr): Re-compute side-effects.
* gcc/testsuite/gcc.c-torture/execute/
20050125-1.c: New.
From-SVN: r94300
Steven Bosscher [Thu, 27 Jan 2005 00:58:11 +0000 (00:58 +0000)]
trans-decl.c (gfc_build_label_decl): Set DECL_ARTIFICAL and TREE_USED for all labels.
* trans-decl.c (gfc_build_label_decl): Set DECL_ARTIFICAL and
TREE_USED for all labels.
(gfc_trans_entry_master_switch): Use it instead of building a
label by hand.
* trans-io.c (add_case): Likewise.
* trans-stmt.c (gfc_trans_integer_select): Likewise.
From-SVN: r94299
GCC Administrator [Thu, 27 Jan 2005 00:16:39 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r94297
Richard Henderson [Thu, 27 Jan 2005 00:07:41 +0000 (16:07 -0800)]
For real this time...
PR middle-end/18008
* c-decl.c (finish_struct): Set DECL_MODE after resetting a
field's type.
* expr.c (store_field): Strip conversions to odd-bit-sized types
if the destination field width matches.
From-SVN: r94294
Richard Henderson [Wed, 26 Jan 2005 23:21:45 +0000 (15:21 -0800)]
Revert last change.
From-SVN: r94291
Richard Henderson [Wed, 26 Jan 2005 23:18:14 +0000 (15:18 -0800)]
re PR middle-end/18008 (Duplicate mask on bitfield insertion)
PR middle-end/18008
* c-decl.c (finish_struct): Set DECL_MODE after resetting a
field's type.
* expmed.c (store_fixed_bit_field): Create a paradoxical subreg
if we don't need the bits above those present in the current mode.
* expr.c (store_field): Strip conversions to odd-bit-sized types
if the destination field width matches.
From-SVN: r94290
Richard Sandiford [Wed, 26 Jan 2005 22:32:27 +0000 (22:32 +0000)]
iris6.h (ENDFILE_SPEC): Don't link in irix-csr.o if either -ffast-math or -funsafe-math-optimizations...
* config/mips/iris6.h (ENDFILE_SPEC): Don't link in irix-csr.o if
either -ffast-math or -funsafe-math-optimizations is in use.
From-SVN: r94289
Marek Michalkiewicz [Wed, 26 Jan 2005 21:44:25 +0000 (22:44 +0100)]
re PR target/19293 (avr-gcc crashes when using shifts with negative shift count)
PR target/19293
PR target/19329
* config/avr/avr.c (notice_update_cc): Only set condition code for
ashrqi3 if shift count > 0.
(out_shift_with_cnt): Handle shift count <= 0 as a no-op.
(ashlqi3_out, ashlhi3_out, ashlsi3_out, ashrqi3_out, ashrhi3_out,
ashrsi3_out, lshrqi3_out, lshrhi3_out, lshrsi3_out): Handle shift
count <= 0 as a no-op, and shift count >= width by copying zero
or sign bit to all bits of the result.
* config/avr/avr.md (all shifts): Add alternatives for zero shift
count, with attribute "length" set to 0 and "cc" set to "none".
From-SVN: r94288
Laurent GUERBY [Wed, 26 Jan 2005 21:35:50 +0000 (21:35 +0000)]
re PR ada/19414 (ACATS cxb4003 - valgrind detects wrong code (invalid read))
2005-01-26 Laurent GUERBY <laurent@guerby.net>
PR ada/19414
* i-cobol.adb (Valid_Numeric): Handle zero length case.
From-SVN: r94287
Alexander Malmberg [Wed, 26 Jan 2005 21:03:31 +0000 (21:03 +0000)]
re PR objc/18862 (ICE on gcc-4.0-
20041205/gcc/testsuite/objc.dg/selector-1.m)
2005-01-26 Alexander Malmberg <alexander@malmberg.org>
PR objc/18862
* objc.dg/selector-2.m: New test.
From-SVN: r94286
Alexander Malmberg [Wed, 26 Jan 2005 21:01:57 +0000 (21:01 +0000)]
re PR objc/18862 (ICE on gcc-4.0-
20041205/gcc/testsuite/objc.dg/selector-1.m)
2005-01-26 Alexander Malmberg <alexander@malmberg.org>
PR objc/18862
* objc-act.c (build_selector_translation_table): Use
input_location in the diagnostic for the GNU runtime or if
TREE_PURPOSE (chain) is NULL.
From-SVN: r94285
Aldy Hernandez [Wed, 26 Jan 2005 20:36:07 +0000 (20:36 +0000)]
invoke.texi: Document -mTLS.
* doc/invoke.texi: Document -mTLS.
* testsuite/gcc.target/frv/all-tls-global-dynamic.c: New.
* testsuite/gcc.target/frv/all-tls-initial-exec.c: New.
* testsuite/gcc.target/frv/all-tls-initial-exec-pic.c: New.
* testsuite/gcc.target/frv/all-tls-local-dynamic.c: New.
* testsuite/gcc.target/frv/all-tls-local-dynamic-plt.c: New.
* testsuite/gcc.target/frv/all-tls-local-dynamic-plt-pic.c: New.
* testsuite/gcc.target/frv/all-tls-local-exec.c: New.
* testsuite/gcc.target/frv/all-tls-local-exec-TLS.c: New.
* configure.ac: Check for a TLS capable gas.
* configure: Regenerate.
From-SVN: r94283
Richard Henderson [Wed, 26 Jan 2005 20:29:25 +0000 (12:29 -0800)]
re PR middle-end/18008 (Duplicate mask on bitfield insertion)
PR middle-end/18008
* combine.c (make_field_assignment): Simplify store to zero_extract
from a source with an overlapping mask.
From-SVN: r94282
Joern Rennecke [Wed, 26 Jan 2005 19:02:32 +0000 (19:02 +0000)]
Fix filename typo.
From-SVN: r94275
Joern Rennecke [Wed, 26 Jan 2005 18:58:59 +0000 (18:58 +0000)]
Add bug number:
PR c++/18370
* parse.c (cp_parser_initializer_clause): Initialize *non_constant_p.
From-SVN: r94274
Aldy Hernandez [Wed, 26 Jan 2005 18:57:03 +0000 (18:57 +0000)]
frv.md: Add fr400_integer automaton.
* config/frv/frv.md: Add fr400_integer automaton. Don't
allow TYPE_MUL, TYPE_MACC, or TYPE_CUT to issue in parallel
to TYPE_MACC.
From-SVN: r94272
J"orn Rennecke [Wed, 26 Jan 2005 18:45:00 +0000 (18:45 +0000)]
* parse.c (cp_parser_initializer_clause): Initialize *non_constant_p.
From-SVN: r94270
Steven Bosscher [Wed, 26 Jan 2005 17:26:33 +0000 (17:26 +0000)]
re PR middle-end/16585 (current_function_has_computed_jump incorrectly changed in make_edges)
PR middle-end/16585
* cfgbuild.c (make_edges): Do not clear or set
current_function_has_computed_jump.
* function.h (struct function): Remove the has_computed_jump field.
(current_function_has_computed_jump): Do not define.
* sched-rgn.c (is_cfg_nonregular): Return true if a basic block ends
in a computed jump. Ignore current_function_has_computed_jump.
From-SVN: r94269
Paolo Carlini [Wed, 26 Jan 2005 16:34:58 +0000 (16:34 +0000)]
mt_allocator.h (struct __per_type_pool_policy<,, [...]): Scale _M_chunk_size too with sizeof(_Tp)...
2005-01-26 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h
(struct __per_type_pool_policy<,, false>::_S_get_pool,
struct __per_type_pool_policy<,, true>::_S_get_pool): Scale
_M_chunk_size too with sizeof(_Tp), otherwise the allocator
breaks down as soon as sizeof(_Tp) >~ _S_chunk_size / 128;
reduce to 64 the multiplier for _M_max_bytes (safer wrt
_Binmap_type being a short); trivial reformattings.
* testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: New.
From-SVN: r94268
Richard Henderson [Wed, 26 Jan 2005 15:20:53 +0000 (07:20 -0800)]
re PR middle-end/19515 (Violation of C99 6.7.8 §21 for unions)
PR middle-end/19515
* expr.c (categorize_ctor_elements): New argument p_must_clear.
(categorize_ctor_elements_1): Likewise. Detect a union that isn't
fully initialized.
(mostly_zeros_p): Update for new categorize_ctor_elements argument.
* gimplify.c (gimplify_init_constructor): Likewise. Only shove
objects into static storage if they have more than one non-zero value.
* tree.h (categorize_ctor_elements): Update decl.
From-SVN: r94266
Steven Bosscher [Wed, 26 Jan 2005 15:08:50 +0000 (15:08 +0000)]
re PR middle-end/19616 (missed tail call)
PR middle-end/19616
* tree.h (CALL_EXPR_TAILCALL): Add comment.
* calls.c (check_sibcall_argument_overlap_1): Revert the change
to this function from 2004-07-10.
* tree-tailcall.c (suitable_for_tail_opt_p): Do not consider the
the current function for tail call optimizations if the address
of one of it its arguments is taken.
From-SVN: r94265
Kazu Hirata [Wed, 26 Jan 2005 12:44:58 +0000 (12:44 +0000)]
* cse.c (fold_rtx): Call equiv_constant only when necessary.
From-SVN: r94260
Bernd Schmidt [Wed, 26 Jan 2005 11:22:33 +0000 (11:22 +0000)]
function.c (expand_function_end): If current_function_calls_alloca...
* function.c (expand_function_end): If current_function_calls_alloca,
emit stack restore in a place that is reached when the function falls
through at the end.
From-SVN: r94259
Paolo Carlini [Wed, 26 Jan 2005 10:34:53 +0000 (10:34 +0000)]
acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex to the final test for enable_c99, thus robustifying it...
2005-01-26 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex
to the final test for enable_c99, thus robustifying it; remove
duplicate final test on ac_99_math.
* configure: Regenerate.
* include/std/std_complex.h: Remove usages of the dead
_GLIBCXX_BUGGY_COMPLEX macro.
* testsuite/26_numerics/cmath/19322.cc: Protect with
_GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99,
since only C99 math facilities are involved.
* testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
Likewise.
From-SVN: r94257
Steven Bosscher [Wed, 26 Jan 2005 09:20:57 +0000 (09:20 +0000)]
Fix PR number on Honza's checkin
From-SVN: r94256
Alexandre Oliva [Wed, 26 Jan 2005 09:17:02 +0000 (09:17 +0000)]
Makefile.in (../$(build_subdir)/fixincludes/fixincl): Add dummy rule to avoid matching inappropriate suffix rule.
* Makefile.in (../$(build_subdir)/fixincludes/fixincl): Add dummy
rule to avoid matching inappropriate suffix rule.
From-SVN: r94255
Jan Hubicka [Wed, 26 Jan 2005 08:07:02 +0000 (09:07 +0100)]
re PR target/19421 (ICE with soft-float on m68k)
PR tree-optimization/19421
* tree-inline.c (copy_body_r): Do not walk subtrees after substituting.
From-SVN: r94254
Hans-Peter Nilsson [Wed, 26 Jan 2005 03:20:22 +0000 (03:20 +0000)]
cris.h (LIB_SPEC): Use -lsyslinux, not -lsyssim.
* config/cris/cris.h (LIB_SPEC) <sim*>: Use -lsyslinux, not
-lsyssim. Wrap -lc -lsyssim in --start-group --end-group instead
of doubling.
(STARTFILE_SPEC): Add crti.o, before crtbegin.o.
<sim*>: Always use crt1.o, regardless of N in simN.
<!sim>: Drop support for -pg and -p variants; always use crt0.o.
(ENDFILE_SPEC): Add crtn.o, after crtend.o.
(CRT_CALL_STATIC_FUNCTION): Remove.
* config/cris/aout.h (STARTFILE_SPEC): <!melinux && sim*>: Always
use crt1.o, regardless of N in simN.
<!sim>: Drop support for -pg and -p variants; always use crt0.o.
(LIB_SPEC): Do not define; default to the one in config/cris/cris.h.
(CRIS_CPP_SUBTARGET_SPEC) <melinux && !nostdinc>: Remove special
case isystem setting.
(MAX_OFILE_ALIGNMENT): Correct to 32, not 16.
From-SVN: r94251
Ian Lance Taylor [Wed, 26 Jan 2005 03:18:06 +0000 (03:18 +0000)]
gimple-low.c (block_may_fallthru): Correct handling of SWITCH_EXPR--may fall through if SWITCH_LABELS is NULL.
2005-01-25 Ian Lance Taylor <ian@airs.com>
* gimple-low.c (block_may_fallthru): Correct handling of
SWITCH_EXPR--may fall through if SWITCH_LABELS is NULL.
From-SVN: r94250
Ranjit Mathew [Wed, 26 Jan 2005 02:28:15 +0000 (02:28 +0000)]
re PR java/19070 (internal compiler error: in generate_bytecode_conditional, at java/jcf-write.c:1271)
* testsuite/libjava.jacks/jacks.xfail: Update for PR java/19070,
remove other passing tests and add new XFAILs.
From-SVN: r94246
Hans-Peter Nilsson [Wed, 26 Jan 2005 02:16:01 +0000 (02:16 +0000)]
cris.h (CPP_SPEC): Adjust the various mtune= handlers to match indentation...
* config/cris/cris.h (CPP_SPEC): Adjust the various mtune=
handlers to match indentation; nested under the mtune=* handler.
Similar for mcpu= and march=.
From-SVN: r94245
Daniel Jacobowitz [Wed, 26 Jan 2005 02:04:48 +0000 (02:04 +0000)]
linux.h (LIB_SPEC): Remove -rpath-link.
* config/mips/linux.h (LIB_SPEC): Remove -rpath-link.
* config/mips/linux64.h (LIB_SPEC): Likewise.
* config/mn10300/linux.h (LIB_SPEC): Likewise.
* config/sh/linux.h (LIB_SPEC): Likewise.
From-SVN: r94244
GCC Administrator [Wed, 26 Jan 2005 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r94241
Aldy Hernandez [Wed, 26 Jan 2005 00:07:08 +0000 (00:07 +0000)]
frv.c (frv_legitimize_tls_address): New.
* config/frv/frv.c (frv_legitimize_tls_address): New.
(TARGET_HAVE_TLS): Define.
(FRV_SYMBOL_REF_TLS_P): Define.
(frv_override_options): Handle new register classes.
(frv_legitimate_address_p): Reject tls addresses.
(frv_legitimize_address): Handle TLS addresses.
(gen_inlined_tls_plt): New.
(gen_tlsmoff): New.
(frv_legitimize_tls_address): New.
(unspec_got_name): Add TLS entries.
(got12_operand): Add R_FRV_TLSMOFF12 case.
(frv_emit_move): Fixup TLS addresses.
(frv_emit_movsi): Legitimize TLS addresses.
* config/frv/frv.h (MASK_BIG_TLS): New.
(TARGET_BIG_TLS): New.
(HAVE_AS_TLS): Define.
(TARGET_SWITCHES): Add -mTLS and -mtls options.
(enum reg_class): Add GR8_REGS, GR9_REGS, GR89_REGS.
(REG_CLASS_NAMES): Same.
(REG_CLASS_CONTENTS): Same.
(CONSTRAINT_LEN): New.
(REG_CLASS_FROM_CONSTRAINT): New.
(PREDICATE_CODES): Add symbolic_operand.
* config/frv/frv.md (define_constants): Add UNSPEC_GETTLSOFF,
UNSPEC_TLS_LOAD_GOTTLSOFF12, UNSPEC_TLS_INDIRECT_CALL,
UNSPEC_TLS_TLSDESC_LDD, UNSPEC_TLS_TLSDESC_LDD_AUX,
UNSPEC_TLS_TLSOFF_LD, UNSPEC_TLS_LDDI, UNSPEC_TLSOFF_HILO,
R_FRV_GOTTLSOFF_HI, R_FRV_GOTTLSOFF_LO, R_FRV_TLSMOFFHI,
R_FRV_TLSMOFFLO, R_FRV_TLSMOFF12, R_FRV_TLSDESCHI,
R_FRV_TLSDESCLO, R_FRV_GOTTLSDESCHI, R_FRV_GOTTLSDESCLO, GR8_REG,
GR9_REG, GR14_REG, LRREG.
(type): Add load_or_call attribute.
("load_or_call"): New reservation.
("call_gettlsoff"): New.
("tls_indirect_call"): New.
("tls_load_gottlsoff12"): New.
("tlsoff_hilo"): New.
("tls_tlsdesc_ldd"): New.
("tls_tlsoff_ld"): New.
("tls_lddi"): New.
* config/frv/frv-protos.h (symbolic_operand): Protoize.
* config/frv/frv.h (ASM_OUTPUT_DWARF_DTPREL): Define.
* config/frv/frv-protos.h (frv_output_dwarf_dtprel): Declare.
* config/frv/frv.c (TLS_BIAS): Define.
(frv_output_dwarf_dtprel): New.
From-SVN: r94237
Loren J. Rittle [Tue, 25 Jan 2005 23:44:03 +0000 (23:44 +0000)]
acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin instead of generic.
* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin
instead of generic. Change autoconf report to "darwin or freebsd".
* configure: Regenerate.
* config/os/bsd/freebsd/ctype_inline.h (ctype<wchar_t>::do_is): Add.
(ctype<wchar_t>::do_scan_is): Likewise.
(ctype<wchar_t>::do_scan_not): Likewise.
From-SVN: r94236
Jakub Jelinek [Tue, 25 Jan 2005 23:11:29 +0000 (00:11 +0100)]
* g++.dg/opt/range-test-2.C: New test.
From-SVN: r94235
Jakub Jelinek [Tue, 25 Jan 2005 23:09:10 +0000 (00:09 +0100)]
re PR rtl-optimization/19579 (-march=i686 generates a bogus program for x86*)
PR rtl-optimization/19579
* ifcvt.c (noce_try_cmove_arith): If emitting instructions to set up
both A and B, see if they don't clobber registers the other expr uses.
* gcc.c-torture/execute/
20050124-1.c: New test.
From-SVN: r94234
Tobias Schlüter [Tue, 25 Jan 2005 21:40:25 +0000 (22:40 +0100)]
re PR libfortran/19524 (5 times uninitialized var in libgfortran)
PR libfortran/19524
* io/read.c (read_f): Don't free uninitialized pointer.
From-SVN: r94232
J"orn Rennecke [Tue, 25 Jan 2005 20:21:59 +0000 (20:21 +0000)]
real.c (do_add): Initialize signalling and canonical members.
* real.c (do_add): Initialize signalling and canonical members.
* real.c (real_from_integer): Zero out destination.
From-SVN: r94228
Jan Hubicka [Tue, 25 Jan 2005 19:32:53 +0000 (20:32 +0100)]
re PR tree-optimization/19337 (ada does not compile at -O3 (nested functions related))
PR tree-optimize/19337
* gcc.c-torture/compile/
20050119-1.c: New test.
PR tree-optimize/19337
* tree-inline.c (initialize_inlined_parameters): Copy
saved_static_chain_decl only.
From-SVN: r94226