Commit Graph

155234 Commits

Author SHA1 Message Date
Marek Polacek 4ab033db41 re PR libstdc++/81599 (Error in documentation of std::stack)
PR libstdc++/81599
	* include/bits/stl_stack.h: Fix typo.

From-SVN: r250743
2017-07-31 13:44:16 +00:00
Uros Bizjak a97cf8f9a3 re PR target/25967 (Add attribute naked for x86)
PR target/25967
	* config/i386/i386.c (ix86_allocate_stack_slots_for_args):
	New function.
	(TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Define.

testsuite/ChangeLog:

	PR target/25967
	* gcc.target/i386/naked-3.c (dg-options): Use -O0.
	(naked): Add attribute regparm(1) for x86_32 targets.
	Add integer argument.  Remove global "data" variable.
	(main): Pass integer argument to naked function.
	* gcc.target/i386/naked-4.c: New test.

From-SVN: r250742
2017-07-31 15:11:59 +02:00
Robin Dapp 9c04bba366 Add myself to MAINTAINERS.
From-SVN: r250741
2017-07-31 12:02:33 +00:00
Andreas Krebbel 2731a5b331 [Committed] S/390: Support z14 as CPU name.
With IBM z14 officially announced we can add support for z14 as
preferred CPU name.  We still pass arch12 to Binutils in order to keep
older Binutils versions supported.

gcc/ChangeLog:

2017-07-31  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* config.gcc: Add z14.
	* config/s390/driver-native.c (s390_host_detect_local_cpu): Add
	CPU model numbers for z13s and z14.
	* config/s390/s390-c.c (s390_resolve_overloaded_builtin): Replace
	arch12 with z14.
	* config/s390/s390-opts.h (enum processor_type): Rename
	PROCESSOR_ARCH12 to PROCESSOR_3906_Z14.
	* config/s390/s390.c (processor_table): Add field for CPU name to
	be passed to Binutils.
	(s390_asm_output_machine_for_arch): Use the new field in
	processor_table for Binutils.
	(s390_expand_builtin): Replace arch12 with z14.
	(s390_issue_rate): Rename PROCESSOR_ARCH12 to PROCESSOR_3906_Z14.
	(s390_get_sched_attrmask): Likewise.
	(s390_get_unit_mask): Likewise.
	* config/s390/s390.opt: Add z14 to processor_type enum.

From-SVN: r250739
2017-07-31 11:31:09 +00:00
Martin Jambor 0688f9c152 [PR 81477] Set versionable regardless of optimization level
2017-07-31  Martin Jambor  <mjambor@suse.cz>

	PR hsa/81477
	* ipa-fnsummary.c (ipa_fn_summary_generate): Set versionable
	regardless of optimization level.

From-SVN: r250738
2017-07-31 13:18:31 +02:00
Jan Hubicka 7fef86d348 Recover GOTO predictor.
2017-07-31  Jan Hubicka <hubicka@ucw.cz>
	    Martin Liska  <mliska@suse.cz>

	* c-typeck.c (c_finish_goto_label): Build gimple predict
	stament.
2017-07-31  Jan Hubicka <hubicka@ucw.cz>
	    Martin Liska  <mliska@suse.cz>

	* predict.def: Remove old comment and adjust probability.
	* gimplify.c (should_warn_for_implicit_fallthrough): Ignore
	PREDICT statements.
2017-07-31  Jan Hubicka <hubicka@ucw.cz>
	    Martin Liska  <mliska@suse.cz>

	* gcc.dg/predict-15.c: New test.
	* gcc.dg/tree-ssa/vrp24.c: Update scanned pattern.
2017-07-31  Jan Hubicka <hubicka@ucw.cz>
	    Martin Liska  <mliska@suse.cz>

	* pt.c (tsubst_copy): Copy PREDICT_EXPR.
	* semantics.c (finish_goto_stmt): Build gimple predict
	stament.
	* constexpr.c (potential_constant_expression_1): Handle
	PREDICT_EXPR.

Co-Authored-By: Martin Liska <mliska@suse.cz>

From-SVN: r250737
2017-07-31 11:16:00 +00:00
Uros Bizjak 2ec580be15 re PR target/25967 (Add attribute naked for x86)
PR target/25967
	* config/i386/i386.c (ix86_function_naked): New function.
	(ix86_can_use_return_insn_p): Return false for naked functions.
	(ix86_expand_prologue): Skip prologue for naked functions.
	(ix86_expand_epilogue): Skip epilogue for naked functions
	and emit trap instruction.
	(ix86_warn_func_return): New function.
	(ix86_attribute_table): Add "naked" attribute specification.
	(TARGET_WARN_FUNC_RETURN): Define.
	* doc/extend.texi (x86 Function Attributes) <naked>: Document it.

testsuite/ChangeLog:

	PR target/25967
	* gcc.target/i386/naked-1.c: New test.
	* gcc.target/i386/naked-2.c: Ditto.
	* gcc.target/i386/naked-3.c: Ditto.
	* gcc.target/x86_64/abi/ms-sysv/ms-sysv.c: Remove
	do_test_body0 stub function, use attribute "naked" instead.
	* gcc.dg/pr44290-1.c: Use naked_functions effective target.
	* gcc.dg/pr44290-2.c: Ditto.

From-SVN: r250736
2017-07-31 12:22:41 +02:00
Thomas Koenig cfdf6ff61b re PR fortran/81581 (runtime checks for DIM argument of intrinsic SUM missing)
2017-07-31  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/81581
	* m4/ifuntion.m4 (name`'rtype_qual`_'atype_code): Perform check
	for dim.
	(`m'name`'rtype_qual`_'atype_code): Likewise. Change type of rank
	and tim to index_type.
	(`s'name`'rtype_qual`_'atype_code): Perform check for dim.
	* generated/iall_i16.c: Regenerated.
	* generated/iall_i1.c: Regenerated.
	* generated/iall_i2.c: Regenerated.
	* generated/iall_i4.c: Regenerated.
	* generated/iall_i8.c: Regenerated.
	* generated/iany_i16.c: Regenerated.
	* generated/iany_i1.c: Regenerated.
	* generated/iany_i2.c: Regenerated.
	* generated/iany_i4.c: Regenerated.
	* generated/iany_i8.c: Regenerated.
	* generated/iparity_i16.c: Regenerated.
	* generated/iparity_i1.c: Regenerated.
	* generated/iparity_i2.c: Regenerated.
	* generated/iparity_i4.c: Regenerated.
	* generated/iparity_i8.c: Regenerated.
	* generated/maxloc1_16_i16.c: Regenerated.
	* generated/maxloc1_16_i1.c: Regenerated.
	* generated/maxloc1_16_i2.c: Regenerated.
	* generated/maxloc1_16_i4.c: Regenerated.
	* generated/maxloc1_16_i8.c: Regenerated.
	* generated/maxloc1_16_r10.c: Regenerated.
	* generated/maxloc1_16_r16.c: Regenerated.
	* generated/maxloc1_16_r4.c: Regenerated.
	* generated/maxloc1_16_r8.c: Regenerated.
	* generated/maxloc1_4_i16.c: Regenerated.
	* generated/maxloc1_4_i1.c: Regenerated.
	* generated/maxloc1_4_i2.c: Regenerated.
	* generated/maxloc1_4_i4.c: Regenerated.
	* generated/maxloc1_4_i8.c: Regenerated.
	* generated/maxloc1_4_r10.c: Regenerated.
	* generated/maxloc1_4_r16.c: Regenerated.
	* generated/maxloc1_4_r4.c: Regenerated.
	* generated/maxloc1_4_r8.c: Regenerated.
	* generated/maxloc1_8_i16.c: Regenerated.
	* generated/maxloc1_8_i1.c: Regenerated.
	* generated/maxloc1_8_i2.c: Regenerated.
	* generated/maxloc1_8_i4.c: Regenerated.
	* generated/maxloc1_8_i8.c: Regenerated.
	* generated/maxloc1_8_r10.c: Regenerated.
	* generated/maxloc1_8_r16.c: Regenerated.
	* generated/maxloc1_8_r4.c: Regenerated.
	* generated/maxloc1_8_r8.c: Regenerated.
	* generated/maxval_i16.c: Regenerated.
	* generated/maxval_i1.c: Regenerated.
	* generated/maxval_i2.c: Regenerated.
	* generated/maxval_i4.c: Regenerated.
	* generated/maxval_i8.c: Regenerated.
	* generated/maxval_r10.c: Regenerated.
	* generated/maxval_r16.c: Regenerated.
	* generated/maxval_r4.c: Regenerated.
	* generated/maxval_r8.c: Regenerated.
	* generated/minloc1_16_i16.c: Regenerated.
	* generated/minloc1_16_i1.c: Regenerated.
	* generated/minloc1_16_i2.c: Regenerated.
	* generated/minloc1_16_i4.c: Regenerated.
	* generated/minloc1_16_i8.c: Regenerated.
	* generated/minloc1_16_r10.c: Regenerated.
	* generated/minloc1_16_r16.c: Regenerated.
	* generated/minloc1_16_r4.c: Regenerated.
	* generated/minloc1_16_r8.c: Regenerated.
	* generated/minloc1_4_i16.c: Regenerated.
	* generated/minloc1_4_i1.c: Regenerated.
	* generated/minloc1_4_i2.c: Regenerated.
	* generated/minloc1_4_i4.c: Regenerated.
	* generated/minloc1_4_i8.c: Regenerated.
	* generated/minloc1_4_r10.c: Regenerated.
	* generated/minloc1_4_r16.c: Regenerated.
	* generated/minloc1_4_r4.c: Regenerated.
	* generated/minloc1_4_r8.c: Regenerated.
	* generated/minloc1_8_i16.c: Regenerated.
	* generated/minloc1_8_i1.c: Regenerated.
	* generated/minloc1_8_i2.c: Regenerated.
	* generated/minloc1_8_i4.c: Regenerated.
	* generated/minloc1_8_i8.c: Regenerated.
	* generated/minloc1_8_r10.c: Regenerated.
	* generated/minloc1_8_r16.c: Regenerated.
	* generated/minloc1_8_r4.c: Regenerated.
	* generated/minloc1_8_r8.c: Regenerated.
	* generated/minval_i16.c: Regenerated.
	* generated/minval_i1.c: Regenerated.
	* generated/minval_i2.c: Regenerated.
	* generated/minval_i4.c: Regenerated.
	* generated/minval_i8.c: Regenerated.
	* generated/minval_r10.c: Regenerated.
	* generated/minval_r16.c: Regenerated.
	* generated/minval_r4.c: Regenerated.
	* generated/minval_r8.c: Regenerated.
	* generated/norm2_r10.c: Regenerated.
	* generated/norm2_r16.c: Regenerated.
	* generated/norm2_r4.c: Regenerated.
	* generated/norm2_r8.c: Regenerated.
	* generated/parity_l16.c: Regenerated.
	* generated/parity_l1.c: Regenerated.
	* generated/parity_l2.c: Regenerated.
	* generated/parity_l4.c: Regenerated.
	* generated/parity_l8.c: Regenerated.
	* generated/product_c10.c: Regenerated.
	* generated/product_c16.c: Regenerated.
	* generated/product_c4.c: Regenerated.
	* generated/product_c8.c: Regenerated.
	* generated/product_i16.c: Regenerated.
	* generated/product_i1.c: Regenerated.
	* generated/product_i2.c: Regenerated.
	* generated/product_i4.c: Regenerated.
	* generated/product_i8.c: Regenerated.
	* generated/product_r10.c: Regenerated.
	* generated/product_r16.c: Regenerated.
	* generated/product_r4.c: Regenerated.
	* generated/product_r8.c: Regenerated.
	* generated/sum_c10.c: Regenerated.
	* generated/sum_c16.c: Regenerated.
	* generated/sum_c4.c: Regenerated.
	* generated/sum_c8.c: Regenerated.
	* generated/sum_i16.c: Regenerated.
	* generated/sum_i1.c: Regenerated.
	* generated/sum_i2.c: Regenerated.
	* generated/sum_i4.c: Regenerated.
	* generated/sum_i8.c: Regenerated.
	* generated/sum_r10.c: Regenerated.
	* generated/sum_r16.c: Regenerated.
	* generated/sum_r4.c: Regenerated.
	* generated/sum_r8.c: Regenerated.

2017-07-31  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/81581
	* gfortran.dg/dim_sum_1.f90: New test case.
	* gfortran.dg/dim_sum_2.f90: New test case.
	* gfortran.dg/dim_sum_3.f90: New test case.

From-SVN: r250735
2017-07-31 09:34:36 +00:00
Jakub Jelinek 57b1c5e9ab * check.c (gfc_check_num_images): Fix a pasto.
From-SVN: r250734
2017-07-31 11:32:02 +02:00
Martin Liska 5edb1c48f8 Learn GIMPLE pretty printer to produce nicer dump output.
2017-07-31  Martin Liska  <mliska@suse.cz>

	* gimple-pretty-print.c (dump_gimple_label): Never dump
	BB info.
	(dump_gimple_bb_header): Always dump BB info.
	(pp_cfg_jump): Do not append info about BB when dumping a jump.
2017-07-31  Martin Liska  <mliska@suse.cz>

	* gcc.dg/builtin-unreachable-6.c: Update scanned patterns.
	* gcc.dg/tree-ssa/attr-hotcold-2.c: Likewise.

From-SVN: r250731
2017-07-31 08:54:05 +00:00
Martin Liska f34ebeb25e Do UBSAN sanitization just when current_function_decl != NULL_TREE (PR sanitize/81530).
2017-07-31  Martin Liska  <mliska@suse.cz>

	PR sanitize/81530
	* cp-gimplify.c (cp_genericize): Guard condition with flag_sanitize_p
	also with current_function_decl non-null equality.
	* cp-ubsan.c (cp_ubsan_instrument_vptr_p): Likewise.
	* decl.c (compute_array_index_type): Likewise.
	* init.c (finish_length_check): Likewise.
	* typeck.c (cp_build_binary_op): Likewise.
2017-07-31  Martin Liska  <mliska@suse.cz>

	PR sanitize/81530
	* c-convert.c (convert): Guard condition with flag_sanitize_p
	also with current_function_decl non-null equality.
	* c-decl.c (grokdeclarator): Likewise.
	* c-typeck.c (build_binary_op): Likewise.
2017-07-31  Martin Liska  <mliska@suse.cz>

	PR sanitize/81530
	* convert.c (convert_to_integer_1): Guard condition with flag_sanitize_p
	also with current_function_decl non-null equality.
2017-07-31  Martin Liska  <mliska@suse.cz>

	PR sanitize/81530
	* c-ubsan.c (ubsan_maybe_instrument_array_ref):
	Guard condition with flag_sanitize_p also with current_function_decl
	non-null equality.
	(ubsan_maybe_instrument_reference_or_call): Likewise.
2017-07-31  Martin Liska  <mliska@suse.cz>

	PR sanitize/81530
	* g++.dg/ubsan/pr81530.C: New test.

From-SVN: r250730
2017-07-31 08:53:00 +00:00
Jakub Jelinek 066bbc5721 re PR sanitizer/81604 (Ubsan type reporting can be bogus in some cases)
PR sanitizer/81604
	* ubsan.c (ubsan_type_descriptor): For UBSAN_PRINT_ARRAY don't
	change type to the element type, instead add eltype variable and
	use it where we are interested in the element type.

	* c-c++-common/ubsan/pr81604.c: New test.

From-SVN: r250728
2017-07-31 10:24:58 +02:00
Jakub Jelinek 0d1e5925e4 re PR tree-optimization/81603 (Various compiler UB on very large constant offsets)
PR tree-optimization/81603
	* ipa-polymorphic-call.c
	(ipa_polymorphic_call_context::ipa_polymorphic_call_context): Perform
	offset arithmetic in offset_int, bail out if the resulting bit offset
	doesn't fit into shwi.

From-SVN: r250727
2017-07-31 10:22:14 +02:00
Martin Liska 3dd9302511 Remove a Java-specific hunk.
2017-07-31  Martin Liska  <mliska@suse.cz>

	* gimplify.c (mostly_copy_tree_r): Remove Java specific hunk.
	(gimplify_save_expr): Fix comment.

From-SVN: r250726
2017-07-31 07:29:49 +00:00
GCC Administrator f826c40ecb Daily bump.
From-SVN: r250725
2017-07-31 00:16:46 +00:00
H.J. Lu a10b3cf148 i386: Update INCOMING_FRAME_SP_OFFSET for exception handler
Since there is an extra error code passed to the exception handler,
INCOMING_FRAME_SP_OFFSET is return address plus error code for the
exception handler.  This patch updates INCOMING_FRAME_SP_OFFSET to
the correct value for the exception handler.

This patch exposed a bug in DWARF stack frame CFI generation, which
assumes that INCOMING_FRAME_SP_OFFSET is the same for all functions:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81570

It sets and caches the incoming stack frame offset with the same
INCOMING_FRAME_SP_OFFSET for all functions.  When there are both
exception handler and normal function in the same input, the wrong
incoming stack frame offset is used for exception handler or normal
function, which leads to

FAIL: gcc.dg/guality/pr68037-1.c   -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  line 33 error == 0x12345670
FAIL: gcc.dg/guality/pr68037-1.c   -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  line 33 frame->ip == 0x12345671
FAIL: gcc.dg/guality/pr68037-1.c   -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  line 33 frame->cs == 0x12345672
FAIL: gcc.dg/guality/pr68037-1.c   -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  line 33 frame->flags == 0x12345673
FAIL: gcc.dg/guality/pr68037-1.c   -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  line 33 frame->sp == 0x12345674
FAIL: gcc.dg/guality/pr68037-1.c   -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  line 33 frame->ss == 0x12345675

With the patch for PR 81570:

https://gcc.gnu.org/ml/gcc-patches/2017-07/msg01851.html

applied, there are no regressions on i686 and x86-64.

gcc/

	PR target/79793
	* config/i386/i386.c (ix86_function_arg): Update arguments for
	exception handler.
	(ix86_compute_frame_layout): Set the initial stack offset to
	INCOMING_FRAME_SP_OFFSET.  Update red-zone offset with
	INCOMING_FRAME_SP_OFFSET.
	(ix86_expand_epilogue): Don't pop the 'ERROR_CODE' off the
	stack before exception handler returns.
	* config/i386/i386.h (INCOMING_FRAME_SP_OFFSET): Add the
	the 'ERROR_CODE' for exception handler.

gcc/testsuite/

	PR target/79793
	* gcc.dg/guality/pr68037-1.c: Update gdb breakpoints.
	* gcc.target/i386/interrupt-5.c (interrupt_frame): New struct.
	(foo): Check the builtin return address against the return address
	in interrupt frame.
	* gcc.target/i386/pr79793-1.c: New test.
	* gcc.target/i386/pr79793-2.c: Likewise.

From-SVN: r250721
2017-07-30 07:10:32 -07:00
Uros Bizjak ec1895c1f3 i386.h (ASM_PRINTF_EXTENSIONS): New macro.
* config/i386/i386.h (ASM_PRINTF_EXTENSIONS): New macro.
	(ASM_OUTPUT_REG_PUSH): Rewrite with new operand modifiers.
	(ASM_OUTPUT_REG_POP): Ditto.
	* config/i386/i386.c (ix86_asm_output_function_label): Use fputs
	instead of asm_fprintf to output pure string.

From-SVN: r250720
2017-07-30 10:51:37 +02:00
Uros Bizjak 218e5d04b3 c-format.c (asm_fprintf_char_table): Add 'z' to format_chars.
* c-format.c (asm_fprintf_char_table): Add 'z' to format_chars.

From-SVN: r250719
2017-07-30 10:49:40 +02:00
GCC Administrator 9ff915823f Daily bump.
From-SVN: r250718
2017-07-30 00:16:35 +00:00
Eric Botcazou 942047f22f c-ada-spec.c (dump_generic_ada_node): Take into account signedness for enumeral types.
* c-ada-spec.c (dump_generic_ada_node): Take into account signedness
	for enumeral types.
	(print_ada_declaration): Add missing guard for record types.

From-SVN: r250714
2017-07-29 09:52:04 +00:00
Jakub Jelinek e071b76781 debug.h (struct gcc_debug_hooks): Add IMPLICIT argument to imported_module_or_decl hook.
* debug.h (struct gcc_debug_hooks): Add IMPLICIT argument
	to imported_module_or_decl hook.
	(debug_nothing_tree_tree_tree_bool): Remove.
	(debug_nothing_tree_tree_tree_bool_bool): New declaration.
	* debug.c (do_nothing_debug_hooks): Use
	debug_nothing_tree_tree_tree_bool_bool instead of
	debug_nothing_tree_tree_tree_bool.
	* vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
	* dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Likewise.
	* sdbout.c (sdb_debug_hooks): Likewise.
	* dwarf2out.c (dwarf2_lineno_debug_hooks): Likewise.
	(gen_namespace_die): Add DW_AT_export_symbols attribute if
	langhook wants it.
	(dwarf2out_imported_module_or_decl): Add IMPLICIT argument,
	if true, -gdwarf-5 and decl will have DW_AT_export_symbols
	attribute, don't add anything.
cp/
	* cp-objcp-common.c (cp_decl_dwarf_attribute): Handle
	DW_AT_export_symbols.
	* name-lookup.c (emit_debug_info_using_namespace): Add IMPLICIT
	argument, pass it through to the debug hook.
	(finish_namespace_using_directive): Adjust
	emit_debug_info_using_namespace caller.
	(push_namespace): Likewise.  Call it after setting
	DECL_NAMESPACE_INLINE_P.
	(cp_emit_debug_info_for_using): Pass false as new argument to
	the imported_module_or_decl debug hook.
fortran/
	* trans-decl.c (gfc_trans_use_stmts): Pass false as new argument to
	the imported_module_or_decl debug hook.
ada/
	* gcc-interface/utils.c (gnat_write_global_declarations): Pass false
	as new argument to the imported_module_or_decl debug hook.
testsuite/
	* g++.dg/debug/dwarf2/inline-ns-1.C: New test.
	* g++.dg/debug/dwarf2/inline-ns-2.C: New test.

From-SVN: r250713
2017-07-29 09:52:16 +02:00
Trevor Saunders 226b828937 use c++ for fold_buildN_loc
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* fold-const.c (fold_build1_stat_loc): Remove _stat from name.
	(fold_build2_stat_loc): Likewise.
	(fold_build3_stat_loc): Likewise.
	* fold-const.h (fold_build1, fold_build2, fold_build3): Adjust.
	(fold_build1_loc): Remove macro.
	(fold_build2_loc): Likewise.
	(fold_build3_loc): Likewise.

From-SVN: r250712
2017-07-29 01:39:48 +00:00
Trevor Saunders 59cdeebcbe use c++ for gimple_build_debug_bind{,_source}
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* gimple.c (gimple_build_debug_bind_stat): Remove _stat from name.
	(gimple_build_debug_bind_source_stat): Likewise.
	* gimple.h (gimple_build_debug_bind): Remove macro.
	(gimple_build_debug_bind_source): Likewise.

From-SVN: r250711
2017-07-29 01:39:42 +00:00
Trevor Saunders 2a1a5f3080 use c++ for bitmap_initialize
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* bitmap.c (bitmap_alloc): Adjust.
	(bitmap_gc_alloc): Likewise.
	* bitmap.h (bitmap_initialize_stat): Remove _stat from name.

From-SVN: r250710
2017-07-29 01:39:36 +00:00
Trevor Saunders 3fe793df7c simplify the bitmap alloc_stat functions with c++
gcc/fortran/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* resolve.c (find_reachable_labels): Adjust.

gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* bitmap.c (bitmap_obstack_alloc_stat): Rename to bitmap_alloc.
	(bitmap_gc_alloc_stat): Rename to bitmap_gc_alloc.
	* bitmap.h (bitmap_obstack_alloc_stat): Adjust prototype.
	(bitmap_gc_alloc_stat): Likewise.
	(BITMAP_ALLOC, BITMAP_GGC_ALLOC): Adjust.

From-SVN: r250709
2017-07-29 01:39:31 +00:00
Trevor Saunders 22a7303de2 replace shallow_copy_rtx_stat with c++
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* rtl.c (shallow_copy_rtx_stat): Remove _stat from name.
	* rtl.h (shallow_copy_rtx): Remove macro.

From-SVN: r250708
2017-07-29 01:39:25 +00:00
Trevor Saunders 84c2ad2314 replace rtx_alloc_stat with c++
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* emit-rtl.c (gen_raw_REG): Adjust.
	* gengenrtl.c (gendef): Likewise.
	* rtl.c (rtx_alloc_stat): Remove _stat from name.
	* rtl.h (rtx_alloc): Remove macro.

From-SVN: r250707
2017-07-29 01:39:17 +00:00
Trevor Saunders 623ee2853e use c++ for build_tree_list{,_vec}_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (build_tree_list_vec_stat): Remove _stat from name.
	(build_tree_list_stat): Likewise.
	* tree.h (build_tree_list): Remove macro.
	(build_tree_list_vec): Likewise.

From-SVN: r250706
2017-07-29 01:39:10 +00:00
Trevor Saunders 7488a79fa3 use C++ for {make,build}_vector_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (make_vector_stat): Remove _stat from name.
	(build_vector_stat): Likewise.
	* tree.h (make_vector_stat): Remove macro.
	(build_vector_stat): Likewise.

From-SVN: r250705
2017-07-29 01:39:03 +00:00
Trevor Saunders b161404990 remove unused build_var_debug_value prototype
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.h (build_var_debug_value): Remove prototype.

From-SVN: r250704
2017-07-29 01:38:57 +00:00
Trevor Saunders 126d0cd4ad use c++ for tree_cons_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (tree_cons_stat): Remove _stat from name.
	* tree.h (tree_cons): Remove macro.

From-SVN: r250703
2017-07-29 01:38:51 +00:00
Trevor Saunders 7aa717c1d1 use c++ instead of build_vl_exp_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (build_vl_exp_stat): Remove _stat from name.
	* tree.h (build_vl_exp): Remove macro.

From-SVN: r250702
2017-07-29 01:38:43 +00:00
Trevor Saunders 31b8d81fa6 use c++ instead of build_decl_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (build_decl_stat): Remove _stat from name.
	* tree.h (build_decl): Remove macro.

From-SVN: r250701
2017-07-29 01:38:37 +00:00
Trevor Saunders 9e2d7f4604 replace gimple_alloc_stat with c++
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* gimple.c (gimple_build_with_ops_stat): Adjust.
	(gimple_alloc_stat): Remove _stat from name.
	* gimple.h (gimple_alloc): Remove macro.

From-SVN: r250700
2017-07-29 01:38:31 +00:00
Trevor Saunders 9f896a4520 use c++ instead of {make,grow}_tree_vec_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (make_tree_vec_stat): Remove _stat from name.
	(grow_tree_vec_stat): Likewise.
	* tree.h (make_tree_vec_stat): Adjust prototype.
	(grow_tree_vec_stat): Likewise.
	(make_tree_vec): Remove macro.
	(grow_tree_vec): Likewise.

From-SVN: r250699
2017-07-29 01:38:25 +00:00
Trevor Saunders 6db60760b3 use c++ instead of buildN_stat{,_loc}
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* fold-const.c (fold_build1_stat_loc): Adjust.
	(fold_build2_stat_loc): Likewise.
	(fold_build3_stat_loc): Likewise.
	* tree.c (build0_stat): Remove _stat from name.
	(build1_stat): Likewise.
	(build2_stat): Likewise.
	(build3_stat): Likewise.
	(build4_stat): Likewise.
	(build5_stat): Likewise.
	* tree.h (build1_loc): Remove macro, and rename _stat function
	to this.
	(build2_loc): Likewise.
	(build3_loc): Likewise.
	(build4_loc): Likewise.
	(build5_loc): Likewise.

From-SVN: r250698
2017-07-29 01:38:19 +00:00
Trevor Saunders 4bd2de4b45 use c++ for make_int_cst_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (make_int_cst_stat): Remove _stat from name.
	* tree.h (make_int_cst_stat): Adjust prototype.
	(make_int_cst): Remove macro.

From-SVN: r250697
2017-07-29 01:38:12 +00:00
Trevor Saunders 86cbccd7d5 use cxx instead of make_tree_binfo_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (make_tre_binfo_stat): Remove _stat from name.
	* tree.h (make_tree_binfo_stat): Adjust prototype.
	(make_tree_binfo): Remove.

From-SVN: r250696
2017-07-29 01:38:06 +00:00
Trevor Saunders 39d970d7d2 use c++ instead of _stat for copy_node_stat
gcc/cp/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* lex.c (copy_decl): Adjust.
	(copy_type): Likewise.

gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (copy_node_stat): Rename to copy_node.
	(build_distinct_type_copy): Adjust.
	* tree.h (copy_node_stat): Adjust prototype.
	(copy_node): Remove macro.

From-SVN: r250695
2017-07-29 01:38:00 +00:00
Trevor Saunders f719e2f1d7 use c++ instead of make_node_stat
gcc/ChangeLog:

2017-07-28  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* tree.c (make_node_stat): rename to make_node.
	(build_tree_list_stat): Adjust.
	(build0_stat): Likewise.
	(build2_stat): Likewise.
	(build3_stat): Likewise.
	(build4_stat): Likewise.
	(build5_stat): Likewise.
	(build_decl_stat): Likewise.
	* tree.h (make_node_stat): Adjust prototype.
	(make_node): remove macro.

From-SVN: r250694
2017-07-29 01:37:54 +00:00
GCC Administrator 57a93c6a66 Daily bump.
From-SVN: r250693
2017-07-29 00:16:41 +00:00
Peter Bergner 782a7850ed ppc-auxv.h (PPC_FEATURE2_DARN): New define.
gcc/
	* config/rs6000/ppc-auxv.h (PPC_FEATURE2_DARN): New define.
	(PPC_FEATURE2_SCV): Likewise.
	* config/rs6000/rs6000.c (cpu_supports_info): Use them.

gcc/testsuite/
	* gcc.target/powerpc/cpu-builtin-1.c (darn, scv): Add tests.

From-SVN: r250687
2017-07-28 15:10:45 -05:00
Ian Lance Taylor 02c7e7eb5e compiler: add backend type conversion
Tweak Interface_field_reference_expression::do_get_backend to apply an
    additional backend type conversion to the returned result.  This is
    needed due to the fact that the top level type of the expression is a
    function descriptor, however the value being manufactured is a pointer
    to <thunk-descriptor, value> struct.
    
    Reviewed-on: https://go-review.googlesource.com/51712

From-SVN: r250686
2017-07-28 19:58:01 +00:00
Tony Reix 5a427c633b configure.ac (target-libffi): Don't disable for AIX.
2017-07-28  Tony Reix  <tony.reix@atos.net>

        * configure.ac (target-libffi): Don't disable for AIX.
        (go): Don't add to unsupported_languages on AIX.
        (target-libgo): Don't disable for AIX.
        * configure: Regenerate.

From-SVN: r250685
2017-07-28 14:56:28 -04:00
Tony Reix afce7debdc * xcoff.c: Don't leak a file descriptor if an archive is malformed.
From-SVN: r250684
2017-07-28 18:52:13 +00:00
Ian Lance Taylor 9761988fc7 compiler: track placeholder pointer types for conversion
We recently started walking through the hash table of pointer types to
    finalize them.  Unfortunately it is possible to create a new pointer
    type while finalizing an existing one (test case: test/fixedbugs/issue5291)
    and that breaks the iteration.  So, instead, keep a list of
    placeholder pointer types, and iterate through them while permitting
    the list to be extended as we go.
    
    Reviewed-on: https://go-review.googlesource.com/51771

From-SVN: r250683
2017-07-28 18:03:29 +00:00
Ian Lance Taylor 97a0928c52 compiler: use a single temporary for calls with multiple results
For calls that return multiple results we used to create a temporary
    of struct type to hold the results, and also create a separate
    temporary for each result.  Then the call expression would copy each
    result out of the struct to the temporary, and Call_result_expression
    would refer to the desired temporary.
    
    Simplify this to just use a single temporary of struct type, and
    change Call_result_expression to fetch a field of the struct.
    
    This may reduce some incorrect tree sharing in the backend code.
    
    Reviewed-on: https://go-review.googlesource.com/51770

From-SVN: r250682
2017-07-28 17:42:05 +00:00
Tamar Christina 9de009354e 2017-07-28 Tamar Christina <tamar.christina@arm.com>
* config/aarch64/aarch64.c
	(aarch64_internal_mov_immediate): Add new special pattern.
	* config/aarch64/aarch64.md (*movdi_aarch64):
	Add reg/32bit const mov case.

gcc/testsuite/
2017-07-28  Tamar Christina  <tamar.christina@arm.com>

	* gcc.target/aarch64/int_mov_immediate_1.c: New.

From-SVN: r250680
2017-07-28 16:47:08 +00:00
Bin Cheng 8de33df278 pr80815-3.c: Require vect_perm.
gcc/testsuite
	* gcc.dg/vect/pr80815-3.c: Require vect_perm.

From-SVN: r250676
2017-07-28 16:30:44 +00:00
Rainer Orth cf311b0355 Fix pid_t printing
* fileline.c (fileline_initialize): Print pid_t as long.

From-SVN: r250675
2017-07-28 16:26:39 +00:00