123949 Commits

Author SHA1 Message Date
Uros Bizjak
22fc7d3d46 * ChangeLog: Fix whitespace.
From-SVN: r200189
2013-06-19 08:52:56 +02:00
Andreas Krebbel
b04e4b081b revert: re PR bootstrap/57609 (S/390 ESA mode bootstrap failure since r197266)
2013-06-19  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	Revert:
	2013-06-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
	
	PR target/57609
	* config/s390/s390.c (s390_chunkify_start): Replace next_real_insn
	with next_active_insn.

From-SVN: r200188
2013-06-19 06:40:05 +00:00
Uros Bizjak
e8e694715e fpu-387.h: Use __asm__ and __volatile__ consistently.
* config/fpu-387.h: Use __asm__ and __volatile__ consistently.
	(get_fpu_except_flags): Initialize result.

From-SVN: r200187
2013-06-19 08:38:16 +02:00
GCC Administrator
2fceae711a Daily bump.
From-SVN: r200185
2013-06-19 00:16:31 +00:00
Ian Lance Taylor
fdbc38a6e8 compiler, runtime: Use function descriptors.
This changes the representation of a Go value of function type
from being a pointer to function code (like a C function
pointer) to being a pointer to a struct.  The first field of
the struct points to the function code.  The remaining fields,
if any, are the addresses of variables referenced in enclosing
functions.  For each call to a function, the address of the
function descriptor is passed as the last argument.

This lets us avoid generating trampolines, and removes the use
of writable/executable sections of the heap.

From-SVN: r200181
2013-06-18 23:49:49 +00:00
Jonathan Wakely
25e00ab674 re PR libstdc++/57641 (std::timed_mutex.try_lock_until() is broken)
PR libstdc++/57641
	* include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
	functionality to new __timed_mutex_impl mixin. Overload try_lock_until
	to handle conversion between different clocks. Replace constrained
	__try_lock_for_impl overloads with conditional increment.
	* include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
	* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.

From-SVN: r200180
2013-06-18 23:55:02 +01:00
Sriraman Tallam
bef8491a65 Emit errors when always_inline functions cannot be inlined in -O0 mode.
* tree-inline.c (expand_call_inline): Allow the error to be flagged
	in early inline pass.
	* ipa-inline.c (inline_always_inline_functions): Pretend always_inline
	functions are inlined during failures to flag an error.
	* gcc.target/i386/inline_error.c: New test.
	* gcc.c-torture/compile/pr44043.c: Fix test to expect an error.
	* gcc.c-torture/compile/pr43791.c: Fix test to expect an error.

From-SVN: r200179
2013-06-18 22:45:03 +00:00
Paolo Carlini
3dd55b2f9f re PR c++/53211 (range-based 'for' expression of type 'const int []' has incomplete type)
/cp
2013-06-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/53211
	* pt.c (type_dependent_expression_p): Handle an array of unknown
	bound depending on a variadic parameter.
	* parser.c (cp_parser_range_for): Revert PR56794 changes.

/testsuite
2013-06-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/53211
	* g++.dg/cpp0x/decltype55.C: New.

From-SVN: r200178
2013-06-18 22:20:10 +00:00
Joern Rennecke
299a5f6a09 Correct ChangeLog:
PR rtl-optimization/57425
        PR rtl-optimization/57569
-       * alias.c (write_dependence_p): Add new parameters mem_size,
+       * alias.c (write_dependence_p): Add new parameters mem_mode,

From-SVN: r200177
2013-06-18 21:27:09 +01:00
H.J. Lu
c21b257dc6 Fix a typo in comments in config/i386/i386.c
* config/i386/i386.c (initial_ix86_tune_features): Fix a typo
	in comments.

From-SVN: r200174
2013-06-18 09:57:06 -07:00
Julian Brown
33255ae30b arm.c (neon_vector_mem_operand): Add strict argument.
* config/arm/arm.c (neon_vector_mem_operand): Add strict argument.
	Permit virtual register pre-reload if !strict.
	(coproc_secondary_reload_class): Adjust for neon_vector_mem_operand
	change.
	* config/arm/arm-protos.h (neon_vector_mem_operand): Adjust
	prototype.
	* config/arm/neon.md (movmisalign<mode>): Use
	neon_perm_struct_or_reg_operand instead of
	neon_struct_or_register_operand.
	(*movmisalign<mode>_neon_load, *movmisalign<mode>_neon_store): Use
	neon_permissive_struct_operand instead of neon_struct_operand.
	* config/arm/constraints.md (Un, Um, Us): Adjust calls to
	neon_vector_mem_operand.
	* config/arm/predicates.md (neon_struct_operand): Adjust call to
	neon_vector_mem_operand.
	(neon_permissive_struct_operand): New.
	(neon_struct_or_register_operand): Rename to...
	(neon_perm_struct_or_reg_operand): This. Adjust call to
	neon_vector_mem_operand.

