aboutsummaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2018-07-12 16:50:41 +0000
committerJakub Jelinek <jakub@redhat.com>2018-07-12 16:50:41 +0000
commit1ed159550621e4b1cf35ab868e0a7d51e2837724 (patch)
tree9bad8e165e1df1b26197b4700f9f51566152a405 /gcc/ChangeLog
parentc1e7aa1d88a3110f71b740fc8ea11f3274cae433 (diff)
parentf7d3a6a6300a4c330afca4d8772ac80ab09ac21c (diff)
svn merge -r258208:262569 svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branchredhat/gcc-7-branch
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/redhat/gcc-7-branch@262599 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog1050
1 files changed, 1050 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e77323357b0..162169f188e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,1053 @@
+2018-07-10 Carl Love <cel@us.ibm.com>
+
+ Backport from mainline
+ 2017-09-07 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/vsx.md (define_insn "*stxvl"): Add missing argument to
+ the sldi instruction.
+
+2018-06-29 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-01-10 Kelvin Nilsen <kelvin@gcc.gnu.org>
+
+ * lex.c (search_line_fast): Remove illegal coercion of an
+ unaligned pointer value to vector pointer type and replace with
+ use of __builtin_vec_vsx_ld () built-in function, which operates
+ on unaligned pointer values.
+
+2018-06-27 David Edelsohn <dje.gcc@gmail.com>
+
+ 2018-06-19 Tony Reix <tony.reix@atos.com>
+ Damien Bergamini <damien.bergamini@atos.com>
+ David Edelsohn <dje.gcc@gmail.com>
+
+ * collect2.c (static_obj): New variable.
+ (static_libs): New variable.
+ (is_in_list): Uncomment declaration.
+ (main): Track AIX libraries linked statically.
+ (is_in_list): Uncomment definition.
+ (scan_prog_file): Don't add AIX shared libraries initializer
+ to constructor list if linking statically.
+
+2018-06-26 Kelvin Nilsen <kelvin@gcc.gnu.org>
+
+ Backported from mainline
+ 2018-06-20 Kelvin Nilsen <kelvin@gcc.gnu.org>
+
+ * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Change
+ behavior of vec_packsu (vector unsigned long long, vector unsigned
+ long long) to match behavior of vec_packs with same signature.
+
+2018-06-26 Robin Dapp <rdapp@linux.vnet.ibm.com>
+
+ * config/s390/s390.h (enum processor_flags): Do not use
+ default tune parameter when -march was specified.
+
+2018-06-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/86314
+ * config/i386/i386.md (setcc + movzbl to xor + setcc peephole2s):
+ Check reg_overlap_mentioned_p in addition to reg_set_p with the same
+ operands.
+
+2018-06-25 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ Back port from trunk
+ 2018-04-17 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ PR target/85424
+ * config/rs6000/rs6000.md (pack<mode>): Do not try handle a pack
+ where the inputs overlap with the output.
+
+2018-06-25 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84786
+ * config/i386/sse.md (vshift_count): New mode attr.
+ (<shift_insn><mode>3<mask_name>): Use <vshift_count>N instead of vN
+ as last operand's constraint for VI2_AVX2_AVX512BW shifts. Use YvN
+ instead of vN as last operand's constraint for VI48_AVX2 shifts.
+
+2018-06-23 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/85989
+ * gimple-ssa-backprop.c (backprop::m_visited_phis): New member
+ variable.
+ (backprop::intersect_uses): Check it when deciding whether this
+ is a backedge reference.
+ (backprop::process_block): Add each phi to m_visited_phis
+ after visiting it, then clear it at the end.
+
+2018-06-22 Jakub Jelinek <jakub@redhat.com>
+
+ Backported from mainline
+ 2018-06-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/86231
+ * tree-vrp.c (union_ranges): For ( [ ) ] or ( )[ ] range and
+ anti-range don't overwrite *vr0min before using it to compute *vr0max.
+
+ 2018-06-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/85878
+ * expr.c (expand_assignment): Only call store_expr for halves if the
+ mode is the same.
+
+ 2018-06-14 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/85945
+ * lower-subreg.c (find_decomposable_subregs): Don't decompose float
+ subregs of multi-word pseudos unless the float mode has word size.
+
+ 2018-06-04 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/86025
+ * tree.c (inchash::add_expr): Handle IDENTIFIER_NODE.
+
+ 2018-05-06 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/85659
+ * cfgexpand.c (expand_asm_stmt): Don't create a temporary if
+ the type is addressable. Don't force op into register if it has
+ BLKmode.
+
+ 2018-05-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR web/85578
+ * doc/install.texi2html: Replace _002d with - and _002a with * in
+ generated html files using sed.
+
+ 2018-04-27 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/85529
+ * tree-ssa-reassoc.c (optimize_range_tests_var_bound): Add FIRST_BB
+ argument. Don't call get_nonzero_bits if opcode is ERROR_MARK_NODE,
+ rhs2 def stmt's bb is dominated by first_bb and it isn't an obvious
+ zero extension or masking of the MSB bit.
+ (optimize_range_tests): Add FIRST_BB argument, pass it through
+ to optimize_range_tests_var_bound.
+ (maybe_optimize_range_tests, reassociate_bb): Adjust
+ optimize_range_tests callers.
+
+ 2018-04-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/85446
+ * match.pd ((intptr_t) x eq/ne CST to x eq/ne (typeof x) cst): Require
+ the integral and pointer types to have the same precision.
+
+ 2018-04-18 David Malcolm <dmalcolm@redhat.com>
+
+ PR jit/85384
+ * configure.ac (gcc-driver-name.h): Honor --with-gcc-major-version
+ by using gcc_base_ver to generate a gcc_driver_version, and use
+ it when generating GCC_DRIVER_NAME.
+ * configure: Regenerate.
+
+ 2018-04-17 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/85431
+ * dse.c (record_store): Ignore zero width stores.
+
+ PR target/85430
+ * config/i386/i386.md (*ashlqi3_1_slp): Use alu1 type instead of alu.
+
+ 2018-04-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/85300
+ * combine.c (subst): Handle subst of CONST_SCALAR_INT_P new_rtx also
+ into FLOAT and UNSIGNED_FLOAT like ZERO_EXTEND, return a CLOBBER if
+ simplify_unary_operation fails.
+
+ 2018-04-07 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/85257
+ * fold-const.c (native_encode_vector): If not all elts could fit
+ and off is -1, return 0 rather than offset.
+ * tree-ssa-sccvn.c (vn_reference_lookup_3): Pass
+ (offset - offset2) / BITS_PER_UNIT as 4th argument to
+ native_encode_expr. Verify len * BITS_PER_UNIT >= maxsizei. Don't
+ adjust buffer in native_interpret_expr call.
+
+ 2018-04-06 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/85252
+ * dwarf2out.c (rtl_for_decl_init): For STRING_CST initializer only
+ build CONST_STRING if TYPE_MAX_VALUE is non-NULL and is INTEGER_CST.
+
+ 2018-04-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/85167
+ * shrink-wrap.c (move_insn_for_shrink_wrap): Don't set bb_uses and
+ bb_defs if *split_p, instead preinitialize it to NULL.
+
+ 2018-03-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/85095
+ * config/i386/i386.md (*add<mode>3_carry_0, *addsi3_carry_zext_0,
+ *sub<mode>3_carry_0, *subsi3_carry_zext_0): New patterns.
+
+ 2018-03-23 Jakub Jelinek <jakub@redhat.com>
+
+ PR inline-asm/85022
+ * emit-rtl.c (init_emit_regs): Indicate that VOIDmode MEMs don't have
+ known size by default.
+
+ PR inline-asm/85034
+ * function.c (match_asm_constraints_1): Don't optimize if input
+ doesn't satisfy general_operand predicate for output's mode.
+
+ PR inline-asm/85022
+ * alias.c (write_dependence_p): Don't require for x_canonicalized
+ non-VOIDmode if x has VOIDmode.
+
+ 2018-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR inline-asm/84941
+ * function.c (match_asm_constraints_1): Don't do the optimization
+ if input isn't a REG, SUBREG, MEM or constant.
+
+ PR sanitizer/85018
+ * dwarf2asm.c (dw2_output_indirect_constant_1): Set
+ DECL_INITIAL (decl) to decl at the end.
+ * varasm.c (use_blocks_for_decl_p): Revert the 2018-03-20 change,
+ adjust the comment.
+
+ 2018-03-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/84875
+ * dce.c (delete_unmarked_insns): Don't remove frame related noop moves
+ holding REG_CFA_RESTORE notes, instead turn them into a USE.
+
+ PR c/84953
+ * builtins.c (fold_builtin_strpbrk): For strpbrk(x, "") use type
+ instead of TREE_TYPE (s1) for the return value.
+
+ PR target/84990
+ * dwarf2asm.c (dw2_output_indirect_constant_1): Temporarily turn off
+ flag_section_anchors.
+ * varasm.c (use_blocks_for_decl_p): Remove hack for
+ dw2_force_const_mem.
+
+ 2018-03-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR sanitizer/78651
+ * dwarf2asm.c: Include fold-const.c.
+ (dw2_output_indirect_constant_1): Set DECL_INITIAL (decl) to ADDR_EXPR
+ of decl rather than decl itself.
+
+ 2018-03-19 Maxim Ostapenko <m.ostapenko@samsung.com>
+
+ PR sanitizer/78651
+ * dwarf2asm.c (dw2_output_indirect_constant_1): Disable ASan before
+ calling assemble_variable.
+
+ 2018-03-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84899
+ * postreload.c (reload_combine_recognize_pattern): Perform
+ INTVAL addition in unsigned HOST_WIDE_INT type to avoid UB and
+ truncate_int_for_mode the result for the destination's mode.
+
+ PR tree-optimization/84841
+ * tree-ssa-reassoc.c (INTEGER_CONST_TYPE): Change to 1 << 4 from
+ 1 << 3.
+ (FLOAT_ONE_CONST_TYPE): Define.
+ (constant_type): Return FLOAT_ONE_CONST_TYPE for -1.0 and 1.0.
+ (sort_by_operand_rank): Put entries with higher constant_type last
+ rather than first to match comments.
+
+ 2018-03-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/79085
+ * calls.c (expand_call): For TREE_ADDRESSABLE rettype ignore alignment
+ check and use address of target always.
+
+ PR target/84860
+ * optabs.c (emit_conditional_move): Pass address of cmode's copy
+ rather than address of cmode as last argument to prepare_cmp_insn.
+
+ 2018-03-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/84834
+ * match.pd ((A & C) != 0 ? D : 0): Use INTEGER_CST@2 instead of
+ integer_pow2p@2 and test integer_pow2p in condition.
+ (A < 0 ? C : 0): Similarly for @1.
+
+ PR target/84827
+ * config/i386/i386.md (round<mode>2): For 387 fancy math, disable
+ pattern if -ftrapping-math -fno-fp-int-builtin-inexact.
+
+ PR target/84786
+ * config/i386/sse.md (sse2_loadhpd): Use Yv constraint rather than v
+ on the last operand.
+
+ 2018-03-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84772
+ * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Mark va_arg_tmp
+ temporary TREE_ADDRESSABLE before gimplification of BUILT_IN_MEMCPY.
+
+ PR c++/84767
+ * tree-inline.c (copy_tree_body_r): For INDIRECT_REF of a remapped
+ decl, use remap_type if we want to use the type.
+
+ 2018-03-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/84739
+ * tree-tailcall.c (find_tail_calls): Check call arguments against
+ DECL_ARGUMENTS (current_function_decl) rather than
+ DECL_ARGUMENTS (func) when checking for tail recursion.
+
+ 2018-03-05 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84700
+ * combine.c (combine_simplify_rtx): Don't try to simplify if
+ if_then_else_cond returned non-NULL, but either true_rtx or false_rtx
+ are equal to x.
+
+2018-06-22 Andre Vieira <andre.simoesdiasvieira@arm.com>
+
+ Backport from mainline
+ 2018-06-05 Andre Vieira <andre.simoesdiasvieira@arm.com>
+
+ * config/arm/arm_cmse.h (cmse_nsfptr_create): Change typeof to
+ __typeof__.
+ (cmse_check_pointed_object): Likewise.
+
+2018-06-22 Andre Vieira <andre.simoesdiasvieira@arm.com>
+
+ Backport from mainline
+ 2018-05-17 Jerome Lambourg <lambourg@adacore.com>
+
+ * config/arm/arm_cmse.h (cmse_nsfptr_create, cmse_is_nsfptr): Remove
+ #include <stdint.h>. Replace intptr_t with __INTPTR_TYPE__.
+
+2018-06-21 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ Backport from mainline
+ 2018-06-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ * config.gcc (riscv*-*-elf* | riscv*-*-rtems*): Use custom
+ multilibs for *-*-rtems*.
+ * config/riscv/t-rtems: New file.
+
+2018-06-19 Max Filippov <jcmvbkbc@gmail.com>
+
+ Backport from mainline
+ 2018-06-19 Max Filippov <jcmvbkbc@gmail.com>
+
+ * config/xtensa/xtensa.md (UNSPEC_FRAME_BLOCKAGE): New unspec
+ constant.
+ (allocate_stack, frame_blockage, *frame_blockage): New patterns.
+
+2018-06-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gimplify.c (gimplify_init_constructor): Really never clear for an
+ incomplete constructor if CONSTRUCTOR_NO_CLEARING is set.
+
+2018-06-18 Martin Sebor <msebor@redhat.com>
+
+ PR middle-end/82063
+ * calls.c (alloc_max_size): Correct a logic error/typo.
+ Treat excessive arguments as infinite. Warn for invalid arguments.
+ * doc/invoke.texi (-Walloc-size-larger-than): Update.
+
+2018-06-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ Backport from mainline
+ 2018-06-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ * config/rtems.h (STDINT_LONG32): Define.
+
+2018-06-11 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-06-08 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/85755
+ * config/rs6000/rs6000.c (mem_operand_gpr): Enable PRE_INC and PRE_DEC
+ addresses.
+
+2018-06-07 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-06-06 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/63177
+ * /config/rs6000/rs6000.h (ASM_CPU_SPEC): Add support for -mpower9.
+ Don't handle -mcpu=power8 if -mpower9-vector is also used.
+
+2018-06-07 Richard Biener <rguenther@suse.de>
+
+ Backport from mainline
+ 2018-05-04 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/85588
+ * fold-const.c (negate_expr_p): Restrict negation of operand
+ zero of a division to when we know that can happen without
+ overflow.
+ (fold_negate_expr_1): Likewise.
+
+ 2018-05-02 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/85567
+ * gimplify.c (gimplify_save_expr): When in SSA form allow
+ SAVE_EXPRs to compute to SSA vars.
+
+ 2018-05-02 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/85597
+ * tree-vect-stmts.c (vectorizable_operation): For ternary SLP
+ do not use split vect_get_vec_defs call but call vect_get_slp_defs
+ directly.
+
+2018-06-05 Andreas Krebbel <krebbel@linux.ibm.com>
+
+ Backport from mainline
+ 2018-06-05 Andreas Krebbel <krebbel@linux.ibm.com>
+
+ * config/s390/s390-builtin-types.def: Add void function type.
+ * config/s390/s390-builtins.def: Use the function type for the
+ tbeginc builtin.
+
+2018-06-01 Bill Schmidt <wschmidt@linux.ibm.com>
+
+ PR tree-optimization/85712
+ Backport from mainline:
+ 2018-05-23 Bill Schmidt <wschmidt@linux.ibm.com>
+
+ PR tree-optimization/85712
+ * gimple-ssa-strength-reduction.c (struct slsr_cand_d): Add
+ first_interp field.
+ (alloc_cand_and_find_basis): Initialize first_interp field.
+ (slsr_process_mul): Modify first_interp field.
+ (slsr_process_add): Likewise.
+ (slsr_process_cast): Modify first_interp field for each new
+ interpretation.
+ (slsr_process_copy): Likewise.
+ (dump_candidate): Dump first_interp field.
+ (replace_mult_candidate): Process all interpretations, not just
+ subsequent ones.
+ (replace_rhs_if_not_dup): Likewise.
+ (replace_one_candidate): Likewise.
+
+ Backport from mainline:
+ 2018-05-25 Bill Schmidt <wschmidt@linux.ibm.com>
+
+ PR tree-optimization/85712
+ * gimple-ssa-strength-reduction.c (replace_one_candidate): Skip if
+ this candidate has already been replaced in-situ by a copy.
+
+2018-05-24 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/sse.md (cvtusi2<ssescalarmodesuffix>64<round_name>):
+ Add {q} suffix to insn mnemonic.
+
+2018-05-24 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/85903
+ * config/i386/sse.md (movdi_to_sse): Do not generate pseudo
+ when memory input operand is handled.
+
+2018-05-21 Pat Haugen <pthaugen@us.ibm.com>
+
+ Backport from mainline
+ 2018-05-17 Pat Haugen <pthaugen@us.ibm.com>
+ Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR target/85698
+ * config/rs6000/rs6000.c (rs6000_output_move_128bit): Check
+ dest operand.
+
+2018-05-17 Martin Jambor <mjambor@suse.cz>
+
+ Backport from mainline
+ 2018-05-11 Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/85655
+ * ipa-cp.c (intersect_with_plats): Check that the lattice contains
+ single const.
+
+2018-05-01 Tom de Vries <tom@codesourcery.com>
+
+ backport from trunk:
+ 2018-04-16 Cesar Philippidis <cesar@codesourcery.com>
+ Tom de Vries <tom@codesourcery.com>
+
+ PR middle-end/84955
+ * omp-expand.c (expand_oacc_for): Add dummy false branch for
+ tiled basic blocks without omp continue statements.
+
+2018-04-26 Richard Biener <rguenther@suse.de>
+
+ Backport from mainline
+ 2018-04-09 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/85284
+ * tree-ssa-loop-niter.c (number_of_iterations_exit_assumptions):
+ Only use the niter constraining form of simple_iv when the exit
+ is always executed.
+
+ 2018-04-06 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/85244
+ * tree-dfa.c (get_ref_base_and_extent): Reset seen_variable_array_ref
+ after seeing a component reference with an adjacent field. Treat
+ refs to arrays at struct end of external decls similar to
+ refs to unconstrained commons.
+
+ 2018-04-04 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/85168
+ * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Avoid
+ propagating abnormals.
+
+2018-04-24 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-04-17 Martin Liska <mliska@suse.cz>
+
+ PR lto/85405
+ * ipa-devirt.c (odr_types_equivalent_p): Remove trailing
+ in message, remote space in between '_G' and '('.
+
+2018-04-24 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-04-17 Jan Hubicka <jh@suse.cz>
+
+ PR lto/85405
+ * ipa-devirt.c (odr_types_equivalent_p): Handle bit fields.
+
+2018-04-24 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-03-28 Jakub Jelinek <jakub@redhat.com>
+ Martin Liska <mliska@suse.cz>
+
+ PR sanitizer/85081
+ * gimplify.c (asan_poison_variable): Don't do the check for
+ gimplify_omp_ctxp here.
+ (gimplify_decl_expr): Do it here.
+ (gimplify_target_expr): Likewise.
+
+2018-04-24 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-03-21 Martin Liska <mliska@suse.cz>
+
+ PR ipa/84963
+ * ipa-icf.c (sem_item_optimizer::fixup_points_to_sets): Remove
+ not intended return statement.
+
+2018-04-24 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-03-13 Martin Liska <mliska@suse.cz>
+
+ PR ipa/84658.
+ * (sem_item_optimizer::sem_item_optimizer): Initialize new
+ vector.
+ (sem_item_optimizer::~sem_item_optimizer): Release it.
+ (sem_item_optimizer::merge_classes): Register variable aliases.
+ (sem_item_optimizer::fixup_pt_set): New function.
+ (sem_item_optimizer::fixup_points_to_sets): Likewise.
+ * ipa-icf.h: Declare new variables and functions.
+
+2018-04-23 Aaron Sawdey <acsawdey@linux.ibm.com>
+
+ Backport from mainline
+ 2018-04-16 Aaron Sawdey <acsawdey@linux.ibm.com>
+
+ PR target/83660
+ * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Mark
+ vec_extract expression as having side effects to make sure it gets
+ a cleanup point.
+
+2018-04-23 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR middle-end/85496
+ * expr.c (store_field): In the bitfield case, if the value comes from
+ a function call and is returned in registers by means of a PARALLEL,
+ do not change the mode of the temporary unless BLKmode and VOIDmode.
+
+2018-04-20 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-03-09 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/83969
+ * config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New prototype.
+ Add strict argument and use it.
+ (rs6000_split_multireg_move): Update for new strict argument.
+ (mem_operand_gpr): Disallow all non-offsettable addresses.
+ * config/rs6000/rs6000.md (*movdi_internal64): Use YZ constraint.
+
+2018-04-18 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ Backport from mainline
+ 2018-04-11 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ PR target/85261
+ * config/arm/arm-builtins.c (arm_expand_builtin): Force input operand
+ into register.
+
+2018-04-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2018-04-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * config/s390/s390.c (s390_output_indirect_thunk_function): Check
+ also for flag_dwarf2_cfi_asm.
+
+2018-04-11 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/alpha/alpha.md (stack_probe_internal): Rename
+ from "probe_stack". Update all callers.
+
+2018-04-11 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ Backport from mainline
+ 2018-04-04 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ PR target/85203
+ * config/arm/arm-builtins.c (arm_expand_builtin): Change
+ expansion to perform a bitwise AND of the argument followed by a
+ boolean negation of the result.
+
+2018-04-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ Backport from mainline
+ 2018-03-08 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ PR target/84748
+ * config/aarch64/aarch64.md (*compare_cstore<mode>_insn): Mark pattern
+ as clobbering CC_REGNUM.
+
+2018-04-06 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR target/85196
+ * config/sparc/sparc.c (sparc_expand_move): Deal with symbolic operands
+ based on LABEL_REF. Remove useless assertion.
+ (pic_address_needs_scratch): Fix formatting.
+ (sparc_legitimize_pic_address): Minor tweaks.
+ (sparc_delegitimize_address): Adjust assertion accordingly.
+ * config/sparc/sparc.md (movsi_pic_label_ref): Change label_ref_operand
+ into symbolic_operand.
+ (movsi_high_pic_label_ref): Likewise.
+ (movsi_lo_sum_pic_label_ref): Likewise.
+ (movdi_pic_label_ref): Likewise.
+ (movdi_high_pic_label_ref): Likewise.
+ (movdi_lo_sum_pic_label_ref): Likewise.
+
+2018-04-06 Amaan Cheval <amaan.cheval@gmail.com>
+
+ * config.gcc (x86_64-*-rtems*): Add rtems.h to tm_file for
+ custom LIB_SPEC setup.
+
+2018-04-05 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/85193
+ * config/i386/i386.md (define_attr "memory"): Handle rotate1 type.
+
+2018-04-04 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-04-04 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR rtl-optimization/84878
+ * ddg.c (add_cross_iteration_register_deps): Use DF_REF_BB to determine
+ the basic block. Assert the use reference is not artificial and that
+ it has an associated insn.
+
+2018-04-03 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (emit_i387_cw_initialization): Always use logic
+ instructions when changing rounding bits to preserve precision bits
+ in the x87 control word.
+
+2018-04-03 Cesar Philippidis <cesar@codesourcery.com>
+
+ Backport from mainline
+ 2018-03-27 Cesar Philippidis <cesar@codesourcery.com>
+
+ PR target/85056
+ * config/nvptx/nvptx.c (nvptx_assemble_decl_begin): Add '[]' to
+ extern array declarations.
+
+2018-04-02 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-03-28 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/84912
+ * config/rs6000/rs6000.h: Update copyright date.
+ (RS6000_BTM_POWERPC64): New define.
+ (RS6000_BTM_COMMON): Add RS6000_BTM_POWERPC64.
+ * config/rs6000/rs6000.c: Update copyright date.
+ (rs6000_builtin_mask_calculate): Add support for RS6000_BTM_POWERPC64.
+ (rs6000_invalid_builtin): Add handling for RS6000_BTM_POWERPC64
+ (rs6000_builtin_mask_names): Add RS6000_BTM_POWERPC64.
+ * config/rs6000/rs6000-builtin.def: Update copyright date.
+ (BU_P7_POWERPC64_MISC_2): New macro definition.
+ (DIVDE): Use it.
+ (DIVDEU): Likewise.
+
+ Backport from mainline
+ 2018-03-28 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/84912
+ * config/rs6000/rs6000-builtin.def (DIVWEO): Delete macro expansion.
+ (DIVWEUO): Likewise.
+ (DIVDEO): Likewise.
+ (DIVDEUO): Likewise.
+ * config/rs6000/rs6000.c (builtin_function_type): Remove support for
+ DIVWEUO and DIVDEUO.
+ * config/rs6000/rs6000.md: Update copyright date.
+ (UNSPEC_DIVEO, UNSPEC_DIVEUO): Delete unspecs.
+ (UNSPEC_DIV_EXTEND): Remove deleted unspecs.
+ (div_extend): Likewise.
+ * doc/extend.texi: Update copyright date.
+ (__builtin_divweo): Remove documentation for deleted builtin function.
+ (__builtin_divweuo): Likewise.
+ (__builtin_divdeo): Likewise.
+ (__builtin_divdeuo): Likewise.
+
+2018-04-02 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-03-30 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/80546
+ * config/rs6000/vsx.md (??r): New mode attribute.
+ (*vsx_mov<mode>_64bit): Use it.
+ (*vsx_mov<mode>_32bit): Likewise.
+
+2018-03-29 Sebastian Peryt <sebastian.peryt@intel.com>
+
+ PR c++/84783
+ * config/i386/avx512vlintrin.h (_mm256_permutexvar_epi64)
+ (_mm256_permutexvar_epi32, _mm256_permutex_epi64): New intrinsics.
+
+2018-03-29 Sudakshina Das <sudi.das@arm.com>
+
+ Backport from mainline
+ 2018-03-22 Sudakshina Das <sudi.das@arm.com>
+
+ PR target/84826
+ * config/arm/arm.h (machine_function): Add static_chain_stack_bytes.
+ * config/arm/arm.c (arm_compute_static_chain_stack_bytes): Avoid
+ re-computing once computed.
+ (arm_expand_prologue): Compute machine->static_chain_stack_bytes.
+ (arm_init_machine_status): Initialize
+ machine->static_chain_stack_bytes.
+
+2018-03-28 Sudakshina Das <sudi.das@arm.com>
+
+ 2018-03-19 Sudakshina Das <sudi.das@arm.com>
+ PR target/81647
+
+ * config/aarch64/aarch64-simd.md (vec_cmp<mode><v_cmp_result>): Modify
+ instructions for UNLT, UNLE, UNGT, UNGE, UNEQ, UNORDERED and ORDERED.
+
+2018-03-28 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ Backport from mainline
+ 2018-03-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ PR target/85026
+ * config/arm/arm.md (unaligned_loadhis): Remove first alternative.
+ Clean up attributes.
+
+2018-03-28 Segher Boessenkool <segher@kernel.crashing.org>
+
+ Backport from mainline
+ 2018-03-08 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR target/82411
+ * config/rs6000/rs6000.c (rs6000_elf_in_small_data_p): Don't put
+ readonly data in sdata, if that is disabled.
+ * config/rs6000/sysv4.opt (mreadonly-in-sdata): New option.
+ * doc/invoke.texi (RS/6000 and PowerPC Options): Document
+ -mreadonly-in-sdata option.
+
+2018-03-27 Sudakshina Das <sudi.das@arm.com>
+
+ Backport from mainline:
+ 2018-03-20 Sudakshina Das <sudi.das@arm.com>
+
+ PR target/82989
+ * config/arm/neon.md (ashldi3_neon): Update ?s for constraints
+ to favor GPR over NEON registers.
+ (<shift>di3_neon): Likewise.
+
+2018-03-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ Backport from mainline
+ 2018-03-20 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ PR target/82518
+ * config/arm/arm.c (arm_array_mode_supported_p): Return false for
+ BYTES_BIG_ENDIAN.
+
+2018-03-23 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-03-20 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/83789
+ * config/rs6000/altivec.md (altivec_lvx_<mode>_2op): Delete define_insn.
+ (altivec_lvx_<mode>_1op): Likewise.
+ (altivec_stvx_<mode>_2op): Likewise.
+ (altivec_stvx_<mode>_1op): Likewise.
+ (altivec_lvx_<VM2:mode>): New define_expand.
+ (altivec_stvx_<VM2:mode>): Likewise.
+ (altivec_lvx_<VM2:mode>_2op_<P:mptrsize>): New define_insn.
+ (altivec_lvx_<VM2:mode>_1op_<P:mptrsize>): Likewise.
+ (altivec_stvx_<VM2:mode>_2op_<P:mptrsize>): Likewise.
+ (altivec_stvx_<VM2:mode>_1op_<P:mptrsize>): Likewise.
+ * config/rs6000/rs6000.c (altivec_expand_lv_builtin): Likewise.
+ (altivec_expand_stv_builtin): Likewise.
+ (altivec_expand_builtin): Likewise.
+ * config/rs6000/vector.md: Likewise.
+
+2018-03-23 Carl Love <cel@us.ibm.com>
+
+ Backport from mainline:
+ 2018-03-14 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/r6000.c (rtx_is_swappable_p): Add case UNSPEC_VPERMXOR.
+
+2018-03-22 Tom de Vries <tom@codesourcery.com>
+
+ backport from trunk:
+ 2018-03-22 Tom de Vries <tom@codesourcery.com>
+
+ PR tree-optimization/84956
+ * tree-ssa-tail-merge.c (find_clusters_1): Skip bbs with
+ bb_has_abnormal_pred.
+
+2018-03-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ Backport from mainline
+ 2018-03-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/84574
+ * config/i386/i386.c (indirect_thunk_needed): Update comments.
+ (indirect_thunk_bnd_needed): Likewise.
+ (indirect_thunks_used): Likewise.
+ (indirect_thunks_bnd_used): Likewise.
+ (indirect_return_needed): New.
+ (indirect_return_bnd_needed): Likewise.
+ (output_indirect_thunk_function): Add a bool argument for
+ function return.
+ (output_indirect_thunk_function): Don't generate alias for
+ function return thunk.
+ (ix86_code_end): Call output_indirect_thunk_function to generate
+ function return thunks.
+ (ix86_output_function_return): Set indirect_return_bnd_needed
+ and indirect_return_needed instead of indirect_thunk_bnd_needed
+ and indirect_thunk_needed.
+
+2018-03-14 John David Anglin <danglin@gcc.gnu.org>
+
+ PR target/83451
+ * config/pa/pa.c (pa_emit_move_sequence): Always emit secondary reload
+ insn for floating-point loads and stores.
+
+2018-03-12 Jonathan Wakely <jwakely@redhat.com>
+
+ * doc/invoke.texi (-mclflushopt): Fix spelling of option.
+
+2018-03-12 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/84485
+ * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Return
+ true for zero dependence distances if the step might be zero,
+ and if there is no metadata that guarantees correctness.
+ (vect_analyze_data_ref_access): Check safelen as well as
+ force_vectorize.
+
+2018-03-11 John David Anglin <danglin@gcc.gnu.org>
+
+ Backport from mainline
+ 2018-02-14 John David Anglin <danglin@gcc.gnu.org>
+
+ PR target/83984
+ * config/pa/pa.md: Load address of PIC label using the linkage table
+ if the label is nonlocal.
+
+ Backport from mainline
+ 2018-03-06 John David Anglin <danglin@gcc.gnu.org>
+
+ * config/pa/pa.h (ASM_GENERATE_INTERNAL_LABEL): Revise to use
+ sprint_ul.
+ (ASM_OUTPUT_ADDR_VEC_ELT): Revise for above change.
+ (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
+ * config/pa/pa64-hpux.h (ASM_GENERATE_INTERNAL_LABEL): Revise as above.
+
+2018-03-09 Kugan Vivekanandarajah <kuganv@linaro.org>
+
+ Backport from mainline
+ 2017-09-13 Kugan Vivekanandarajah <kuganv@linaro.org>
+
+ * config/aarch64/aarch64.c (aarch64_override_options_after_change_1):
+ Disable pc relative literal load irrespective of TARGET_FIX_ERR_A53_84341
+ for default.
+
+2018-03-06 Denis Chertykov <chertykov@gmail.com>
+
+ Backport from mainline
+ 2018-02-07 Georg-Johann Lay <avr@gjlay.de>
+
+ PR target/84209
+ * config/avr/avr.h (GENERAL_REGNO_P, GENERAL_REG_P): New macros.
+ * config/avr/avr.md: Only post-reload split REG-REG moves if
+ either register is GENERAL_REG_P.
+
+2018-03-06 Carl Love <cel@us.ibm.com>
+
+ Backport from mainline
+ 2/16/18 commit 257748 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/altivec.h: Remove vec_vextract4b and vec_vinsert4b.
+ * config/rs6000/rs6000-builtin.def: Remove macro expansion for
+ VINSERT4B_DI and VINSERT4B.
+ * config/rs6000/rs6000.c: Remove case statements for
+ P9V_BUILTIN_VINSERT4B, P9V_BUILTIN_VINSERT4B_DI,
+ and P9V_BUILTIN_VEC_VINSERT4B.
+ * config/rs6000/rs6000-c.c (altivec_expand_builtin): Remove entries for
+ P9V_BUILTIN_VEC_VEXTRACT4B and P9V_BUILTIN_VEC_VINSERT4B.
+ * config/rs6000/vsx.md: Remove define_expand vinsert4b,
+ define_insn *vinsert4b_internal, define_insn "*vinsert4b_di_internal.
+ * doc/extend.texi: Remove vec_vextract4b, non ABI definitions for
+ vec_insert4b.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-02-20 Martin Liska <mliska@suse.cz>
+
+ PR c/84310
+ PR target/79747
+ * final.c (shorten_branches): Build align_tab array with one
+ more element.
+ * opts.c (finish_options): Add alignment option limit check.
+ (MAX_CODE_ALIGN): Likewise.
+ (MAX_CODE_ALIGN_VALUE): Likewise.
+ * doc/invoke.texi: Document maximum allowed option value for
+ all -falign-* options.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-02-19 Martin Liska <mliska@suse.cz>
+
+ PR other/80589
+ * doc/invoke.texi: Fix typo.
+ * params.def (PARAM_MAX_LOOP_HEADER_INSNS): Likewise.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-02-05 Martin Liska <mliska@suse.cz>
+
+ PR gcov-profile/84137
+ * doc/gcov.texi: Fix typo in documentation.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-02-05 Martin Liska <mliska@suse.cz>
+
+ PR gcov-profile/83879
+ * doc/gcov.texi: Document necessity of --dynamic-list-data when
+ using dlopen functionality.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2017-12-19 Martin Liska <mliska@suse.cz>
+
+ PR rtl-optimization/82675
+ * loop-unroll.c (unroll_loop_constant_iterations): Allocate one
+ more element in sbitmap.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-03-05 Martin Liska <mliska@suse.cz>
+
+ * ipa-utils.c (ipa_merge_profiles): Do not merge alias or
+ a function without profile.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-02-21 Jan Hubicka <hubicka@ucw.cz>
+
+ PR c/84229
+ * ipa-cp.c (determine_versionability): Do not version functions caling
+ va_arg_pack.
+
+2018-03-06 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-02-08 Jan Hubicka <hubicka@ucw.cz>
+
+ PR ipa/81360
+ * cgraph.h (symtab_node::output_to_lto_symbol_table_p): Declare
+ * symtab.c: Include builtins.h
+ (symtab_node::output_to_lto_symbol_table_p): Move here
+ from lto-streamer-out.c:output_symbol_p.
+ * lto-streamer-out.c (write_symbol): Turn early exit to assert.
+ (output_symbol_p): Move all logic to symtab.c
+ (produce_symtab): Update.
+
+2018-03-06 Peter Bergner <bergner@vnet.ibm.com>
+
+ Backport from mainline
+ 2018-02-22 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR target/81572
+ * lra-int.h (LRA_UNKNOWN_ALT, LRA_NON_CLOBBERED_ALT): New macros.
+ * lra.c (lra_set_insn_recog_data, lra_update_insn_recog_data): Use
+ LRA_UNKNOWN_ALT.
+ * lra-constraints.c (curr_insn_transform): Set up
+ LRA_NON_CLOBBERED_ALT for moves processed on the fast path. Use
+ LRA_UNKNOWN_ALT.
+ (remove_inheritance_pseudos): Use LRA_UNKNOWN_ALT.
+ * lra-eliminations.c (spill_pseudos): Ditto.
+ (process_insn_for_elimination): Ditto.
+ * lra-lives.c (reg_early_clobber_p): Use the new macros.
+ * lra-spills.c (spill_pseudos): Use LRA_UNKNOWN_ALT and
+ LRA_NON_CLOBBERED_ALT.
+
+2018-03-06 Richard Biener <rguenther@suse.de>
+
+ Backport from mainline
+ 2018-03-05 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84486
+ * tree-ssa-pre.c (create_expression_by_pieces): Remove dead code.
+ When inserting a __builtin_assume_aligned call set the LHS
+ SSA name alignment info accordingly.
+
+ 2018-02-28 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/84607
+ * genmatch.c (capture_info::walk_match): Do not mark
+ captured expressions without operands as expr_p given
+ they act more like predicates and should be subject to
+ "lost tail" side-effect preserving.
+
+2018-03-05 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84524
+ * config/i386/sse.md (*<code><mode>3): Replace <mask_prefix3> with
+ orig,vex.
+ (*<plusminus_insn><mode>3): Likewise. Remove <mask_operand3> uses.
+
2018-03-03 Jakub Jelinek <jakub@redhat.com>
Backported from mainline