Commit Graph

159746 Commits

Author SHA1 Message Date
Igor Tsimbalist 95df04335b Additional fix for PR 84239.
PR target/84239
	* libgcc/config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
	Include cetintrin.h not x86intrin.h.

From-SVN: r257730
2018-02-16 11:19:14 +01:00
Martin Liska d80956bb05 Set proper internal functions fnspec (PR sanitizer/84307).
2018-02-16  Martin Liska  <mliska@suse.cz>

	PR sanitizer/84307
	* internal-fn.def (ASAN_CHECK): Set proper flags.
	(ASAN_MARK): Likewise.

From-SVN: r257729
2018-02-16 10:03:47 +00:00
Julia Koval 59cf684812 Remove CLWB from Cannonlake.
gcc/
	* config/i386/i386.c (ix86_option_override_internal): Remove PTA_CLWB
	from PTA_CANNONLAKE.

From-SVN: r257728
2018-02-16 10:31:49 +01:00
Jakub Jelinek 1e6d3b10e3 re PR target/84272 (AddressSanitizer: heap-use-after-free ../../gcc/config/aarch64/cortex-a57-fma-steering.c:519 in fma_node::get_parity())
PR target/84272
	* config/aarch64/cortex-a57-fma-steering.c (fma_forest::merge_forest):
	Use ++iter rather than iter++ for std::list iterators.
	(func_fma_steering::dfs): Likewise.  Don't delete nodes right away,
	defer deleting them until all nodes in the forest are processed.  Do
	free even leaf nodes.  Change to_process into auto_vec.

	* g++.dg/opt/pr84272.C: New test.

From-SVN: r257727
2018-02-16 10:26:27 +01:00
Jakub Jelinek ab67039ccd re PR bootstrap/84405 (Fails to bootstrap with GCC 4.1.2, GCC 4.2.4)
PR bootstrap/84405
	* system.h (BROKEN_VALUE_INITIALIZATION): Define for GCC < 4.3.
	* vec.h (vec_default_construct): Use memset instead of placement new
	if BROKEN_VALUE_INITIALIZATION is defined.
	* hash-table.h (hash_table<Descriptor, Allocator>::empty_slow): Use
	memset instead of value initialization if BROKEN_VALUE_INITIALIZATION
	is defined.

From-SVN: r257726
2018-02-16 10:05:35 +01:00
Jakub Jelinek 33006d53fd re PR rtl-optimization/83723 (ICE: in gen_rtx_SUBREG, at emit-rtl.c:1010)
PR rtl-optimization/83723
	* lra-int.h (lra_substitute_pseudo): Add DEBUG_P argument.
	* lra.c (lra_substitute_pseudo): Likewise.  If true, use
	gen_rtx_raw_SUBREG instead of gen_rtx_SUBREG.  Pass DEBUG_P to
	recursive calls.
	(lra_substitute_pseudo_within_insn): Adjust lra_substitute_pseudo
	callers.
	* lra-constraints.c (inherit_reload_reg, split_reg): Likewise.

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

From-SVN: r257725
2018-02-16 10:04:00 +01:00
Eric Botcazou c9b34e397c re PR rtl-optimization/81443 (build/genrecog.o: virtual memory exhausted: Cannot allocate memory)
PR rtl-optimization/81443
	* rtlanal.c (num_sign_bit_copies1) <SUBREG>: Do not propagate results
	from inner REGs to paradoxical SUBREGs.

From-SVN: r257724
2018-02-16 08:20:32 +00:00
Richard Biener 4cf55739fd re PR tree-optimization/84399 ([graphite] ICE in set_codegen_error, at graphite-isl-ast-to-gimple.c:206)
2018-02-16  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/84399
	* graphite-scop-detection.c (scop_detection::stmt_simple_for_scop_p):
	For operands we can analyze at their definition make sure we can
	analyze them at each use as well.

	* gcc.dg/graphite/pr84399.c: New testcase.

From-SVN: r257723
2018-02-16 08:16:17 +00:00
Richard Biener bd74f4d876 re PR c/84190 (double arithmetic on x86 no longer rounds to nearest)
2018-02-16  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/84190
	* tree-ssa.c (non_rewritable_mem_ref_base): Do not touch
	volatile accesses if the decl isn't volatile.

	* g++.dg/torture/pr84190.C: New testcase.

