Commit Graph

153821 Commits

Author SHA1 Message Date
Jim Wilson
247da19e84 Fix RISCV ICE on linux kernel build.
gcc/
	Backport from mainline
	2017-11-03  Kito Cheng  <kito.cheng@gmail.com>

	* config/riscv/riscv.c (riscv_legitimize_move): Handle
	non-legitimate address.

From-SVN: r255181
2017-11-27 14:33:29 -08:00
GCC Administrator
37c3433979 Daily bump.
From-SVN: r255157
2017-11-27 00:16:08 +00:00
GCC Administrator
3f857988bb Daily bump.
From-SVN: r255152
2017-11-26 00:16:10 +00:00
GCC Administrator
a62b5df31c Daily bump.
From-SVN: r255146
2017-11-25 00:16:11 +00:00
Segher Boessenkool
6b856e6c31 combine: Don't split insns if half is unused (PR82621)
If we have a PARALLEL of two SETs, and one half is unused, we currently
happily split that into two instructions (albeit the unused one is
useless).  Worse, as PR82621 shows, combine will happily merge this
insn into I3 even if some intervening insn sets the same register
again, which is wrong.

This fixes it by not splitting PARALLELs with REG_UNUSED notes.  It
all is handled fine by combine in that case; just the "single set
that is unused" case isn't handled properly.

