gcc.git
15 years agore PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences)
David Edelsohn [Mon, 22 Sep 2008 15:15:56 +0000 (11:15 -0400)]
re PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences)

        PR rtl-optimization/33642
        * gcc.c-torture/compile/pr11832.c: Extend XFAIL to powerpc*-*-*.
        * gcc.c-torture/compile/pr33009.c: Likewise.

From-SVN: r140551

15 years agoMAINTAINERS (Write After Approval): Update my name.
Bernhard Reutner-Fischer [Mon, 22 Sep 2008 12:39:19 +0000 (14:39 +0200)]
MAINTAINERS (Write After Approval): Update my name.

2008-09-22  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

* MAINTAINERS (Write After Approval): Update my name.

From-SVN: r140548

15 years agore PR tree-optimization/37145 (XFAILs from PRE rewrite, SCCVN union optimization...
Richard Guenther [Mon, 22 Sep 2008 11:53:29 +0000 (11:53 +0000)]
re PR tree-optimization/37145 (XFAILs from PRE rewrite, SCCVN union optimization disabled)

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

PR tree-optimization/37145
* tree-ssa-pre.c (fully_constant_expression): Simplify builtin calls.
(phi_translate_1): Constant fold references.

* gcc.dg/tree-ssa/ssa-pre-15.c: Remove XFAIL.

From-SVN: r140547

15 years agore PR fortran/37486 (alignment of data in COMMON blocks)
Janus Weil [Mon, 22 Sep 2008 11:45:02 +0000 (13:45 +0200)]
re PR fortran/37486 (alignment of data in COMMON blocks)

2008-09-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/37486
* gfortran.h (gfc_option_t): New members flag_align_commons and
warn_align_commons.
* lang.opt: New options falign-commons and Walign-commons.
* invoke.texi: Documentation for new options.
* options.c (gfc_init_options): Initialize new options.
(gfc_handle_options): Handle new options.
* trans-common.c (translate_common): Implement new options.
(gfc_trans_common): Set correct locus.

2008-09-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/37486
* gfortran.dg/common_align_1.f90: New.
* gfortran.dg/warn_align_commons.f90: New.

From-SVN: r140546

15 years agodecl.c (gnat_to_gnu_entity): Even when they are never assigned...
Olivier Hainque [Mon, 22 Sep 2008 10:29:29 +0000 (10:29 +0000)]
decl.c (gnat_to_gnu_entity): Even when they are never assigned...

        * gcc-interface/decl.c (gnat_to_gnu_entity): Even when they
        are never assigned, volatile entities are not constant for code
        generation purposes.

        * gnat.dg/volatile3.adb: New test.

From-SVN: r140545

15 years agore PR tree-optimization/37482 (definition in block 51 follows the use for SSA_NAME...
Ira Rosen [Mon, 22 Sep 2008 07:55:39 +0000 (07:55 +0000)]
re PR tree-optimization/37482 (definition in block 51 follows the use for SSA_NAME with -maltivec)

PR tree-optimization/37482
* tree-vectorizer.h (struct _slp_instance): Add new field.
(SLP_INSTANCE_FIRST_LOAD_STMT): New.
(get_earlier_stmt): New function.
* tree-vect-analyze.c (vect_find_first_load_in_slp_instance): New
function.
(vect_analyze_slp_instance): Set SLP_INSTANCE_FIRST_LOAD_STMT.
* tree-vect-transform.c (vect_finish_stmt_generation): Remove the
asserts that GSI points to the scalar statement being vectorized.
Set new statement location according to GSI.
(vect_schedule_slp_instance): Use GSI of
SLP_INSTANCE_FIRST_LOAD_STMT when vectorizing loads.

From-SVN: r140544

15 years agoipa-cp.c (ipcp_estimate_growth): Check recursive calls.
Jan Hubicka [Mon, 22 Sep 2008 04:24:28 +0000 (06:24 +0200)]
ipa-cp.c (ipcp_estimate_growth): Check recursive calls.

* ipa-cp.c (ipcp_estimate_growth): Check recursive calls.
(ipcp_insert_stage): Update dead_nodes bitmap.

From-SVN: r140542

15 years agore PR target/37528 (boostrap failure due to configure problems)
Danny Smith [Mon, 22 Sep 2008 02:56:50 +0000 (02:56 +0000)]
re PR target/37528 (boostrap failure due to configure problems)

PR target/37528
* config/i386/t-cygming (SHLIB_LC): Remove.
(SHLIB_LINK): Don't add static objects to SHLIB_IMPLIB
* config/i386/t-cygwin (SHLIB_LC): Specify all required
libraries.

From-SVN: r140541

15 years agore PR target/37170 (gcc.dg/weak/weak-1.c)
Hans-Peter Nilsson [Mon, 22 Sep 2008 01:54:41 +0000 (01:54 +0000)]
re PR target/37170 (gcc.dg/weak/weak-1.c)

PR middle-end/37170
PR middle-end/37280
* gcc.dg/weak/weak-15.c, gcc.dg/weak/weak-16.c,
g++.dg/ext/inline1.C: New tests.

From-SVN: r140540

15 years agore PR target/37170 (gcc.dg/weak/weak-1.c)
Hans-Peter Nilsson [Mon, 22 Sep 2008 01:54:03 +0000 (01:54 +0000)]
re PR target/37170 (gcc.dg/weak/weak-1.c)

PR middle-end/37170
PR middle-end/37280
* final.c (mark_symbol_ref_as_used): New helper function.
(output_operand): Instead of just looking inside MEMs for
SYMBOL_REFs, use new helper function and for_each_rtx.
* varasm.c (assemble_external): Move #ifndef ASM_OUTPUT_EXTERNAL
to after weak-handling.  Don't mark decls with TREE_STATIC as weak.
Make head comment more general.
* config/darwin.c (machopic_output_indirection): Handle weak
references here, like in assemble_external.

From-SVN: r140539

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

From-SVN: r140537

15 years agore PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences)
Kaz Kojima [Sun, 21 Sep 2008 22:37:16 +0000 (22:37 +0000)]
re PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences)

