platform/upstream/gcc.git
15 years agoc-lex.c: Replace %H by an explicit location.
Manuel López-Ibáñez [Tue, 7 Jul 2009 02:10:19 +0000 (02:10 +0000)]
c-lex.c: Replace %H by an explicit location.

2009-07-07  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* c-lex.c: Replace %H by an explicit location. Update all calls.
* c-common.c: Likewise.
* c-decl.c: Likewise.
* c-typeck.c: Likewise.
* fold-const.c: Likewise.
* gimplify.c: Likewise.
* stmt.c: Likewise.
* tree-cfg.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-vrp.c: Likewise.
* value-prof.c: Likewise.
java/
* jcf-parse.c: Replace %H by an explicit location. Update all calls.
objc/
* objc-act.c: Replace %H by an explicit location. Update all calls.
testsuite/
* gcc.dg/plugin/selfassign.c: Replace %H by an explicit
location. Update all calls.
* g++.dg/plugin/selfassign.c: Likewise.

From-SVN: r149310

15 years agoDaily bump.
GCC Administrator [Tue, 7 Jul 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149307

15 years ago3.cc: Add copyright.
Benjamin Kosnik [Mon, 6 Jul 2009 22:44:58 +0000 (22:44 +0000)]
3.cc: Add copyright.

2009-07-06  Benjamin Kosnik  <bkoz@redhat.com>

*  testsuite/21_strings/c_strings/wchar_t/3.cc: Add copyright.
*  testsuite/21_strings/c_strings/char/3.cc: Same.

From-SVN: r149300

15 years agovmi_class_type_info.cc (__do_dyncast): Use src2dst hint to defer searching bases...
Jason Merrill [Mon, 6 Jul 2009 22:13:51 +0000 (18:13 -0400)]
vmi_class_type_info.cc (__do_dyncast): Use src2dst hint to defer searching bases that don't overlap the desired address.

* libsupc++/vmi_class_type_info.cc (__do_dyncast): Use src2dst hint
to defer searching bases that don't overlap the desired address.

From-SVN: r149297

15 years agoconfigure.ac: Add missing comma in AC_ARG_WITH(boot-libs).
Ian Lance Taylor [Mon, 6 Jul 2009 18:06:55 +0000 (18:06 +0000)]
configure.ac: Add missing comma in AC_ARG_WITH(boot-libs).

* configure.ac: Add missing comma in AC_ARG_WITH(boot-libs).
* configure: Rebuild.

From-SVN: r149292

15 years agotree-dfa.c (dump_variable): Write DECL_INITIAL for VAR if it has one.
Diego Novillo [Mon, 6 Jul 2009 17:07:32 +0000 (13:07 -0400)]
tree-dfa.c (dump_variable): Write DECL_INITIAL for VAR if it has one.

* tree-dfa.c (dump_variable): Write DECL_INITIAL for VAR
if it has one.  Handle cases where VAR does not have an
annotation or cfun is NULL.

From-SVN: r149291

15 years agotree.c: Include debug.h.
Diego Novillo [Mon, 6 Jul 2009 17:06:26 +0000 (13:06 -0400)]
tree.c: Include debug.h.

* tree.c: Include debug.h.
(initialize_tree_contains_struct): New.
(init_ttree): Call it.
(tree_node_structure_for_code): Factor out of ...
(tree_node_structure): ... here.
* treestruct.def (TS_PHI_NODE): Remove.
(TS_GIMPLE_STATEMENT): Remove.

From-SVN: r149290

15 years agotree-pretty-print.c (dump_generic_node): Protect against NULL op0.
Diego Novillo [Mon, 6 Jul 2009 17:04:34 +0000 (13:04 -0400)]
tree-pretty-print.c (dump_generic_node): Protect against NULL op0.

* tree-pretty-print.c (dump_generic_node): Protect
against NULL op0.
(debug_tree_chain): Handle cycles.

From-SVN: r149289

15 years ago* lib/target-supports.exp
Nathan Froyd [Mon, 6 Jul 2009 15:15:53 +0000 (15:15 +0000)]
* lib/target-supports.exp
(check_effective_target_mips_newabi_large_long_double): New.
* gcc.target/mips/fpr-moves-5.c: Require mips_newabi_large_long_double
target.
* gcc.target/mips/fpr-moves-6.c: Likewise.

From-SVN: r149286

15 years agotrans.c (Handled_Sequence_Of_Statements_to_gnu, [...]): Attach the exception propagat...
Olivier Hainque [Mon, 6 Jul 2009 14:33:11 +0000 (14:33 +0000)]
trans.c (Handled_Sequence_Of_Statements_to_gnu, [...]): Attach the exception propagation reraise fallback to the sequence end label...

        * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
        setjmp_longjmp): Attach the exception propagation reraise fallback
        to the sequence end label location when we have it.

From-SVN: r149285

15 years agolib1funcs.h (FMOVD_WORKS): Only define if __FMOVD_ENABLED__ is defined.
Nick Clifton [Mon, 6 Jul 2009 13:55:09 +0000 (13:55 +0000)]
lib1funcs.h (FMOVD_WORKS): Only define if __FMOVD_ENABLED__ is defined.

        * config.sh/lib1funcs.h (FMOVD_WORKS): Only define if
        __FMOVD_ENABLED__ is defined.
        * config/sh/sh.h
        (TARGET_FMOVD): Provide a default definition.
        (MASK_FMOVD): Likewise.
        (TARGET_CPU_CPP_BUILTINS): Define
        __FMOVD_ENABLED__ if TARGET_FMOVD is true.
        * config/sh/sh.md (movdf_i4): For alternative 0 use either one or
        two fmov instructions depending upon whether TARGET_FMOVD is
        enabled.
        (split for DF load from memory into register): Also handle
        MEMs which consist of REG+DISP addressing.
        (split for DF store from register to memory): Likewise.
        (movsf_ie): Always use single fp_mode.
        * config/sh/sh.c (sh_override_options): Do not automatically
        enable TARGET_MOVD for the SH2A when supporting doubles - leave
        that to the -mfmovd command line switch.
        (broken_move): Do not restrict fldi test to only the SH4 and SH4A.
        (fldi_ok): Always allow.
        * config/sh/sh.opt (mfmovd): Remove this switch.
        * doc/invoke.texi (-mfmovd): Remove documentation of this switch.

Co-Authored-By: DJ Delorie <dj@redhat.com>
From-SVN: r149283

15 years agore PR rtl-optimization/30807 (postreload bug (might be generic in trunk))
J"orn Rennecke [Mon, 6 Jul 2009 13:28:22 +0000 (13:28 +0000)]
re PR rtl-optimization/30807 (postreload bug (might be generic in trunk))

PR rtl-optimization/30807
* postreload.c (reload_combine): For every new use of REG_SUM,
record the use of BASE.

Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r149282

15 years ago* params.def: Revert my accidental commit at 2009-06-30.
Jan Hubicka [Mon, 6 Jul 2009 09:37:01 +0000 (11:37 +0200)]
* params.def: Revert my accidental commit at 2009-06-30.

