Commit Graph

141053 Commits

Author SHA1 Message Date
Steven G. Kargl
b64c3d0696 re PR fortran/67616 (ICE on data initialization of type variable in block)
2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/67616
	* primary.c (gfc_match_structure_constructor): Use a possibly
	host-associated symtree to prevent ICE.

2015-10-01  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/67616
	* gfortran.dg/pr67616.f90: New test.

From-SVN: r228363
2015-10-02 00:45:59 +00:00
GCC Administrator
88a2711ce9 Daily bump.
From-SVN: r228362
2015-10-02 00:16:15 +00:00
Aditya Kumar
0afd32be3c use sese_l throughout scop-detection
Use sese_l throughout SCoP detection and create vec<scop_p> at the very end when
all SCoPs have been identified. 'struct sese_l' is very lightweight (two
pointers) compared to 'struct scop'.

No functional change intended. Passes regtest and bootstrap.

gcc/ChangeLog:

2015-10-01  Aditya Kumar  <hiraditya@msn.com>

        * graphite-scop-detection.c (struct sese_l): New conversion constructor
          so that this type can be pushed into a vec.
        (class scop_builder): use sese_l to collect scops.
        (get_scops): New getter function.
        (remove_intersecting_scops): Use sese_l instead of scops_p.
        (intersects): Same.
        (add_scop): Same.
        (subsumes): Same.
        (remove_subscops): Same.
        (build_scops): Add scops to vec<scops_p> once all the scops have been
        detected.

From-SVN: r228359
2015-10-01 22:04:20 +00:00
Aditya Kumar
65ef70d695 Rename gimple_bb to gimple_poly_bb
Renaming gimple_bb to gimple_poly_bb because there is a function gimple_bb
by the same name in gimple.h. No functional change intended.
Passes regtest and bootstrap.

gcc/ChangeLog:

2015-10-01  Aditya Kumar  <hiraditya@msn.com>

        * graphite-isl-ast-to-gimple.c (class translate_isl_ast_to_gimple):
	Renamed type from gimple_bb_p to gimple_poly_bb_p.
        (translate_isl_ast_node_user): Same.
        * graphite-poly.c (new_poly_bb): Same.
        * graphite-poly.h (gbb_from_bb): Same.
        * sese.h: Same.
        * graphite-sese-to-poly.c (new_gimple_bb): gimple_bb_p -> gimple_poly_bb_p
        (build_scop_scattering): Same.
        (find_params_in_bb): Same.
        (add_conditions_to_domain): Same.
        (sese_dom_walker::before_dom_children): Same.
        (analyze_drs_in_stmts): Same.
        (new_pbb_from_pbb): Same.
        (free_data_refs_aux): New pointer to type base_alias_pair.
        * graphite-sese-to-poly.h: Same.
        * sese.c (if_region_set_false_region): Fixed Indentation.
        (move_sese_in_condition): Same.

From-SVN: r228358
2015-10-01 22:04:14 +00:00
Sebastian Pop
6652875ffe correctly handle non affine data references
2015-10-01  Sebastian Pop  <s.pop@samsung.com>
            Aditya Kumar  <aditya.k7@samsung.com>
        PR tree-optimization/66980
        * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Return false
        when data reference analysis has failed.

Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com>

From-SVN: r228357
2015-10-01 22:04:07 +00:00
Ville Voutilainen
55fec44def re PR c++/54430 ([C++11] For-Loop: Scope of iterating variable begins too early)
PR c++/54430

/cp
2015-10-01  Ville Voutilainen  <ville.voutilainen@gmail.com>

	PR c++/54430
	* name-lookup.c (push_binding): Make non-static.
	* name-lookup.h (push_binding): Declare it.
	* parser.c (cp_parser_range_for): Use it, get the range
	declaration away from the scope until the range expression
	has been parsed, then restore the declaration.

/testsuite
2015-10-01  Ville Voutilainen  <ville.voutilainen@gmail.com>

	PR c++/54430
	* g++.dg/cpp0x/range-for30.C: New.

From-SVN: r228354
2015-10-01 22:22:08 +03:00
Joseph Myers
0d1a8f7517 Do not describe -std=c11 etc. as experimental in c.opt help text.
I noticed that c.opt still described -std=c11 and related options as
experimental in the --help text.  This patch fixes this.