PR rtl-optimization/33642
* gcc.c-torture/compile/pr11832.c: XFAIL on sh*-*-*.
* gcc.c-torture/compile/pr33009.c: Likewise.

From-SVN: r140534

15 years agore PR fortran/37583 (ICE "insert_bbt(): Duplicate key" for self-calling ENTRY subprogram)
Paul Thomas [Sun, 21 Sep 2008 19:58:23 +0000 (19:58 +0000)]
re PR fortran/37583 (ICE "insert_bbt(): Duplicate key" for self-calling ENTRY subprogram)

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

PR fortran/37583
* decl.c (scalarize_intrinsic_call): Both subroutines and
functions can give a true for get_proc_mame's last argument so
remove the &&gfc_current_ns->proc_name->attr.function.
resolve.c (resolve_actual_arglist): Add check for recursion by
reference to procedure as actual argument.

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

PR fortran/37583
* gfortran.dg/entry_18.f90: New test.

From-SVN: r140532

15 years agosparc-protos.h (gen_compare_operator): Declare.
Eric Botcazou [Sun, 21 Sep 2008 19:25:48 +0000 (19:25 +0000)]
sparc-protos.h (gen_compare_operator): Declare.

* config/sparc/sparc-protos.h (gen_compare_operator): Declare.
(sparc_emit_float_lib_cmp): Change return type.
* config/sparc/sparc.c (gen_compare_reg): Add comment about TFmode.
(gen_compare_operator): New function.
(sparc_emit_float_lib_cmp): Return the new operator to be used in
the comparison sequence.  Minor tweaks.
* config/sparc/sparc.md (seq, sne, sgt, slt, sge, sle): Assert
that the final operator and the result of sparc_emit_float_lib_cmp
match for software TFmode; use emit_insn in lieu of emit_jump_insn.
(beq, bne, bgt, blt, bge, ble, bunordered, bordered, bungt, bunlt,
buneq, bunge, bunle, bltgt): Assert that the final operator and the
result of sparc_emit_float_lib_cmp match for software TFmode.
(movqicc, movhicc, movsicc, movdicc): Merge into...
(mov<I:mode>cc): ...this.
(movsfcc, movdfcc, movtfcc): Merge into...
(mov<F:mode>cc): ...this.
(movqi_cc_sp64, movhi_cc_sp64, movsi_cc_sp64, movdi_cc_sp64): Merge
into...
(mov<I:mode>_cc_v9): ...this.
(movdi_cc_sp64_trunc): Delete.
(movqi_cc_reg_sp64, movhi_cc_reg_sp64, movsi_cc_reg_sp64,
movdi_cc_reg_sp64): Merge into...
(mov<I:mode>_cc_reg_sp64): ...this.
(movsf_cc_sp64): Rename into...
(movsf_cc_v9): ...this.
(movdf_cc_sp64): Rename into...
(movdf_cc_v9): ...this.
(movtf_cc_hq_sp64): Rename into...
(movtf_cc_hq_v9): ...this.
(movtf_cc_sp64): Rename into...
(movtf_cc_v9): ...this.  Adjust for renaming of movdf_cc_sp64.

From-SVN: r140530

