2014-04-15  Richard Biener  <rguenther@suse.de>

	* alias.c (record_component_aliases): Do not walk BINFOs.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209412 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-15  Richard Biener  <rguenther@suse.de>

	* alias.c (ncr_compar): New function.
	(nonoverlapping_component_refs_p): Re-implement in O (n log n).


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209413 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libstdc++/60734
	* include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209414 138bc75d-0d04-0410-961f-82ee72b054a4
	* gcc-interface/trans.c (Case_Statement_to_gnu): Revert latest change.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209415 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-15  Richard Biener  <rguenther@suse.de>

	* common.opt (lto_partition_model): New enum.
	(flto-partition=): Merge separate options with a single with argument,
	add -flto-partition=one support.
	* flag-types.h (enum lto_partition_model): Declare.
	* opts.c (finish_options): Remove duplicate -flto-partition=
	option check.
	* lto-wrapper.c (run_gcc): Adjust.

	lto/
	* lto.c: Include params.h.
	(do_whole_program_analysis): Switch on flag_lto_partition value,
	add support for LTO_PARTITION_ONE.
	* lto-partition.h (lto_balanced_map): Adjust.
	* lto-partition.c (lto_balanced_map): Get number of desired
	partitions as argument to support -flto-partition=one.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209416 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-15  Richard Biener  <rguenther@suse.de>

	* lto-streamer.h (LTO_major_version): Bump to 4.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209417 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libstdc++/60695
	* include/std/atomic (atomic<_Tp>): Add static assertion.
	* testsuite/29_atomics/atomic/60695.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209418 138bc75d-0d04-0410-961f-82ee72b054a4
	PR rtl-optimization/60663
	* config/arm/arm.c (arm_new_rtx_costs): Improve ASM_OPERANDS case,
	avoid 0 cost.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209419 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (duplicate_decls): Remove redundant TYPE_NAME use.
	* name-lookup.c (pushdecl_maybe_friend_1): Likewise.
	(do_class_using_decl): Likewise.
	* mangle.c (dump_substitution_candidates): Use TYPE_NAME_STRING.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209420 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-15  Teresa Johnson  <tejohnson@google.com>

	* cfg.c (dump_bb_info): Fix flags check.
	* tree-cfg.c (remove_bb): Only dump TDF_BLOCKS when removing.

2014-04-15  Teresa Johnson  <tejohnson@google.com>

	* gcc.dg/tree-prof/update-loopch.c: Update expected output.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209421 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libstdc++/60594
	* include/std/functional (function::_Callable): Exclude own type
	from the callable checks.
	* testsuite/20_util/function/60594.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209422 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-15  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/56965
	* alias.c (ncr_compar, nonoverlapping_component_refs_p): Move ...
	* tree-ssa-alias.c (ncr_compar, nonoverlapping_component_refs_p):
	... here.
	* alias.c (true_dependence_1): Do not call
	nonoverlapping_component_refs_p.
	* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Call
	nonoverlapping_component_refs_p.
	(indirect_refs_may_alias_p): Likewise.

	* gcc.dg/torture/pr56965-1.c: New testcase.
	* gcc.dg/torture/pr56965-2.c: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209423 138bc75d-0d04-0410-961f-82ee72b054a4
Add DW_AT_const_value as unsigned or int depending on type and value used.

As the comment in the code already indicated DWARF2 does provide
DW_FORM_sdata/DW_FORM_udata to represent signed/unsigned data.
Enumeration constants wider than HOST_WIDE_INT are already handled
separately. Those constant values that do fit a HOST_WIDE_INT can
be encoded as signed or unsigned depending on type and value for
more efficient encoding.

	* dwarf2out.c (gen_enumeration_type_die): Add DW_AT_const_value
	as unsigned or int depending on type and value used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209424 138bc75d-0d04-0410-961f-82ee72b054a4
2014-04-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR target/60839
	Revert following patch

	2014-04-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/60735
	* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): If we have
	software floating point or no floating point registers, do not
	allow any type in the FPRs.  Eliminate a test for SPE SIMD types
	in GPRs that occurs after we tested for GPRs that would never be
	true.

	* config/rs6000/rs6000.md (mov<mode>_softfloat32, FMOVE64):
	Rewrite tests to use TARGET_DOUBLE_FLOAT and TARGET_E500_DOUBLE,
	since the FMOVE64 type is DFmode/DDmode.  If TARGET_E500_DOUBLE,
	specifically allow DDmode, since that does not use the SPE SIMD
	instructions.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209425 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
	const to constexpr member functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209427 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
	delegating constructor.
	* include/bits/shared_ptr_base.h
	(__shared_ptr::__shared_ptr(nullptr_t)): Likewise

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209428 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/std/atomic: Uglify parameter names.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209429 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/60786
	* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
	1.cc: Fix invalid explicit instantiations with unqualified names.
	* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
	2.cc: Likweise.
	* testsuite/20_util/tuple/53648.cc: Likweise.
	* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
	Likewise.
	* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	debug_container.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/debug.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/debug.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	debug_container.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/3.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209431 138bc75d-0d04-0410-961f-82ee72b054a4
	* testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
	not use uninitialized members in mem-initializers.
	* testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
	* testsuite/util/testsuite_common_types.h: Update comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209432 138bc75d-0d04-0410-961f-82ee72b054a4
	* include/experimental/string_view: Fix inconsistent exception specs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209433 138bc75d-0d04-0410-961f-82ee72b054a4