Commit Graph

126575 Commits

Author SHA1 Message Date
Francois-Xavier Coudert
74bc175e84 re PR libfortran/51828 (libgfortran build warnings)
PR libfortran/51828
	* intrinsics/unpack_generic.c (unpack_internal): Let the compiler
	know that dim > 0 to avoid warnings.

From-SVN: r204940
2013-11-18 09:27:11 +00:00
Ganesh Gopalasubramanian
ed97ad4709 AMD bdver4 enablement
From-SVN: r204939
2013-11-18 09:25:21 +00:00
Yury Gribov
2621c86043 re PR sanitizer/59106 (Failure to link against static libasan)
libsanitizer:
2013-11-18  Yury Gribov  <y.gribov@samsung.com>

	PR sanitizer/59106
	* asan/Makefile.am (AM_CXXFLAGS): Add -fno-rtti.
	* interception/Makefile.am (AM_CXXFLAGS): Likewise.
	* lsan/Makefile.am (AM_CXXFLAGS): Likewise.
	* sanitizer_common/Makefile.am (AM_CXXFLAGS): Likewise.
	* tsan/Makefile.am (AM_CXXFLAGS): Likewise.
	* asan/Makefile.in: Regenerate.
	* interception/Makefile.in: Regenerate.
	* tsan/Makefile.in: Regenerate.
	* lsan/Makefile.in: Regenerate.
	* sanitizer_common/Makefile.in: Regenerate.

gcc/testsuite:
2013-11-18  Yury Gribov  <y.gribov@samsung.com>

	PR sanitizer/59106
	* c-c++-common/asan/pr59106.c: New test.

From-SVN: r204934
2013-11-18 08:03:16 +00:00
GCC Administrator
c22f232527 Daily bump.
From-SVN: r204932
2013-11-18 00:16:55 +00:00
Jan Hubicka
1f4d71b64f Fix typo in previous commit.
From-SVN: r204929
2013-11-18 00:04:13 +00:00
Ulrich Weigand
8c453d2596 rs6000.c (rs6000_emit_move): Use low word of sdmode_stack_slot also in little-endian mode.
* config/rs6000/rs6000.c (rs6000_emit_move): Use low word of
	sdmode_stack_slot also in little-endian mode.

From-SVN: r204927
2013-11-17 23:37:20 +00:00
Jan Hubicka
3918b10802 md.texi (setmem, movstr): Update documentation.
* doc/md.texi (setmem, movstr): Update documentation.
	* builtins.c (determine_block_size): New function.
	(expand_builtin_memcpy): Use it and pass it to
	emit_block_move_hints.
	(expand_builtin_memset_args): Use it and pass it to
	set_storage_via_setmem.
	* expr.c (emit_block_move_via_movmem): Add min_size/max_size parameters;
	update call to expander.
	(emit_block_move_hints): Add min_size/max_size parameters.
	(clear_storage_hints): Likewise.
	(set_storage_via_setmem): Likewise.
	(clear_storage): Update.
	* expr.h (emit_block_move_hints, clear_storage_hints,
	set_storage_via_setmem): Update prototype.
	* i386.c (ix86_expand_set_or_movmem): Add bounds; export.
	(ix86_expand_movmem, ix86_expand_setmem): Remove.
	(ix86_expand_movmem, ix86_expand_setmem): Remove.
	* i386.md (movmem, setmem): Pass parameters.
	
	* gcc.target/i386/memcpy-2.c: New testcase.

From-SVN: r204926
2013-11-17 23:32:12 +00:00
Uros Bizjak
2048a05706 re PR target/59153 (ICE: in memory_address_length, at config/i386/i386.c:24617 with -O -flive-range-shrinkage -mdispatch-scheduler -march=bdver1)
PR target/59153
	* config/i386/i386.c (ix86_address_subreg_operand): Do not
	reject non-integer subregs.
	(ix86_decompose_address): Do not reject invalid CONST_INT RTXes.
	Move check for invalid x32 constant addresses ...
	(ix86_legitimate_address_p): ... here.

testsuite/ChangeLog:

	PR target/59153
	* gcc.target/i386/pr59153.c: New test.