From-SVN: r257721
2018-02-16 07:56:16 +00:00
Jason Merrill d78aecf472 PR c++/83227 - C++17 ICE with init-list derived-to-base conversion.
* call.c (convert_like_real): Don't use the copy-list-initialization
	shortcut for ck_base.

From-SVN: r257720
2018-02-15 21:47:19 -05:00
GCC Administrator d8865b6ed8 Daily bump.
From-SVN: r257718
2018-02-16 00:16:35 +00:00
Martin Sebor 96b3132853 README (dg-lto-warning, [...]): Document new directives.
gcc/testsuite/ChangeLog:

	* gcc.dg/lto/README (dg-lto-warning, dg-lto-message): Document new
	directives.

From-SVN: r257714
2018-02-15 15:28:23 -07:00
Jason Merrill dd39c7d1cb PR c++/84045 - ICE with typedef and noexcept.
* except.c (build_noexcept_spec): Use strip_typedefs_expr.

From-SVN: r257713
2018-02-15 17:01:33 -05:00
Janus Weil f3ad8745b0 re PR fortran/84409 ([F03] check DTIO arguments for character len)
2018-02-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/84409
	* interface.c (check_dtio_arg_TKR_intent): Add a check for character
	length.


2018-02-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/84409
	* gfortran.dg/dtio_21.f03: Add an error message.
	* gfortran.dg/dtio_22.f90: Fix invalid test case.

From-SVN: r257711
2018-02-15 22:16:00 +01:00
Jonathan Wakely 51f174c0ef PR libstdc++/81797 Add .NOTPARALLEL to include/Makefile for darwin
PR libstdc++/81797
	* configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
	* configure: Regenerate.
	* include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
	defined.
	* include/Makefile.in: Regenerate.

From-SVN: r257710
2018-02-15 20:56:41 +00:00
Jason Merrill 117ad0be08 PR c++/84376 - ICE with omitted template arguments.
* pt.c (dguide_name_p): Check for IDENTIFIER_NODE.

From-SVN: r257706
2018-02-15 14:46:13 -05:00
Thomas Koenig 8908fa3a70 re PR fortran/84381 (replace non-std 'call abort' by 'stop 1' in gfortran testsuite)
2018-02-15  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/84381
	* gfortran.dg/stop_shouldfail.f90: New test.

From-SVN: r257703
2018-02-15 18:46:22 +00:00
Thomas Koenig 2b6bf87a20 2018-02-15 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/stop_shouldfail.f90: New test.

From-SVN: r257702
2018-02-15 18:41:02 +00:00
Jason Merrill 883dfe2aef * c-cppbuiltin.c (c_cpp_builtins): Update __cpp_deduction_guides.
From-SVN: r257700
2018-02-15 13:16:05 -05:00
Jason Merrill 4912defbcc PR c++/84368 - wrong error with local variable in variadic lambda.
* pt.c (tsubst_pack_expansion): Fix handling of non-packs in
	local_specializations.

From-SVN: r257699
2018-02-15 13:15:32 -05:00
Paolo Carlini 4779063140 re PR c++/84330 ([concepts] ICE with broken constraint)
/cp
2018-02-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/84330
	* constraint.cc (tsubst_constraint_info): Handle an error_mark_node
	as first argument.

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

	PR c++/84330
	* g++.dg/concepts/pr84330.C: New.

From-SVN: r257698
2018-02-15 18:05:40 +00:00
Jason Merrill 60887f8c2d PR preprocessor/83063 - __VA_OPT__ and ##
PR preprocessor/83708
	* macro.c (vaopt_state): Reorder m_last_was_paste before m_state.
	(vaopt_state::vaopt_state): Adjust.
	(vaopt_state::update_flags): Add BEGIN and END.
	(vaopt_state::update): Return them.
	(copy_paste_flag): Factor out of replace_args.
	(last_token_is): New.
	(replace_args): Handle BEGIN and END.  Avoid padding there.
	(tokens_buff_last_token_ptr): Return NULL if no tokens.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r257696
