155264 Commits

Author SHA1 Message Date
Uros Bizjak
2efb421405 i386.c (ix86_decompose_address): Do not check for register RTX when looking at index_reg or base_reg.
* config/i386/i386.c (ix86_decompose_address): Do not check for
	register RTX when looking at index_reg or base_reg.
	* config/i386/i386.h (INCOMING_RETURN_ADDR_RTX): Use stack_pointer_rtx.

From-SVN: r250526
2017-07-25 16:48:55 +02:00
Eric Botcazou
a8697b270e gimple.c (gimple_assign_set_rhs_with_ops): Do not ask gsi_replace to update EH info here.
* gimple.c (gimple_assign_set_rhs_with_ops): Do not ask gsi_replace
	to update EH info here.
ada/
	* checks.adb (Apply_Divide_Checks): Ensure that operands are not
	evaluated twice.

From-SVN: r250525
2017-07-25 14:47:16 +00:00
Alexander Monakov
288fe52ed1 match.pd: combine successive multiplications by constants
* match.pd ((X * CST1) * CST2): Simplify to X * (CST1 * CST2).
testsuite:
	* gcc.dg/tree-ssa/assoc-2.c: Enhance.
	* gcc.dg/tree-ssa/slsr-4.c: Adjust.

From-SVN: r250524
2017-07-25 17:36:03 +03:00
Alexander Monakov
b771c60914 match.pd: reassociate multiplications
* match.pd ((X * CST) * Y): Reassociate to (X * Y) * CST.
testsuite/
	* gcc.dg/tree-ssa/assoc-2.c: New testcase.

From-SVN: r250523
2017-07-25 17:33:39 +03:00
Torsten Duwe
417ca0117a c-attribs.c (c_common_attribute_table): Add entry for "patchable_function_entry".
2017-07-07  Torsten Duwe  <duwe@suse.de>

        c-family/
	* c-attribs.c (c_common_attribute_table): Add entry for
	"patchable_function_entry".

        lto/
	* lto-lang.c (lto_attribute_table): Add entry for
	"patchable_function_entry".

	* common.opt: Introduce -fpatchable-function-entry
	command line option, and its variables function_entry_patch_area_size
	and function_entry_patch_area_start.
	* opts.c (common_handle_option): Add -fpatchable_function_entry_ case,
	including a two-value parser.
	* target.def (print_patchable_function_entry): New target hook.
	* targhooks.h (default_print_patchable_function_entry): New function.
	* targhooks.c (default_print_patchable_function_entry): Likewise.
	* toplev.c (process_options): Switch off IPA-RA if
	patchable function entries are being generated.
	* varasm.c (assemble_start_function): Look at the
	patchable-function-entry command line switch and current
	function attributes and maybe generate NOP instructions by
	calling the print_patchable_function_entry hook.
	* doc/extend.texi: Document patchable_function_entry attribute.
	* doc/invoke.texi: Document -fpatchable_function_entry
	command line option.
	* doc/tm.texi.in (TARGET_ASM_PRINT_PATCHABLE_FUNCTION_ENTRY):
	New target hook.
	* doc/tm.texi: Re-generate.

	* c-c++-common/patchable_function_entry-default.c: New test.
	* c-c++-common/patchable_function_entry-decl.c: Likewise.
	* c-c++-common/patchable_function_entry-definition.c: Likewise.

From-SVN: r250521
2017-07-25 14:16:10 +00:00
Jakub Jelinek
774cccdc1a re PR target/81532 (insn does not satisfy its constraints: extract_constrain_insn, at recog.c:2213)
PR target/81532
	* config/i386/constraints.md (Yd, Ye): Use ALL_SSE_REGS for
	TARGET_AVX512DQ rather than TARGET_AVX512BW.

	* gcc.target/i386/pr80833-3.c: New test.
	* gcc.target/i386/avx512dq-pr81532.c: New test.
	* gcc.target/i386/avx512bw-pr81532.c: New test.

From-SVN: r250520
2017-07-25 15:35:17 +02:00
Tamar Christina
b3afe7922a parsecpu.awk (all_cores): Remove duplicates.
2017-07-25  Tamar Christina  <tamar.christina@arm.com>

	* config/arm/parsecpu.awk (all_cores): Remove duplicates.

From-SVN: r250519
2017-07-25 13:25:36 +00:00
Richard Biener
1aa54f90e6 re PR tree-optimization/81455 (Compile-time hog w/ -O1 -funswitch-loops)
2017-07-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/81455
	* tree-ssa-loop-unswitch.c (find_loop_guard): Make sure to
	not walk in cycles when looking for guards.

	* gcc.dg/pr81455.c: New testcase.