This also results in better code: combine will now actually throw
away the unused SET.  (It still won't do that in an I3).


	PR rtl-optimization/82621
	* combine.c (try_combine): Do not split PARALLELs of two SETs if the
	dest of one of those SETs is unused.

From-SVN: r255142
2017-11-24 18:00:57 +01:00
GCC Administrator
0dc933f4f5 Daily bump.
From-SVN: r255129
2017-11-24 00:16:16 +00:00
Paul Thomas
a687bfa9f7 backport: re PR fortran/79072 (ICE with class(*) pointer function result and character value)
2017-11-23  Paul Thomas  <pault@gcc.gnu.org>


	Backported from trunk
	PR fortran/79072
	* trans-expr.c (trans_class_vptr_len_assignment): Set from_len
	if the temporary is unlimited polymorphic.
	* trans-stmt.c (trans_associate_var): Use the fake result decl
	to obtain the 'len' field from an explicit function result when
	in that function scope.

2017-11-23  Paul Thomas  <pault@gcc.gnu.org>

	Backported from trunk
	PR fortran/79072
	* gfortran.dg/class_result_5.f90: New test.
	* gfortran.dg/class_result_6.f90: New test.

From-SVN: r255120
2017-11-23 21:02:48 +00:00
Jerry DeLisle
5ed479711f backport: re PR libfortran/78549 (Very slow formatted internal file output)
2017-11-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	Backport from trunk
	PR libgfortran/78549
	* io/io.h (newunit_free): Add declaration. Clean some whitespace.
	* io/transfer.c (st_read_done, st_write_done): Call newunit_free.
	* io/unit.c (newunit_free): Change type from static void to void.

From-SVN: r255108
2017-11-23 17:19:18 +00:00
Oleg Endo
83d51b3e9c backport: re PR target/83111 ([sh] stack smashing detected in gen_udivsi3)
gcc/
	Backport from mainline
	2017-11-23  Oleg Endo  <olegendo@gcc.gnu.org>

	PR target/83111
	* config/sh/sh.md (udivsi3, divsi3, sibcall_value_pcrel,
	sibcall_value_pcrel_fdpic): Use local variable instead of
	operands[3].
	(calli_tbr_rel): Add missing operand 2.
	(call_valuei_tbr_rel): Add missing operand 3.

From-SVN: r255097
2017-11-23 14:08:12 +00:00
GCC Administrator
254cf05059 Daily bump.
From-SVN: r255088
2017-11-23 00:16:09 +00:00
Richard Biener
d938e377b1 revert: backport: re PR rtl-optimization/82044 (runtime signed integer overflow in check_mem_read_rtx() and all_positions_needed_p() in dse.c)
2017-11-22  Richard Biener  <rguenther@suse.de>

	Revert
	2017-11-21  Martin Liska  <mliska@suse.cz>
 
	Backport from mainline
	2017-11-21  Martin Liska  <mliska@suse.cz>

	PR rtl-optimization/82044
	PR tree-optimization/82042
	* dse.c (check_mem_read_rtx): Check for overflow.

From-SVN: r255046
2017-11-22 09:04:47 +00:00
GCC Administrator
496898596e Daily bump.
From-SVN: r255040
2017-11-22 00:16:14 +00:00
Paul Thomas
ddf89dd532 backport: re PR fortran/82586 ([PDT] ICE: write_symbol(): bad module symbol)
2017-11-21  Paul Thomas  <pault@gcc.gnu.org>

	Backported from trunk fix for PR82586
	PR fortran/78686
	* resolve.c (resolve_generic_f): Check usage of derived type by
	calling gfc_use_derived.

2017-11-21  Paul Thomas  <pault@gcc.gnu.org>

	Backported from trunk fix for PR82586
	PR fortran/78686
	* gfortran.dg/pr78686.f90: New test.

From-SVN: r255029
2017-11-21 19:09:01 +00:00
Martin Liska
cef469e76d Backport r254137
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-10-27  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/82457
	* doc/invoke.texi: Document that one needs a non-strict ISO mode
	for fork-like functions to be properly instrumented.

From-SVN: r255028
2017-11-21 19:03:11 +00:00
Pat Haugen
b606d65aa6 ppc-asm.h (f50, vs50): Fix values.
* config/rs6000/ppc-asm.h (f50, vs50): Fix values.

From-SVN: r255026
2017-11-21 19:01:38 +00:00
Thomas Preud'homme
ae95c86478 [ARM] Fix cmse_nonsecure_entry return insn size
A number of instructions are output in assembler form by
output_return_instruction () when compiling a function with the
cmse_nonsecure_entry attribute for Armv8-M Mainline with hardfloat float
ABI. However, the corresponding thumb2_cmse_entry_return insn pattern
does not account for all these instructions in its computing of the
length of the instruction.

This may lead GCC to use the wrong branching instruction due to
incorrect computation of the offset between the branch instruction's
address and the target address.

This commit fixes the mismatch between what output_return_instruction ()
does and what the pattern think it does and adds a note warning about
mismatch in the affected functions' heading comments to ensure code does
not get out of sync again.

Note: no test is provided because the C testcase is fragile (only works
on GCC 6) and the extracted RTL test fails to compile due to bugs in the
RTL frontend (PR82815 and PR82817)

2017-11-21  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    Backport from mainline
    2017-11-09  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * config/arm/arm.c (output_return_instruction): Add comments to
    indicate requirement for cmse_nonsecure_entry return to account
    for the size of clearing instruction output here.
    (thumb_exit): Likewise.
    * config/arm/thumb2.md (thumb2_cmse_entry_return): Fix length for
    return in hardfloat mode.

From-SVN: r255020
2017-11-21 18:14:34 +00:00
Martin Liska
cee2740307 Backport r255001
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-11-21  Martin Liska  <mliska@suse.cz>

	PR rtl-optimization/82044
	PR tree-optimization/82042
	* dse.c (check_mem_read_rtx): Check for overflow.

From-SVN: r255013
2017-11-21 16:02:35 +00:00
Martin Liska
fdd38d7ec3 Backport r254524
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-11-08  Martin Liska  <mliska@suse.cz>

	* gimplify.c (expand_FALLTHROUGH_r): Simplify usage
	of gimple_call_internal_p.

From-SVN: r255012
2017-11-21 16:02:04 +00:00
Martin Liska
20dda3e716 Backport r254519
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-11-08  Martin Liska  <mliska@suse.cz>

	PR sanitizer/82792
	* gimplify.c (expand_FALLTHROUGH_r): Skip IFN_ASAN_MARK.
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-11-08  Martin Liska  <mliska@suse.cz>

	PR sanitizer/82792
	* g++.dg/asan/pr82792.C: New test.

From-SVN: r255011
2017-11-21 16:01:43 +00:00
Martin Liska
11f7624968 Backport r254257
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-10-31  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/82633
	* doc/gcov.texi: Document -fkeep-{static,inline}-functions and
	their interaction with GCOV infrastructure.

From-SVN: r255010
2017-11-21 16:01:16 +00:00
Martin Liska
39ac3ee8a4 Backport r253886
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-10-19  Martin Liska  <mliska@suse.cz>

	PR driver/81829
	* file-find.c (remove_prefix): Remove.
	* file-find.h (remove_prefix): Likewise.
	* gcc-ar.c: Remove smartness of lookup.

From-SVN: r255009
2017-11-21 16:00:55 +00:00
Martin Liska
3e08f9feda Backport r253845
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-10-18  Martin Liska  <mliska@suse.cz>

	PR sanitizer/82545
	* asan.c (asan_expand_poison_ifn): Do not put gimple stmt
	on an abnormal edge.
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-10-18  Martin Liska  <mliska@suse.cz>

	PR sanitizer/82545
	* gcc.dg/asan/pr82545.c: New test.

From-SVN: r255008
2017-11-21 16:00:26 +00:00
Martin Liska
543d5c3289 Backport r253639
2017-11-21  Martin Liska  <mliska@suse.cz>

	Backport from mainline
	2017-10-11  Martin Liska  <mliska@suse.cz>

	* print-rtl.c (print_insn): Move declaration of idbuf
	to same scope as name.

From-SVN: r255007
2017-11-21 15:59:56 +00:00
Claudiu Zissulescu
78ec951e50 [ARC] Backport r254866.
From-SVN: r255000
2017-11-21 12:57:16 +01:00
Rainer Orth
4a7a8e11a3 Adapt Solaris 12 references
libgo:
	Backport from mainline

    With the change in the Solaris release model (no more major releases
    like Solaris 12 but only minor ones like 11.4), the Solaris 12
    references in GCC need to be adapted.

    Patch by Rainer Orth.

    Reviewed-on: https://go-review.googlesource.com/77490

	libgcc:
	Backport from mainline
	2017-11-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* config.host (*-*-solaris2*): Adapt comment for Solaris 12
	renaming.
	* config/sol2/crtpg.c (__start_crt_compiler): Likewise.
	* configure.ac (libgcc_cv_solaris_crts): Likewise.
	* configure: Regenerate.

	gcc:
	Backport from mainline
	2017-11-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* config.gcc (*-*-solaris2*): Enable default_use_cxa_atexit since
	Solaris 11.  Update comment.
	* configure.ac (gcc_cv_ld_pid): Adapt comment for Solaris 12
	renaming.
	* config/sol2.h (STARTFILE_SPEC): Likewise.
	* configure: Regenerate.

	gcc/testsuite:
	Backport from mainline
	2017-11-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* lib/target-supports.exp (check_effective_target_pie): Adapt
	comment for Solaris 12 renaming.

	* gcc.dg/torture/pr60092.c: Remove *-*-solaris2.11* dg-xfail-run-if.

From-SVN: r254994
2017-11-21 09:31:12 +00:00
GCC Administrator
2d2a66a53e Daily bump.
From-SVN: r254975
2017-11-21 00:16:12 +00:00
Segher Boessenkool
5c956beb8a rs6000: Don't touch below the stack pointer (PR77687)
With the 32-bit SVR4 ABI we don't have a red zone, so we have to restore
the callee-saved registers before we restore the stack pointer.

The previous fix for this PR failed in two ways, for huge frames: first,
we use a negative offset from r11 in that case, so the (mem:BLK 11) access
does no good; second, sched does not handle accesses to mem:BLK correctly
in this case (does not make dependencies).

This patch fixes it by doing a store to (mem:BLK (scratch)) instead.
This means no unrelated (not to stack) loads/stores can be moved over the
stack restore either, but so be it.


	PR target/77687
	* config/rs6000/rs6000.md (stack_restore_tie): Store to a scratch
	address instead of to r1 and r11.

gcc/testsuite/
	PR target/77687
	* gcc.target/powerpc/pr77687.c: New testcase.

From-SVN: r254968
2017-11-20 21:10:28 +01:00
GCC Administrator
8ffd559cd5 Daily bump.
From-SVN: r254942
2017-11-20 00:16:15 +00:00
GCC Administrator
62efd178dd Daily bump.
From-SVN: r254922
2017-11-19 00:16:14 +00:00
GCC Administrator
dc4d4d510a Daily bump.
From-SVN: r254911
2017-11-18 00:16:09 +00:00
Vineet Gupta
2c8462947a [ARC] Backport ARC patch r250097.
From-SVN: r254864
2017-11-17 12:15:26 +01:00
GCC Administrator
ebb206c69e Daily bump.
From-SVN: r254851
2017-11-17 00:16:11 +00:00
Uros Bizjak
fe3c24c3ed i386.c (x86_print_call_or_nop): Emit 5 byte nop explicitly as a stream of bytes.
* config/i386/i386.c (x86_print_call_or_nop): Emit 5 byte nop
	explicitly as a stream of bytes.

From-SVN: r254828
2017-11-16 17:04:21 +01:00
GCC Administrator
a1d5ff0a2e Daily bump.
From-SVN: r254792
2017-11-16 00:16:14 +00:00
Richard Biener
e1f38328f4 re PR tree-optimization/82985 (ICC: in vn_nary_build_or_lookup_1, at tree-ssa-sccvn.c:1722)
2017-11-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/82985
	Backport from mainline
	2017-08-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/81790
	* tree-ssa-sccvn.c (vn_lookup_simplify_result): Handle both
	CONSTRUCTORs from simplifying and VN.

	* gcc.dg/torture/pr81790.c: New testcase.
	* g++.dg/torture/pr82985.C: Likewise.

From-SVN: r254766
2017-11-15 12:50:39 +00:00
Pierre-Marie de Rodat
395decb0d1 [PATCH] [PR82155] Fix crash in dwarf2out_abstract_function
Backport from mainline (r253147):

This patch is an attempt to fix the crash reported in PR82155.

When generating a C++ class method for a class that is itself nested in
a class method, dwarf2out_early_global_decl currently leaves the
existing context DIE as it is if it already exists.  However, it is
possible that this call happens at a point where this context DIE is
just a declaration that is itself not located in its own context.

From there, if dwarf2out_early_global_decl is not called on any of the
FUNCTION_DECL in the context chain, DIEs will be left badly scoped and
some (such as the nested method) will be removed by the type pruning
machinery.  As a consequence, dwarf2out_abstract_function will will
crash when called on the corresponding DECL because it asserts that the
DECL has a DIE.

This patch fixes this crash making dwarf2out_early_global_decl process
context DIEs the same way we process abstract origins for FUNCTION_DECL:
if the corresponding DIE exists but is only a declaration, call
dwarf2out_decl anyway on it so that it is turned into a more complete
DIE and so that it is relocated in the proper context.

Bootstrapped and regtested on x86_64-linux.

gcc/

	PR debug/82155
	* dwarf2out.c (dwarf2out_early_global_decl): Call dwarf2out_decl
	on the FUNCTION_DECL function context if it has a DIE that is a
	declaration.

gcc/testsuite/

	* g++.dg/pr82155.C: New testcase.

From-SVN: r254761
2017-11-15 11:54:11 +00:00
GCC Administrator
05eb144e64 Daily bump.
From-SVN: r254745
2017-11-15 00:16:13 +00:00
GCC Administrator
e26d4fbe7f Daily bump.
From-SVN: r254716
2017-11-14 00:16:09 +00:00
Paul Thomas
71360fd464 backport: re PR fortran/82934 (Segfault on assumed character length in allocate)
2017-11-13  Paul Thomas  <pault@gcc.gnu.org>

	Backport from trunk
	PR fortran/82934
	* trans-stmt.c (gfc_trans_allocate): Remove the gcc_assert on
	null string length for assumed length typespec and set
	expr3_esize to NULL_TREE;

2017-11-13  Paul Thomas  <pault@gcc.gnu.org>

	Backport from trunk
	PR fortran/82934
	* gfortran.dg/allocate_assumed_charlen_1.f90: New test.

From-SVN: r254709
2017-11-13 20:46:08 +00:00
Paul Thomas
7951af5409 backport: re PR fortran/78619 (ICE in copy_reference_ops_from_ref, at tree-ssa-sccvn.c:889)
2017-11-13  Paul Thomas  <pault@gcc.gnu.org>

	Backport from trunk
	PR fortran/78619
	* check.c (same_type_check): Introduce a new argument 'assoc'
	with default value false. If this is true, use the symbol type
	spec of BT_PROCEDURE expressions.
	(gfc_check_associated): Set 'assoc' true in the call to
	'same_type_check'.

2017-11-13  Paul Thomas  <pault@gcc.gnu.org>

	Backport from trunk
	PR fortran/78619
	* gfortran.dg/pr78619.f90: New test.

From-SVN: r254708
2017-11-13 20:43:26 +00:00
Janne Blomqvist
62adf57eea Introduce logical_type_node and use it
Backport from trunk.

Earlier GFortran used to redefine boolean_type_node, which in the rest
of the compiler means the C/C++ _Bool/bool type, to the Fortran
default logical type.  When this redefinition was removed, a few
issues surfaced. Namely,

1) PR 82869, where we created a boolean tmp variable, and passed it to
the runtime library as a Fortran logical variable of a different size.