From-SVN: r200172
2013-06-18 15:19:55 +00:00
Richard Biener
d579fcda92 Makefile.in (LTO_STREAMER_H): Add pointer-set.h dependency.
2013-06-18  Richard Biener  <rguenther@suse.de>

	* Makefile.in (LTO_STREAMER_H): Add pointer-set.h dependency.
	* lto-streamer.h: Include pointer-set.h.
	(struct lto_decl_slot): Remove.
	(struct lto_tree_ref_encoder): Make tree_hash_table a pointer-map.
	Remove next_index entry.
	(lto_hash_decl_slot_node, lto_eq_decl_slot_node,
	lto_hash_type_slot_node, lto_eq_type_slot_node): Remove.
	(lto_init_tree_ref_encoder): Adjust.
	(lto_destroy_tree_ref_encoder): Likewise.
	* lto-section-out.c (lto_hash_decl_slot_node, lto_eq_decl_slot_node,
	lto_hash_type_slot_node, lto_eq_type_slot_node): Remove.
	(lto_output_decl_index): Adjust.
	(lto_new_out_decl_state): Likewise.
	(lto_record_function_out_decl_state): Likewise.
	* lto-streamer-out.c (copy_function): Likewise.

From-SVN: r200171
2013-06-18 14:39:57 +00:00
Richard Biener
31ee20ba67 Makefile.in (cgraphunit.o): Add $(CFGLOOP_H) dependency.
2013-06-18  Richard Biener  <rguenther@suse.de>

	* Makefile.in (cgraphunit.o): Add $(CFGLOOP_H) dependency.
	* cgraphunit.c: Include cfgloop.h.
	(init_lowered_empty_function): Initialize the loop tree.
	(assemble_thunk): Insert new BBs into loops.

From-SVN: r200169
2013-06-18 14:14:00 +00:00
Richard Biener
ac0511f233 tree-streamer.h (streamer_tree_cache_create): Adjust prototype.
2013-06-18  Richard Biener  <rguenther@suse.de>

	* tree-streamer.h (streamer_tree_cache_create): Adjust prototype.
	* tree-streamer.c (streamer_tree_cache_create): Make maintaining
	the map from cache entry to cache index optional.
	(streamer_tree_cache_replace_tree): Adjust accordingly.
	(streamer_tree_cache_append): Likewise.
	(streamer_tree_cache_delete): Likewise.
	* lto-streamer-in.c (lto_data_in_create): Do not maintain the
	streamer cache map from cache entry to cache index.
	* lto-streamer-out.c (create_output_block): Adjust.

	lto/
	* lto.c (lto_register_var_decl_in_symtab): Pass in cache index
	and use it.
	(lto_register_function_decl_in_symtab): Likewise.
	(cmp_tree): New function.
	(unify_scc): Instead of using the streamer cache map from entry
	to cache index match up the two maps we have by sorting them.
	Adjust calls to lto_register_var_decl_in_symtab and
	lto_register_function_decl_in_symtab.

