Commit Graph

159947 Commits

Author SHA1 Message Date
Jason Merrill
a5e2a41f97 PR c++/84314 - ICE with templates and fastcall attribute.
* attribs.c (build_type_attribute_qual_variant): Remove assert.

From-SVN: r257883
2018-02-21 17:12:08 -05:00
Jan Hubicka
5d4991da5c * ipa-cp.c (determine_versionability): Fix comment typos.
From-SVN: r257878
2018-02-21 20:11:15 +00:00
Jan Hubicka
ea49d40b3e re PR c/84229 (A valid code rejected with -flto)
PR c/84229
	* ipa-cp.c (determine_versionability): Do not version functions caling
	va_arg_pack.

From-SVN: r257877
2018-02-21 19:05:30 +00:00
Jason Merrill
e68757438d PR c++/84454 - ICE with pack expansion in signature.
* error.c (find_typenames_r): Also stop on EXPR_PACK_EXPANSION.

From-SVN: r257875
2018-02-21 09:25:54 -05:00
Martin Liska
a08b5429c1 Add "native" as a valid option value for -march= on aarch64 (PR driver/83193).
2018-02-21  Martin Liska  <mliska@suse.cz>

	PR driver/83193
	* config/aarch64/aarch64.c (aarch64_print_hint_for_core_or_arch):
	Add "native" as a possible value.
	* config/aarch64/aarch64.h (HAVE_LOCAL_CPU_DETECT):  Define
	the macro when native cpu detection is available.

From-SVN: r257874
2018-02-21 14:05:45 +00:00
Martin Liska
a646fe9c48 Add "native" as a valid option value for -march= on arm (PR driver/83193).
2018-02-21  Martin Liska  <mliska@suse.cz>

	PR driver/83193
	* common/config/arm/arm-common.c (arm_print_hint_for_arch_option):
	Add "native" as a possible value.
	* config/arm/arm.h (HAVE_LOCAL_CPU_DETECT): Define the macro
	when native cpu detection is available.

From-SVN: r257873
2018-02-21 14:05:17 +00:00
Jakub Jelinek
c8602fe612 re PR tree-optimization/84478 (pdftex miscompilation on i386)
PR tree-optimization/84478
	* gimple-fold.h (get_range_strlen): Add a bool argument defaulted to
	false.
	* gimple-fold.c (get_range_strlen): Make minlen const and assume it
	can't be NULL.  Change FUZZY from bool to int, for 1 add PHI/COND_EXPR
	support which is conservatively correct, for 2 only stay conservative
	for maxlen.  Formatting and comment capitalization fixes.  Add STRICT
	argument to the 2 argument get_range_strlen, adjust 6 arg
	get_range_strlen caller and clear minmaxlen[0] and [1] if it returned
	false.
	(get_maxval_strlen): Adjust 6 arg get_range_strlen caller.
	(gimple_fold_builtin_strlen): Pass true as last argument to
	get_range_strlen.

	* gcc.c-torture/execute/pr84478.c: New test.

Co-Authored-By: Martin Sebor <msebor@redhat.com>

From-SVN: r257870
2018-02-21 11:35:46 +01:00
Martin Liska
b22dbd03f0 Add IntegerRange for Wcatch-value= option.
2018-02-21  Martin Liska  <mliska@suse.cz>

	* c.opt (Wcatch-value=): Add IntegerRange.

From-SVN: r257869
2018-02-21 07:57:52 +00:00
GCC Administrator
27bde1a4cc Daily bump.
From-SVN: r257868
2018-02-21 00:16:25 +00:00
Max Filippov
faef260ee8 libgcc: xtensa: fix build with -mtext-section-literals
libgcc/
2018-02-20  Max Filippov  <jcmvbkbc@gmail.com>

	* config/xtensa/ieee754-df.S (__adddf3_aux): Add
	.literal_position directive.
	* config/xtensa/ieee754-sf.S (__addsf3_aux): Likewise.