2018-02-15 12:43:01 -05:00
Jason Merrill 5cedffbc32 PR c++/84314 - ICE with templates and fastcall attribute.
* attribs.c (build_type_attribute_qual_variant): Don't clobber
	TYPE_CANONICAL on an existing type.

From-SVN: r257695
2018-02-15 11:54:12 -05:00
Aaron Sawdey e72f7e3e76 Fix my changelog entry for PR target/83758
From-SVN: r257690
2018-02-15 08:26:46 -06:00
Tom de Vries 74e8090cbb [testsuite] Require et alloca for Wstringop-overflow-3.c
2018-02-15  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/Wstringop-overflow-3.c: Require effective target alloca.

From-SVN: r257687
2018-02-15 13:05:57 +00:00
Tom de Vries fdb03c2017 [testsuite] Require et indirect_jumps for pr84136.c
2018-02-15  Tom de Vries  <tom@codesourcery.com>

	* gcc.c-torture/compile/pr84136.c: Require effective target
	indirect_jumps.

From-SVN: r257686
2018-02-15 13:05:37 +00:00
Jakub Jelinek bcc23586c5 re PR other/82368 (with r253275 several new test cases in libbacktrace fail)
PR other/82368
	* elf.c (SHT_PROGBITS): Undefine and define.

From-SVN: r257685
2018-02-15 12:32:27 +01:00
Jakub Jelinek 44e60df333 re PR tree-optimization/84383 (ICE in maybe_diag_stxncpy_trunc)
PR tree-optimization/84383
	* tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Don't look at
	dstoff nor call operand_equal_p if dstbase is NULL.

	* gcc.c-torture/compile/pr84383.c: New test.

From-SVN: r257684
2018-02-15 12:18:47 +01:00
Jakub Jelinek 3eb1eecf29 re PR tree-optimization/84334 (Stack overflow with -Ofast -frounding-math)
PR tree-optimization/84334
	* match.pd ((A +- CST1) +- CST2 -> A + CST3): If A is
	also a CONSTANT_CLASS_P, punt.

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

From-SVN: r257683
2018-02-15 12:17:05 +01:00
Jason Merrill 8fa4bd81cb * libcpp/macro.c: Fix typos.
From-SVN: r257682
2018-02-15 00:58:35 -05:00
Jim Wilson 1078932978 RISC-V: Change sp subtracts so prologue stores can compress.
gcc/
	* config/riscv/riscv.c (riscv_first_stack_step): Move locals after
	first SMALL_OPERAND check.  New local min_second_step.  Move assert
	to where locals are set.  Add TARGET_RVC support.
	* config/riscv/riscv.h (C_SxSP_BITS, SWSP_REACH, SDSP_REACH): New.

From-SVN: r257681
2018-02-14 17:14:23 -08:00
Indu Bhagat 1622ba9cef invoke.texi: Correct -Wformat-overflow code sample.
gcc/ChangeLog:

2018-02-14  Indu Bhagat  <indu.bhagat@oracle.com>

	* doc/invoke.texi: Correct -Wformat-overflow code sample.

From-SVN: r257680
2018-02-14 17:47:22 -07:00
GCC Administrator b7a10085c7 Daily bump.
From-SVN: r257679
2018-02-15 00:16:25 +00:00
Martin Sebor 816fad6ed4 PR tree-optimization/83698 - bogus offset in -Wrestrict messages for strcat of unknown strings
gcc/ChangeLog:

	PR tree-optimization/83698
	* gimple-ssa-warn-restrict.c (builtin_memref::builtin_memref): For
	arrays constrain the offset range to their bounds.
	(builtin_access::strcat_overlap): Adjust the bounds of overlap offset.
	(builtin_access::overlap): Avoid setting the size of overlap if it's
	already been set.
	(maybe_diag_overlap): Also consider arrays when deciding what values
	of offsets to include in diagnostics.

gcc/testsuite/ChangeLog:

	PR tree-optimization/83698
	* gcc.dg/Wrestrict-7.c: New test.
	* c-c++-common/Wrestrict.c: Adjust expected values for strcat.
	* gcc.target/i386/chkp-stropt-17.c: Same.