Bootstrapped with no regressions on x86_64-pc-linux-gnu.

	* c.opt (std=c11): Do not describe as experimental.
	(std=gnu11): Likewise.
	(std=iso9899:2011): Likewise.

From-SVN: r228349
2015-10-01 18:00:14 +01:00
Jonathan Wakely
7b8089a3c6 * doc/html/manual/errno.html: Add new file.
From-SVN: r228348
2015-10-01 17:02:54 +01:00
Sebastian Pop
95ad241797 call scev analysis in scop-detection as in sese-to-poly
Before our rewrite of the scop detection, we used to not have a valid SESE
region under hand, and so we used to do more ad-hoc analysis of data references
by trying to prove that at all levels of a loop nest the data references would
be still valid.

Now that we have a valid SESE region, we can call the scev analysis in the same
way on the same computed loop nest in the scop-detection as in the sese-to-poly.

Next step will be to cache the data references analyzed in the scop detection
and not compute the same info in sese-to-poly.

The patch fixes block-1.f90 that used to ICE on x86_64-linux when compiled with
-m32.  Patch passed bootstrap with BOOT_CFLAGS="-g -O2 -fgraphite-identity
-floop-nest-optimize" and check on x86_64-linux using ISL-0.15.

2015-09-28  Sebastian Pop  <s.pop@samsung.com>
	Aditya Kumar  <aditya.k7@samsung.com>

	PR tree-optimization/67754
	* graphite-scop-detection.c (stmt_has_simple_data_refs_p): Call
	scev analysis on the same loop nest as analyze_drs_in_stmts.
	* graphite-sese-to-poly.c (outermost_loop_in_sese_1): Moved and renamed...
	(try_generate_gimple_bb): Call outermost_loop_in_sese.
	(analyze_drs_in_stmts): Same.
	* sese.c (outermost_loop_in_sese): ...here.

Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com>

From-SVN: r228347
2015-10-01 15:17:58 +00:00
Sebastian Pop
cf72400ff3 add recursion on the inner loops
We now check that all data references in the current loop and inner loops
contained within loop are valid in an outer region before declaring that the
outer loop is a valid scop.

2015-09-30  Sebastian Pop  <s.pop@samsung.com>
	    Aditya Kumar  <aditya.k7@samsung.com>

	PR tree-optimization/67754
	* graphite-scop-detection.c (loop_body_is_valid_scop): Add missing
	recursion on the inner loops.

Co-Authored-By: Aditya Kumar <aditya.k7@samsung.com>

From-SVN: r228346
2015-10-01 15:17:51 +00:00
Trevor Saunders
526ceb6836 remove many typedefs
gcc/ChangeLog:

2015-10-01  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* cfganal.c, compare-elim.c, coverage.c, cprop.c, df-scan.c,
	function.c, read-rtl.c, statistics.c, trans-mem.c, tree-if-conv.c,
	tree-into-ssa.c, tree-loop-distribution.c, tree-ssa-coalesce.c,
	tree-ssa-loop-ivopts.c, tree-ssa-reassoc.c, tree-ssa-strlen.c,
	tree-ssa-tail-merge.c, tree-vrp.c, var-tracking.c: Remove
unneeded typedefs.

From-SVN: r228344
2015-10-01 15:12:31 +00:00
Marek Polacek
f6f69fb09c re PR c/65345 (ICE with _Generic selection on _Atomic int)
PR c/65345
	* config/i386/i386.c (ix86_atomic_assign_expand_fenv): Adjust to use
	create_tmp_var_raw rather than create_tmp_var.

	* gcc.dg/atomic/pr65345-4.c: New test.
	* gcc.dg/pr65345-3.c: New test.

From-SVN: r228343
2015-10-01 14:53:10 +00:00
Ian Lance Taylor
209919e2fd re PR go/66870 (split stack issues on ppc64le and ppc64)
PR go/66870
	* gospec.c (lang_specific_driver): Only look for OPT_m32 if
	TARGET_CAN_SPLIT_STACK_64BIT is defined.

