Commit Graph

125663 Commits

Author SHA1 Message Date
François Dumont
3bd2644c00 stl_algo.h (remove_copy, [...]): Declare inline.
2013-09-28  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/stl_algo.h (remove_copy, remove_copy_if): Declare
	inline.
	(rotate_copy, stable_partition, partial_sort_copy): Likewise.
	(lower_bound, upper_bound, equal_range, inplace_merge): Likewise.
	(includes, next_permutation, prev_permutation): Likewise.
	(replace_copy, replace_copy_if, is_sorted_until): Likewise.
	(minmax_element, is_permutation, adjacent_find): Likewise.
	(count, count_if, search, search_n, merge): Likewise.
	(set_intersection, set_difference): Likewise.
	(set_symmetric_difference, min_element, max_element): Likewise.
	* include/bits/stl_algobase.h (lower_bound): Likewise.
	(lexicographical_compare, mismatch): Likewise.

From-SVN: r203008
2013-09-28 20:30:51 +00:00
Ian Lance Taylor
7540a2c787 compiler: Avoid knockon errors for invalid uses of _.
From-SVN: r203006
2013-09-28 20:23:43 +00:00
Tim Shen
8d60fca50e regex_scanner.tcc (_Scanner<>::_M_eat_escape_posix): Let ordinary char escaping in POSIX be valid.
2013-09-28  Tim Shen <timshen91@gmail.com>

	* include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_posix):
	Let ordinary char escaping in POSIX be valid.
	* testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Test this
	change.

From-SVN: r203005
2013-09-28 13:41:09 +00:00
Richard Sandiford
c328471880 alloc-pool.c, [...]: Add missing whitespace before "(".
gcc/
	* alloc-pool.c, asan.c, auto-inc-dec.c, basic-block.h, bb-reorder.c,
	bitmap.c, bitmap.h, bt-load.c, builtins.c, calls.c, cfgcleanup.c,
	cfgexpand.c, cfghooks.c, cfgloop.c, cfgloopmanip.c, cfgrtl.c, cgraph.c,
	cgraph.h, cgraphbuild.c, cgraphclones.c, cgraphunit.c, collect2.c,
	combine-stack-adj.c, combine.c, compare-elim.c, context.c, context.h,
	cprop.c, cse.c, cselib.c, dbxout.c, dce.c, defaults.h, df-core.c,
	df-problems.c, df-scan.c, df.h, diagnostic.c, double-int.c, dse.c,
	dumpfile.c, dwarf2asm.c, dwarf2cfi.c, dwarf2out.c, emit-rtl.c,
	errors.c, except.c, expmed.c, expr.c, file-find.c, final.c,
	fixed-value.c, fold-const.c, function.c, fwprop.c, gcc-ar.c, gcc.c,
	gcov-io.c, gcov-io.h, gcov.c, gcse.c, genattr-common.c, genattr.c,
	genattrtab.c, genautomata.c, genconfig.c, genemit.c, genextract.c,
	genflags.c, gengenrtl.c, gengtype-state.c, gengtype.c, genmodes.c,
	genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
	gensupport.c, ggc-common.c, ggc-page.c, gimple-fold.c, gimple-low.c,
	gimple-pretty-print.c, gimple-ssa-strength-reduction.c, gimple.c,
	gimple.h, godump.c, graphite-clast-to-gimple.c,
	graphite-optimize-isl.c, graphite-poly.h, graphite-sese-to-poly.c,
	graphite.c, haifa-sched.c, hash-table.c, hash-table.h, hwint.c,
	hwint.h, ifcvt.c, incpath.c, init-regs.c, input.h, intl.c, intl.h,
	ipa-cp.c, ipa-devirt.c, ipa-inline-analysis.c, ipa-inline.c,
	ipa-profile.c, ipa-pure-const.c, ipa-reference.c, ipa-split.c,
	ipa-utils.c, ipa.c, ira-build.c, ira.c, jump.c, loop-doloop.c,
	loop-init.c, loop-invariant.c, loop-iv.c, lower-subreg.c, lto-cgraph.c,
	lto-streamer-in.c, lto-streamer-out.c, lto-wrapper.c, mcf.c,
	mode-switching.c, modulo-sched.c, omp-low.c, optabs.c, opts.c,
	pass_manager.h, passes.c, plugin.c, postreload-gcse.c, postreload.c,
	predict.c, prefix.c, pretty-print.c, print-rtl.c, print-tree.c,
	profile.c, read-md.c, real.c, real.h, recog.c, ree.c, reg-stack.c,
	regcprop.c, reginfo.c, regmove.c, regrename.c, regs.h, regstat.c,
	reload1.c, reorg.c, rtl.c, rtl.h, rtlanal.c, sbitmap.c, sched-rgn.c,
	sdbout.c, sel-sched-ir.c, sel-sched.c, sparseset.c, stack-ptr-mod.c,
	statistics.c, stmt.c, stor-layout.c, store-motion.c, streamer-hooks.h,
	system.h, target-hooks-macros.h, targhooks.c, targhooks.h, toplev.c,
	tracer.c, trans-mem.c, tree-browser.c, tree-call-cdce.c, tree-cfg.c,
	tree-cfgcleanup.c, tree-complex.c, tree-data-ref.c, tree-data-ref.h,
	tree-eh.c, tree-emutls.c, tree-flow.h, tree-if-conv.c, tree-into-ssa.c,
	tree-iterator.c, tree-loop-distribution.c, tree-mudflap.c,
	tree-nested.c, tree-nomudflap.c, tree-nrv.c, tree-object-size.c,
	tree-optimize.c, tree-pass.h, tree-pretty-print.c, tree-profile.c,
	tree-scalar-evolution.c, tree-sra.c, tree-ssa-ccp.c,
	tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-copyrename.c,
	tree-ssa-dce.c, tree-ssa-dom.c, tree-ssa-dse.c, tree-ssa-forwprop.c,
	tree-ssa-ifcombine.c, tree-ssa-live.c, tree-ssa-loop-ch.c,
	tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-loop-prefetch.c,
	tree-ssa-loop.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
	tree-ssa-phiopt.c, tree-ssa-phiprop.c, tree-ssa-pre.c,
	tree-ssa-reassoc.c, tree-ssa-sink.c, tree-ssa-strlen.c,
	tree-ssa-structalias.c, tree-ssa-threadedge.c, tree-ssa-threadupdate.c,
	tree-ssa-uncprop.c, tree-ssa-uninit.c, tree-ssa.c, tree-ssanames.c,
	tree-stdarg.c, tree-switch-conversion.c, tree-tailcall.c,
	tree-vect-data-refs.c, tree-vect-generic.c, tree-vect-loop-manip.c,
	tree-vect-stmts.c, tree-vectorizer.c, tree-vectorizer.h, tree-vrp.c,
	tree.c, tree.h, tsan.c, tsystem.h, value-prof.c, var-tracking.c,
	varasm.c, vec.h, vmsdbgout.c, vtable-verify.c, web.c: Add missing
	whitespace before "(".