From-SVN: r257676
2018-02-14 16:22:15 -07:00
Carl Love 7c102986d6 gcc/testsuite/ChangeLog:
2018-02-14  Carl Love  <cel@us.ibm.com>
        * gcc.target/powerpc/builtins-4-int128-runnable.c
	(dg-require-effective-target): Change vsx_hw to p8vector_hw.
	(dg-options): Change -maltivec -mvsx to -mpower8-vector.

From-SVN: r257675
2018-02-14 22:12:04 +00:00
Martin Sebor fba303ed8c PR middle-end/84108 - incorrect -Wattributes warning for packed/aligned conflict on struct members
gcc/ChangeLog:

	PR c/84108
	* attribs.c (diag_attr_exclusions): Consider the exclusion(s)
	that correspond to the kind of a declaration.

gcc/testsuite/ChangeLog:

	PR c/84108
	* gcc.dg/Wattributes-8.c: New test.

From-SVN: r257674
2018-02-14 15:02:43 -07:00
Janus Weil ee3bb1b7a2 re PR fortran/84385 ([F03] Reject invalid SELECT TYPE selector (allocate_with_source_22.f03))
2018-02-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/84385
	* match.c (gfc_match_select_type): Fix check for selector in
	SELECT TYPE statement.


2018-02-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/84385
	* gfortran.dg/allocate_with_source_22.f03: Fix invalid test case.
	* gfortran.dg/allocate_with_source_23.f90: Ditto.
	* gfortran.dg/select_type_1.f03: Extend test case.

From-SVN: r257673
2018-02-14 22:46:59 +01:00
John David Anglin 6ae6798943 re PR target/83984 (ld: The value 0x8000000000005 does not fit when applying the relocation DIR21L)
PR target/83984
	* config/pa/pa.md: Load address of PIC label using the linkage table
	if the label is nonlocal.

From-SVN: r257672
2018-02-14 21:13:26 +00:00
Uros Bizjak 4ce5745cab pr57193.c (dg-do): Remove target selector.
* gcc.target/i386/pr57193.c (dg-do): Remove target selector.
	(dg-options): Use -O2 -msse2 -mno-sse3.

From-SVN: r257669
2018-02-14 20:24:04 +01:00
Kelvin Nilsen 49cc0354ba rs6000.c (rs6000_option_override_internal): Issue warning message if user requests -maltivec=be.
gcc/ChangeLog:

2018-02-14  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* config/rs6000/rs6000.c (rs6000_option_override_internal): Issue
	warning message if user requests -maltivec=be.
	* doc/invoke.texi: Document deprecation of -maltivec=be.

gcc/testsuite/ChangeLog:

2018-02-14  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* gcc.dg/vmx/extract-be-order.c: Disable -maltivec=be warning so
	this test case still works ok.
	* gcc.dg/vmx/extract-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/insert-be-order.c: Likewise.
	* gcc.dg/vmx/insert-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/ld-be-order.c: Likewise.
	* gcc.dg/vmx/ld-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/lde-be-order.c: Likewise.
	* gcc.dg/vmx/ldl-be-order.c: Likewise.
	* gcc.dg/vmx/ldl-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/merge-be-order.c: Likewise.
	* gcc.dg/vmx/merge-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/mult-even-odd-be-order.c: Likewise.
	* gcc.dg/vmx/pack-be-order.c: Likewise.
	* gcc.dg/vmx/perm-be-order.c: Likewise.
	* gcc.dg/vmx/splat-be-order.c: Likewise.
	* gcc.dg/vmx/splat-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/st-be-order.c: Likewise.
	* gcc.dg/vmx/st-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/ste-be-order.c: Likewise.
	* gcc.dg/vmx/stl-be-order.c: Likewise.
	* gcc.dg/vmx/stl-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/sum2s-be-order.c: Likewise.
	* gcc.dg/vmx/unpack-be-order.c: Likewise.
	* gcc.dg/vmx/vsums-be-order.c: Likewise.
	* gcc.target/powerpc/vec-setup-be-long.c: Likewise.

