platform/upstream/gcc.git
15 years ago* config/xtensa/xtensa.md (reload<mode>_literal): Handle MEM operands.
Bob Wilson [Sat, 20 Sep 2008 02:43:00 +0000 (02:43 +0000)]
* config/xtensa/xtensa.md (reload<mode>_literal): Handle MEM operands.

From-SVN: r140509

15 years agoDaily bump.
GCC Administrator [Sat, 20 Sep 2008 00:16:57 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r140507

15 years agovarasm.c (narrowing_initializer_constant_valid_p): Return NULL_TREE if ENDTYPE is...
Ian Lance Taylor [Fri, 19 Sep 2008 22:30:12 +0000 (22:30 +0000)]
varasm.c (narrowing_initializer_constant_valid_p): Return NULL_TREE if ENDTYPE is not an integer.

* varasm.c (narrowing_initializer_constant_valid_p): Return
NULL_TREE if ENDTYPE is not an integer.

From-SVN: r140502

15 years agore PR tree-optimization/30930 (vector can cause to create an extra variable, DECL_GIM...
Andrew Pinski [Fri, 19 Sep 2008 22:24:06 +0000 (22:24 +0000)]
re PR tree-optimization/30930 (vector can cause to create an extra variable, DECL_GIMPLE_REG_P not recomputed)

2008-09-19  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR tree-opt/30930
        * tree-ssa.c (execute_update_addresses_taken): Also update
        DECL_GIMPLE_REG_P for vector and complex types.

2008-09-19  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR tree-opt/30930
        * gcc.dg/tree-ssa/vector-2.c: New test.
        * gcc.dg/tree-ssa/vector-3.c: New test.

From-SVN: r140501

15 years agoFix typo s/darwin/bsd
Andreas Tobler [Fri, 19 Sep 2008 20:28:53 +0000 (22:28 +0200)]
Fix typo s/darwin/bsd

From-SVN: r140498

15 years agoproc.c: New file.
Jakub Jelinek [Fri, 19 Sep 2008 20:27:11 +0000 (22:27 +0200)]
proc.c: New file.

2008-09-19  Jakub Jelinek  <jakub@redhat.com>
    Andreas Tobler  <a.tobler@schweiz.org>

* config/bsd/proc.c: New file.
* configure.tgt (*-*-darwin*): Use config_path "darwin posix".
* configure.ac: Check for header <sys/sysctl.h>
* configure: Regenerate.
* config.h.in: Likewise.

Co-Authored-By: Andreas Tobler <a.tobler@schweiz.org>
From-SVN: r140497

15 years agore PR middle-end/37567 (tree SSA to normal checking takes abnormally long time)
Andrew MacLeod [Fri, 19 Sep 2008 17:37:13 +0000 (17:37 +0000)]
re PR middle-end/37567 (tree SSA to normal checking takes abnormally long time)

PR middle-end/37567
* tree-ssa-ter.c (free_temp_expr_table): Make sure fields are actually
empty before freeing them.
(find_replaceable_exprs): Move asserts to free_temp_expr_table.

Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r140494

15 years agore PR libstdc++/37470 (parallel/base.h log2 conflicts with math.h)
Johannes Singler [Fri, 19 Sep 2008 11:37:16 +0000 (11:37 +0000)]
re PR libstdc++/37470 (parallel/base.h log2 conflicts with math.h)

2008-09-19  Johannes Singler  <singler@ira.uka.de>

        PR libstdc++/37470
        * include/parallel/base.h: Rename log2 to __log2.
          (__log2) Avoid infinite loop for n <= 0, return 0.
        * include/parallel/losertree.h: Rename log2 to __log2.
        * include/parallel/multiseq_selection.h: Likewise.
        * include/parallel/random_shuffle.h: Likewise.

From-SVN: r140490

15 years agoconfigure.ac: Add HAVE_AS_TLS check for Xtensa.
Bob Wilson [Fri, 19 Sep 2008 00:18:42 +0000 (00:18 +0000)]
configure.ac: Add HAVE_AS_TLS check for Xtensa.

* configure.ac: Add HAVE_AS_TLS check for Xtensa.
* config/xtensa/predicates.md (tls_symbol_operand): New.
* config/xtensa/xtensa.c (TARGET_HAVE_TLS): Define.
(TARGET_CANNOT_FORCE_MEM): Define.
(xtensa_tls_symbol_p): New.
(xtensa_emit_move_sequence): Check for and legitimize TLS addresses.
(xtensa_legitimate_address_p): Disallow constant pool TLS references.
(xtensa_tls_module_base): New.
(xtensa_call_tls_desc): New.
(xtensa_legitimize_tls_address): New.
(xtensa_legitimize_address): Handle TLS symbols.
(xtensa_tls_referenced_p_1): New.
(xtensa_tls_referenced_p): New.
(xtensa_output_addr_const_extra): Handle UNSPEC_TPOFF and UNSPEC_DTPOFF.
(XTENSA_BUILTIN_THREAD_POINTER): New.
(XTENSA_BUILTIN_SET_THREAD_POINTER): New.
(xtensa_init_builtins): Set NOTHROW and READONLY for umulsidi3 builtin.
Add declarations for __builtin_thread_pointer and
__builtin_set_thread_pointer.
(xtensa_fold_builtin): Recognize new builtins.
(xtensa_expand_builtin): Expand new builtins.
* config/xtensa/xtensa.h (XCHAL_HAVE_THREADPTR): Define default value.
(TARGET_THREADPTR): Define.
(HAVE_AS_TLS): Define default value.
(LEGITIMATE_CONSTANT_P): Disallow TLS references.
* config/xtensa/xtensa.md (UNSPEC_TPOFF, UNSPEC_DTPOFF): New.
(UNSPEC_TLS_FUNC, UNSPEC_TLS_ARG, UNSPEC_TLS_CALL, UNSPEC_TP): New.
(UNSPECV_SET_TP): New.
(sym_TPOFF, sym_DTPOFF): New.
(load_tp, set_tp, tls_func, tls_arg, tls_call): New.
* config/xtensa/xtensa-protos.h (xtensa_tls_referenced_p): Declare.
* configure: Regenerated.

From-SVN: r140482

15 years agoDaily bump.
GCC Administrator [Fri, 19 Sep 2008 00:16:37 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r140480

15 years agopr11832.c: xfail on xtensa*-*-*.
Bob Wilson [Fri, 19 Sep 2008 00:16:04 +0000 (00:16 +0000)]
pr11832.c: xfail on xtensa*-*-*.

* gcc.c-torture/compile/pr11832.c: xfail on xtensa*-*-*.
* gcc.c-torture/compile/pr33009.c: Likewise.

From-SVN: r140477

15 years agore PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
Janis Johnson [Thu, 18 Sep 2008 22:29:39 +0000 (22:29 +0000)]
re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)

PR testsuite/25241
* lib/g++.exp (g++_init): Enable overrides of dg-error, dg-warning
for C++ tests.
* g++.dg/conversion/ambig1.C: Clean up dg-error/dg-warning; use
dg-message for notes.
* g++.dg/conversion/simd1.C: Ditto.
* g++.dg/conversion/simd3.C: Ditto.
* g++.dg/cpp0x/rv2n.C: Ditto.
* g++.dg/cpp0x/rv3n.C: Ditto.
* g++.dg/cpp0x/rv4n.C: Ditto.
* g++.dg/cpp0x/rv5n.C: Ditto.
* g++.dg/cpp0x/rv6n.C: Ditto.
* g++.dg/cpp0x/rv7n.C: Ditto.
* g++.dg/cpp0x/variadic36.C: Ditto.
* g++.dg/cpp0x/variadic59.C: Ditto.
* g++.dg/cpp0x/variadic71.C: Ditto.
* g++.dg/cpp0x/variadic-ex13.C: Ditto.
* g++.dg/expr/cond9.C: Ditto.
* g++.dg/expr/pmf-1.C: Ditto.
* g++.dg/ext/case-range2.C: Ditto.
* g++.dg/ext/case-range3.C: Ditto.
* g++.dg/ext/is_class_error2.C: Ditto.
* g++.dg/ext/label5.C: Ditto.
* g++.dg/ext/pr27019.C: Ditto.
* g++.dg/gomp/pr26690-1.C: Ditto.
* g++.dg/gomp/pr26690-2.C: Ditto.
* g++.dg/gomp/pr34694.C: Ditto.
* g++.dg/gomp/tpl-parallel-2.C: Ditto.
* g++.dg/inherit/base3.C: Ditto.
* g++.dg/inherit/using6.C: Ditto.
* g++.dg/init/brace6.C: Ditto.
* g++.dg/init/ctor4.C: Ditto.
* g++.dg/lookup/conv-1.C: Ditto.
* g++.dg/lookup/new1.C: Ditto.
* g++.dg/lookup/scoped6.C: Ditto.
* g++.dg/lookup/using7.C: Ditto.
* g++.dg/lookup/using9.C: Ditto.
* g++.dg/other/abstract1.C: Ditto.
* g++.dg/other/abstract2.C: Ditto.
* g++.dg/other/anon5.C: Ditto.
* g++.dg/other/crash-4.C: Ditto.
* g++.dg/other/error10.C: Ditto.
* g++.dg/other/error13.C: Ditto.
* g++.dg/other/error20.C: Ditto.
* g++.dg/other/error5.C: Ditto.
* g++.dg/other/field1.C: Ditto.
* g++.dg/other/offsetof5.C: Ditto.
* g++.dg/other/semicolon.C: Ditto.
* g++.dg/overload/ambig1.C: Ditto.
* g++.dg/overload/arg3.C: Ditto.
* g++.dg/overload/builtin1.C: Ditto.
* g++.dg/overload/copy1.C: Ditto.
* g++.dg/overload/new1.C: Ditto.
* g++.dg/overload/template4.C: Ditto.
* g++.dg/overload/using2.C: Ditto.
* g++.dg/parse/bitfield2.C: Ditto.
* g++.dg/parse/constant4.C: Ditto.
* g++.dg/parse/crash20.C: Ditto.
* g++.dg/parse/crash36.C: Ditto.
* g++.dg/parse/crash5.C: Ditto.
* g++.dg/parse/error11.C: Ditto.
* g++.dg/parse/error12.C: Ditto.
* g++.dg/parse/error19.C: Ditto.
* g++.dg/parse/error28.C: Ditto.
* g++.dg/parse/friend5.C: Ditto.
* g++.dg/parse/invalid-op1.C: Ditto.
* g++.dg/parse/missing-template1.C: Ditto.
* g++.dg/parse/non-dependent2.C: Ditto.
* g++.dg/parse/ret-type2.C: Ditto.
* g++.dg/parse/specialization1.C: Ditto.
* g++.dg/parse/template18.C: Ditto.
* g++.dg/parse/template3.C: Ditto.
* g++.dg/parse/template9.C: Ditto.
* g++.dg/tc1/dr108.C: Ditto.
* g++.dg/tc1/dr152.C: Ditto.
* g++.dg/tc1/dr166.C: Ditto.
* g++.dg/template/access11.C: Ditto.
* g++.dg/template/access2.C: Ditto.
* g++.dg/template/access3.C: Ditto.
* g++.dg/template/access7.C: Ditto.
* g++.dg/template/copy1.C: Ditto.
* g++.dg/template/crash13.C: Ditto.
* g++.dg/template/crash37.C: Ditto.
* g++.dg/template/crash40.C: Ditto.
* g++.dg/template/crash58.C: Ditto.
* g++.dg/template/ctor5.C: Ditto.
* g++.dg/template/dependent-expr5.C: Ditto.
* g++.dg/template/eh2.C: Ditto.
* g++.dg/template/error2.C: Ditto.
* g++.dg/template/error33.C: Ditto.
* g++.dg/template/error4.C: Ditto.
* g++.dg/template/friend31.C: Ditto.
* g++.dg/template/friend32.C: Ditto.
* g++.dg/template/instantiate1.C: Ditto.
* g++.dg/template/instantiate3.C: Ditto.
* g++.dg/template/instantiate5.C: Ditto.
* g++.dg/template/instantiate7.C: Ditto.
* g++.dg/template/local6.C: Ditto.
* g++.dg/template/lookup2.C: Ditto.
* g++.dg/template/member5.C: Ditto.
* g++.dg/template/memfriend15.C: Ditto.
* g++.dg/template/memfriend16.C: Ditto.
* g++.dg/template/memfriend17.C: Ditto.
* g++.dg/template/memfriend7.C: Ditto.
* g++.dg/template/meminit1.C: Ditto.
* g++.dg/template/nested3.C: Ditto.
* g++.dg/template/new3.C: Ditto.
* g++.dg/template/nontype12.C: Ditto.
* g++.dg/template/nontype13.C: Ditto.
* g++.dg/template/nontype6.C: Ditto.
* g++.dg/template/non-type-template-argument-1.C: Ditto.
* g++.dg/template/overload9.C: Ditto.
* g++.dg/template/ptrmem15.C: Ditto.
* g++.dg/template/ptrmem17.C: Ditto.
* g++.dg/template/ptrmem4.C: Ditto.
* g++.dg/template/ptrmem6.C: Ditto.
* g++.dg/template/ptrmem8.C: Ditto.
* g++.dg/template/qualified-id1.C: Ditto.
* g++.dg/template/qualttp20.C: Ditto.
* g++.dg/template/qualttp3.C: Ditto.
* g++.dg/template/qualttp4.C: Ditto.
* g++.dg/template/qualttp5.C: Ditto.
* g++.dg/template/qualttp6.C: Ditto.
* g++.dg/template/qualttp7.C: Ditto.
* g++.dg/template/qualttp8.C: Ditto.
* g++.dg/template/recurse.C: Ditto.
* g++.dg/template/sfinae10.C: Ditto.
* g++.dg/template/sfinae3.C: Ditto.
* g++.dg/template/spec22.C: Ditto.
* g++.dg/template/spec23.C: Ditto.
* g++.dg/template/static9.C: Ditto.
* g++.dg/template/template-id-2.C: Ditto.
* g++.dg/template/typename2.C: Ditto.
* g++.dg/template/typename4.C: Ditto.
* g++.dg/template/using14.C: Ditto.
* g++.dg/template/using2.C: Ditto.
* g++.dg/template/warn1.C: Ditto.
* g++.dg/warn/incomplete1.C: Ditto.
* g++.dg/warn/noeffect2.C: Ditto.
* g++.dg/warn/noeffect4.C: Ditto.
* g++.dg/warn/pr8570.C: Ditto.
* g++.dg/warn/Wparentheses-13.C: Ditto.
* g++.dg/warn/Wparentheses-15.C: Ditto.
* g++.dg/warn/Wparentheses-16.C: Ditto.
* g++.dg/warn/Wparentheses-17.C: Ditto.
* g++.dg/warn/Wparentheses-18.C: Ditto.
* g++.dg/warn/Wparentheses-19.C: Ditto.
* g++.dg/warn/Wparentheses-20.C: Ditto.
* g++.dg/warn/Wparentheses-23.C: Ditto.
* g++.dg/warn/Wstrict-aliasing-3.C: Ditto.
* g++.old-deja/g++.benjamin/15799.C: Ditto.
* g++.old-deja/g++.benjamin/15800-1.C: Ditto.
* g++.old-deja/g++.benjamin/16077.C: Ditto.
* g++.old-deja/g++.bob/inherit2.C: Ditto.
* g++.old-deja/g++.brendan/ambiguity1.C: Ditto.
* g++.old-deja/g++.brendan/crash29.C: Ditto.
* g++.old-deja/g++.brendan/crash48.C: Ditto.
* g++.old-deja/g++.brendan/crash56.C: Ditto.
* g++.old-deja/g++.brendan/cvt3.C: Ditto.
* g++.old-deja/g++.brendan/overload1.C: Ditto.
* g++.old-deja/g++.brendan/overload4.C: Ditto.
* g++.old-deja/g++.brendan/overload9.C: Ditto.
* g++.old-deja/g++.bugs/900127_01.C: Ditto.
* g++.old-deja/g++.bugs/900205_04.C: Ditto.
* g++.old-deja/g++.bugs/900330_02.C: Ditto.
* g++.old-deja/g++.bugs/900404_03.C: Ditto.
* g++.old-deja/g++.bugs/900514_03.C: Ditto.
* g++.old-deja/g++.eh/ctor1.C: Ditto.
* g++.old-deja/g++.eh/spec6.C: Ditto.
* g++.old-deja/g++.ext/overload1.C: Ditto.
* g++.old-deja/g++.jason/conversion11.C: Ditto.
* g++.old-deja/g++.jason/crash3.C: Ditto.
* g++.old-deja/g++.jason/lineno3.C: Ditto.
* g++.old-deja/g++.jason/lineno4.C: Ditto.
* g++.old-deja/g++.jason/opeq3.C: Ditto.
* g++.old-deja/g++.jason/overload16.C: Ditto.
* g++.old-deja/g++.jason/overload28.C: Ditto.
* g++.old-deja/g++.jason/pmf5.C: Ditto.
* g++.old-deja/g++.jason/scoping10.C: Ditto.
* g++.old-deja/g++.jason/template30.C: Ditto.
* g++.old-deja/g++.jason/temporary2.C: Ditto.
* g++.old-deja/g++.jason/tredecl4.C: Ditto.
* g++.old-deja/g++.law/arg11.C: Ditto.
* g++.old-deja/g++.law/arg1.C: Ditto.
* g++.old-deja/g++.law/arm9.C: Ditto.
* g++.old-deja/g++.law/ctors11.C: Ditto.
* g++.old-deja/g++.law/ctors17.C: Ditto.
* g++.old-deja/g++.law/ctors5.C: Ditto.
* g++.old-deja/g++.law/ctors9.C: Ditto.
* g++.old-deja/g++.law/enum4.C: Ditto.
* g++.old-deja/g++.law/missed-error2.C: Ditto.
* g++.old-deja/g++.law/operators9.C: Ditto.
* g++.old-deja/g++.mike/net22.C: Ditto.
* g++.old-deja/g++.mike/net2.C: Ditto.
* g++.old-deja/g++.mike/p11110.C: Ditto.
* g++.old-deja/g++.mike/p1989.C: Ditto.
* g++.old-deja/g++.mike/p2431.C: Ditto.
* g++.old-deja/g++.mike/p438.C: Ditto.
* g++.old-deja/g++.mike/p807a.C: Ditto.
* g++.old-deja/g++.mike/p9068.C: Ditto.
* g++.old-deja/g++.niklas/t120.C: Ditto.
* g++.old-deja/g++.niklas/t121.C: Ditto.
* g++.old-deja/g++.niklas/t128.C: Ditto.
* g++.old-deja/g++.ns/overload2.C: Ditto.
* g++.old-deja/g++.ns/template13.C: Ditto.
* g++.old-deja/g++.ns/using12.C: Ditto.
* g++.old-deja/g++.oliva/delete1.C: Ditto.
* g++.old-deja/g++.oliva/overload1.C: Ditto.
* g++.old-deja/g++.other/crash24.C: Ditto.
* g++.old-deja/g++.other/crash25.C: Ditto.
* g++.old-deja/g++.other/decl3.C: Ditto.
* g++.old-deja/g++.other/expr1.C: Ditto.
* g++.old-deja/g++.other/overcnv2.C: Ditto.
* g++.old-deja/g++.other/overload11.C: Ditto.
* g++.old-deja/g++.other/pmf3.C: Ditto.
* g++.old-deja/g++.other/ptrmem7.C: Ditto.
* g++.old-deja/g++.other/vaarg3.C: Ditto.
* g++.old-deja/g++.other/volatile1.C: Ditto.
* g++.old-deja/g++.pt/assign1.C: Ditto.
* g++.old-deja/g++.pt/auto_ptr.C: Ditto.
* g++.old-deja/g++.pt/const2.C: Ditto.
* g++.old-deja/g++.pt/crash10.C: Ditto.
* g++.old-deja/g++.pt/crash20.C: Ditto.
* g++.old-deja/g++.pt/crash36.C: Ditto.
* g++.old-deja/g++.pt/crash38.C: Ditto.
* g++.old-deja/g++.pt/derived3.C: Ditto.
* g++.old-deja/g++.pt/error2.C: Ditto.
* g++.old-deja/g++.pt/explicit34.C: Ditto.
* g++.old-deja/g++.pt/explicit70.C: Ditto.
* g++.old-deja/g++.pt/friend23.C: Ditto.
* g++.old-deja/g++.pt/ptrmem10.C: Ditto.
* g++.old-deja/g++.pt/redecl1.C: Ditto.
* g++.old-deja/g++.pt/spec35.C: Ditto.
* g++.old-deja/g++.pt/t05.C: Ditto.
* g++.old-deja/g++.pt/typename3.C: Ditto.
* g++.old-deja/g++.pt/typename6.C: Ditto.
* g++.old-deja/g++.pt/unify8.C: Ditto.
* g++.old-deja/g++.pt/vaarg3.C: Ditto.
* g++.old-deja/g++.robertl/eb109.C: Ditto.
* g++.old-deja/g++.robertl/eb131.C: Ditto.
* g++.old-deja/g++.robertl/eb22.C: Ditto.
* g++.old-deja/g++.robertl/eb44.C: Ditto.
* g++.old-deja/g++.robertl/eb4.C: Ditto.
* g++.old-deja/g++.robertl/eb69.C: Ditto.
* g++.dg/parse/constructor1.C: Remove "error" from dg-error, preserving
column number.
* g++.dg/parse/error10.C: Ditto.
* g++.dg/parse/error13.C: Ditto.
* g++.dg/parse/error14.C: Ditto.
* g++.dg/parse/error15.C: Ditto.
* g++.dg/parse/error16.C: Ditto.
* g++.dg/parse/error17.C: Ditto.
* g++.dg/parse/error18.C: Ditto.
* g++.dg/parse/error1.C: Ditto.
* g++.dg/parse/error20.C: Ditto.
* g++.dg/parse/error21.C: Ditto.
* g++.dg/parse/error22.C: Ditto.
* g++.dg/parse/error23.C: Ditto.
* g++.dg/parse/error24.C: Ditto.
* g++.dg/parse/error25.C: Ditto.
* g++.dg/parse/error26.C: Ditto.
* g++.dg/parse/error27.C: Ditto.
* g++.dg/parse/error29.C: Ditto.
* g++.dg/parse/error2.C: Ditto.
* g++.dg/parse/error30.C: Ditto.
* g++.dg/parse/error31.C: Ditto.
* g++.dg/parse/error3.C: Ditto.
* g++.dg/parse/error4.C: Ditto.
* g++.dg/parse/error5.C: Ditto.
* g++.dg/parse/error6.C: Ditto.
* g++.dg/parse/error7.C: Ditto.
* g++.dg/parse/error8.C: Ditto.
* g++.dg/parse/error9.C: Ditto.
* g++.dg/parse/error-column.C: Ditto.
* g++.dg/template/crash80.C: Ditto.
* g++.dg/template/friend44.C: Ditto.
* g++.dg/warn/pr26785.C: Ditto.
* g++.old-deja/g++.brendan/crash16.C: Ditto.

From-SVN: r140476

15 years agore PR target/37394 (Segfault in ia64_variable_issue with -O -fschedule-insns2)
H.J. Lu [Thu, 18 Sep 2008 20:27:36 +0000 (13:27 -0700)]
re PR target/37394 (Segfault in ia64_variable_issue with -O -fschedule-insns2)

gcc/

2008-09-18  H.J. Lu  <hongjiu.lu@intel.com>

PR target/37394
* config/ia64/ia64.c (ia64_optimization_options): Move
checking and setting flag_schedule_insns_after_reload and
ia64_flag_schedule_insns2 back to ...
(ia64_override_options): Here.

gcc/testsuite/

2008-09-18  H.J. Lu  <hongjiu.lu@intel.com>

PR target/37394
* g++.dg/other/pr37394.C: New.

From-SVN: r140475

15 years agore PR fortran/35945 (Complex module-based overloading fails)
Paul Thomas [Thu, 18 Sep 2008 20:21:03 +0000 (20:21 +0000)]
re PR fortran/35945 (Complex module-based overloading fails)

2008-09-18  Paul Thomas  <pault@gcc.gnu.org>

       PR fortran/35945
       * resolve.c (resolve_fl_variable_derived):  Remove derived type
       comparison for use associated derived types.  Host association
       of a derived type will not arise if there is a local derived type
       whose use name is the same.

       PR fortran/36700
       * match.c (gfc_match_call):  Use the existing symbol even if
       it is a function.

2008-09-18  Paul Thomas  <pault@gcc.gnu.org>

       PR fortran/35945
       * gfortran.dg/host_assoc_types_2.f90: New test.

       PR fortran/36700
       * gfortran.dg/host_assoc_call_2.f90: New test.

From-SVN: r140474

15 years ago* gcc.c-torture/execute/20060420-1.c: Fix alignment logic.
DJ Delorie [Thu, 18 Sep 2008 20:12:14 +0000 (16:12 -0400)]
* gcc.c-torture/execute/20060420-1.c: Fix alignment logic.

From-SVN: r140473

15 years agoutils.c (create_subprog_decl): Use DECL_DECLARED_INLINE_P.
Jan Hubicka [Thu, 18 Sep 2008 20:08:13 +0000 (22:08 +0200)]
utils.c (create_subprog_decl): Use DECL_DECLARED_INLINE_P.

* gcc-interface/utils.c (create_subprog_decl): Use DECL_DECLARED_INLINE_P.
(end_subprog_body): Do not set DECL_INLINE.

From-SVN: r140472

15 years agore PR rtl-optimization/37451 (Extra addition for doloop in some cases)
Andrew Pinski [Thu, 18 Sep 2008 19:28:48 +0000 (19:28 +0000)]
re PR rtl-optimization/37451 (Extra addition for doloop in some cases)

2008-09-18  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR rtl-opt/37451
        * loop-doloop.c (doloop_modify): New argument zero_extend_p and
        zero extend count after the correction to it is done.
        (doloop_optimize): Update call to doloop_modify, don't zero extend
        count before call.

From-SVN: r140470

15 years agoshared_ptr.h (__shared_count<>:: __shared_count(_Ptr, _Deleter), [...]): Qualify...
Paolo Carlini [Thu, 18 Sep 2008 18:55:55 +0000 (18:55 +0000)]
shared_ptr.h (__shared_count<>:: __shared_count(_Ptr, _Deleter), [...]): Qualify new with ::.

2008-09-18  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/shared_ptr.h (__shared_count<>::
__shared_count(_Ptr, _Deleter), __shared_count<>::
__shared_count(_Ptr, _Deleter, _Alloc), __shared_count<>::
__shared_count(_Sp_make_shared_tag, _Tp*, _Alloc, _Args&&...)):
Qualify new with ::.

From-SVN: r140469

15 years agore PR middle-end/37448 (cannot compile big function)
Jan Hubicka [Thu, 18 Sep 2008 18:16:45 +0000 (18:16 +0000)]
re PR middle-end/37448 (cannot compile big function)

PR middle-end/37448
* ipa-reference.c (ipa_reference_local_vars_info_d,
ipa_reference_global_vars_info_d,
ipa_reference_local_vars_info_t, ipa_reference_global_vars_info_t,
ipa_reference_vars_info_t): Move here from ipa-reference.h
(node_duplication_hook_holder, node_removal_hook_holder): New.
(get_reference_vars_info_from_cgraph): Rename to ...
(get_reference_vars_info): ... this one, use cgraph uids.
(get_local_reference_vars_info, get_global_reference_vars_info):
Use cgraph instead of decl.
(ipa_reference_get_read_local, ipa_reference_get_written_local): Remove.
(ipa_reference_get_read_global, ipa_reference_get_not_read_global
ipa_reference_get_written_global, ipa_reference_get_not_written_global): Use
cgraph argument.
(check_call): Simplify avail check.
(scan_stmt_for_static_refs): Update.
(propagate_bits): Update.
(merge_callee_local_info): Remove.
(init_function_info): Use cgraph nodes.
(clean_function_local_data): Break out from ...
(clean_function): ... here.
(copy_local_bitmap, copy_global_bitmap): New functions.
(duplicate_node_data, remove_node_data): New functions.
(generate_summary): Register hooks; use visibility instead of
master clones.
(propafate): Use cgraph nodes; copy bitmap to each node in cycle.
* ipa-reference.h (ipa_reference_local_vars_info_d,
ipa_reference_global_vars_info_d,
ipa_reference_local_vars_info_t, ipa_reference_global_vars_info_t,
ipa_reference_vars_info_t): Move to ipa-reference.c
(ipa_reference_get_read_local, ipa_reference_get_written_local):
Remove.
(ipa_reference_get_read_global, ipa_reference_get_written_global,
ipa_reference_get_not_read_global, ipa_reference_get_not_written_global):
Update prototype.
* ipa-pure-const.c (funct_state_vec): Turn into VECtor.
(init_state): Remove.
(node_duplication_hook_holder, node_removal_hook_holder): New.
(get_function_state, set_function_state): Use VECtor.
(analyze_function): Check body availability.
(add_new_function): Likewise.
(duplicate_node_data, remove_node_data): New.
(generate_summary): Register hooks; do not care about clones.
(propafate): Do not care about clones; recursive functions are not looping.
* ipa-utils.c (searchc, ipa_utils_reduced_inorder): Do not skip clones.
* ipa-prop.c (edge_removal_hook_holder, node_removal_hook_holder,
* edge_duplication_hook_holder, node_duplication_hook_holder): Make
static.
* tree-flow.h (function_ann_d): Remove reference_vars_info.
* tree-ssa-opreands.c (add_call_clobber_ops, add_call_read_ops): Update call of
ipa-reference accesors.

From-SVN: r140465

15 years agoipa-cp.c (ipcp_estimate_growth): Return 0 instead of false.
Martin Jambor [Thu, 18 Sep 2008 17:57:05 +0000 (19:57 +0200)]
ipa-cp.c (ipcp_estimate_growth): Return 0 instead of false.

2008-09-18  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (ipcp_estimate_growth): Return 0 instead of false.

* ipa-prop.c: Correct comments.
* ipa-prop.h: Likewise.

From-SVN: r140464

15 years agore PR middle-end/37448 (cannot compile big function)
Jan Hubicka [Thu, 18 Sep 2008 17:28:40 +0000 (19:28 +0200)]
re PR middle-end/37448 (cannot compile big function)

PR middle-end/37448
* ipa-reference.c (ipa_reference_local_vars_info_d,
ipa_reference_global_vars_info_d,
ipa_reference_local_vars_info_t, ipa_reference_global_vars_info_t,
ipa_reference_vars_info_t): Move here from ipa-reference.h
(node_duplication_hook_holder, node_removal_hook_holder): New.
(get_reference_vars_info_from_cgraph): Rename to ...
(get_reference_vars_info): ... this one, use cgraph uids.
(get_local_reference_vars_info, get_global_reference_vars_info):
Use cgraph instead of decl.
(ipa_reference_get_read_local, ipa_reference_get_written_local): Remove.
(ipa_reference_get_read_global, ipa_reference_get_not_read_global
ipa_reference_get_written_global, ipa_reference_get_not_written_global): Use
cgraph argument.
(check_call): Simplify avail check.
(scan_stmt_for_static_refs): Update.
(propagate_bits): Update.
(merge_callee_local_info): Remove.
(init_function_info): Use cgraph nodes.
(clean_function_local_data): Break out from ...
(clean_function): ... here.
(copy_local_bitmap, copy_global_bitmap): New functions.
(duplicate_node_data, remove_node_data): New functions.
(generate_summary): Register hooks; use visibility instead of
master clones.
(propafate): Use cgraph nodes; copy bitmap to each node in cycle.
* ipa-reference.h (ipa_reference_local_vars_info_d,
ipa_reference_global_vars_info_d,
ipa_reference_local_vars_info_t, ipa_reference_global_vars_info_t,
ipa_reference_vars_info_t): Move to ipa-reference.c
(ipa_reference_get_read_local, ipa_reference_get_written_local):
Remove.
(ipa_reference_get_read_global, ipa_reference_get_written_global,
ipa_reference_get_not_read_global, ipa_reference_get_not_written_global):
Update prototype.
* ipa-pure-const.c (funct_state_vec): Turn into VECtor.
(init_state): Remove.
(node_duplication_hook_holder, node_removal_hook_holder): New.
(get_function_state, set_function_state): Use VECtor.
(analyze_function): Check body availability.
(add_new_function): Likewise.
(duplicate_node_data, remove_node_data): New.
(generate_summary): Register hooks; do not care about clones.
(propafate): Do not care about clones; recursive functions are not looping.
* ipa-utils.c (searchc, ipa_utils_reduced_inorder): Do not skip clones.
* ipa-prop.c (edge_removal_hook_holder, node_removal_hook_holder,
* edge_duplication_hook_holder, node_duplication_hook_holder): Make
static.
* tree-flow.h (function_ann_d): Remove reference_vars_info.
* tree-ssa-opreands.c (add_call_clobber_ops, add_call_read_ops): Update call of
ipa-reference accesors.

From-SVN: r140463

15 years ago* MAINTAINERS: Add myself as ia64 maintainer.
Steve Ellcey [Thu, 18 Sep 2008 16:24:37 +0000 (16:24 +0000)]
* MAINTAINERS: Add myself as ia64 maintainer.

From-SVN: r140462

15 years agocpplib.h (struct cpp_options): Add new boolean flag warn_builtin_macro_redefined.
Simon Baldwin [Thu, 18 Sep 2008 15:39:08 +0000 (15:39 +0000)]
cpplib.h (struct cpp_options): Add new boolean flag warn_builtin_macro_redefined.

* include/cpplib.h (struct cpp_options): Add new boolean flag
warn_builtin_macro_redefined.
* init.c (cpp_create_reader): Initialize warn_builtin_macro_redefined.
* (struct builtin_operator): Split out from previous struct builtin,
enhance extra const correctness.
* (struct builtin_macro): Split out from previous struct builtin, add
new always_warn_if_redefined flag, enhance const correctness.
* (mark_named_operators): Use struct builtin_operator.
* (cpp_init_special_builtins): Use struct builtin_macro, add NODE_WARN
to builtins selectively.
* macro.c (warn_of_redefinition): Return false if a builtin macro
is not flagged with NODE_WARN.

* c-opts.c (c_common_handle_option): Add handling for
-Wbuiltin-macro-redefined command line option.
* c.opt: Added builtin-macro-redefined option.
* doc/invoke.texi (Warning Options): Add -Wbuiltin-macro-redefined
documentation.

* gcc.dg/builtin-redefine.c: New.

From-SVN: r140461

15 years agore PR tree-optimization/37258 (ice in simplify_subreg, at simplify-rtx.c:4957)
Richard Guenther [Thu, 18 Sep 2008 15:27:21 +0000 (15:27 +0000)]
re PR tree-optimization/37258 (ice in simplify_subreg, at simplify-rtx.c:4957)

2008-09-18  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/37258
* tree-ssa-sccvn.c (vn_phi_compute_hash): Include the precision
and signedness for integral types.
(vn_phi_eq): Require compatible types.

* gcc.c-torture/compile/pr37258.c: New testcase.

From-SVN: r140460

15 years agore PR debug/34037 (Bounds for VLAs not emitted into debuginfo)
Jakub Jelinek [Thu, 18 Sep 2008 15:17:10 +0000 (17:17 +0200)]
re PR debug/34037 (Bounds for VLAs not emitted into debuginfo)

PR debug/34037
* gimplify.c (gimplify_type_sizes): When not optimizing, ensure
TYPE_MIN_VALUE and TYPE_MAX_VALUE is not is not DECL_IGNORED_P
VAR_DECL.
* cfgexpand.c (expand_used_vars): Keep DECL_ARTIFICIAL
!DECL_IGNORED_P vars in local_decls list for instantiate_decls,
ggc_free other TREE_LIST nodes from that chain.
* function.c (instantiate_decls): Instantiate also DECL_RTL
of vars in cfun->local_decls, free that list afterwards.

From-SVN: r140459

15 years agosol2.h (WIDEST_HARDWARE_FP_SIZE): Move to...
Eric Botcazou [Thu, 18 Sep 2008 14:25:39 +0000 (14:25 +0000)]
sol2.h (WIDEST_HARDWARE_FP_SIZE): Move to...

* config/sparc/sol2.h (WIDEST_HARDWARE_FP_SIZE): Move to...
* config/sparc/sparc.h (WIDEST_HARDWARE_FP_SIZE): ...here.

From-SVN: r140458

15 years agoFix comments and formatrting
Andrew MacLeod [Thu, 18 Sep 2008 14:13:54 +0000 (14:13 +0000)]
Fix comments and formatrting

From-SVN: r140457

15 years agoCorrect the formatting
Andrew Macleod [Thu, 18 Sep 2008 14:07:35 +0000 (14:07 +0000)]
Correct the formatting

From-SVN: r140456

15 years agofix PR 37102 by having out of ssa remove dead PHI nodes.
Andrew MacLeod [Thu, 18 Sep 2008 13:58:55 +0000 (13:58 +0000)]
fix PR 37102 by having out of ssa remove dead PHI nodes.

From-SVN: r140455

15 years agore PR middle-end/37284 (ICE on valid code with -fstrict-aliasing)
Richard Guenther [Thu, 18 Sep 2008 12:52:31 +0000 (12:52 +0000)]
re PR middle-end/37284 (ICE on valid code with -fstrict-aliasing)

2008-09-18  Richard Guenther  <rguenther@suse.de>

PR middle-end/37284
* tree-cfg.c (remove_useless_stmts_1): Remove
GIMPLE_CHANGE_DYNAMIC_TYPE if not optimizing.

* g++.dg/tree-ssa/pr37284.C: New testcase.

From-SVN: r140453

15 years agofrv.h (IRA_COVER_CLASSES): Define.
Nick Clifton [Thu, 18 Sep 2008 12:04:46 +0000 (12:04 +0000)]
frv.h (IRA_COVER_CLASSES): Define.

* config/frv/frv.h (IRA_COVER_CLASSES): Define.
  (SECONDARY_INPUT_RELOAD_CLASS): Omit unused argument in call
  to frv_secondary_reload_class.
  (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.
  * config/frv/frv.c (TARGET_SECONDARY_RELOAD): Define.
  (frv_secondary_reload_class): Omit unused parameter.
  (frv_secondary_reload): New function.  Handle the case when
  secondary_reload_class() is called before the reload_(in|out)
  _optabs have been initialised.
  * config/frv/frv-protos.h (frv_secondary_reload_class): Omit
  unused parameter.
  * config/frv/frv.md: Define an exclusion set between fr550_m0
  and fr550_f0.

From-SVN: r140452

15 years agore PR fortran/37507 (Print location in (DE)ALLOCATION errors)
Daniel Kraft [Thu, 18 Sep 2008 12:02:50 +0000 (14:02 +0200)]
re PR fortran/37507 (Print location in (DE)ALLOCATION errors)

2008-09-18  Daniel Kraft  <d@domob.eu>

PR fortran/37507
* trans.h (gfc_trans_runtime_error): New method.
(gfc_trans_runtime_error_vararg): New method.
(gfc_allocate_array_with_status): New argument `expr' for locus/varname.
(gfc_deallocate_array_with_status): Ditto.
* trans-array.h (gfc_array_deallocate): Ditto.
* trans.c (gfc_trans_runtime_error): New method.
(gfc_trans_runtime_error_vararg): New method, moved parts of the code
from gfc_trans_runtime_check here.
(gfc_trans_runtime_error_check): Moved code partly to new method.
(gfc_call_malloc): Fix tab-indentation.
(gfc_allocate_array_with_status): New argument `expr' and call
gfc_trans_runtime_error for error reporting to include locus.
(gfc_deallocate_with_status): Ditto.
* trans-stmt.c (gfc_trans_deallocate): Pass expr as new argument.
* trans-array.c (gfc_array_allocate): Ditto.
(gfc_array_deallocate): New argument `expr', passed on.
(gfc_trans_dealloc_allocated): Pass NULL for expr.
* trans-openmp.c (gfc_omp_clause_default): Ditto.

2008-09-18  Daniel Kraft  <d@domob.eu>

PR fortran/37507
* gfortran.dg/allocate_error_1.f90: New test.
* gfortran.dg/deallocate_error_1.f90: New test.
* gfortran.dg/deallocate_error_2.f90: New test.

From-SVN: r140451

15 years agore PR middle-end/37456 (ICE: verify_flow_info failed: control flow in the middle...
Richard Guenther [Thu, 18 Sep 2008 11:28:18 +0000 (11:28 +0000)]
re PR middle-end/37456 (ICE: verify_flow_info failed: control flow in the middle of basic block)

2008-09-18  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/37456
* tree-ssa-reassoc.c (build_and_add_sum): If the stmt we
want to insert after ends a BB insert on the single fallthru
outgoing edge.

* testsuite/g++.dg/torture/pr37456.C: New testcase.

From-SVN: r140449

15 years agoinvoke.texi: Document -mhard-dfp, -mno-hard-dfp.
Andreas Krebbel [Thu, 18 Sep 2008 11:07:03 +0000 (11:07 +0000)]
invoke.texi: Document -mhard-dfp, -mno-hard-dfp.

2008-09-18  Andreas Krebbel  <krebbel1@de.ibm.com>

* doc/invoke.texi: Document -mhard-dfp, -mno-hard-dfp.
Mention -march=z9-109, z9-ec and z10.

From-SVN: r140447

15 years agore PR rtl-optimization/37544 (Conversion double -> unsigned long long -> unsigned...
Uros Bizjak [Thu, 18 Sep 2008 10:17:42 +0000 (12:17 +0200)]
re PR rtl-optimization/37544 (Conversion double -> unsigned long long -> unsigned -> double gives wrong results)

PR rtl-optimization/37544
* regrename.c (maybe_mode_change): Exit early when copy_mode
is narrower than orig_mode and narrower than new_mode.

testsuite/ChangeLog:

PR rtl-optimization/37544
* gcc.dg/pr37544.c: New test.

From-SVN: r140446

15 years agore PR middle-end/37499 (Scheduling pass 2 time increases by order of magnitude)
Alexander Monakov [Thu, 18 Sep 2008 08:29:48 +0000 (12:29 +0400)]
re PR middle-end/37499 (Scheduling pass 2 time increases by order of magnitude)

2008-09-18  Alexander Monakov  <amonakov@ispras.ru>

PR middle-end/37499
* sched-int.h (struct _haifa_insn_data): Remove unused field
ref_count.

* sched-rgn.c (ref_counts): Remove.
(insn_referenced): New static variable.
(INSN_REF_COUNT): Remove.
(sched_run_compute_dependencies): Use insn_referenced instead of
INSN_REF_COUNT.
(add_branch_dependences): Likewise.  Delete dead assignment.

From-SVN: r140445

15 years agohaifa-sched.c (dep_cost_1): Recognize the producer even if the consumer is an asm.
Adam Nemet [Thu, 18 Sep 2008 05:24:57 +0000 (05:24 +0000)]
haifa-sched.c (dep_cost_1): Recognize the producer even if the consumer is an asm.

* haifa-sched.c (dep_cost_1): Recognize the producer even if the
consumer is an asm.  Add comment why this is important.
(choose_ready): Add comment to the "INSN_CODE (insn) >= 0 ||
recog_memoized (insn) < 0" assert.  Put ENABLE_CHECKING around
it.

From-SVN: r140444

15 years agoexpr.c (emit_group_store): Do not shift before moving via a stack slot.
Joseph Myers [Thu, 18 Sep 2008 01:09:40 +0000 (02:09 +0100)]
expr.c (emit_group_store): Do not shift before moving via a stack slot.

* expr.c (emit_group_store): Do not shift before moving via a
stack slot.

From-SVN: r140442

15 years agoDaily bump.
GCC Administrator [Thu, 18 Sep 2008 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r140440

15 years agore PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
Janis Johnson [Wed, 17 Sep 2008 23:23:11 +0000 (23:23 +0000)]
re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)

PR testsuite/25241
* g++.old-deja/g++.brendan/crash7.C: Remove "error" or "warning" from
message for dg-error/dg-warning.
* g++.old-deja/g++.jason/crash11.C: Ditto.
* g++.old-deja/g++.oliva/template1.C: Ditto.
* g++.old-deja/g++.benjamin/tem03.C: Ditto.
* g++.dg/rtti/no-rtti.C: Ditto.
* g++.dg/cpp/pedantic-errors.C: Ditto.
* g++.dg/cpp/string-2.C: Ditto.
* g++.dg/ext/fpreg1.C: Ditto.
* g++.dg/ext/altivec-types-1.C: Ditto.
* g++.dg/warn/write-strings-default.C: Ditto.
* g++.dg/warn/Wvla-2.C: Ditto.
* g++.dg/warn/register-var-1.C: Ditto.
* g++.dg/warn/deprecated-3.C: Ditto.
* g++.dg/warn/pr30551-2.C: Ditto.
* g++.dg/warn/overflow-warn-1.C: Ditto.
* g++.dg/warn/pr30551.C: Ditto.
* g++.dg/warn/pointer-integer-comparison.C: Ditto.
* g++.dg/warn/pr12242.C: Ditto.
* g++.dg/warn/write-strings.C: Ditto.
* g++.dg/warn/overflow-warn-3.C: Ditto.
* g++.dg/warn/overflow-warn-4.C: Ditto.
* g++.dg/warn/overflow-warn-6.C: Ditto.
* g++.dg/parse/crash43.C: Ditto.
* g++.dg/parse/crash44.C: Ditto.
* g++.dg/parse/offsetof8.C: Ditto.
* g++.dg/gomp/pr35158.C: Ditto.
* g++.dg/template/crash81.C: Ditto.

From-SVN: r140437

15 years agore PR libstdc++/37547 ([c++0x] minmax with initializer_list gives incorrect results)
Paolo Carlini [Wed, 17 Sep 2008 22:58:38 +0000 (22:58 +0000)]
re PR libstdc++/37547 ([c++0x] minmax with initializer_list gives incorrect results)

2008-09-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/37547
* include/bits/stl_algo.h (min(initializer_list<>),
min(initializer_list<>, Compare), max(initializer_list<>),
max(initializer_list<>, Compare), minmax(initializer_list<>),
minmax(initializer_list<>, Compare)): Fix return type.
* include/bits/algorithmfwd.h: Adjust.
* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
* testsuite/25_algorithms/max/requirements/explicit_instantiation/3.cc:
        Likewise.
        * testsuite/25_algorithms/max/requirements/explicit_instantiation/
        pod2.cc: Likewise.
* testsuite/25_algorithms/min/requirements/explicit_instantiation/3.cc:
        Likewise.
        * testsuite/25_algorithms/min/requirements/explicit_instantiation/
        pod2.cc: Likewise.
* testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
3.cc: Likewise.
        * testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
        pod2.cc: Likewise.
* testsuite/25_algorithms/max/37547.cc: New.
* testsuite/25_algorithms/min/37547.cc: Likewise.
* testsuite/25_algorithms/minmax/37547.cc: Likewise.

From-SVN: r140435

15 years agore PR fortran/37274 ([Regression on 4.3?] error: type name is ambiguous.)
Paul Thomas [Wed, 17 Sep 2008 22:23:51 +0000 (22:23 +0000)]
re PR fortran/37274 ([Regression on 4.3?] error: type name is ambiguous.)

2008-09-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/37274
PR fortran/36374
* module.c (check_for_ambiguous): New function to test loaded
symbol for ambiguity with fixup symbol.
(read_module): Call check_for_ambiguous.
(write_symtree): Do not write the symtree for symbols coming
from an interface body.

PR fortran/36374
* resolve.c (count_specific_procs ): New function to count the
number of specific procedures with the same name as the generic
and emit appropriate errors for and actual argument reference.
(resolve_assumed_size_actual): Add new argument no_formal_args.
Correct logic around passing generic procedures as arguments.
Call count_specific_procs from two locations.
(resolve_function): Evaluate and pass no_formal_args.
(resolve call): The same and clean up a bit by using csym more
widely.

PR fortran/36454
* symbol.c (gfc_add_access): Access can be updated if use
associated and not private.

2008-09-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/37274
* gfortran.dg/used_types_22.f90: New test.
* gfortran.dg/used_types_23.f90: New test.

PR fortran/36374
* gfortran.dg/generic_17.f90: New test.
* gfortran.dg/ambiguous_specific_2.f90: New test.
* gfortran.dg/generic_actual_arg.f90: Add test for case that is
not ambiguous.

PR fortran/36454
* gfortran.dg/access_spec_3.f90: New test.

From-SVN: r140434

15 years agore PR fortran/37536 (a mfcr is produced instead of branches for DO loops)
Jakub Jelinek [Wed, 17 Sep 2008 21:51:50 +0000 (23:51 +0200)]
re PR fortran/37536 (a mfcr is produced instead of branches for DO loops)

PR fortran/37536
* trans-stmt.c (gfc_trans_do): Optimize integer type non-simple
do loop initialization.

From-SVN: r140433

15 years agovarasm.c (initializer_constant_valid_p): Forbid view-conversions from aggregate to...
Eric Botcazou [Wed, 17 Sep 2008 21:48:08 +0000 (21:48 +0000)]
varasm.c (initializer_constant_valid_p): Forbid view-conversions from aggregate to non-aggregate type if...

* varasm.c (initializer_constant_valid_p): Forbid view-conversions
from aggregate to non-aggregate type if the bit pattern is not fully
preserved afterwards.

From-SVN: r140432

15 years agotree-cfg.c (verify_types_in_gimple_assign): Rename to ...
Richard Guenther [Wed, 17 Sep 2008 21:42:55 +0000 (21:42 +0000)]
tree-cfg.c (verify_types_in_gimple_assign): Rename to ...

2008-09-17  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_types_in_gimple_assign): Rename to ...
(verify_gimple_assign): ... this.  Split into ...
(verify_gimple_assign_unary): ... this,
(verify_gimple_assign_binary): ... that,
(verify_gimple_assign_single): ... and this.
(verify_types_in_gimple_stmt): Call verify_gimple_assign.
Fix GIMPLE_CHANGE_DYNAMIC_TYPE handling.
(verify_types_in_gimple_min_lval): Handle TARGET_MEM_REF.
(verify_types_in_gimple_reference): Be forgiving with
VIEW_CONVERT_EXPRs.
(verify_gimple_phi): Deal with virtual operands.

* tree.def (PREDICT_EXPR): Change to tcc_expression.

From-SVN: r140431

15 years agore PR objc/37460 (NeXT runtime ICEs)
Andrew Pinski [Wed, 17 Sep 2008 21:39:13 +0000 (21:39 +0000)]
re PR objc/37460 (NeXT runtime ICEs)

2008-09-17  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * tree.c (get_callee_fndecl): Don't call the language hook.
        * langhooks.h (lang_hooks): Remove lang_get_callee_fndecl.
        * langhooks-def.h (LANG_HOOKS_GET_CALLEE_FNDECL): Kill.
        (LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_GET_CALLEE_FNDECL.

2008-09-17  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR objc/37460
        * objc-lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): Don't define.
        * objc-act.h (objc_get_callee_fndecl): Remove prototype.
        * objc-act.c (objc_get_callee_fndecl): Kill.

2008-09-17  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): Don't define.
        (java_get_callee_fndecl): Kill.

2008-09-17  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR objc/37460
        * objcp-lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): Don't define.

From-SVN: r140430

15 years agotree.c (protected_set_expr_location): Don't unnecessarily check for error_mark_node.
Jakub Jelinek [Wed, 17 Sep 2008 21:26:45 +0000 (23:26 +0200)]
tree.c (protected_set_expr_location): Don't unnecessarily check for error_mark_node.

* tree.c (protected_set_expr_location): Don't unnecessarily
check for error_mark_node.

From-SVN: r140429

15 years agore PR c++/22374 (C++ front-end produces mis-match types in MODIFY_EXPR (dynamic_cast))
Richard Guenther [Wed, 17 Sep 2008 19:07:27 +0000 (19:07 +0000)]
re PR c++/22374 (C++ front-end produces mis-match types in MODIFY_EXPR (dynamic_cast))

2008-09-17  Richard Guenther  <rguenther@suse.de>

PR c++/22374
* rtti.c (build_dynamic_cast_1): Convert the COND_EXPR
result to the correct type.

From-SVN: r140427

15 years agore PR c++/37450 (C++ FE times out on duplicated parameter)
H.J. Lu [Wed, 17 Sep 2008 17:57:24 +0000 (17:57 +0000)]
re PR c++/37450 (C++ FE times out on duplicated parameter)

2008-09-17  H.J. Lu  <hongjiu.lu@intel.com>

PR c++/37450
* name-lookup.c (pushdecl_maybe_friend): Don't return the old
parameter for duplicate.

From-SVN: r140425

15 years agore PR c++/37558 (rev 140120 changes the accessibility of a friend decl.)
Jason Merrill [Wed, 17 Sep 2008 17:31:08 +0000 (13:31 -0400)]
re PR c++/37558 (rev 140120 changes the accessibility of a friend decl.)

        PR c++/37588
        * name-lookup.c (lookup_type_scope): Look through sk_function_parms.

From-SVN: r140424

15 years agore PR c++/37552 (ICE with invalid array access)
Jakub Jelinek [Wed, 17 Sep 2008 16:07:08 +0000 (18:07 +0200)]
re PR c++/37552 (ICE with invalid array access)

PR c++/37552
* typeck.c (build_array_ref): Use protected_set_expr_location instead
of SET_EXPR_LOCATION when ret might not be an expression.

* g++.dg/parse/crash49.C: New test.

From-SVN: r140422

15 years agore PR preprocessor/37324 (FAIL: gcc.dg/utf-array.c (test for errors))
Jakub Jelinek [Wed, 17 Sep 2008 16:05:11 +0000 (18:05 +0200)]
re PR preprocessor/37324 (FAIL: gcc.dg/utf-array.c  (test for errors))

PR preprocessor/37324
* lib/target-supports.exp
(check_effective_target_wchar_t_char16_t_compatible,
check_effective_target_wchar_t_char32_t_compatible): New.
* gcc.dg/utf-array.c: Use __CHAR{16,32}_TYPE__ macros in typedefs.
Only require from incompatible errors for char{16,32}_t vs. wchar_t
initializations if those types are indeed incompatible.

From-SVN: r140421

15 years agoipa-reference.c (analyze_function): Declare step only if ENABLE_CHECKING is defined.
Art Haas [Wed, 17 Sep 2008 15:46:03 +0000 (15:46 +0000)]
ipa-reference.c (analyze_function): Declare step only if ENABLE_CHECKING is defined.

2008-09-17  Art Haas  <ahaas@impactweather.com>

* ipa-reference.c (analyze_function): Declare step only if
ENABLE_CHECKING is defined.

From-SVN: r140420

15 years agore PR middle-end/18071 (-Winline does not respect -fno-default-inline)
Jan Hubicka [Wed, 17 Sep 2008 15:00:59 +0000 (17:00 +0200)]
re PR middle-end/18071 (-Winline does not respect -fno-default-inline)

PR c++/18071
* tree.h (DECL_INLINE): remove.
(DECL_DECLARED_INLINE_P): Update docs.
(DECL_NO_INLINE_WARNING_P): new.
(tree_function_decl): Replace inline_flag by no_inline_warning_flag.
* tree-inline.c (inlinable_function_p): Set DECL_NO_INLINE_WARNING_P.

Java:
* class.c (add_method_1): Do not initialize DECL_INLINE.
(make_local_function_alias): Likewise.
* expr.c (rewrite_arglist_getcaller): Set DECL_UNINLINABLE.
* lang.c (java_decl_ok_for_sibcall): Use DECL_UNINLINABLE.

Objc:
* objc/objc-act.c (objc_finish_method_definition): Do not set DECL_INLINE.

C++:
* cp/decl.c (start_method): Set DECL_NO_INLINE_WARNING_P.

From-SVN: r140418

15 years agore PR bootstrap/37441 (dwarf2 unwind info patches produce undefined symbols)
Jakub Jelinek [Wed, 17 Sep 2008 12:26:43 +0000 (14:26 +0200)]
re PR bootstrap/37441 (dwarf2 unwind info patches produce undefined symbols)

PR bootstrap/37441
* dwarf2out.c (dwarf2out_do_cfi_asm) [MIPS_DEBUGGING_INFO]: Return
false.

Co-Authored-By: Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
From-SVN: r140417

15 years agoipa-reference.c (ipa_obstack): Remove.
Jan Hubicka [Wed, 17 Sep 2008 12:02:42 +0000 (14:02 +0200)]
ipa-reference.c (ipa_obstack): Remove.

* ipa-reference.c (ipa_obstack): Remove.
(local_info_obstack, global_info_obstack): New.
(add_static_var): We now handle variables only.
(mark_address_taken, mark_load, mark_store): New functions based on ...
(check_operand): ... remove.
(get_asm_stmt_operands): Rename to ...
(check_asm_memory_clobber): ... this. Look only for memory clobber.
(scan_stmt_for_static_refs): Rewrite.
(scan_op_for_static_refs): Rename to ...
(scan_initializer_for_static_refs): do not look for VAR_DECL
initializers; stop recursion on types and decls.
(ipa_init): Use proper obstacks.
(analyze_variable): Use scan_initializer_for_static_refs.
(init_function_info): Use local obstack.
(analyze_function): Simplify.
(add_new_function): We don't need visited_nodes obstack.
(generate_summary): Use proper obstacks; cleanup after propagation.

From-SVN: r140415

15 years agore PR middle-end/37385 (ICE in set_mem_alias_set with the vectorizer and function...
Richard Guenther [Wed, 17 Sep 2008 11:42:11 +0000 (11:42 +0000)]
re PR middle-end/37385 (ICE in set_mem_alias_set with the vectorizer and function pointers)

2008-09-17  Richard Guenther  <rguenther@suse.de>

PR middle-end/37385
PR tree-optimization/37491
* alias.c (get_alias_set): Use the canonical type.
* tree-vect-transform.c (vectorizable_store): Use the type of
the lhs for the vector type.  Adjust checking.
(vectorizable_load): Adjust checking.

From-SVN: r140412

15 years agore PR ada/21327 (gnat_ugn.texi invalid @direntry)
Pascal Rigaux [Wed, 17 Sep 2008 07:58:12 +0000 (07:58 +0000)]
re PR ada/21327 (gnat_ugn.texi invalid @direntry)

2008-09-17  Pascal Rigaux  <pixel@mandriva.com>

    gcc/ada/
PR ada/21327
* gnat_ugn.texi: Use proper format in direntry.

From-SVN: r140411

15 years agoDaily bump.
GCC Administrator [Wed, 17 Sep 2008 00:16:35 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r140408

15 years agore PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
Janis Johnson [Wed, 17 Sep 2008 00:06:57 +0000 (00:06 +0000)]
re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)

PR testsuite/25241
* testsuite/g++.dg/charset/attribute2.c: Replace dg-error with
dg-warning or vice versa.
* testsuite/g++.dg/conversion/dr195.C: Ditto.
* testsuite/g++.dg/cpp0x/variadic60.C: Ditto.
* testsuite/g++.dg/expr/cast2.C: Ditto.
* testsuite/g++.dg/ext/anon-struct4.C: Ditto.
* testsuite/g++.dg/ext/member-attr.C: Ditto.
* testsuite/g++.dg/ext/utf-array.C: Ditto.
* testsuite/g++.dg/ext/utf-array-short-wchar.C: Ditto.
* testsuite/g++.dg/ext/utf-typedef-cxx0x.C: Ditto.
* testsuite/g++.dg/ext/visibility/redecl1.C: Ditto.
* testsuite/g++.dg/ext/visibility/warn4.C: Ditto.
* testsuite/g++.dg/parse/defarg11.C: Ditto.
* testsuite/g++.dg/template/error17.C: Ditto.
* testsuite/g++.dg/warn/pedantic2.C: Ditto.
* testsuite/g++.dg/warn/pr21983.C: Ditto.
* testsuite/g++.dg/warn/return-reference2.C: Ditto.
* testsuite/g++.old-deja/g++.bob/inherit1.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/crash13.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/crash17.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/crash52.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/crash55.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/enum7.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/operators4.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/template17.C: Ditto.
* testsuite/g++.old-deja/g++.brendan/warnings1.C: Ditto.
* testsuite/g++.old-deja/g++.bugs/900205_03.C: Ditto.
* testsuite/g++.old-deja/g++.bugs/900227_01.C: Ditto.
* testsuite/g++.old-deja/g++.ext/arrnew.C: Ditto.
* testsuite/g++.old-deja/g++.ext/attrib4.C: Ditto.
* testsuite/g++.old-deja/g++.jason/cond.C: Ditto.
* testsuite/g++.old-deja/g++.jason/operator.C: Ditto.
* testsuite/g++.old-deja/g++.jason/report.C: Ditto.
* testsuite/g++.old-deja/g++.law/friend5.C: Ditto.
* testsuite/g++.old-deja/g++.law/temps1.C: Ditto.
* testsuite/g++.old-deja/g++.law/union4.C: Ditto.
* testsuite/g++.old-deja/g++.martin/pure1.C: Ditto.
* testsuite/g++.old-deja/g++.mike/empty.C: Ditto.
* testsuite/g++.old-deja/g++.mike/for2.C: Ditto.
* testsuite/g++.old-deja/g++.mike/misc9.C: Ditto.
* testsuite/g++.old-deja/g++.mike/p10769b.C: Ditto.
* testsuite/g++.old-deja/g++.mike/p2855.C: Ditto.
* testsuite/g++.old-deja/g++.mike/p3060c.C: Ditto.
* testsuite/g++.old-deja/g++.mike/p700.C: Ditto.
* testsuite/g++.old-deja/g++.mike/p9732c.C: Ditto.
* testsuite/g++.old-deja/g++.mike/pmf6.C: Ditto.
* testsuite/g++.old-deja/g++.mike/warn1.C: Ditto.
* testsuite/g++.old-deja/g++.mike/warn5.C: Ditto.
* testsuite/g++.old-deja/g++.niklas/t141.C: Ditto.
* testsuite/g++.old-deja/g++.other/cast6.C: Ditto.
* testsuite/g++.old-deja/g++.other/cond5.C: Ditto.
* testsuite/g++.old-deja/g++.other/conv8.C: Ditto.
* testsuite/g++.old-deja/g++.other/decl5.C: Ditto.
* testsuite/g++.old-deja/g++.other/delete2.C: Ditto.
* testsuite/g++.old-deja/g++.other/delete4.C: Ditto.
* testsuite/g++.old-deja/g++.other/linkage1.C: Ditto.
* testsuite/g++.old-deja/g++.other/ptrmem8.C: Ditto.
* testsuite/g++.old-deja/g++.other/typename1.C: Ditto.
* testsuite/g++.old-deja/g++.pt/typename14.C: Ditto.
* testsuite/g++.old-deja/g++.pt/typename4.C: Ditto.
* testsuite/g++.old-deja/g++.pt/typename5.C: Ditto.
* testsuite/g++.old-deja/g++.pt/typename7.C: Ditto.

From-SVN: r140405

15 years ago[multiple changes]
Paolo Carlini [Tue, 16 Sep 2008 23:17:09 +0000 (23:17 +0000)]
[multiple changes]

2008-09-16  Chris Fairles  <chris.fairles@gmail.com>

        * testsuite/25_algorithms/min/requirements/explicit_instantiation/3.cc:
        New.
        * testsuite/25_algorithms/min/requirements/explicit_instantiation/
        pod2.cc: Likewise.
        * testsuite/25_algorithms/min/3.cc: Likewise.
        * testsuite/25_algorithms/min/4.cc: Likewise.
        * testsuite/25_algorithms/max/requirements/explicit_instantiation/3.cc:
        Likewise.
        * testsuite/25_algorithms/max/requirements/explicit_instantiation/
        pod2.cc: Likewise.
        * testsuite/25_algorithms/max/3.cc: Likewise.
        * testsuite/25_algorithms/max/4.cc: Likewise.
        * testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
        3.cc: Likewise.
        * testsuite/25_algorithms/minmax/requirements/explicit_instantiation/
        pod2.cc: Likewise.
        * testsuite/25_algorithms/minmax/2.cc: Likewise.
        * testsuite/25_algorithms/minmax/3.cc: Likewise.

2008-09-16  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/stl_algo.h (min(initializer_list<>),
min(initializer_list<>, Compare), max(initializer_list<>),
max(initializer_list<>, Compare), minmax(initializer_list<>),
minmax(initializer_list<>, Compare)): Add in C++0x mode.
* include/bits/algorithmfwd.h: Add.
* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.

From-SVN: r140404

15 years agore PR rtl-optimization/37483 (Segfault in noce_try_sign_mask (ifcvt.c): b_unconditional)
Jakub Jelinek [Tue, 16 Sep 2008 22:15:49 +0000 (00:15 +0200)]
re PR rtl-optimization/37483 (Segfault in noce_try_sign_mask (ifcvt.c): b_unconditional)

PR rtl-optimization/37483
* ifcvt.c (noce_try_sign_mask): Use if_info->test_bb instead of
if_info->insn_b's bb as argument to optimize_bb_for_speed_p.
Rearrange code to better match the original comment.  Check
t_unconditional first.  Improve comment.

testsuite/
* gcc.c-torture/compile/pr37483.c: New test.
* gcc.c-torture/compile/pr37395.c: New test.

Co-Authored-By: Adam Nemet <anemet@caviumnetworks.com>
From-SVN: r140403

15 years agore PR c/37529 (ICE with invalid goto)
Jakub Jelinek [Tue, 16 Sep 2008 22:08:01 +0000 (00:08 +0200)]
re PR c/37529 (ICE with invalid goto)

PR c/37529
* gimplify.c (gimplify_expr) <case GOTO_EXPR>: If gimplification of
GOTO_DESTINATION failed, don't create GIMPLE_GOTO.

* gcc.dg/pr37529.c: New test.

From-SVN: r140402

15 years agore PR c++/37530 (ICE with invalid catch)
Jakub Jelinek [Tue, 16 Sep 2008 22:06:28 +0000 (00:06 +0200)]
re PR c++/37530 (ICE with invalid catch)

PR c++/37530
* gimplify.c (gimplify_expr) <case TRY_CATCH_EXPR>: Don't create
GIMPLE_TRY if cleanup sequence is empty.

* g++.dg/parse/crash48.C: New test.

From-SVN: r140401

15 years agore PR c++/37531 (ICE with invalid array initialization)
Jakub Jelinek [Tue, 16 Sep 2008 22:05:15 +0000 (00:05 +0200)]
re PR c++/37531 (ICE with invalid array initialization)

PR c++/37531
* semantics.c (finish_compound_literal): Return error_mark_node if
type is errorneous.

* g++.dg/parse/crash47.C: New test.

From-SVN: r140400

15 years agore PR c++/37532 (ICE with decimal floating point data types)
Jakub Jelinek [Tue, 16 Sep 2008 22:03:57 +0000 (00:03 +0200)]
re PR c++/37532 (ICE with decimal floating point data types)

PR c++/37532
* lex.c (init_reswords): Don't populate ridpointers for D_CONLY
reserved words.

* g++.dg/parse/crash46.C: New test.

From-SVN: r140399

15 years agore PR testsuite/36889 (gfortran.fortran-torture/execute/execute.exp tries to run...
Jakub Jelinek [Tue, 16 Sep 2008 22:02:37 +0000 (00:02 +0200)]
re PR testsuite/36889 (gfortran.fortran-torture/execute/execute.exp tries to run sse2 execute tests without checking for host support)

PR testsuite/36889
* lib/fortran-torture.exp (get-fortran-torture-options): Only
set test_tree_vectorize on i?86/x86_64 resp. sparc* if sse2 resp.
ultrasparc hw is available.

From-SVN: r140398

15 years agore PR rtl-optimization/37263 (extra code for doloop with unsigned 32bit types on...
Andrew Pinski [Tue, 16 Sep 2008 16:21:35 +0000 (16:21 +0000)]
re PR rtl-optimization/37263 (extra code for doloop with unsigned 32bit types on LP64)

2008-09-16  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/37263
        * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Prefer the
        eliminate IV if the cost are the same.

From-SVN: r140395

15 years agore PR middle-end/37380 (../../gcc/libcpp/charset.c:1103: error: 'cvt.77.width' is...
Richard Guenther [Tue, 16 Sep 2008 12:34:01 +0000 (12:34 +0000)]
re PR middle-end/37380 (../../gcc/libcpp/charset.c:1103: error: 'cvt.77.width' is used uninitialized in this function)

2008-09-16  Richard Guenther  <rguenther@suse.de>

PR middle-end/37380
* tree-sra.c (sra_build_assignment): Do not call the gimplifier
if not necessary.

* gcc.c-torture/compile/pr37380.c: New testcase.

From-SVN: r140388

15 years agore PR tree-optimization/37508 (ICE in in simplify_truth_ops_using_ranges, at tree...
Richard Guenther [Tue, 16 Sep 2008 12:31:51 +0000 (12:31 +0000)]
re PR tree-optimization/37508 (ICE in in simplify_truth_ops_using_ranges, at tree-vrp.c:6334)

2008-09-16  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/37508
* tree-vrp.c (simplify_truth_ops_using_ranges): Also allow -1.

* gcc.dg/tree-ssa/pr37508.c: New testcase.

From-SVN: r140387

15 years agoDaily bump.
GCC Administrator [Tue, 16 Sep 2008 00:17:08 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r140385

15 years agosh.md (movsf_ie): Fix length for TARGET_SH2A.
Kaz Kojima [Mon, 15 Sep 2008 23:07:28 +0000 (23:07 +0000)]
sh.md (movsf_ie): Fix length for TARGET_SH2A.

* config/sh/sh.md (movsf_ie): Fix length for TARGET_SH2A.

From-SVN: r140382

15 years agors6000.md (floatsidf2): Rewrite PowerPC64 case to use gen_floatdidf2 directly.
Andrew Pinski [Mon, 15 Sep 2008 22:59:55 +0000 (22:59 +0000)]
rs6000.md (floatsidf2): Rewrite PowerPC64 case to use gen_floatdidf2 directly.

2008-09-15  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/rs6000/rs6000.md (floatsidf2): Rewrite PowerPC64 case to
        use gen_floatdidf2 directly.
        (floatunssidf2): Likewise.
        (floatsidf_ppc64_mfpgpr): Remove.
        (floatsidf_ppc64): Remove.
        (floatunssidf_ppc64): Remove.

From-SVN: r140381

15 years agocrash16.C: Function name is the correct location for an error regarding a function.
Aldy Hernandez [Mon, 15 Sep 2008 22:24:18 +0000 (22:24 +0000)]
crash16.C: Function name is the correct location for an error regarding a function.

testsuite/
        * g++.old-deja/g++.brendan/crash16.C: Function name is the correct
        location for an error regarding a function.
        * g++.old-deja/g++.other/pmf3.C: Same.
        * g++.old-deja/g++.law/ctors5.C: Same.
        * g++.old-deja/g++.pt/explicit34.C: Same.
        * g++.dg/parse/error28.C: Same.
        * g++.dg/parse/error17.C: Same.
        * g++.dg/template/friend44.C: Same.
cp/
        * decl.c (duplicate_decls): Call error_at.
        (grokfndecl): New location argument.  Use location if available.
        (grokdeclarator): Pass declarator location to grokfndecl.
        * cp-tree.h (struct cp_declarator): Update comment for id_loc.
        * decl2.c (check_classfn): Use error_at.
        * parser.c (cp_parser_init_declarator): Set function_start_locus
        to brace location.
        (cp_parser_member_declaration): Set id_loc for function declarators.

From-SVN: r140379

15 years agoira-color.c (finish_cost_update): Free update_cost_queue_elems rather than update_cos...
Jakub Jelinek [Mon, 15 Sep 2008 21:57:17 +0000 (23:57 +0200)]
ira-color.c (finish_cost_update): Free update_cost_queue_elems rather than update_cost_queue.

* ira-color.c (finish_cost_update): Free update_cost_queue_elems
rather than update_cost_queue.

From-SVN: r140378

15 years agotree-ssa-alias.c (init_alias_info): Call bitmap_obstack_release in every call startin...
Jakub Jelinek [Mon, 15 Sep 2008 21:56:35 +0000 (23:56 +0200)]
tree-ssa-alias.c (init_alias_info): Call bitmap_obstack_release in every call starting with the second one...

* tree-ssa-alias.c (init_alias_info): Call bitmap_obstack_release
in every call starting with the second one, instead of only when
alias_bitmap_obstack.elements != NULL.

From-SVN: r140377

15 years agotree-predcom.c (filter_suitable_components): Free all refs in act->refs vector before...
Jakub Jelinek [Mon, 15 Sep 2008 21:55:05 +0000 (23:55 +0200)]
tree-predcom.c (filter_suitable_components): Free all refs in act->refs vector before calling release_component.

* tree-predcom.c (filter_suitable_components): Free all refs in
act->refs vector before calling release_component.
(add_ref_to_chain): Free ref if not adding it to chain->refs.

* tree-data-ref.c (free_subscripts): Free all subscript objects.

* tree-loop-linear.c (linear_transform_loops): Initialize
lambda_obstack only after calling perfect_loop_nest_depth.
Goto free_and_continue instead of just continue for later failures.

From-SVN: r140376

15 years agore PR middle-end/37479 (-fdwarf2-cfi-asm is undocumented)
Jakub Jelinek [Mon, 15 Sep 2008 21:54:04 +0000 (23:54 +0200)]
re PR middle-end/37479 (-fdwarf2-cfi-asm is undocumented)

PR middle-end/37479
* doc/invoke.texi: Document -fno-dwarf2-cfi-asm.

From-SVN: r140375

15 years agore PR libmudflap/36397 (ICE with pointer cast and -fmudflap)
Jakub Jelinek [Mon, 15 Sep 2008 21:52:53 +0000 (23:52 +0200)]
re PR libmudflap/36397 (ICE with pointer cast and -fmudflap)

PR libmudflap/36397
* tree-mudflap.c (mf_xform_derefs_1): Handle VIEW_CONVERT_EXPR.

* testsuite/libmudflap.c/pass64-frag.c: New test.

From-SVN: r140374

15 years agotrans.c (gigi): Declare the name of the compilation unit as the first global name.
Eric Botcazou [Mon, 15 Sep 2008 20:26:02 +0000 (20:26 +0000)]
trans.c (gigi): Declare the name of the compilation unit as the first global name.

* gcc-interface/trans.c (gigi): Declare the name of the compilation
unit as the first global name.

From-SVN: r140373

15 years agoDaily bump.
GCC Administrator [Mon, 15 Sep 2008 00:16:32 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r140370

15 years agore PR fortran/35840 (ICE for character expression in I/O specifier)
Jerry DeLisle [Sun, 14 Sep 2008 19:00:26 +0000 (19:00 +0000)]
re PR fortran/35840 (ICE for character expression in I/O specifier)

2008-09-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
    Tobias Burnus  <burnus@net.b.de>

PR fortran/35840
* io.c (match_vtag): Add tag name to error message.
(match_out_tag): Cleanup whitespace.
(gfc_resolve_dt): Resolve id and async tags.

Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r140366

15 years agoMAINTAINERS: Remove John Carr...
Gerald Pfeifer [Sun, 14 Sep 2008 18:14:41 +0000 (18:14 +0000)]
MAINTAINERS: Remove John Carr...

* MAINTAINERS: Remove John Carr, Steve Chamberlain, Michael Chastain,
Klaus Kaempf, Mumit Khan, Alan Lehotsky, Warren Levy, Don Lindsay,
Dave Love, Alexandre Petit-Bianco, Clinton Popetz, Gavin Romig-Koch,
and Michael Tiemann from Write After Approval since they do not
actually have access.

From-SVN: r140364

15 years ago* tree-call-cdce.c (check_target_format): Accept Motorola formats.
Andreas Schwab [Sun, 14 Sep 2008 17:58:14 +0000 (17:58 +0000)]
* tree-call-cdce.c (check_target_format): Accept Motorola formats.

From-SVN: r140363

15 years agoinvoke.texi (-fconserve-stack): Document.
Jan Hubicka [Sun, 14 Sep 2008 17:05:39 +0000 (19:05 +0200)]
invoke.texi (-fconserve-stack): Document.

* invoke.texi (-fconserve-stack): Document.
* opts.c (decode_options): Handle conserve_stack.
* common.opt (fconvserve_stack): New.

From-SVN: r140362

15 years agoconfig.host: Add x-aix to host_xmake_file.
David Edelsohn [Sun, 14 Sep 2008 13:55:29 +0000 (09:55 -0400)]
config.host: Add x-aix to host_xmake_file.

        * config.host: Add x-aix to host_xmake_file.
        * config/rs6000/t-aix52: Do not override LDFLAGS.
        * config/rs6000/x-aix: New file.

From-SVN: r140361

15 years agore PR target/19636 (Can't compile large switch statement)
Andy Hutchinson [Sun, 14 Sep 2008 12:50:10 +0000 (12:50 +0000)]
re PR target/19636 (Can't compile large switch statement)

PR target/19636
PR target/24894
PR target/31644
PR target/31786
* config/avr/avr.c (legitimate_address_p): Fix problem where subreg
is not recognized as a valid register usage. Allow REG_X to be used
as a base pointer.
* config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Remove code that
forces a reload when using a base register.

From-SVN: r140360

15 years ago* gcc-interface/Make-lang.in (gnac1): Add CFLAGS.
Jan Hubicka [Sun, 14 Sep 2008 09:14:51 +0000 (11:14 +0200)]
* gcc-interface/Make-lang.in (gnac1): Add CFLAGS.

From-SVN: r140357

15 years agoa-crbtgk.adb, [...]: Fix typos in comments.
Ralf Wildenhues [Sun, 14 Sep 2008 06:21:12 +0000 (06:21 +0000)]
a-crbtgk.adb, [...]: Fix typos in comments.

gcc/ada/
* a-crbtgk.adb, a-direct.ads, a-tasatt.adb, ali.ads,
bindgen.adb, checks.adb, einfo.ads, exp_aggr.adb, exp_ch11.adb,
exp_ch3.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch9.adb,
exp_dbug.ads, exp_disp.adb, exp_dist.adb, exp_pakd.adb,
exp_util.adb, g-alveop.ads, g-comlin.adb, g-comlin.ads,
g-diopit.adb, g-socket.ads, gcc-interface/decl.c,
gcc-interface/gigi.h, gcc-interface/trans.c,
lib-load.adb, lib-xref.ads, make.adb, mlib-prj.adb, nlists.ads,
opt.ads, par-ch10.adb, par-ch5.adb, par.adb, s-os_lib.ads,
s-oscons-tmplt.c, s-parint.ads, s-regpat.ads, s-shasto.ads,
s-stausa.ads, s-taprop-vms.adb, sem.adb, sem_ch10.adb,
sem_ch11.adb, sem_ch12.adb, sem_ch13.adb, sem_ch3.adb,
sem_ch3.ads, sem_ch4.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb,
sem_elim.adb, sem_prag.adb, sem_util.adb, sem_util.ads,
sem_warn.adb, sinfo.ads, styleg.adb, vms_data.ads: Fix typos in
comments.
* gnathtml.pl: Fix typos.

From-SVN: r140356

15 years agoDaily bump.
GCC Administrator [Sun, 14 Sep 2008 00:16:35 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r140354

15 years agocygming-crtend.c (register_frame_ctor): If DEFAULT_USE_CXA_ATEXIT, register __gcc_der...
Danny Smith [Sat, 13 Sep 2008 22:58:55 +0000 (22:58 +0000)]
cygming-crtend.c (register_frame_ctor): If DEFAULT_USE_CXA_ATEXIT, register __gcc_deregister_frame directly with atexit.

* config/i386/cygming-crtend.c (register_frame_ctor): If
DEFAULT_USE_CXA_ATEXIT, register __gcc_deregister_frame
directly with atexit.
(deregister_frame_ctor): Rename to ...
(deregister_frame_dtor): Use to call __gcc_deregister_frame
if !DEFAULT_USE_CXA_ATEXIT.

From-SVN: r140351

15 years agocgraph.c: Include value-prof.h
Jan Hubicka [Sat, 13 Sep 2008 22:32:57 +0000 (00:32 +0200)]
cgraph.c: Include value-prof.h

* cgraph.c: Include value-prof.h
* Makefile.in (cgraph.o): Add value-prof.h dependency.

From-SVN: r140350

15 years agore PR middle-end/32581 (make profiledbootstrap - stageprofile - gcc/ada/a-except...
Jan Hubicka [Sat, 13 Sep 2008 21:39:44 +0000 (23:39 +0200)]
re PR middle-end/32581 (make profiledbootstrap - stageprofile - gcc/ada/a-except.adb:1301: error: control flow in the middle of basic block 20)

PR middle-end/32581
* tree-profile.c (add_abnormal_goto_call_edges): New function.
(tree_gen_interval_profiler, tree_gen_pow2_profiler,
tree_gen_one_value_profiler, tree_gen_average_profiler,
tree_gen_ic_func_profiler, tree_gen_ior_profiler): Use it.

From-SVN: r140349

15 years agoi386.c (ix86_expand_movmem, [...]): Avoid processing too many bytes on misalligned...
Jan Hubicka [Sat, 13 Sep 2008 19:19:57 +0000 (21:19 +0200)]
i386.c (ix86_expand_movmem, [...]): Avoid processing too many bytes on misalligned blocks.

* i386.c (ix86_expand_movmem, ix86_expand_movstr): Avoid processing too
many bytes on misalligned blocks.

From-SVN: r140348

15 years agocfg.texi: Fix some typos.
Ralf Wildenhues [Sat, 13 Sep 2008 18:54:58 +0000 (18:54 +0000)]
cfg.texi: Fix some typos.

gcc/
* doc/cfg.texi: Fix some typos.
* doc/extend.texi: Likewise.
* doc/install.texi: Likewise.
* doc/invoke.texi: Likewise.
* doc/rtl.texi: Likewise.
* doc/tree-ssa.texi: Likewise.

From-SVN: r140347

15 years agore PR middle-end/30141 (nested function can produce invalid gimple)
Richard Guenther [Sat, 13 Sep 2008 16:29:22 +0000 (16:29 +0000)]
re PR middle-end/30141 (nested function can produce invalid gimple)

2008-09-13  Richard Guenther  <rguenther@suse.de>

PR middle-end/30141
* tree-nested.c (finalize_nesting_tree_1): Generate valid
gimple stores for memory rhs.

From-SVN: r140346

15 years agore PR rtl-optimization/37489 (const_true_rtx returned for float compare)
H.J. Lu [Sat, 13 Sep 2008 15:47:41 +0000 (08:47 -0700)]
re PR rtl-optimization/37489 (const_true_rtx returned for float compare)

gcc/

2008-09-13  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/37489
* cse.c (fold_rtx): Don't return const_true_rtx for float
compare if FLOAT_STORE_FLAG_VALUE is undefined.

gcc/testsuite/

2008-09-13  Raksit Ashok <raksit@google.com>

PR rtl-optimization/37489
* g++.dg/opt/cse3.C: New.

From-SVN: r140344

15 years agore PR testsuite/37495 (FAIL: gcc.c-torture/compile/vector-4.c)
H.J. Lu [Sat, 13 Sep 2008 15:44:07 +0000 (15:44 +0000)]
re PR testsuite/37495 (FAIL: gcc.c-torture/compile/vector-4.c)

2008-09-13  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/37495
* gcc.c-torture/compile/vector-4.c: Add "dg-do compile".

From-SVN: r140343

15 years agore PR tree-optimization/37392 (Segfault in verify_ssa: !gimple_nop_p (stmt))
Jan Hubicka [Sat, 13 Sep 2008 14:38:10 +0000 (16:38 +0200)]
re PR tree-optimization/37392 (Segfault in verify_ssa: !gimple_nop_p (stmt))

PR tree-optimization/37392
* tree-inline.c (remap_gimple_stmt): Do not remap return value.

From-SVN: r140342

15 years agocgraph.c (free_edges): New variable.
Martin Jambor [Sat, 13 Sep 2008 14:35:10 +0000 (16:35 +0200)]
cgraph.c (free_edges): New variable.

* cgraph.c (free_edges): New variable.
(NEXT_FREE_EDGE): New macro.
(cgraph_free_edge): New function.
(cgraph_remove_edge): Call cgraph_remove_edge_1.
(cgraph_node_remove_callees): Likewise.
(cgraph_node_remove_callers): Likewise.
(cgraph_create_edge): Reuse edges from the free list.  Do not
update uid if doing so.
(cgraph_remove_*_hook): Add free call.

Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r140341