From-SVN: r203004
2013-09-28 08:42:34 +00:00
Sandra Loosemore
c6285bd7bb expr.h (extract_bit_field): Remove packedp parameter.
2013-09-28  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* expr.h (extract_bit_field): Remove packedp parameter.
	* expmed.c (extract_fixed_bit_field): Remove packedp parameter
	from forward declaration.
	(store_split_bit_field): Remove packedp arg from calls to
	extract_fixed_bit_field.
	(extract_bit_field_1): Remove packedp parameter and packedp
	argument from recursive calls and calls to extract_fixed_bit_field.
	(extract_bit_field): Remove packedp parameter and corresponding
	arg to extract_bit_field_1.
	(extract_fixed_bit_field): Remove packedp parameter.  Remove code
	to issue warnings.
	(extract_split_bit_field): Remove packedp arg from call to
	extract_fixed_bit_field.
	* expr.c (emit_group_load_1): Adjust calls to extract_bit_field.
	(copy_blkmode_from_reg): Likewise.
	(copy_blkmode_to_reg): Likewise.
	(read_complex_part): Likewise.
	(store_field): Likewise.
	(expand_expr_real_1): Likewise.
	* calls.c (store_unaligned_arguments_into_pseudos): Adjust call
	to extract_bit_field.
	* config/tilegx/tilegx.c (tilegx_expand_unaligned_load): Adjust
	call to extract_bit_field.
	* config/tilepro/tilepro.c (tilepro_expand_unaligned_load): Adjust
	call to extract_bit_field.
	* doc/invoke.texi (Code Gen Options): Remove mention of warnings
	and special packedp behavior from -fstrict-volatile-bitfields
	documentation.