From-SVN: r200168
2013-06-18 12:56:42 +00:00
Sofiane Naci
09485a08d3 arm.md (attribute "insn"): Move multiplication and division attributes to...
* config/arm/arm.md (attribute "insn"): Move multiplication and division
	attributes to...
	(attribute "type"): ... here.  Remove mult.
	(attribute "mul32"): New attribute.
	(attribute "mul64"): Add umaal.
	(*arm_mulsi3): Update attributes.
	(*arm_mulsi3_v6): Likewise.
	(*thumb_mulsi3): Likewise.
	(*thumb_mulsi3_v6): Likewise.
	(*mulsi3_compare0): Likewise.
	(*mulsi3_compare0_v6): Likewise.
	(*mulsi_compare0_scratch): Likewise.
	(*mulsi_compare0_scratch_v6): Likewise.
	(*mulsi3addsi): Likewise.
	(*mulsi3addsi_v6): Likewise.
	(*mulsi3addsi_compare0): Likewise.
	(*mulsi3addsi_compare0_v6): Likewise.
	(*mulsi3addsi_compare0_scratch): Likewise.
	(*mulsi3addsi_compare0_scratch_v6): Likewise.
	(*mulsi3subsi): Likewise.
	(*mulsidi3adddi): Likewise.
	(*mulsi3addsi_v6): Likewise.
	(*mulsidi3adddi_v6): Likewise.
	(*mulsidi3_nov6): Likewise.
	(*mulsidi3_v6): Likewise.
	(*umulsidi3_nov6): Likewise.
	(*umulsidi3_v6): Likewise.
	(*umulsidi3adddi): Likewise.
	(*umulsidi3adddi_v6): Likewise.
	(*smulsi3_highpart_nov6): Likewise.
	(*smulsi3_highpart_v6): Likewise.
	(*umulsi3_highpart_nov6): Likewise.
	(*umulsi3_highpart_v6): Likewise.
	(mulhisi3): Likewise.
	(*mulhisi3tb): Likewise.
	(*mulhisi3bt): Likewise.
	(*mulhisi3tt): Likewise.
	(maddhisi4): Likewise.
	(*maddhisi4tb): Likewise.
	(*maddhisi4tt): Likewise.
	(maddhidi4): Likewise.
	(*maddhidi4tb): Likewise.
	(*maddhidi4tt): Likewise.
	(divsi3): Likewise.
	(udivsi3): Likewise.
	* config/arm/thumb2.md (thumb2_mulsi_short): Update attributes.
	(thumb2_mulsi_short_compare0): Likewise.
	(thumb2_mulsi_short_compare0_scratch): Likewise.
	* config/arm/arm1020e.md (1020mult1): Update attribute change.
	(1020mult2): Likewise.
	(1020mult3): Likewise.
	(1020mult4): Likewise.
	(1020mult5): Likewise.
	(1020mult6): Likewise.
	* config/arm/cortex-a15.md (cortex_a15_mult32): Update attribute change.
	(cortex_a15_mult64): Likewise.
	(cortex_a15_sdiv): Likewise.
	(cortex_a15_udiv): Likewise.
	* config/arm/arm1026ejs.md (mult1): Update attribute change.
	(mult2): Likewise.
	(mult3): Likewise.
	(mult4): Likewise.
	(mult5): Likewise.
	(mult6): Likewise.
	* config/arm/marvell-pj4.md (pj4_ir_mul): Update attribute change.
	(pj4_ir_div): Likewise.
	* config/arm/arm1136jfs.md (11_mult1): Update attribute change.
	(11_mult2): Likewise.
	(11_mult3): Likewise.
	(11_mult4): Likewise.
	(11_mult5): Likewise.
	(11_mult6): Likewise.
	(11_mult7): Likewise.
	* config/arm/cortex-a8.md (cortex_a8_mul): Update attribute change.
	(cortex_a8_mla): Likewise.
	(cortex_a8_mull): Likewise.
	(cortex_a8_smulwy): Likewise.
	(cortex_a8_smlald): Likewise.
	* config/arm/cortex-m4.md (cortex_m4_alu): Update attribute change.
	* config/arm/cortex-r4.md (cortex_r4_mul_4): Update attribute change.
	(cortex_r4_mul_3): Likewise.
	(cortex_r4_mla_4): Likewise.
	(cortex_r4_mla_3): Likewise.
	(cortex_r4_smlald): Likewise.
	(cortex_r4_mull): Likewise.
	(cortex_r4_sdiv): Likewise.
	(cortex_r4_udiv): Likewise.
	* config/arm/cortex-a7.md (cortex_a7_mul): Update attribute change.
	(cortex_a7_idiv): Likewise.
	* config/arm/arm926ejs.md (9_mult1): Update attribute change.
	(9_mult2): Likewise.
	(9_mult3): Likewise.
	(9_mult4): Likewise.
	(9_mult5): Likewise.
	(9_mult6): Likewise.
	* config/arm/cortex-a53.md (cortex_a53_mul): Update attribute change.
	(cortex_a53_sdiv): Likewise.
	(cortex_a53_udiv): Likewise.
	* config/arm/fa726te.md (726te_mult_op): Update attribute change.
	* config/arm/fmp626.md (mp626_mult1): Update attribute change.
	(mp626_mult2): Likewise.
	(mp626_mult3): Likewise.
	(mp626_mult4): Likewise.
	* config/arm/fa526.md (526_mult1): Update attribute change.
	(526_mult2): Likewise.
	* config/arm/arm-generic.md (mult): Update attribute change.
	(mult_ldsched_strongarm): Likewise.
	(mult_ldsched): Likewise.
	(multi_cycle): Likewise.
	* config/arm/cortex-a5.md (cortex_a5_mul): Update attribute change.
	* config/arm/fa606te.md (606te_mult1): Update attribute change.
	(606te_mult2): Likewise.
	(606te_mult3): Likewise.
	(606te_mult4): Likewise.
	* config/arm/cortex-a9.md (cortex_a9_mult16): Update attribute change.
	(cortex_a9_mac16): Likewise.
	(cortex_a9_multiply): Likewise.
	(cortex_a9_mac): Likewise.
	(cortex_a9_multiply_long): Likewise.
	* config/arm/fa626te.md (626te_mult1): Update attribute change.
	(626te_mult2): Likewise.
	(626te_mult3): Likewise.
	(626te_mult4): Likewise.

From-SVN: r200167
2013-06-18 12:45:31 +00:00
Marek Polacek
d5ac899c87 Fix c90-fordecl-1.c test
From-SVN: r200166
2013-06-18 10:39:52 +00:00
Richard Biener
8951f345a4 re PR lto/57334 (ICE: in input_gimple_stmt, at gimple-streamer-in.c:287)
2013-06-18  Richard Biener  <rguenther@suse.de>

	PR lto/57334
	* lto-symtab.c (lto_symtab_merge_decls): Process nodes properly.

