1. 10 May, 2017 17 commits
  2. 09 May, 2017 23 commits
    • re PR target/68163 (GCC on power8 does not issue the stxsspx instruction on power8) · bf2a705c
      [gcc]
      2017-05-09  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/68163
      	* config/rs6000/rs6000.md (f32_lr): Delete mode attributes that
      	are now unused after splitting mov{sf,sd}_hardfloat.
      	(f32_lr2): Likewise.
      	(f32_lm): Likewise.
      	(f32_lm2): Likewise.
      	(f32_li): Likewise.
      	(f32_li2): Likewise.
      	(f32_lv): Likewise.
      	(f32_sr): Likewise.
      	(f32_sr2): Likewise.
      	(f32_sm): Likewise.
      	(f32_sm2): Likewise.
      	(f32_si): Likewise.
      	(f32_si2): Likewise.
      	(f32_sv): Likewise.
      	(f32_dm): Likewise.
      	(f32_vsx): Likewise.
      	(f32_av): Likewise.
      	(mov<mode>_hardfloat): Split into separate movsf and movsd pieces.
      	For movsf, order stores so the VSX stores occur before the GPR
      	store which encourages the register allocator to use a traditional
      	FPR instead of a GPR.  For movsd, order the stores so that the GPR
      	store comes before the VSX stores to allow the power6 to work.
      	This is due to the power6 not having a 32-bit integer store
      	instruction from a FPR.
      	(movsf_hardfloat): Likewise.
      	(movsd_hardfloat): Likewise.
      
      [gcc/testsuite]
      2017-05-09  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/68163
      	* gcc.target/powerpc/pr68163.c: New test.
      
      From-SVN: r247819
      Michael Meissner committed
    • re PR fortran/79311 ([OOP] ICE in generate_finalization_wrapper, at fortran/class.c:1992) · 5285d5d3
      2017-05-09  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/79311
      	* resolve.c (gfc_resolve_finalizers): Ensure that derived-type
      	components have a their finalizers resolved, also if the superordinate
      	type itself has a finalizer.
      
      2017-05-09  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/79311
      	* gfortran.dg/finalize_32.f90: New test.
      
      From-SVN: r247818
      Janus Weil committed
    • * class.c (check_bases): Ignore empty bases. · c0aad677
      From-SVN: r247816
      Jason Merrill committed
    • * g++.dg/cpp1z/direct-enum-init1.C: Correct error message. · 824c3184
      From-SVN: r247815
      Jason Merrill committed
    • PR c++/70979 - literal class and closure types · 65d7adba
      	* class.c (finalize_literal_type_property): Handle closures
      	specifically.
      	(explain_non_literal_class): Likewise.
      
      From-SVN: r247814
      Jason Merrill committed
    • PR c++/66297, DR 1684 - literal class and constexpr member fns · 54069e59
      	* constexpr.c (is_valid_constexpr_fn): Only complain about
      	non-literal enclosing class in C++11.
      	* class.c (finalize_literal_type_property): Likewise.
      
      From-SVN: r247813
      Jason Merrill committed
    • config.host: Use the generic FreeBSD t-slibgcc-elf-ver for arm*-*-freebsd* instead of the... · 8ef2b9a7
      2017-05-09  Andreas Tobler  <andreast@gcc.gnu.org>
      
          * config.host: Use the generic FreeBSD t-slibgcc-elf-ver for
          arm*-*-freebsd* instead of the t-slibgcc-libgcc.
      
      From-SVN: r247812
      Andreas Tobler committed
    • re PR c/35441 (pretty-printer cannot handle some expressions) · 31c2d57d
              PR c/35441
              * c-pretty-print.c (c_pretty_printer::expression): Handle MAX_EXPR,
              MIN_EXPR, EXACT_DIV_EXPR, RDIV_EXPR, LROTATE_EXPR, RROTATE_EXPR.
              (c_pretty_printer::postfix_expression): Handle MAX_EXPR, MIN_EXPR.
              (c_pretty_printer::multiplicative_expression): Handle EXACT_DIV_EXPR,
              RDIV_EXPR.
              (pp_c_shift_expression): Handle LROTATE_EXPR, RROTATE_EXPR.
      
              * gcc.dg/pr35441.c: New test.
      
      From-SVN: r247810
      Volker Reichelt committed
    • re PR testsuite/80643 (NA->FAIL: gcc.dg/pr79214.c gcc.dg/pr79222.c… · 731f2c8a
      re PR testsuite/80643 (NA->FAIL: gcc.dg/pr79214.c gcc.dg/pr79222.c gcc.dg/pr79223.c gcc.dg/tree-ssa/builtins-folding-gimple-ub.c)
      
      gcc/testsuite/ChangeLog:
      
      	PR testsuite/80643
      	* c-c++-common/Wsizeof-pointer-memaccess2.c: Prune -Wformat-overflow
      	output.
      
      From-SVN: r247808
      Martin Sebor committed
    • re PR c++/80186 (ICE on C++ code with invalid constructor: Segmentation fault (program cc1plus)) · cc49d15a
      /cp
      2017-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/80186
      	* pt.c (tsubst_decl): Early return error_mark_node if
      	grok_ctor_properties returns false.
      
      /testsuite
      2017-05-09  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/80186
      	* g++.dg/template/crash126.C: New.
      
      From-SVN: r247807
      Paolo Carlini committed
    • avx512f-vaddsd-2.c: Test fixed. · 85282abc
      	* gcc.target/i386/avx512f-vaddsd-2.c: Test fixed.
      	* gcc.target/i386/avx512f-vaddss-2.c: Ditto.
      	* gcc.target/i386/avx512f-vsubsd-2.c: Ditto.
      	* gcc.target/i386/avx512f-vsubss-2.c: Ditto.
      
      From-SVN: r247806
      Sebastian Peryt committed
    • Add PR number. · 10a8bb62
      From-SVN: r247805
      Dominique d'Humieres committed
    • re PR translation/80280 (Missing closing quote (%>) c/semantics.c and c/c-typeck.c) · e0d22278
      gcc/ChangeLog:
      
      	PR translation/80280
      	* config/sol2-c.c (cmn_err_flag_specs): Initialize new data member
      	added in r247778.
      
      From-SVN: r247804
      Martin Sebor committed
    • coarray_lock_7.f90: Fix dg-final regexps. · 823c79ae
      2017-05-09  Dominique d'Humieres  <dominiq@lps.ens.fr>
      
      	* gfortran.dg/coarray_lock_7.f90: Fix dg-final regexps.
      
      From-SVN: r247803
      Dominique d'Humieres committed
    • re PR translation/80280 (Missing closing quote (%>) c/semantics.c and c/c-typeck.c) · 9979f973
      gcc/ChangeLog:
      
      	PR translation/80280
      	* config/i386/msformat-c.c (ms_printf_flag_specs): Initialize new
      	data member added in r247778.
      	(ms_scanf_flag_specs, ms_strftime_flag_specs): Same.
      
      From-SVN: r247801
      Martin Sebor committed
    • [ARC] Add support for advanced mpy/mac instructions. · 79557bae
      gcc/
      2017-05-09  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc.c (arc_conditional_register_usage): Handle ACCL,
      	ACCH registers.
      	* config/arc/arc.md (mulsidi3): Use advanced mpy instructions when
      	available.
      	(umulsidi3): Likewise.
      	(mulsidi3_700): Disable this pattern when we have advanced mpy
      	instructions.
      	(umulsidi3_700): Likewise.
      	(maddsidi4): New pattern.
      	(macd, mac, mac_r, umaddsidi4, macdu, macu, macu_r): Likewise.
      	(mpyd_arcv2hs, mpyd_imm_arcv2hs, mpydu_arcv2hs): Likewise.
      	(mpydu_imm_arcv2hs): Likewise.
      	* config/arc/predicates.md (accl_operand): New predicate.
      
      From-SVN: r247797
      Claudiu Zissulescu committed
    • [ARC]Fast interrupts support. · c7314bc1
      When a processor enters a fast interrupts handler, and duplicate
      register banks are configured, the processor saves the user context by
      saving the registers in the main register bank to these additional
      registers in the duplicate register bank.  In this fast interrupt
      context, when you specify the rgf_banked_regs option,the compiler does
      not save the registers duplicated in the additional register bank are
      not saved.
      
      gcc/
      2017-05-09  Claudiu Zissulescu  <claziss@synopsys.com>
      	    Andrew Burgess  <andrew.burgess@embecosm.com>
      
      	* config/arc/arc.c (ARC_AUTOBLINK_IRQ_P): Consider fast interrupts
      	case also.
      	(ARC_AUTOFP_IRQ_P): Likewise.
      	(ARC_AUTO_IRQ_P): Likewise.
      	(rgf_banked_register_count): New variable.
      	(parse_mrgf_banked_regs_option): New function.
      	(arc_override_options): Handle rgf_banked_regs option.
      	(arc_handle_interrupt_attribute): Add firq option.
      	(arc_compute_function_type): Return fast irq type when required.
      	(arc_must_save_register): Handle fast interrupts.
      	(arc_expand_prologue): Do not emit dwarf info for fast interrupts.
      	(arc_return_address_regs): Update.
      	* config/arc/arc.h (arc_return_address_regs): Update.
      	(arc_function_type): Add fast interrupt type.
      	(ARC_INTERRUPT_P): Update.
      	(RC_FAST_INTERRUPT_P): Define.
      	* config/arc/arc.md (simple_return): Update for fast interrupts.
      	(p_return_i): Likewise.
      	* config/arc/arc.opt (mrgf-banked-regs): New option.
      	* doc/invoke.texi (mrgf-banked-regs): Document.
      
      testsuite/
      2017-05-09  Claudiu Zissulescu  <claziss@synopsys.com>
      	    Andrew Burgess  <andrew.burgess@embecosm.com>
      
      	* gcc.target/arc/firq-1.c: New file.
      	* gcc.target/arc/firq-2.c: Likewise.
      	* gcc.target/arc/firq-3.c: Likewise.
      	* gcc.target/arc/firq-4.c: Likewise.
      	* gcc.target/arc/firq-5.c: Likewise.
      	* gcc.target/arc/firq-6.c: Likewise.
      
      Co-Authored-By: Andrew Burgess <andrew.burgess@embecosm.com>
      
      From-SVN: r247796
      Claudiu Zissulescu committed
    • [ARC] Automatic context save/restore for regular interrupts. · 41453183
      The AUX_IRQ_CTRL register controls the behavior of automated register
      save and restore or prologue and epilogue sequences during a non-fast
      interrupt entry and exit, and context save and restore instructions.
      
      A user passes to the compiler the configuration of the AUX_IRQ_CTRL
      register via mirq-ctrl-saved option.  This option, specifies
      gneral-purposes registers that the processor saves/restores on
      interrupt entry and exit, and it is only valid for ARC EM and ARC HS
      cores.
      
      gcc/
      2017-05-09  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc.c (irq_ctrl_saved): New variable.
      	(ARC_AUTOBLINK_IRQ_P): Define.
      	(ARC_AUTOFP_IRQ_P): Likewise.
      	(ARC_AUTO_IRQ_P): Likewise.
      	(irq_range): New function.
      	(arc_must_save_register): Likewise.
      	(arc_must_save_return_addr): Likewise.
      	(arc_dwarf_emit_irq_save_regs): Likewise.
      	(arc_override_options): Handle deferred options.
      	(MUST_SAVE_REGISTER): Deleted, replaced by arc_must_save_register.
      	(MUST_SAVE_RETURN_ADDR): Deleted, replaced by
      	arc_must_save_return_addr.
      	(arc_compute_frame_size): Handle automated save and restore of
      	registers.
      	(arc_expand_prologue): Likewise.
      	(arc_expand_epilogue): Likewise.
      	* config/arc/arc.md (stack_irq_dwarf): New unspec instruction.
      	* config/arc/arc.opt (mirq-ctrl-saved): New option.
      	* doc/invoke.texi (mirq-ctrl-saved): Document option.
      
      testsuite/
      2017-05-09  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* gcc.target/arc/interrupt-5.c: Newfile.
      	* gcc.target/arc/interrupt-6.c: Likewise.
      	* gcc.target/arc/interrupt-7.c: Likewise.
      	* gcc.target/arc/interrupt-8.c: Likewise.
      	* gcc.target/arc/interrupt-9.c: Likewise.
      
      From-SVN: r247795
      Claudiu Zissulescu committed
    • vect-44.c: Add --param vect-max-peeling-for-alignment=0 and adjust. · 019bd543
      2017-05-09  Richard Biener  <rguenther@suse.de>
      
      	* gcc.dg/vect/vect-44.c: Add --param vect-max-peeling-for-alignment=0
      	and adjust.
      	* gcc.dg/vect/vect-50.c: Likewise.
      
      From-SVN: r247794
      Richard Biener committed
    • PR c++/70167 - array prvalue treated as lvalue · 60648580
      	* cp-tree.h (CONSTRUCTOR_C99_COMPOUND_LITERAL): New.
      	(enum fcl_t): New.
      	* semantics.c (finish_compound_literal): Add fcl_context parameter.
      	Only make a static variable for C99 syntax.
      	* parser.c (cp_parser_postfix_expression): Pass it.
      	* pt.c (tsubst_copy_and_build): Likewise.
      	* call.c (extend_ref_init_temps): Set
      	DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P.
      
      From-SVN: r247793
      Jason Merrill committed
    • ipa-devirt.c (default_hash_traits<type_pair>): Skip struct-scope typedefs. · 6c38fbc6
      	* ipa-devirt.c (default_hash_traits<type_pair>): Skip struct-scope
      	typedefs.
      
      From-SVN: r247791
      Nathan Sidwell committed