From-SVN: r203003
2013-09-27 21:05:07 -04:00
GCC Administrator
ec110af7d1 Daily bump.
From-SVN: r203002
2013-09-28 00:17:05 +00:00
Ian Lance Taylor
5f18389f4d reflect: Copy stack values onto heap in amd64 MakeFunc.
From-SVN: r202995
2013-09-27 22:13:11 +00:00
Ian Lance Taylor
a84dbde7fc reflect: Implement MakeFunc for 386.
From-SVN: r202993
2013-09-27 21:34:24 +00:00
François Dumont
ea89b2482f predefined_ops.h: New.
2013-09-27  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/predefined_ops.h: New.
	* include/bits/stl_heap.h: Include <bits/predefined_ops.h>.
	(__is_heap_until, __push_heap, __adjust_heap, __pop_heap): Remove
	algo duplication.
	(__is_heap): Adapt.
	(__make_heap): New.
	(make_heap): Adapt to use latter.
	(__sort_heap): New.
	(sort_heap): Adapt to use latter.
	* include/bits/algobase.h: Include <bits/predefined_ops.h>.
	(__lexicographical_compare_impl): New.
	(__lexicographical_compare<false>::__lc): Adapt to use latter.
	(lexicographical_compare): Likewise.
	(__lower_bound): New.
	(lower_bound): Adapt to use latter.
	(equal): Use _GLIBCXX_STD_A::equal in N3671 overloads.
	(__mismatch): New.
	(mismatch): Use latter.
	* include/bits/algo.h: Include <bits/predefined_ops.h>. Remove
	<functional> include.
	(__move_median_first, __find, __find_if, __find_if_not): Remove
	algo duplication.
	(__find_end): Likewise.
	(__search_n): Rename into ...
	(__search_n_aux): ... this.
	(__search_n): Renew, use latter.
	(search_n): Use latter.
	(__search): New.
	(search): Use latter.
	(__find_end): Likewise.
	(__remove_copy_if): New.
	(remove_copy): Use latter.
	(__adjacent_find): New.
	(adjacent_find): Use latter.
	(__unique): New.
	(unique): Use latter.
	(__unique_copy): Remove algo duplication.
	(__stable_partition): New.
	(stable_partition): Use latter.
	(__heap_select): Remove algo duplication, use __make_heap.
	(__partial_sort): New, use latter.
	(partial_sort): Use latter.
	(__partial_sort_copy): New.
	(partial_sort_copy): Use latter.
	(__unguarded_linear_insert, __insertion_sort): Remove algo
	duplication.
	(__unguarded_insertion_sort, __final_insertion_sort): Likewise.
	(__unguarded_partition, __unguarded_partition_pivot): Likewise.
	(__partial_sort): New.
	(partial_sort): Use latter.
	(__sort): New.
	(sort): Use latter.
	(lower_bound): Use __lower_bound.
	(__upper_bound): New.
	(upper_bound): Use latter.
	(__equal_range): New.
	(equal_range): Use latter.
	(__move_merge_adaptive, __move_merge_adaptive_backward): Remove
	algo duplication.
	(__merge_adaptive, __merge_without_buffer): Likewise.
	(__inplace_merge): New.
	(inplace_merge): Use latter.
	(__move_merge, __merge_sort_loop, __chunk_insertion_sort): Remove
	algo duplication.
	(__merge_sort_with_buffer, __stable_sort_adaptive): Likewise.
	(__inplace_stable_sort): Likewise.
	(__include): New.
	(includes): Use latter.
	(__next_permutation): New.
	(next_permutation): Use latter.
	(__prev_permutation): New.
	(prev_permutation): Use latter.
	(__replace_copy_if): New.
	(replace_copy): Use latter.
	(__is_sorted_until): New.
	(is_sorted_unitl): Use latter.
	(__minmax_element): New.
	(minmax_element): Use latter.
	(__is_permutation): New.
	(is_permutation): Use latter.
	(__adjacent_find): New.
	(adjacent_find): Use latter.
	(__count_if): New.
	(count): Use latter.
	(count_if): Likewise.
	(__merge): New.
	(merge): Use latter.
	(__stable_sort): New.
	(stable_sort): Use latter.
	(__set_union): New.
	(set_union): Use latter.
	(__set_intersection): New.
	(set_intersection): Use latter.
	(__set_difference): New.
	(set_difference): Use latter.
	(__set_symmetric_difference): New.
	(set_symmetric_difference): Use latter.
	(__min_element): New.
	(min_element): Use latter.
	(__max_element): New.
	(max_element): Use latter.
	* include/Makefile.am: Add predefined_ops.h.
	* include/Makefile.in: Regenerate.
	* include/parallel/algobase.h (equal, mismatch): Add overloads
	from N3671.
	* testsuite/25_algorithms/is_permutation/vectorbool.cc: New.
	* testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
	* testsuite/25_algorithms/find/vectorbool.cc: Likewise.
	* testsuite/25_algorithms/find_if/vectorbool.cc: Likewise.
	* testsuite/25_algorithms/find_first_of/vectorbool.cc: Likewise.
	* testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
	* testsuite/25_algorithms/find_end/vectorbool.cc: Likewise.
	* testsuite/25_algorithms/find_if_not/vectorbool.cc: Likewise.

From-SVN: r202992
2013-09-27 21:17:36 +00:00
Jan-Benedict Glaw
522d4efcd3 lra-eliminations.c (init_elim_table): Guard value_p.
2013-09-27  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* lra-eliminations.c (init_elim_table): Guard value_p.

From-SVN: r202991
2013-09-27 20:20:35 +00:00
Janne Blomqvist
6029d9db70 Fix DATE_AND_TIME example.
2013-09-27  Janne Blomqvist  <jb@gcc.gnu.org>

	* intrinsic.texi (DATE_AND_TIME): Fix example.

From-SVN: r202986
2013-09-27 22:46:29 +03:00
Michael Meissner
19cdb489da rs6000.c (rs6000_hard_regno_mode_ok): Allow DFmode...
[gcc]
2013-09-27  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): Allow
	DFmode, DImode, and SFmode in the upper VSX registers based on the
	-mupper-regs-{df,sf} flags.  Fix wu constraint to be ALTIVEC_REGS
	if -mpower8-vector.  Combine -mvsx-timode handling with the rest
	of the VSX register handling.

	* config/rs6000/rs6000.md (f32_lv): Use %x0 for VSX regsters.
	(f32_sv): Likewise.
	(zero_extendsidi2_lfiwzx): Add support for loading into the
	Altivec registers with -mpower8-vector.  Use wu/wv constraints to
	only do VSX memory options on Altivec registers.
	(extendsidi2_lfiwax): Likewise.
	(extendsfdf2_fpr): Likewise.
	(mov<mode>_hardfloat, SF/SD modes): Likewise.
	(mov<mode>_hardfloat32, DF/DD modes): Likewise.
	(mov<mode>_hardfloat64, DF/DD modes): Likewise.
	(movdi_internal64): Likewise.