From-SVN: r250518
2017-07-25 13:24:51 +00:00
Richard Biener
e294f49589 re PR tree-optimization/81529 (ICE in vectorizable_induction, at tree-vect-loop.c:6613)
2017-07-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/81529
	* tree-vect-stmts.c (process_use): Disregard live induction PHIs
	when optimizing backedge uses.

	* gfortran.dg/pr81529.f90: New testcase.

From-SVN: r250517
2017-07-25 13:22:31 +00:00
David Edelsohn
7e78cfda82 dwarf2asm.c (dw2_asm_output_nstring): Encode double quote character for AIX.
* dwarf2asm.c (dw2_asm_output_nstring): Encode double quote
        character for AIX.
        * dwarf2out.c (output_macinfo): Copy debug_line_section_label
        to dl_section_ref.  On AIX, append an expression to subtract
        the size of the section length to dl_section_ref.

From-SVN: r250516
2017-07-25 09:11:37 -04:00
Marek Polacek
8595f67be2 * c-decl.c (grokfield): Remove local variable.
From-SVN: r250513
2017-07-25 12:06:12 +00:00
Wilco Dijkstra
edf8ba4bba re PR target/79041 (aarch64 backend emits R_AARCH64_ADR_PREL_PG_HI21 relocation despite -mpc-relative-literal-loads option being used)
Fix PR79041

Add missing scan assembler to testcase.

    gcc/testsuite/
	* gcc.target/aarch64/pr79041-2.c: Improve test.

From-SVN: r250512
2017-07-25 12:03:13 +00:00
Jakub Jelinek
974c0165db * ioparm.def: Use 1U << 31 instead of 1 << 31 as flags2 mask.
From-SVN: r250510
2017-07-25 13:44:49 +02:00
Segher Boessenkool
2c811fd348 Do not silently continue if config.{build,host,gcc} fails
If config.{build,host,gcc} fails, configure currently silently
continues.  This then makes it much harder than necessary to notice
you made a stupid pasto in config.gcc (and where exactly).


	* configure.ac: If any of the config.* scripts fail, exit 1.
	* configure: Regenerate.

From-SVN: r250507
2017-07-25 13:34:57 +02:00
Richard Biener
ea0638714c re PR tree-optimization/81410 (-O3 breaks code)
2017-07-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/81410
	* gcc.dg/vect/pr81410.c: Do not typedef uint64_t.

From-SVN: r250506
2017-07-25 11:28:08 +00:00
Richard Biener
01614e64b3 re PR tree-optimization/81546 (ICE at -O3 during GIMPLE pass dom)
2017-07-25  Richard Biener  <rguenther@suse.de>

	PR middle-end/81546
	* tree-ssa-operands.c (verify_imm_links): Remove cap on number
	of immediate uses, be more verbose on errors.

From-SVN: r250505
2017-07-25 11:05:55 +00:00
Richard Biener
5ea71a5a7c re PR tree-optimization/81510 (ice in operator[], at vec.h:749)
2017-07-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/81510
	* tree-vect-loop.c (vect_is_simple_reduction): When the
	reduction stmt is not inside the loop bail out.

	* gcc.dg/torture/pr81510.c: New testcase.
	* gcc.dg/torture/pr81510-2.c: Likewise.

From-SVN: r250504
2017-07-25 11:02:32 +00:00
Richard Biener
fdd293743d re PR tree-optimization/81303 (410.bwaves regression caused by r249919)
2017-07-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/81303
	* tree-vect-loop-manip.c (vect_loop_versioning): Build
	profitability check against LOOP_VINFO_NITERSM1.

From-SVN: r250503
2017-07-25 10:59:15 +00:00
Alexander Monakov
e5df270eec domwalk: optimize basic block sorting
* domwalk.c (cmp_bb_postorder): Simplify.
	(sort_bbs_postorder): New function.  Use it...
	(dom_walker::walk): ...here to optimize common cases.

From-SVN: r250502
2017-07-25 13:53:58 +03:00
Martin Liska
4287b4e84c Fix wrong condition in ipa-visibility.c (PR ipa/81520).
2017-07-25  Martin Liska  <mliska@suse.cz>

	PR ipa/81520
	* ipa-visibility.c (function_and_variable_visibility): Make the redirection
	just on target that do supporting aliasing.  Fix GNU coding style.