2) Fortran specifies that logical operations should be done with the
default logical kind, not in any other kind.

3) Using 8-bit variables have some issues, such as
   - on x86, partial register stalls and length prefix changes.
      - s390 has a compare with immediate and jump instruction which
           works with 32-bit but not 8-bit quantities.

This patch addresses these issues by introducing a type
logical_type_node which is a Fortran LOGICAL variable of default
kind. It is then used in places were the Fortran standard mandates, as
well as for compiler generated temporary variables.

For x86-64, using the Polyhedron benchmark suite, no performance or
code size difference worth mentioning was observed.

Regtested on x86_64-pc-linux-gnu.

gcc/fortran/ChangeLog:

2017-11-13  Janne Blomqvist  <jb@gcc.gnu.org>

	PR 82869
	* convert.c (truthvalue_conversion): Use logical_type_node.
	* trans-array.c (gfc_trans_allocate_array_storage): Likewise.
	(gfc_trans_create_temp_array): Likewise.
	(gfc_trans_array_ctor_element): Likewise.
	(gfc_trans_array_constructor_value): Likewise.
	(trans_array_constructor): Likewise.
	(trans_array_bound_check): Likewise.
	(gfc_conv_array_ref): Likewise.
	(gfc_trans_scalarized_loop_end): Likewise.
	(gfc_conv_array_extent_dim): Likewise.
	(gfc_array_init_size): Likewise.
	(gfc_array_allocate): Likewise.
	(gfc_trans_array_bounds): Likewise.
	(gfc_trans_dummy_array_bias): Likewise.
	(gfc_conv_array_parameter): Likewise.
	(duplicate_allocatable): Likewise.
	(duplicate_allocatable_coarray): Likewise.
	(structure_alloc_comps): Likewise
	(get_std_lbound): Likewise
	(gfc_alloc_allocatable_for_assignment): Likewise
	* trans-decl.c (add_argument_checking): Likewise
	(gfc_generate_function_code): Likewise
	* trans-expr.c (gfc_copy_class_to_class): Likewise
	(gfc_trans_class_array_init_assign): Likewise
	(gfc_trans_class_init_assign): Likewise
	(gfc_conv_expr_present): Likewise
	(gfc_conv_substring): Likewise
	(gfc_conv_cst_int_power): Likewise
	(gfc_conv_expr_op): Likewise
	(gfc_conv_procedure_call): Likewise
	(fill_with_spaces): Likewise
	(gfc_trans_string_copy): Likewise
	(gfc_trans_alloc_subarray_assign): Likewise
	(gfc_trans_pointer_assignment): Likewise
	(gfc_trans_scalar_assign): Likewise
	(fcncall_realloc_result): Likewise
	(alloc_scalar_allocatable_for_assignment): Likewise
	(trans_class_assignment): Likewise
	(gfc_trans_assignment_1): Likewise
	* trans-intrinsic.c (build_fixbound_expr): Likewise
	(gfc_conv_intrinsic_aint): Likewise
	(gfc_trans_same_strlen_check): Likewise
	(conv_caf_send): Likewise
	(trans_this_image): Likewise
	(conv_intrinsic_image_status): Likewise
	(trans_image_index): Likewise
	(gfc_conv_intrinsic_bound): Likewise
	(conv_intrinsic_cobound): Likewise
	(gfc_conv_intrinsic_mod): Likewise
	(gfc_conv_intrinsic_dshift): Likewise
	(gfc_conv_intrinsic_dim): Likewise
	(gfc_conv_intrinsic_sign): Likewise
	(gfc_conv_intrinsic_ctime): Likewise
	(gfc_conv_intrinsic_fdate): Likewise
	(gfc_conv_intrinsic_ttynam): Likewise
	(gfc_conv_intrinsic_minmax): Likewise
	(gfc_conv_intrinsic_minmax_char): Likewise
	(gfc_conv_intrinsic_anyall): Likewise
	(gfc_conv_intrinsic_arith): Likewise
	(gfc_conv_intrinsic_minmaxloc): Likewise
	(gfc_conv_intrinsic_minmaxval): Likewise
	(gfc_conv_intrinsic_btest): Likewise
	(gfc_conv_intrinsic_bitcomp): Likewise
	(gfc_conv_intrinsic_shift): Likewise
	(gfc_conv_intrinsic_ishft): Likewise
	(gfc_conv_intrinsic_ishftc): Likewise
	(gfc_conv_intrinsic_leadz): Likewise
	(gfc_conv_intrinsic_trailz): Likewise
	(gfc_conv_intrinsic_mask): Likewise
	(gfc_conv_intrinsic_spacing): Likewise
	(gfc_conv_intrinsic_rrspacing): Likewise
	(gfc_conv_intrinsic_size): Likewise
	(gfc_conv_intrinsic_sizeof): Likewise
	(gfc_conv_intrinsic_transfer): Likewise
	(gfc_conv_allocated): Likewise
	(gfc_conv_associated): Likewise
	(gfc_conv_same_type_as): Likewise
	(gfc_conv_intrinsic_trim): Likewise
	(gfc_conv_intrinsic_repeat): Likewise
	(conv_isocbinding_function): Likewise
	(conv_intrinsic_ieee_is_normal): Likewise
	(conv_intrinsic_ieee_is_negative): Likewise
	(conv_intrinsic_ieee_copy_sign): Likewise
	(conv_intrinsic_move_alloc): Likewise
	* trans-io.c (set_parameter_value_chk): Likewise
	(set_parameter_value_inquire): Likewise
	(set_string): Likewise
	* trans-openmp.c (gfc_walk_alloc_comps): Likewise
	(gfc_omp_clause_default_ctor): Likewise
	(gfc_omp_clause_copy_ctor): Likewise
	(gfc_omp_clause_assign_op): Likewise
	(gfc_omp_clause_dtor): Likewise
	(gfc_omp_finish_clause): Likewise
	(gfc_trans_omp_clauses): Likewise
	(gfc_trans_omp_do): Likewise
	* trans-stmt.c (gfc_trans_goto): Likewise
	(gfc_trans_sync): Likewise
	(gfc_trans_arithmetic_if): Likewise
	(gfc_trans_simple_do): Likewise
	(gfc_trans_do): Likewise
	(gfc_trans_forall_loop): Likewise
	(gfc_trans_where_2): Likewise
	(gfc_trans_allocate): Likewise
	(gfc_trans_deallocate): Likewise
	* trans-types.c (gfc_init_types): Initialize logical_type_node and
	their true/false trees.
	(gfc_get_array_descr_info): Use logical_type_node.
	* trans-types.h (logical_type_node): New tree.
	(logical_true_node): Likewise.
	(logical_false_node): Likewise.
	* trans.c (gfc_trans_runtime_check): Use logical_type_node.
	(gfc_call_malloc): Likewise
	(gfc_allocate_using_malloc): Likewise
	(gfc_allocate_allocatable): Likewise
	(gfc_add_comp_finalizer_call): Likewise
	(gfc_add_finalizer_call): Likewise
	(gfc_deallocate_with_status): Likewise
	(gfc_deallocate_scalar_with_status): Likewise
	(gfc_call_realloc): Likewise