[gcc/testsuite]
2013-09-27  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/p8vector-ldst.c: New test for -mupper-regs-sf
	and -mupper-regs-df.

From-SVN: r202984
2013-09-27 19:33:52 +00:00
Ian Lance Taylor
8bcd5487e5 reflect: Implement MakeFunc for amd64.
From-SVN: r202982
2013-09-27 17:53:46 +00:00
Diego Novillo
f6113c278a * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
From-SVN: r202981
2013-09-27 12:54:44 -04:00
Xinliang David Li
d6d1127249 vectorizer cost model enhancement
From-SVN: r202980
2013-09-27 16:48:15 +00:00
Diego Novillo
ac1857a3ef The gimple builder no longer support normal form.
The gimple builder no longer support normal form. The ssa_mode enum is
not needed now.

	* gimple.h (enum ssa_mode): Remove.

From-SVN: r202977
2013-09-27 12:23:41 -04:00
Paulo Matos
3c468b4cb9 re PR middle-end/58463 (ICE with -fdump-tree-all-all in vector indexed access)
PR middle-end/58463
        * gcc.dg/pr58463.c: New test.

From-SVN: r202976
2013-09-27 16:54:43 +02:00
Paulo Matos
0d0e2af66e * cfgloop.h (number_of_loops): Fix typo in check for null.
From-SVN: r202975
2013-09-27 16:37:48 +02:00
Jonathan Wakely
d02dae41e3 re PR libstdc++/57465 (Failed postcondition for std::function constructed with null function pointer)
PR libstdc++/57465
	* include/std/functional
	(_Function_base::_Base_manager::_M_not_empty_function): Fix overload
	for pointers.
	* testsuite/20_util/function/cons/57465.cc: New.

From-SVN: r202974
2013-09-27 15:06:09 +01:00
Jakub Jelinek
09dc585e9a re PR middle-end/58551 (ICE with abort in OpenMP SESE region inside of some loop)
PR middle-end/58551
	* tree-cfg.c (move_sese_region_to_fn): Also move loops that
	are children of outermost saved_cfun's loop, and set it up to
	be moved to dest_cfun's outermost loop.  Fix up num_nodes adjustments
	if loop != loop0 and SESE region contains bbs that belong to loop0.

	* c-c++-common/gomp/pr58551.c: New test.

From-SVN: r202972
2013-09-27 15:44:10 +02:00
Richard Sandiford
ec5a350405 rtlanal.c (must_be_base_p, [...]): Delete.
gcc/
	* rtlanal.c (must_be_base_p, must_be_index_p): Delete.
	(binary_scale_code_p, get_base_term, get_index_term): New functions.
	(set_address_segment, set_address_base, set_address_index)
	(set_address_disp): Accept the argument unconditionally.
	(baseness): Remove must_be_base_p and must_be_index_p checks.
	(decompose_normal_address): Classify as much as possible in the
	main loop.

From-SVN: r202970
2013-09-27 11:21:19 +00:00
Richard Sandiford
f91aec98e2 cse.c (count_reg_usage): Handle INT_LIST.
gcc/
	* cse.c (count_reg_usage): Handle INT_LIST.
	* lra-eliminations.c (lra_eliminate_regs_1): Likewise.
	* reginfo.c (reg_scan_mark_refs): Likewise.
	* reload1.c (eliminate_regs_1): Likewise.

From-SVN: r202969
2013-09-27 11:17:34 +00:00
Iain Sandoe
a9195970f0 re PR middle-end/58547 (rtlanal.c:5482:19: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare])
gcc:

	PR middle-end/58547
	* rtlanal.c (lsb_bitfield_op_p): Make both parts of the comparison
	signed.

From-SVN: r202967
2013-09-27 08:59:18 +00:00
Richard Biener
e6f1c50939 re PR tree-optimization/58459 (Loop invariant is not hoisted out of loop after r202525.)
2013-09-27  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/58459
	* tree-ssa-forwprop.c (forward_propagate_addr_expr): Remove
	restriction not propagating into loops.

	* gcc.dg/tree-ssa/ssa-pre-31.c: New testcase.

From-SVN: r202966
2013-09-27 08:14:53 +00:00
GCC Administrator
6bda61a272 Daily bump.
From-SVN: r202964
2013-09-27 00:16:56 +00:00
Tim Shen
d4e1260101 regex_error.h: Remove _S_error_last to follow the standard.
2013-09-26  Tim Shen  <timshen91@gmail.com>

	* regex_error.h: Remove _S_error_last to follow the standard.
	* regex_scanner.tcc:
	(_Scanner<_FwdIter>::_M_scan_in_brace): Change error_brace to
	error_badbrace.
	(_Scanner<>::_M_eat_escape_posix): Extended doesn't support
	back-reference.
	* testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
	Move here from ../../extended.
	* testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
	Likewise.