From-SVN: r257668
2018-02-14 19:20:30 +00:00
Paolo Carlini 2482a4ec1e re PR c++/84350 (ICE with new and auto)
/cp
2018-02-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/84350
	* pt.c (do_auto_deduction): Don't check the TREE_TYPE of a null
	init, early return.

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

	PR c++/84350
	* g++.dg/cpp0x/auto49.C: New.

From-SVN: r257666
2018-02-14 17:59:29 +00:00
Nathan Sidwell 486c529987 [C++ PATCH]: instantiation via vtable marking
https://gcc.gnu.org/ml/gcc-patches/2018-02/msg00850.html
	gcc/cp/
	* decl2.c (mark_vtable_entries): Set input_location to decl's.
	(c_parse_final_cleanups): Restore input_location after emitting
	vtables.

	gcc/testsuite/
	* g++.dg/template/instantiate5.C: Adjust required-from loc.

From-SVN: r257665
2018-02-14 16:31:26 +00:00
Will Schmidt 34c58a43ec altivec-consts.c: Update compile stanzas.
[testsuite]

2018-02-14  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* gcc.target/powerpc/altivec-consts.c:  Update compile stanzas.
	* gcc.target/powerpc/le-altivec-consts.c:  Same.

From-SVN: r257664
2018-02-14 15:47:54 +00:00
Will Schmidt 911b141ba1 re PR target/84220 (rs6000 builtin __builtin_vec_sld() ICEs on invalid 3rd argument)
[gcc]

2018-02-14  Will Schmidt  <will_schmidt@vnet.ibm.com>

	PR target/84220
	* config/rs6000/rs6000-c.c: Update definitions for
	ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VEC_SLDW,
	ALTIVEC_BUILTIN_VEC_XXPERMDI builtins.

[testsuite]

2018-02-14  Will Schmidt  <will_schmidt@vnet.ibm.com>

	PR target/84220
	* gcc.target/powerpc/pr84220-sld.c: New test.
	* gcc.target/powerpc/pr84220-sld2.c: New test.
	* gcc.target/powerpc/pr84220-sldw.c: New test.
	* gcc.target/powerpc/pr84220-xxperm.c: New test.
	* gcc.target/powerpc/pr84220-xxsld.c: New test.

From-SVN: r257662
2018-02-14 15:32:02 +00:00
Igor Tsimbalist f8de876d8c Reimplement CET intrinsics for rdssp/incssp insn.
Introduce a couple of new CET intrinsics for reading and updating a
shadow stack pointer (_get_ssp and _inc_ssp). They replace the existing
_rdssp[d|q] and _incssp[d|q] instrinsics.

	PR target/84239
	* gcc/config/i386/cetintrin.h: Remove _rdssp[d|q] and
	add _get_ssp intrinsics. Remove argument from
	__builtin_ia32_rdssp[d|q].
	* gcc/config/i386/i386-builtin-types.def: Add UINT_FTYPE_VOID.
	* gcc/config/i386/i386-builtin.def: Remove argument from
	__builtin_ia32_rdssp[d|q].
	* gcc/config/i386/i386.c: Use UINT_FTYPE_VOID. Use
	ix86_expand_special_args_builtin for _rdssp[d|q].
	* gcc/config/i386/i386.md: Remove argument from rdssp[si|di] insn.
	Clear register before usage.
	* doc/extend.texi: Remove argument from __builtin_ia32_rdssp[d|q].
	Add documentation for new _get_ssp and _inc_ssp intrinsics.
	* testsuite/gcc.target/i386/cet-intrin-3.c: Use new _get_ssp and
	_inc_ssp intrinsics.
	* testsuite/gcc.target/i386/cet-intrin-4.c: Likewise.
	* testsuite/gcc.target/i386/cet-rdssp-1.c: Remove argument from
	__builtin_ia32_rdssp[d|q].
	* libgcc/config/i386/shadow-stack-unwind.hi (_Unwind_Frames_Extra):
	Use new _get_ssp and _inc_ssp intrinsics.