From-SVN: r228342
2015-10-01 14:43:57 +00:00
Marek Polacek
9edaabf3d2 re PR tree-optimization/67769 (VRP pass does wrong optimization)
PR tree-optimization/67769
	* tree-ssa-phiopt.c (conditional_replacement): Call
	reset_flow_sensitive_info_in_bb.
	(minmax_replacement): Likewise.
	(abs_replacement): Likewise.

	* gcc.dg/torture/pr67769.c: New test.

From-SVN: r228341
2015-10-01 14:25:42 +00:00
Nathan Sidwell
4812613802 builtins.c: Don't include gomp-constants.h.
* builtins.c: Don't include gomp-constants.h.
	(fold_builtin_1): Don't fold acc_on_device here.
	* gimple-fold.c: Include gomp-constants.h.
	(gimple_fold_builtin_acc_on_device): New.
	(gimple_fold_builtin): Call it.

From-SVN: r228340
2015-10-01 14:13:30 +00:00
H.J. Lu
d878e79bf8 Enable bt and and movzx for Lakemont
* config/i386/x86-tune.def (X86_TUNE_USE_BT): Enable for
	Lakemont.
	(X86_TUNE_ZERO_EXTEND_WITH_AND): Disable for Lakemont.

From-SVN: r228337
2015-10-01 06:34:49 -07:00
Uros Bizjak
91470073d6 pr55113_0.c: Skip on all x86 targets.
* gcc.dg/lto/pr55113_0.c: Skip on all x86 targets.

From-SVN: r228334
2015-10-01 14:46:19 +02:00
Oleg Endo
7e623de550 Fix typo in ChangeLog.
From-SVN: r228333
2015-10-01 12:38:28 +00:00
Oleg Endo
298b0f3f70 re PR target/54236 ([SH] Improve addc and subc insn utilization)
gcc/testsuite/
	PR target/54236
	* gcc.target/sh/pr54236-6.c: Fix assembler-no string.