From-SVN: r202958
2013-09-26 21:48:04 +00:00
Bernd Edlinger
13b670acd3 re PR fortran/58113 (gfortran.dg/round_4.f90 FAILs)
2013-09-26  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR fortran/58113
        * gfortran.dg/round_4.f90: Check for rounding support.

From-SVN: r202954
2013-09-26 17:44:13 +00:00
Florian Weimer
84f48495e9 tree-ssa.h (walk_use_def_chains_fn, [...]): Delete.
2013-09-26  Florian Weimer  <fw@deneb.enyo.de>

	* tree-ssa.h (walk_use_def_chains_fn, walk_use_def_chains): Delete.
	* tree-ssa.c (walk_use_def_chains_1, walk_use_def_chains): Delete.
	* doc/tree-ssa.texi (Walking use-def chains): Delete.

From-SVN: r202951
2013-09-26 18:39:28 +02:00
Richard Biener
74fc8b8ab9 tree-into-ssa.c (rewrite_into_ssa): Make more SSA names to anonymous.
2013-09-26  Richard Biener  <rguenther@suse.de>

	* tree-into-ssa.c (rewrite_into_ssa): Make more SSA names
	to anonymous.

From-SVN: r202949
2013-09-26 15:57:39 +00:00
Richard Biener
b4ada06544 alias.h (component_uses_parent_alias_set): Rename to ...
2013-09-26  Richard Biener  <rguenther@suse.de>

	* alias.h (component_uses_parent_alias_set): Rename to ...
	(component_uses_parent_alias_set_from): ... this.
	* alias.c (component_uses_parent_alias_set): Rename to ...
	(component_uses_parent_alias_set_from): ... this and return
	the desired parent.
	(reference_alias_ptr_type_1): Use the result from
	component_uses_parent_alias_set_from instead of stripping
	components one at a time.
	* emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust.

From-SVN: r202948
2013-09-26 15:15:28 +00:00
James Greenhalgh
1aab66787a Fix PR58513 for -fPIC
gcc/testsuite/

	* g++.dg/vect/pr58513.cc (op): Make static.

From-SVN: r202947
2013-09-26 14:08:44 +00:00
Andrew MacLeod
78bca40d1d tree-ssa-live.h (find_replaceable_exprs, [...]): Move prototypes to...
2013-09-26  Andrew MacLeod  <amacleod@redhat.com>

	* tree-ssa-live.h (find_replaceable_exprs, dump_replaceable_exprs): Move
	prototypes to...
	* tree-ssa-ter.h: New File.  Move prototypes here.
	* tree-flow.h (stmt_is_replaceable_p): Remove prototype.
	* tree-outof-ssa.h: New. Rename ssaexpand.h, include tree-ssa-ter.h.
	* tree-outof-ssa.c (ssa_is_replaceable_p): New.  Refactor common bits
	from is_replaceable_p. 
	* tree-ssa-ter.c (is_replaceable_p, stmt_is_replaceable_p): Delete.
	(ter_is_replaceable_p): New.  Use new refactored ssa_is_replaceable_p.
	(process_replaceable): Use ter_is_replaceable_p.
	(find_replaceable_in_bb): Use ter_is_replaceable_p.
	* expr.c (stmt_is_replaceable_p): Relocate from tree-ssa-ter.c.  Use
	newly refactored ssa_is_replaceable_p.
	* cfgexpand.c: Include tree-outof-ssa.h.
	* ssaexpand.h: Delete.

From-SVN: r202946
2013-09-26 13:38:54 +00:00
Andrew MacLeod
ff2a63a749 gimple.c (gimple_replace_lhs): Move to tree-ssa.c and rename.
2013-09-26  Andrew MacLeod <amacleod@redhat.com>

	* gimple.c (gimple_replace_lhs): Move to tree-ssa.c and rename.
	(struct count_ptr_d, count_ptr_derefs, count_uses_and_derefs): Move to
	tree-ssa.c
	(create_gimple_tmp): Delete.
	(get_expr_type, build_assign, build_type_cast): Move to...
	* gimple-builder.c: New File.
	(get_expr_type): Relocate from gimple.c.
	(build_assign, build_type_cast): Change to only create ssanames.
	* gimple.h: Move prototypes to...
	* gimple-builder.h: New File. Here.
	* tree-ssa.h: And here.
	* tree-ssa.c (struct count_ptr_d, count_ptr_derefs,
	count_uses_and_derefs): Relocate from gimple.c.
	(gimple_replace_ssa_lhs): Renamed gimple_replace_ssa from gimple.c
	* tree-ssa-reassoc.c (repropagate_negates): Use gimple_replace_ssa_lhs.
	* tree-ssa-math-opts (execute_cse_reciprocals): Use
	gimple_replace_ssa_lhs.
	* asan.c: Include gimple-builder.h.
	* Makefile.in: Add gimple-builder.o.