From-SVN: r200165
2013-06-18 09:56:59 +00:00
Andreas Krebbel
d8101d05d3 re PR bootstrap/57609 (S/390 ESA mode bootstrap failure since r197266)
2013-06-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	PR target/57609
	* config/s390/s390.c (s390_chunkify_start): Replace next_real_insn
	with next_active_insn.

From-SVN: r200164
2013-06-18 08:59:46 +00:00
Marek Polacek
92f202027e re PR c/57630 (Error should include -std=c11 and friends)
PR c/57630
	* c-decl.c (check_for_loop_decls): Improve diagnostics messages.

From-SVN: r200163
2013-06-18 07:41:19 +00:00
Alan Modra
69eff9da48 rs6000.h (enum data_align): New.
* config/rs6000/rs6000.h (enum data_align): New.
	(LOCAL_ALIGNMENT, DATA_ALIGNMENT): Use rs6000_data_alignment.
	(DATA_ABI_ALIGNMENT): Define.
	(CONSTANT_ALIGNMENT): Correct comment.
	* config/rs6000/rs6000-protos.h (rs6000_data_alignment): Declare.
	* config/rs6000/rs6000.c (rs6000_data_alignment): New function.

From-SVN: r200159
2013-06-18 10:43:27 +09:30
GCC Administrator
2058cd6cb3 Daily bump.
From-SVN: r200158
2013-06-18 00:16:45 +00:00
Balaji V. Iyer
758ed11f58 sec_reduce_ind_same_value.c: New test.
2013-06-17  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * c-c++-common/cilk-plus/AN/sec_reduce_ind_same_value.c: New test.

From-SVN: r200155
2013-06-17 11:21:14 -07:00
David Malcolm
8ed00d7651 ggc-page.c (ggc_pch_write_object): Remove erroneous ATTRIBUTE_UNUSED marking.
* ggc-page.c (ggc_pch_write_object) <d>: Remove erroneous
	ATTRIBUTE_UNUSED marking.

From-SVN: r200154
2013-06-17 17:25:46 +00:00
Balaji V. Iyer
1416edb66f +2013-06-17 Balaji V.
+2013-06-17  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+        * c-c++-common/cilk-plus/AN/array_test1.c: Make this an execution test.
+       Also changed the returns from error as distinct values so that it is
+       easier to debug.
+

From-SVN: r200153
2013-06-17 09:22:35 -07:00
Sofiane Naci
3d33d06bac aarch64-simd.md (aarch64_dup_lane<mode>): Add r<-w alternative and update.
gcc/
	* config/aarch64/aarch64-simd.md (aarch64_dup_lane<mode>): Add r<-w
	alternative and update.
	(aarch64_dup_lanedi): Delete.
	* config/aarch64/arm_neon.h (vdup<bhsd>_lane_*): Update.
	* config/aarch64/aarch64-simd-builtins.def: Update.

	testsuite/
	* gcc.target/aarch64/scalar_intrinsics.c: Update.