2017-07-25  Martin Liska  <mliska@suse.cz>

	PR ipa/81520
	* gcc.dg/ipa/pr81520.c: New test.

From-SVN: r250501
2017-07-25 10:20:23 +00:00
Sebastian Huber
99f0897469 [RTEMS] Add GCC Runtime Library Exception
gcc/

	PR libgcc/61152
	* config/aarch64/rtems.h: Add GCC Runtime Library Exception.
	Format changes.
	* config/arm/rtems.h: Likewise.
	* config/bfin/rtems.h: Likewise.
	* config/i386/rtemself.h: Likewise.
	* config/lm32/rtems.h: Likewise.
	* config/m32c/rtems.h: Likewise.
	* config/m68k/rtemself.h: Likewise.
	* config/microblaze/rtems.h: Likewise.
	* config/mips/rtems.h: Likewise.
	* config/moxie/rtems.h: Likewise.
	* config/nios2/rtems.h: Likewise.
	* config/powerpcspe/rtems.h: Likewise.
	* config/rs6000/rtems.h: Likewise.
	* config/rtems.h: Likewise.
	* config/sh/rtems.h: Likewise.
	* config/sh/rtemself.h: Likewise.
	* config/sparc/rtemself.h: Likewise.

From-SVN: r250500
2017-07-25 10:06:23 +00:00
Georg-Johann Lay
d172f538fd re PR lto/81487 ([mingw32] ld.exe: error: asprintf failed)
gcc/
	PR 81487
	* hsa-brig.c (brig_init): Use xasprintf instead of asprintf.
	* gimple-pretty-print.c (dump_profile, dump_probability): Same.
	* tree-ssa-structalias.c (alias_get_name): Same.

From-SVN: r250499
2017-07-25 09:59:44 +00:00
Marek Polacek
d49718d6ff re PR c/81364 (Bogus -Wmultistatement-macros warning)
PR c/81364
	* c-parser.c (c_parser_else_body): Don't warn about multistatement
	macro expansion if the body is in { }.
	(c_parser_while_statement): Likewise.
	(c_parser_for_statement): Likewise.

	* Wmultistatement-macros-12.c: New test.

From-SVN: r250498
2017-07-25 09:49:08 +00:00
Bin Cheng
0e82a9b942 re PR target/81414 (ICE in fma steering on AArch64/cortex-a57)
PR target/81414
	* config/aarch64/cortex-a57-fma-steering.c (analyze): Skip fmul/fmac
	instructions if no du chain is found.

	gcc/testsuite
	* gcc.target/aarch64/pr81414.C: New.

From-SVN: r250496
2017-07-25 08:31:22 +00:00
Georg-Johann Lay
198104af57 * config/avr/avr-log.c (avr_log_vadump) ['T']: Print NULL-TREE.
From-SVN: r250495
2017-07-25 08:05:11 +00:00
Richard Biener
3d99332b9a re PR sanitizer/81505 (ICE in tree-ssa-loop-manip.c:95 with -fsanitize=signed-integer-overflow)
2017-07-25  Richard Biener  <rguenther@suse.de>

	PR middle-end/81505
	* fold-const.c (fold_negate_const): TREE_OVERFLOW should be
	sticky.

	* gcc.dg/ubsan/pr81505.c: New testcase.