From-SVN: r149279

15 years agodecl.c: Replace %H by an explicit location.
Manuel López-Ibáñez [Mon, 6 Jul 2009 09:09:47 +0000 (09:09 +0000)]
decl.c: Replace %H by an explicit location.

2009-07-06  Manuel López-Ibáñez  <manu@gcc.gnu.org>

cp/
* decl.c: Replace %H by an explicit location. Update all calls.
* except.c: Likewise.
* semantics.c: Likewise.
* parser.c: Likewise.

From-SVN: r149277

15 years agore PR c++/40557 (ICE with template union)
Simon Martin [Mon, 6 Jul 2009 04:55:20 +0000 (04:55 +0000)]
re PR c++/40557 (ICE with template union)

gcc/cp/

2009-07-06  Simon Martin  <simartin@users.sourceforge.net>

PR c++/40557
* pt.c (perform_typedefs_access_check, get_types_needing_access_check,
append_type_to_template_for_access_check_1): Use
RECORD_OR_UNION_CODE_P.

gcc/testsuite/

2009-07-06  Simon Martin  <simartin@users.sourceforge.net>

PR c++/40557
* g++.dg/template/union2.C: New test.

From-SVN: r149276

15 years agoDaily bump.
GCC Administrator [Mon, 6 Jul 2009 00:16:43 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149268

15 years agore PR fortran/40646 ([F03] array-valued procedure pointer components)
Paul Thomas [Sun, 5 Jul 2009 19:13:59 +0000 (19:13 +0000)]
re PR fortran/40646 ([F03] array-valued procedure pointer components)

2009-07-05  Paul Thomas  <pault@gcc.gnu.org>
and Tobias Burnus <burnus@gcc.gnu.org>

PR fortran/40646
* gfortran.h : Change the compcall member of the 'value' union
in the gfc_expr structure so that its fields overlap with the
'function' member.
* resolve.c (resolve_compcall): Set the function.esym.
* trans-expr.c (gfc_trans_arrayfunc_assign): Use
is_proc_ptr_comp in the condition.
* dependency.c (gfc_full_array_ref_p): Ensure that 'contiguous'
retunrs a value if non-NULL.

2009-07-05  Paul Thomas  <pault@gcc.gnu.org>
and Tobias Burnus <burnus@gcc.gnu.org>

PR fortran/40646
* gfortran.dg/func_assign_3.f90 : New test.

From-SVN: r149262

15 years ago*
Joseph Myers [Sun, 5 Jul 2009 17:59:29 +0000 (18:59 +0100)]
*
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoi.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stol.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stold.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoll.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoul.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoull.cc,
testsuite/21_strings/basic_string/numeric_conversions/wchar_t/to_wstring.cc,
testsuite/ext/vstring/element_access/char/front_back.cc,
testsuite/ext/vstring/element_access/wchar_t/front_back.cc,
testsuite/ext/vstring/init-list.cc,
testsuite/ext/vstring/moveable.cc,
testsuite/ext/vstring/requirements/citerators.cc,
testsuite/ext/vstring/requirements/explicit_instantiation/char16_t/1.cc,
testsuite/ext/vstring/requirements/explicit_instantiation/char32_t/1.cc:
Use dg-require-string-conversions.

From-SVN: r149260

15 years agopt.c (retrieve_specialization): Don't get confused by a using-declaration that brings...
Jason Merrill [Sun, 5 Jul 2009 02:09:15 +0000 (22:09 -0400)]
pt.c (retrieve_specialization): Don't get confused by a using-declaration that brings in another instance of...

* pt.c (retrieve_specialization): Don't get confused by a
using-declaration that brings in another instance of this template
from a base class.

* ptree.c (cxx_print_type): Fix logic.

From-SVN: r149247

15 years agoDaily bump.
GCC Administrator [Sun, 5 Jul 2009 00:16:40 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149246

15 years agore PR target/40636 (Build failed with --enable-build-with-cxx (mingw32 target))
Ian Lance Taylor [Sat, 4 Jul 2009 22:52:57 +0000 (22:52 +0000)]
re PR target/40636 (Build failed with --enable-build-with-cxx (mingw32 target))

PR target/40636
* config/i386/msformat-c.c (mingw_format_attributes): Declare as
EXPORTED_CONST.
(mingw_format_attribute_overrides): Likewise.

From-SVN: r149243

15 years agoinclhack.def (darwin_stdint_5, [...]): New fixes.
Francois-Xavier Coudert [Sat, 4 Jul 2009 21:31:17 +0000 (21:31 +0000)]
inclhack.def (darwin_stdint_5, [...]): New fixes.

* inclhack.def (darwin_stdint_5, darwin_stdint_6,
darwin_stdint_7): New fixes.
* fixincl.x: Regenerate.
* tests/base/stdint.h: Adjust test for new fixes.

From-SVN: r149242

15 years agoFix nits
Eric Botcazou [Sat, 4 Jul 2009 20:22:39 +0000 (20:22 +0000)]
Fix nits

From-SVN: r149241

15 years ago* cp-tree.h (LANG_DECL_FN_CHECK): Fix non-checking version.
Jason Merrill [Sat, 4 Jul 2009 17:48:02 +0000 (13:48 -0400)]
* cp-tree.h (LANG_DECL_FN_CHECK): Fix non-checking version.

From-SVN: r149239

15 years agore PR ada/40608 (Ada build fails)
Francois-Xavier Coudert [Sat, 4 Jul 2009 17:28:32 +0000 (17:28 +0000)]
re PR ada/40608 (Ada build fails)

PR ada/40608
* init.c (APPLE): Include <mach/mach_init.h>.
(__gnat_is_stack_guard, APPLE): Add ATTRIBUTE_UNUSED marker.

From-SVN: r149238

15 years agotrans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): For integer maxloc initialize limit...
Jakub Jelinek [Sat, 4 Jul 2009 17:20:46 +0000 (19:20 +0200)]
trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): For integer maxloc initialize limit to -huge-1 rather than just -huge.

* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): For integer
maxloc initialize limit to -huge-1 rather than just -huge.

* gfortran.dg/maxloc_1.f90: New test.

From-SVN: r149236

15 years agore PR debug/40596 (Bad debug info for local variables on i386.)
Jakub Jelinek [Sat, 4 Jul 2009 17:19:26 +0000 (19:19 +0200)]
re PR debug/40596 (Bad debug info for local variables on i386.)

PR debug/40596
* dwarf2out.c (based_loc_descr): For crtl->stack_realign_tried
don't check cfa.reg.  Instead of cfa.indirect use
fde && fde->drap_reg != INVALID_REGNUM test.

From-SVN: r149235

15 years ago* postreload.c (reload_combine): Replace CONST_REG with INDEX_REG.
Eric Botcazou [Sat, 4 Jul 2009 17:04:03 +0000 (17:04 +0000)]
* postreload.c (reload_combine): Replace CONST_REG with INDEX_REG.

From-SVN: r149234

