Jakub Jelinek [Fri, 2 Nov 2012 08:03:02 +0000 (09:03 +0100)]
re PR target/55147 (x86: wrong code for 64-bit load)
PR target/55147
* config/i386/i386.md (bswapdi2): Limit to TARGET_64BIT.
(*bswapdi2_doubleword): Removed.
* gcc.target/i386/pr55147.c: New test.
From-SVN: r193090
Jonathan Wakely [Fri, 2 Nov 2012 01:47:17 +0000 (01:47 +0000)]
printers.py (Tr1HashtableIterator): Update.
* python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
(StdForwardListPrinter): Likewise.
From-SVN: r193087
Jonathan Wakely [Fri, 2 Nov 2012 01:29:00 +0000 (01:29 +0000)]
forward_list.h (forward_list(size_type)): Add missing allocator parameter.
* include/bits/forward_list.h (forward_list(size_type)): Add missing
allocator parameter.
(_Fwd_list_node_base): Use NSDMI and define constructor as defaulted.
(_Fwd_list_node::_M_value): Replace with uninitialized storage.
(_Fwd_list_node::_M_valptr()): Define functions to access storage.
(_Fwd_list_iterator, _Fwd_list_const_iterator): Use _M_valptr.
(_Fwd_list_base::_M_create_node): Only use allocator to construct the
element not the node.
* include/bits/forward_list.tcc (_Fwd_list_base::_M_erase_after): Only
use allocator to destroy the element not the node.
* testsuite/23_containers/forward_list/cons/11.cc: Remove unused
headers.
* testsuite/23_containers/forward_list/cons/12.cc: Likewise.
* testsuite/23_containers/forward_list/cons/13.cc: New.
* testsuite/23_containers/forward_list/cons/14.cc: New.
From-SVN: r193086
Gerald Pfeifer [Fri, 2 Nov 2012 00:25:46 +0000 (00:25 +0000)]
codecvt.xml: Fix reference to Austin Common Standards Revision Group.
* doc/xml/manual/codecvt.xml: Fix reference to Austin Common
Standards Revision Group.
* doc/xml/manual/messages.xml: Ditto.
* doc/xml/manual/using_exceptions.xml: Ditto.
* doc/xml/manual/messages.xml: Fix reference to GNU gettext.
* doc/xml/manual/policy_data_structures.xml: Fix reference to
STL at SGI.
Update reference to COM at Microsoft.
Update reference to Worst-case efficient priority queues at ACM.
From-SVN: r193084
David Edelsohn [Fri, 2 Nov 2012 00:23:19 +0000 (00:23 +0000)]
default_format_1.f90: XFAIL on AIX.
* gfortran.dg/default_format_1.f90: XFAIL on AIX.
* gfortran.dg/default_format_denormal_1.f90: Same.
From-SVN: r193083
GCC Administrator [Fri, 2 Nov 2012 00:18:13 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r193082
Gerald Pfeifer [Thu, 1 Nov 2012 23:58:38 +0000 (23:58 +0000)]
* doc/install.texi (Specific): Remove moxie web reference.
From-SVN: r193078
Marc Glisse [Thu, 1 Nov 2012 23:39:44 +0000 (00:39 +0100)]
re PR middle-end/55001 (Handle VEC_COND_EXPR better in tree-vect-generic.c)
2012-11-01 Marc Glisse <marc.glisse@inria.fr>
PR middle-end/55001
gcc/
* tree-vect-generic.c (expand_vector_condition): New function.
(expand_vector_operations_1): Call it.
testsuite/
* g++.dg/ext/vector19.C: Remove target restrictions.
* gcc.dg/fold-compare-7.c: New testcase.
From-SVN: r193077
Jonathan Wakely [Thu, 1 Nov 2012 23:20:37 +0000 (23:20 +0000)]
range_access.cc: Fix copying permission statement.
* testsuite/18_support/initializer_list/range_access.cc: Fix copying
permission statement.
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
808590.cc: Likewise.
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
move_iterators/1.cc: Likewise.
* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
move_iterators/1.cc: Likewise.
* testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
Likewise.
* testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
Likewise.
* testsuite/21_strings/basic_string/range_access/char/1.cc: Likewise.
* testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
Likewise.
* testsuite/23_containers/array/element_access/at_neg.cc: Likewise.
* testsuite/23_containers/array/range_access.cc: Likewise.
* testsuite/23_containers/deque/capacity/29134-2.cc: Likewise.
* testsuite/23_containers/deque/capacity/29134.cc: Likewise.
* testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Likewise.
* testsuite/23_containers/deque/range_access.cc: Likewise.
* testsuite/23_containers/deque/requirements/do_the_right_thing.cc:
Likewise.
* testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
* testsuite/23_containers/forward_list/cons/1.cc: Likewise.
* testsuite/23_containers/forward_list/cons/10.cc: Likewise.
* testsuite/23_containers/forward_list/cons/11.cc: Likewise.
* testsuite/23_containers/forward_list/cons/12.cc: Likewise.
* testsuite/23_containers/forward_list/cons/2.cc: Likewise.
* testsuite/23_containers/forward_list/cons/3.cc: Likewise.
* testsuite/23_containers/forward_list/cons/4.cc: Likewise.
* testsuite/23_containers/forward_list/cons/5.cc: Likewise.
* testsuite/23_containers/forward_list/cons/6.cc: Likewise.
* testsuite/23_containers/forward_list/cons/7.cc: Likewise.
* testsuite/23_containers/forward_list/cons/8.cc: Likewise.
* testsuite/23_containers/forward_list/cons/9.cc: Likewise.
* testsuite/23_containers/forward_list/debug/clear.cc: Likewise.
* testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/move_constructor.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after.cc: Likewise.
* testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/swap.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/1.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
* testsuite/23_containers/forward_list/modifiers/6.cc: Likewise.
* testsuite/23_containers/forward_list/operations/1.cc: Likewise.
* testsuite/23_containers/forward_list/operations/2.cc: Likewise.
* testsuite/23_containers/forward_list/operations/3.cc: Likewise.
* testsuite/23_containers/forward_list/operations/4.cc: Likewise.
* testsuite/23_containers/forward_list/operations/5.cc: Likewise.
* testsuite/23_containers/forward_list/operations/6.cc: Likewise.
* testsuite/23_containers/forward_list/operations/7.cc: Likewise.
* testsuite/23_containers/forward_list/range_access.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/
do_the_right_thing.cc: Likewise.
* testsuite/23_containers/list/capacity/1.cc: Likewise.
* testsuite/23_containers/list/capacity/1.h: Likewise.
* testsuite/23_containers/list/capacity/29134.cc: Likewise.
* testsuite/23_containers/list/modifiers/1.cc: Likewise.
* testsuite/23_containers/list/modifiers/1.h: Likewise.
* testsuite/23_containers/list/modifiers/1_c++0x.cc: Likewise.
* testsuite/23_containers/list/modifiers/2.cc: Likewise.
* testsuite/23_containers/list/modifiers/2.h: Likewise.
* testsuite/23_containers/list/modifiers/3.cc: Likewise.
* testsuite/23_containers/list/modifiers/3.h: Likewise.
* testsuite/23_containers/list/modifiers/insert/25288.cc: Likewise.
* testsuite/23_containers/list/modifiers/insert/25288.h: Likewise.
* testsuite/23_containers/list/operations/1.cc: Likewise.
* testsuite/23_containers/list/operations/1.h: Likewise.
* testsuite/23_containers/list/operations/2.cc: Likewise.
* testsuite/23_containers/list/operations/2.h: Likewise.
* testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
* testsuite/23_containers/list/operations/3.cc: Likewise.
* testsuite/23_containers/list/operations/3.h: Likewise.
* testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
* testsuite/23_containers/list/operations/4.cc: Likewise.
* testsuite/23_containers/list/operations/4.h: Likewise.
* testsuite/23_containers/list/operations/42352.cc: Likewise.
* testsuite/23_containers/list/operations/5.cc: Likewise.
* testsuite/23_containers/list/operations/5.h: Likewise.
* testsuite/23_containers/list/range_access.cc: Likewise.
* testsuite/23_containers/list/requirements/do_the_right_thing.cc:
Likewise.
* testsuite/23_containers/map/capacity/29134.cc: Likewise.
* testsuite/23_containers/map/range_access.cc: Likewise.
* testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
* testsuite/23_containers/multimap/range_access.cc: Likewise.
* testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
* testsuite/23_containers/multiset/range_access.cc: Likewise.
* testsuite/23_containers/set/capacity/29134.cc: Likewise.
* testsuite/23_containers/set/range_access.cc: Likewise.
* testsuite/23_containers/unordered_map/final_hash.cc: Likewise.
* testsuite/23_containers/unordered_map/observers.cc: Likewise.
* testsuite/23_containers/unordered_map/range_access.cc: Likewise.
* testsuite/23_containers/unordered_map/requirements/52942.cc:
Likewise.
* testsuite/23_containers/unordered_map/requirements/53067.cc:
Likewise.
* testsuite/23_containers/unordered_map/requirements/53339.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/final_hash.cc: Likewise.
* testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
* testsuite/23_containers/unordered_multimap/range_access.cc: Likewise.
* testsuite/23_containers/unordered_multimap/requirements/53339.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/final_hash.cc: Likewise.
* testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
* testsuite/23_containers/unordered_multiset/range_access.cc: Likewise.
* testsuite/23_containers/unordered_set/final_hash.cc: Likewise.
* testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
* testsuite/23_containers/unordered_set/observers.cc: Likewise.
* testsuite/23_containers/unordered_set/range_access.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/52942.cc:
Likewise.
* testsuite/23_containers/unordered_set/requirements/53067.cc:
Likewise.
* testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
Likewise.
* testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
* testsuite/23_containers/vector/capacity/29134.cc: Likewise.
* testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
* testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: Likewise.
* testsuite/23_containers/vector/range_access.cc: Likewise.
* testsuite/23_containers/vector/requirements/do_the_right_thing.cc:
Likewise.
* testsuite/24_iterators/range_access.cc: Likewise.
* testsuite/25_algorithms/copy/1.cc: Likewise.
* testsuite/25_algorithms/copy/2.cc: Likewise.
* testsuite/25_algorithms/copy/3.cc: Likewise.
* testsuite/25_algorithms/copy/34595.cc: Likewise.
* testsuite/25_algorithms/copy/4.cc: Likewise.
* testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
Likewise.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
Likewise.
* testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/copy_n/1.cc: Likewise.
* testsuite/25_algorithms/copy_n/2.cc: Likewise.
* testsuite/25_algorithms/copy_n/3.cc: Likewise.
* testsuite/25_algorithms/copy_n/4.cc: Likewise.
* testsuite/25_algorithms/copy_n/50119.cc: Likewise.
* testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
* testsuite/25_algorithms/fill/4.cc: Likewise.
* testsuite/25_algorithms/fill_n/1.cc: Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc:
Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc:
Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
Likewise.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
Likewise.
* testsuite/25_algorithms/heap/1.cc: Likewise.
* testsuite/25_algorithms/heap/moveable.cc: Likewise.
* testsuite/25_algorithms/heap/moveable2.cc: Likewise.
* testsuite/25_algorithms/is_heap/1.cc: Likewise.
* testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
* testsuite/25_algorithms/is_sorted/1.cc: Likewise.
* testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
* testsuite/25_algorithms/move/1.cc: Likewise.
* testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/move_backward/1.cc: Likewise.
* testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
* testsuite/25_algorithms/partition/1.cc: Likewise.
* testsuite/25_algorithms/partition/moveable.cc: Likewise.
* testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
* testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
* testsuite/25_algorithms/stable_partition/1.cc: Likewise.
* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_partition/pr52822.cc: Likewise.
* testsuite/26_numerics/valarray/range_access.cc: Likewise.
* testsuite/28_regex/range_access.cc: Likewise.
* testsuite/ext/vstring/capacity/29134.cc: Likewise.
* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
* testsuite/ext/vstring/hash/char/1.cc: Likewise.
* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
* testsuite/ext/vstring/range_access.cc: Likewise.
* testsuite/ext/vstring/requirements/do_the_right_thing.cc: Likewise.
* testsuite/performance/25_algorithms/copy_backward_deque_iterators.cc:
Likewise.
* testsuite/performance/25_algorithms/copy_deque_iterators.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
Likewise.
* testsuite/tr1/6_containers/unordered_multimap/capacity/
29134-multimap.cc: Likewise.
* testsuite/tr1/6_containers/unordered_multiset/capacity/
29134-multiset.cc: Likewise.
* testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
Likewise.
From-SVN: r193076
Steve Ellcey [Thu, 1 Nov 2012 23:11:50 +0000 (23:11 +0000)]
target-globals.c (save_target_globals): Save lra_int struct.
2012-11-01 Steve Ellcey <sellcey@mips.com>
* target-globals.c (save_target_globals): Save lra_int struct.
From-SVN: r193075
Gerald Pfeifer [Thu, 1 Nov 2012 22:56:15 +0000 (22:56 +0000)]
standards.texi (Standards): Adjust reference to Go specification.
* doc/standards.texi (Standards): Adjust reference to Go
specification.
From-SVN: r193073
Lawrence Crowl [Thu, 1 Nov 2012 22:39:26 +0000 (22:39 +0000)]
This patch removes the unused ebitmap, and then removes some sbitmap functions only used by ebitmap.
This patch removes the unused ebitmap, and then removes some sbitmap functions
only used by ebitmap. The functions removed are:
SET_BIT_WITH_POPCOUNT
RESET_BIT_WITH_POPCOUNT
bitmap_copy_n
bitmap_range_empty_p
sbitmap_popcount
In addition, two functions have been made private to the implementation file:
SBITMAP_SIZE_BYTES
sbitmap_verify_popcount
Tested on x86-64.
Index: gcc/ChangeLog
2012-11-01 Lawrence Crowl <crowl@google.com>
* ebitmap.h: Remove unused.
* ebitmap.c: Remove unused.
* Makefile.in: Remove ebitmap.h and ebitmap.c.
* sbitmap.h (SBITMAP_SIZE_BYTES): Move to source file.
(SET_BIT_WITH_POPCOUNT): Remove unused.
(RESET_BIT_WITH_POPCOUNT): Remove unused.
(bitmap_copy_n): Remove unused.
(bitmap_range_empty_p): Remove unused.
(sbitmap_popcount): Remove unused.
(sbitmap_verify_popcount): Make private to source file.
* sbitmap.c (SBITMAP_SIZE_BYTES): Move here from header.
(bitmap_copy_n): Remove unused.
(bitmap_range_empty_p): Remove unused.
(sbitmap_popcount): Remove unused.
(sbitmap_verify_popcount): Make private to source file.
2012-11-01 Lawrence Crowl <crowl@google.com>
From-SVN: r193072
Oleg Endo [Thu, 1 Nov 2012 21:28:49 +0000 (21:28 +0000)]
re PR target/55160 (Counterproductive loop induction variable optimization)
PR target/55160
* gcc.target/sh/pr55160.c: New.
From-SVN: r193071
Lawrence Crowl [Thu, 1 Nov 2012 21:02:15 +0000 (21:02 +0000)]
This patch renames sbitmap iterators to unify them with the bitmap iterators.
Remove the unused EXECUTE_IF_SET_IN_SBITMAP_REV, which has an unconventional
interface.
Rename the sbitmap_iter_* functions to match bitmap's bmp_iter_* functions.
Add an additional parameter to the initialization and next functions to
match the interface in bmp_iter_*. This extra parameter is mostly hidden
by the use of the EXECUTE_IF macros.
Rename the EXECUTE_IF_SET_IN_SBITMAP macro to EXECUTE_IF_SET_IN_BITMAP. Its
implementation is now identical to that in bitmap.h. To prevent redefinition
errors, both definitions are now guarded by #ifndef. An alternate strategy
is to simply include bitmap.h from sbitmap.h. As this would increase build
time, I have elected to use the #ifndef version. I do not have a strong
preference here.
The sbitmap_iterator type is still distinctly named because it is often
declared in contexts where the bitmap type is not obvious. There are less
than 40 uses of this type, so the burden to modify it when changing bitmap
types is not large.
Tested on x86-64, config-list.mk testing.
Index: gcc/ChangeLog
2012-10-31 Lawrence Crowl <crowl@google.com>
* sbitmap.h (sbitmap_iter_init): Rename bmp_iter_set_init and add
unused parameter to match bitmap iterator. Update callers.
(sbitmap_iter_cond): Rename bmp_iter_set. Update callers.
(sbitmap_iter_next): Rename bmp_iter_next and add unused parameter to
match bitmap iterator. Update callers.
(EXECUTE_IF_SET_IN_SBITMAP_REV): Remove unused.
(EXECUTE_IF_SET_IN_SBITMAP): Rename EXECUTE_IF_SET_IN_BITMAP and
adjust to be identical to the definition in bitmap.h. Conditionalize
the definition based on not having been defined. Update callers.
* bitmap.h (EXECUTE_IF_SET_IN_BITMAP): Conditionalize the definition
based on not having been defined. (To match the above.)
From-SVN: r193069
François Dumont [Thu, 1 Nov 2012 20:55:51 +0000 (20:55 +0000)]
hashtable_policy.h (__details::_Before_begin<>): New, combine a base node instance and an allocator.
2012-11-01 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable_policy.h (__details::_Before_begin<>):
New, combine a base node instance and an allocator.
* include/bits/hashtable.h (_Hashtable<>::_M_node_allocator): Remove.
(_Hashtable<>::_M_before_begin): Rename into _M_bbegin and type
modified to __detail::_Before_begin<>.
(_Hashtable<>::_M_node_allocator()): New, get the node allocator
part of _M_bbegin.
(_Hashtable<>::_M_before_begin()): New, get the before begin node
part of _M_bbegin.
(_Hashtable<>): Adapt to use latter.
From-SVN: r193068
David Edelsohn [Thu, 1 Nov 2012 20:06:33 +0000 (20:06 +0000)]
vsx-mass-1.c: Check for dot symbols in scan-assembler regex.
* gcc.target/powerpc/vsx-mass-1.c: Check for dot symbols in
scan-assembler regex.
From-SVN: r193067
Lawrence Crowl [Thu, 1 Nov 2012 19:23:35 +0000 (19:23 +0000)]
This patch normalizes more bitmap function names.
sbitmap.h
TEST_BIT -> bitmap_bit_p
SET_BIT -> bitmap_set_bit
SET_BIT_WITH_POPCOUNT -> bitmap_set_bit_with_popcount
RESET_BIT -> bitmap_clear_bit
RESET_BIT_WITH_POPCOUNT -> bitmap_clear_bit_with_popcount
basic-block.h
sbitmap_intersection_of_succs -> bitmap_intersection_of_succs
sbitmap_intersection_of_preds -> bitmap_intersection_of_preds
sbitmap_union_of_succs -> bitmap_union_of_succs
sbitmap_union_of_preds -> bitmap_union_of_preds
The sbitmap.h functions also needed their numeric paramter changed
from unsigned int to int to match the bitmap functions.
Callers updated to match.
Tested on x86-64, config-list.mk testing.
Index: gcc/ChangeLog
2012-11-01 Lawrence Crowl <crowl@google.com>
* sbitmap.h (TEST_BIT): Rename bitmap_bit_p, normalizing parameter
type. Update callers to match.
(SET_BIT): Rename bitmap_set_bit, normalizing parameter type. Update
callers to match.
(SET_BIT_WITH_POPCOUNT): Rename bitmap_set_bit_with_popcount,
normalizing parameter type. Update callers to match.
(RESET_BIT): Rename bitmap_clear_bit, normalizing parameter type.
Update callers to match.
(RESET_BIT_WITH_POPCOUNT): Rename bitmap_clear_bit_with_popcount,
normalizing parameter type. Update callers to match.
* basic-block.h (sbitmap_intersection_of_succs): Rename
bitmap_intersection_of_succs. Update callers to match.
* basic-block.h (sbitmap_intersection_of_preds): Rename
bitmap_intersection_of_preds. Update callers to match.
* basic-block.h (sbitmap_union_of_succs): Rename
bitmap_union_of_succs. Update callers to match.
* basic-block.h (sbitmap_union_of_preds): Rename
bitmap_union_of_preds. Update callers to match.
From-SVN: r193066
Vladimir Makarov [Thu, 1 Nov 2012 19:02:40 +0000 (19:02 +0000)]
re PR middle-end/55150 (Crash in copy_rtx)
2012-11-01 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55150
* lra-constraints.c (lra_constraints): Check only pseudos with
equivalences. Add insns with equivalence pseudos.
2012-11-01 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55150
* gcc.dg/pr55150.c: Rename to gcc.dg/pr55150-1.c.
* gcc.dg/pr55150-2.c: New test.
From-SVN: r193065
Sharad Singhai [Thu, 1 Nov 2012 17:55:23 +0000 (17:55 +0000)]
re PR other/55164 (-fdump-*-all not working)
2012-11-01 Sharad Singhai <singhai@google.com>
PR other/55164
* dumpfile.h (struct dump_file_info): Fix order of flags.
From-SVN: r193064
Tobias Burnus [Thu, 1 Nov 2012 16:14:42 +0000 (17:14 +0100)]
Makefile.am (libquadmath_la_SOURCES): Add new math/* files.
2012-11-01 Tobias Burnus <burnus@net-b.de>
* Makefile.am (libquadmath_la_SOURCES): Add new math/* files.
* Makefile.in: Regenerated.
* math/acoshq.c: Update comment.
* math/acosq.c: Ditto.
* math/asinhq.c: Ditto.
* math/asinq.c: Ditto.
* math/atan2q.c: Ditto.
* math/atanhq.c: Ditto.
* math/ceilq.c: Ditto.
* math/copysignq.c: Ditto.
* math/cosq.c: Ditto.
* math/coshq.c: Ditto.
* math/erfq.c: Ditto.
* math/fabsq.c: Ditto.
* math/finiteq.c: Ditto.
* math/floorq.c: Ditto.
* math/fmodq.c: Ditto.
* math/frexpq.c: Ditto.
* math/isnanq.c: Ditto.
* math/j0q.c: Ditto.
* math/j1q.c: Ditto.
* math/ldexpq.c: Ditto.
* math/llroundq.c: Ditto.
* math/log10q.c: Ditto.
* math/log1pq.c: Ditto.
* math/log2q.c: Ditto.
* math/logq.c: Ditto.
* math/lroundq.c: Ditto.
* math/modfq.c: Ditto.
* math/nextafterq.c: Ditto.
* math/powq.c: Ditto.
* math/rem_pio2q.c: Ditto.
* math/remainderq.c: Ditto.
* math/rintq.c: Ditto.
* math/roundq.c: Ditto.
* math/scalblnq.c: Ditto.
* math/scalbnq.c: Ditto.
* math/sincosq_kernel.c: Ditto.
* math/sinq.c: Ditto.
* math/tanq.c: Ditto.
* math/expq.c: Ditto.
(__expq_table, expq): Renamed local array from __expl_table.
* math/cosq_kernel.c (__quadmath_kernel_cosq): Fix sign
* handling.
* math/cacoshq.c: Changes from GLIBC; fix returned sign.
* math/casinhq.c: Changes from GLIBC to fix special-case.
* math/cbrtq.c: Use modified GLIBC version.
* math/complex.c (ccoshd, cexpq, clog10q, clogq, csinhq, csinq,
ctanhq, ctanq): Moved to separates files.
(mult_c128, div_c128): Removed no longer needed functions.
(cexpiq): Call sincosq instead of sinq and cosq.
(cosq): Call cosh(-re,im) instead of cosq/sinq/sinh/cosh.
* math/ccoshq.c (ccoshq): New file, moved from complex.c and
modified based on GLIBC.
* math/cexpq.c (cexp): Ditto.
* math/clog10q.c (clog10q): Ditto.
* math/clogq.c (clogq): Ditto.
* math/csinhq.c: Ditto.
* math/csinq.c: Ditto.
* math/csqrtq.c: Ditto.
* math/ctanhq.c: Ditto.
* math/ctanq.c: Ditto.
* math/fmaq.c (fmaq): Port TININESS_AFTER_ROUNDING handling
from GLIBC.
* math/ilogbq.c (ilogbq): Add errno = EDOM handling.
* math/isinf_nsq.c (__quadmath_isinf_nsq): New file, ported
from GLIBC.
* math/lgammaq.c (lgammaq): Add signgam handling.
* math/sinhq.c (sinhq): Fix sign handling.
* math/sinq_kernel.c (__quadmath_kernel_sinq): Ditto.
* math/tgammaq.c (tgammaq): Ditto.
* math/x2y2m1q.c: New file.
* quadmath-imp.h (TININESS_AFTER_ROUNDING): New define.
(__quadmath_x2y2m1q, __quadmath_isinf_nsq): New prototypes.
From-SVN: r193063
Jan Hubicka [Thu, 1 Nov 2012 12:44:13 +0000 (13:44 +0100)]
re PR tree-optimization/55104 (ice in inline_call, at ipa-inline-transform.c:269)
PR middle-end/55104
* ipa-inline-transform.c (inline_call): Silence an sanity check until
ipa-cp issue if fixed.
From-SVN: r193062
Sharad Singhai [Thu, 1 Nov 2012 07:34:44 +0000 (07:34 +0000)]
invoke.texi: Update -fopt-info documentation.
2012-11-01 Sharad Singhai <singhai@google.com>
* doc/invoke.texi: Update -fopt-info documentation.
* dumpfile.c: Move dump_flags here from passes.c.
Rename opt_info_options to optinfo_verbosity_options.
Add optgroup_options.
(dump_files): Add field for optinfo_flags in the static initializer.
(dump_register): Handle additional parameter for optgroup_flags.
(opt_info_enable_passes): Renamed opt_info_enable_all. Handle
optgroup_flags. Fix documentation.
(opt_info_switch_p_1): Handle optgroup options.
(opt_info_switch_p): Handle optgroup_flags. Warn on multiple files.
* dumpfile.h (dump_register): Additional argument for optgroup_flags.
All callers updated.
(struct dump_file_info): Add field for optgroup_flags.
Define OPTGROUP_* flags.
* tree-pass.h (struct opt_pass): Add addtional field for optinfo_flags.
All opt_pass static initializers updated.
* opts-global.c (dump_remap_tree_vectorizer_verbose): Use 'all'
instead of 'optall'.
(handle_common_deferred_options): Fix typo in error message.
* passes.c (register_one_dump_file): Add argument for optgroup_flags.
Turn on OPTGROUP_IPA for IPA passes.
Move dump_flags from here to dumpfile.c.
* statistics.c (statistics_early_init): Use OPTGROUP_NONE in call to
dump_register.
testsuite/ChangeLog
* testsuite/gcc.dg/plugin/selfassign.c: Add opgtroup_flags initializer.
* testsuite/gcc.dg/plugin/one_time_plugin.c: Likewise.
* testsuite/g++.dg/plugin/selfassign.c: Likewise.
* testsuite/g++.dg/plugin/dumb_plugin.c: Likewise.
From-SVN: r193061
Joern Rennecke [Thu, 1 Nov 2012 06:28:06 +0000 (06:28 +0000)]
re PR target/55160 (Counterproductive loop induction variable optimization)
PR target/55160
* config/sh/sh.md (doloop_end): Use emit_jump_insn.
From-SVN: r193060
Ian Lance Taylor [Thu, 1 Nov 2012 03:02:13 +0000 (03:02 +0000)]
compiler, runtime: More steps toward separating int and intgo.
From-SVN: r193059
Jakub Jelinek [Thu, 1 Nov 2012 02:48:07 +0000 (03:48 +0100)]
re PR middle-end/53708 (Many failures of the objc tests with -O3 -fnext-runtime and -m32)
2012-10-31 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/53708
* tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Preserve
user-supplied alignment when used with an explicit section name.
From-SVN: r193058
Jonathan Wakely [Thu, 1 Nov 2012 01:30:34 +0000 (01:30 +0000)]
forward_list.h (forward_list::assign): Dispatch to new functions based on assignability of elements.
* include/bits/forward_list.h (forward_list::assign): Dispatch to new
functions based on assignability of elements.
(forward_list::_M_assign): Add overloaded functions for assigning
via assignment or via clearing and insertion.
(forward_list::_M_assign_val): Likewise.
(forward_list::_M_move_assign(forward_list&&, false_type)): Do not
erase elements that are not moved.
* include/bits/forward_list.tcc (forward_list::operator=): Call
assign() to copy elements.
* testsuite/23_containers/forward_list/cons/10.cc: New.
* testsuite/23_containers/forward_list/cons/11.cc: New.
* testsuite/23_containers/forward_list/cons/12.cc: New.
From-SVN: r193057
GCC Administrator [Thu, 1 Nov 2012 00:18:53 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r193056
Dehao Chen [Thu, 1 Nov 2012 00:08:51 +0000 (00:08 +0000)]
tree-eh.c (do_return_redirection): Set location for jump statement.
gcc:
2012-10-31 Dehao Chen <dehao@google.com>
* tree-eh.c (do_return_redirection): Set location for jump statement.
(do_goto_redirection): Likewise.
(frob_into_branch_around): Likewise.
(lower_try_finally_nofallthru): Likewise.
(lower_try_finally_copy): Likewise.
(lower_try_finally_switch): Likewise.
* expr.c (store_expr): Use current insn location instead of expr
location.
(expand_expr_real): Likewise.
(expand_expr_real_1): Likewise.
gcc/testsuite:
2012-10-31 Dehao Chen <dehao@google.com>
* g++.dg/debug/dwarf2/block.C: New testcase.
From-SVN: r193053
Easwaran Raman [Wed, 31 Oct 2012 23:28:45 +0000 (23:28 +0000)]
re PR target/54938 (sh libgcc_unpack_df.o fails to build: ../../../srcw/libgcc/fp-bit.h:221:19: internal compiler error: in emit_cmp_and_jump_insn_1, at optabs.c:4273)
2012-10-31 Easwaran Raman <eraman@google.com>
PR target/54938
PR middle-end/54957
* optabs.c (emit_cmp_and_jump_insn_1): Add REG_BR_PROB note
only if it doesn't already exist.
* stmt.c (get_outgoing_edge_probs): Return 0 if BB is NULL.
(emit_case_dispatch_table): Handle the case where STMT_BB is
NULL.
(expand_sjlj_dispatch_table): Pass BB containing before_case
to emit_case_dispatch_table.
From-SVN: r193052
Lawrence Crowl [Wed, 31 Oct 2012 23:15:10 +0000 (23:15 +0000)]
This patch implements generic type query and conversion functions,
and applies them to the use of cgraph_node, varpool_node, and symtab_node.
The functions are:
bool is_a <TYPE> (pointer)
Tests whether the pointer actually points to a more derived TYPE.
TYPE *as_a <TYPE> (pointer)
Converts pointer to a TYPE*.
TYPE *dyn_cast <TYPE> (pointer)
Converts pointer to TYPE* if and only if "is_a <TYPE> pointer".
Otherwise, returns NULL.
This function is essentially a checked down cast.
These functions reduce compile time and increase type safety when treating a
generic item as a more specific item. In essence, the code change is from
if (symtab_function_p (node))
{
struct cgraph_node *cnode = cgraph (node);
....
}
to
if (cgraph_node *cnode = dyn_cast <cgraph_node> (node))
{
....
}
The necessary conditional test defines a variable that holds a known good
pointer to the specific item and avoids subsequent conversion calls and
the assertion checks that may come with them.
When, the property test is embedded within a larger condition, the variable
declaration gets pulled out of the condition. (This leaves some room for
using the variable inappropriately.)
if (symtab_variable_p (node)
&& varpool (node)->finalized)
varpool_analyze_node (varpool (node));
becomes
varpool_node *vnode = dyn_cast <varpool_node> (node);
if (vnode && vnode->finalized)
varpool_analyze_node (vnode);
Note that we have converted two sets of assertions in the calls to varpool
into safe and efficient use of a variable.
There are remaining calls to symtab_function_p and symtab_variable_p that
do not involve a pointer to a more specific type. These have been converted
to calls to a functions is_a <cgraph_node> and is_a <varpool_node>. The
original predicate functions have been removed.
The cgraph.h header defined both a struct and a function with the name
varpool_node. This name overloading can cause some unintuitive error messages
when, as is common in C++, one omits the struct keyword when using the type.
I have renamed the function to varpool_node_for_decl.
Tested on x86_64.
Index: gcc/ChangeLog
2012-10-31 Lawrence Crowl <crowl@google.com>
* is-a.h: New.
(is_a <T> (U*)): New. Test for is-a relationship.
(as_a <T> (U*)): New. Treat as a derived type.
(dyn_cast <T> (U*)): New. Conditionally cast based on is_a.
* cgraph.h (varpool_node): Rename to varpool_node_for_decl.
Adjust callers to match.
(is_a_helper <cgraph_node>::test (symtab_node_def *)): New.
(is_a_helper <varpool_node>::test (symtab_node_def *)): New.
(symtab_node_def::try_function): New. Change most calls to
symtab_function_p with calls to dyn_cast <cgraph_node> (p).
(symtab_node_def::try_variable): New. Change most calls to
symtab_variable_p with calls to dyn_cast <varpool_node> (p).
(symtab_function_p): Remove. Change callers to use
is_a <cgraph_node> (p) instead.
(symtab_variable_p): Remove. Change callers to use
is_a <varpool_node> (p) instead.
* cgraph.c (cgraph_node_for_asm): Remove redundant call to
symtab_node_for_asm.
* cgraphunit.c (symbol_finalized_and_needed): New.
(symbol_finalized): New.
(cgraph_analyze_functions): Split complicated conditionals out into
above new functions.
* Makefile.in (CGRAPH_H): Add is-a.h as used by cgraph.h.
From-SVN: r193051
Jan Hubicka [Wed, 31 Oct 2012 23:10:22 +0000 (00:10 +0100)]
* gcc.dg/pr44974.c: Add noinline.
From-SVN: r193050
Oleg Endo [Wed, 31 Oct 2012 22:05:40 +0000 (22:05 +0000)]
Fix PR number typo in ChangeLog.
From-SVN: r193049
Janus Weil [Wed, 31 Oct 2012 21:55:50 +0000 (22:55 +0100)]
re PR fortran/53718 ([OOP] gfortran generates asm label twice in the same output file)
2012-10-31 Janus Weil <janus@gcc.gnu.org>
PR fortran/53718
* trans.h (GFC_DECL_PUSH_TOPLEVEL): Removed.
* trans-decl.c (gfc_get_symbol_decl,gfc_generate_function_code): Remove
GFC_DECL_PUSH_TOPLEVEL.
(build_function_decl): Do not push __copy procedure to toplevel.
2012-10-31 Janus Weil <janus@gcc.gnu.org>
PR fortran/53718
* gfortran.dg/class_54.f90: New.
From-SVN: r193048
Steven Bosscher [Wed, 31 Oct 2012 21:37:10 +0000 (21:37 +0000)]
re PR tree-optimization/55018 (CDDCE pass is too aggressive sometimes with infinite loops and with some functions)
gcc/
PR tree-optimization/55018
* basic-block.h (dfs_find_deadend): New prototype.
* cfganal.c (dfs_find_deadend): No longer static. Use bitmap
instead of sbitmap for visited.
(flow_dfs_compute_reverse_execute): Use dfs_find_deadend here, too.
* dominance.c (calc_dfs_tree): If saw_unconnected,
traverse from dfs_find_deadend of unconnected b
instead of b directly.
testsuite/
PR tree-optimization/55018
* gcc.dg/torture/pr55018.c: New test.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r193047
Ian Lance Taylor [Wed, 31 Oct 2012 20:49:53 +0000 (20:49 +0000)]
runtime/goc2c: Drop gc support, change int to intgo.
From-SVN: r193046
Eric Botcazou [Wed, 31 Oct 2012 20:10:26 +0000 (20:10 +0000)]
i386.c (ix86_expand_prologue): Emit frame info for the special register pushes before frame probing and allocation.
* config/i386/i386.c (ix86_expand_prologue): Emit frame info for the
special register pushes before frame probing and allocation.
From-SVN: r193044
Paolo Carlini [Wed, 31 Oct 2012 19:14:39 +0000 (19:14 +0000)]
re PR c++/54583 (Spurious warning: value computed is not used with variable-size array)
/cp
2012-10-31 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54583
* tree.c (build_cplus_array_type): Set TREE_NO_WARNING on the
TYPE_SIZE of VLAs.
/testsuite
2012-10-31 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54583
* g++.dg/ext/vla13.C: New.
From-SVN: r193043
Vladimir Makarov [Wed, 31 Oct 2012 18:41:18 +0000 (18:41 +0000)]
re PR middle-end/55150 (Crash in copy_rtx)
2012-10-31 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55150
* lra-constraints.c (lra_constraints): Update debug insn info
after equivalence change.
2012-10-31 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55150
* gcc.dg/pr55150.c: New test.
From-SVN: r193042
Tobias Burnus [Wed, 31 Oct 2012 17:22:26 +0000 (18:22 +0100)]
re PR fortran/55134 (associate construct and assumed size array)
2012-10-31 Tobias Burnus <burnus@net-b.de>
PR fortran/55134
* trans-array.c (gfc_conv_array_parameter): Regard AS_DEFERRED
* as
array with descriptor.
2012-10-31 Tobias Burnus <burnus@net-b.de>
PR fortran/55134
* gfortran.dg/associate_11.f90: New.
From-SVN: r193041
Diego Novillo [Wed, 31 Oct 2012 16:37:06 +0000 (12:37 -0400)]
validate_failures.py: Fix parsing of summary lines.
* testsuite-management/validate_failures.py: Fix parsing
of summary lines.
From-SVN: r193039
Jan Hubicka [Wed, 31 Oct 2012 16:15:21 +0000 (17:15 +0100)]
ipa-inline.c (ipa_inline): Avoid infinite loop on inlining empty virtual functions calling themselves.
* ipa-inline.c (ipa_inline): Avoid infinite loop on inlining
empty virtual functions calling themselves.
From-SVN: r193038
Tobias Burnus [Wed, 31 Oct 2012 15:46:59 +0000 (16:46 +0100)]
complex.c (csqrtq): NaN and INF fixes.
2012-10-31 Tobias Burnus <burnus@net-b.de>
Joseph Myers <joseph@codesourcery.com>
David S. Miller <davem@davemloft.net>
Ulrich Drepper <drepper@redhat.com>
Marek Polacek <polacek@redhat.com>:
Petr Baudis <pasky@suse.cz>
* math/complex.c (csqrtq): NaN and INF fixes.
* math/sqrtq.c (sqrt): NaN, INF and < 0 fixes.
* math/expm1q.c (expm1q): Changes from GLIBC. Use expq for
large parameters. Fix errno for boundary conditions.
* math/finiteq.c (finiteq): Add comment.
* math/fmaq.c (fmaq): Changes from GLIBC. Fix missing underflows
and bad results for some subnormal results. Fix sign of inexact
zero return. Fix sign of exact zero return.
Ensure additions are not scheduled after fetestexcept.
* math/jnq.c (jnq): Changes from GLIBC. Set up errno properly
for ynq. Fix jnq precision.
* math/nearbyintq.c (nearbyintq): Changes from GLIBC. Do not
manipulate bits before adding and subtracting TWO112[sx].
* math/rintq.c (rintq): Ditto.
* math/scalbnq.c (scalbnq): Changes from GLIBC. Fix integer
overflow.
Co-Authored-By: David S. Miller <davem@davemloft.net>
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
Co-Authored-By: Ulrich Drepper <drepper@redhat.com>
From-SVN: r193037
Tom Tromey [Wed, 31 Oct 2012 14:55:20 +0000 (14:55 +0000)]
re PR other/50899 (need @direntry for gcov)
PR other/50899
* doc/gcc.texi: Add @direntry for gcov.
From-SVN: r193036
Joern Rennecke [Wed, 31 Oct 2012 14:23:00 +0000 (14:23 +0000)]
* expr.c (can_move_by_pieces): Apply ATTRIBUTE_UNUSED to len.
From-SVN: r193035
Marc Glisse [Wed, 31 Oct 2012 13:01:30 +0000 (13:01 +0000)]
Uppercase in ChangeLog.
From-SVN: r193034
Jonathan Yong [Wed, 31 Oct 2012 11:36:45 +0000 (11:36 +0000)]
os_defines.h: Do not define anymore _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
2012-10-31 Jonathan Yong <jon_y@users.sourceforge.net>
* config/os/mingw32-w64/os_defines.h: Do not define anymore
_GLIBCXX_HAVE_BROKEN_VSWPRINTF.
From-SVN: r193033
Jonathan Yong [Wed, 31 Oct 2012 11:34:27 +0000 (11:34 +0000)]
os_defines.h: Do not define anymore _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
2012-10-31 Jonathan Yong <jon_y@users.sourceforge.net>
* config/os/mingw32-w64/os_defines.h: Do not define anymore
_GLIBCXX_HAVE_BROKEN_VSWPRINTF.
From-SVN: r193032
Dodji Seketeli [Wed, 31 Oct 2012 08:55:43 +0000 (08:55 +0000)]
PR c++/54955 - Fail to parse alignas expr at the beginning of a declaration
In this PR, g++ embarrassingly fails to parse the simple alignas
expression below:
alignas(double) int f;
even though the simple-declaration production in Clause 7 suggests
otherwise.
Fixed thus and tested on x86_64-unknown-linux-gnu against trunk.
gcc/cp
PR c++/54955
* parser.c (cp_nth_tokens_can_be_std_attribute_p): Recognize the
'Alignas' keyword as the beginning of a c++11 attribute specifier.
Update the comment of the function.
(cp_next_tokens_can_be_gnu_attribute_p): Update the comment of the
function.
gcc/testsuite/
PR c++/54955
* g++.dg/cpp0x/gen-attrs-48-2.C: New test.
From-SVN: r193029
Jakub Jelinek [Wed, 31 Oct 2012 08:45:27 +0000 (09:45 +0100)]
re PR tree-optimization/19105 (fold does not spot anti-range test)
PR tree-optimization/19105
PR tree-optimization/21643
PR tree-optimization/46309
* tree-ssa-reassoc.c (init_range_entry): Add STMT argument
and use it if EXP is NULL.
(update_range_test): Handle OPCODE equal to ERROR_MARK
and oe->op NULL.
(optimize_range_tests): Likewise.
(final_range_test_p, suitable_cond_bb, no_side_effect_bb, get_ops,
maybe_optimize_range_tests): New functions.
(reassociate_bb): Call maybe_optimize_range_tests if last
stmt of bb is GIMPLE_COND that hasn't been visited yet.
* gcc.dg/pr19105.c: New test.
* gcc.dg/pr21643.c: New test.
* gcc.dg/pr46309-2.c: New test.
* gcc.c-torture/execute/pr46309.c: New test.
From-SVN: r193028
Richard Sandiford [Wed, 31 Oct 2012 08:01:36 +0000 (08:01 +0000)]
rs6000.md (insvsi, [...]): Rename to...
gcc/
* config/rs6000/rs6000.md (insvsi, insvdi, extvsi, extvdi): Rename to...
(insvsi_internal, insvdi_internal, extvsi_internal)
(extvdi_internal): ...this.
(insv, extv): Update accordingly.
From-SVN: r193027
Richard Sandiford [Wed, 31 Oct 2012 08:01:23 +0000 (08:01 +0000)]
combine.c (simplify_comparison): If BITS_BIG_ENDIAN...
gcc/
* combine.c (simplify_comparison): If BITS_BIG_ENDIAN, always assume
that zero_extracts of const_ints are doing word-sized extractions.
From-SVN: r193026
Richard Sandiford [Wed, 31 Oct 2012 08:01:14 +0000 (08:01 +0000)]
combine.c (make_extraction): Remove dead wanted_inner_mode- and pos_rtx-related code.
gcc/
* combine.c (make_extraction): Remove dead wanted_inner_mode-
and pos_rtx-related code.
From-SVN: r193025
Richard Sandiford [Wed, 31 Oct 2012 08:00:51 +0000 (08:00 +0000)]
expmed.c (store_bit_field_1): Move generation of MEM insvs to the MEM_P block.
gcc/
* expmed.c (store_bit_field_1): Move generation of MEM insvs
to the MEM_P block.
(extract_bit_field_1): Likewise extvs and extzvs.
From-SVN: r193024
Richard Sandiford [Wed, 31 Oct 2012 08:00:39 +0000 (08:00 +0000)]
expmed.c (store_bit_field_using_insv): New function, split out from...
gcc/
* expmed.c (store_bit_field_using_insv): New function,
split out from...
(store_bit_field_1): ...here.
(extract_bit_field_using_extv): New function, split out from...
(extract_bit_field_1): ...here.
From-SVN: r193023
Richard Sandiford [Wed, 31 Oct 2012 08:00:24 +0000 (08:00 +0000)]
expmed.c (store_bit_field_1): Use OP_MODE to check whether an insv pattern is available.
gcc/
* expmed.c (store_bit_field_1): Use OP_MODE to check whether an
insv pattern is available. Remove redundant checks for OP_MODE
being MAX_MACHINE_MODE.
(extract_bit_field_1): Remove redundant checks for EXT_MODE being
MAX_MACHINE_MODE.
From-SVN: r193022
Richard Sandiford [Wed, 31 Oct 2012 08:00:12 +0000 (08:00 +0000)]
expmed.c (store_bit_field_1): Remove test for BLKmode values.
gcc/
* expmed.c (store_bit_field_1): Remove test for BLKmode values.
From-SVN: r193021
Ralf Corsepius [Wed, 31 Oct 2012 05:03:28 +0000 (06:03 +0100)]
t-rtems: New (Custom multilibs).
2012-10-31 Ralf Corsépius <ralf.corsepius@rtems.org>,
Joel Sherrill <joel.sherrill@oarcorp.com>
* config/sparc/t-rtems: New (Custom multilibs).
* config/sparc/t-rtems-64: New (Custom multilibs).
* config.gcc (sparc64-*-rtems*): Add sparc/t-rtems-64.
(sparc-*-rtems*): Add sparc/t-rtems.
Co-Authored-By: Joel Sherrill <joel.sherrill@oarcorp.com>
From-SVN: r193018
Richard Henderson [Wed, 31 Oct 2012 04:46:20 +0000 (21:46 -0700)]
Detect assembler support for RTM
* acinclude.m4 (LIBITM_CHECK_AS_RTM): New.
* configure.ac: Use it.
* config.h.in, configure: Rebuild.
* testsuite/Makefile.in: Rebuild.
From-SVN: r193017
Alan Modra [Wed, 31 Oct 2012 04:22:48 +0000 (14:52 +1030)]
rs6000.c (legitimize_reload_address): Remove code handling non-aligned ld/std.
gcc/
* config/rs6000/rs6000.c (legitimize_reload_address): Remove code
handling non-aligned ld/std.
* config/rs6000/paired.md (movv2sf_paired): Use 'Y' instead of 'o'.
* config/rs6000/vsx.md (vsx_mov, vsx_movti): Likewise.
* config/rs6000/altivec.md (altivec_mov, altivec_movti): Likewise.
* config/rs6000/dfp.md (movtd_internal): Use 'm' instead of 'o'.
gcc/testsuite/
* gcc.target/powerpc/dimode_off.c: New.
* gcc.target/powerpc/timode_off.c: New.
* gcc.target/powerpc/dfmode_off.c: New.
* gcc.target/powerpc/tfmode_off.c: New.
From-SVN: r193016
Alan Modra [Wed, 31 Oct 2012 03:45:34 +0000 (14:15 +1030)]
linux64_closure.S: Add new ABI support.
* src/powerpc/linux64_closure.S: Add new ABI support.
* src/powerpc/linux64.S: Likewise.
From-SVN: r193015
Alan Modra [Wed, 31 Oct 2012 03:43:22 +0000 (14:13 +1030)]
linux64.h (TARGET_OS_CPP_BUILTINS): Define _CALL_LINUX.
* config/rs6000/linux64.h (TARGET_OS_CPP_BUILTINS): Define _CALL_LINUX.
From-SVN: r193014
Joern Rennecke [Wed, 31 Oct 2012 03:21:03 +0000 (03:21 +0000)]
re PR target/52498 (vmsdbgout.c fails to build with --enable-werror-always)
PR target/52498
* vmsdbgout.c (vmsdbgout_write_source_line): Comment out names of
last two parameters.
From-SVN: r193013
Joern Rennecke [Wed, 31 Oct 2012 02:51:26 +0000 (02:51 +0000)]
lra-constraints.c (choose_split_class): Add ATTRIBUTE_UNUSED to hard_reg_class.
* lra-constraints.c (choose_split_class): Add ATTRIBUTE_UNUSED to
hard_reg_class.
From-SVN: r193012
Joel Sherrill [Wed, 31 Oct 2012 02:17:37 +0000 (02:17 +0000)]
config.host (m32r-*-rtems*): Include crtinit.o and crtfinit.o as extra_parts.
2012-10-31 Joel Sherrill <joel.sherrill@oarcorp.com>
* config.host (m32r-*-rtems*): Include crtinit.o and crtfinit.o
as extra_parts.
From-SVN: r193010
Jonathan Wakely [Wed, 31 Oct 2012 01:09:59 +0000 (01:09 +0000)]
forward_list.h (forward_list): Adjust comments.
* include/bits/forward_list.h (forward_list): Adjust comments.
(forward_list(const forward_list&, const _Alloc&)): Use
_M_range_initialize to copy elements.
(forward_list(forward_list&&, const _Alloc&)): Add exception
specification.
(_Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&)):
Remove.
* include/bits/forward_list.tcc (_Fwd_list_base(const _Fwd_list_base&,
const _Node_alloc_type&)): Remove.
(_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Fix
memory leak when allocators are not equal.
From-SVN: r193009
Ian Lance Taylor [Wed, 31 Oct 2012 00:38:49 +0000 (00:38 +0000)]
compiler: Add -fgo-relative-import-path.
* lang.opt (-fgo-relative-import-path): New option.
* go-lang.c (go_relative_import_path): New static variable.
(go_langhook_init): Pass go_relative_import_path to
go_create_gogo.
(go_langhook_handle_option): Handle -fgo-relative-import-path.
* go-c.h (go_create_gogo): Update declaration.
* gccgo.texi (Invoking gccgo): Document
-fgo-relative-import-path.
From-SVN: r193008
GCC Administrator [Wed, 31 Oct 2012 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r193006
Alexandre Oliva [Tue, 30 Oct 2012 23:47:35 +0000 (23:47 +0000)]
re PR debug/54551 (DF resets some DEBUG_INSNs unnecessarily)
PR debug/54551
PR debug/54693
* valtrack.c (dead_debug_promote_uses): Assert-check that
global used bit was clear and initialize entry
unconditionally.
From-SVN: r193003
Eric Botcazou [Tue, 30 Oct 2012 23:08:14 +0000 (23:08 +0000)]
cse.c (hash_rtx_cb): Replace RTX_UNCHANGING_P with MEM_READONLY_P in head comment.
* cse.c (hash_rtx_cb): Replace RTX_UNCHANGING_P with MEM_READONLY_P in
head comment.
(hash_rtx): Likewise.
From-SVN: r193001
H.J. Lu [Tue, 30 Oct 2012 22:56:52 +0000 (22:56 +0000)]
Remove lra_in_progress check for ARG_POINTER_REGNUM
gcc/
PR rtl-optimization/55093
* rtlanal.c (simplify_subreg_regno): Remove lra_in_progress
check for ARG_POINTER_REGNUM.
gcc/testsuite/
PR rtl-optimization/55093
* gcc.target/i386/pr55093.c: New file.
From-SVN: r193000
Eric Botcazou [Tue, 30 Oct 2012 22:54:04 +0000 (22:54 +0000)]
* gcc-interface/Make-lang.in: Fix and clean up rules for C files.
From-SVN: r192998
H.J. Lu [Tue, 30 Oct 2012 21:39:05 +0000 (21:39 +0000)]
Rename pr55116.c to pr55116-1.c
* gcc.target/i386/pr55116.c: Renamed to ...
* gcc.target/i386/pr55116-1.c: This.
From-SVN: r192997
H.J. Lu [Tue, 30 Oct 2012 21:35:35 +0000 (21:35 +0000)]
Add another testcase for PR middle-end/55116
* gcc.target/i386/pr55116-2.c: New file.
From-SVN: r192996
Steve Ellcey [Tue, 30 Oct 2012 21:21:41 +0000 (21:21 +0000)]
mti-linux.h (SYSROOT_SUFFIX_SPEC): Change order and add mabi=64.
2012-10-30 Steve Ellcey <sellcey@mips.com>
* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Change order
and add mabi=64.
(DRIVER_SELF_SPECS): Make -n32 the default on mips64* archs.
* config/mips/t-mti-linux (MULTILIB_OPTIONS): Change order.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): New.
From-SVN: r192995
Joern Rennecke [Tue, 30 Oct 2012 21:06:12 +0000 (21:06 +0000)]
Fix ChangeLog typo.
From-SVN: r192994
Joern Rennecke [Tue, 30 Oct 2012 21:03:03 +0000 (21:03 +0000)]
lra-constrraints.c (check_secondary_memory_needed_p): Add ATTRIBUTE_UNUSED to parameters.
* lra-constrraints.c (check_secondary_memory_needed_p):
Add ATTRIBUTE_UNUSED to parameters.
From-SVN: r192993
Richard Sandiford [Tue, 30 Oct 2012 19:07:28 +0000 (19:07 +0000)]
defaults.h (SLOW_UNALIGNED_ACCESS): Provide default definition.
gcc/
* defaults.h (SLOW_UNALIGNED_ACCESS): Provide default definition.
* expmed.c (SLOW_UNALIGNED_ACCESS): Remove default definition.
* expr.c (SLOW_UNALIGNED_ACCESS): Likewise.
* lra-constraints.c (SLOW_UNALIGNED_ACCESS): Likewise.
(simplify_operand_subreg): Don't check STRICT_ALIGNMENT here.
From-SVN: r192992
Jan Hubicka [Tue, 30 Oct 2012 16:51:12 +0000 (17:51 +0100)]
* ipa-inline-analysis.c (eliminated_by_inlining_prob): Cleanup.
From-SVN: r192991
Jan Hubicka [Tue, 30 Oct 2012 16:50:05 +0000 (16:50 +0000)]
tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter EVERY_ITERATION with implicit value of true.
* tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
EVERY_ITERATION with implicit value of true.
(record_estimate): Check dominance relationship of the basic block
we are estimating on instead of relying on UPPER to be false.
(struct ilb_data): Drop RELIABLE.
(idx_infer_loop_bounds): Update.
(infer_loop_bounds_from_ref): Drop parameter RELIABLE.
(infer_loop_bounds_from_array): Drop parameter RELIABLE.
(infer_loop_bounds_from_undefined): Update comments and handling
of RELIABLE.
(estimate_numbers_of_iterations_loop): Record all bounds.
From-SVN: r192990
Jan Hubicka [Tue, 30 Oct 2012 16:12:16 +0000 (17:12 +0100)]
tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter EVERY_ITERATION with implicit value of true.
* tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
EVERY_ITERATION with implicit value of true.
(record_estimate): Check dominance relationship of the basic block
we are estimating on instead of relying on UPPER to be false.
(struct ilb_data): Drop RELIABLE.
(idx_infer_loop_bounds): Update.
(infer_loop_bounds_from_ref): Drop parameter RELIABLE.
(infer_loop_bounds_from_array): Drop parameter RELIABLE.
(infer_loop_bounds_from_undefined): Update comments and handling
of RELIABLE.
(estimate_numbers_of_iterations_loop): Record all bounds.
From-SVN: r192989
Richard Sandiford [Tue, 30 Oct 2012 14:33:48 +0000 (14:33 +0000)]
lra-eliminations.c (lra_eliminate_regs_1): Use simplify_gen_subreg rather than gen_rtx_SUBREG.
gcc/
* lra-eliminations.c (lra_eliminate_regs_1): Use simplify_gen_subreg
rather than gen_rtx_SUBREG.
From-SVN: r192988
Richard Biener [Tue, 30 Oct 2012 14:14:04 +0000 (14:14 +0000)]
gimple.h (gimple_store_p): New predicate.
2012-10-30 Richard Biener <rguenther@suse.de>
* gimple.h (gimple_store_p): New predicate.
(gimple_assign_load_p): Likewise.
* tree-inline.c (estimate_num_insns): Use it.
* gcc.dg/vect/slp-perm-2.c: Adjust.
From-SVN: r192987
Marc Glisse [Tue, 30 Oct 2012 12:56:47 +0000 (13:56 +0100)]
fold-const.c (fold_binary_op_with_conditional_arg): Handle vectors.
2012-10-30 Marc Glisse <marc.glisse@inria.fr>
* fold-const.c (fold_binary_op_with_conditional_arg): Handle vectors.
(fold_binary_loc): call it for VEC_COND_EXPR.
From-SVN: r192986
James Greenhalgh [Tue, 30 Oct 2012 12:31:49 +0000 (12:31 +0000)]
2012-10-30 James Greenhalgh <james.greenhalgh@arm.com>
Tejas Belagod <tejas.belagod@arm.com>
* config/aarch64/aarch64-simd.md
(aarch64_simd_bsl<mode>_internal): New pattern.
(aarch64_simd_bsl<mode>): Likewise.
(aarch64_vcond_internal<mode>): Likewise.
(vcondu<mode><mode>): Likewise.
(vcond<mode><mode>): Likewise.
* config/aarch64/iterators.md (UNSPEC_BSL): Add to define_constants.
Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>
From-SVN: r192985
Richard Biener [Tue, 30 Oct 2012 12:02:39 +0000 (12:02 +0000)]
re PR tree-optimization/55111 (ICE: tree check: expected ssa_name, have integer_cst in live_on_edge, at tree-vrp.c:89)
2012-10-30 Richard Biener <rguenther@suse.de>
PR tree-optimization/55111
* tree-ssa-pre.c (eliminate_insert): Properly fold the built
stmt.
* gcc.dg/torture/pr55111.c: New testcase.
From-SVN: r192984
Oleg Endo [Tue, 30 Oct 2012 09:22:14 +0000 (09:22 +0000)]
re PR target/54963 (Wrong code generated for libgfortran/generated/eoshift3_8.c on SH)
PR target/54963
* config/sh/iterators.md (SIDI): New mode iterator.
* config/sh/sh.md (negdi2): Use parallel around operation and T_REG
clobber in expander.
(*negdi2): Mark output operand as early clobbered. Add T_REG clobber.
Split after reload. Simplify split code.
(abssi2, absdi2): Fold expanders into abs<mode>2.
(*abssi2, *absdi2): Fold into *abs<mode>2 insn_and_split. Split insns
before reload.
(*negabssi2, *negabsdi2): Fold into *negabs<mode>2. Add T_REG clobber.
Split insns before reload.
(negsi_cond): Reformat. Use emit_move_insn instead of
gen_movesi.
(negdi_cond): Reformat. Use emit_move_insn instead of a pair
of gen_movsi. Split insn before reload.
From-SVN: r192983
Oleg Endo [Tue, 30 Oct 2012 09:07:08 +0000 (09:07 +0000)]
re PR c++/54988 (fpmath=sse target pragma causes inlining failure because of target specific option mismatch)
PR target/54988
* config/sh/sh.md (tstqi_t_zero): Rename to *tstqi_t_zero.
(*tst<mode>_t_zero): New insns.
* config/sh/iterators.md (lowpart_be, lowpart_le): New mode attributes.
PR target/54988
* gcc.target/sh/pr53988.c: New.
From-SVN: r192982
H.J. Lu [Tue, 30 Oct 2012 08:38:11 +0000 (01:38 -0700)]
Remove alloca from dump_gimple_bb_header
* gimple-pretty-print.c (dump_gimple_bb_header): Avoid alloca.
From-SVN: r192981
Ganesh Gopalasubramanian [Tue, 30 Oct 2012 08:30:21 +0000 (08:30 +0000)]
Add myself to MAINTAINERS
From-SVN: r192980
Jakub Jelinek [Tue, 30 Oct 2012 08:08:01 +0000 (09:08 +0100)]
re PR debug/54953 (New sra-1.c FAILs on powerpc)
PR debug/54953
* valtrack.h (DEBUG_TEMP_AFTER_WITH_REG_FORCE): New.
* valtrack.c (dead_debug_insert_temp): Use emit_debug_insn_after
even for where == DEBUG_TEMP_AFTER_WITH_REG_FORCE.
* dce.c (word_dce_process_block, dce_process_block): Pass
DEBUG_TEMP_AFTER_WITH_REG_FORCE if insn is needed and therefore
not going to be eliminated.
From-SVN: r192978
Bin Cheng [Tue, 30 Oct 2012 02:17:50 +0000 (02:17 +0000)]
re PR target/54989 (FAIL: gcc.dg/hoist-register-pressure.c scan-rtl-dump hoist "PRE/HOIST: end of bb .* copying expression" on darwin)
PR target/54989
* gcc.dg/hoist-register-pressure-1.c: Rename from
hoist-register-pressure.c. Add nonpic condition.
* gcc.dg/hoist-register-pressure-2.c: New testcase.
From-SVN: r192976
GCC Administrator [Tue, 30 Oct 2012 00:17:58 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r192975
Lawrence Crowl [Tue, 30 Oct 2012 00:02:55 +0000 (00:02 +0000)]
This patch implements the unification of the *bitmap interfaces as discussed.
Essentially, we rename ebitmap and sbitmap functions to use the same names
as the bitmap functions. This rename works because we can now overload
on the bitmap type. Some macros now become inline functions to enable
that overloading.
The sbitmap non-bool returning bitwise operations have been merged with
the bool versions. Sometimes this merge involved modifying the non-bool
version to compute the bool value, and sometimes modifying bool version to
add additional work from the non-bool version. The redundant routines have
been removed.
The allocation functions have not been renamed, because we often do not
have an argument on which to overload. The cardinality functions have not
been renamed, because they have different parameters, and are thus not
interchangable. The iteration functions have not been renamed, because
they are functionally different.
Tested on x86_64, contrib/config-list.mk testing passed.
Index: gcc/ChangeLog
2012-10-29 Lawrence Crowl <crowl@google.com>
* sbitmap.h (sbitmap_copy): Rename bitmap_copy.
(sbitmap_copy_n): Rename bitmap_copy_n.
(sbitmap_equal): Rename bitmap_equal_p.
(sbitmap_empty_p): Rename bitmap_empty_p.
(sbitmap_range_empty_p): Rename bitmap_range_empty_p.
(sbitmap_zero): Rename bitmap_clear.
(sbitmap_ones): Rename bitmap_ones.
(sbitmap_vector_zero): Rename bitmap_vector_clear.
(sbitmap_vector_ones): Rename bitmap_vector_ones.
(sbitmap_not): Rename bitmap_not.
(sbitmap_a_and_b_cg): Commented out.
(sbitmap_a_and_b): Rename bitmap_and. Add bool return.
(sbitmap_difference): Rename bitmap_and_compl.
(sbitmap_a_or_b_cg): Commented out.
(sbitmap_a_or_b): Rename bitmap_xor. Add bool return.
(sbitmap_a_xor_b_cg): Commented out.
(sbitmap_a_xor_b): Rename bitmap_xor. Add bool return.
(sbitmap_a_and_b_or_c_cg): Rename bitmap_and_or.
(sbitmap_a_and_b_or_c): Commented out.
(sbitmap_a_or_b_and_c_cg): Rename bitmap_or_and.
(sbitmap_a_or_b_and_c): Commented out.
(sbitmap_union_of_diff_cg): Rename bitmap_ior_and_compl.
(sbitmap_union_of_diff): Commented out.
(dump_sbitmap): Rename dump_bitmap.
(dump_sbitmap_file): Rename dump_bitmap_file.
(debug_sbitmap): Rename debug_bitmap.
(dump_sbitmap_vector): Rename dump_bitmap_vector.
(sbitmap_first_set_bit): Rename bitmap_first_set_bit.
(sbitmap_last_set_bit): Rename bitmap_last_set_bit.
(sbitmap_a_subset_b_p): Rename bitmap_subset_p.
(sbitmap_any_common_bits): Rename bitmap_intersect_p.
(#define sbitmap_free): Reimplement as inline function.
(#define sbitmap_vector_free): Reimplement as inline function.
* bitmap.h (#define bitmap_zero): Remove as redundant.
(#define bitmap_empty_p): Reimplement as inline function.
(#define dump_bitmap): Reimplement as inline function.
From-SVN: r192969
Jonathan Wakely [Mon, 29 Oct 2012 23:21:35 +0000 (23:21 +0000)]
re PR c++/54930 (Add warning switch for "returning reference to temporary" and similar)
gcc/c-family:
PR c++/54930
* c.opt (Wreturn_local_addr): Define new option.
gcc/c:
PR c++/54930
* c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
gcc/cp:
PR c++/54930
* typeck.c (maybe_warn_about_returning_address_of_local): Use
OPT_Wreturn_local_addr.
gcc:
PR c++/54930
* doc/invoke.texi (Warning Options): Document -Wno-return-local-addr.
gcc/testsuite:
PR c++/54930
* gcc.dg/Wreturn-local-addr.c: New.
* g++.dg/warn/Wno-return-local-addr.C: New.
* g++.dg/warn/Wreturn-local-addr.C: New.
From-SVN: r192968
H.J. Lu [Mon, 29 Oct 2012 23:09:03 +0000 (23:09 +0000)]
Add a testcase for PR middle-end/55116
PR middle-end/55116
* gcc.target/i386/pr55116.c: New file.
From-SVN: r192967
H.J. Lu [Mon, 29 Oct 2012 21:56:35 +0000 (21:56 +0000)]
Remove trailing white spaces
* lra-assigns.c: Remove trailing white spaces.
* lra-coalesce.c: Likewise.
* lra-constraints.c: Likewise.
* lra-eliminations.c: Likewise.
* lra-int.h: Likewise.
* lra-spills.c: Likewise.
* lra.c: Likewise.
From-SVN: r192966
Jonathan Wakely [Mon, 29 Oct 2012 21:49:19 +0000 (21:49 +0000)]
re PR libstdc++/55123 ([C++11] Construction of shared_ptr<const T> from unique_ptr<const T> fails)
PR libstdc++/55123
* include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
Do not instantiate allocator with element_type.
* testsuite/20_util/shared_ptr/cons/55123.cc: New.
From-SVN: r192964
Manuel López-Ibáñez [Mon, 29 Oct 2012 20:17:23 +0000 (20:17 +0000)]
re PR c/53066 (Wshadow should not warn for shadowing an extern function)
2012-10-29 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c/53066
c/
* c-decl.c (warn_if_shadowing): Do not warn if a variable
shadows a function, unless the variable is a function or a
pointer-to-function.
gcc/
* tree.h (FUNCTION_POINTER_TYPE_P): New.
testsuite/
* gcc.dg/Wshadow-4.c: New.
* gcc.dg/Wshadow-4.h: New.
From-SVN: r192963
Alexandre Oliva [Mon, 29 Oct 2012 19:37:25 +0000 (19:37 +0000)]
re PR debug/54693 (VTA guality issues with loops)
PR debug/54693
* gcc/valtrack.c (dead_debug_insert_temp): Defer rescan of
newly-emitted debug insn.
From-SVN: r192962
Alexandre Oliva [Mon, 29 Oct 2012 19:36:47 +0000 (19:36 +0000)]
re PR debug/54693 (VTA guality issues with loops)
gcc/ChangeLog:
PR debug/54693
* tree-ssa-threadedge.c (thread_around_empty_block): Copy
debug temps from predecessor before threading.
gcc/testsuite/ChangeLog:
PR debug/54693
* gcc.dg/guality/pr54693.c: New.
From-SVN: r192961