From-SVN: r250494
2017-07-25 07:04:07 +00:00
GCC Administrator
7ad5808da9 Daily bump.
From-SVN: r250493
2017-07-25 00:16:18 +00:00
Daniel Santos
52d0f7bda7 PR testsuite/80759 Fix broken tests in ms-sysv.exp
2017-07-24  Daniel Santos  <daniel.santos@pobox.com>

	PR testsuite/80759
	* gcc.target/x86_64/abi/ms-sysv/do-test.S
	(ELFFN_BEGIN): Rename to FN_TYPE.
	(ELFFN_END): Rename to FN_SIZE.
	(ASMNAME): New macro.
	(FUNC): Rename to FUNC_BEGIN, use ASMNAME and use .globl instead of
	.global.
	(FUNC_END): Use ASMNAME.
	(test_data_save): Remove.
	(test_data_input): Likewise.
	(test_data_output: Likewise.
	(test_data_fn): Likewise.
	(test_data_retaddr): Likewise.
	(regs_to_mem): Make globals, use r10 instead of rax.
	(mem_to_regs): Likewise.
	(do_test_unaligned): Remove .cfi directives, remove pushf/popf, move
	body to ms-sysv.c.
	(do_test_aligned): Likewise.
	* gcc.target/x86_64/abi/ms-sysv/ms-sysv.c:
	Add dg-* directives.
	(PASTE_STR): New macro.
	(ASMNAME): Likewise.
	(LOAD_TEST_DATA_ADDR): Likewise.
	(TEST_DATA_OFFSET): Likewise.
	(do_test_body0): New C function.
	(do_test_body): New inline assembly routine.
	* gcc.target/x86_64/abi/ms-sysv/ms-sysv.exp
	(runtest_ms_sysv): Modify.

From-SVN: r250489
2017-07-24 22:00:35 +00:00
Daniel Santos
9cbc07ccff PR testsuite/80759 Fix -mcall-ms2sysv-xlogues on Darwin and Solaris
2017-07-24  Daniel Santos  <daniel.santos@pobox.com>

	PR testsuite/80759
	* config.host: include i386/t-msabi for darwin and solaris.
	* config/i386/i386-asm.h
	(ELFFN): Rename to FN_TYPE.
	(FN_SIZE): New macro.
	(FN_HIDDEN): Likewise.
	(ASMNAME): Likewise.
	(FUNC_START): Rename to FUNC_BEGIN, use ASMNAME, replace .global with
	.globl.
	(HIDDEN_FUNC): Use ASMNAME and .globl instead of .global.
	(SSE_SAVE): Convert to cpp macro, hard-code offset (always 0x60).
	* config/i386/resms64.S: Use SSE_SAVE as cpp macro instead of gas
	.macro.
	* config/i386/resms64f.S: Likewise.
	* config/i386/resms64fx.S: Likewise.
	* config/i386/resms64x.S: Likewise.
	* config/i386/savms64.S: Likewise.
	* config/i386/savms64f.S: Likewise.

From-SVN: r250488
2017-07-24 21:59:57 +00:00
Michael Meissner
1993098939 rs6000-cpus.def (ISA_2_6_MASKS_SERVER): Delete upper-regs options.
[gcc]
2017-07-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000-cpus.def (ISA_2_6_MASKS_SERVER): Delete
	upper-regs options.
	(ISA_2_7_MASKS_SERVER): Likewise.
	(ISA_3_0_MASKS_IEEE): Likewise.
	(OTHER_P8_VECTOR_MASKS): Likewise.
	(OTHER_VSX_VECTOR_MASKS): Likewise.
	(POWERPC_MASKS): Likewise.
	(power7 cpu): Use ISA_2_6_MASKS_SERVER instead of using a
	duplicate list of options.
	* config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Remove
	explicit -mupper-regs options.
	* config/rs6000/rs6000.opt (-mvsx-scalar-memory): Delete
	-mupper-regs* options.  Delete -mvsx-scalar-memory, which was an
	alias for -mupper-regs-df.
	* config/rs6000/rs6000.c (rs6000_setup_reg_addr_masks): Likewise.
	(rs6000_init_hard_regno_mode_ok): Likewise.
	(rs6000_option_override_internal): Likewise.
	(rs6000_opt_masks): Likewise.
	* config/rs6000/rs6000.h (TARGET_UPPER_REGS_DF): Define upper regs
	options in terms of whether -mvsx or -mpower8-vector was used.
	(TARGET_UPPER_REGS_DI): Likewise.
	(TARGET_UPPER_REGS_SF): Likewise.
	* doc/invoke.texi (RS/6000 and PowerPC Options): Delete the
	-mupper-regs-* options.

[gcc/testsuite]
2017-07-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/pr65849-1.c: Delete, test no longer valid
	since the upper-regs options have been deleted.
	* gcc.target/powerpc/pr65849-2.c: Likewise.
	* gcc.target/powerpc/pr80099-1.c: Likewise.
	* gcc.target/powerpc/pr80099-2.c: Likewise.
	* gcc.target/powerpc/pr80099-3.c: Likewise.
	* gcc.target/powerpc/pr80099-4.c: Likewise.
	* gcc.target/powerpc/pr80099-5.c: Likewise.
	* gcc.target/powerpc/builtins-2-p9-runnable.c: Update test to
	support removal of the upper-regs options.
	* gcc.target/powerpc/p8vector-fp.c: Likewise.
	* gcc.target/powerpc/p8vector-ldst.c: Likewise.
	* gcc.target/powerpc/p9-dimode1.c: Likewise.
	* gcc.target/powerpc/p9-dimode2.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-1.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-10.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-5.c: Likewise.
	* gcc.target/powerpc/ppc-fpconv-9.c: Likewise.
	* gcc.target/powerpc/ppc-round.c: Likewise.
	* gcc.target/powerpc/pr71720.c: Likewise.
	* gcc.target/powerpc/pr72853.c: Likewise.
	* gcc.target/powerpc/pr79907.c: Likewise.
	* gcc.target/powerpc/pr78953.c: Likewise.
	* gcc.target/powerpc/upper-regs-df.c: Likewise.
	* gcc.target/powerpc/upper-regs-sf.c: Likewise.
	* gcc.target/powerpc/vec-extract-1.c: Likewise.
	* gcc.target/powerpc/vec-init-3.c: Likewise.
	* gcc.target/powerpc/vec-init-6.c: Likewise.
	* gcc.target/powerpc/vec-init-7.c: Likewise.
	* gcc.target/powerpc/vec-set-char.c: Likewise.
	* gcc.target/powerpc/vec-set-int.c: Likewise.
	* gcc.target/powerpc/vec-set-short.c: Likewise.

From-SVN: r250482
2017-07-24 20:02:33 +00:00
Segher Boessenkool
0281547a1d passes: Print a header in emergency_dump_function
Currently the emergency dump has no separation whatsoever from any
previous output in the dump file, making it harder than necessary
to find.


	* passes.c (emergency_dump_function): Print some empty lines and a
	header before the RTL dump.

From-SVN: r250481
2017-07-24 21:48:57 +02:00
Segher Boessenkool
9fcaf05991 cfgrtl: Don't crash in rtl_dump_bb if BB_END(bb) is NULL
Currently rtl_dump_bb crashes if BB_END(bb) is NULL, like it can be
during expand (rtl_dump_bb can be called at any time, by the emergency
dump added recently for example).

This fixes it.


	* cfgrtl.c (rtl_dump_bb): Don't call NEXT_INSN on NULL.

From-SVN: r250480
2017-07-24 21:47:15 +02:00
Wilco Dijkstra
d47d34bb22 re PR target/79041 (aarch64 backend emits R_AARCH64_ADR_PREL_PG_HI21 relocation despite -mpc-relative-literal-loads option being used)
Fix PR79041

As described in PR79041, -mcmodel=large -mpc-relative-literal-loads
may be used to avoid generating ADRP/ADD or ADRP/LDR.  However both
trunk and GCC7 may still emit ADRP for some constant pool literals.
Fix this by adding a aarch64_pcrelative_literal_loads check.

gcc/
	PR target/79041
	* config/aarch64/aarch64.c (aarch64_classify_symbol):
	Avoid SYMBOL_SMALL_ABSOLUTE for literals with pc-relative literals
gcc/testsuite/
	* gcc.target/aarch64/pr79041-2.c: New test.

From-SVN: r250478
2017-07-24 18:06:37 +00:00
Carl Love
26bca0ed48 rs6000-c.c: Add support for built-in functions vector float vec_extract_fp32_from_shorth...
gcc/ChangeLog:

2017-07-24  Carl Love  <cel@us.ibm.com>

	* config/rs6000/rs6000-c.c: Add support for built-in functions
	vector float vec_extract_fp32_from_shorth (vector unsigned short);
	vector float vec_extract_fp32_from_shortl (vector unsigned short);
	* config/rs6000/altivec.h (vec_extract_fp_from_shorth,
	vec_extract_fp_from_shortl): Add defines for the two builtins.
	* config/rs6000/rs6000-builtin.def (VEXTRACT_FP_FROM_SHORTH,
	VEXTRACT_FP_FROM_SHORTL): Add BU_P9V_OVERLOAD_1 and BU_P9V_VSX_1
	new builtins.
	* config/rs6000/vsx.md vsx_xvcvhpsp): Add define_insn.
	(vextract_fp_from_shorth, vextract_fp_from_shortl): Add define_expands.
	* doc/extend.texi: Update the built-in documentation file for the
	new built-in function.