From-SVN: r202945
2013-09-26 13:23:31 +00:00
Richard Biener
a2544177b9 tree-ssa-live.c (var_map_base_init): Handle SSA names with DECL_IGNORED_P base VAR_DECLs like anonymous SSA names.
2013-09-26  Richard Biener  <rguenther@suse.de>

	* tree-ssa-live.c (var_map_base_init): Handle SSA names with
	DECL_IGNORED_P base VAR_DECLs like anonymous SSA names.
	(loe_visit_block): Use gcc_checking_assert.
	* tree-ssa-coalesce.c (create_outofssa_var_map): Use
	gimple_assign_ssa_name_copy_p.
	(gimple_can_coalesce_p): Adjust according to the var_map_base_init
	change.

	* gcc.dg/tree-ssa/coalesce-2.c: New testcase.

From-SVN: r202944
2013-09-26 13:18:31 +00:00
David Edelsohn
6d1ca9a0f3 t-rs6000 (rs6000.o): Remove.
* config/rs6000/t-rs6000 (rs6000.o): Remove.
        (rs6000-c.o): Use COMPILE and POSTCOMPILE.

From-SVN: r202943
2013-09-26 08:53:20 -04:00
Richard Biener
46e950dbb1 re PR tree-optimization/58539 (ICE with segfault at -O3 with -g enabled on x86_64-linux-gnu)
2013-09-26  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/58539
	* tree-vect-loop.c (vect_create_epilog_for_reduction): Honor
	the fact that debug statements are not taking part in loop-closed
	SSA construction.

	* gcc.dg/torture/pr58539.c: New testcase.

From-SVN: r202942
2013-09-26 12:45:19 +00:00
Nick Clifton
40ada30a79 msp430.c (msp430_expand_epilogue): Fix compile time warning message.
* config/msp430/msp430.c (msp430_expand_epilogue): Fix compile
	time warning message.
	(msp430_print_operand_raw): Delete unused letter parameter.
	(TARGET_PRINT_OPERAND_ADDRESS): Define.
	(msp430_print_operand_address): New function.
	(msp430_print_operand): Move address printing code from here to
	new function.
	* config/msp430/msp430.md (movsipsi2): Add comment in generated
	assembler.
	(zero_extendpsisi2): Likewise.
	(extendpsisi2): New pattern.
	(andneghi3): New pattern.

From-SVN: r202941
2013-09-26 09:38:13 +00:00
Yvan Roux
38e8f66392 aarch64.opt (mlra): New option.
2013-09-26  Yvan Roux  <yvan.roux@linaro.org>

	* config/aarch64/aarch64.opt (mlra): New option.
	* config/aarch64/aarch64.c (aarch64_lra_p): New function.
	(TARGET_LRA_P): Define.

From-SVN: r202940
2013-09-26 09:09:30 +00:00
Eric Botcazou
4167e8d415 * expr.c (expand_assignment): Remove obsolete comment.
From-SVN: r202938
2013-09-26 08:04:09 +00:00
Jeff Law
5254eac41d tree-flow.h (thread_through_all_blocks): Prototype moved into tree-ssa-threadupdate.h.
* tree-flow.h (thread_through_all_blocks): Prototype moved into
	tree-ssa-threadupdate.h.
	(register_jump_thread): Similarly.
	* tree-ssa-threadupdate.h: New header file.
	* tree-ssa-dom.c: Include tree-ssa-threadupdate.h.
	* tree-vrp.c: Likewise.
	* tree-ssa-threadedge.c: Include tree-ssa-threadupdate.h.
	(thread_around_empty_blocks): Change type of path vector argument to
	an edge,type pair from just an edge.  Initialize both elements when
	appending to a jump threading path.  Tweak references to elements
	appropriately.
	(thread_across_edge): Similarly.  Release memory for the elements
	as needed.
	* tree-ssa-threadupdate.c: Include tree-ssa-threadupdate.h.
	(dump_jump_thread_path): New function broken out from
	register_jump_thread.
	(register_jump_thread): Use dump_jump_thread_path.  Change type of
	path vector entries.  Search the path for NULL edges and dump
	the path if one is found.  Tweak the conversion of path to 3-edge
	form to use the block copy type information embedded in the path.

	* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Update expected output.