From-SVN: r200152
2013-06-17 16:14:06 +00:00
Richard Biener
ee03e71d47 lto-streamer.h (enum LTO_tags): Add LTO_tree_scc.
2013-06-17  Richard Biener  <rguenther@suse.de>

	* lto-streamer.h (enum LTO_tags): Add LTO_tree_scc.
	(lto_input_scc): Declare.
	(lto_input_tree_1): Likewise.
	(struct lto_stats_d): Add num_tree_bodies_output and
	num_pickle_refs_output.
	* lto-streamer-in.c (lto_read_body): Use streamer_tree_cache_get_tree.
	(lto_read_tree_1): Split out from ...
	(lto_read_tree): ... this.
	(lto_input_scc): New function.
	(lto_input_tree_1): Split out from ...
	(lto_input_tree): ... this.  Handle LTO_tree_scc.
	(lto_data_in_create): Create the streamer cache without hashes.
	* lto-streamer-out.c (create_output_block): Create the streamer
	cache with hashes when not doing WPA.
	(lto_write_tree_1): Split out from ...
	(lto_write_tree): ... this.
	(get_symbol_initial_value): New function.
	(lto_output_tree_1): Split out from ...
	(lto_output_tree): ... this.  Write trees as series of SCCs
	using a DFS walk via DFS_write_tree.
	(struct sccs, struct scc_entry): New types.
	(next_dfs_num, sccstack, sccstate, sccstate_obstack): New globals.
	(DFS_write_tree_body): New function.
	(DFS_write_tree): Likewise.
	(hash_tree): Likewise.
	(scc_entry_compare): Likewise.
	(hash_scc): Likewise.
	(tree_is_indexable): DEBUG_EXPR_DECLs are local entities.
	* tree-streamer-in.c (lto_input_ts_list_tree_pointers): Stream
	TREE_CHAIN as regular reference.
	(streamer_read_integer_cst): Remove.
	(streamer_get_pickled_tree): Adjust.
	* tree-streamer-out.c (streamer_write_chain): Disable streaming
	of DECL_EXTERNALs in BLOCK_VARS for now.
	(write_ts_list_tree_pointers): Stream TREE_CHAIN as regular
	reference.
	* tree-streamer.c (streamer_tree_cache_add_to_node_array):
	Add hash value argument and record that if hashes are recorded
	in the cache.
	(streamer_tree_cache_insert_1): Adjust.
	(streamer_tree_cache_insert): Likewise.
	(streamer_tree_cache_insert_at): Rename to ...
	(streamer_tree_cache_replace_tree): ... this and adjust.
	(streamer_tree_cache_append): Adjust.
	(record_common_node): Likewise.
	(streamer_tree_cache_create): Add argument whether to
	record hash values together with trees.
	(streamer_tree_cache_delete): Adjust.
	* tree-streamer.h (struct streamer_tree_cache_d): Add
	vector of hashes.
	(streamer_read_integer_cst): Remove.
	(streamer_tree_cache_insert): Adjust.
	(streamer_tree_cache_append): Likewise.
	(streamer_tree_cache_insert_at): Rename to ...
	(streamer_tree_cache_replace_tree): ... this and adjust.
	(streamer_tree_cache_create): Add argument whether to record hashes.
	(streamer_tree_cache_get): Rename to ...
	(streamer_tree_cache_get_tree): ... this.
	(streamer_tree_cache_get_hash): New function.
	* tree.c (cache_integer_cst): New function.
	* tree.h (cache_integer_cst): Declare.
	(ANON_AGGRNAME_FORMAT, ANON_AGGRNAME_P): Move here from cp/cp-tree.h.
	* lto-symtab.c (lto_varpool_replace_node): Only release
	DECL_INITIAL of non-prevailing decls.
	* varpool.c (varpool_remove_initializer): Do not release
	DECL_INITIAL when we are still in CGRAPH_LTO_STREAMING.

	cp/
	* cp-tree.h (ANON_AGGRNAME_FORMAT, ANON_AGGRNAME_P): Move to tree.h.

	lto/
	* Make-lang.in (lto.o): Add $(DATA_STREAMER_H) dependency.
	* lto.c: Include data-streamer.h.
	(lto_read_in_decl_state): Use streamer_tree_cache_get_tree.
	(gimple_type_leader_entry_s, gimple_type_leader,
	gimple_lookup_type_leader): Remove.
	(gtc_visit): Simplify.
	(gimple_types_compatible_p): Likewise.
	(gimple_register_type_1): Likewise.  Merge into ...
	(gimple_register_type): ... this.  Keep it as legacy for
	statistics purposes for now.
	(fixup_integer_cst): Remove.
	(LTO_FIXUP_TREE, lto_fixup_types, lto_ft_*): Simplify and
	rename to ...
	(MAYBE_REMEMBER_WITH_VARS, maybe_remember_with_vars,
	maybe_remember_with_vars_*): ... these.
	(uniquify_nodes): Remove.
	(lto_fixup_prevailing_type): New function.
	(struct tree_scc, struct tree_scc_hasher): New type and hasher.
	(tree_scc_hash, tree_scc_hash_obstack): New globals.
	(num_merged_types, num_prevailing_types, num_not_merged_types,
	num_not_merged_types_in_same_scc, total_scc_size, num_sccs_read,
	total_scc_size_merged, num_sccs_merged, num_scc_compares,
	num_scc_compare_collisions): New global counters.
	(compare_tree_sccs_1): New function.
	(compare_tree_sccs): Likewise.
	(unify_scc): Likewise.
	(lto_read_decls): Stream in tree SCCs and unify them on the
	way in.  Finalize prevailing SCC tree members.
	(read_cgraph_and_symbols): Do not initialize or free gimple_type_leader.
	Allocate and free tree_scc_hash_obstack and tree_scc_hash, do not bother
	to ggc-collect during merging.
	(print_lto_report_1): Adjust for new merging code.

From-SVN: r200151
2013-06-17 15:08:24 +00:00
Paolo Carlini
a0e33cbcd8 re PR c++/16128 (Diagnostic of missing argument list within functions)
/cp
2013-06-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/16128
	* parser.c (cp_parser_expression_statement): Check whether
	cp_parser_expression returns error_mark_node.

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

	PR c++/16128
	* g++.dg/template/error52.C: New.
	* g++.dg/lookup/friend15.C: Update.
	* g++.dg/parse/error11.C: Likewise.
	* g++.dg/parse/error14.C: Likewise.
	* g++.dg/parse/parser-pr28152-2.C: Likewise.
	* g++.dg/parse/template25.C: Likewise.
	* g++.old-deja/g++.jason/cond.C: Likewise.
	* g++.old-deja/g++.mike/for2.C: Likewise.
	* g++.old-deja/g++.robertl/eb125.C: Likewise.
	* obj-c++.dg/property/dotsyntax-4.mm: Likewise.