gcc/testsuite/ChangeLog:

2017-07-24  Carl Love  <cel@us.ibm.com>

	* gcc.target/powerpc/builtins-3-p9-runnable.c: Add new test file for
	the new built-ins.

From-SVN: r250477
2017-07-24 16:50:22 +00:00
Jakub Jelinek
570e228b5e re PR target/81521 (After [r250413] GCC 8.0 doesn't compile for Windows)
PR bootstrap/81521
	* tree.def: Remove TYPE_METHODS documentation, adjust TYPE_FIELDS
	documentation.
	* doc/generic.texi: Likewise.
	* config/i386/winnt-cxx.c (i386_pe_adjust_class_at_definition): Look
	for FUNCTION_DECLs in TYPE_FIELDS rather than TYPE_METHODS.

From-SVN: r250476
2017-07-24 15:02:06 +02:00
Jackson Woodruff
4b40986c04 [AArch64, Patch] Generate MLA when multiply + add vector by scalar
(On behalf of jackson.woodruff@arm.com)

This merges vector multiplies and adds into a single mla instruction
when the multiplication is done by a scalar.

    typedef int __attribute__((vector_size(16))) vec;

    vec
    mla1(vec v0, vec v1, int v2)
    {
      return v0 + v1 * c;
    }

Now generates:

    mla1:
        fmov   s2, w0
        mla    v0.4s, v1.4s, v2.s[0]

This is also done for the identical case for a multiply followed by a
subtract of vectors with an integer operand on the multiply.

gcc/

2017-07-24  Jackson Woodruff  <jackson.woodruff@arm.com>

        * config/aarch64/aarch64-simd.md (aarch64_mla_elt_merge<mode>): New.
        (aarch64_mls_elt_merge<mode>): Likewise.

gcc/testsuite/

2017-07-24  Jackson Woodruff  <jackson.woodruff@arm.com>

	* gcc.target/aarch64/simd/vmla_elem_1.c: New.

From-SVN: r250475
2017-07-24 11:37:09 +00:00
Thomas Koenig
e678ce869e ChangeLog: Fix typo in date and ommitted PR number.
2017-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* ChangeLog: Fix typo in date and ommitted PR number.

From-SVN: r250474
2017-07-24 10:48:57 +00:00
Thomas Koenig
ff9a87509d unix.c (buf_write): Return early if there is nothing to write.
2017-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* io/unix.c (buf_write):  Return early if there is
	nothing to write.

From-SVN: r250473
2017-07-24 10:42:23 +00:00
Thomas Koenig
cedc228d1c dump-parse-tree.c (show_symbol): Show binding label if present.
2017-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* dump-parse-tree.c (show_symbol):  Show binding label if present.

From-SVN: r250472
2017-07-24 10:36:30 +00:00
Thomas Koenig
213c3b7b7c re PR fortran/66102 (dependency mishandling with reallocation on assignment)
2017-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
	    Mikael Morin <mikael@gcc.gnu.org>

	PR fortran/66102
	* fortran/trans-array.c (gfc_conv_resolve_dependencies):
	Break if dependency has been found.

2017-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
	    Mikael Morin <mikael@gcc.gnu.org>

	PR fortran/66102
	* gfortran.dg/realloc_on_assign_28.f90:  New test.


Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>

From-SVN: r250471
2017-07-24 09:50:28 +00:00
GCC Administrator
ffe64f24cc Daily bump.
From-SVN: r250470
2017-07-24 00:17:01 +00:00
Krister Walfridsson
b74103ef6b config.gcc (*-*-netbsd*): Remove check for NetBSD versions not having __cxa_atexit.
2017-07-23  Krister Walfridsson  <krister.walfridsson@gmail.com>

	* config.gcc (*-*-netbsd*): Remove check for NetBSD versions not
	having __cxa_atexit.

From-SVN: r250466
2017-07-23 23:43:08 +00:00
Michael Collison
33cd5f8f42 arm.c (arm_option_override): Deprecate use of -mstructure-size-boundary.
2017-07-23  Michael Collison  <michael.collison@arm.com>

	* config/arm/arm.c (arm_option_override): Deprecate
	use of -mstructure-size-boundary.
	* config/arm/arm.opt: Deprecate -mstructure-size-boundary.
	* doc/invoke.texi: Deprecate -mstructure-size-boundary.

From-SVN: r250465
2017-07-23 23:07:12 +00:00
Michael Collison
5bbf7664c3 Add optimized implementation of mersenne twister for aarch64
2017-07-23  Michael Collison  <michael.collison@arm.com>

	Add optimized implementation of mersenne twister for aarch64
	* config/cpu/aarch64/opt/ext/opt_random.h: New file.
	(__arch64_recursion): New function.
	(__aarch64_lsr_128): New function.
	(__aarch64_lsl_128): New function.
	(operator==): New function.
	(simd_fast_mersenne_twister_engine): Implement
	method _M_gen_rand.
	* config/cpu/aarch64/opt/bits/opt_random.h: New file.
	* include/ext/random: (simd_fast_mersenne_twister_engine):
	add _M_state private array.

From-SVN: r250464
2017-07-23 22:46:34 +00:00
Alexander Monakov
c5014982ba fortran: fix pair_cmp qsort comparator
* interface.c (pair_cmp): Fix gfc_symbol comparison.  Adjust comment.

From-SVN: r250463
2017-07-23 21:40:24 +03:00
David Edelsohn
e2b71b5ac0 pr56727-2.c: Limit to powerpc-linux.
* gcc.dg/pr56727-2.c: Limit to powerpc-linux.
        * gcc.dg/debug/dwarf2/stacked-qualified-types-3.c: Remove AIX XFAIL.

From-SVN: r250462
2017-07-23 13:55:19 -04:00
Bill Schmidt
3597188b4b re PR target/80695 (gratuitous use of stxvx to store multiple pointers)
2017-07-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR target/80695
	* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
	Reduce cost estimate for direct moves.

From-SVN: r250461
2017-07-23 15:32:37 +00:00
Uros Bizjak
f36dda3b64 re PR target/80569 (i686: "shrx" instruction generated in 16-bit mode)
PR target/80569
	* config/i386/i386.c (ix86_option_override_internal): Disable
	BMI, BMI2 and TBM instructions for -m16.

testsuite/ChangeLog:

	PR target/80569
	* gcc.target/i386/pr80569.c: New test.

From-SVN: r250459
2017-07-23 12:28:26 +02:00
François Dumont
4a15d84228 re PR libstdc++/81064 (Inline namespace regression)
2017-07-23  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/81064
	* include/bits/algorithmfwd.h: Reorganize versioned namespace.
	* include/bits/basic_string.h: Likewise.
	* include/bits/c++config: Likewise.
	* include/bits/deque.tcc: Likewise.
	* include/bits/forward_list.h: Likewise.
	* include/bits/forward_list.tcc: Likewise.
	* include/bits/hashtable_policy.h: Likewise.
	* include/bits/list.tcc: Likewise.
	* include/bits/move.h: Likewise.
	* include/bits/quoted_string.h: Likewise.
	* include/bits/random.h: Likewise.
	* include/bits/random.tcc: Likewise.
	* include/bits/regex.h: Likewise.
	* include/bits/regex.tcc: Likewise.
	* include/bits/regex_automaton.h: Likewise.
	* include/bits/regex_automaton.tcc: Likewise.
	* include/bits/regex_compiler.h: Likewise.
	* include/bits/regex_compiler.tcc: Likewise.
	* include/bits/regex_constants.h: Likewise.
	* include/bits/regex_error.h: Likewise.
	* include/bits/regex_executor.h: Likewise.
	* include/bits/regex_executor.tcc: Likewise.
	* include/bits/regex_scanner.h: Likewise.
	* include/bits/regex_scanner.tcc: Likewise.
	* include/bits/specfun.h: Likewise.
	* include/bits/stl_algo.h: Likewise.
	* include/bits/stl_algobase.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_iterator.h: Likewise.
	* include/bits/stl_iterator_base_funcs.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/bits/stl_relops.h: Likewise.
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/uniform_int_dist.h: Likewise.
	* include/bits/unordered_map.h: Likewise.
	* include/bits/unordered_set.h: Likewise.
	* include/bits/vector.tcc: Likewise.
	* include/c_global/cmath: Likewise.
	* include/c_std/cmath: Likewise.
	* include/decimal/decimal: Likewise.
	* include/decimal/decimal.h: Likewise.
	* include/experimental/algorithm: Likewise.
	* include/experimental/any: Likewise.
	* include/experimental/array: Likewise.
	* include/experimental/bits/erase_if.h: Likewise.
	* include/experimental/bits/fs_dir.h: Likewise.
	* include/experimental/bits/fs_fwd.h: Likewise.
	* include/experimental/bits/fs_ops.h: Likewise.
	* include/experimental/bits/fs_path.h: Likewise.
	* include/experimental/bits/lfts_config.h: Likewise.
	* include/experimental/bits/shared_ptr.h: Likewise.
	* include/experimental/bits/string_view.tcc: Likewise.
	* include/experimental/chrono: Likewise.
	* include/experimental/deque: Likewise.
	* include/experimental/filesystem: Likewise.
	* include/experimental/forward_list: Likewise.
	* include/experimental/functional: Likewise.
	* include/experimental/iterator: Likewise.
	* include/experimental/list: Likewise.
	* include/experimental/map: Likewise.
	* include/experimental/memory: Likewise.
	* include/experimental/memory_resource: Likewise.
	* include/experimental/numeric: Likewise.
	* include/experimental/optional: Likewise.
	* include/experimental/propagate_const: Likewise.
	* include/experimental/random: Likewise.
	* include/experimental/ratio: Likewise.
	* include/experimental/regex: Likewise.
	* include/experimental/set: Likewise.
	* include/experimental/source_location: Likewise.
	* include/experimental/string: Likewise.
	* include/experimental/string_view: Likewise.
	* include/experimental/system_error: Likewise.
	* include/experimental/tuple: Likewise.
	* include/experimental/type_traits: Likewise.
	* include/experimental/unordered_map: Likewise.
	* include/experimental/unordered_set: Likewise.
	* include/experimental/utility: Likewise.
	* include/experimental/vector: Likewise.
	* include/ext/bitmap_allocator.h: Likewise.
	* include/ext/codecvt_specializations.h: Likewise.
	* include/ext/rope: Likewise.
	* include/ext/typelist.h: Likewise.
	* include/std/chrono: Likewise.
	* include/std/complex: Likewise.
	* include/std/functional: Likewise.
	* include/std/numeric: Likewise.
	* include/std/string_view: Likewise.
	* include/std/thread: Likewise.
	* include/std/variant: Likewise.
	* include/tr1/array: Likewise.
	* include/tr1/bessel_function.tcc: Likewise.
	* include/tr1/beta_function.tcc: Likewise.
	* include/tr1/cmath: Likewise.
	* include/tr1/complex: Likewise.
	* include/tr1/ell_integral.tcc: Likewise.
	* include/tr1/exp_integral.tcc: Likewise.
	* include/tr1/functional: Likewise.
	* include/tr1/functional_hash.h: Likewise.
	* include/tr1/gamma.tcc: Likewise.
	* include/tr1/hashtable.h: Likewise.
	* include/tr1/hashtable_policy.h: Likewise.
	* include/tr1/hypergeometric.tcc: Likewise.
	* include/tr1/legendre_function.tcc: Likewise.
	* include/tr1/modified_bessel_func.tcc: Likewise.
	* include/tr1/poly_hermite.tcc: Likewise.
	* include/tr1/poly_laguerre.tcc: Likewise.
	* include/tr1/random.h: Likewise.
	* include/tr1/random.tcc: Likewise.
	* include/tr1/regex: Likewise.
	* include/tr1/riemann_zeta.tcc: Likewise.
	* include/tr1/shared_ptr.h: Likewise.
	* include/tr1/special_function_util.h: Likewise.
	* include/tr1/tuple: Likewise.
	* include/tr1/type_traits: Likewise.
	* include/tr1/unordered_map.h: Likewise.
	* include/tr1/unordered_set.h: Likewise.
	* include/tr1/utility: Likewise.
	* include/tr2/bool_set: Likewise.
	* include/tr2/bool_set.tcc: Likewise.
	* include/tr2/dynamic_bitset: Likewise.
	* include/tr2/dynamic_bitset.tcc: Likewise.
	* include/tr2/ratio: Likewise.
	* include/tr2/type_traits: Likewise.
	* src/c++11/chrono.cc: Likewise.
	* src/c++11/compatibility-c++0x.cc: Likewise.
	* src/c++11/compatibility-chrono.cc: Likewise.
	* src/c++11/cxx11-shim_facets.cc: Likewise.
	* src/c++11/hashtable_c++0x.cc: Likewise.
	* src/c++11/placeholders.cc: Likewise.
	* src/c++11/thread.cc: Likewise.
	* src/c++98/bitmap_allocator.cc: Likewise.
	* src/c++98/hashtable_tr1.cc: Likewise.
	* src/c++98/list.cc: Likewise.
	* src/shared/hashtable-aux.cc: Likewise.
	* testsuite/20_util/duration/literals/range.cc: Adapt line number.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
	* testsuite/20_util/forward/c_neg.cc: Likewise.
	* testsuite/20_util/forward/f_neg.cc: Likewise.
	* testsuite/26_numerics/gcd/gcd_neg.cc: Likewise.
	* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
	* testsuite/26_numerics/random/pr60037-neg.cc: Likewise.
	* python/libstdcxx/v6/printers.py: Adapt.

From-SVN: r250458
2017-07-23 08:41:35 +00:00
GCC Administrator
ab45a34c44 Daily bump.
From-SVN: r250457
2017-07-23 00:16:26 +00:00