From-SVN: r257862
2018-02-20 20:55:56 +00:00
François Dumont
549b1796f1 aligned_buffer.h [...] (template<> __aligned_buffer): Define as __aligned_membuf alias.
2018-02-20  François Dumont  <fdumont@gcc.gnu.org>

	* include/ext/aligned_buffer.h [_GLIBCXX_INLINE_VERSION]
	(template<> __aligned_buffer): Define as __aligned_membuf alias.

From-SVN: r257861
2018-02-20 20:51:44 +00:00
Martin Sebor
5e27f0d5d5 PR middle-end/84095 - false-positive -Wrestrict warnings for memcpy within array
gcc/ChangeLog:

	PR middle-end/84095
	* gimple-ssa-warn-restrict.c (builtin_memref::extend_offset_range): New.
	(builtin_memref::set_base_and_offset): Same.  Handle inner references.
	(builtin_memref::builtin_memref): Factor out parts into
	set_base_and_offset and call it.

gcc/testsuite/ChangeLog:

	PR middle-end/84095
	* c-c++-common/Warray-bounds-3.c: Adjust text of expected warnings.
	* c-c++-common/Wrestrict.c: Same.
	* gcc.dg/Wrestrict-6.c: Same.
	* gcc.dg/Warray-bounds-27.c: New test.
	* gcc.dg/Wrestrict-8.c: New test.
	* gcc.dg/Wrestrict-9.c: New test.
	* gcc.dg/pr84095.c: New test.

From-SVN: r257860
2018-02-20 13:22:01 -07:00
Thomas Koenig
75b81dcdad structure_constructor_14.f90: Adjust STOP number.
2018-02-20  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* gfortran.dg/structure_constructor_14.f90: Adjust STOP number.

From-SVN: r257859
2018-02-20 19:53:42 +00:00
Richard Sandiford
2fad0cf503 re PR target/84406 ([MSP430] ICE on valid code in find_widening_optab_handler_and_mode, at optabs-query.c:476)
PR middle-end/84406
	* optabs-query.c (find_widening_optab_handler_and_mode): If from_mode
	is a scalar_int_mode, assert that to_mode is a scalar_int_mode with
	greater precision.  If to_mode is a MODE_PARTIAL_INT, stop the
	search at the associated MODE_INT.

From-SVN: r257858
2018-02-20 12:11:34 -07:00
Jeff Law
e506dc87a0 re PR middle-end/82123 (spurious -Wformat-overflow warning for converted vars)
PR middle-end/82123
	PR tree-optimization/81592
	PR middle-end/79257
	* gimple-ssa-sprintf.c (format_integer): Query EVRP range analyzer
	for range data rather than using global data.

	* gcc.dg/pr81592.c: New test.
	* gcc.dg/pr82123.c: New test.

From-SVN: r257857
2018-02-20 11:59:22 -07:00
Thomas Koenig
04946c6b90 re PR fortran/48890 ([F95] Wrong length of a character component of named constant derived-type)
2018-02-20  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/48890
	PR fortran/83823
	* primary.c (gfc_convert_to_structure_constructor):
	For a constant string constructor, make sure the length
	is correct.

2018-02-20  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/48890
	PR fortran/83823
	* gfortran.dg/structure_constructor_14.f90: New test.

From-SVN: r257856
2018-02-20 18:57:34 +00:00
Jeff Law
5a54a15e30 re PR middle-end/82123 (spurious -Wformat-overflow warning for converted vars)
PR middle-end/82123
	PR tree-optimization/81592
	PR middle-end/79257
	* gimple-ssa-sprintf.c (get_int_range): Query EVRP range analyzer for
	range data rather than using global data.