From-SVN: r200150
2013-06-17 14:06:36 +00:00
Balaji V. Iyer
617e128198 Fixed a word wrap issue in my entry of testsuite/Changelog.
From-SVN: r200149
2013-06-17 06:09:03 -07:00
Kyrylo Tkachov
3fa82826b3 unaligned-memcpy-2.c (dest): Initialize to ensure alignment.
gcc/testsuite/
2013-06-17  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* gcc.target/arm/unaligned-memcpy-2.c (dest): Initialize to
	ensure alignment.

From-SVN: r200148
2013-06-17 09:34:21 +00:00
Tobias Burnus
fa86f4f917 gfortran.h (gfc_option_t): Add fpe_summary.
2013-06-17  Tobias Burnus  <burnus@net-b.de>

        * gfortran.h (gfc_option_t): Add fpe_summary.
        * gfortran.texi (_gfortran_set_options): Update.
        * invoke.texi (-ffpe-summary): Add doc.
        * lang.opt (ffpe-summary): Add flag.
        * options.c (gfc_init_options, gfc_handle_option): Handle it.
        (gfc_handle_fpe_option): Renamed from gfc_handle_fpe_trap_option,
        also handle fpe_summary.
        * trans-decl.c (create_main_function): Update
        _gfortran_set_options call.

2013-06-17  Tobias Burnus  <burnus@net-b.de>

        * libgfortran.h (compile_options_t) Add fpe_summary.
        (get_fpu_except_flags): New prototype.
        * runtime/compile_options.c (set_options, init_compile_options):
        Handle fpe_summary.
        * runtime/stop.c (report_exception): New function.
        (stop_numeric, stop_numeric_f08, stop_string, error_stop_string,
        error_stop_numeric): Call it.
        * config/fpu-387.h (get_fpu_except_flags): New function.
        * config/fpu-aix.h (get_fpu_except_flags): New function.
        * config/fpu-generic.h (get_fpu_except_flags): New function.
        * config/fpu-glibc.h (get_fpu_except_flags): New function.
        * config/fpu-glibc.h (get_fpu_except_flags): New function.
        * configure.ac: Check for fpxcp.h.
        * configure: Regenerate.
        * config.h.in: Regenerate.

From-SVN: r200147
2013-06-17 09:48:21 +02:00
Balaji V. Iyer
7e55aae9e3 +2013-06-16 Balaji V.
+2013-06-16  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-c++-common/cilk-plus/AN/if_test.c (main2): Fixed a bug of accidentally
+       placing minus sign for length instead of stride.
+

From-SVN: r200146
2013-06-16 18:29:52 -07:00
Jonathan Wakely
31eb8a1809 stl_algobase.h (equal): Make C++14 overloads from N3671 dispatch to traditional std::equal for...
2013-06-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
	    Chris Jefferson  <chris@bubblescope.net>

	* include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
	dispatch to traditional std::equal for random-access iterators.
	(__equal2_aux, __equal2): Remove.
	(__equal::equal): Remove unused overloads.
	* include/bits/stl_algo.h (is_permutation): Fix typos.

Co-Authored-By: Chris Jefferson <chris@bubblescope.net>

From-SVN: r200145
2013-06-17 01:47:55 +01:00
GCC Administrator
0ab15c50f8 Daily bump.
From-SVN: r200144
2013-06-17 00:16:45 +00:00
Jonathan Wakely
2081281b10 shared_mutex (shared_lock::operator=): Add missing return statement.
* include/std/shared_mutex (shared_lock::operator=): Add missing
	return statement.

From-SVN: r200141
2013-06-16 22:56:43 +01:00
Jürgen Urban
0de86a9228 mips.h (ISA_HAS_MUL3): Include TARGET_MIPS5900.
gcc/
2013-06-16  Jürgen Urban  <JuergenUrban@gmx.de>

	* config/mips/mips.h (ISA_HAS_MUL3): Include TARGET_MIPS5900.
	(ISA_HAS_MULT, ISA_HAS_DMULT, ISA_HAS_DIV, ISA_HAS_DDIV): New macros.
	* config/mips/mips.md (mul<mode>3, mul<mode>3_internal)
	(mul<mode>3_r4000): Require ISA_HAS_<D>MULT.
	(mul<mode>3_mul3): Handle TARGET_MIPS5900.
	(mulsidi3_64bit_dmul): Remove redundant TARGET_64BIT test.
	(<su>muldi3_highpart, <su>muldi3_highpart_internal, <u>mulditi3)
	(<u>mulditi3_internal, <u>mulditi3_r4000): Require ISA_HAS_DMULT
	instead of TARGET_64BIT.
	(divmod<mode>4, udivmod<mode>4, <u>divmod<GPR:mode>4_hilo_<HILO:mode>):
	Require ISA_HAS_<D>DIV.

libgcc/
2013-06-16  Jürgen Urban  <JuergenUrban@gmx.de>

	* config/mips/lib2funcs.c: New file.
	* config/mips/t-mips (LIB2ADD_ST): Add it.

