Paolo Carlini [Tue, 23 Sep 2008 18:14:24 +0000 (18:14 +0000)]
Implement DR 396 [Ready].
2008-09-23 Paolo Carlini <paolo.carlini@oracle.com>
Implement DR 396 [Ready].
* include/std/bitset (bitset<>::bitset(const std::basic_string<>&,
size_t, size_t, _CharT, _CharT), bitset<>::bitset(const char*,
char, char), bitset<>::to_string(_CharT, _CharT),
bitset<>::_M_copy_from_string(const std::basic_string<>&, size_t,
size_t, _CharT, _CharT), bitset<>::_M_copy_to_string
(std::basic_string<>&, _CharT, _CharT), bitset<>::_M_copy_from_ptr(
const _CharT*, size_t, size_t, size_t, _CharT, _CharT)): Add.
(operator>>(std::basic_istream<>&, bitset<_Nb>&), operator<<(
std::basic_ostream<>&, const bitset<_Nb>&)): Adjust.
* include/debug/bitset (bitset<>::bitset(const std::basic_string<>&,
size_t, size_t, _CharT, _CharT), bitset<>::bitset(const char*,
char, char), bitset<>::to_string(_CharT, _CharT)): Add.
* doc/xml/manual/intro.xml: Add an entry for DR 396.
* testsuite/23_containers/bitset/cons/dr396.cc: Add.
* testsuite/23_containers/bitset/to_string/dr396.cc: Likewise.
From-SVN: r140607
Kai Tietz [Tue, 23 Sep 2008 17:56:45 +0000 (17:56 +0000)]
i386.c (ix86_function_ok_for_sibcall): Correct check for sibcall support for w64.
2008-09-23 Kai Tietz <kai.tietz@onevision.com>
*config/i386/i386.c (ix86_function_ok_for_sibcall): Correct
check for sibcall support for w64.
From-SVN: r140606
Eric Botcazou [Tue, 23 Sep 2008 17:52:40 +0000 (17:52 +0000)]
* gcc.dg/vect/slp-widen-mult-s16.c: Fix typo.
From-SVN: r140605
Eric Botcazou [Tue, 23 Sep 2008 17:47:32 +0000 (17:47 +0000)]
* c-ppoutput.c (cb_used_define): Do nothing for a builtin node.
From-SVN: r140604
Chris Fairles [Tue, 23 Sep 2008 17:34:29 +0000 (17:34 +0000)]
chrono: If _GLIBCXX_USE_MONOTONIC_CLOCK is defined...
2008-09-23 Chris Fairles <cfairles@gcc.gnu.org>
* include/std/chrono: If _GLIBCXX_USE_MONOTONIC_CLOCK is defined, don't
typedef monotonic_clock to system_clock and instead declare new class.
* src/chrono.cc: Conditionally define monotonic_clock::now().
* include/std/condition_variable (wait_until): Throw exception if
__gthread_cond_timedwait returns with error other than timed_out. Use
system_clock as known clock type (__clock_t) and add overloads for known
and unknown clocks. In the unknown case, sync to the known clock.
Implement overload taking a predicate.
(wait_for): Implement overload taking a predicate.
* config/abi/pre/gnu.ver: Add exports for monotonic_clock.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Modify
line numbers.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
Likewise.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/condition_variable/member/1.cc: New.
* testsuite/30_threads/condition_variable/member/2.cc: Likewise.
From-SVN: r140603
Paolo Carlini [Tue, 23 Sep 2008 17:12:26 +0000 (17:12 +0000)]
re PR libstdc++/37624 (22_locale/num_get/get/char/10.cc)
2008-09-23 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/37624
* testsuite/22_locale/num_get/get/char/10.cc: Skip long double case
when strtold is not available.
* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
From-SVN: r140602
Benjamin Kosnik [Tue, 23 Sep 2008 16:06:43 +0000 (16:06 +0000)]
PR libstdc++/37391 continued.
2008-09-23 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/37391 continued.
* doc/html/ext/pb_ds/assoc_examples.html: Don't use base tag,
specify full path for source file links.
* doc/html/ext/pb_ds/pq_examples.html: Same.
From-SVN: r140600
Aldy Hernandez [Tue, 23 Sep 2008 14:55:14 +0000 (14:55 +0000)]
c-tree.h: Add argument to c_objc_common_truthvalue_conversion, parser_build_binary_op.
* c-tree.h: Add argument to c_objc_common_truthvalue_conversion,
parser_build_binary_op.
* c-decl.c (build_enumerator): Pass location to build_binary_op.
* c-typeck.c (build_array_ref): Same.
(parser_build_unary_op): New location argument.
(pointer_diff): Pass location to build_binary_op,
c_objc_common_truthvalue_conversion.
(build_modify_expr): Same.
(build_unary_op): New location argument.
(build_binary_op): New location argument.
(c_objc_common_truthvalue_conversion): Pass location to
c_*common_truthvalue_conversion.
* c-convert.c (convert): Same.
* c-common.c (binary_op_error): New location argument.
(pointer_int_sum): Pass location to build_binary_op.
(c_common_truthvalue_conversion): New location argument.
(warn_for_sign_compare): Same.
* c-common.h: Add location argument to c_common_truthvalue_conversion,
binary_op_error, build_binary_op, warn_for_sign_compare.
* c-parser.c (c_parser_condition): Pass location to
c_*common_truthvalue_conversion.
(c_parser_conditional_expression): Save condition's location and pass
it on down.
(c_parser_binary_expression): Same, but for the binary operator's
location.
(c_parser_omp_for_loop): Pass location to
c_objc_common_truthvalue_conversion.
objc/
* objc-act.c (next_sjlj_build_enter_and_setjmp): Call
c_common_truthvalue_conversion with location.
(next_sjlj_build_catch_list): Same.
(next_sjlj_build_try_catch_finally): Same.
testsuite/
* gcc.dg/Walways-true-1.c: Test column numbers.
* gcc.dg/c90-const-expr-5.c: Same.
* gcc.dg/compare4.c: Same.
* gcc.dg/Werror-1.c: Same.
cp/
* typeck.c (build_array_ref): Pass location to cp_build_binary_op.
(get_member_function_from_ptrfunc): Same.
(build_x_binary_op): Same.
(build_binary_op): Same.
(cp_build_binary_op): New location argument.
(pointer_diff): Pass location to cp_build_binary_op.
(cp_truthvalue_conversion): Pass location to build_binary_op.
(convert_ptrmem): Pass location to cp_build_binary_op.
(cp_build_modify_expr): Same.
(build_ptrmemfunc): Same.
* init.c (expand_cleanup_for_base): Pass location to
c_common_truthvalue_conversion.
(build_new_1): Pass location to cp_build_binary_op.
(build_vec_delete_1): Pass location to *build_binary_op,
c_common_truthvalue_conversion.
(build_vec_init): Same.
(build_delete): Same.
* decl.c (compute_array_index_type): Same.
* call.c (build_new_op): Same.
* rtti.c (build_dynamic_cast_1): Same.
* cp-tree.h: Add argument to cp_build_binary_op.
* semantics.c (handle_omp_for_class_iterator): Pass location to
*build_binary_op, c_common_truthvalue_conversion.
* decl2.c (get_guard_cond): Same.
From-SVN: r140598
Daniel Kraft [Tue, 23 Sep 2008 14:26:47 +0000 (16:26 +0200)]
re PR fortran/37588 (GENERIC type-bound procedure is not resolved)
2008-09-23 Daniel Kraft <d@domob.eu>
PR fortran/37588
* gfortran.h (gfc_compare_actual_formal): Removed, made private.
(gfc_arglist_matches_symbol): New method.
* interface.c (compare_actual_formal): Made static.
(gfc_procedure_use): Use new name of compare_actual_formal.
(gfc_arglist_matches_symbol): New method.
(gfc_search_interface): Moved code partially to new
gfc_arglist_matches_symbol.
* resolve.c (resolve_typebound_generic_call): Resolve actual arglist
before checking against formal and use new gfc_arglist_matches_symbol
for checking.
(resolve_compcall): Set type-spec of generated expression.
2008-09-23 Daniel Kraft <d@domob.eu>
PR fortran/37588
* gfortran.dg/typebound_generic_4.f03: New test.
* gfortran.dg/typebound_generic_5.f03: New test.
From-SVN: r140594
Andrew Haley [Tue, 23 Sep 2008 13:51:58 +0000 (13:51 +0000)]
re PR libgcj/8995 (race cases in interpreter)
2008-09-17 Andrew Haley <aph@redhat.com>
PR libgcj/8995:
* defineclass.cc (_Jv_ClassReader::handleCodeAttribute):
Initialize thread_count.
* include/java-interp.h (_Jv_InterpMethod::thread_count): New
field.
(_Jv_InterpMethod::rewrite_insn_mutex): New mutex.
(_Jv_InterpFrame:: _Jv_InterpFrame): Pass frame_type.
* interpret.cc
(ThreadCountAdjuster): New class.
(_Jv_InterpMethod::thread_count): New field.
(_Jv_InitInterpreter): Initialize rewrite_insn_mutex.
Increment and decrement thread_count field in methods.
* interpret-run.cc (REWRITE_INSN): Check thread_count <= 1.
(REWRITE_INSN): Likewise.
Declare a ThreadCountAdjuster.
* java/lang/reflect/natVMProxy.cc (run_proxy): Initialize frame
type as frame_proxy.
From-SVN: r140593
Martin Jambor [Tue, 23 Sep 2008 13:08:15 +0000 (15:08 +0200)]
cgraph.c (cgraph_free_edge): Use sizeof(*e).
2008-09-23 Martin Jambor <mjambor@suse.cz>
* cgraph.c (cgraph_free_edge): Use sizeof(*e).
(cgraph_node_remove_callees): New temporary f. Hold the next item
in f when looping.
(cgraph_node_remove_callers): Likewise.
* ipa-prop.c (ipa_edge_removal_hook): Use ATTRIBUTE_UNUSED.
(ipa_node_removal_hook): Likewise.
* doc/gimple.texi (gimple_copy_call_skip_args): Changed to
gimple_call_copy_skip_args and moved to the gimple_call section.
* gimple.c (gimple_copy_call_skip_args): Renamed to
gimple_call_copy_skip_args. Changed al users.
From-SVN: r140590
Paolo Carlini [Tue, 23 Sep 2008 10:09:38 +0000 (10:09 +0000)]
locale_facets.tcc (__pad<>::_S_pad): Don't use const by value parameters.
2008-09-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't use const
by value parameters.
* include/bits/locale_facets.h (__pad<>::_S_pad): Likewise.
From-SVN: r140584
Eric Botcazou [Tue, 23 Sep 2008 09:42:50 +0000 (09:42 +0000)]
pragma-init-fini.c: Use dg-warning in lieu of dg-error.
* gcc.dg/pragma-init-fini.c: Use dg-warning in lieu of dg-error.
* gcc.dg/pragma-align-2.c: Likewise.
* gcc.dg/format/cmn-err-1.c: Likewise.
From-SVN: r140582
Eric Botcazou [Tue, 23 Sep 2008 08:52:53 +0000 (08:52 +0000)]
cmdlne-dU-16.c: Specify -std=c89 on Solaris.
* gcc.dg/cpp/cmdlne-dU-16.c: Specify -std=c89 on Solaris.
* gcc.dg/cpp/cmdlne-dU-17.c: Likewise.
From-SVN: r140581
Tobias Burnus [Tue, 23 Sep 2008 08:00:01 +0000 (10:00 +0200)]
re PR fortran/37580 (Accepts "pointer(:) => target" without lower bound)
2008-09-22 Tobias Burnus <burnus@net-b.de>
PR fortran/37580
* expr.c (gfc_check_pointer_assign): Add checks for pointer
remapping.
2008-09-22 Tobias Burnus <burnus@net-b.de>
PR fortran/37580
* gfortran.dg/pointer_assign_5.f90: New test.
* gfortran.dg/pointer_assign_6.f90: New test.
From-SVN: r140580
Jerry DeLisle [Tue, 23 Sep 2008 03:52:19 +0000 (03:52 +0000)]
re PR fortran/37498 (Incorrect array value returned - 4.3 ABI Broken)
2008-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org
PR fortran/37498
* trans-io.c (gfc_build_io_library_fndecls): Bump pad size.
(build_dt): Set mask bit for IOPARM_dt_f2003.
* ioparm.def: Add IOPARM_dt_f2003.
2008-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org
PR libfortran/37498
* file_pos (st_endfile): Clear memory only for libfortran 4.3 private
area.
* list_read.c (eat_separator): Only access F2003 I/O parameters if
IOPARM_DT_HAS_F2003 bit is set. (parse_real): Ditto.
(read_real): Ditto.
* read.c (read_a): Likewise. (read_a_char4): Likewise though not
strictly necessary. (read_f): Likewise.
* io.h (unit_sign_s): New enumerator to allow duplication of
st_parameter structures. (IOPARM_DT_HAS_F2003): New mask bit.
(st_parameter_43): New structure copied from 4.3 version of
st_paramater_dt private section. (st_parameter_44): New structure with
F2003 items added. (st_parameter_dt): Modified to create union of new
and old structures to allow correct memory setting for 4.3 ABI
compatibility. Bumped the pad size.
* transfer.c (read_sf): Do not use F2003 I/O memory areas unless
IOPARM_DT_HAS_F2003 bit has been set. (read_block_form): Ditto.
(formatted_transfer_scalar): Ditto. (data_transfer_init): Ditto and
add comment, fix formatting.
* write.c (write_default_char4): Likewise though not strictly necessary.
(write_utf8_char4): Ditto. (write_character): Ditto.
(write_real_g0): Ditto. (list_formatted_write_scalar): Ditto.
(nml_write_obj): Ditto. (namelist_write): Ditto.
* write_float.def (calculate_sign): Eliminate warning by including all
cases in switch. (output_float): Output only decimal point of F2003 flag
is not set.
From-SVN: r140576
Paolo Carlini [Tue, 23 Sep 2008 00:48:31 +0000 (00:48 +0000)]
2008-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* Fix date of last ChangeLog entry.
From-SVN: r140575
Paolo Carlini [Tue, 23 Sep 2008 00:47:02 +0000 (00:47 +0000)]
PR libstdc++/32422, DR 23 [Ready in R60]
2008-09-23 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/32422, DR 23 [Ready in R60]
* config/locale/gnu/c_locale.cc (__convert_to_v(const char*, float&,
ios_base::iostate&, const __c_locale&), __convert_to_v(const char*,
double&, ios_base::iostate&, const __c_locale&), __convert_to_v(const
char*, long double&, ios_base::iostate&, const __c_locale&)): Implement
DR 23 and deal correctly with broken exponents.
* config/locale/generic/c_locale.cc (__convert_to_v(const char*,
float&, ios_base::iostate&, const __c_locale&), __convert_to_v(const
char*, double&, ios_base::iostate&, const __c_locale&),
__convert_to_v(const char*, long double&, ios_base::iostate&, const
__c_locale&)): Likewise.
* include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
_InIter, ios_base&, ios_base::iostate&, _ValueT&)): Likewise.
(num_get<>::_M_extract_float(_InIter, _InIter, ios_base&,
ios_base::iostate&, string&): Change grouping check to set instead of
OR failbit; do not check for eofbit here...
(num_get<>::do_get(iter_type, iter_type, ios_base&,
ios_base::iostate&, float&), num_get<>::do_get(iter_type, iter_type,
ios_base&, ios_base::iostate&, double&), num_get<>::do_get(iter_type,
iter_type, ios_base&, ios_base::iostate&, long double&),
num_get<>::__do_get(iter_type, iter_type, ios_base&,
ios_base::iostate&, double&)): ... do it here instead.
(num_get<>::do_get(iter_type, iter_type, ios_base&,
ios_base::iostate&, bool&)): Implement DR 23.
(num_get<>::do_get(iter_type, iter_type, ios_base&,
ios_base::iostate&, void*&)): Adjust.
* doc/xml/manual/intro.xml: Add and entry for DR 23.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
Adjust.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
Likewise.
* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/char/10.cc: Likewise.
* testsuite/22_locale/num_get/get/char/12.cc: Likewise.
* testsuite/22_locale/num_get/get/char/15.cc: Likewise.
* testsuite/22_locale/num_get/get/char/16.cc: Likewise.
From-SVN: r140574
Chris Fairles [Tue, 23 Sep 2008 00:32:46 +0000 (00:32 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2008-09-22 Chris Fairles <cfairles@gcc.gnu.org>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r140573
GCC Administrator [Tue, 23 Sep 2008 00:16:30 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140571
Vladimir Makarov [Mon, 22 Sep 2008 21:28:48 +0000 (21:28 +0000)]
ira-color.c (start_allocno_priorities): Rename to setup_allocno_priorities.
2008-09-22 Vladimir Makarov <vmakarov@redhat.com>
* ira-color.c (start_allocno_priorities): Rename to
setup_allocno_priorities. Use costs and
ALLOCNO_EXCESS_PRESSURE_POINTS_NUM instead of frequencies and
range lengths. Get rid off doubles.
(ira_fast_allocations): Call start_allocno_priorities.
From-SVN: r140565
Benjamin Kosnik [Mon, 22 Sep 2008 20:56:08 +0000 (20:56 +0000)]
re PR libstdc++/37391 (examples not accessible online (non existing URLs))
2008-09-22 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/37391
* doc/html/ext/pb_ds/*.html: Fix external links.
From-SVN: r140564
David Daney [Mon, 22 Sep 2008 19:48:09 +0000 (19:48 +0000)]
re PR target/37593 (-mlong-calls doesn't affect calls to _mcount generated with -pg)
2008-09-22 David Daney <ddaney@avtrex.com>
PR target/37593
* config/mips/mips.h (FUNCTION_PROFILER): Call _mcount via a
register if TARGET_LONG_CALLS.
2008-09-22 David Daney <ddaney@avtrex.com>
PR target/37593
* gcc.target/mips/long-calls-pg.c: New test.
From-SVN: r140563
Richard Guenther [Mon, 22 Sep 2008 19:15:43 +0000 (19:15 +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-sccvn.c (copy_reference_ops_from_ref): Re-enable
value-numbering union accesses with their offset and size only.
(visit_reference_op_load): Fix simplification of inserted conversions.
* tree-ssa-pre.c (find_or_generate_expression): Do not
recursively generate expressions if running FRE.
* gcc.c-torture/compile/
20080922-1.c: New testcase.
* gcc.dg/tree-ssa/ssa-fre-7.c: Remove XFAIL.
* gcc.dg/tree-ssa/ssa-fre-8.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-9.c: Likewise.
From-SVN: r140562
Benjamin Kosnik [Mon, 22 Sep 2008 18:36:39 +0000 (18:36 +0000)]
user.cfg.in: Define _GLIBCXX_HAS_GTHREADS for mutex, condition_variable, and thread output.
2008-09-22 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Define _GLIBCXX_HAS_GTHREADS for mutex,
condition_variable, and thread output.
From-SVN: r140560
Adam Nemet [Mon, 22 Sep 2008 16:12:51 +0000 (16:12 +0000)]
mips.h (ISA_HAS_BADDU): New macro.
* config/mips/mips.h (ISA_HAS_BADDU): New macro.
* config/mips/mips.md (*baddu_si_eb, *baddu_si_el,
*baddu_di<mode>): New patterns.
testsuite/
* gcc.target/mips/octeon-baddu-1.c: New test.
From-SVN: r140556
Andrew Haley [Mon, 22 Sep 2008 15:37:12 +0000 (15:37 +0000)]
expr.c (rules): Add new rule for gnu.java.lang.VMCPStringBuilder.toString.
2008-09-22 Andrew Haley <aph@redhat.com>
* expr.c (rules): Add new rule for
gnu.java.lang.VMCPStringBuilder.toString.
(rewrite_rule.new_classname): New field.
(maybe_rewrite_invocation): Use new_classname field instead of
DECL_CONTEXT (*method_p).
Allow rewrite_arglist to be NULL.
From-SVN: r140553
Paolo Carlini [Mon, 22 Sep 2008 15:17:09 +0000 (15:17 +0000)]
lwg-closed.html: Update to Revision R59.
2008-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* doc/html/ext/lwg-closed.html: Update to Revision R59.
* doc/html/ext/lwg-active.html: Likewise.
* doc/html/ext/lwg-defects.html: Likewise.
* doc/xml/manual/intro.xml: Adjust.
From-SVN: r140552
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
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
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
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
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
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
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
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
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
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
GCC Administrator [Mon, 22 Sep 2008 00:16:31 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140537
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
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
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
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
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
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
Steven Bosscher [Sun, 21 Sep 2008 12:15:42 +0000 (12:15 +0000)]
* MAINTAINERS: Add myself in "Write After Approval".
From-SVN: r140526
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
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
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
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
GCC Administrator [Sun, 21 Sep 2008 00:16:39 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140519
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
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
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
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
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
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
GCC Administrator [Sat, 20 Sep 2008 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140507
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
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
Andreas Tobler [Fri, 19 Sep 2008 20:28:53 +0000 (22:28 +0200)]
Fix typo s/darwin/bsd
From-SVN: r140498
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
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
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
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
GCC Administrator [Fri, 19 Sep 2008 00:16:37 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140480
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
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
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
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
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
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
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
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
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
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
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
Steve Ellcey [Thu, 18 Sep 2008 16:24:37 +0000 (16:24 +0000)]
* MAINTAINERS: Add myself as ia64 maintainer.
From-SVN: r140462
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
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
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
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
Andrew MacLeod [Thu, 18 Sep 2008 14:13:54 +0000 (14:13 +0000)]
Fix comments and formatrting
From-SVN: r140457
Andrew Macleod [Thu, 18 Sep 2008 14:07:35 +0000 (14:07 +0000)]
Correct the formatting
From-SVN: r140456
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
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
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
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
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
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
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
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
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
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
GCC Administrator [Thu, 18 Sep 2008 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r140440
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
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
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
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
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