15 years agoMove testsuite log into testsuite/ChangeLog
Vladimir Makarov [Sat, 4 Jul 2009 13:57:11 +0000 (13:57 +0000)]
Move testsuite log into testsuite/ChangeLog

From-SVN: r149228

15 years agore PR fortran/40593 (Proc-pointer returning function as actual argument)
Janus Weil [Sat, 4 Jul 2009 12:28:43 +0000 (14:28 +0200)]
re PR fortran/40593 (Proc-pointer returning function as actual argument)

2009-07-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40593
* interface.c (compare_actual_formal): Take care of proc-pointer-valued
functions as actual arguments.
* trans-expr.c (gfc_conv_procedure_call): Ditto.
* resolve.c (resolve_specific_f0): Use the correct ts.

2009-07-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40593
* gfortran.dg/proc_ptr_result_6.f90: New.

From-SVN: r149227

15 years ago* gcc.dg/framework-2.c: Adjust testcase to pass.
Francois-Xavier Coudert [Sat, 4 Jul 2009 11:33:17 +0000 (11:33 +0000)]
* gcc.dg/framework-2.c: Adjust testcase to pass.

From-SVN: r149226

15 years agoada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
Eric Botcazou [Sat, 4 Jul 2009 10:51:31 +0000 (10:51 +0000)]
ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.

* ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
(SET_DECL_LANG_SPECIFIC): Likewise.
(TYPE_RM_VALUE): New macro.
(SET_TYPE_RM_VALUE): Likewise.
(TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE.
(TYPE_RM_MIN_VALUE): Likewise.
(TYPE_RM_MAX_VALUE): Likewise.
(SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE.
(SET_TYPE_RM_MIN_VALUE): Likewise.
(SET_TYPE_RM_MAX_VALUE): Likewise.
* decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Remove kludge.

From-SVN: r149225

15 years agore PR ada/40631 (bootstrap with Ada fails on __gnat_backtrace warning on mips-linux)
Laurent GUERBY [Sat, 4 Jul 2009 10:11:57 +0000 (10:11 +0000)]
re PR ada/40631 (bootstrap with Ada fails on __gnat_backtrace warning on mips-linux)

2009-07-04  Laurent GUERBY  <laurent@guerby.net>

PR ada/40631
* tracebak.c (__gnat_backtrace): Fix old-style definition.

From-SVN: r149224

15 years agore PR c++/40619 ([c++0x] ICE on repeated decltype expression in auto functions)
Jason Merrill [Sat, 4 Jul 2009 04:34:03 +0000 (00:34 -0400)]
re PR c++/40619 ([c++0x] ICE on repeated decltype expression in auto functions)

PR c++/40619
* cp-tree.h (struct lang_decl_parm): New.
(struct lang_decl): Add it.
(LANG_DECL_PARM_CHECK): New.
(DECL_PARM_INDEX): New.
* decl2.c (parm_index): Remove.
* lex.c (retrofit_lang_decl): Handle parms.
(cxx_dup_lang_specific_decl): Likewise.
* mangle.c (write_expression): Adjust.
* tree.c (cp_tree_equal): Adjust.
(decl_linkage): Only check DECL_COMDAT for functions and variables.
* parser.c (cp_parser_parameter_declaration_list): Set
DECL_PARM_INDEX.
* pt.c (iterative_hash_template_arg): Hash it.

From-SVN: r149223

15 years agore PR fortran/40638 (RTE: "Unit number in I/O statement too large" -- fails with...
Jerry DeLisle [Sat, 4 Jul 2009 04:25:20 +0000 (04:25 +0000)]
re PR fortran/40638 (RTE: "Unit number in I/O statement too large" -- fails with any low value)

2009-07-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/40638
* gfortran.dg/unit_1.f90: New test.

From-SVN: r149222

15 years agocp-tree.h (struct lang_decl): Overhaul.
Jason Merrill [Sat, 4 Jul 2009 00:43:26 +0000 (20:43 -0400)]
cp-tree.h (struct lang_decl): Overhaul.

* cp-tree.h (struct lang_decl): Overhaul.
(struct lang_decl_flags): Remove.
(struct lang_decl_base): New.
(struct lang_decl_min): New.
(struct lang_decl_fn): New.
(struct lang_decl_ns): New.
(CAN_HAVE_FULL_LANG_DECL_P): Replace with LANG_DECL_HAS_MIN.
(LANG_DECL_MIN_CHECK): New.
(LANG_DECL_FN_CHECK): New.
(LANG_DECL_NS_CHECK): New.
(STRIP_TEMPLATE): New.
(NON_THUNK_FUNCTION_CHECK): Remove.
(DECL_DECLARES_FUNCTION_P): New.
(lots): Adjust.
* lex.c (retrofit_lang_decl, cxx_dup_lang_specific_decl): Adjust.
* decl.c (push_local_name, duplicate_decls): Adjust.
* decl2.c (start_objects): Don't set u2sel.
* semantics.c (finish_omp_threadprivate): Adjust.
* class.c (build_clone): Don't do much on TEMPLATE_DECLs.
(decl_cloned_function_p): Out-of-line implementation of macros.
(clone_function_decl, adjust_clone_args): Use DECL_CLONED_FUNCTION_P.
* mangle.c (write_unqualified_name): Don't check function flags
on non-functions.
* method.c (make_alias_for): Don't set DECL_CLONED_FUNCTION.
* pt.c (build_template_decl): Don't set function flags.
(check_default_tmpl_args): Check that it's a function.
(instantiate_template): Use DECL_ABSTRACT_ORIGIN to find the
cloned template.

* pt.c (tsubst_decl) [FUNCTION_DECL]: Don't tsubst
DECL_CLONED_FUNCTION.

* cp-tree.h (struct lang_type_class): Move sorted_fields here.
* class.c (finish_struct_1): Adjust.
* ptree.c (cxx_print_decl, cxx_print_type): Adjust.
* search.c (lookup_field_1): Adjust.

* cp-tree.h (CLASSTYPE_INLINE_FRIENDS): Remove.
* decl.c (finish_method): Don't add to it.
* class.c (fixup_pending_inline): Remove.
(fixup_inline_methods): Remove.
(finish_struct_1): Don't call it.

* error.c (dump_function_name): Handle null name.

From-SVN: r149217

15 years agoDaily bump.
GCC Administrator [Sat, 4 Jul 2009 00:16:32 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149216

15 years agore PR target/40587 (Revision 139590 caused ICE in emit_swap_insn at reg-stack.c:827)
Vladimir Makarov [Fri, 3 Jul 2009 22:36:31 +0000 (22:36 +0000)]
re PR target/40587 (Revision 139590 caused ICE in emit_swap_insn at reg-stack.c:827)

2009-07-03  Vladimir Makarov  <vmakarov@redhat.com>

PR target/40587
* ira.c (build_insn_chain): Use DF_LR_OUT instead of
df_get_live_out.
* testsuite/gfortran.dg/pr40587.f: New test.

From-SVN: r149212

15 years agore PR tree-optimization/40640 (ICE in set_value_range, at tree-vrp.c:383)
Richard Guenther [Fri, 3 Jul 2009 22:09:12 +0000 (22:09 +0000)]
re PR tree-optimization/40640 (ICE in set_value_range, at tree-vrp.c:383)

2009-07-03  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/40640
* tree-switch-conversion.c (build_arrays): Perform arithmetic
in original type.

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

From-SVN: r149211

15 years agoipa-inline.c (cgraph_decide_inlining_incrementally): When optimizing for size, reduce...
Jan Hubicka [Fri, 3 Jul 2009 20:28:14 +0000 (22:28 +0200)]
ipa-inline.c (cgraph_decide_inlining_incrementally): When optimizing for size, reduce amount of inlining.

* ipa-inline.c (cgraph_decide_inlining_incrementally): When optimizing
for size, reduce amount of inlining.

From-SVN: r149210

15 years agoinclhack.def (solaris_int_types): New fix.
Eric Botcazou [Fri, 3 Jul 2009 20:27:05 +0000 (20:27 +0000)]
inclhack.def (solaris_int_types): New fix.

* inclhack.def (solaris_int_types): New fix.
* fixincl.x: Regenerate.
* tests/base/sys/int_types.h: New file.

From-SVN: r149209

15 years agore PR middle-end/34163 (10% performance regression since Nov 1 on Polyhedron's "NF...
Richard Guenther [Fri, 3 Jul 2009 14:11:14 +0000 (14:11 +0000)]
re PR middle-end/34163 (10% performance regression since Nov 1 on Polyhedron's "NF" on AMD64)

2009-07-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/34163
* tree-chrec.c (chrec_convert_1): Fold (T2)(t +- x) to
(T2)t +- (T2)x if t +- x is known to not overflow and
the conversion widens the operation.
* Makefile.in (tree-chrec.o): Add $(FLAGS_H) dependency.

* gfortran.dg/pr34163.f90: New testcase.

From-SVN: r149207

15 years agoloop-24.c: Update dump file matching; enable -O2.
Jan Hubicka [Fri, 3 Jul 2009 13:18:28 +0000 (15:18 +0200)]
loop-24.c: Update dump file matching; enable -O2.

* gcc.dg/tree-ssa/loop-24.c: Update dump file matching; enable -O2.
* gcc.dg/tree-ssa/loop-25.c: Likewise.
* gcc.dg/tree-ssa/loop-26.c: Likewise.
* gcc.dg/tree-ssa/pr32044.c: Likewise.
* gcc.dg/tree-ssa/loop-29.c: Likewise.
* gcc.dg/tree-ssa/loop-10.c: Likewise.
* gnat.dg/loop_optimization6.adb: Enable -O2.

* ipa-pure-const.c (analyze): Update loop optimizer init.
* tree-ssa-loop-iv-canon.c (empty_loop_p, remove_empty_loop,
try_remove_empty_loop, remove_empty_loops): Remove.
* tree-ssa-loop.c (tree_ssa_empty_loop, pass_empty_loop): Remove.
* tree-ssa-dce.c (find_obviously_necessary_stmts): Use finiteness info
to mark regular loops as neccesary.
(degenerate_phi_p): New function.
(propagate_necessity, remove_dead_phis): Use it.
(forward_edge_to_pdom): Likewise.
(eliminate_unnecessary_stmts): Take care to remove uses of results of
virtual PHI nodes that became unreachable.
(perform_tree_ssa_dce): Initialize/deinitialize loop optimizer.
* tree-flow.h (remove_empty_loops): Remove.
* passes.c (init_optimization_passes): Remove.

From-SVN: r149206

15 years agoi386.md (fix_trunc<mode>_fisttp_i387_1): Use can_create_pseudo_p.
Uros Bizjak [Fri, 3 Jul 2009 11:30:51 +0000 (13:30 +0200)]
i386.md (fix_trunc<mode>_fisttp_i387_1): Use can_create_pseudo_p.

* config/i386/i386.md (fix_trunc<mode>_fisttp_i387_1): Use
can_create_pseudo_p.
(*fix_trunc<mode>_i387_1): Ditto.
(*floathi<mode>2_1): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_1): Ditto.
(*fistdi2_1): Ditto.
(*fist<mode>2_1): Ditto.
(frndintxf2_floor): Ditto.
(*fist<mode>2_floor_1): Ditto.
(frndintxf2_ceil): Ditto.
(*fist<mode>2_ceil_1): Ditto.
(frndintxf2_trunc): Ditto.
(frndintxf2_mask_pm): Ditto.
(fxam<mode>2_i387_with_temp): Ditto.
* config/i386/sse.md (mulv16qi3): Ditto.
(*sse2_mulv4si3): Ditto.
(mulv2di3): Ditto.
(sse4_2_pcmpestr): Ditto.
(sse4_2_pcmpistr): Ditto.

From-SVN: r149205

15 years agoDaily bump.
GCC Administrator [Fri, 3 Jul 2009 00:16:38 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149204

15 years agotree-ssa-dce.c (bb_contains_live_stmts): New bitmap.
Jan Hubicka [Thu, 2 Jul 2009 22:56:21 +0000 (00:56 +0200)]
tree-ssa-dce.c (bb_contains_live_stmts): New bitmap.

* tree-ssa-dce.c (bb_contains_live_stmts): New bitmap.
(mark_stmt_necessary): Set it.
(mark_operand_necessary): Set it.
(mark_control_dependent_edges_necessary): Set it.
(mark_virtual_phi_result_for_renaming): New function.
(get_live_post_dom): New function.
(forward_edge_to_pdom): New function.
(remove_dead_stmt): Fix handling of control dependences.
(tree_dce_init): Init new bitmap.
(tree_dce_done): Free it.

From-SVN: r149199

15 years agolibgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS options when choosing a multilib.
Richard Sandiford [Thu, 2 Jul 2009 20:55:23 +0000 (20:55 +0000)]
libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS options when choosing a multilib.

libgomp/
* testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
options when choosing a multilib.

From-SVN: r149195

15 years agotypeck.c (cp_build_binary_op): Move warnings about use of NULL in arithmetic earlier...
Mark Mitchell [Thu, 2 Jul 2009 17:52:37 +0000 (17:52 +0000)]
typeck.c (cp_build_binary_op): Move warnings about use of NULL in arithmetic earlier and allow comparisions of...

2009-07-02  Mark Mitchell  <mark@codesourcery.com>

* typeck.c (cp_build_binary_op): Move warnings about use of NULL
in arithmetic earlier and allow comparisions of NULL with
pointers-to-members.

2009-07-02  Mark Mitchell  <mark@codesourcery.com>

* g++.dg/warn/null4.C: Extend.

From-SVN: r149190

15 years agoUse hash tables for template specialization lookup.
Jason Merrill [Thu, 2 Jul 2009 17:28:07 +0000 (13:28 -0400)]
Use hash tables for template specialization lookup.

* pt.c (struct spec_entry): New type.
(decl_specializations, type_specializations): New hash tables.
(register_specialization, retrieve_specialization): Use them.
(reregister_specialization, lookup_template_class): Use them.
(eq_specializations, hash_tmpl_and_args, hash_specialization): New.
(iterative_hash_template_arg): New.
(init_template_processing): New
(process_partial_specialization): Don't look to see if we already
have this partial specialization.
(maybe_process_partial_specialization): Handle reassigning
full specializations when we get an explicit specialization
of the partial instantiation.
(tsubst_friend_function): Adjust specialization reassignment code.
(instantiate_template): Only do one lookup.
(instantiate_decl): Don't do any lookup.
* cp-tree.h: Declare init_template_processing.
* decl.c (duplicate_decls): Pass args to reregister_specialization.

From-SVN: r149188

15 years ago* tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
Rainer Orth [Thu, 2 Jul 2009 16:10:25 +0000 (16:10 +0000)]
* tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.

From-SVN: r149182

15 years agore PR bootstrap/40617 (Revision 149170 breaks bootstrap)
Richard Guenther [Thu, 2 Jul 2009 15:50:26 +0000 (15:50 +0000)]
re PR bootstrap/40617 (Revision 149170 breaks bootstrap)

2009-07-02  Richard Guenther  <rguenther@suse.de>

PR bootstrap/40617
* tree-ssa-structalias.c (new_var_info): Initialize
is_restrict_var.

From-SVN: r149179

15 years agore PR fortran/32131 (knowing that stride==1 when using allocated arrays and escaping...
Michael Matz [Thu, 2 Jul 2009 15:31:28 +0000 (15:31 +0000)]
re PR fortran/32131 (knowing that stride==1 when using allocated arrays and escaping allocatable arrays)

fortran/
        PR fortran/32131
        * trans-array.c (gfc_conv_descriptor_stride_get): Return
        constant one for strides in the first dimension of ALLOCATABLE
        arrays.

testsuite/
        PR fortran/32131
        * gfortran.dg/pr32921.f: Adjust.

From-SVN: r149178

15 years agolocal-pure-const.c: New testcase.
Jan Hubicka [Thu, 2 Jul 2009 15:16:08 +0000 (17:16 +0200)]
local-pure-const.c: New testcase.

* gcc.dg/tree-ssa/local-pure-const.c: New testcase.
* ipa-pure-const.c (check_op): Use PTA info to see if indirect_ref is
local.

From-SVN: r149176

15 years agoexpmed.c (emit_cstore, [...]): Accept target_mode instead of recomputing it.
Paolo Bonzini [Thu, 2 Jul 2009 11:23:23 +0000 (11:23 +0000)]
expmed.c (emit_cstore, [...]): Accept target_mode instead of recomputing it.

2009-07-02  Paolo Bonzini  <bonzini@gnu.org>

* expmed.c (emit_cstore, emit_store_flag_1): Accept target_mode
instead of recomputing it.  Adjust calls.
(emit_store_flag): Adjust recursive calls.

From-SVN: r149171

15 years agotree-ssa-live.c (remove_unused_locals): Do not remove heap variables.
Richard Guenther [Thu, 2 Jul 2009 10:18:24 +0000 (10:18 +0000)]
tree-ssa-live.c (remove_unused_locals): Do not remove heap variables.

2009-07-02  Richard Guenther  <rguenther@suse.de>

* tree-ssa-live.c (remove_unused_locals): Do not remove
heap variables.
* tree-ssa-structalias.c (handle_lhs_call): Delay setting
of DECL_EXTERNAL for HEAP variables.
(compute_points_to_sets): Set DECL_EXTERNAL for escaped
HEAP variables.  Do not adjust RESTRICT vars.
(find_what_var_points_to): Nobody cares if something
points to READONLY.

From-SVN: r149170

15 years agoremove sanitzation leakage
Nick Clifton [Thu, 2 Jul 2009 07:20:22 +0000 (07:20 +0000)]
remove sanitzation leakage

From-SVN: r149169

15 years agounwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Move pc_low and pc_high declara...
Ben Elliston [Thu, 2 Jul 2009 04:50:20 +0000 (04:50 +0000)]
unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Move pc_low and pc_high declarations to the top of the function.

* unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Move
pc_low and pc_high declarations to the top of the function.

From-SVN: r149167

15 years ago* cp-tree.h (DECL_CLASS_TEMPLATE_P): Use DECL_IMPLICIT_TYPEDEF_P.
Jason Merrill [Thu, 2 Jul 2009 03:51:04 +0000 (23:51 -0400)]
* cp-tree.h (DECL_CLASS_TEMPLATE_P): Use DECL_IMPLICIT_TYPEDEF_P.

From-SVN: r149166

15 years agopt.c (register_specialization): Use duplicate_decls to merge the argument with a...
Jason Merrill [Thu, 2 Jul 2009 03:50:57 +0000 (23:50 -0400)]
pt.c (register_specialization): Use duplicate_decls to merge the argument with a previous specialization.

* pt.c (register_specialization): Use duplicate_decls to merge
the argument with a previous specialization.
(check_explicit_specialization): Call register_specialization to
merge the TEMPLATE_DECL with a previous version.
(determine_specialization): Return the args even if fn is a template.

From-SVN: r149165

15 years agomep.c (mep_handle_option): Leave IVC2 control registers as fixed.
DJ Delorie [Thu, 2 Jul 2009 02:16:32 +0000 (22:16 -0400)]
mep.c (mep_handle_option): Leave IVC2 control registers as fixed.

* config/mep/mep.c (mep_handle_option): Leave IVC2 control
registers as fixed.
(mep_interrupt_saved_reg): Save appropriate IVC2 control
registers.
* config/mep/mep-ivc2.cpu: Add VOLATILE to insns that make
unspecified accesses to control registers.
* config/mep/intrinsics.md: Regenerate.
* config/mep/intrinsics.h: Regenerate.
* config/mep/mep-intrin.h: Regenerate.

From-SVN: r149164

15 years agoTweak moxie prologue and epilogue code.
Anthony Green [Thu, 2 Jul 2009 01:18:42 +0000 (01:18 +0000)]
Tweak moxie prologue and epilogue code.

From-SVN: r149163

15 years agoDaily bump.
GCC Administrator [Thu, 2 Jul 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149162

15 years agore PR bootstrap/40347 (i386-darwin ICEs while building libgcc during stage2)
Richard Henderson [Wed, 1 Jul 2009 23:21:17 +0000 (16:21 -0700)]
re PR bootstrap/40347 (i386-darwin ICEs while building libgcc during stage2)

PR bootstrap/40347
* function.c (reposition_prologue_and_epilogue_notes): If epilogue
contained no insns, reposition note before last insn.

From-SVN: r149158

15 years agore PR debug/40431 (ICE in div_data_align, at dwarf2out.c:533 while configuring sparcv...
Richard Henderson [Wed, 1 Jul 2009 23:16:06 +0000 (16:16 -0700)]
re PR debug/40431 (ICE in div_data_align, at dwarf2out.c:533 while configuring sparcv9 libgcc)

PR debug/40431
* dwarf2out.c (def_cfa_1): Revert 2009-06-11 change for
DW_CFA_def_cfa_offset and DW_CFA_def_cfa.

From-SVN: r149157

15 years agoFix PR 40558, undo part of June 25th patch
Michael Meissner [Wed, 1 Jul 2009 22:34:26 +0000 (22:34 +0000)]
Fix PR 40558, undo part of June 25th patch

Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Revital Eres <eres@il.ibm.com>
From-SVN: r149155

15 years agocombine.c (force_to_mode): Handle TRUNCATE.
Adam Nemet [Wed, 1 Jul 2009 21:34:58 +0000 (21:34 +0000)]
combine.c (force_to_mode): Handle TRUNCATE.

* combine.c (force_to_mode): Handle TRUNCATE.  Factor out
truncation from operands in binary operations.

testsuite/
* gcc.target/mips/truncate-4.c: New testcase.

From-SVN: r149154

15 years agorevert: expmed.c (store_bit_field_1): Properly truncate the paradoxical subreg of...
Adam Nemet [Wed, 1 Jul 2009 21:22:28 +0000 (21:22 +0000)]
revert: expmed.c (store_bit_field_1): Properly truncate the paradoxical subreg of op0 to the original op0.

Revert:
2009-01-11  Adam Nemet  <anemet@caviumnetworks.com>
* expmed.c (store_bit_field_1): Properly truncate the paradoxical
subreg of op0 to the original op0.

* expmed.c (store_bit_field_1): Use a temporary as the destination
instead of a paradoxical subreg when we need to truncate the result.

From-SVN: r149153

15 years agoFix nits
Eric Botcazou [Wed, 1 Jul 2009 20:20:25 +0000 (20:20 +0000)]
Fix nits

From-SVN: r149152

15 years agomep-ivc2.cpu (cmov, [...]): Add intrinsic names to VLIW variants.
DJ Delorie [Wed, 1 Jul 2009 20:07:41 +0000 (16:07 -0400)]
mep-ivc2.cpu (cmov, [...]): Add intrinsic names to VLIW variants.

* config/mep/mep-ivc2.cpu (cmov, cmovc, cmovh): Add intrinsic names to VLIW variants.
(ivc2rm, ivc2crn): Make data type consistent with non-VLIW variants.
* config/mep/intrinsics.md: Regenerate.
* config/mep/intrinsics.h: Regenerate.
* config/mep/mep-intrin.h: Regenerate.

From-SVN: r149151

15 years agore PR debug/40462 (ICE in dwarf2out_begin_epilogue, at dwarf2out.c:2773 while compili...
Jakub Jelinek [Wed, 1 Jul 2009 19:25:52 +0000 (21:25 +0200)]
re PR debug/40462 (ICE in dwarf2out_begin_epilogue, at dwarf2out.c:2773 while compiling mlib-tgt.adb)

PR debug/40462
* jump.c (returnjump_p): Revert last patch.
* dwarf2out.c (dwarf2out_begin_epilogue): Handle SEQUENCEs.

From-SVN: r149150

15 years agolibffi-dg.exp (libffi-init): Set ld_library_path to "" before adding paths.
Richard Sandiford [Wed, 1 Jul 2009 19:15:33 +0000 (19:15 +0000)]
libffi-dg.exp (libffi-init): Set ld_library_path to "" before adding paths.

libffi/
* testsuite/lib/libffi-dg.exp (libffi-init): Set ld_library_path
to "" before adding paths.  (This reinstates an assignment that
was removed by my 2009-06-30 commit, but changes the initial
value from "." to "".)

From-SVN: r149149

15 years agoHTML_401F.java (defineElements): Split this huge method into...
Jakub Jelinek [Wed, 1 Jul 2009 19:13:03 +0000 (21:13 +0200)]
HTML_401F.java (defineElements): Split this huge method into...

* gnu/javax/swing/text/html/parser/HTML_401F.java (defineElements):
Split this huge method into...
(defineElements1, defineElements2, defineElements3, defineElements4,
defineElements5, defineElements6): ... these smaller methods.

From-SVN: r149148

15 years ago* g++spec.c (lang_specific_driver): Bump num_args by 1.
Ian Lance Taylor [Wed, 1 Jul 2009 18:46:09 +0000 (18:46 +0000)]
* g++spec.c (lang_specific_driver): Bump num_args by 1.

From-SVN: r149147

15 years agore PR ada/40609 (Ada build fails)
John David Anglin [Wed, 1 Jul 2009 18:10:45 +0000 (18:10 +0000)]
re PR ada/40609 (Ada build fails)

PR ada/40609
init.c (__gnat_error_handler): Add ATTRIBUTE_UNUSED to ucontext
argument.

From-SVN: r149146

15 years agore PR testsuite/40601 (Errors in "make check")
H.J. Lu [Wed, 1 Jul 2009 17:07:31 +0000 (17:07 +0000)]
re PR testsuite/40601 (Errors in "make check")

2009-07-01  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/40601
* testsuite/lib/libffi-dg.exp (libffi-init): Properly set
gccdir.  Adjust ld_library_path for gcc only if gccdir isn't
empty.

From-SVN: r149145

15 years agore PR target/40575 (FAIL: gcc.dg/falign-labels-1.c execution test)
John David Anglin [Wed, 1 Jul 2009 16:53:26 +0000 (16:53 +0000)]
re PR target/40575 (FAIL: gcc.dg/falign-labels-1.c execution test)

PR target/40575
* pa.md (casesi32p): Use jump table label to determine the offset
of the jump table.
(casesi64p): Likewise.

From-SVN: r149144

15 years agopa.c (forward_branch_p): Return bool type.
John David Anglin [Wed, 1 Jul 2009 15:47:33 +0000 (15:47 +0000)]
pa.c (forward_branch_p): Return bool type.

* pa.c (forward_branch_p): Return bool type.  Use instruction addresses
when available.  Assert that INSN has a jump label.
(pa_adjust_insn_length): Don't call forward_branch_p if INSN doesn't
have a jump label.

From-SVN: r149141

15 years agore PR tree-optimization/19831 (Missing DSE/malloc/free optimization)
Richard Guenther [Wed, 1 Jul 2009 12:27:33 +0000 (12:27 +0000)]
re PR tree-optimization/19831 (Missing DSE/malloc/free optimization)

2009-07-01  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/19831
* tree-ssa-dce.c (propagate_necessity): Calls to functions
that only act as barriers do not make any previous stores
necessary.
* tree-ssa-structalias.c (handle_lhs_call): Delay making
HEAP variables global, do not add a constraint from nonlocal.
(find_func_aliases): Handle escapes through return statements.
(compute_points_to_sets): Make escaped HEAP variables global.

* gcc.dg/tree-ssa/20041122-1.c: Enable TBAA, scan FRE dump,
make allocated memory escape.  Un-XFAIL.
* gcc.dg/vect/pr21591.c: Make allocated memory escape.
* gcc.dg/vect/pr31699.c: Likewise.
* gcc.dg/tree-ssa/ssa-dce-7.c: New testcase.

libmudflap/
* testsuite/libmudflap.c/fail11-frag.c: Make allocated memory
escape.
* testsuite/libmudflap.c/fail12-frag.c: Likewise.
* testsuite/libmudflap.c/fail16-frag.c: Likewise.
* testsuite/libmudflap.c/fail31-frag.c: Likewise.

From-SVN: r149140

15 years agoMAINTAINERS: Move myself to the Graphite Reviewers.
Tobias Grosser [Wed, 1 Jul 2009 12:13:57 +0000 (12:13 +0000)]
MAINTAINERS: Move myself to the Graphite Reviewers.

2009-07-01  Tobias Grosser  <grosser@fim.uni-passau.de>

* MAINTAINERS: Move myself to the Graphite Reviewers.

From-SVN: r149138

15 years agore PR bootstrap/40597 (Powerpc bootstrap is broken due to changes in expmed.c)
Paolo Bonzini [Wed, 1 Jul 2009 12:05:56 +0000 (12:05 +0000)]
re PR bootstrap/40597 (Powerpc bootstrap is broken due to changes in expmed.c)

2009-07-01  Paolo Bonzini  <bonzini@gnu.org>

PR bootstrap/40597
* expmed.c (emit_store_flag): Perform a conversion if necessary,
after reducing a DImode cstore to SImode.

From-SVN: r149137

15 years agoexpr.c (expand_expr_real_1): Reinstate fallthrough to TRUTH_ANDIF_EXPR if do_store_fl...
Paolo Bonzini [Wed, 1 Jul 2009 11:50:12 +0000 (11:50 +0000)]
expr.c (expand_expr_real_1): Reinstate fallthrough to TRUTH_ANDIF_EXPR if do_store_flag returns NULL.

2009-07-01  Paolo Bonzini  <bonzini@gnu.org>

* expr.c (expand_expr_real_1): Reinstate fallthrough to
TRUTH_ANDIF_EXPR if do_store_flag returns NULL.

From-SVN: r149136

15 years ago* init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
Eric Botcazou [Wed, 1 Jul 2009 09:08:27 +0000 (09:08 +0000)]
* init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.

From-SVN: r149135

15 years agovax.h (TARGET_BSD_DIVMOD): New macro.
Maciej W. Rozycki [Wed, 1 Jul 2009 01:23:54 +0000 (01:23 +0000)]
vax.h (TARGET_BSD_DIVMOD): New macro.

* config/vax/vax.h (TARGET_BSD_DIVMOD): New macro.  Set to 1.
* config/vax/linux.h (TARGET_BSD_DIVMOD): New macro.  Redefine the
to 0.
* config/vax/vax.c (vax_init_libfuncs): Only redefine udiv_optab
and umod_optab if TARGET_BSD_DIVMOD.
* config/vax/lib1funcs.asm: New file.
* config/vax/t-linux: New file.
* config.gcc (vax-*-linux*): Set tmake_file to vax/t-linux.

From-SVN: r149128

15 years agoDaily bump.
GCC Administrator [Wed, 1 Jul 2009 00:16:57 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149126

15 years agore PR c++/40566 (rejects promoted throw)
Jakub Jelinek [Tue, 30 Jun 2009 22:04:36 +0000 (00:04 +0200)]
re PR c++/40566 (rejects promoted throw)

PR c++/40566
* convert.c (convert_to_integer) <case COND_EXPR>: Don't convert
to type arguments that have void type.

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

From-SVN: r149121

15 years agore PR debug/40573 (DWARF for inlined subroutines refers to the outlined copy)
Jakub Jelinek [Tue, 30 Jun 2009 22:03:27 +0000 (00:03 +0200)]
re PR debug/40573 (DWARF for inlined subroutines refers to the outlined copy)

PR debug/40573
* dwarf2out.c (gen_formal_parameter_die): Call
equate_decl_number_to_die if node is different from origin.

From-SVN: r149120

15 years agogen-vect-25.c (n): New variable.
Nathan Froyd [Tue, 30 Jun 2009 21:10:14 +0000 (21:10 +0000)]
gen-vect-25.c (n): New variable.

* gcc.dg/tree-ssa/gen-vect-25.c (n): New variable.
(main): Pass n to main_1 instead.
* gcc.dg/tree-ssa/gen-vect-28.c (off): New variable.
(main_1): New function, split off from...
(main): ...here.  Pass `off' to main_1 instead.

From-SVN: r149119

15 years agore PR c++/40595 ([C++0x] ICE trying to use sfinae with variadic template pack expansion)
Jason Merrill [Tue, 30 Jun 2009 19:36:36 +0000 (15:36 -0400)]
re PR c++/40595 ([C++0x] ICE trying to use sfinae with variadic template pack expansion)

PR c++/40595
* pt.c (tsubst_pack_expansion): Handle unexpanded packs in an
EXPR_PACK_EXPANSION.

From-SVN: r149117

15 years agoutils2.c (build_binary_op): Do not use the type of the left operand if...
Eric Botcazou [Tue, 30 Jun 2009 19:20:24 +0000 (19:20 +0000)]
utils2.c (build_binary_op): Do not use the type of the left operand if...

* gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
the type of the left operand if it pads a self-referential type when
the right operand is a constructor.

* gcc-interface/lang-specs.h: Fix copyright date.

From-SVN: r149115

15 years agoEnable building with g++.
Anthony Green [Tue, 30 Jun 2009 18:59:41 +0000 (18:59 +0000)]
Enable building with g++.

From-SVN: r149114

15 years agogcc-defs.exp (gcc-set-multilib-library-path): Delete.
Richard Sandiford [Tue, 30 Jun 2009 18:37:57 +0000 (18:37 +0000)]
gcc-defs.exp (gcc-set-multilib-library-path): Delete.

gcc/testsuite/
* lib/gcc-defs.exp (gcc-set-multilib-library-path): Delete.
* lib/target-libpath.exp (ld_library_path_vars): New variable.
(init_ld_library_path_env_vars): New function, replacing the
orig_*_saved assignments.  Call it after defining it.
(set_ld_library_path_env_vars): Rewrite to use ld_library_path_vars.
(restore_ld_library_path_env_vars): Likewise.
(add_path, find_libgcc_s): New functions.
* lib/objc.exp (objc_init): Use find_libgcc_s instead of
gcc-set-multilib-library-path.
(objc_target_compile): Don't add "." to ld_library_path.
Use add_path.
* lib/gfortran.exp (gfortran_link_flags): Don't add "." to
ld_library_path.  Use add_path.  Use find_libgcc_s instead of
gcc-set-multilib-library-path.
* lib/g++.exp (g++_link_flags): Likewise.
* lib/obj-c++.exp (obj-c++_link_flags): Likewise.
* lib/c-torture.exp: Do not manipulate ld_library_path at the
top level; do it...
(c-torture-execute): ...here instead.  Use $ld_library_path_multilib
to tell when this needs to happen.  Use find_libgcc_s instead of
gcc-set-multilib-library-path.
* lib/gcc-dg.exp: Likewise.
* lib/gnat.exp (gnat_target_compile): Don't add "." to ld_library_path.
* g++.dg/compat/compat.exp (alt_ld_library_path): Don't add "."
unless it is in $ALT_LD_LIBRARY_PATH.
* g++.dg/compat/struct-layout-1.exp (alt_ld_library_path): Likewise.

libffi/
* testsuite/lib/libffi-dg.exp (libffi-init): Don't add "."
to ld_library_path.  Use add_path.  Add just find_libgcc_s
to ld_library_path, not every libgcc multilib directory.

libgomp/
* testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
ld_library_path.  Use add_path.  Add just find_libgcc_s to
ld_library_path, not every libgcc multilib directory.
* testsuite/libgomp.c/c.exp (ld_library_path): Don't call
gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
* testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
Use add_path.
* testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.

libjava/
* testsuite/lib/libjava.exp (libjava_init): Just add
find_libgcc_s to libjava_libgcc_s_path, rather than every
libgcc multilib directory.
(libjava_arguments): Explain why we add "." to ld_library_path.
(gcj_invoke, exec_gij, libjava_invoke): Use add_path.

libmudflap/
* testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "."
to ld_library_path.  Use add_path.  Add just find_libgcc_s to
ld_library_path, not every libgcc multilib directory.

libstdc++-v3/
* testsuite/lib/libstdc++.exp (libstdc++_init): Don't add "."
to ld_library_path.  Use add_path.  Add just find_libgcc_s to
ld_library_path, not every libgcc multilib directory.

From-SVN: r149113

15 years agocgraphunit.c (cgraph_finalize_compilation_unit): Call finalize_size_functions before...
Eric Botcazou [Tue, 30 Jun 2009 17:26:32 +0000 (17:26 +0000)]
cgraphunit.c (cgraph_finalize_compilation_unit): Call finalize_size_functions before further processing.

* cgraphunit.c (cgraph_finalize_compilation_unit): Call
finalize_size_functions before further processing.
* stor-layout.c: Include cgraph.h, tree-inline.h and tree-dump.h.
(variable_size): Call self_referential_size on size expressions
that contain a PLACEHOLDER_EXPR.
(size_functions): New static variable.
(copy_self_referential_tree_r): New static function.
(self_referential_size): Likewise.
(finalize_size_functions): New global function.
* tree.c: Include tree-inline.h.
(push_without_duplicates): New static function.
(find_placeholder_in_expr): New global function.
(substitute_in_expr) <tcc_declaration>: Return the replacement object
on equality.
<tcc_expression>: Likewise.
<tcc_vl_exp>: If the replacement object is a constant, try to inline
the call in the expression.
* tree.h (finalize_size_functions): Declare.
(find_placeholder_in_expr): Likewise.
(FIND_PLACEHOLDER_IN_EXPR): New macro.
(substitute_placeholder_in_expr): Update comment.
* tree-inline.c (remap_decl): Do not unshare trees if do_not_unshare
is true.
(copy_tree_body_r): Likewise.
(copy_tree_body): New static function.
(maybe_inline_call_in_expr): New global function.
* tree-inline.h (struct copy_body_data): Add do_not_unshare field.
(maybe_inline_call_in_expr): Declare.
* Makefile.in (tree.o): Depend on TREE_INLINE_H.
(stor-layout.o): Depend on CGRAPH_H, TREE_INLINE_H, TREE_DUMP_H and
GIMPLE_H.
ada/
* gcc-interface/decl.c: Include tree-inline.h.
(annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
* gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
* gcc-interface/utils2.c: Include tree-inline.
(known_alignment) <CALL_EXPR>: Likewise.

From-SVN: r149112

15 years agore PR fortran/40576 (Endless loop in internal write)
Thomas Koenig [Tue, 30 Jun 2009 17:10:06 +0000 (17:10 +0000)]
re PR fortran/40576 (Endless loop in internal write)

2009-06-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/40576
* gfortran.dg/internal_write_1.f90:  New testcase.

From-SVN: r149109

15 years agore PR fortran/40594 (wrong-code)
Janus Weil [Tue, 30 Jun 2009 17:06:27 +0000 (19:06 +0200)]
re PR fortran/40594 (wrong-code)

2009-06-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40594
* trans-types.c (gfc_get_derived_type): Bugfix, reverting one hunk from
r147206.

2009-06-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40594
* gfortran.dg/derived_pointer_recursion_2.f90: New.

From-SVN: r149108

15 years agotree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Always continue walking.
Richard Guenther [Tue, 30 Jun 2009 15:23:39 +0000 (15:23 +0000)]
tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Always continue walking.

2009-06-30  Richard Guenther  <rguenther@suse.de>

* tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Always
continue walking.
(propagate_necessity): Do not mark reaching defs of stores
as necessary.

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

From-SVN: r149103

15 years agoRevert accidental commit.
Jan Hubicka [Tue, 30 Jun 2009 14:57:54 +0000 (14:57 +0000)]
Revert accidental commit.

From-SVN: r149102

15 years agocfgloopanal.c (check_irred): Move into ...
Jan Hubicka [Tue, 30 Jun 2009 14:56:37 +0000 (16:56 +0200)]
cfgloopanal.c (check_irred): Move into ...

* cfgloopanal.c (check_irred): Move into ...
(mark_irreducible_loops): ... here; return true if ireducible
loops was found.
* ipa-pure-const.c: Include cfgloop.h and tree-scalar-evolution.h
(analyze_function): Try to prove loop finiteness.
* cfgloop.h (mark_irreducible_loops): Update prototype.
* Makefile.in (ipa-pure-const.o): Add dependency on SCEV and CFGLOOP.

From-SVN: r149101

15 years agoMakefile.in (PLUGIN_HEADERS): added ggc, tree-dump, pretty-print.
Basile Starynkevitch [Tue, 30 Jun 2009 14:36:55 +0000 (14:36 +0000)]
Makefile.in (PLUGIN_HEADERS): added ggc, tree-dump, pretty-print.

2009-06-30  Basile Starynkevitch  <basile@starynkevitch.net>

* gcc/Makefile.in (PLUGIN_HEADERS): added ggc, tree-dump, pretty-print.

From-SVN: r149100

15 years agoRemove testsuite in filenames.
H.J. Lu [Tue, 30 Jun 2009 13:58:43 +0000 (06:58 -0700)]
Remove testsuite in filenames.

From-SVN: r149098

15 years agore PR libstdc++/40600 (pair& operator=(pair&& __p) doesn't work without inlining)
Paolo Carlini [Tue, 30 Jun 2009 12:09:57 +0000 (12:09 +0000)]
re PR libstdc++/40600 (pair& operator=(pair&& __p) doesn't work without inlining)

2009-06-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40600
* testsuite/25_algorithms/minmax/2.cc: Fix consistently with
std::minmax return type.
* testsuite/25_algorithms/minmax/3.cc: Likewise.

From-SVN: r149094