From-SVN: r257660
2018-02-14 16:06:21 +01:00
Paolo Carlini 87ca401516 cp-tree.h (do_auto_deduction (tree, tree, tree)): Remove.
2018-02-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* cp-tree.h (do_auto_deduction (tree, tree, tree)): Remove.
	(do_auto_deduction (tree, tree, tree, tsubst_flags_t,
	auto_deduction_context, tree, int): Add defaults.
	* pt.c (do_auto_deduction (tree, tree, tree)): Remove definition.
	(tsubst_omp_for_iterator): Adjust do_auto_deduction call, forward
	tsubst_flags_t argument.
	* init.c (build_new): Likewise.

From-SVN: r257659
2018-02-14 14:19:50 +00:00
Jakub Jelinek da07141fd7 re PR other/82368 (with r253275 several new test cases in libbacktrace fail)
PR other/82368
	* elf.c (EM_PPC64, EF_PPC64_ABI): Undefine and define.
	(struct elf_ppc64_opd_data): New type.
	(elf_initialize_syminfo): Add opd argument, handle symbols
	pointing into the PowerPC64 ELFv1 .opd section.
	(elf_add): Read .opd section on PowerPC64 ELFv1, pass pointer
	to structure with .opd data to elf_initialize_syminfo.

From-SVN: r257658
2018-02-14 15:19:36 +01:00
Richard Sandiford 316b2a2d84 Check array indices in object_address_invariant_in_loop_p (PR 84357)
object_address_invariant_in_loop_p ignored ARRAY_REF indices on
the basis that:

	  /* Index of the ARRAY_REF was zeroed in analyze_indices, thus we only
	     need to check the stride and the lower bound of the reference.  */

That was true back in 2007 when the code was added:

static void
dr_analyze_indices (struct data_reference *dr, struct loop *nest)
{
  [...]
  while (handled_component_p (aref))
    {
      if (TREE_CODE (aref) == ARRAY_REF)
        {
          op = TREE_OPERAND (aref, 1);
          access_fn = analyze_scalar_evolution (loop, op);
          access_fn = resolve_mixers (nest, access_fn);
          VEC_safe_push (tree, heap, access_fns, access_fn);

          TREE_OPERAND (aref, 1) = build_int_cst (TREE_TYPE (op), 0);
        }

      aref = TREE_OPERAND (aref, 0);
    }

but the assignment was removed a few years ago.  We were therefore
treating "two->arr[i]" and "three->arr[i]" as loop invariant.

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

gcc/
	PR tree-optimization/84357
	* tree-data-ref.c (object_address_invariant_in_loop_p): Check
	operand 1 of an ARRAY_REF too.

gcc/testsuite/
	PR tree-optimization/84357
	* gcc.dg/vect/pr84357.c: New test.

From-SVN: r257657
2018-02-14 13:14:51 +00:00
Oleg Endo 06e972705d re PR target/83831 ([RX] Unused bclr,bnot,bset insns)
gcc/
	PR target/83831
	* config/rx/rx-protos.h (rx_reg_dead_or_unused_after_insn,
	rx_copy_reg_dead_or_unused_notes, rx_fuse_in_memory_bitop): New
	declarations.
	(set_of_reg): New struct.
	(rx_find_set_of_reg, rx_find_use_of_reg): New functions.
	* config/rx/rx.c (rx_reg_dead_or_unused_after_insn,
	rx_copy_reg_dead_or_unused_notes, rx_fuse_in_memory_bitop): New
	functions.
	* config/rx/rx.md (andsi3, iorsi3, xorsi3): Convert to insn_and_split.
	Split into bitclr, bitset, bitinvert patterns if appropriate.
	(*bitset, *bitinvert, *bitclr): Convert to named insn_and_split and
	use rx_fuse_in_memory_bitop.
	(*bitset_in_memory, *bitinvert_in_memory, *bitclr_in_memory): Convert
	to named insn, correct maximum insn length.

gcc/testsuite/
	PR target/83831
	* gcc.target/rx/pr83831.c: New tests.

From-SVN: r257655
2018-02-14 12:33:37 +00:00
Jakub Jelinek d1fe612461 re PR fortran/84313 ([F08] reject procedure pointers in COMMON blocks)
PR fortran/84313
	* testsuite/libgomp.fortran/threadprivate4.f90: Add
	-std=f2003 -fall-intrinsics into dg-additional-options.

From-SVN: r257654
2018-02-14 13:12:15 +01:00