From-SVN: r257855
2018-02-20 11:56:56 -07:00
Jeff Law
bbe2e114ef re PR middle-end/82123 (spurious -Wformat-overflow warning for converted vars)
PR middle-end/82123
	PR tree-optimization/81592
	PR middle-end/79257
	* gimple-ssa-sprintf.c (get_int_range): Accept vr_values parameter
	pass it to children as needed.
	(struct directive::fmtresult): Similarly.
	(struct directive::set_width): Similarly.
	(struct directive::set_precision): Similarly.
	(format_integer, format_directive, parse_directive): Similarly.
	(format_none): Accept unnamed vr_values parameter.
	(format_percent, format_floating, format_character): Similarly.
	(format_string, format_plain): Similarly.

From-SVN: r257854
2018-02-20 11:56:01 -07:00
Jeff Law
c368450674 re PR middle-end/82123 (spurious -Wformat-overflow warning for converted vars)
PR middle-end/82123
	PR tree-optimization/81592
	PR middle-end/79257
	* gimple-ssa-sprintf.c (sprintf_dom_walker::handle_gimple_call): Query
	the EVRP range analyzer for range data rather than using global data.

From-SVN: r257853
2018-02-20 11:53:29 -07:00
Jeff Law
aa67d03c30 re PR middle-end/82123 (spurious -Wformat-overflow warning for converted vars)
PR middle-end/82123
	PR tree-optimization/81592
	PR middle-end/79257
	* gimple-ssa-sprintf.c: Include alloc-pool.h, vr-values.h and
	gimple-ssa-evrp-analyze.h
	(class sprintf_dom_walker): Add after_dom_children member function.
	Add evrp_range_analyzer member.
	(sprintf_dom_walker::before_dom_children): Call into the EVRP
	range analyzer as needed.
	(sprintf_dom_walker::after_dom_children): New member function.

	* gcc.dg/builtin-unreachable-6.c: Turn off VRP.

From-SVN: r257852
2018-02-20 11:52:07 -07:00
Jeff Law
2db63ab20c re PR middle-end/82123 (spurious -Wformat-overflow warning for converted vars)
PR middle-end/82123
	PR tree-optimization/81592
	PR middle-end/79257
	* gimple-ssa-evrp-analyze.c (evrp_range_analyzer::enter): Do nothing
	if not optimizing.
	(evrp_range_analyzer::record_ranges_from_stmt): Likewise.
	(evrp_range_analyzer::pop_to_marker): Likewise.

From-SVN: r257851
2018-02-20 11:49:46 -07:00
Jakub Jelinek
f210b3b372 re PR c++/84488 (Incorrect "set but not used" warning for static_cast<Enum>(double))
PR c++/84488
	* g++.dg/warn/Wunused-var-30.C: New test.

From-SVN: r257850
2018-02-20 18:00:23 +01:00
Carl Love
ecb0dd1890 The removal of file fold-vec-neg-int.p7.c in commit 257812 didn't get commited.
Removing the file.

From-SVN: r257849
2018-02-20 16:48:39 +00:00
Ian Lance Taylor
911cef2e3b runtime: allow preemption in fast syscall return
Let a fast syscall return be a preemption point.  This helps with
    tight loops that make system calls, as in BenchmarkSyscallExcessWork.
    
    Reviewed-on: https://go-review.googlesource.com/94895

From-SVN: r257848
2018-02-20 15:30:31 +00:00
Richard Sandiford
9bd958c5f3 Fix incorrect TARGET_MEM_REF alignment (PR 84419)
expand_call_mem_ref checks for TARGET_MEM_REFs that have compatible
type, but it didn't then go on to install the specific type we need,
which might have different alignment due to:

  if (TYPE_ALIGN (type) != align)
    type = build_aligned_type (type, align);

This was causing masked stores to be incorrectly marked as
aligned on AVX512.

2018-02-20  Richard Sandiford  <richard.sandiford@linaro.org>

gcc/
	PR tree-optimization/84419
	* internal-fn.c (expand_call_mem_ref): Create a TARGET_MEM_REF
	with the required type if its current type is compatible but
	different.