From-SVN: r200140
2013-06-16 19:31:24 +00:00
Richard Sandiford
7424041386 gcc/
* config.gcc (mips*-mti-linux*, mips64*-*-linux*, mipsisa64*-*-linux*)
	(mips*-*-linux*): Move default with_llsc setting to where other
	defaults are set.
	(mips*-*-vxworks*): Move with_arch default from with_cpu block to
	with_arch block.
	(mips64r5900-*-*, mips64r5900el-*-*, mipsr5900-*-*, mipsr5900el-*-*):
	Likewise.  Remove default with_tune setting.  Move default float
	setting to its own block.  Handle with_llsc in the same block as above.

From-SVN: r200139
2013-06-16 19:30:48 +00:00
Jonathan Wakely
f038f5824b re PR libstdc++/57263 (std::set with user-defined allocator - compile error)
PR libstdc++/57263
	* include/bits/forward_list.h (_Fwd_list_base): Convert to/from
	allocator's pointer type.
	* include/bits/hashtable.h (_Hashtable): Likewise.
	* testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
	* testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/vector/allocator/ext_ptr.cc: New.

From-SVN: r200136
2013-06-16 18:13:34 +01:00
Jonathan Wakely
8d2cddc125 shared_mutex: Implement N3659.
* include/std/shared_mutex: Implement N3659.
	* include/bits/c++14_warning.h: New.
	* include/Makefile.am: Add new headers.
	* include/Makefile.in: Regenerate.
	* testsuite/30_threads/shared_lock/cons/1.cc: New.
	* testsuite/30_threads/shared_lock/locking/2.cc: New.
	* testsuite/30_threads/shared_lock/cons/2.cc: New.
	* testsuite/30_threads/shared_lock/locking/3.cc: New.
	* testsuite/30_threads/shared_lock/cons/3.cc: New.
	* testsuite/30_threads/shared_lock/locking/4.cc: New.
	* testsuite/30_threads/shared_lock/cons/4.cc: New.
	* testsuite/30_threads/shared_lock/modifiers/1.cc: New.
	* testsuite/30_threads/shared_lock/cons/5.cc: New.
	* testsuite/30_threads/shared_lock/modifiers/2.cc: New.
	* testsuite/30_threads/shared_lock/cons/6.cc: New.
	* testsuite/30_threads/shared_lock/requirements/
	explicit_instantiation.cc: New.
	* testsuite/30_threads/shared_lock/locking/1.cc: New.
	* testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
	* testsuite/30_threads/shared_mutex/cons/1.cc: New.
	* testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
	* testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
	* testsuite/30_threads/shared_mutex/requirements/
	standard_layout.cc: New.
	* testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
	* testsuite/30_threads/shared_mutex/try_lock/2.cc: New.

From-SVN: r200134
2013-06-16 17:35:06 +01:00
Joern Rennecke
393f9fedf3 re PR rtl-optimization/57425 (RTL alias analysis unprepared to handle stack slot sharing)
gcc:
	PR rtl-optimization/57425
	PR rtl-optimization/57569
	* alias.c (write_dependence_p): Add new parameters mem_size,
	canon_mem_addr and mem_canonicalized.  Change type of writep to bool.
	Changed all callers.
	(canon_anti_dependence): New function.
	* cse.c (check_dependence): Use canon_anti_dependence.
	* cselib.c (cselib_invalidate_mem): Likewise.
	* rtl.h (canon_anti_dependence): Declare.
gcc/testsuite:
	PR rtl-optimization/57425
	PR rtl-optimization/57569
	* gcc.dg/torture/pr57425-1.c, gcc.dg/torture/pr57425-2.c: New files.
	* gcc.dg/torture/pr57425-3.c, gcc.dg/torture/pr57569.c: Likewise.
Index: alias.c
===================================================================
--- alias.c	(revision 200126)

From-SVN: r200133
2013-06-16 15:59:41 +01:00
Jürgen Urban
b259d352ca mips.h (ISA_HAS_LL_SC): Exclude TARGET_MIPS5900.
gcc/
2013-06-16  Jürgen Urban  <JuergenUrban@gmx.de>

	* config/mips/mips.h (ISA_HAS_LL_SC): Exclude TARGET_MIPS5900.
	* config/mips/mips.c (mips_start_ll_sc_sync_block): Output
	".set mips3" for 64-bit targets.

From-SVN: r200132
2013-06-16 09:16:23 +00:00
GCC Administrator
6f9c34459e Daily bump.
From-SVN: r200131
2013-06-16 00:16:51 +00:00
Mikael Morin
e3f62a5ac1 re PR fortran/49074 ([OOP] Defined assignment w/ CLASS arrays: Incomplete error message)
fortran/
	PR fortran/49074
	PR fortran/56136
	* dependency.c (gfc_check_argument_var_dependency): Return 0 in the
	array constructor case.

