2014-06-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/61499
	* io/list_read.c (eat_spaces): Use a 'for' loop instead of
	'while' loop to skip the loop if there are no bytes left in the
	string. Only seek if actual spaces can be skipped.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212059 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/61499
	gfortran.dg/arrayio_15.f90: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212060 138bc75d-0d04-0410-961f-82ee72b054a4
	* c-c++-common/ubsan/bounds-2.c: Adjust dg-output.
	(fn1): Remove store to out-of-bounds location.  Add memory barrier.
	(fn2): Likewise.
	(fn5): Likewise.
	(fn6): Likewise.
	(fn7): Likewise.
	(fn8): Likewise.
	(fn9): Likewise.
	(fn11): Likewise.
	* c-c++-common/ubsan/bounds-5.c (fn1): Remove store to out-of-bounds
	location.  Add memory barrier.
	(fn2): Likewise.
	(fn3): Likewise.
	(fn4): Likewise.
	(fn5): Likewise.
	* c-c++-common/ubsan/bounds-7.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212061 138bc75d-0d04-0410-961f-82ee72b054a4
	* c-parser.c (c_parser_declaration_or_fndef): Discard all type
	qualifiers in __auto_type for atomic types.
	(c_parser_typeof_specifier): Discard all type qualifiers in
	__typeof__ for atomic types.

	* gcc.dg/typeof-2.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212062 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/57233
	PR tree-optimization/61299
	* tree-vect-generic.c (get_compute_type, count_type_subparts): New
	functions.
	(expand_vector_operations_1): Use them.  If {L,R}ROTATE_EXPR
	would be lowered to scalar shifts, check if corresponding
	shifts and vector BIT_IOR_EXPR are supported and don't lower
	or lower just to narrower vector type in that case.
	* expmed.c (expand_shift_1): Fix up handling of vector
	shifts and rotates.

	* gcc.dg/pr57233.c: New test.
	* gcc.target/i386/pr57233.c: New test.
	* gcc.target/i386/sse2-pr57233.c: New test.
	* gcc.target/i386/avx-pr57233.c: New test.
	* gcc.target/i386/avx2-pr57233.c: New test.
	* gcc.target/i386/avx512f-pr57233.c: New test.
	* gcc.target/i386/xop-pr57233.c: New test.


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

	* parser.c (cp_parser_compound_literal_p): New.
	(cp_parser_postfix_expression, cp_parser_sizeof_operand): Use it.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212064 138bc75d-0d04-0410-961f-82ee72b054a4
Fix for devirtualization dump functions

        * gimple.h (gimple_location_safe): New function introduced.
	* cgraphunit.c (walk_polymorphic_call_targets): Usage
	of gimple_location_safe replaces gimple_location.
	(gimple_fold_call): Likewise.
	* ipa-devirt.c (ipa_devirt): Likewise.
	* ipa-prop.c (ipa_make_edge_direct_to_target): Likewise.
	* ipa.c (walk_polymorphic_call_targets): Likewise.
	* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Likewise.



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

	* tree-ssa-math-opts.c (bswap_replace): Fix
	SLOW_UNALIGNED_ACCESS test to only apply to unaligned object.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212068 138bc75d-0d04-0410-961f-82ee72b054a4
remove broken and redundant diagnostic in i386_pe_section_type_flags

varasm.c is the only caller of this target hook, and it correctly uses a
htab to check if the flags returned by the hook are the same as the
flags it has for the section, and emit a error if not.

gccc/

	* config/i386/winnt.c (i386_pe_section_type_flags): Remove
	redundant diagnostic machinary.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212069 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-27  Martin Jambor  <mjambor@suse.cz>

	PR ipa/61160
	* cgraphclones.c (duplicate_thunk_for_node): Removed parameter
	args_to_skip, use those from node instead.  Copy args_to_skip and
	combined_args_to_skip from node to the new thunk.
	(redirect_edge_duplicating_thunks): Removed parameter args_to_skip.
	(cgraph_create_virtual_clone): Moved computation of
	combined_args_to_skip...
	(cgraph_clone_node): ...here, simplify it to bitmap_ior..

testsuite/
	* g++.dg/ipa/pr61160-2.C: New test.
	* g++.dg/ipa/pr61160-3.C: Likewise.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212071 138bc75d-0d04-0410-961f-82ee72b054a4
