2014-05-20  Tim Shen  <timshen91@gmail.com>

	PR libstdc++/61227
	* include/bits/regex_compiler.h
	(_BracketMatcher<>::_M_add_character_class): Add negative character
	class support.
	* include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
	Likewise.
	* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
	Add more testcases.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210630 138bc75d-0d04-0410-961f-82ee72b054a4
	* mode-switching.c (optimize_mode_switching): Fix comment typo.


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

	gcc/
	* config.gcc: Remove need_64bit_hwint.
	* configure.ac: Do not define NEED_64BIT_HOST_WIDE_INT.
	* hwint.h: Do not check NEED_64BIT_HOST_WIDE_INT but assume
	it to be true.
	* config.in: Regenerate.
	* configure: Likewise.

	libcpp/
	* configure.ac: Copy gcc logic of detecting a 64bit type.
	Remove HOST_WIDE_INT define.
	* include/cpplib.h: typedef cpp_num_part to a 64bit type,
	similar to how hwint.h does it.
	* config.in: Regenerate.
	* configure: Likewise.


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

	PR tree-optimization/61221
	* tree-ssa-pre.c (el_to_update): Remove.
	(eliminate_dom_walker::before_dom_children): Handle released
	VDEFs by value-numbering them to the associated VUSE.  Update
	stmt immediately for substituted call address.
	(eliminate): Remove delayed stmt updating code.
	* tree-ssa-sccvn.c (vuse_ssa_val): New function valueizing
	possibly late re-numbered vuses.
	(vn_reference_lookup_2): Adjust.
	(vn_reference_lookup_pieces): Likewise.
	(vn_reference_lookup): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210633 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-20  Sebastian Huber  <sebastian.huber@embedded-brains.de>

libffi/
	* testsuite/lib/libffi.exp (load_gcc_lib): Register loaded libs.

libjava/
	* testsuite/lib/libjava.exp (load_gcc_lib): Register loaded libs.

libstdc++-v3/
	* testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210634 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/msp430/msp430.md (zero_extendpsisi2): Use + constraint on
	operand 0 in order to prevent confusion about the number of
	registers involved.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210636 138bc75d-0d04-0410-961f-82ee72b054a4
contrib/
	* dg-extract-results.py (parse_run): Handle warnings that are printed
	before a test harness is run.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210637 138bc75d-0d04-0410-961f-82ee72b054a4
[ARM] Adjust arith_shiftsi for -mrestrict-it.
	* config/arm/arm.md (arith_shiftsi): Do not predicate for
	arm_restrict_it.


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

	PR c++/58664
	* typeck2.c (cxx_incomplete_type_inform): New.
	(cxx_incomplete_type_diagnostic): Use it.
	* decl.c (grokdeclarator): Check the element type of an
	incomplete array type; call the above.
	* cp-tree.h (cxx_incomplete_type_inform): Declare.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58664
	* g++.dg/cpp0x/nsdmi-union6.C: New.
	* g++.dg/parse/pr58664.C: Likewise.
	* g++.dg/cpp0x/nsdmi6.C: Tweak.
	* g++.dg/parse/crash31.C: Likewise.
	* g++.dg/template/error2.C: Likewise.
	* g++.dg/template/inherit8.C: Likewise.
	* g++.dg/template/offsetof2.C: Likewise.


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

	* tree-ssa-sccvn.c (process_scc): Dump SCC here, when
	iterating,
	(extract_and_process_scc_for_name): not here.
	(cond_dom_walker::before_dom_children): Only process
	stmts that end the BB in interesting ways.
	(run_scc_vn): Mark param uses as visited.


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

2014-05-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* simplify-rtx.c (simplify_binary_operation_1): Optimize case of
	nested VEC_SELECTs that are inverses of each other.

[gcc/testsuite]

2014-05-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.target/powerpc/vsxcopy.c: New test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210644 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/
	PR bootstrap/61210
	* pt.c (tsubst_copy, tsubst_omp_for_iterator, tsubst_expr)
	(tsubst_copy_and_build): Perform recursive substitutions in a
	deterministic order.


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

	PR c++/60373
	* decl.c (duplicate_decls): Replace pair of warning_at with
	warning_at + inform.
	(maybe_commonize_var): Likewise.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60373
	* g++.dg/cpp0x/Wattributes1.C: New.
	* g++.dg/ext/visibility/redecl1.C: Adjust.
	* g++.dg/ext/visibility/visibility-7.C: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210646 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/msp430/msp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
	(msp430_gimplify_va_arg_expr): New function.
	(msp430_print_operand): Handle (CONST (ZERO_EXTRACT)).


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210648 138bc75d-0d04-0410-961f-82ee72b054a4
	* tree-ssa-dom.c (hashable_expr_equal_p) <EXPR_CALL>: Also compare the
	EH region of calls to pure functions that can throw an exception.
	* tree-ssa-sccvn.c (vn_reference_eq): Remove duplicated test.
	(copy_reference_ops_from_call): Also copy the EH region of the call if
	it can throw an exception.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210649 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-20  Alexey Merzlyakov  <alexey.merzlyakov@samsung.com>

	PR libstdc++/61223
	Revert:
	2014-05-16  Alexey Merzlyakov  <alexey.merzlyakov@samsung.com>

	PR libstdc++/60758
	* libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
	and add unwind directives.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210650 138bc75d-0d04-0410-961f-82ee72b054a4
	* typeck.c (get_member_function_from_ptrfunc): Don't try to look
	up a virtual function in a dummy object.

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

	PR c++/58753
	PR c++/58930
	PR c++/58704
	* typeck2.c (digest_nsdmi_init): New.
	* parser.c (cp_parser_late_parse_one_default_arg): Use it.
	* init.c (get_nsdmi): Likewise.
	* cp-tree.h (digest_nsdmi_init): Declare.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58753
	PR c++/58930
	PR c++/58704
	* g++.dg/cpp0x/nsdmi-template11.C: New.
	* g++.dg/cpp0x/nsdmi-template12.C: Likewise.
	* g++.dg/cpp0x/nsdmi-template13.C: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210653 138bc75d-0d04-0410-961f-82ee72b054a4
	* tree.h (DECL_ONE_ONLY): Return true only for externally visible
	symbols.
	* except.c (switch_to_exception_section, resolve_unique_section,
	get_named_text_section, default_function_rodata_section, 
	align_variable, get_block_for_decl, default_section_type_flags):
	Use DECL_COMDAT_GROUP instead of DECL_ONE_ONLY.
	* symtab.c (symtab_add_to_same_comdat_group,
	symtab_make_decl_local, fixup_same_cpp_alias_visibility,
	symtab_nonoverwritable_alias, symtab_get_symbol_partitioning_class):
	Likewise.
	* cgraphclones.c (cgraph_create_virtual_clone): Likewise.
	* bb-reorder.c (pass_partition_blocks::gate): Likewise.
	* config/c6x/c6x.c (c6x_elf_unique_section): Likewise.
	(c6x_function_in_section_p): Likewise.
	* config/darwin.c (machopic_select_section): Likewise.
	* config/arm/arm.c (arm_function_in_section_p): Likewise.
	* config/mips/mips.c (mips_function_rodata_section): Likewise.
	* config/mep/mep.c (mep_select_section): LIkewise.
	* config/i386/i386.c (x86_64_elf_unique_section): Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210654 138bc75d-0d04-0410-961f-82ee72b054a4
* config/msp430/msp430.md (split): Don't allow subregs when
splitting SImode adds.
(andneghi): Fix subtraction logic.
* config/msp430/predicates.md (msp430_nonsubreg_or_imm_operand): New.


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