From-SVN: r228332
2015-10-01 12:36:15 +00:00
Jonathan Wakely
f14decafae Save-and-restore errno more carefully in libstdc++
* doc/xml/manual/diagnostics.xml: Document use of errno.
	* doc/html/*: Regenerate.
	* config/locale/generic/c_locale.cc (_Save_errno): New helper.
	(__convert_to_v): Use _Save_errno.
	* include/ext/string_conversions.h (__stoa): Only restore errno when
	it isn't set to non-zero.

From-SVN: r228328
2015-10-01 12:23:39 +01:00
Marek Polacek
aabef2de2f * c-typeck.c (convert_for_assignment): Improve commentary.
From-SVN: r228327
2015-10-01 10:14:39 +00:00
Uros Bizjak
228ae4702c pr65105-1.c: Require sse2 effective target.
* gcc.target/i386/pr65105-1.c: Require sse2 effective target.
	(main): Rename to sse2_test.  Abort if count != 5.
	(dg-options): Add -save-temps.  Use "-msse2 -mtune=slm" instead
	of -march=slm.
	* gcc.target/i386/pr46865-2.c (dg-options): Remove -save-temps.

From-SVN: r228326
2015-10-01 12:06:27 +02:00
James Greenhalgh
295bdf5c3b [ChangeLog] Fix typo in 228324.
s/Liekwise/Likewise/

From-SVN: r228325
2015-10-01 09:36:01 +00:00
James Greenhalgh
cdc1afa3c0 [Patch 2/2 ARM/AArch64] Add a new Cortex-A53 scheduling model
* config/arm/aarch-common-protos.h
	(aarch_accumulator_forwarding): New.
	(aarch_forward_to_shift_is_not_shifted_reg): Likewise.
	* config/arm/aarch-common.c (aarch_accumulator_forwarding): New.
	(aarch_forward_to_shift_is_not_shifted_reg): Liekwise.
	* config/arm/cortex-a53.md: Rewrite.

From-SVN: r228324
2015-10-01 09:33:40 +00:00
Richard Biener
34050b6bee gimple-match.h (mprts_hook): Declare.
2015-10-01  Richard Biener  <rguenther@suse.de>

	* gimple-match.h (mprts_hook): Declare.
	* gimple-match.head.c (mprts_hook): Define.
	(maybe_push_res_to_seq): Use new hook.
	* gimple-fold.c (gimple_fold_stmt_to_constant_1): Likewise.
	* tree-ssa-sccvn.h (vn_ssa_aux::expr): Change to a gimple_seq.
	(vn_ssa_aux::has_constants): Remove.
	* tree-ssa-sccvn.c: Include gimple-match.h.
	(VN_INFO_GET): Assert we don't re-use SSA names.
	(vn_get_expr_for): Remove.
	(expr_has_constants): Likewise.
	(stmt_has_constants): Likewise.
	(simplify_binary_expression): Likewise.
	(simplify_unary_expression): Likewise.
	(vn_lookup_simplify_result): New hook.
	(visit_copy): Adjust.
	(visit_reference_op_call): Likewise.
	(visit_phi): Likewise.
	(visit_use): Likewise.
	(process_scc): Likewise.
	(init_scc_vn): Likewise.
	(visit_reference_op_load): Likewise.  Use match-and-simplify and
	a gimple seq for inserted expressions.
	(try_to_simplify): Remove GENERIC stmt combining code.
	(sccvn_dom_walker::before_dom_children): Use match-and-simplify.
	* tree-ssa-pre.c (eliminate_insert): Adjust.
	(eliminate_dom_walker::before_dom_children): Likewise.

	* gcc.dg/tree-ssa/ssa-fre-7.c: Adjust.
	* gcc.dg/tree-ssa/ssa-fre-8.c: Likewise.

From-SVN: r228320
2015-10-01 07:54:26 +00:00
Segher Boessenkool
e01c66ca30 bb-reorder: Documentation updates
2015-09-23   Segher Boessenkool  <segher@kernel.crashing.org>

	* doc/invoke.texi (Optimization Options): Add
	-freorder-blocks-algorithm=.
	(Optimize Options) <-O>: Add -freorder-blocks.
	<-O2>: Remove -freorder-blocks.  Add -freorder-blocks-algorithm=stc.
	<-Os>: Add -freorder-blocks-algorithm=stc as not enabled.
	<-freorder-blocks>: Also enabled at levels -O and -Os.
	<-freorder-blocks-algorithm=>: Document new option.

From-SVN: r228319
2015-10-01 08:40:01 +02:00
Segher Boessenkool
59faab7cc4 bb-reorder: Add -freorder-blocks-algorithm= and wire it up
This adds an -freorder-blocks-algorithm=[simple|stc] flag, with "simple"
as default.  For -O2 and up (except -Os) it is switched to "stc" instead.
Targets that never want STC can override this.  This changes -freorder-blocks
to be on at -O1 and up (was -O2 and up).

In effect, the changes are for -O1 (which now gets "simple" instead of
nothing), -Os (which now gets "simple" instead of "stc", since STC results
in much bigger code), and for targets that wish to never use STC (not in
this patch though).


2015-09-23   Segher Boessenkool  <segher@kernel.crashing.org>

	* bb-reorder.c (reorder_basic_blocks): Use the algorithm selected
	with flag_reorder_blocks_algorithm.
	* common.opt (freorder-blocks-algorithm=): New flag.
	(reorder_blocks_algorithm): New enum.
	* flag-types.h (reorder_blocks_algorithm): New enum.
	* opts.c (default_options_table): Use -freorder-blocks at -O1 and up,
	and -freorder-blocks-algorithm=stc at -O2 and up (not at -Os).

From-SVN: r228318
2015-10-01 08:38:24 +02:00
Segher Boessenkool
248c16c49a bb-reorder: Add the "simple" algorithm
2015-10-01  Segher Boessenkool  <segher@kernel.crashing.org>

	* bb-reorder.c: Add intro comment.
	(reorder_basic_blocks_software_trace_cache): Print a header to
	the dump file.
	(edge_order): New function.
	(reorder_basic_blocks_simple): New function.
	(reorder_basic_blocks): Choose between the STC and the simple
	algorithms (always choose the former).

From-SVN: r228317
2015-10-01 08:35:57 +02:00
Segher Boessenkool
af71fa391d bb-reorder: Split out STC
2015-09-23   Segher Boessenkool  <segher@kernel.crashing.org>

	* bb-reorder.c (reorder_basic_blocks_software_trace_cache): New
	function, factored out from ...
	(reorder_basic_blocks): ... here.

From-SVN: r228316
2015-10-01 08:33:09 +02:00
Tom de Vries
26e5d47d44 Make dumping of function attributes resemble source syntax
2015-10-01  Tom de Vries  <tom@codesourcery.com>

	* tree-cfg.c (dump_function_to_file): Dump function attributes using
	__attribute__(()) string.  Move dumping of function attributes to before
	function name.

From-SVN: r228315
2015-10-01 05:42:50 +00:00
GCC Administrator
aeecd3d212 Daily bump.
From-SVN: r228314
2015-10-01 00:16:12 +00:00
Lynn Boger
402565b61f re PR go/66870 (split stack issues on ppc64le and ppc64)
PR target/66870
	* config/rs6000/sysv4.h (TARGET_CAN_SPLIT_STACK_64BIT): Define.
	* configure.ac: Define HAVE_GOLD_ALTERNATE_SPLIT_STACK on Power
	based on gold linker version.
	* gcc.c: Add -fuse-ld=gold to STACK_SPLIT_SPEC if
	HAVE_GOLD_ALTERNATE_SPLIT_STACK defined.
	* configure, config.in: Regenerate.
go:
	* gospec.c (lang_specific_driver): Set appropriate split stack
	options for 64 bit compiles based on TARGET_CAN_SPLIT_STACK_64BIT.

From-SVN: r228311
2015-09-30 23:06:11 +00:00
Alan Modra
7dc396e20f [RS6000] Make -msingle-pic-base remove the ELFv2 global entry code
For other ABIs, -msingle-pic-base makes gcc omit loading of the PIC
register in function prologues.  This patch makes the option affect
ELFv2 too.

	* config/rs6000/rs6000.c (rs6000_emit_prologue): Don't set
	r2_setup_needed when TARGET_SINGLE_PIC_BASE.
	(rs6000_output_mi_thunk): Likewise.

From-SVN: r228309
2015-10-01 07:49:18 +09:30
Nathan Sidwell
cc3cd79bc2 mkoffload.c (process): Change offload data format.
gcc/
	* config/nvptx/mkoffload.c (process): Change offload data format.

	libgomp/
	* plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
	(struct targ_ptx_obj): New.
	(nvptx_tdata): Move earlier, change data format.
	(link_ptx): Take targ_ptx_obj ptr and count.  Allow multiple
	objects.
	(GOMP_OFFLOAD_load_image): Adjust.

Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>

From-SVN: r228308
2015-09-30 21:35:47 +00:00
Alan Modra
c57173b69a [RS6000] Correct powerpc sysv stack argument accounting
ppc32 starts using the stack for integer arg passing when we run out
of integer arg passing registers.  Similarly, we start using the stack
for floating point args when we run out of floating point registers.
The decision on where an integer arg goes does not depend on number of
floating point args, nor does the decision on where a floating point
arg goes depend on number of integer args.  Alignment of stack args
also simply depends on number of stack args.

This patch untangles the horrible mess we had, with intarg_count being
wrongly used to count both integer args and stack words.

	* src/powerpc/ffi_sysv.c (ffi_prep_cif_sysv_core): Count fprs,
	gprs, and stack words separately.
	(ffi_prep_args_SYSV): Similarly.

From-SVN: r228307
2015-10-01 06:59:00 +09:30
Jeff Law
d64f8dd280 [PATCH] Improve DOM's optimization of control statements
* tree-ssa-dom.c (optimize_stmt): Collapse control flow statements
	with constant conditions.
	* tree-ssa-threadupdate.c (remove_jump_threads_starting_at): New.
	(remove_ctrl_stmt_and_useless_edges): No longer static.
	* tree-ssa-threadupdate.h (remove_jump_threads_starting_at): Prototype.
	(remove_ctrl_stmt_and_useless_edges): Likewise.

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

From-SVN: r228306
2015-09-30 14:28:14 -06:00
François Dumont
9702ee6a6f messages_members.cc (Catalog_info, Catalogs): Move...
2015-09-30  François Dumont  <fdumont@gcc.gnu.org>
	    Jonathan Wakely  <jwakely@redhat.com>

	* config/locale/gnu/messages_members.cc (Catalog_info, Catalogs):
	Move...
	* config/locale/gnu/c++locale_internal.h: ...here in std namespace.
	* config/locale/gnu/c_locale.cc: Move implementation of latter here.
	* src/c++98/Makefile.am: Compile c++locale.cc with -fimplicit-templates.
	* src/c++98/Makefile.in: Regenerate.
	* config/abi/pre/gnu.ver: Adjust.

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

From-SVN: r228305
2015-09-30 20:04:43 +00:00
Nathan Sidwell
94829f87ca nvptx.c (nvptx_goacc_validate_dims): New.
* config/nvptx/nvptx.c (nvptx_goacc_validate_dims): New.
	(TARGET_GOACC_VALIDATE_DIMS): Override.
	* target.def (TARGET_GOACC): New target hook prefix.
	(validate_dims): New hook.
	* targhooks.h (default_goacc_validate_dims): New.
	* omp-low.c (oacc_validate_dims): New.
	(execute_oacc_device_lower): New.
	(default_goacc_validate_dims): New.
	(pass_data_oacc_device_lower): New.
	(pass_oacc_device_lower): New pass.
	(make_pass_oacc_device_lower): New.
	* tree-pass.h (make_pass_oacc_device_lower): Declare.
	* passes.def (pass_oacc_device_lower): Add it.
	* doc/tm.texi: Rebuilt.
	* doc/tm.texi.in (TARGET_GOACC_VALIDATE_DIMS): Add hook.
	* doc/invoke.texi (oaccdevlow): Document tree dump flag.

Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>

From-SVN: r228304
2015-09-30 19:16:29 +00:00
Bernd Edlinger
9a9fe2b4d2 re PR rtl-optimization/67037 (Wrong code at -O1 and above on ARM)
2015-09-30  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR rtl-optimization/67037
        * lra-constraints.c (process_addr_reg): Use copy_rtx when necessary.

testsuite:
2015-09-30  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR rtl-optimization/67037
        * gcc.c-torture/execute/pr67037.c: New test.

From-SVN: r228303
2015-09-30 18:51:31 +00:00
Bernd Schmidt
dc0ccbb3a3 [PATCH] Update SSA_NAME manager to use two lists
* gimple-ssa.h (gimple_df): Add free_ssanames_queue field.
	* passes.c: Include tree-ssanames.h.
	(execute_function_todo): Flush the pending free SSA_NAMEs after
	eliminating unreachable basic blocks.
	* tree-ssanames.c (FREE_SSANAMES_QUEUE): new.
	(init_ssanames): Initialize FREE_SSANAMES_QUEUE.
	(fini_ssanames): Finalize FREE_SSANAMES_QUEUE.
	(flush_ssanames_freelist): New function.
	(release_ssaname_fn): Put released names on the queue.
	(pass_release_ssa_names::execute): Call flush_ssanames_freelist.
	* tree-ssanames.h (flush_ssanames_freelist): Declare.

From-SVN: r228302
2015-09-30 11:43:26 -06:00
Thomas Schwinge
0fe78d19df Pass on the verbose flag "-v" to/in the mkoffloads
gcc/
	* config/i386/intelmic-mkoffload.c (main): Parse "-v" flag.
	(generate_target_descr_file, generate_target_offloadend_file)
	(generate_host_descr_file, prepare_target_image, main): Pass it
	on.
	* config/nvptx/mkoffload.c (main): Parse "-v" flag.
	(compile_native, main): Pass it on.
	* lto-wrapper.c (compile_offload_image): Likewise.

From-SVN: r228301
2015-09-30 18:42:32 +02:00
Thomas Schwinge
8c30df3ed1 Refactor intelmic-mkoffload.c argv building to use obstacks
That is, restore and adapt the code as originally proposed.

	gcc/
	* config/i386/intelmic-mkoffload.c (generate_host_descr_file)
	(prepare_target_image, main): Refactor argv building to use
	obstacks.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>

From-SVN: r228300
2015-09-30 18:42:22 +02:00
Thomas Schwinge
fa83660d56 More DEF_FUNCTION_TYPE_VAR_6/DEF_FUNCTION_TYPE_VAR_11 cleanup
gcc/ada/
	* gcc-interface/utils.c (DEF_FUNCTION_TYPE_VAR_11): Don't define.
	gcc/jit/
	* jit-builtins.h: Undefine DEF_FUNCTION_TYPE_VAR_6 after use.

Co-Authored-By: Ulrich Drepper <drepper@gmail.com>

From-SVN: r228298
2015-09-30 17:14:29 +02:00
Ulrich Weigand
99400eed8d spu-protos.h (spu_expand_atomic_op): Add prototype.
gcc/
	* config/spu/spu-protos.h (spu_expand_atomic_op): Add prototype.
	* config/spu/spu.c (spu_expand_atomic_op): New function.
	* config/spu/spu.md (AINT): New mode iterator.
	(ATOMIC): New code iterator.
	(atomic_name, atomic_pred): New code predicates.
	("atomic_load<mode>", "atomic_store<mode>"): New expanders.
	("atomic_compare_and_swap<mode>", "atomic_exchange<mode>"): Likewise.
	(""atomic_<atomic_name><mode>", "atomic_fetch_<atomic_name><mode>",
	"atomic_<atomic_name>_fetch<mode>"): Likewise.

gcc/testsuite/
	* lib/target-supports.exp (check_effective_target_sync_int_128):
	Return 1 on spu-*-* targets.
	(check_effective_target_sync_int_128_runtime): Likewise.
	(check_effective_target_sync_long_long): Likewise.
	(check_effective_target_sync_long_long_runtime): Likewise.
	(check_effective_target_sync_int_long): Likewise.
	(check_effective_target_sync_char_short): Likewise.

From-SVN: r228297
2015-09-30 14:58:49 +00:00
Ilya Enkovich
21b820644d i386.c (scalar_chain::analyze_register_chain): Ignore debug insns.
gcc/

	* config/i386/i386.c (scalar_chain::analyze_register_chain): Ignore
	debug insns.
	(scalar_chain::convert_reg): Likewise.

gcc/testsuite/

	* gcc.target/i386/pr67761.c: New test.

From-SVN: r228292
2015-09-30 13:08:01 +00:00
Matthias Klose
eea10f8c50 alpha, ia64: Remove empty directories.
2015-09-30  Matthias Klose  <doko@ubuntu.com>

        * config/cpu/alpha, config/cpu/ia64: Remove empty directories.

From-SVN: r228291
2015-09-30 12:55:05 +00:00
Richard Biener
25ab3b0a30 builtins.c: Add comment that no new simplifications shouldd be added here.
2015-09-30  Richard Biener  <rguenther@suse.de>

	* builtins.c: Add comment that no new simplifications shouldd
	be added here.

From-SVN: r228290
2015-09-30 12:52:37 +00:00
Matthias Klose
20a44562a6 2015-09-30 Matthias Klose <doko@ubuntu.com>
* jit-builtins.h Define DEF_FUNCTION_TYPE_VAR_6,
        remove DEF_FUNCTION_TYPE_VAR_11.
        * jit-builtins.c (builtins_manager::make_type): Define and handle
        DEF_FUNCTION_TYPE_VAR_6, remove DEF_FUNCTION_TYPE_VAR_11.

From-SVN: r228289
2015-09-30 12:42:44 +00:00
Marek Polacek
de8ddd5fb1 re PR c/67730 (No warning when returning NULL in void function)
PR c/67730
	* c-typeck.c (c_finish_return): Use the expansion point location for
	certain "return with value" warnings.

	* gcc.dg/pr67730.c: New test.

From-SVN: r228286
2015-09-30 11:26:44 +00:00
Marek Polacek
6ea2f74cf9 re PR tree-optimization/67690 (wrong code with -O2 on x86_64/Linux)
PR tree-optimization/67690
	* tree-ssa-ifcombine.c (pass_tree_ifcombine::execute): Call
	reset_flow_sensitive_info_in_bb.
	* tree-ssa-tail-merge.c (replace_block_by): Likewise.
	* tree-ssanames.c: Include "gimple-iterator.h".
	(reset_flow_sensitive_info_in_bb): New function.
	* tree-ssanames.h (reset_flow_sensitive_info_in_bb): Declare.

	* gcc.dg/torture/pr67690.c: New test.

From-SVN: r228284
2015-09-30 09:24:02 +00:00