gcc/testsuite/
	PR tree-optimization/84419
	* gcc.dg/vect/pr84419.c: New test.

From-SVN: r257847
2018-02-20 14:44:24 +00:00
Jakub Jelinek
ef7866a3f1 re PR middle-end/82004 (SPEC CPU2017 628.pop2_s miscompare)
PR middle-end/82004
	* match.pd (pow(C,x) -> exp(log(C)*x)): Delay all folding until
	after vectorization.

	* gfortran.dg/pr82004.f90: New test.

From-SVN: r257846
2018-02-20 14:56:00 +01:00
Ian Lance Taylor
731c3fc22d compiler: look through aliases for type compatibility
Aliases are supposed to be identical to the type being aliased, so
    questions about type compatibility need to always ignore aliases,
    except for error messages involving the type name.
    
    The test case for this is https://golang.org/cl/94995.
    
    Fixes golang/go#23912
    
    Reviewed-on: https://go-review.googlesource.com/94996

From-SVN: r257845
2018-02-20 13:52:56 +00:00
Martin Liska
6285e915c4 Fix missing info for -march and -mtune wrong values on aarch64 (PR driver/83193).
2018-02-20  Martin Liska  <mliska@suse.cz>

	PR driver/83193
	* config/aarch64/aarch64.c (aarch64_print_hint_for_core_or_arch): Print
	possible values if we don't have a hint.

From-SVN: r257844
2018-02-20 12:18:07 +00:00
Siddhesh Poyarekar
d3eb902f7f c++: Fix spurious fallthrough warning on break
The C++ frontend generates a break that results in the fallthrough
warning misfiring in nested switch blocks where cases in the inner
switch block return, rendering the break pointless.  The fallthrough
detection in finish_break_stmt does not work either because the
condition is encoded as an IF_STMT and not a COND_EXPR.

Fix this by adding a condition for IF_STMT in the
langhooks.block_may_fallthru for C++.  Fix tested on x86_64.

gcc/cp
        * cp-objcp-common.c (cxx_block_may_fallthru): Add case for
	        IF_STMT.

gcc/testsuite
        * g++.dg/nested-switch.C: New test case.

From-SVN: r257843
2018-02-20 11:11:31 +00:00
Martin Liska
5bbccd9250 Add limit for maximal alignment options (PR c/84310).
2018-02-20  Martin Liska  <mliska@suse.cz>

	PR c/84310
	PR target/79747
	* final.c (shorten_branches): Build align_tab array with one
	more element.
	* opts.c (finish_options): Add alignment option limit check.
	(MAX_CODE_ALIGN): Likewise.
	(MAX_CODE_ALIGN_VALUE): Likewise.
	* doc/invoke.texi: Document maximum allowed option value for
	all -falign-* options.
2018-02-20  Martin Liska  <mliska@suse.cz>

	PR c/84310
	PR target/79747
	* gcc.target/i386/pr84310.c: New test.
	* gcc.target/i386/pr84310-2.c: Likewise.

From-SVN: r257842
2018-02-20 10:04:13 +00:00
Paolo Carlini
0b2513e292 re PR c++/84446 (ICE with broken lambda)
/cp
2018-02-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/84446
	* parser.c (cp_parser_init_declarator): Don't call start_lambda_scope
	on error_mark_node.

/testsuite
2018-02-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/84446
	* g++.dg/cpp0x/lambda/lambda-ice27.C: New.

From-SVN: r257841
2018-02-20 09:02:12 +00:00
Jakub Jelinek
393d9df7b3 re PR c++/84445 (ICE with __builtin_launder and virtual function)
PR c++/84445
	* class.c (fixed_type_or_null) <case CALL_EXPR>: Only test
	TREE_HAS_CONSTRUCTOR if instance is not an internal function call.

	* g++.dg/cpp1z/launder7.C: New test.