15 years agore PR fortran/35846 (ICE on nested character constructors)
Daniel Kraft [Sun, 21 Sep 2008 15:33:37 +0000 (17:33 +0200)]
re PR fortran/35846 (ICE on nested character constructors)

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

PR fortran/35846
* trans.h (gfc_conv_string_length): New argument `expr'.
* trans-expr.c (flatten_array_ctors_without_strlen): New method.
(gfc_conv_string_length): New argument `expr' that is used in a new
special case handling if cl->length is NULL.
(gfc_conv_subref_array_arg): Pass expr to gfc_conv_string_length.
* trans-array.c (gfc_conv_expr_descriptor): Ditto.
(gfc_trans_auto_array_allocation): Pass NULL as new expr.
(gfc_trans_g77_array), (gfc_trans_dummy_array_bias): Ditto.
(gfc_trans_deferred_array): Ditto.
(gfc_trans_array_constructor): Save and restore old values of globals
used for bounds checking.
* trans-decl.c (gfc_trans_dummy_character): Ditto.
(gfc_trans_auto_character_variable): Ditto.

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

PR fortran/35846
* gfortran.dg/nested_array_constructor_1.f90: New test.
* gfortran.dg/nested_array_constructor_2.f90: New test.
* gfortran.dg/nested_array_constructor_3.f90: New test.
* gfortran.dg/nested_array_constructor_4.f90: New test.
* gfortran.dg/nested_array_constructor_5.f90: New test.
* gfortran.dg/nested_array_constructor_6.f90: New test.

From-SVN: r140529

15 years agodecl.c (match_procedure_in_type): Changed misleading error message for not yet implem...
Daniel Kraft [Sun, 21 Sep 2008 15:24:55 +0000 (17:24 +0200)]
decl.c (match_procedure_in_type): Changed misleading error message for not yet implemented PROCEDURE(interface)...

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

* decl.c (match_procedure_in_type): Changed misleading error message
for not yet implemented PROCEDURE(interface) syntax.

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

* gfortran.dg/typebound_proc_4.f03: Changed expected error for not
yet implemented PROCEDURE(interface).

From-SVN: r140528

15 years agogccint.texi: Include generic.texi and gimple.texi.
Diego Novillo [Sun, 21 Sep 2008 15:05:14 +0000 (11:05 -0400)]
gccint.texi: Include generic.texi and gimple.texi.

2008-09-21  Diego Novillo  <dnovillo@google.com>

* doc/gccint.texi: Include generic.texi and gimple.texi.
Re-order index.
* doc/tree-ssa.texi (GENERIC): Move to generic.texi.
(GIMPLE): Move to gimple.texi.
(Annotations): Remove references to to stmt_ann_t and
ssa_name_ann_t.
(SSA Operands): Rename from 'Statement Operands'.
* doc/generic.texi: New.
* doc/gimple.texi: New.
* Makefile.in (TEXI_GCCINT_FILES): Add generic.texi and
gimple.texi.
* Makefile.in (TEXI_GCCINT_FILES):
* gimple.c (gimple_copy_call_skip_args): Rename from
giple_copy_call_skip_args.  Update all users.
* doc/gimple.texi (gimple_copy_call_skip_args): Document.

From-SVN: r140527

15 years ago* MAINTAINERS: Add myself in "Write After Approval".
Steven Bosscher [Sun, 21 Sep 2008 12:15:42 +0000 (12:15 +0000)]
* MAINTAINERS: Add myself in "Write After Approval".

From-SVN: r140526

15 years agore PR ada/5911 (Support for multilib in Ada)
Laurent GUERBY [Sun, 21 Sep 2008 11:45:23 +0000 (11:45 +0000)]
re PR ada/5911 (Support for multilib in Ada)

2008-09-21  Laurent Guerby  <laurent@guerby.net>

        PR ada/5911
* gcc-interface/Makefile.in: Add multilib handling for x86_64
and sparc.
* system-linux-sparcv9.ads: New file.

2008-09-21  Laurent Guerby  <laurent@guerby.net>
            Paolo Bonzini  <bonzini@gnu.org>

PR ada/5911
* Makefile.in (all, install, mostlyclean, clean, distclean): Add
multilib handling.
* configure.ac: Add multilib handling.
* configure: Regenerate.

Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r140525