testsuite/
	PR fortran/49074
	PR fortran/56136
	* gfortran.dg/typebound_assignment_5.f03: Check the absence of any
	packing.
	* gfortran.dg/typebound_assignment_6.f03: New.

From-SVN: r200128
2013-06-15 21:20:29 +00:00
Dehao Chen
4de09b857e tree-flow.h (gimple_check_call_matching_types): Add new argument.
2013-06-15  Dehao Chen  <dehao@google.com>

	* tree-flow.h (gimple_check_call_matching_types): Add new argument.
	* gimple-low.c (gimple_check_call_matching_types): Likewise.
	(gimple_check_call_args): Likewise.
	* value-prof.c (check_ic_target): Likewise.
	* ipa-inline.c (early_inliner): Likewise.
	* ipa-prop.c (update_indirect_edges_after_inlining): Likewise.
	* cgraph.c (cgraph_create_edge_1): Likewise.
	(cgraph_make_edge_direct): Likewise.

From-SVN: r200125
2013-06-15 16:56:01 +00:00
Oleg Endo
58aee036e8 h8300.exp: New.
* gcc.target/h8300/h8300.exp: New.
	* gcc.dg/pragma-isr.c: Move to ...
	* gcc.target/sh/torture/pragma-isr.c: ... here ...
	* gcc.target/h8300/pragma-isr.c: ... and here.
	* gcc.dg/pragma-isr2.c: Move to ...
	* gcc.target/sh/torture/pragma-isr2.c: ... here ...
	* gcc.target/h8300/pragma-isr2.c: ... and here.
	* gcc.dg/pragma-isr-trapa.c: Move to ...
	* gcc.target/sh/pragma-isr-trapa.c: ... here.
	* gcc.dg/pragma-isr-trapa2.c: Move to ...
	* gcc.target/sh/pragma-isr-trapa2.c: ... here.
	* gcc.dg/pragma-isr-trap_exit.c: Move to ...
	* gcc.target/sh/pragma-isr-trap-exit.c: ... here.
	* gcc.dg/pragma-isr-nosave_low_regs.c: Move to ...
	* gcc.target/sh/pragma-isr-nosave_low_regs.c: ... here.
	* gcc.dg/attr-isr-nosave_low_regs.c: Move to ...
	* gcc.target/sh/attr-isr-nosave_low_regs.c: ... here.
	* gcc.dg/attr-isr-trap_exit.c: Move to ...
	* gcc.target/sh/attr-isr-trap_exit.c: ... here.
	* gcc.dg/attr-isr-trapa.c: Move to ...
	* gcc.target/sh/attr-isr-trapa.c: ... here.

From-SVN: r200117
2013-06-15 00:38:43 +00:00
GCC Administrator
5042e37cd2 Daily bump.
From-SVN: r200116
2013-06-15 00:16:32 +00:00
Paolo Carlini
95777cb0fb re PR libstdc++/57619 (std::unordered_map and std::unordered_multimap::insert invoking std::pair move constructor)
2013-06-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/57619
	* include/bits/unordered_map.h (unordered_map<>::insert,
	unordered_multimap<>::insert): Use std::forward, not std::move.
	* testsuite/23_containers/unordered_map/insert/57619.C: New.
	* testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.

From-SVN: r200111
2013-06-14 23:35:56 +00:00
Paolo Carlini
929f647a01 re PR c++/51413 (Broken diagnostic with __builtin_offsetof)
/cp
2013-06-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51413
	* semantics.c (finish_offsetof): Handle INDIRECT_REF as expr.

/testsuite
2013-06-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51413
	* g++.dg/ext/builtin-offsetof1.C: New.

From-SVN: r200110
2013-06-14 22:49:11 +00:00
Michael Meissner
d1aa4a76d2 re PR target/57615 (power8 support does not deal with -mquad-memory -mno-vsx)
2013-06-14  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/57615
	* config/rs6000/rs6000.md (mov<mode>_ppc64): Call
	rs6000_output_move_128bit to handle emitting quad memory
	operations.  Set attribute length to 8 bytes.

From-SVN: r200107
2013-06-14 20:52:44 +00:00
Jeff Law
e91d0adbc1 gimple.h (gimple_can_coalesce_p): Prototype.
* gimple.h (gimple_can_coalesce_p): Prototype.
	* tree-ssa-coalesce.c (gimple_can_coalesce_p): New function.
	(create_outofssa_var_map, coalesce_partitions): Use it.
	* tree-ssa-uncprop.c (uncprop_into_successor_phis): Similarly.
	* tree-ssa-live.c (var_map_base_init): Use TYPE_CANONICAL
	if it's available.

	* gcc.dg/tree-ssa/coalesce-1.c: New test.

From-SVN: r200103
2013-06-14 12:52:32 -06:00
Ian Lance Taylor
51b08adabf compiler: fix computation of Offsetof.
The implied offsets must be taken into account
when the selector involves anonymous fields.

From-SVN: r200098
2013-06-14 17:59:48 +00:00