From-SVN: r257840
2018-02-20 09:22:31 +01:00
Jakub Jelinek
7f5753d715 re PR c++/84449 (ICE with constexpr and deleted destructor)
PR c++/84449
	* tree.c (bot_manip): If build_cplus_new or break_out_target_exprs
	returns error_mark_node, return it immediately.
	(break_out_target_exprs): If cp_walk_tree with bot_manip returns
	error_mark_node, return error_mark_node.

	* g++.dg/cpp0x/constexpr-84449.C: New test.

From-SVN: r257839
2018-02-20 09:21:36 +01:00
Jakub Jelinek
dda0944cd5 re PR c++/84455 (ICE in build_call_a at gcc/cp/call.c:389 during error reporting)
PR c++/84455
	* pt.c (tsubst_lambda_expr): If not nested, increment temporarily
	function_depth to avoid GC during finish_lambda_function.

	* g++.dg/cpp0x/lambda/lambda-ice26.C: New test.

From-SVN: r257838
2018-02-20 09:20:37 +01:00
Jason Merrill
329a89d34c PR c++/84429 - ICE capturing VLA.
* lambda.c (build_capture_proxy): Handle reference refs.

From-SVN: r257836
2018-02-19 22:39:37 -05:00
GCC Administrator
c74c263c3b Daily bump.
From-SVN: r257835
2018-02-20 00:16:13 +00:00
Paul Thomas
5c60dbc14b re PR fortran/83344 (Use of uninitialized memory with ASSOCIATE and strings)
2018-02-19  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/83344
	PR fortran/83975
	* resolve.c (resolve_assoc_var): Rearrange the logic for the
	determination of the character length of associate names. If
	the associate name is missing a length expression or the length
	expression is not a constant and the target is not a variable,
	make the associate name allocatable and deferred length.
	* trans-decl.c (gfc_get_symbol_decl): Null the character length
	backend_decl for deferred length associate names that are not
	variables. Set 'length' to gfc_index_zero_node for character
	associate names, whose character length is a PARM_DECL.

2018-02-19  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/83344
	PR fortran/83975
	* gfortran.dg/associate_22.f90: Enable commented out test.
	* gfortran.dg/associate_36.f90: New test.

From-SVN: r257827
2018-02-19 22:09:13 +00:00
Jakub Jelinek
00b9448735 re PR target/84146 (ICE with -mcet in dwarf2out_var_location, involving sigsetjmp)
PR target/84146
	* reg-notes.def (REG_CALL_ARG_LOCATION): New reg note.
	* insn-notes.def (NOTE_INSN_CALL_ARG_LOCATION): Remove.
	* var-tracking.c (emit_note_insn_var_location): Remove all references
	to NOTE_INSN_CALL_ARG_LOCATION.
	(emit_notes_in_bb): Emit arguments as REG_CALL_ARG_LOCATION note on
	the CALL_INSN rather than separate NOTE_INSN_CALL_ARG_LOCATION note.
	Use copy_rtx_if_shared.
	* dwarf2out.c (gen_subprogram_die): Use XEXP with 0 instead of
	NOTE_VAR_LOCATION on ca_loc->call_arg_loc_note.
	(dwarf2out_var_location): Remove handling of
	NOTE_INSN_CALL_ARG_LOCATION, instead handle REG_CALL_ARG_LOCATION note
	on call_insn.
	* final.c (final_scan_insn): Remove all references to
	NOTE_INSN_CALL_ARG_LOCATION.
	(rest_of_clean_state): Likewise.  Remove REG_CALL_ARG_LOCATION notes
	before dumping final insns.
	* except.c (emit_note_eh_region_end): Remove all references to
	NOTE_INSN_CALL_ARG_LOCATION.
	* config/alpha/alpha.c (alpha_pad_function_end): Likewise.
	* config/c6x/c6x.c (c6x_gen_bundles): Likewise.
	* config/arc/arc.c (hwloop_optimize): Likewise.
	* config/arm/arm.c (create_fix_barrier): Likewise.
	* config/s390/s390.c (s390_chunkify_start): Likewise.
	* config/sh/sh.c (find_barrier): Likewise.
	* config/i386/i386.c (rest_of_insert_endbranch,
	ix86_seh_fixup_eh_fallthru): Likewise.
	* config/xtensa/xtensa.c (hwloop_optimize): Likewise.
	* config/iq2000/iq2000.c (final_prescan_insn): Likewise.
	* config/frv/frv.c (frv_function_prologue): Likewise.
	* emit-rtl.c (try_split): Likewise.  Copy over REG_CALL_ARG_LOCATION
	reg note.
	(note_outside_basic_block_p): Remove all references to
	NOTE_INSN_CALL_ARG_LOCATION.
	* gengtype.c (adjust_field_rtx_def): Likewise.
	* print-rtl.c (rtx_writer::print_rtx_operand_code_0, print_insn):
	Likewise.
	* jump.c (cleanup_barriers, delete_related_insns): Likewise.
	* cfgrtl.c (force_nonfallthru_and_redirect): Likewise.

	* gcc.target/i386/pr84146.c: Add -fcompare-debug to dg-options.