15 years agostl_algo.h (minmax(initializer_list<>): Use make_pair, consistently with the other...
Paolo Carlini [Sun, 21 Sep 2008 09:36:27 +0000 (09:36 +0000)]
stl_algo.h (minmax(initializer_list<>): Use make_pair, consistently with the other overload for initializer_list.

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

  * include/bits/stl_algo.h (minmax(initializer_list<>): Use make_pair,
consistently with the other overload for initializer_list.

From-SVN: r140524

15 years agore PR tree-optimization/37539 (Hang for -O3)
Ira Rosen [Sun, 21 Sep 2008 08:36:07 +0000 (08:36 +0000)]
re PR tree-optimization/37539 (Hang for -O3)

PR tree-optimization/37539
* tree-vect-transform.c (vect_transform_strided_load): Save vector
statement in related statement field only for the first load of the
group of loads with the same data reference.

From-SVN: r140522

15 years agomips.h (TUNE_OCTEON): New macro.
Adam Nemet [Sun, 21 Sep 2008 06:15:52 +0000 (06:15 +0000)]
mips.h (TUNE_OCTEON): New macro.

* config/mips/mips.h (TUNE_OCTEON): New macro.
* config/mips/mips.c (mips_issue_rate): Return 2 for Octeon.
(mips_multipass_dfa_lookahead): Return 2 for Octeon.
* config/mips/octeon.md: New file.
* config/mips/mips.md: Include octeon.md.  Restore
semi-alphabetical order of include files.

From-SVN: r140521

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

From-SVN: r140519

15 years agore PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences)
Eric Botcazou [Sat, 20 Sep 2008 19:15:19 +0000 (19:15 +0000)]
re PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences)

PR rtl-optimization/33642
* gcc.c-torture/compile/pr11832.c: XFAIL on SPARC.
* gcc.c-torture/compile/pr33009.c: Likewise.

From-SVN: r140516

15 years agore PR target/37571 (Performance regression due to compare/branch fuse optimization)
H.J. Lu [Sat, 20 Sep 2008 15:07:46 +0000 (15:07 +0000)]
re PR target/37571 (Performance regression due to compare/branch fuse optimization)

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

PR target/37571
* config/i386/i386.md (*jcc_fused_1): Removed.
(*jcc_fused_2): Likewise.
(*jcc_fused_3): Likewise.
(*jcc_fused_4): Likewise.

From-SVN: r140514

15 years agoexp_dbug.ads: Document new convention for the XVZ variable.
Eric Botcazou [Sat, 20 Sep 2008 10:29:08 +0000 (10:29 +0000)]
exp_dbug.ads: Document new convention for the XVZ variable.

* exp_dbug.ads: Document new convention for the XVZ variable.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Generate
debug info if necessary for the type padding the component type.
<E_Array_Subtype>: Likewise.
(maybe_pad_type): Emit the XVZ variable in units.
* gcc-interface/trans.c (Loop_Statement_to_gnu): Fix formatting nits.
(Subprogram_Body_to_gnu): Set the source line of the subprogram's node
on statements generated to initialize the parameter attributes cache.
Set the source line of the end label of the body on the special return
statement built for a procedure with copy-in copy-out parameters.

From-SVN: r140513

15 years agotm.texi (TARGET_IRA_COVER_CLASSES): Define.
Richard Sandiford [Sat, 20 Sep 2008 09:15:43 +0000 (09:15 +0000)]
tm.texi (TARGET_IRA_COVER_CLASSES): Define.

gcc/
* doc/tm.texi (TARGET_IRA_COVER_CLASSES): Define.
(IRA_COVER_CLASSES): Refer to TARGET_IRA_COVER_CLASSES.
* target.h (gcc_target): Add ira_cover_classes.
* ira.c: Remove IRA_COVER_CLASSES guards.
(setup_cover_and_important_classes): Use targetm.ira_cover_classes
instead of IRA_COVER_CLASSES.
(setup_cover_and_important_classes): Remove IRA_COVER_CLASSES guard.
(setup_class_translate): Likewise.
(setup_reg_class_intersect_union): Likewise.
(find_reg_class_closure): Replace IRA_COVER_CLASSES guard with a
test of targetm.ira_cover_classes.
* opts.c (decode_options): Use targetm.ira_cover_classes instead
of IRA_COVER_CLASSES.
* target-def.h (TARGET_IRA_COVER_CLASSES): Define.
(TARGET_INITIALIZER): Include it.
* targhooks.h (default_ira_cover_classes): Declare.
* targhooks.c (default_ira_cover_classes): New function.

From-SVN: r140512

15 years agore PR ada/37585 (undefined references at -O for ACATS c650001)
Eric Botcazou [Sat, 20 Sep 2008 08:41:55 +0000 (08:41 +0000)]
re PR ada/37585 (undefined references at -O for ACATS c650001)

PR ada/37585
* gcc-interface/utils.c (create_subprog_decl): Disable inlining for
inlined external functions if they contain a nested function not
declared inline.

From-SVN: r140511

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