Manuel López-Ibáñez [Mon, 8 Oct 2007 14:05:51 +0000 (14:05 +0000)]
invoke.texi (Wall): fix formatting issues.
2007-10-08 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* doc/invoke.texi (Wall): fix formatting issues.
contrib/
* texi2pod.pl: Handle @asis.
(postprocess): Move @gccoptlist{} after all formatting commands.
From-SVN: r129125
Paolo Carlini [Mon, 8 Oct 2007 11:19:37 +0000 (11:19 +0000)]
[multiple changes]
2007-10-08 Paolo Carlini <pcarlini@suse.de>
* include/std/utility (identity, move, forward): Move to...
* include/bits/stl_move.h: ... here.
* include/Makefile.am: Add.
* include/bits/stl_algobase.h: Include the latter.
* include/Makefile.in: Regenerate.
* testsuite/20_util/pair/moveable.cc: Remove dg-require-rvalref.
2007-10-08 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_pair.h (pair<>:pair(pair&&),
pair<>::operator=(pair&&)): Add.
From-SVN: r129124
Paolo Carlini [Mon, 8 Oct 2007 11:16:51 +0000 (11:16 +0000)]
[multiple changes]
2007-10-08 Paolo Carlini <pcarlini@suse.de>
* include/std/utility (identity, move, forward): Move to...
* include/bits/stl_move.h: ... here.
* include/Makefile.am: Add.
* include/bits/stl_algobase.h: Include the latter.
* include/Makefile.in: Regenerate.
* testsuite/20_util/pair/moveable.cc: Remove dg-require-rvalref.
2007-10-08 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_pair.h (pair<>:pair(pair&&),
pair<>::operator=(pair&&)): Add.
From-SVN: r129123
Mike Frysinger [Mon, 8 Oct 2007 09:29:55 +0000 (09:29 +0000)]
configure.ac (CFLAGS_FOR_BUILD, [...]): Default them to host flags only for $host = $build.
* configure.ac (CFLAGS_FOR_BUILD, CXXFLAGS_FOR_BUILD, LDFLAGS_FOR_BUILD): Default them to host flags only
for $host = $build.
Set default CXXFLAGS_FOR_BUILD to CXXFLAGS, not CFLAGS.
Set default LDFLAGS_FOR_BUILD to LDFLAGS, not CFLAGS.
* configure: Regenerate.
From-SVN: r129122
Ben Elliston [Mon, 8 Oct 2007 06:45:56 +0000 (06:45 +0000)]
re PR ada/33454 (Wrong system.ads for --with-cpu=default32)
PR ada/33454
Revert:
2007-08-31 Ben Elliston <bje@au.ibm.com>
* Makefile.in (LIBGNAT_TARGET_PAIRS): Use system-linux-ppc64.ads
when compiling for powerpc64-*-linux.
* system-linux-ppc64.ads: New file.
From-SVN: r129121
GCC Administrator [Mon, 8 Oct 2007 00:17:07 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r129119
Thomas Koenig [Sun, 7 Oct 2007 21:36:09 +0000 (21:36 +0000)]
re PR libfortran/33683 (calculating lgamma instead of gamma)
2007-10-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/33683
* mathbuiltins.def (GAMMA): Change function name to
"tgamma" instad of "gamma".
2007-10-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/33683
* gfortran.dg/gamma_5.f90: New test case
From-SVN: r129116
Richard Sandiford [Sun, 7 Oct 2007 18:40:02 +0000 (18:40 +0000)]
simplify-rtx.c (simplify_binary_operation_1): Canonicalize truncated shift counts.
gcc/
* simplify-rtx.c (simplify_binary_operation_1): Canonicalize
truncated shift counts.
From-SVN: r129072
Chris Jefferson [Sun, 7 Oct 2007 16:33:59 +0000 (16:33 +0000)]
list (list<>::list(list&&), [...]): Add.
2007-10-07 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
* include/debug/list (list<>::list(list&&),
list<>::operator=(list&&)): Add.
(list<>::swap): Adjust.
(swap(list&&, list& __y), swap(list&, list&& __y)): Add.
* include/debug/vector (vector<>::vector(vector&&),
vector<>::operator=(vector&&)): Add.
(vector<>::swap): Adjust.
(swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
* include/debug/deque (deque<>::deque(deque&&),
deque<>::operator=(deque&&)): Add.
(deque<>::swap): Adjust.
(swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
* include/debug/set.h (set<>::set(set&&),
set<>::operator=(set&&)): Add.
(set<>::swap): Adjust.
(swap(set&&, set& __y), swap(set&, set&& __y)): Add.
* include/debug/map.h (map<>::map(map&&),
map<>::operator=(map&&)): Add.
(map<>::swap): Adjust.
(swap(map&&, map& __y), swap(map&, map&& __y)): Add.
* include/debug/multiset.h (multiset<>::multiset(multiset&&),
multiset<>::operator=(multiset&&)): Add.
(smultiet<>::swap): Adjust.
(swap(multiset&&, multiset& __y),
swap(multiset&, multiset&& __y)): Add.
* include/debug/multimap.h (multimap<>::multimap(multimap&&),
multimap<>::operator=(multimap&&)): Add.
(multimap<>::swap): Adjust.
(swap(multimap&&, multimap& __y),
swap(multimap&, multimap&& __y)): Add.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r129071
Kazu Hirata [Sun, 7 Oct 2007 16:06:52 +0000 (16:06 +0000)]
m68k.c, m68k.md: Use the assembly syntax for ASSEMBLER_DIALECT.
* config/m68k/m68k.c, config/m68k/m68k.md: Use the assembly
syntax for ASSEMBLER_DIALECT.
* config/m68k/m68k.h (ASSEMBLER_DIALECT): New.
From-SVN: r129070
Tobias Schlüter [Sun, 7 Oct 2007 11:45:15 +0000 (13:45 +0200)]
re PR fortran/20851 (dummy argument may not appear in specification expression in elemental procedure)
PR fortran/20851
fortran/
* expr.c (check_inquiry): Typo fix in error message.
(check_init_expr): Same * 3.
(check_restricted): Verify that no dummy arguments appear in
restricted expressions in ELEMENTAL procedures.
* resolve.c (resolve_fl_variable): Exchange order of checks to
avoid side-effect.
testsuite/
* initialization_1.f90: Fix dg-error annotations.
* initialization_14.f90: New.
* initialization_7.f90: Fix dg-error annotations.
* initialization_9.f90: Likewise.
From-SVN: r129069
Paolo Carlini [Sun, 7 Oct 2007 11:14:11 +0000 (11:14 +0000)]
[multiple changes]
2007-10-07 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (_GLIBCXX_MOVE): Add.
(swap, __iter_swap): Use it.
* testsuite/25_algorithms/rotate/moveable.cc: Remove dg-require-rvalref.
* testsuite/25_algorithms/remove/moveable.cc: Likewise.
* testsuite/25_algorithms/partition/moveable.cc: Likewise.
* testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
* testsuite/25_algorithms/reverse/moveable.cc: Likewise.
* testsuite/25_algorithms/unique/moveable.cc: Likewise.
* testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
* include/bits/stl_algobase.h (lexicographical_compare):
Clean up.
2007-10-07 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algo.h (remove, remove_if, unique,
__rotate(_RandomAccessIterator, _RandomAccessIterator,
_RandomAccessIterator, random_access_iterator_tag)): Use _GLIBCXX_MOVE.
(__rotate(_ForwardIterator, _ForwardIterator, _ForwardIterator,
forward_iterator_tag), __rotate(_BidirectionalIterator,
_BidirectionalIterator, _BidirectionalIterator,
bidirectional_iterator_tag), __partition(_ForwardIterator,
_ForwardIterator, _Predicate, forward_iterator_tag)): Use iter_swap.
From-SVN: r129068
Eric Botcazou [Sun, 7 Oct 2007 09:26:46 +0000 (09:26 +0000)]
Fix address.
From-SVN: r129067
Eric Botcazou [Sun, 7 Oct 2007 09:25:28 +0000 (11:25 +0200)]
dwarf2out.c (dwarf2out_frame_init): Check for DWARF2_FRAME_INFO when determining whether to record...
* dwarf2out.c (dwarf2out_frame_init): Check for DWARF2_FRAME_INFO
when determining whether to record INCOMING_RETURN_ADDR_RTX.
Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com>
From-SVN: r129066
GCC Administrator [Sun, 7 Oct 2007 00:17:41 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r129064
Jerry DeLisle [Sat, 6 Oct 2007 23:47:34 +0000 (23:47 +0000)]
error_recovery_4.f90: New test.
2007-10-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* gfortran.dg/error_recovery_4.f90: New test.
From-SVN: r129060
Jerry DeLisle [Sat, 6 Oct 2007 23:44:48 +0000 (23:44 +0000)]
re PR fortran/33609 (ICE on arithmetic overflow)
2007-10-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33609
* simplify.c (range_check): Return gfc_bad_expr if incoming expression
is NULL.
From-SVN: r129059
Benjamin Kosnik [Sat, 6 Oct 2007 23:40:32 +0000 (23:40 +0000)]
re PR libstdc++/33678 (__do_catch, __do_upcast ABI change)
2007-10-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/33678
* libsupc++/typeinfo (typeinfo): Revert ordering of virtual components.
From-SVN: r129058
Francois-Xavier Coudert [Sat, 6 Oct 2007 21:22:39 +0000 (21:22 +0000)]
default_format_denormal_2.f90: New test.
* gfortran.dg/default_format_denormal_2.f90: New test.
* gfortran.dg/default_format_2.inc: New test.
* gfortran.dg/default_format_denormal_1.f90: New test.
* gfortran.dg/default_format_1.inc: New test.
* gfortran.dg/default_format_1.f90: Don't test for denormalized
numbers.
* gfortran.dg/default_format_2.f90: Don't test for denormalized
numbers.
From-SVN: r129057
Eric Botcazou [Sat, 6 Oct 2007 20:28:15 +0000 (20:28 +0000)]
Revert:
2007-02-12 Eric Botcazou <ebotcazou@adacore.com>
* tree.h (DECL_IGNORED_P): Document further effect for FUNCTION_DECL.
* cgraphunit.c (cgraph_expand_function): If DECL_IGNORED_P is set on
the function, temporarily point the debug interface to the null one.
From-SVN: r129056
Jerry DeLisle [Sat, 6 Oct 2007 16:59:59 +0000 (16:59 +0000)]
namelist_15.f90: Revise test.
2007-10-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* gfortran.dg/namelist_15.f90: Revise test.
From-SVN: r129055
Benjamin Kosnik [Sat, 6 Oct 2007 15:08:58 +0000 (15:08 +0000)]
re PR libstdc++/33487 (parallel v3: more functions not in right namespace)
2007-10-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/33487
* include/parallel/algorithmfwd.h (for_each, generate, generate_n,
transform, replace, replace_if, max_element, min_element, count,
count_if): Consistently construct overloads.
* include/parallel/numericfwd.h (accumulate, adjacent_difference,
inner_product): Same.
* include/parallel/algobase.h: Same.
* include/parallel/algo.h: Same.
* include/parallel/numeric: Same.
* include/bits/algorithmfwd.h: Correct find_end placement.
* docs/html/parallel_mode.html: Document some of the interface
conventions.
* include/parallel/search.h (calc_borders): Only use operator ==.
* include/parallel/algorithmfwd.h: Move __gnu_sequential bits to...
* include/parallel/tags.h: ...here, and use a using directive.
* include/parallel/random_shuffle.h: Include stl_numeric. Qualify
uses of partial_num with __gnu_sequential.
* include/parallel/tree.h: Formatting.
From-SVN: r129054
Tobias Schlüter [Sat, 6 Oct 2007 12:17:32 +0000 (14:17 +0200)]
* simplify.c (gfc_simplify_size): Fix typo.
From-SVN: r129053
Alexandre Oliva [Sat, 6 Oct 2007 11:47:51 +0000 (11:47 +0000)]
re PR tree-optimization/33655 (ICE in bitfield_overlaps_p, at tree-sra.c:2901)
gcc/ChangeLog:
PR tree-optimization/33655
* tree-sra.c (bitfield_overlaps_p): Handle array and complex
elements.
gcc/testsuite/ChangeLog:
PR tree-optimization/33655
* gcc.dg/torture/pr33655.c: New.
From-SVN: r129052
Alexandre Oliva [Sat, 6 Oct 2007 11:43:56 +0000 (11:43 +0000)]
re PR tree-optimization/33572 (wrong code with -O)
gcc/ChangeLog:
PR tree-optimization/33572
* tree-cfg.c (verify_stmts): Check for missing PHI defs.
* tree-inline.c (update_ssa_across_eh_edges): Renamed to...
(update_ssa_across_abnormal_edges): ... this. Set slots in the
return PHI node.
(copy_edges_for_bb): Handle nonlocal label edges.
(make_nonlocal_label_edges): Deleted.
(optimize_inline_calls): Don't call it.
gcc/testsuite/ChangeLog:
PR tree-optimization/33572
* g++.dg/torture/pr33572.C: New.
From-SVN: r129051
Tobias Schlüter [Sat, 6 Oct 2007 08:55:30 +0000 (10:55 +0200)]
re PR fortran/25076 (FORALL triplet subscript must not reference any index-name)
PR fortran/25076
fortran/
* resolve.c (gfc_find_forall_index): Move towards top,
renaming to ...
(find_forall_index): ... this. Add check for NULL expr.
(resolve_forall_iterators): Verify additional constraint.
(resolve_forall): Remove checks obsoleted by new code in
resolve_forall_iterators.
testsuite/
* gfortran.dg/forall_11.f90: New.
From-SVN: r129050
Benjamin Kosnik [Sat, 6 Oct 2007 03:06:37 +0000 (03:06 +0000)]
Fixes for --disable-libstdcxx-pch.
2007-10-05 Benjamin Kosnik <bkoz@redhat.com>
Fixes for --disable-libstdcxx-pch.
* include/ext/rc_string_base.h: Include stl_iterator_base_funcs.h.
* include/ext/vstring_util.h: Include stl_iterator.h and
numeric_traits.h.
* include/tr1/functional: Include new.
* testsuite/util/testsuite_api.h: Include exception.
* testsuite/lib/libstdc++.exp (libstdc++_init): Set
PCH_CXXFLAGS via cxxpchflags.
* testsuite/25_algorithms/binary_search/requirements/
explicit_instantiation/2.cc: Same.: Fix includes.
* testsuite/25_algorithms/count_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/equal_range/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/find_end/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/find_first_of/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/find_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/for_each/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/includes/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/inplace_merge/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/lexicographical_compare/
requirements/explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/lower_bound/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/make_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/max_element/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/max/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/merge/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/min_element/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/min/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/next_permutation/
requirements/explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/nth_element/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/partial_sort_copy/
requirements/explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/partial_sort/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/partition/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/pop_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/prev_permutation/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/push_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/random_shuffle/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/remove_copy_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/remove_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/replace_copy_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/replace_if/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/search_n/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/search/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_difference/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_intersection/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_symmetric_difference/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/set_union/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/sort_heap/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/sort/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/stable_partition/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/stable_sort/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/transform/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/unique_copy/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/unique/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/upper_bound/requirements/
explicit_instantiation/2.cc: Same.
* testsuite/25_algorithms/remove/requirements/
explicit_instantiation/pod.cc: Provide a hint to the compiler.
From-SVN: r129049
Paolo Carlini [Sat, 6 Oct 2007 02:33:12 +0000 (02:33 +0000)]
moveable.cc: Remove dg-require-rvalref.
2007-10-05 Paolo Carlini <pcarlini@suse.de>
* testsuite/23_containers/map/moveable.cc: Remove dg-require-rvalref.
* testsuite/23_containers/multimap/moveable.cc: Likewise.
* testsuite/23_containers/set/moveable.cc: Likewise.
* testsuite/23_containers/multiset/moveable.cc: Likewise.
* testsuite/23_containers/deque/moveable.cc: Likewise.
* testsuite/23_containers/list/moveable.cc: Likewise.
* testsuite/23_containers/vector/moveable.cc: Likewise.
* include/std/utility: Use _GLIBCXX_BEGIN_NAMESPACE.
2007-10-05 Paolo Carlini <pcarlini@suse.de>
Chris Jefferson <chris@bubblescope.net>
* include/bits/stl_iterator.h (class move_iterator,
make_move_iterator): Add.
Co-Authored-By: Chris Jefferson <chris@bubblescope.net>
From-SVN: r129048
GCC Administrator [Sat, 6 Oct 2007 00:17:36 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r129045
Hans-Peter Nilsson [Fri, 5 Oct 2007 22:02:19 +0000 (22:02 +0000)]
* gthr-single.h: Revert last change.
From-SVN: r129040
Michael Matz [Fri, 5 Oct 2007 17:56:52 +0000 (17:56 +0000)]
re PR middle-end/33667 (RTL sharing with divmod)
gcc/
PR middle-end/33667
* lower-subreg.c (decompose_multiword_subregs): Use
validate_unshare_change().
testsuite/
* gcc.dg/pr33667.c: New testcase.
From-SVN: r129038
Peter Bergner [Fri, 5 Oct 2007 17:55:18 +0000 (12:55 -0500)]
ra-conflict.c: Include "sparseset.h".
* ra-conflict.c: Include "sparseset.h".
(conflicts): Change to HOST_WIDEST_FAST_INT.
(allocnos_live): Redefine variable as a sparseset.
(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE, GET_ALLOCNO_LIVE): Delete macros.
(allocno_row_words): Removed global variable.
(partial_bitnum, max_bitnum, adjacency_pool, adjacency): New variables.
(CONFLICT_BITNUM, CONFLICT_BITNUM_FAST): New defines.
(conflict_p, set_conflict_p, set_conflicts_p): New functions.
(record_one_conflict_between_regnos): Cache allocno values and reuse.
Use set_conflict_p.
(record_one_conflict): Update uses of allocnos_live to use
the sparseset routines. Use set_conflicts_p.
(mark_reg_store): Likewise.
(set_reg_in_live): Likewise.
(global_conflicts): Update uses of allocnos_live.
Use the new adjacency list to visit an allocno's neighbors
rather than iterating over all possible allocnos.
Call set_conflicts_p to setup conflicts rather than adding
them manually.
* global.c: Comments updated.
(CONFLICTP): Delete define.
(regno_compare): New function. Add prototype.
(global_alloc): Sort the allocno to regno mapping according to
which basic blocks the regnos are referenced in. Modify the
conflict bit matrix to a compressed triangular bitmatrix.
Only allocate the conflict bit matrix and adjacency lists if
we are actually going to allocate something.
(expand_preferences): Use conflict_p. Update uses of allocnos_live.
(prune_preferences): Use the FOR_EACH_CONFLICT macro to visit an
allocno's neighbors rather than iterating over all possible allocnos.
(mirror_conflicts): Removed function.
(dump_conflicts): Iterate over regnos rather than allocnos so
that all dump output will be sorted by regno number.
Use the FOR_EACH_CONFLICT macro.
* ra.h: Comments updated.
(conflicts): Update prototype to HOST_WIDEST_FAST_INT.
(partial_bitnum, max_bitnum, adjacency, adjacency_pool): Add prototypes.
(ADJACENCY_VEC_LENGTH, FOR_EACH_CONFLICT): New defines.
(adjacency_list_d, adjacency_iterator_d): New types.
(add_neighbor, adjacency_iter_init, adjacency_iter_done,
adjacency_iter_next, regno_basic_block): New static inline functions.
(EXECUTE_IF_SET_IN_ALLOCNO_SET): Removed define.
(conflict_p): Add function prototype.
* sparseset.h, sparseset.c: New files.
* Makefile.in (OBJS-common): Add sparseset.o.
(sparseset.o): New rule.
From-SVN: r129037
Richard Guenther [Fri, 5 Oct 2007 16:33:25 +0000 (16:33 +0000)]
re PR middle-end/33666 (Type verification failure with pointer to long long conversion)
2007-10-05 Richard Guenther <rguenther@suse.de>
PR middle-end/33666
* fold-const.c (fold_unary): Do not fold (long long)(int)ptr
to (long long)ptr.
* gcc.dg/pr33666.c: New testcase.
From-SVN: r129036
Michael Matz [Fri, 5 Oct 2007 15:36:16 +0000 (15:36 +0000)]
re PR inline-asm/33600 (Breakage caused by the fix to PR33552)
gcc/
PR inline-asm/33600
* function.c (match_asm_constraints_1): Check for input
being used in the outputs.
testsuite/
* gcc.target/i386/pr33600.c: New testcase.
From-SVN: r129035
Francois-Xavier Coudert [Fri, 5 Oct 2007 12:33:07 +0000 (12:33 +0000)]
gfortran.h (gfc_get_data_variable, [...]): Move to decl.c.
* gfortran.h (gfc_get_data_variable, gfc_get_data_value,
gfc_get_data): Move to decl.c.
(global_used): Rename into gfc_global_used.
(gfc_formalize_init_value, gfc_get_section_index,
gfc_assign_data_value, gfc_assign_data_value_range,
gfc_advance_section): Move to data.h.
(gfc_set_in_match_data): Remove.
* decl.c (gfc_get_data_variable, gfc_get_data_value,
gfc_get_data): Move here.
(gfc_set_in_match_data): Rename into set_in_match_data.
(gfc_match_data): Likewise.
(add_global_entry): Rename global_used into gfc_global_used.
* data.c: Include data.h.
* trans.h (gfc_todo_error): Remove.
* trans-array.c (gfc_trans_array_constructor,
gfc_conv_ss_startstride, gfc_conv_loop_setup): Change
gfc_todo_error into assertions.
* resolve.c (resolve_global_procedure): Rename global_used into
gfc_global_used.
* parse.c (gfc_global_used, parse_module, add_global_procedure,
add_global_program): Likewise.
* trans-intrinsic.c (gfc_walk_intrinsic_function): Rename
global_used into gfc_global_used.
* Make-lang.in: Add dependencies on fortran/data.h.
* data.h: New file.
From-SVN: r129034
Richard Guenther [Fri, 5 Oct 2007 12:20:18 +0000 (12:20 +0000)]
tree-cfg.c (verify_gimple_expr): Accept OBJ_TYPE_REF.
2007-10-05 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_expr): Accept OBJ_TYPE_REF.
* g++.dg/tree-ssa/obj-type-ref.C: New testcase.
From-SVN: r129033
Richard Sandiford [Fri, 5 Oct 2007 08:39:58 +0000 (08:39 +0000)]
Add NOMIPS16 to last commit (will be in gcc-patches@ message).
From-SVN: r129032
Richard Sandiford [Fri, 5 Oct 2007 08:34:01 +0000 (08:34 +0000)]
re PR target/33635 (Bootstrap broken on mips-sgi-irix6.5)
gcc/
PR target/33635
* config/mips/mips.c (mips_register_move_cost): Rewrite to use
subset checks. Make the cost of FPR -> FPR moves depend on
mips_mode_ok_for_mov_fmt_p.
gcc/testsuite/
PR target/33635
* gcc.target/mips/pr33635-1.c: New test.
From-SVN: r129031
Doug Kwan [Fri, 5 Oct 2007 05:35:46 +0000 (05:35 +0000)]
gthr-posix.h (__gthread_cond_broadcast, [...]): Add to extend interface for POSIX conditional variables.
2007-09-13 Doug Kwan <dougkwan@google.com>
* gcc/gthr-posix.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
support of conditional variables.
* gcc/gthr-posix95.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
support of conditional variables.
* gcc/gthr-single.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables.
* gcc/gthr.h: Update comments to document new interface.
* libstdc++-v3/include/ext/concurrent.h (class __mutex,
class __recursive_mutex): Add new method gthread_mutex to access
inner gthread mutex.
[__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
class __concurrence_wait_error, class __cond): Add.
* guard.cc (recursive_push, recursive_pop): Delete.
(init_in_progress_flag, set_init_in_progress_flag): Add to
replace recursive_push and recursive_pop.
(throw_recursive_init_exception): Add.
(acquire, __cxa_guard_acquire, __cxa_guard_abort and
__cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
for synchronization of static variable initialization.
The global mutex is only held briefly when guards are
accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
which deadlocks.
* testsuite/thread/guard.cc: Add new test. It deadlocks with the
old locking code in libstdc++-v3/libsup++/guard.cc.
From-SVN: r129030
GCC Administrator [Fri, 5 Oct 2007 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r129028
Geoffrey Keating [Thu, 4 Oct 2007 21:24:03 +0000 (21:24 +0000)]
cgraphunit.c (cgraph_build_static_cdtor): Don't set DECL_IGNORED_P.
* cgraphunit.c (cgraph_build_static_cdtor): Don't set
DECL_IGNORED_P.
From-SVN: r129024
Anatoly Sokolov [Thu, 4 Oct 2007 21:18:12 +0000 (01:18 +0400)]
* config/avr/avr.c (expand_epilogue): Don't set RTX_FRAME_RELATED_P.
From-SVN: r129023
Thomas Koenig [Thu, 4 Oct 2007 20:26:24 +0000 (20:26 +0000)]
re PR fortran/33539 (Too much noise for zero-length character strings)
2007-10-04 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/33539
* resolve.c: Only warn if the string length is
less than zero.
2007-10-04 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/33539
* zero_length_2.f90: Omit warning for zero-length string.
* repeat_2.f90: Likewise.
* repeat_4.f90: Likewise.
* char_length_2.f90: Likewise.
From-SVN: r129022
Seongbae Park [Thu, 4 Oct 2007 18:58:49 +0000 (18:58 +0000)]
MAINTAINERS (Register allocation reviewer): Add myself.
2006-10-04 Seongbae Park <seongbae.park@gmail.com>
* MAINTAINERS (Register allocation reviewer): Add myself.
From-SVN: r129021
Jason Merrill [Thu, 4 Oct 2007 17:58:07 +0000 (13:58 -0400)]
re PR c++/20416 (Incorrect lifetime for temporary with static const reference)
PR c++/20416
* call.c (initialize_reference): Handle local static reference
temps properly.
From-SVN: r129020
Jerry DeLisle [Thu, 4 Oct 2007 16:02:42 +0000 (16:02 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* gfortran.dg/namelist_39.f90: Revise to use long names.
From-SVN: r129018
Jerry DeLisle [Thu, 4 Oct 2007 15:59:54 +0000 (15:59 +0000)]
Fix ChangeLog.
From-SVN: r129017
Jerry DeLisle [Thu, 4 Oct 2007 15:57:28 +0000 (15:57 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* io/list_read.c (read_character): Use line_buffer to scan ahead for
object name or string when no delimiter is found.
From-SVN: r129016
H.J. Lu [Thu, 4 Oct 2007 15:39:11 +0000 (15:39 +0000)]
re PR fortran/33646 (Gcc 4.3 revision 128954 failed tonto in SPEC CPU 2006)
2007-10-04 H.J. Lu <hongjiu.lu@intel.com>
PR fortran/33646
* gfortran.dg/pr33646.f90: New file.
From-SVN: r129015
François-Xavier Coudert [Thu, 4 Oct 2007 15:18:48 +0000 (15:18 +0000)]
re PR fortran/32021 (Fix,document,remove GFORTRAN_* environment variables)
PR libfortran/32021
* runtime/environ.c (init_mem, show_mem, init_round, show_round,
init_precision, show_precision, init_signal, show_signal): Remove.
(variable_table): Remove GFORTRAN_MEM_INIT, GFORTRAN_MEM_CHECK,
GFORTRAN_SIGHUP, GFORTRAN_SIGINT, GFORTRAN_FPU_ROUND and
GFORTRAN_FPU_PRECISION.
* libgfortran.h (options_t): Remove mem_check, fpu_round,
fpu_precision, sighup, sigint, allocate_init_flag and
allocate_init_value.
From-SVN: r129014
Paolo Carlini [Thu, 4 Oct 2007 15:12:34 +0000 (15:12 +0000)]
[multiple changes]
2007-10-04 Paolo Carlini <pcarlini@suse.de>
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
2007-10-04 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_list.h (list<>::list(list&&),
list<>::operator=(list&&)): Add.
(list<>::swap): Adjust.
(swap(list&&, list& __y), swap(list&, list&& __y)): Add.
* include/bits/stl_vector.h (vector<>::vector(vector&&),
vector<>::operator=(vector&&)): Add.
(vector<>::swap): Adjust.
(swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
* include/bits/stl_bvector.h (vector<>::vector(vector&&),
vector<>::operator=(vector&&)): Add.
(vector<>::swap): Adjust.
* include/bits/stl_deque.h (deque<>::deque(deque&&),
deque<>::operator=(deque&&)): Add.
(deque<>::swap): Adjust.
(swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
* include/bits/stl_set.h (set<>::set(set&&),
set<>::operator=(set&&)): Add.
(set<>::swap): Adjust.
(swap(set&&, set& __y), swap(set&, set&& __y)): Add.
* include/bits/stl_map.h (map<>::map(map&&),
map<>::operator=(map&&)): Add.
(map<>::swap): Adjust.
(swap(map&&, map& __y), swap(map&, map&& __y)): Add.
* include/bits/stl_multiset.h (multiset<>::multiset(multiset&&),
multiset<>::operator=(multiset&&)): Add.
(smultiet<>::swap): Adjust.
(swap(multiset&&, multiset& __y),
swap(multiset&, multiset&& __y)): Add.
* include/bits/stl_multimap.h (multimap<>::multimap(multimap&&),
multimap<>::operator=(multimap&&)): Add.
(multimap<>::swap): Adjust.
(swap(multimap&&, multimap& __y),
swap(multimap&, multimap&& __y)): Add.
2007-10-04 Paolo Carlini <pcarlini@suse.de>
Avoid copying some allocator objects.
* include/bits/stl_list.h (_List_impl::_List_impl(),
_List_base::_List_base(), list<>::list()): Add.
* include/bits/stl_vector.h (_Vector_impl::_Vector_impl(),
_Vector_base::_Vector_base(), vector<>::vector()): Add.
* include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl(),
_Bvector_base::_Bvector_base(), vector<>::vector()): Add.
* include/bits/stl_deque.h (_Deque_impl::_Deque_impl(),
_Deque_base::_Deque_base(), deque<>::deque()): Add.
* include/bits/stl_tree.h (_Rb_tree_impl<>::_Rb_tree_impl(),
_Rb_tree_impl<>::_M_initialize): Add.
(_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&),
_Rb_tree(const _Rb_tree&)): Adjust.
* include/bits/stl_set.h (set<>::set(),
set(_InputIterator, _InputIterator)): Use _M_t default constructor.
* include/bits/stl_map.h (map<>::map(), set(_InputIterator,
_InputIterator)): Use _M_t default constructor.
* include/bits/stl_multiset.h (multiset<>::multiset(),
multiset(_InputIterator, _InputIterator)): Use _M_t default
constructor.
* include/bits/stl_multimap.h (multimap<>::multimap(),
multimap(_InputIterator, _InputIterator)): Use _M_t default
constructor.
From-SVN: r129013
Francois-Xavier Coudert [Thu, 4 Oct 2007 15:08:14 +0000 (15:08 +0000)]
re PR fortran/33529 (Non-litteral CHARACTER kind values matching is wrong)
PR fortran/33529
* decl.c (match_char_kind): New function.
(match_char_spec): Use match_char_kind.
* gfortran.dg/char_type_len_2.f90: Adjust error message.
* gfortran.dg/char_decl_2.f90: New test.
From-SVN: r129012
Francois-Xavier Coudert [Thu, 4 Oct 2007 15:04:09 +0000 (15:04 +0000)]
re PR fortran/33502 (gfortran with .F suffix and -g3 option chokes on preprocessor syntax)
PR fortran/33502
* scanner.c (gfc_advance_line): Call debug_hooks->end_source_file
and debug_hooks->start_source_file when appropriate, and set
dbg_emitted.
(gfc_define_undef_line): New function.
(load_file): Don't error out on #define and #undef lines.
* parse.c (next_statement): Call gfc_define_undef_line.
(gfc_parse_file): Call debug_hooks->start_source_file and
debug_hooks->end_source_file for the main source file if
required.
* gfortran.h (gfc_linebuf): Add dbg_emitted field.
(gfc_define_undef_line): New prototype.
From-SVN: r129011
Richard Guenther [Thu, 4 Oct 2007 14:35:32 +0000 (14:35 +0000)]
re PR middle-end/33641 (perlbmk gets type mismatch in pointer plus expression)
2007-10-04 Richard Guenther <rguenther@suse.de>
PR middle-end/33641
* tree-cfg.c (verify_gimple_expr): Operand one of POINTER_PLUS_EXPR
does not need to be of INTEGER_TYPE.
(verify_gimple_2): New function split out from ...
(verify_gimple_1): ... here. ICE if there was an error during
verification.
* gcc.c-torture/compile/pr33641.c: New testcase.
From-SVN: r129010
H.J. Lu [Thu, 4 Oct 2007 13:42:48 +0000 (06:42 -0700)]
Mention PR fortran/33646 in revision 129000.
From-SVN: r129008
Michael Matz [Thu, 4 Oct 2007 13:35:06 +0000 (13:35 +0000)]
re PR rtl-optimization/33653 (volatile memory access optimized away)
PR rtl-optimization/33653
* gcc.dg/pr33653.c: New.
From-SVN: r129007
Michael Matz [Thu, 4 Oct 2007 13:34:09 +0000 (13:34 +0000)]
re PR rtl-optimization/33653 (volatile memory access optimized away)
PR rtl-optimization/33653
* dce.c (deletable_insn_p_1): Use volatile_refs_p().
* dse.c (scan_insn): Same.
From-SVN: r129006
Kazu Hirata [Thu, 4 Oct 2007 12:59:49 +0000 (12:59 +0000)]
* config.gcc: Remove USE_GAS for m68k targets.
From-SVN: r129005
Richard Guenther [Thu, 4 Oct 2007 09:37:04 +0000 (09:37 +0000)]
re PR tree-optimization/33627 (ICE in verify_stmts compiling abiword)
2007-10-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/33627
* tree-gimple.h (canonicalize_cond_expr_cond): Declare.
* tree-gimple.c (canonicalize_cond_expr_cond): New function,
split out from ...
* tree-ssa-forwprop.c (combine_cond_expr_cond): ... here.
* tree-ssa-ifcombine.c (ifcombine_iforif): Use it.
* g++.dg/torture/pr33627.C: New testcase.
From-SVN: r129004
Jason Merrill [Thu, 4 Oct 2007 08:48:23 +0000 (04:48 -0400)]
re PR c++/32470 (fvisibility=hidden without effect in some cases)
PR c++/32470
* name-lookup.c (push_namespace_with_attrs): Fold back into...
(push_namespace): Here.
(handle_namespace_attrs): New fn for the attr code.
(leave_scope): Don't pop_visibility.
* name-lookup.h (struct cp_binding_level): Remove has_visibility.
* parser.c (cp_parser_namespace_definition): Call
handle_namespace_attrs and pop_visibility as appropriate.
From-SVN: r129003
Tobias Schlüter [Thu, 4 Oct 2007 07:34:38 +0000 (09:34 +0200)]
re PR fortran/33626 (Parentheses get wrong kind during matching)
PR fortran/33626
fortran/
* resolve.c (resolve_operator): Always copy the type for
expressions in parentheses.
testsuite/
* gfortran.dg/parens_6.f90: New.
From-SVN: r129002
Anatoly Sokolov [Thu, 4 Oct 2007 06:51:38 +0000 (10:51 +0400)]
avr.c (commands_in_file, [...]): Remove variables.
* config/avr/avr.c (commands_in_file, commands_in_prologues,
commands_in_epilogues): Remove variables.
(avr_file_start): Remove unneded initializations of commands_in_file,
commands_in_prologues and commands_in_epilogues variables.
(avr_file_end): Remove dead code.
From-SVN: r129001
Paul Thomas [Thu, 4 Oct 2007 04:45:41 +0000 (04:45 +0000)]
re PR fortran/33542 (gfortran does not detect ambigious specific names if they are the same as generic names)
2007-10-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33542
* interface.c (check_interface1): Revert patch of 2007-10-02.
2007-10-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33542
* gfortran.dg/ambiguous_specific_1.f90: Remove.
From-SVN: r129000
Jason Merrill [Thu, 4 Oct 2007 01:01:00 +0000 (21:01 -0400)]
re PR c++/11756 (ICE's when using typeof in template function parameter type declarations)
PR c++/11756
* mangle.c (write_type) [TYPEOF_TYPE]: Just sorry.
From-SVN: r128999
GCC Administrator [Thu, 4 Oct 2007 00:17:15 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r128997
Kazu Hirata [Wed, 3 Oct 2007 23:42:32 +0000 (23:42 +0000)]
m68k.c (m68k_output_movem): Use the MOTOROLA if MOTOROLA is to true.
* config/m68k/m68k.c (m68k_output_movem): Use the MOTOROLA if
MOTOROLA is to true.
From-SVN: r128994
Francois-Xavier Coudert [Wed, 3 Oct 2007 21:27:39 +0000 (21:27 +0000)]
re PR fortran/26682 (gfortran fails with -fwhole-program optimization)
PR fortran/26682
* trans-decl.c (build_function_decl): Set "externally_visible"
attribute on the MAIN program decl.
From-SVN: r128993
Alexandre Oliva [Wed, 3 Oct 2007 19:38:01 +0000 (19:38 +0000)]
decl.c (duplicate_decls): Preserve linkage flags for mere redeclarations of gnu_inline definitions.
2007-10-01 Alexandre Oliva <aoliva@redhat.com>
* decl.c (duplicate_decls): Preserve linkage flags for mere
redeclarations of gnu_inline definitions.
* g++.dg/ext/gnu-inline-global-redecl.C: New.
From-SVN: r128992
Richard Sandiford [Wed, 3 Oct 2007 18:39:30 +0000 (18:39 +0000)]
re PR target/33635 (Bootstrap broken on mips-sgi-irix6.5)
gcc/
PR target/33635
* config/mips/mips-protos.h (mips_split_64bit_move): Rename to...
(mips_split_doubleword_move): ...this.
* config/mips/mips.c (mips_subword): Extend to handle 64-bit words;
use natural endianness for multi-format FPR values.
(mips_split_64bit_move): Rename to...
(mips_split_doubleword_move): ...this and extend to 64-bit words.
Use move_doubleword_fpr* patterns for moves involving FPRs.
(mips_save_reg): Update the call to mips_split_64bit_move.
(mips_secondary_reload_class): Return NO_REGS for any reload of a
nonzero constant into an FPR if the constant can be forced to memory.
* config/mips/mips.md: Update the splitter calls to
mips_split_64bit_move.
(UNSPEC_LOAD_DF_LOW): Rename to...
(UNSPEC_LOAD_LOW): ...this.
(UNSPEC_LOAD_DF_HIGH): Rename to...
(UNSPEC_LOAD_HIGH): ...this.
(UNSPEC_STORE_DF_HIGH): Rename to...
(UNSPEC_STORE_WORD): ...this.
(SPLITF): New mode iterator.
(HALFMODE): New mode attribute.
(movtf): New expander.
(*movtf_internal): New define_insn_and_split.
(move_doubleword_fpr<mode>): New expander.
(load_df_low, load_df_high, store_df_high, mthc1, mfhc1): Replace
with...
(load_low<mode>, load_high<mode>, store_word<mode>, mthc1<mode>)
(mfhc1<mode>): ...these more general patterns.
gcc/testsuite/
PR target/33635
* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_isa_rev
and mips_forced_be.
(dg-mips-options): Handle -EL and -mel. Make -mfp64 imply
-mhard-float and a suitable ISA. Improve handling of -mipsXrY
options.
* gcc.target/mips/fpr-moves-1.c: New test.
* gcc.target/mips/fpr-moves-2.c: Likewise.
* gcc.target/mips/fpr-moves-3.c: Likewise.
* gcc.target/mips/fpr-moves-4.c: Likewise.
* gcc.target/mips/fpr-moves-5.c: Likewise.
* gcc.target/mips/fpr-moves-6.c: Likewise.
* gcc.target/mips/mips32r2-mxhc1.c: Remove -march=mips32r2
From-SVN: r128991
Chris Jefferson [Wed, 3 Oct 2007 17:27:18 +0000 (17:27 +0000)]
moveable.cc: New.
2007-10-03 Chris Jefferson <chris@bubblescope.net>
Benjamin Kosnik <bkoz@redhat.com>
* testsuite/20_util/pair/moveable.cc: New. Merge from
libstdcxx_so_7-branch.
* testsuite/23_containers/deque/capacity/moveable.cc: Same.
* testsuite/23_containers/deque/cons/moveable.cc: Same.
* testsuite/23_containers/deque/modifiers/moveable.cc: Same.
* testsuite/23_containers/deque/moveable.cc: Same.
* testsuite/23_containers/list/moveable.cc: Same.
* testsuite/23_containers/map/moveable.cc: Same.
* testsuite/23_containers/multimap/moveable.cc: Same.
* testsuite/23_containers/multiset/moveable.cc: Same.
* testsuite/23_containers/set/moveable.cc: Same.
* testsuite/23_containers/vector/cons/moveable.cc: Same.
* testsuite/23_containers/vector/modifiers/moveable.cc: Same.
* testsuite/23_containers/vector/moveable.cc: Same.
* testsuite/23_containers/vector/resize/moveable.cc: Same.
* testsuite/25_algorithms/heap/moveable.cc: Same.
* testsuite/25_algorithms/nth_element/moveable.cc: Same.
* testsuite/25_algorithms/partial_sort/moveable.cc: Same.
* testsuite/25_algorithms/partition/moveable.cc: Same.
* testsuite/25_algorithms/remove_if/moveable.cc: Same.
* testsuite/25_algorithms/remove/moveable.cc: Same.
* testsuite/25_algorithms/reverse/moveable.cc: Same.
* testsuite/25_algorithms/rotate/moveable.cc: Same.
* testsuite/25_algorithms/sort/moveable.cc: Same.
* testsuite/25_algorithms/swap_ranges/moveable.cc: Same.
* testsuite/25_algorithms/unique/moveable.cc: Same.
* testsuite/util/testsuite_rvalref.h: New.
* testsuite/25_algorithms/equal/equal.cc: Move to...
* testsuite/25_algorithms/equal/no_operator_ne.cc: ...this.
* testsuite/25_algorithms/heap/heap.cc: Move to...
* testsuite/25_algorithms/heap/1.cc: ...this.
* testsuite/25_algorithms/lower_bound/lower_bound.cc: Move to...
* testsuite/25_algorithms/lower_bound/no_operator_ne.cc: ...this.
* testsuite/25_algorithms/partition/partition.cc: Move to...
* testsuite/25_algorithms/partition/1.cc: ...this.
* testsuite/25_algorithms/stable_partition/1.cc: ... and this.
* testsuite/25_algorithms/search/1.cc: Update from merge.
* testsuite/25_algorithms/search/check_type.cc: Same.
* testsuite/lib/dg-options.exp (dg-require-rvalref): New.
* testsuite/lib/libstdc++.exp (check_v3_target_rvalref): New.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r128990
Francois-Xavier Coudert [Wed, 3 Oct 2007 17:08:19 +0000 (17:08 +0000)]
* gfortran.dg/default_format_1.f90: XFAIL on all darwin targets.
From-SVN: r128989
Alexandre Oliva [Wed, 3 Oct 2007 16:58:25 +0000 (16:58 +0000)]
* cfgrtl.c (rtl_block_ends_with_call_p): Skip notes at the end.
From-SVN: r128988
Alexandre Oliva [Wed, 3 Oct 2007 16:57:21 +0000 (16:57 +0000)]
gcse.c (hash_scan_set): Insert set in insn before note at the end of basic block.
* gcse.c (hash_scan_set): Insert set in insn before note at
the end of basic block.
From-SVN: r128987
Sebastian Pop [Wed, 3 Oct 2007 15:45:10 +0000 (15:45 +0000)]
re PR tree-optimization/33576 (segfault in extract_muldiv for cpu2006 benchmark)
2007-10-03 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/33576
* testsuite/gcc.dg/tree-ssa/pr33576.c: New.
* tree-loop-linear.c (linear_transform_loops): Call remove_iv.
* lambda.h (lambda_loopnest_to_gcc_loopnest): New parameter.
(remove_iv): Declared.
* lambda-code.c (remove_iv): Not static.
(lambda_loopnest_to_gcc_loopnest): New parameter remove_ivs.
Don't remove ivs there, save ivs in the buffer.
From-SVN: r128986
Kazu Hirata [Wed, 3 Oct 2007 15:27:46 +0000 (15:27 +0000)]
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
From-SVN: r128985
Tobias Schlüter [Wed, 3 Oct 2007 15:00:49 +0000 (17:00 +0200)]
Fix date on ChangeLog entry.
From-SVN: r128984
François-Xavier Coudert [Wed, 3 Oct 2007 14:57:39 +0000 (14:57 +0000)]
default_format_1.f90: XFAIL on ppc-darwin.
* gfortran.dg/default_format_1.f90: XFAIL on ppc-darwin.
* gfortran.dg/default_format_2.f90: XFAIL on ppc-darwin.
From-SVN: r128983
Richard Sandiford [Wed, 3 Oct 2007 14:16:57 +0000 (14:16 +0000)]
no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
config/
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
libstdc++-v3/
libstdc++/
* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
-fno-exceptions to CXXFLAGS. Use GCC_TRY_COMPILE_OR_LINK.
Make the tests assign results to volatile variables. Use -lm
for link tests in GCC_TRY_COMPILE_OR_LINK. Fall back to
compile-only tests if -lm is not available.
* configure: Regenerate.
From-SVN: r128982
Andrew Haley [Wed, 3 Oct 2007 12:59:57 +0000 (12:59 +0000)]
re PR java/33639 (gcj generates assembler errors)
2007-10-03 Andrew Haley <aph@redhat.com>
PR java/33639
* class.c (mangled_classname): Detect and replace illegal
characters in assembly language symbols.
(gen_indirect_dispatch_tables): Call mangled_classname() on
the type.
From-SVN: r128981
Tobias Schlüter [Wed, 3 Oct 2007 11:37:44 +0000 (13:37 +0200)]
re PR fortran/33198 (Derived type in common: Default initializer not rejected)
PR fortran/33198
fortran/
* resolve.c (has_default_initializer): Move to top. Make bool.
(resolve_common_blocks): Simplify logic. Add case for derived
type initialization.
(resolve_fl_variable_derived): Split out from ...
(resolve_fl_variable): ... from here, while adapting to new h_d_i
interface.
testsuite/
* gfortran.dg/common_errors_1.f90: New.
From-SVN: r128980
Jason Merrill [Wed, 3 Oct 2007 10:43:42 +0000 (06:43 -0400)]
re PR c++/15764 (no cleanup if temporary's dtor terminates with an exception)
PR c++/15764
* cp/decl.c (wrap_cleanups_r): New fn.
(wrap_temporary_cleanups): New fn.
(initialize_local_var): Call it.
* tree-eh.c (same_handler_p): New fn.
(optimize_double_finally): New fn.
(refactor_eh_r): New fn.
(refactor_eh): New fn.
(pass_refactor_eh): New pass.
* tree-pass.h: Declare it.
* passes.c (init_optimization_passes): Add it.
From-SVN: r128979
Doug Kwan [Wed, 3 Oct 2007 10:01:43 +0000 (10:01 +0000)]
re PR debug/31899 (-g and using declaration causing ICE in reference_to_unused)
2007-10-03 Doug Kwan <dougkwan@google.com>
Richard Guenther <rguenther@suse.de>
PR debug/31899
* dwarf2out.c (reference_to_unused): Disable sanity checking,
be conservative instead.
* g++.dg/debug/using3.C: New testcase.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r128978
Francois-Xavier Coudert [Wed, 3 Oct 2007 09:46:46 +0000 (09:46 +0000)]
re PR fortran/26682 (gfortran fails with -fwhole-program optimization)
PR fortran/26682
* options.c (gfc_post_options): Issue an error when
-fwhole-program is used.
* doc/invoke.texi (-fwhole-program): Document that Fortran
doesn't support this option.
From-SVN: r128977
Kenneth Zadeck [Wed, 3 Oct 2007 01:31:47 +0000 (01:31 +0000)]
revert accidential change in revision 128957.
From-SVN: r128976
Jerry DeLisle [Wed, 3 Oct 2007 00:39:58 +0000 (00:39 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-10-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* gfortran.dg/namelist_38.f90: New test.
* gfortran.dg/namelist_39.f90: New test.
From-SVN: r128975
Paolo Carlini [Wed, 3 Oct 2007 00:34:40 +0000 (00:34 +0000)]
re PR libstdc++/33613 (compilation inconsistency upper_bound vs lower_bound with -D_GLIBCXX_DEBUG)
2007-10-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/33613
* include/debug/functions.h (__check_partitioned): Rename to...
(__check_partioned_lower): ... this.
(__check_partioned_upper): Add.
* include/debug/macros.h (__glibcxx_check_partitioned): Rename to...
(__glibcxx_check_partitioned_lower): ... this, adjust.
(__glibcxx_check_partitioned_upper): Add.
* include/debug/debug.h (__glibcxx_requires_partitioned): Rename to...
(__glibcxx_requires_partitioned_lower): ... this, adjust.
(__glibcxx_requires_partitioned_upper): Add.
* include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
binary search): Use the above.
* testsuite/25_algorithms/lower_bound/33613.cc: New.
* testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
From-SVN: r128974
Jerry DeLisle [Wed, 3 Oct 2007 00:33:09 +0000 (00:33 +0000)]
re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-10-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
and quote value in check of first character in string.
From-SVN: r128973
Kazu Hirata [Wed, 3 Oct 2007 00:25:22 +0000 (00:25 +0000)]
revert: no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
config/
Revert:
2007-10-02 Richard Sandiford <richard@codesourcery.com>
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
libstdc++/
Revert:
2007-10-02 Richard Sandiford <richard@codesourcery.com>
* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
-fno-exceptions to CXXFLAGS. Use GCC_TRY_COMPILE_OR_LINK.
Make the tests assign results to volatile variables.
* configure: Regenerate.
From-SVN: r128972
GCC Administrator [Wed, 3 Oct 2007 00:17:08 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r128970
Francois-Xavier Coudert [Tue, 2 Oct 2007 23:27:51 +0000 (23:27 +0000)]
re PR libfortran/33469 (Default formats for real input are not precise enough)
PR libfortran/33469
* io/write.c (write_real): Widen the default formats.
* gfortran.dg/default_format_1.f90: New test.
* gfortran.dg/default_format_2.f90: New test.
* gfortran.dg/namelist_print_1.f: Adjust expected output.
* gfortran.dg/real_const_3.f90: Adjust expected output.
From-SVN: r128967
Richard Sandiford [Tue, 2 Oct 2007 20:56:47 +0000 (20:56 +0000)]
mips.exp (setup_mips_tests): Set mips_abi to the default ABI.
gcc/testsuite/
* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_abi to the
default ABI. Split mips_forced_abi into mips_forced_abi and
mips_forced_regs.
(is_gp32_flag): Return true for -mabi=32.
(is_gp64_flag): New function. Handle 64-bit -mabi options.
(dg-mips-options): Use is_gp64_flag instead of checking specifically
for -mgp64. Update after the mips_forced_abi split. Handle -mabi=*.
Don't force an ABI for -mgp32 or -mfp32 if the flags contain -mabi=*.
* gcc.target/mips/pr33256.c: Remove -mips3 requirement.
* gcc.target/mips/save-restore-1.c: Use -mabi=32 instead of -mgp32.
* gcc.target/mips/save-restore-2.c: Likewise.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.
From-SVN: r128966
Richard Sandiford [Tue, 2 Oct 2007 20:50:46 +0000 (20:50 +0000)]
re PR middle-end/33617 (ICE for nonconstant callee-copied constructor arguments)
gcc/
PR middle-end/33617
* expr.c (expand_expr_addr_expr_1): Pass CONSTRUCTORs to
expand_expr.
gcc/testsuite/
PR middle-end/33617
* gcc.c-torture/compile/pr33617.c: New test.
From-SVN: r128965
David Daney [Tue, 2 Oct 2007 20:15:34 +0000 (20:15 +0000)]
mips.md (sync_compare_and_swap<mode>): Handle compare against constant zero.
* config/mips/mips.md (sync_compare_and_swap<mode>): Handle compare
against constant zero.
* config/mips/mips.h (MIPS_COMPARE_AND_SWAP): Handle constant zero
operand.
From-SVN: r128963
Andreas Tobler [Tue, 2 Oct 2007 19:56:50 +0000 (19:56 +0000)]
stabs-attrib-vect-darwin.c: Change options to use -gstabs+ for extended options.
2007-10-02 Andreas Tobler <a.tobler@schweiz.org>
* gcc.target/powerpc/stabs-attrib-vect-darwin.c: Change options to use
-gstabs+ for extended options.
From-SVN: r128962
Richard Sandiford [Tue, 2 Oct 2007 17:25:18 +0000 (17:25 +0000)]
no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
config/
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
libstdc++/
* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
-fno-exceptions to CXXFLAGS. Use GCC_TRY_COMPILE_OR_LINK.
Make the tests assign results to volatile variables.
* configure: Regenerate.
From-SVN: r128959
Benjamin Kosnik [Tue, 2 Oct 2007 16:07:01 +0000 (16:07 +0000)]
2.cc: Split into...
2007-10-02 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/25_algorithms/binary_search/2.cc: Split into...
* testsuite/25_algorithms/upper_bound/2.cc: ... this.
* testsuite/25_algorithms/lower_bound/2.cc: ... this.
* testsuite/25_algorithms/equal_range/2.cc: ... and this.
* testsuite/25_algorithms/sort/vectorbool.cc: Add from
libstdcxx_so_7-branch.
From-SVN: r128958
Kenneth Zadeck [Tue, 2 Oct 2007 13:10:07 +0000 (13:10 +0000)]
ra-conflict.c: New file.
2007-09-02 Kenneth Zadeck <zadeck@naturalbridge.com>
* ra-conflict.c: New file.
* ra.h: New file.
* reload.c (push_reload, find_dummy_reload): Change DF_RA_LIVE
usage to DF_LIVE usage.
* rtlanal.c (subreg_nregs_with_regno): New function.
* df-scan.c (df_def_record_1, df_uses_record): Add code to set
DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, and DF_REF_SUBREG flags.
(df_has_eh_preds): Removed.
(df_bb_refs_collect, df_bb_refs_collect, df_bb_refs_collect,
df_exit_block_uses_collect): Changed call from df_has_eh_preds to
bb_has_eh_pred.
* global.c (allocno, max_allocno, conflicts, allocno_row_words,
reg_allocno, EXECUTE_IF_SET_IN_ALLOCNO_SET): Moved to ra.h
(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE): Moved to ra-conflicts.c.
(regs_set, record_one_conflict, record_conflicts, mark_reg_store,
mark_reg_clobber, mark_reg_conflicts, mark_reg_death): Deleted.
(global_alloc): Turn off rescanning insns after call to
global_conflicts and added call to set_preferences.
(global_conflicts): Moved to ra-alloc.c.
(set_preferences_1, set_preferences): New function.
(mirror_conflicts): Changed types for various variables.
(mark_elimination): Change DF_RA_LIVE
usage to DF_LIVE usage.
(build_insn_chain): Rewritten from scratch and made local.
(print_insn_chain, print_insn_chains): New functions.
(dump_conflicts): Do not print conflicts for fixed_regs.
(rest_of_handle_global_alloc): Turn off insn rescanning.
* hard-reg-set.h: Fixed comment.
* local-alloc.c (update_equiv_regs): Change DF_RA_LIVE
usage to DF_LIVE usage and delete refs to TOP sets.
(block_alloc): Mark regs as live if they are in the artificial
defs at top of block.
(find_stack_regs): New function.
(rest_of_handle_local_alloc): Changed urec problem to live
problem and do not turn off df rescanning.
* df.h (DF_UREC, DF_UREC_BB_INFO, DF_LIVE_TOP, DF_RA_LIVE_IN,
DF_RA_LIVE_TOP, DF_RA_LIVE_OUT, df_urec_bb_info, df_urec,
df_urec_add_problem, df_urec_get_bb_info, df_has_eh_preds): Removed.
(DF_CHAIN, DF_NOTE, DF_CHAIN): Renumbered.
(DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, DF_REF_SUBREG): New
fields in df_ref_flags. The rest have been renumbered.
* init-regs.c (initialize_uninitialized_regs): Enhanced debugging
at -O1.
* rtl.h (subreg_nregs_with_regno): New function.
* df-problems.c: (df_get_live_out, df_get_live_in,
df_get_live_top): Removed reference to DF_RA_LIVE.
(df_lr_reset, df_lr_transfer_function, df_live_free_bb_info,
df_live_alloc, df_live_reset, df_live_local_finalize,
df_live_free): Make top set only if different from in set.
(df_lr_top_dump, df_live_top_dump): Only print top set if
different from in set.
(df_lr_bb_local_compute): Removed unnecessary check.
(df_urec_problem_data, df_urec_set_bb_info, df_urec_free_bb_info,
df_urec_alloc, df_urec_mark_reg_change, earlyclobber_regclass,
df_urec_check_earlyclobber, df_urec_mark_reg_use_for_earlyclobber,
df_urec_mark_reg_use_for_earlyclobber_1, df_urec_bb_local_compute,
df_urec_local_compute, df_urec_init, df_urec_local_finalize,
df_urec_confluence_n, df_urec_transfer_function, df_urec_free,
df_urec_top_dump, df_urec_bottom_dump, problem_UREC,
df_urec_add_problem): Removed.
(df_simulate_fixup_sets): Changed call from df_has_eh_preds to
bb_has_eh_pred.
* Makefile.in (ra-conflict.o, ra.h): New dependencies.
* basic_block.h (bb_has_abnormal_pred): New function.
* reload1.c (compute_use_by_pseudos): Change DF_RA_LIVE
usage to DF_LIVE usage.
From-SVN: r128957
Revital Eres [Tue, 2 Oct 2007 12:47:13 +0000 (12:47 +0000)]
Fix committed Changelog
From-SVN: r128956
Paul Thomas [Tue, 2 Oct 2007 11:45:11 +0000 (11:45 +0000)]
re PR fortran/33542 (gfortran does not detect ambigious specific names if they are the same as generic names)
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33542
* interface.c (check_interface1): Specific procedures are
always ambiguous if they have the same name.
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33542
* gfortran.dg/ambiguous_specific_1.f90: New test.
From-SVN: r128954
Revital Eres [Tue, 2 Oct 2007 09:22:17 +0000 (09:22 +0000)]
Add vec_init support for 750CL paired vectors and fix movv2sf_paired
From-SVN: r128952