From-SVN: r202933
2013-09-25 21:28:03 -06:00
GCC Administrator
9adc2b3c52 Daily bump.
From-SVN: r202931
2013-09-26 00:16:59 +00:00
Marc Glisse
34e6625aa2 re PR libstdc++/58338 (Add noexcept to functions with a narrow contract)
2013-09-25  Marc Glisse  <marc.glisse@inria.fr>

	PR libstdc++/58338
	* include/bits/forward_list.h (_Fwd_list_node_base::_M_transfer_after):
	Mark as noexcept.
	(_Fwd_list_iterator) [_Fwd_list_iterator, operator*, operator->,
	operator++, operator==, operator!=, _M_next]: Likewise.
	(_Fwd_list_const_iterator) [_Fwd_list_const_iterator, operator*,
	operator->, operator++, operator==, operator!=, _M_next]: Likewise.
	(operator==(const _Fwd_list_iterator&, const _Fwd_list_const_iterator&),
	operator!=(const _Fwd_list_iterator&, const _Fwd_list_const_iterator&)):
	Likewise.
	* include/bits/hashtable_policy.h (_Hash_node_base::_Hash_node_base,
	_Hash_node::_M_next, _Node_iterator_base::_Node_iterator_base,
	_Node_iterator_base::_M_incr, operator==(const _Node_iterator_base&,
	const _Node_iterator_base&), operator!=(const _Node_iterator_base&,
	const _Node_iterator_base&)): Likewise.
	(_Node_iterator) [_Node_iterator, operator*, operator->, operator++]:
	Likewise.
	(_Node_const_iterator) [_Node_const_iterator, operator*, operator->,
	operator++]: Likewise.
	* include/debug/safe_iterator.h (_Safe_iterator) [_Safe_iterator,
	operator=, operator*, operator->, operator++, operator--, operator[],
	operator+=, operator+, operator-=, operator-, base, operator _Iterator]:
	Likewise.
	(operator==(const _Safe_iterator&, const _Safe_iterator&),
	operator!=(const _Safe_iterator&, const _Safe_iterator&),
	operator<(const _Safe_iterator&, const _Safe_iterator&),
	operator<=(const _Safe_iterator&, const _Safe_iterator&),
	operator>(const _Safe_iterator&, const _Safe_iterator&),
	operator>=(const _Safe_iterator&, const _Safe_iterator&),
	operator-(const _Safe_iterator&, const _Safe_iterator&),
	operator+(difference_type, const _Safe_iterator&)): Likewise.
	* include/profile/iterator_tracker.h (__iterator_tracker)
	[__iterator_tracker, base, operator _Iterator, operator->, operator++,
	operator--, operator=, operator*, operator[], operator+=, operator+,
	operator-=, operator-]: Likewise.
	(operator==(const __iterator_tracker&, const __iterator_tracker&),
	operator!=(const __iterator_tracker&, const __iterator_tracker&),
	operator<(const __iterator_tracker&, const __iterator_tracker&),
	operator<=(const __iterator_tracker&, const __iterator_tracker&),
	operator>(const __iterator_tracker&, const __iterator_tracker&),
	operator>=(const __iterator_tracker&, const __iterator_tracker&),
	operator-(const __iterator_tracker&, const __iterator_tracker&),
	operator+(difference_type, const __iterator_tracker&)): Likewise.

From-SVN: r202924
2013-09-25 20:28:12 +00:00
Tobias Burnus
7017a7a9f8 re PR fortran/58436 ([OOP] ICE (segfault) in generate_finalization_wrapper for CLASS(*))
2013-09-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58436
        * class.c (generate_finalization_wrapper): Handle CLASS(*).

2013-09-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58436
        * gfortran.dg/finalize_21.f90: New.

From-SVN: r202923
2013-09-25 21:56:20 +02:00
Tobias Burnus
71e482dcc0 re PR fortran/57697 ([OOP] Segfault with defined assignment for components during intrinsic assignment)
2013-09-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57697
        PR fortran/58469
        * resolve.c (generate_component_assignments): Avoid double free
        at runtime and freeing a still-being used expr.

2013-09-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57697
        PR fortran/58469
        * gfortran.dg/defined_assignment_8.f90: New.
        * gfortran.dg/defined_assignment_9.f90: New.

From-SVN: r202922
2013-09-25 21:54:12 +02:00
Jayant Sonar
2272ddac7e Updating my mail ID.
From-SVN: r202921
2013-09-25 19:04:13 +00:00
Caroline Tice
56fc78353e Fix issue with libvtv testsuite being run (and failing)
when GCC was not configured with --enable-vtable-verify.

From-SVN: r202918
2013-09-25 11:44:48 -07:00
Yvan Roux
20f114a35a lra.c (update_inc_notes): Remove all REG_DEAD and REG_UNUSED notes.
2013-09-25  Yvan Roux  <yvan.roux@linaro.org>

	* lra.c (update_inc_notes): Remove all REG_DEAD and REG_UNUSED notes.

From-SVN: r202915
2013-09-25 18:35:02 +00:00
Yvan Roux
3936bafc7e rtlanal.c (lsb_bitfield_op_p): New predicate for bitfield operations from the least significant bit.
2013-09-25  Yvan Roux  <yvan.roux@linaro.org>
	    Vladimir Makarov  <vmakarov@redhat.com>

	* rtlanal.c (lsb_bitfield_op_p): New predicate for bitfield operations
	from the least significant bit.
	(strip_address_mutations): Add bitfield operations handling.
	(must_be_index_p): Add shifting and rotate operations handling.
	(set_address_base): Use must_be_base_p predicate.
	(set_address_index):Use must_be_index_p predicate.


Co-Authored-By: Vladimir Makarov <vmakarov@redhat.com>