gcc/testsuite/ChangeLog:

2017-11-13  Janne Blomqvist  <jb@gcc.gnu.org>

	PR 82869
	* gfortran.dg/logical_temp_io.f90: New test.
	* gfortran.dg/logical_temp_io_kind8.f90: New test.

From-SVN: r254706
2017-11-13 22:01:20 +02:00
Rainer Orth
f512f6f96b Use -xbrace_comment=no with recent Solaris/x86 as
Backport from mainline
	2017-10-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* configure.ac (gcc_cv_as_ix86_xbrace_comment): Check if assembler
	supports -xbrace_comment option.
	* configure: Regenerate.
	* config.in: Regenerate.
	* config/i386/sol2.h (ASM_XBRACE_COMMENT_SPEC): Define.
	(ASM_CPU_SPEC): Use it.

From-SVN: r254681
2017-11-13 12:38:16 +00:00
GCC Administrator
6d4e81840e Daily bump.
From-SVN: r254668
2017-11-13 00:16:16 +00:00
GCC Administrator
8eae0ada26 Daily bump.
From-SVN: r254662
2017-11-12 00:16:12 +00:00
GCC Administrator
d665945628 Daily bump.
From-SVN: r254646
2017-11-11 00:16:10 +00:00
Eric Botcazou
98598f0537 utils.c (convert): Add comment and do not fall through to the next case.
* gcc-interface/utils.c (convert) <RECORD_TYPE>: Add comment and do
	not fall through to the next case.
	<ARRAY_TYPE>: Deal specially with a dereference from another array
	type with the same element type.

From-SVN: r254619
2017-11-10 08:23:20 +00:00
GCC Administrator
72369bbdd6 Daily bump.
From-SVN: r254616
2017-11-10 00:16:11 +00:00
Segher Boessenkool
2ae87906ec Backport PRs 64682, 69567, 69737, 82683
Backport from mainline
	2017-11-01  Segher Boessenkool  <segher@kernel.crashing.org>

	PR rtl-optimization/64682
	PR rtl-optimization/69567
	PR rtl-optimization/69737
	PR rtl-optimization/82683
	* combine.c (distribute_notes) <REG_DEAD>: If the new I2 sets the same
	register mentioned in the note, drop the note, unless it came from I3,
	in which case it should go to I3 again.

From-SVN: r254564
2017-11-09 11:21:06 +01:00
GCC Administrator
d04c03ee0e Daily bump.
From-SVN: r254558
2017-11-09 00:16:08 +00:00
GCC Administrator
fd1675d082 Daily bump.
From-SVN: r254515
2017-11-08 00:16:15 +00:00