Support compressed debug sections

	* configure.ac (gcc_cv_as_compress_debug): Check for assembler
	compressed debug support.
	(gcc_cv_ld_compress_debug): Check for linker compressed debug
	support.
	* configure: Regenerate.
	* config.in: Regenerate.
	* common.opt (compressed_debug_sections): New enum.
	(gz, gz=): New options.
	* gcc.c (LINK_COMPRESS_DEBUG_SPEC, ASM_COMPRESS_DEBUG_SPEC):
	Define.
	(LINK_COMMAND_SPEC): Invoke LINK_COMPRESS_DEBUG_SPEC.
	(asm_options): Invoke ASM_COMPRESS_DEBUG_SPEC.
	* config/darwin.h (LINK_COMMAND_SPEC_A): Invoke
	LINK_COMPRESS_DEBUG_SPEC.
	* config/i386/djgpp.h (LINK_COMMAND_SPEC): Likewise.
	* opts.c (common_handle_option): Handle OPT_gz, OPT_gz_.
	* doc/invoke.texi (Option Summary, Debugging Options): Add
	-gz[=type].
	(Debugging Options): Document -gz[=type].

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

	PR c++/61614
	* semantics.c (finish_compound_literal): Revert r204228.

/testsuite
2014-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/61614
	* g++.dg/ext/complit14.C: New.


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

	* gfortran.dg/nint_2.f90: Don't XFAIL for powerpc64le-*-linux*.



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

	* Revert r212046 and r212054.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212085 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/61433
	* error.c (dump_template_bindings): Don't tsubst in a clone.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212096 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp:
	DR 1579
	PR c++/58051
	* typeck.c (check_return_expr): Lookup as an rvalue even when the
	types aren't the same.

gcc/testsuite:
	* g++.dg/cpp0x/elision_conv.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212099 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-28  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>

	* config/rs6000/rs6000.c (rs6000_aggregate_candidate): Revert
	accidental change due to wide-int branch merge.


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

gcc/fortran/
	* gfortran.h (gfc_simplify_ieee_selected_real_kind): New prototype.
	* libgfortran.h (GFC_FPE_*): Use simple integer values, valid in
	both C and Fortran.
	* expr.c (gfc_check_init_expr): Simplify IEEE_SELECTED_REAL_KIND.
	* simplify.c (gfc_simplify_ieee_selected_real_kind): New function.
	* module.c (mio_symbol): Keep track of symbols which came from
	intrinsic modules.
	(gfc_use_module): Keep track of the IEEE modules.
	* trans-decl.c (gfc_get_symbol_decl): Adjust code since
	we have new intrinsic modules.
	(gfc_build_builtin_function_decls): Build decls for
	ieee_procedure_entry and ieee_procedure_exit.
	(is_from_ieee_module, is_ieee_module_used, save_fp_state,
	restore_fp_state): New functions.
	(gfc_generate_function_code): Save and restore floating-point
	state on procedure entry/exit, when IEEE modules are used.
	* intrinsic.texi: Document the IEEE modules.

libgfortran/
	* configure.host: Add checks for IEEE support, rework priorities.
	* configure.ac: Define IEEE_SUPPORT, check for fpsetsticky and
	fpresetsticky.
	* configure: Regenerate.
	* Makefile.am: Build new ieee files, install IEEE_* modules.
	* Makefile.in: Regenerate.
	* gfortran.map (GFORTRAN_1.6): Add new symbols.
	* libgfortran.h (get_fpu_trap_exceptions, set_fpu_trap_exceptions,
	support_fpu_trap, set_fpu_except_flags, support_fpu_flag,
	support_fpu_rounding_mode, get_fpu_state, set_fpu_state): New
	prototypes.
	* config/fpu-*.h (get_fpu_trap_exceptions,
	set_fpu_trap_exceptions, support_fpu_trap, set_fpu_except_flags,
	support_fpu_flag, support_fpu_rounding_mode, get_fpu_state,
	set_fpu_state): New functions.
	* ieee/ieee_features.F90: New file.
	* ieee/ieee_exceptions.F90: New file.
	* ieee/ieee_arithmetic.F90: New file.
	* ieee/ieee_helper.c: New file.

gcc/testsuite/
	* lib/target-supports.exp (check_effective_target_fortran_ieee): 
	New function.
	* gfortran.dg/ieee/ieee.exp: New file.
	* gfortran.dg/ieee/ieee_1.F90: New file.
	* gfortran.dg/ieee/ieee_2.f90: New file.
	* gfortran.dg/ieee/ieee_3.f90: New file.
	* gfortran.dg/ieee/ieee_4.f90: New file.
	* gfortran.dg/ieee/ieee_5.f90: New file.
	* gfortran.dg/ieee/ieee_6.f90: New file.
	* gfortran.dg/ieee/ieee_7.f90: New file.
	* gfortran.dg/ieee/ieee_rounding_1.f90: New file.



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

	Revert:
	2014-06-18  Paolo Carlini  <paolo.carlini@oracle.com>
	    	    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	PR libstdc++/61536
	* config/abi/pre/gnu.ver: Adjust for out of line comparisons.

	2014-06-08  Paolo Carlini  <paolo.carlini@oracle.com>

	* config/abi/pre/gnu.ver: Tighten some patterns; tidy.


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