From-SVN: r202914
2013-09-25 18:31:13 +00:00
Alexander Ivchenko
b86f6e9e46 i386.c (ix86_avx256_split_vector_move_misalign): Use new names.
* config/i386/i386.c (ix86_avx256_split_vector_move_misalign):
	Use new names.
	(ix86_expand_vector_move_misalign): Support new unaligned load and
	stores and use new names.
	(CODE_FOR_sse2_storedqu): Rename to ...
	(CODE_FOR_sse2_storedquv16qi): ... this.
	(CODE_FOR_sse2_loaddqu): Rename to ...
	(CODE_FOR_sse2_loaddquv16qi): ... this.
	(CODE_FOR_avx_loaddqu256): Rename to ...
	(CODE_FOR_avx_loaddquv32qi): ... this.
	(CODE_FOR_avx_storedqu256): Rename to ...
	(CODE_FOR_avx_storedquv32qi): ... this.
	* config/i386/i386.md (fpint_logic): New.
	* config/i386/sse.md (VMOVE): Extend for AVX512.
	(VF): Ditto.
	(VF_128_256): New.
	(VF_512): Ditto.
	(VI_UNALIGNED_LOADSTORE): Ditto.
	(sse2_avx_avx512f): Ditto.
	(sse2_avx2): Extend for AVX512.
	(sse4_1_avx2): Ditto.
	(avx2_avx512f): New.
	(sse): Extend for AVX512.
	(sse2): Ditto.
	(sse4_1): Ditto.
	(avxsizesuffix): Ditto.
	(sseintvecmode): Ditto.
	(ssePSmode): Ditto.
	(<sse>_loadu<ssemodesuffix><avxsizesuffix>): Ditto.
	(<sse>_storeu<ssemodesuffix><avxsizesuffix>): Ditto.
	(<sse2>_loaddqu<avxsizesuffix>): Extend for AVX512 and rename to ...
	(<sse2_avx_avx512f>_loaddqu<mode>): ... this.
	(<sse2>_storedqu<avxsizesuffix>): Extend for AVX512 and rename to ...
	(<sse2_avx_avx512f>_storedqu<mode): ... this.
	(<sse>_movnt<mode>): Replace constraint "x" with "v".
	(STORENT_MODE): Extend for AVX512.
	(*absneg<mode>2): Replace constraint "x" with "v".
	(*mul<mode>3): Ditto.
	(*ieee_smin<mode>3): Ditto.
	(*ieee_smax<mode>3): Ditto.
	(avx_cmp<mode>3): Replace VF with VF_128_256.
	(*<sse>_maskcmp<mode>3_comm): Ditto.
	(<sse>_maskcmp<mode>3): Ditto.
	(<sse>_andnot<mode>3): Extend for AVX512.
	(<code><mode>3, anylogic): Replace VF with VF_128_256.
	(<code><mode>3, fpint_logic): New.
	(*<code><mode>3): Extend for AVX512.
	(avx512flogicsuff): New.
	(avx512f_<logic><mode>): Ditto.
	(<sse>_movmsk<ssemodesuffix><avxsizesuffix>): Replace VF with
	VF_128_256.
	(<sse4_1>_blend<ssemodesuffix><avxsizesuffix>): Ditto.
	(<sse4_1>_blendv<ssemodesuffix><avxsizesuffix>): Ditto.
	(<sse4_1>_dp<ssemodesuffix><avxsizesuffix>): Ditto.
	(avx_vtest<ssemodesuffix><avxsizesuffix>): Ditto.
	(<sse4_1>_round<ssemodesuffix><avxsizesuffix>): Ditto.
	(xop_vpermil2<mode>3): Ditto.
	(*avx_vpermilp<mode>): Extend for AVX512 and rename to ...
	(*<sse2_avx_avx512f>_vpermilp<mode>): ... this.
	(avx_vpermilvar<mode>3): Extend for AVX512 and rename to ...
	(<sse2_avx_avx512f>_vpermilvar<mode>3): ... this.


Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>

From-SVN: r202913
2013-09-25 18:01:43 +00:00
Tom Tromey
4d44d03c72 * Makefile.in (PARTITION_H, LTO_SYMTAB_H, COMMON_TARGET_DEF_H)
(RTL_ERROR_H, TRANS_MEM_H, COVERAGE_H, DEMANGLE_H, ALIAS_H)
	(SCHED_INT_H, SEL_SCHED_IR_H, SEL_SCHED_DUMP_H, VALTRACK_H, DDG_H)
	(GGC_INTERNAL_H, DECNUM_H, BACKTRACE_H, MKDEPS_H, TREE_HASHER_H)
	(TREE_SSA_LIVE_H, SSAEXPAND_H, DWARF2OUT_H, SCEV_H, OMEGA_H)
	(TREE_DATA_REF_H, IRA_INT_H, LRA_INT_H, DBGCNT_H, DATA_STREAMER_H)
	(GIMPLE_STREAMER_H, TREE_STREAMER_H, STREAMER_HOOKS_H)
	(TREE_VECTORIZER_H, IPA_INLINE_H, GSTAB_H, LIBFUNCS_H)
	(GRAPHITE_HTAB_H): Remove.

From-SVN: r202912
2013-09-25 16:33:30 +00:00