From-SVN: r257826
2018-02-19 22:58:04 +01:00
Uros Bizjak
97e2c91491 pr70023.c (dg-do): Compile only for target int128.
* gcc.target/i386/pr70023.c (dg-do): Compile only for target int128.
	(dg-options): Use -mavx instead of -w.

From-SVN: r257824
2018-02-19 21:43:06 +01:00
Jakub Jelinek
5f92d10993 re PR c++/84444 (ICE with __builtin_launder and cast)
PR c++/84444
	* builtins.c (builtin_mathfn_code): Don't check if CALL_EXPR_FN (t)
	is ADDR_EXPR.

	* g++.dg/cpp1z/launder8.C: New test.

From-SVN: r257822
2018-02-19 20:36:41 +01:00
Jakub Jelinek
4382537df8 re PR c++/84448 (ICE with broken condition in parallel for loop)
PR c++/84448
	* parser.c (cp_parser_binary_expression): For no_toplevel_fold_p, if
	either operand is error_mark_node, set current.lhs to that instead of
	creating a binary op with error_mark_node operands.

	* g++.dg/gomp/pr84448.C: New test.

From-SVN: r257821
2018-02-19 20:16:26 +01:00
Jakub Jelinek
897064e276 re PR c++/84430 (ICE with #pragma omp simd in lambda)
PR c++/84430
	* constexpr.c (potential_constant_expression_1): Handle OMP_SIMD.

	* g++.dg/gomp/pr84430.C: New test.

From-SVN: r257820
2018-02-19 20:12:14 +01:00
Jakub Jelinek
73829f9045 re PR tree-optimization/84452 (ICE in expand_simd_clones at gcc/omp-simd-clone.c:1612)
PR tree-optimization/84452
	* tree-vect-patterns.c (vect_recog_pow_pattern): Don't call
	expand_simd_clones if targetm.simd_clone.compute_vecsize_and_simdlen
	is NULL.

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

From-SVN: r257819
2018-02-19 19:58:13 +01:00
Jakub Jelinek
bb08d1cac1 re PR c++/79064 (Cannot overload member function templates on type of literal)
PR c++/79064
	* g++.dg/template/overload15.C (f): Use 0u - 1ll instead of 0u - 1l.

From-SVN: r257818
2018-02-19 19:49:21 +01:00
Martin Liska
14cf3c00ea Put pass_sancov_O0 before pass_lower_switch with -O0 (PR sanitizer/82183).
2018-02-19  Martin Liska  <mliska@suse.cz>

	PR sanitizer/82183
	* passes.def: Put pass_sancov_O0 before pass_lower_switch with -O0.

From-SVN: r257817
2018-02-19 18:30:31 +00:00
Martin Liska
6a5aca5327 Fix ubsan in gimple-fold.c (PR tree-optimization/82491).
2018-02-19  Martin Liska  <mliska@suse.cz>
	    Richard Sandiford  <richard.sandiford@linaro.org>

	PR tree-optimization/82491
	* gimple-fold.c (get_base_constructor): Make earlier bail out
	to prevent ubsan.

Co-Authored-By: Richard Sandiford <richard.sandiford@linaro.org>

From-SVN: r257816
2018-02-19 18:29:52 +00:00
Martin Liska
a197d3406c Do not use bit and for conjunction of predicates (PR c/81272).
2018-02-19  Martin Liska  <mliska@suse.cz>

	PR c/81272
	* decNumber.c (decCompareOp): Do not use bit and
	for conjunction of predicates.

From-SVN: r257815
2018-02-19 18:29:20 +00:00
Thomas Koenig
d48fc34a45 re PR fortran/35339 (Improve translation of implied do loop in transfer)
2018-02-19  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/35339
	* frontend-passes.c (traverse_io_block): Remove workaround for
	PR 80945.

2018-02-19  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/35339
	* gfortran.dg/implied_do_io_4.f90: New test.

From-SVN: r257814
2018-02-19 18:21:45 +00:00
Andre Vehreschild
87e8aa3bd9 gfortran.texi: Document additional src/dst_type.
gcc/fortran/ChangeLog:

2018-02-19  Andre Vehreschild  <vehre@gcc.gnu.org>

	* gfortran.texi: Document additional src/dst_type.  Fix some typos.
	* trans-decl.c (gfc_build_builtin_function_decls): Declare the new
	argument of _caf_*_by_ref () with * e { get, send, sendget }.
	* trans-intrinsic.c (gfc_conv_intrinsic_caf_get): Add the type of the
	data referenced when generating a call to caf_get_by_ref ().
	(conv_caf_send): Same but for caf_send_by_ref () and
	caf_sendget_by_ref ().

gcc/testsuite/ChangeLog:

2018-02-19  Andre Vehreschild  <vehre@gcc.gnu.org>

	* gfortran.dg/coarray_alloc_comp_6.f08: New test.
	* gfortran.dg/coarray_alloc_comp_7.f08: New test.
	* gfortran.dg/coarray_alloc_comp_8.f08: New test.

libgfortran/ChangeLog:

2018-02-19  Andre Vehreschild  <vehre@gcc.gnu.org>

	* caf/libcaf.h: Add type parameters to the caf_*_by_ref prototypes.
	* caf/single.c (get_for_ref): Simplifications and now respecting
	the type argument.
	(_gfortran_caf_get_by_ref): Added source type handing to get_for_ref().
	(send_by_ref): Simplifications and respecting the dst_type now.
	(_gfortran_caf_send_by_ref): Added destination type hand over to
	send_by_ref().
	(_gfortran_caf_sendget_by_ref): Added general support and fixed stack
	corruption.  The function is now really usable.

From-SVN: r257813
2018-02-19 18:30:57 +01:00
Carl Love
bbe57e1e55 rs6000-builtin.def: Change NEG macro expansions from BU_ALTIVEC_A to BU_P8V_AV_1 and...
gcc/ChangeLog:

2018-02-19  Carl Love  <cel@us.ibm.com>

	* config/rs6000/rs6000-builtin.def: Change NEG macro expansions from
	BU_ALTIVEC_A to BU_P8V_AV_1 and BU_ALTIVEC_OVERLOAD_1 to
	BU_P8V_OVERLOAD_1.
	* config/rs6000/rs6000-c.c: Change ALTIVEC_BUILTIN_VEC_NEG to
	P8V_BUILTIN_VEC_NEG.

gcc/testsuite/ChangeLog:

2018-02-19  Carl Love  <cel@us.ibm.com>
	* gcc.target/powerpc/fold-vec-neg-int.p7.c: Remove test file.

From-SVN: r257812
2018-02-19 17:27:39 +00:00