From-SVN: r204925
2013-11-18 00:10:10 +01:00
Paolo Carlini
cce9196f4d re PR c++/59123 ([c++11] can't forward-declare an object later defined constexpr)
/cp
2013-11-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59123
	* decl.c (validate_constexpr_redeclaration): Redeclarations of
	variables can differ in constexpr.

/testsuite
2013-11-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59123
	* g++.dg/cpp0x/constexpr-redeclaration1.C: New.
	* g++.dg/cpp0x/constexpr-decl.C: Adjust.

From-SVN: r204923
2013-11-17 19:22:43 +00:00
Bill Schmidt
a788747592 rs6000.c (rs6000_frame_related): Add split_reg parameter and use it in REG_FRAME_RELATED_EXPR note.
2011-11-17  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (rs6000_frame_related): Add split_reg
	parameter and use it in REG_FRAME_RELATED_EXPR note.
	(emit_frame_save): Call rs6000_frame_related with extra NULL_RTX
	parameter.
	(rs6000_emit_prologue): Likewise, but for little endian VSX
	stores, pass the source register of the store instead.

From-SVN: r204920
2013-11-17 16:36:51 +00:00
Andrew MacLeod
1fe37220af gimple.h: Reorder prototypes to match .c declaration order...
* gimple.h: Reorder prototypes to match .c declaration order, and remove
	protyotypes for functions not in gimple.c.
	(LABEL): Move to tree-into-ssa.c.
	* gimple.c: Remove unused prototypes.
	(get_base_address): Move to tree.c.
	* tree.c (get_base_address): Relocate from gimple.c.
	* builtins.h (validate_gimple_arglist): Add prototype.
	* trans-mem.h (compute_transaction_bits, is_tm_ending): Add prototype.
	* cfgexpand.h: New File.
	(gimple_assign_rhs_to_tree, estimated_stack_frame_size): Add protoype.
	* tree.h (build_addr): Move to tree-nested.h.
	* tree-nested.h: New File.
	(build_addr, lower_nested_functions, insert_field_into_struct): Add
	prototypes.
	* tree-inline.h (estimated_stack_frame_size): Remove prototype.
	* ipa-inline-analysis.c: Include cfgexpand.h.
	* cgraphunit.c: Include tree-nested.h.
	* omp-low.c: Likewise.
	* tree-parloops.c: Likewise.
	* gimple-low.h: Likewise.
	* tree-profile.h: Likewise.
	* expr.c: Include cfgexpand.h.
	* tree-affine.c: Likewise.
	* tree-ssa.c: Likewise.
	* tree-ssa-loop-im.c: Include trans-mem.h.
	* tree-ssa-tail-merge.c: Likewise.
	* value-prof.c: Include builtins.h and tree-nested.h.
	* tree-into-ssa.c (LABEL): Define here.

	* fortran/trans-intrinsic.c: Include tree-nested.h.

From-SVN: r204919
2013-11-17 16:14:46 +00:00
Alan Modra
fd4da58cd8 ppc_closure.S: Don't bl .Luint128.
* src/powerpc/ppc_closure.S: Don't bl .Luint128.

From-SVN: r204918
2013-11-18 01:14:03 +10:30
Alan Modra
3521ba8b2e PowerPC64 ELFv2 support
PowerPC64 ELFv2 support
	* src/powerpc/ffitarget.h: Import from upstream.
	* src/powerpc/ffi.c: Likewise.
	* src/powerpc/linux64.S: Likewise.
	* src/powerpc/linux64_closure.S: Likewise.
	* doc/libffi.texi: Likewise.
	* testsuite/libffi.call/cls_double_va.c: Likewise.
	* testsuite/libffi.call/cls_longdouble_va.c: Likewise.

From-SVN: r204917
2013-11-18 01:05:08 +10:30
Edward Smith-Rowland
abe6cd5d35 I forgot the ChangeLog and a comment fix for my last checkin.
From-SVN: r204912
2013-11-17 01:58:29 +00:00
GCC Administrator
d6c2c9b80e Daily bump.
From-SVN: r204911
2013-11-17 00:16:46 +00:00
François Dumont
6c21c6d0f5 55043.cc (equal): Add missing & on rhs parameter.
2013-11-16  François Dumont  <fdumont@gcc.gnu.org>

	* testsuite/23_containers/unordered_set/55043.cc (equal): Add
	missing & on rhs parameter.

From-SVN: r204906
2013-11-16 20:17:50 +00:00
Ian Lance Taylor
25e6253e21 backtrace.h (backtrace_create_state): Correct comment about threading.
* backtrace.h (backtrace_create_state): Correct comment about
	threading.

From-SVN: r204905
2013-11-16 18:27:17 +00:00
Ian Lance Taylor
cfa658e4f8 backtrace.h (backtrace_syminfo): Update comment and parameter name to take any address, not just a PC value.
* backtrace.h (backtrace_syminfo): Update comment and parameter
	name to take any address, not just a PC value.
	* elf.c (STT_OBJECT): Define.
	(elf_nosyms): Rename parameter pc to addr.
	(elf_symbol_search): Rename local variable pc to addr.
	(elf_initialize_syminfo): Add STT_OBJECT symbols to elf_symbols.
	(elf_syminfo): Rename parameter pc to addr.
	* btest.c (global): New global variable.
	(test5): New test.
	(main): Call test5.

From-SVN: r204904
2013-11-16 18:20:33 +00:00
Edward Smith-Rowland
b032ec0d50 Changed reference to Ch21 Strings in comments in experimental/string_view*.
Forgot this in the main patch.  Sorry.

From-SVN: r204903
2013-11-16 18:03:40 +00:00
Edward Smith-Rowland
77cba5af77 Implement N3762 string_view: a non-owning reference to a string.
2013-11-16  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement N3762 string_view: a non-owning reference to a string.
	* include/Makefile.am: Add string_view and string_view.tcc.
	* include/Makefile.in: Regenerate.
	* include/experimental/string_view: Implement basic_string_view.
	* include/experimental/string_view.tcc: Implement basic_string_view.
	* testsuite/experimental/string_view/capacity/1.cc: New.
	* testsuite/experimental/string_view/cons/char/1.cc: New.
	* testsuite/experimental/string_view/cons/char/2.cc: New.
	* testsuite/experimental/string_view/cons/char/3.cc: New.
	* testsuite/experimental/string_view/cons/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/cons/wchar_t/2.cc: New.
	* testsuite/experimental/string_view/cons/wchar_t/3.cc: New.
	* testsuite/experimental/string_view/element_access/char/1.cc: New.
	* testsuite/experimental/string_view/element_access/char/2.cc: New.
	* testsuite/experimental/string_view/element_access/char/empty.cc: New.
	* testsuite/experimental/string_view/element_access/char/front_back.cc:
	New.
	* testsuite/experimental/string_view/element_access/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/element_access/wchar_t/2.cc: New.
	* testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
	New.
	* testsuite/experimental/string_view/element_access/wchar_t/
	front_back.cc: New.
	* testsuite/experimental/string_view/include.cc: New.
	* testsuite/experimental/string_view/inserters/char/1.cc: New.
	* testsuite/experimental/string_view/inserters/char/2.cc: New.
	* testsuite/experimental/string_view/inserters/char/3.cc: New.
	* testsuite/experimental/string_view/inserters/pod/10081-out.cc: New.
	* testsuite/experimental/string_view/inserters/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/inserters/wchar_t/2.cc: New.
	* testsuite/experimental/string_view/inserters/wchar_t/3.cc: New.
	* testsuite/experimental/string_view/literals/types.cc: New.
	* testsuite/experimental/string_view/literals/values.cc: New.
	* testsuite/experimental/string_view/modifiers/remove_prefix/char/1.cc:
	New.
	* testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
	1.cc: New.
	* testsuite/experimental/string_view/modifiers/remove_suffix/char/1.cc:
	New.
	* testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
	1.cc: New.
	* testsuite/experimental/string_view/operations/compare/char/1.cc: New.
	* testsuite/experimental/string_view/operations/compare/char/13650.cc:
	New.
	* testsuite/experimental/string_view/operations/compare/wchar_t/1.cc:
	New.
	* testsuite/experimental/string_view/operations/compare/wchar_t/
	13650.cc: New.
	* testsuite/experimental/string_view/operations/data/char/1.cc: New.
	* testsuite/experimental/string_view/operations/data/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/operations/find/char/1.cc: New.
	* testsuite/experimental/string_view/operations/find/char/2.cc: New.
	* testsuite/experimental/string_view/operations/find/char/3.cc: New.
	* testsuite/experimental/string_view/operations/find/char/4.cc: New.
	* testsuite/experimental/string_view/operations/find/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/operations/find/wchar_t/2.cc: New.
	* testsuite/experimental/string_view/operations/find/wchar_t/3.cc: New.
	* testsuite/experimental/string_view/operations/find/wchar_t/4.cc: New.
	* testsuite/experimental/string_view/operations/rfind/char/1.cc: New.
	* testsuite/experimental/string_view/operations/rfind/char/2.cc: New.
	* testsuite/experimental/string_view/operations/rfind/char/3.cc: New.
	* testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc: New.
	* testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc: New.
	* testsuite/experimental/string_view/operations/substr/char/1.cc: New.
	* testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
	New.
	* testsuite/experimental/string_view/operators/char/2.cc: New.
	* testsuite/experimental/string_view/operators/wchar_t/2.cc: New.
	* testsuite/experimental/string_view/range_access/char/1.cc: New.
	* testsuite/experimental/string_view/range_access/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/experimental/string_view/requirements/
	explicit_instantiation/char/1.cc: New.
	* testsuite/experimental/string_view/requirements/
	explicit_instantiation/char16_t/1.cc: New.
	* testsuite/experimental/string_view/requirements/
	explicit_instantiation/char32_t/1.cc: New.
	* testsuite/experimental/string_view/requirements/
	explicit_instantiation/wchar_t/1.cc: New.
	* testsuite/experimental/string_view/requirements/typedefs.cc: New.
	* testsuite/experimental/string_view/types/1.cc: New.

From-SVN: r204902
2013-11-16 17:44:48 +00:00
Joern Rennecke
0bc69b8172 arc.c (arc_predicate_delay_insns): New function.
* config/arc/arc.c (arc_predicate_delay_insns): New function.
        (pass_data_arc_predicate_delay_insns): New pass_data instance.
        (pass_arc_predicate_delay_insns): New subclass of rtl_opt_class.
        (make_pass_arc_predicate_delay_insns): New function.
        (arc_init): Register pass_arc_predicate_delay_insns if
        flag_delayed_branch is active.

From-SVN: r204901
2013-11-16 11:53:21 +00:00
Joern Rennecke
036def0f23 * config/arc/constraints.md (Rcq): Simplify register number test.
From-SVN: r204900
2013-11-16 11:49:10 +00:00
Paolo Carlini
53677b17cb re PR c++/29143 (address-of overloaded function does not work in function call)
/cp
2013-11-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/29143
	* semantics.c (finish_call_expr): Ensure that for OVERLOADs too
	'(&f)(...)' is the same as '(f)(...)', per 13.3.1.1.

/testsuite
2013-11-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/29143
	* g++.dg/overload/addr2.C: New.
	* g++.old-deja/g++.other/overload11.C: Adjust.

From-SVN: r204899
2013-11-16 09:54:42 +00:00
Paolo Carlini
5edc02ac22 re PR c++/29143 (address-of overloaded function does not work in function call)
/cp
2013-11-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/29143
	* semantics.c (finish_call_expr): Ensure that for OVERLOADs too
	'(&f)(...)' is the same as '(f)(...)', per 13.3.1.1.

/testsuite
2013-11-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/29143
	* g++.dg/overload/addr2.C: New.
	* g++.old-deja/g++.other/overload11.C: Adjust.

From-SVN: r204898
2013-11-16 09:54:23 +00:00
Aldy Hernandez
3a81b570d2 * gimple.h (enum gf_mask): Change the ordering of GF_OMP_* bits.
From-SVN: r204894
2013-11-16 01:19:27 +00:00
David Edelsohn
c4d1d6be22 * MAINTAINERS (Global Reviewers, c++): Remove Mark Mitchell.
From-SVN: r204893
2013-11-15 20:16:51 -05:00
GCC Administrator
aadac3ac31 Daily bump.
From-SVN: r204891
2013-11-16 00:16:43 +00:00
Mike Stump
192b1caf32 Fix typo.
From-SVN: r204888
2013-11-16 00:16:13 +00:00
Mike Stump
b7ce44d17e gcc.exp (gcc_target_compile): Add support for random runtime
* lib/gcc.exp (gcc_target_compile): Add support for random runtime
	* lib/g++.exp (g++_target_compile): Likewise.
	libraries.
	* gcc.dg/cilk-plus/cilk-plus.exp: Improve support for runtime
	libraries.  Remove debugging.
	* g++.dg/cilk-plus/cilk-plus.exp: Add support to find runtime
	libraries.  Remove -O0, redundant with default.

From-SVN: r204887
2013-11-16 00:09:34 +00:00
Joseph Myers
d3f4ff8b51 ucnid-2011-1.c: New test.
gcc/testsuite:
	* c-c++-common/cpp/ucnid-2011-1.c: New test.

libcpp:
	* ucnid.tab: Add C11 and C11NOSTART data.
	* makeucnid.c (digit): Rename enum value to N99.
	(C11, N11, all_languages): New enum values.
	(NUM_CODE_POINTS, MAX_CODE_POINT): New macros.
	(flags, decomp, combining_value): Use NUM_CODE_POINTS as array
	size.
	(decomp): Use unsigned int as element type.
	(all_decomp): New array.
	(read_ucnid): Handle C11 and C11NOSTART.  Use MAX_CODE_POINT.
	(read_table): Use MAX_CODE_POINT.  Store all decompositions in
	all_decomp.
	(read_derived): Use MAX_CODE_POINT.
	(write_table): Use NUM_CODE_POINTS.  Print N99, C11 and N11
	flags.  Print whole array variable declaration rather than just
	array contents.
	(char_id_valid, write_context_switch): New functions.
	(main): Call write_context_switch.
	* ucnid.h: Regenerate.
	* include/cpplib.h (struct cpp_options): Add c11_identifiers.
	* init.c (struct lang_flags): Add c11_identifiers.
	(cpp_set_lang): Set c11_identifiers option from selected language.
	* internal.h (struct normalize_state): Document "previous" as
	previous starter character.
	(NORMALIZE_STATE_UPDATE_IDNUM): Take character as argument.
	* charset.c (DIG): Rename enum value to N99.
	(C11, N11): New enum values.
	(struct ucnrange): Give name to struct.  Use short for flags and
	unsigned int for end of range.  Include ucnid.h for whole variable
	declaration.
	(ucn_valid_in_identifier): Allow for characters up to 0x10FFFF.
	Allow for C11 in determining valid characters and valid start
	characters.  Use check_nfc for non-Hangul context-dependent
	checks.  Only store starter characters in nst->previous.
	(_cpp_valid_ucn): Pass new argument to
	NORMALIZE_STATE_UPDATE_IDNUM.
	* lex.c (lex_identifier): Pass new argument to
	NORMALIZE_STATE_UPDATE_IDNUM.  Call NORMALIZE_STATE_UPDATE_IDNUM
	after initial non-UCN part of identifier.
	(lex_number): Pass new argument to NORMALIZE_STATE_UPDATE_IDNUM.

From-SVN: r204886
2013-11-16 00:05:08 +00:00
Paolo Carlini
3d053a5f72 re PR c++/58188 (ICE in gimple_add_tmp_var, at gimplify.c:738)
2013-11-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58188
	* g++.dg/cpp0x/nsdmi-template8.C: New.

2013-11-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58725
	* g++.dg/cpp0x/nsdmi-template7.C: New.

2013-11-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58829
	* g++.dg/cpp0x/nsdmi-template6.C: New.

From-SVN: r204881
2013-11-15 23:51:23 +00:00
Paolo Carlini
6019d86d17 re PR c++/58599 ([c++11] Trouble with non-static data member initializers in templates)
2013-11-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58599
	* g++.dg/cpp0x/nsdmi-template5.C: New.

From-SVN: r204866
2013-11-15 23:17:23 +00:00
Kaz Kojima
d7be3fcdae sh.c (barrier_align): Return 0 when barrier_or_label is null.
* config/sh/sh.c (barrier_align): Return 0 when barrier_or_label
	is null.

From-SVN: r204865
2013-11-15 22:01:33 +00:00
Janne Blomqvist
35f48a901d When file status is unknown, don't set O_CREAT when opening read-only.
2013-11-15  Janne Blomqvist  <jb@gcc.gnu.org>
	    Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/59108
	* io/unix.c (regular_file): Don't set O_CREAT when opening a file
	read-only with unknown status. Mask out O_CREAT when falling back
	to opening read-only if ACTION= is not set and read-write fails.

Co-Authored-By: Jerry DeLisle <jvdelisle@gcc.gnu.org>

From-SVN: r204864
2013-11-16 00:00:36 +02:00
Aldy Hernandez
c02065fca1 Makefile.in (C_COMMON_OBJS): Depend on c-cilkplus.o.
* Makefile.in (C_COMMON_OBJS): Depend on c-cilkplus.o.
	* gimple-pretty-print.c (dump_omp_for): Add case for
	GF_OMP_FOR_KIND_CILKSIMD.
	* gimple.h (enum gf_mask): Restructure entries to add
	GF_OMP_FOR_KIND_CILKSIMD.
	* gimplify.c (is_gimple_stmt): Add case for CILK_SIMD.
	(gimplify_omp_for): Handle CILK_SIMD.
	(gimplify_expr): Add ccase for CILK_SIMD.
	* omp-low.c (extract_omp_for_data): Handle CILK_SIMD.
	(build_outer_var_ref): Same.
	(check_omp_nesting_restrictions): Same.
	(lower_rec_input_clauses): Same.
	(lower_lastprivate_clauses): Same.
	(expand_omp_for): Same.
	(execute_expand_omp): Check flag_enable_cilkplus.
	(execute_lower_omp): Same.
	(diagnose_sb_0): Handle CILK_SIMD.
	(diagnose_omp_structured_block_errors): Check
	flag_enable_cilkplus.
	(setjmp_or_longjmp_p): New.
	(scan_omp_1_stmt): Error on setjmp/longjmp in a simd construct.
	* tree-pretty-print.c (dump_generic_node): Add case for CILK_SIMD.
	* tree.def: Add tree code for CILK_SIMD.

testsuite/
	* c-c++-common/cilk-plus/PS: New directory.
	* g++.dg/cilk-plus/cilk-plus.exp: Run shared tests.
	* g++.dg/dg.exp: Run Cilk Plus tests.
	* gcc.dg/cilk-plus/cilk-plus.exp: Run shared tests.

c-family/
	* c-cilkplus.c: New file.
	* c-common.c (readonly_error): Add location argument.
	* c-common.h (readonly_error): Same.
	(c_finish_cilk_clauses): Protoize.
	(c_check_cilk_loop): Same.
	c-omp.c (c_finish_omp_for): Handle CILK_SIMD nodes.
	Do not fail on error_mark_node.
	Abstract increment canonicalization to here...
	(c_omp_for_incr_canonicalize_ptr): New.
	c-pragma.c (init_pragma): Register "simd" pragma.
	c-pragma.h (enum pragma_kind): Add PRAGMA_CILK_SIMD.
	(enum pragma_cilk_clause): New.

c/
	* c-parser.c (c_parser_cilk_simd): New.
	(c_parser_cilk_verify_simd): New.
	(c_parser_pragma): Add case for PRAGMA_CILK_SIMD.
	(c_parser_omp_for_loop): Add case for NE_EXPR.
	Set c_break_label for CILK_SIMD.
	(c_parser_cilk_clause_vectorlength): New.
	(c_parser_cilk_clause_linear): New.
	(c_parser_cilk_clause_name): New.
	(c_parser_cilk_all_clauses): New.
	* c-typeck.c (build_unary_op): Pass location argument to
	readonly_error.
	(build_modify_expr): Same.
	(build_asm_expr): Same.
	(c_finish_bc_stmt): Error on break/continue in loops.

cp/
	* Make-lang.in (CXX_AND_OBJCXX_OBJS): Depend on cp/cp-cilkplus.o.
	* cp-cilkplus.c: New file.
	* cp-tree.h (cpp_validate_cilk_plus_loop): Protoize.
	* parser.c (cp_parser_cilk_simd): New.
	(cp_debug_parser): Add case for IN_CILK_SIMD_FOR.
	(cp_parser_jump_statement): Same.
	(cp_parser_omp_for_cond): Add new argument.
	Add case for NE_EXPR.
	(cp_parser_omp_for_loop): Pass new argument to
	cp_parser_omp_for_cond.
	Handle CILK_SIMD nodes.
	Abstract initilization code to..
	(cp_parser_omp_for_loop_init): ...here.
	(cp_parser_pragma): Add case for PRAGMA_CILK_SIMD.
	(cp_parser_cilk_simd_vectorlength): New.
	(cp_parser_cilk_simd_linear): New.
	(cp_parser_cilk_simd_clause_name): New.
	(cp_parser_cilk_simd_all_clauses): New.
	(cp_parser_cilk_simd): New.
	* parser.h (IN_CILK_SIMD_FOR): New macro.
	* pt.c (tsubst_expr): Add case for CILK_SIMD.
	* typeck2.c (cxx_readonly_error): Pass location argument to
	readonly_error.

From-SVN: r204863
2013-11-15 21:43:59 +00:00
Bill Schmidt
e19eea7164 altivec.md (UNSPEC_VPERM_X, [...]): Remove.
gcc:

2013-11-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/altivec.md (UNSPEC_VPERM_X, UNSPEC_VPERM_UNS_X):
	Remove.
	(altivec_vperm_<mode>): Revert earlier little endian change.
	(*altivec_vperm_<mode>_internal): Remove.
	(altivec_vperm_<mode>_uns): Revert earlier little endian change.
	(*altivec_vperm_<mode>_uns_internal): Remove.
	* config/rs6000/vector.md (vec_realign_load_<mode>): Revise
	commentary.

gcc/testsuite:

2013-11-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.dg/vmx/3b-15.c: Revise for little endian.

From-SVN: r204862
2013-11-15 21:16:32 +00:00
Jeff Law
6efe83b22e basic-block.h (has_abnormal_or_eh_outgoing_edge): Renamed from has_abnormal_or_outgoing_edge.
* basic-block.h (has_abnormal_or_eh_outgoing_edge): Renamed from
	has_abnormal_or_outgoing_edge.  Check for EH edges as well.
	* gimple-ssa-isolate-paths.c
	(find_implicit_erroneous_behaviour): Corresponding changes.
	Do not check stmt_ends_bb_p or GIMPLE_RETURN anymore.
	(find_explicit_erroneous_behaviour): Likewise.

From-SVN: r204861
2013-11-15 14:11:50 -07:00
Jeff Law
f0d3309e9b ifcvt.c (find_cond_trap): Properly handle case where trap_bb == else_bb.
* ifcvt.c (find_cond_trap): Properly handle case where
	trap_bb == else_bb.

From-SVN: r204856
2013-11-15 11:14:10 -07:00
Steve Ellcey
cb83df668c configure.ac: Do not define HAVE_STRTOLD.
2013-11-15  Steve Ellcey  <sellcey@mips.com>

	* configure.ac: Do not define HAVE_STRTOLD.
	* configure: Regenerate.

From-SVN: r204855
2013-11-15 17:50:28 +00:00
Andreas Schwab
66204992cb picflag.m4 (m68k-*-*): Use default PIC flag.
config/
* picflag.m4 (m68k-*-*): Use default PIC flag.

gcc/
* configure: Regenerate.

libada/
* configure: Regenerate.

libgcc/
* configure: Regenerate.

libiberty/
* configure: Regenerate.

From-SVN: r204854
2013-11-15 17:49:36 +00:00
Ian Lance Taylor
7c0f17db44 runtime: Use runtime_m to get m value after call to runtime_mcall.
From-SVN: r204853
2013-11-15 17:20:25 +00:00
James Greenhalgh
78ec303685 [AArch64] Remove simd_type
gcc/
	* config/aarch64/aarch64-simd.md: Remove simd_type from all
	patterns.
	* config/aarch64/aarch64.md: Likewise, correct "type" attribute
	where it is incorrect or missing.

From-SVN: r204852
2013-11-15 17:05:37 +00:00
Jonathan Wakely
3aaaa651a9 stl_bvector.h (vector<bool>::emplace_back()): LWG 2187: Define.
* include/bits/stl_bvector.h (vector<bool>::emplace_back()): LWG 2187:
	Define.
	(vector<bool>::emplace()): Likewise.
	* testsuite/23_containers/vector/bool/emplace.cc: New.

From-SVN: r204851
2013-11-15 16:34:06 +00:00
Ondřej Bílka
64e1ab1168 build_hacking.xml: Fix documentation typos.
2013-11-15  Ondřej Bílka <neleai@seznam.cz>
	    Jonathan Wakely  <jwakely.gcc@gmail.com>

	* doc/xml/manual/build_hacking.xml: Fix documentation typos.
	* doc/xml/manual/configure.xml: Likewise.
	* include/bits/atomic_base.h: Fix typos in comments.
	* include/bits/random.h: Likewise.
	* include/ext/cast.h: Likewise.
	* libsupc++/cxxabi.h: Likewise.
	* testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Likewise.
	* testsuite/tr1/5_numerical_facilities/special_functions/testcase.h:
	Likewise.
	* testsuite/util/exception/safety.h: Likewise.
	* testsuite/util/testsuite_containers.h: Likewise.
	* testsuite/util/testsuite_hooks.cc: Likewise.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>

From-SVN: r204850
2013-11-15 16:33:59 +00:00
Jonathan Wakely
ff90a89e48 stl_map.h (map): Implement C++11 allocator-aware container requirements.
* include/bits/stl_map.h (map): Implement C++11 allocator-aware
	container requirements.
	* include/bits/stl_multimap.h (multimap): Likewise.
	* include/bits/stl_multiset.h (multiset): Likewise.
	* include/bits/stl_set.h (set): Likewise.
	* include/bits/stl_tree.h (_Rb_tree_node): Use __aligned_buffer and
	add accessors for value.
	(_Rb_tree_iterator, _Rb_tree_const_iterator): Use _Rb_tree_node
	accessors.
	(_Rb_tree): Use allocator_traits and implement support for sets and
	maps the be allocator-aware.
	* include/bits/forward_list.h (_Fwd_list_base::_M_create_node): Do
	not zero-initialize storage buffer.
	* include/bits/hashtable_policy.h (_Hashtable_alloc::_M_allocate_node):
	Likewise.
	* include/bits/stl_vector.h (vector(vector&&, const allocator_type&)):
	Add conditional noexcept specification.
	* doc/xml/manual/status_cxx2011.xml: Update status of containers.
	* testsuite/util/testsuite_allocator.h: Re-indent.
	* testsuite/23_containers/forward_list/allocator/copy.cc: Test
	allocator-extended copy constructor.
	* testsuite/23_containers/unordered_map/allocator/copy.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/copy.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/copy.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/allocator/copy.cc: Likewise.
	* testsuite/23_containers/vector/allocator/copy.cc: Likewise.
	* testsuite/23_containers/forward_list/allocator/move.cc: New.
	* testsuite/23_containers/unordered_map/allocator/move.cc: New.
	* testsuite/23_containers/unordered_multimap/allocator/move.cc: New.
	* testsuite/23_containers/unordered_multiset/allocator/move.cc: New.
	* testsuite/23_containers/unordered_set/allocator/move.cc: New.
	* testsuite/23_containers/vector/allocator/move.cc: New.
	* testsuite/23_containers/map/allocator/copy.cc: New.
	* testsuite/23_containers/map/allocator/copy_assign.cc: New.
	* testsuite/23_containers/map/allocator/minimal.cc: New.
	* testsuite/23_containers/map/allocator/move.cc: New.
	* testsuite/23_containers/map/allocator/move_assign.cc: New.
	* testsuite/23_containers/map/allocator/noexcept.cc: New.
	* testsuite/23_containers/map/allocator/swap.cc: New.
	* testsuite/23_containers/multimap/allocator/copy.cc: New.
	* testsuite/23_containers/multimap/allocator/copy_assign.cc: New.
	* testsuite/23_containers/multimap/allocator/minimal.cc: New.
	* testsuite/23_containers/multimap/allocator/move.cc: New.
	* testsuite/23_containers/multimap/allocator/move_assign.cc: New.
	* testsuite/23_containers/multimap/allocator/noexcept.cc: New.
	* testsuite/23_containers/multimap/allocator/swap.cc: New.
	* testsuite/23_containers/multiset/allocator/copy.cc: New.
	* testsuite/23_containers/multiset/allocator/copy_assign.cc: New.
	* testsuite/23_containers/multiset/allocator/minimal.cc: New.
	* testsuite/23_containers/multiset/allocator/move.cc: New.
	* testsuite/23_containers/multiset/allocator/move_assign.cc: New.
	* testsuite/23_containers/multiset/allocator/noexcept.cc: New.
	* testsuite/23_containers/multiset/allocator/swap.cc: New.
	* testsuite/23_containers/set/allocator/copy.cc: New.
	* testsuite/23_containers/set/allocator/copy_assign.cc: New.
	* testsuite/23_containers/set/allocator/minimal.cc: New.
	* testsuite/23_containers/set/allocator/move.cc: New.
	* testsuite/23_containers/set/allocator/move_assign.cc: New.
	* testsuite/23_containers/set/allocator/noexcept.cc: New.
	* testsuite/23_containers/set/allocator/swap.cc: New.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* 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/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r204848
2013-11-15 15:34:14 +00:00
Richard Sandiford
9cc65f15c4 c-pretty-print.c (pp_c_character_constant): Remove unnecessary wchar_type and host_integerp checks.
gcc/c-family/
	* c-pretty-print.c (pp_c_character_constant): Remove unnecessary
	wchar_type and host_integerp checks.

From-SVN: r204847
2013-11-15 14:52:36 +00:00
Richard Sandiford
6b58915bc3 dwarf2out.c (gen_enumeration_type_die): Remove unnecessary host_integerp test.
gcc/
	* dwarf2out.c (gen_enumeration_type_die): Remove unnecessary
	host_integerp test.
	* tree-vect-patterns.c (vect_recog_divmod_pattern): Likewise.
	Use TREE_INT_CST_LOW rather than tree_low_cst when reading the
	constant.
	* fold-const.c (fold_binary_loc): Replace a host_integerp/tree_low_cst
	pair with a TREE_CODE test and TREE_INT_CST_LOW.
	* tree-vect-generic.c (expand_vector_divmod): Likewise.

From-SVN: r204846
2013-11-15 14:52:23 +00:00
Richard Biener
11924f8b48 re PR middle-end/50262 (PTA doesn't disambiguate locally allocated heap objects from pointed to by arguments)
2013-11-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/50262
	* tree-ssa-alias.h (struct pt_solution): Split
	vars_contains_global into vars_contains_nonlocal,
	vars_contains_escaped and vars_contains_escaped_heap.
	* tree-ssa-structalias.c (label_visit): Expand comment.
	(handle_lhs_call): Adjust comment.
	(set_uids_in_ptset): Set the new flags appropriately.
	(pt_solution_set): Adjust.
	(pt_solution_set_var): Likewise.
	(pt_solution_ior_into): Likewise.
	(pt_solution_includes_global): Likewise.
	(pt_solutions_intersect_1): Optimize escaped handling.
	(compute_points_to_sets): Remove heap variable globalization.
	(ipa_escaped_pt): Adjust initializer.
	(pass_data_ipa_pta): Do not run TODO_update_ssa.
	* gimple-pretty-print.c (pp_points_to_solution): Print split
	flags.
	* tree-ssa-alias.c (dump_points_to_solution): Likewise.

	* gcc.dg/tree-ssa/alias-28.c: New testcase.
	* gcc.dg/strlenopt-1.c: Adjust.
	* gcc.dg/strlenopt-1f.c: Likewise.

From-SVN: r204845
2013-11-15 14:48:22 +00:00
Richard Biener
e179190c03 tree-loop-distribution.c (tree_loop_distribution): Make sure to distribute all stores.
2013-11-15  Richard Biener  <rguenther@suse.de>

	* tree-loop-distribution.c (tree_loop_distribution): Make sure
	to distribute all stores.

	* gcc.dg/torture/20131115-1.c: New testcase.

From-SVN: r204843
2013-11-15 14:43:52 +00:00
Ulrich Weigand
335123032e * doc/invoke.texi (-mabi=elfv1, -mabi=elfv2): Document.
From-SVN: r204842
2013-11-15 14:21:39 +00:00