1. 05 Jun, 2019 17 commits
    • c-decl.c (start_decl): Adjust quoting and hyphenation in diagnostics. · 0ecf545c
      
      gcc/c/ChangeLog:
      
      	* c-decl.c (start_decl): Adjust quoting and hyphenation
      	in diagnostics.
      	(finish_decl): Same.
      	(finish_enum): Same.
      	(start_function): Same.
      	(declspecs_add_type): Same.
      	* c-parser.c (warn_for_abs): Same.
      	* c-typeck.c (build_binary_op): Same.
      
      gcc/c-family/ChangeLog:
      
      	* c-attribs.c (handle_mode_attribute): Adjust quoting and hyphenation.
      	(handle_alias_ifunc_attribute): Same.
      	(handle_copy_attribute): Same.
      	(handle_weakref_attribute): Same.
      	(handle_nonnull_attribute): Same.
      	* c-warn.c (warn_for_sign_compare): Same.
      	(warn_for_restrict): Same.
      	* c.opt: Same.
      
      gcc/cp/ChangeLog:
      
      	* call.c (build_conditional_expr_1): Adjust quoting and hyphenation.
      	(convert_like_real): Same.
      	(convert_arg_to_ellipsis): Same.
      	* constexpr.c (diag_array_subscript): Same.
      	* constraint.cc (diagnose_trait_expression): Same.
      	* cvt.c (ocp_convert): Same.
      	* decl.c (start_decl): Same.
      	(check_for_uninitialized_const_var): Same.
      	(grokfndecl): Same.
      	(check_special_function_return_type): Same.
      	(finish_enum_value_list): Same.
      	(start_preparsed_function): Same.
      	* parser.c (cp_parser_decl_specifier_seq): Same.
      	* typeck.c (cp_build_binary_op): Same.
      	(build_static_cast_1): Same.
      
      gcc/lto/ChangeLog:
      
      	* lto-common.c (lto_file_finalize): Adjust quoting and hyphenation.
      
      gcc/objc/ChangeLog:
      
      	* objc-act.c (objc_build_setter_call): Adjust quoting and hyphenation.
      	* objc-encoding.c (encode_gnu_bitfield): Same.
      
      gcc/ChangeLog:
      
      	* config/i386/i386-features.c (ix86_get_function_versions_dispatcher):
      	Adjust quoting and hyphenation.
      	* convert.c (convert_to_real_1): Same.
      	* gcc.c (driver_wrong_lang_callback): Same.
      	(driver::handle_unrecognized_options): Same.
      	* gimple-ssa-nonnull-compare.c (do_warn_nonnull_compare): Same.
      	* opts-common.c (cmdline_handle_error): Same.
      	(read_cmdline_option): Same.
      	* opts-global.c (complain_wrong_lang): Same.
      	(print_ignored_options): Same.
      	(handle_common_deferred_options): Same.
      	* pretty-print.h: Same.
      	* print-rtl.c (debug_bb_n_slim): Same.
      	* sched-rgn.c (make_pass_sched_fusion): Same.
      	* tree-cfg.c (verify_gimple_assign_unary): Same.
      	(verify_gimple_label): Same.
      	* tree-ssa-operands.c (verify_ssa_operands): Same.
      	* varasm.c (do_assemble_alias): Same.
      	(assemble_alias): Same.
      
      From-SVN: r271971
      Martin Sebor committed
    • alpha.c (direct_return): Move down after struct machine_function definition... · 0191520b
      	* config/alpha/alpha.c (direct_return): Move down after
      	struct machine_function definition; use saved frame_size;
      	return bool.
      	(struct machine_function): Add sa_mask, sa_size, frame_size.
      	(alpha_sa_mask, alpha_sa_size, compute_frame_size): Merge into ...
      	(alpha_compute_frame_layout): ... new function.
      	(TARGET_COMPUTE_FRAME_LAYOUT): New.
      	(alpha_initial_elimination_offset): Use saved sa_size.
      	(alpha_vms_initial_elimination_offset): Likewise.
      	(alpha_vms_can_eliminate): Remove alpha_sa_size call.
      	(alpha_expand_prologue): Use saved frame data.  Merge integer
      	and fp register save loops.
      	(alpha_expand_epilogue): Likewise.
      	(alpha_start_function): Use saved frame data.
      	* config/alpha/alpha-protos.h (direct_return): Update.
      	(alpha_sa_size): Remove.
      
      From-SVN: r271970
      Richard Henderson committed
    • ChangeLog for PR c++/63149 · 6f0926e6
      From-SVN: r271969
      Nina Dinka Ranns committed
    • PR c++/63149 - wrong auto deduction from braced-init-list · 9b79d5d3
      2019-06-04  Nina Dinka Ranns  <dinka.ranns@gmail.com>
      
          gcc/cp/
          * pt.c (listify_autos): Use non cv qualified auto_node in
          std::initializer_list<auto>.
      
          testsuite/
          * g++.dg/cpp0x/initlist-deduce2.C: New test.
      
      From-SVN: r271968
      Nina Dinka Ranns committed
    • aix-unwind.h (LR_REGNO): Rename to R_LR. · 781d39f2
      * config/rs6000/aix-unwind.h (LR_REGNO): Rename to R_LR.
      (CR2_REGNO): Rename to R_CR2.
      (XER_REGNO): Rename to R_XER.
      (FIRST_ALTIVEC_REGNO): Rename to R_FIRST_ALTIVEC.
      (VRSAVE_REGNO): Rename to R_VRSAVE.
      (VSCR_REGNO): R_VSCR.
      
      From-SVN: r271967
      David Edelsohn committed
    • rs6000: Fix new testcase · a637fd40
      At least with -m32 you need -maltivec if you #include <altivec.h>.
      
      
      gcc/testsuite/
      	* g++.target/powerpc/undef-bool-3.C: Add -maltivec to dg-options.
      
      From-SVN: r271966
      Segher Boessenkool committed
    • c-pragma.c (handle_pragma_weak): Adjust quoting in a diagnostic. · 36b34127
      
      gcc/c-family/ChangeLog:
      
      	* c-pragma.c (handle_pragma_weak): Adjust quoting in a diagnostic.
      	* c.opt (-Wformat-diag): Remove a spurious period.
      
      gcc/testsuite/ChangeLog:
      
      	* gcc.dg/weak/weak-19.c: New test.
      
      From-SVN: r271965
      Martin Sebor committed
    • fold-const.c (extract_muldiv_1): Do not distribute a multiplication by a power-of-two value. · c613138b
      	* fold-const.c (extract_muldiv_1) <PLUS_EXPR>: Do not distribute a
      	multiplication by a power-of-two value.
      	(fold_plusminus_mult_expr): Use pow2p_hwi to spot a power-of-two value
      	and turn the modulo operation into a masking operation.
      
      From-SVN: r271963
      Eric Botcazou committed
    • [PATCH][GCC][AARCH64] Add tests for pointer authentication B-key · 2098f8ec
      	gcc/testsuite/ChangeLog
      	* gcc.target/aarch64/return_address_sign_b_1.c: New file.
      	* gcc.target/aarch64/return_address_sign_b_2.c: New file.
      	* gcc.target/aarch64/return_address_sign_b_3.c: New file.
      	* gcc.target/aarch64/return_address_sign_builtin.c: New file.
      	* g++.target/aarch64/return_address_sign_ab_exception.C: New file.
      	* g++.target/aarch64/return_address_sign_b_exception.C: New file.
      
      From-SVN: r271954
      Sam Tebbs committed
    • re PR debug/90733 (ICE in simplify_subreg, at simplify-rtx.c:6440) · d301c1a4
      	PR debug/90733
      	* var-tracking.c (vt_expand_loc_callback): Don't create raw subregs
      	with VOIDmode inner operands.
      
      	* gcc.dg/pr90733.c: New test.
      
      From-SVN: r271952
      Jakub Jelinek committed
    • re PR middle-end/90726 (exponential behavior on SCEV results everywhere) · e0aecd6e
      2019-06-05  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/90726
      	* tree-ssa-loop-niter.c (expand_simple_operations): Do not
      	turn an expression graph into a tree.
      
      	* gcc.dg/pr90726.c: Enable IVOPTs.
      
      From-SVN: r271950
      Richard Biener committed
    • omp-expand.c (struct omp_region): Add has_lastprivate_conditional member. · 0b887b75
      	* omp-expand.c (struct omp_region): Add has_lastprivate_conditional
      	member.
      	(expand_parallel_call): If region->inner->has_lastprivate_conditional,
      	treat it like explicit monotonic schedule modifier.
      	(expand_omp_for): Initialize has_lastprivate_conditional.
      	If fd.lastprivate_conditional != 0, treat it like explicit monotonic
      	schedule modifier.
      
      From-SVN: r271949
      Jakub Jelinek committed
    • omp-low.c (lower_rec_input_clauses): For lastprivate conditional references... · 28b3a77c
      	* omp-low.c (lower_rec_input_clauses): For lastprivate conditional
      	references, lookup in in hash map MEM_REF operand instead of the
      	MEM_REF itself.
      	(lower_omp_1): When looking for lastprivate conditional assignments,
      	handle MEM_REFs with REFERENCE_TYPE operands.
      
      	* testsuite/libgomp.c++/lastprivate-conditional-1.C: New test.
      	* testsuite/libgomp.c++/lastprivate-conditional-2.C: New test.
      
      From-SVN: r271948
      Jakub Jelinek committed
    • omp-low.c (lower_rec_input_clauses): Force max_vf if is_simd and on… · 9ea2bfca
      omp-low.c (lower_rec_input_clauses): Force max_vf if is_simd and on privatization clauses OMP_CLAUSE_DECL is...
      
      	* omp-low.c (lower_rec_input_clauses): Force max_vf if is_simd and
      	on privatization clauses OMP_CLAUSE_DECL is privatized by reference
      	and references a VLA.  Handle references to non-VLAs if is_simd
      	all privatization clauses like reductions.
      	(lower_rec_input_clauses) <case do_private, case do_firstprivate>:
      	If omp_is_reference, use always omp simd arrays and set
      	DECL_VALUE_EXPR in that case, if lower_rec_simd_input_clauses
      	fails, emit reference initialization.
      
      	* g++.dg/vect/simd-1.cc: New test.
      
      From-SVN: r271947
      Jakub Jelinek committed
    • re PR target/89803 (Missing AVX512 intrinsics) · 5259a047
      gcc/
      2019-06-05  Hongtao Liu  <hongtao.liu@intel.com>
      
      	PR target/89803
      	* config/i386/avx512dqintrin.h (_mm_mask_fpclass_ss_mask,
      	_mm_mask_fpclass_sd_mask): New intrinsics.
      	(_mm_fpclass_ss_mask, _mm_fpclass_sd_mask): Modified, use new builtins.
      	* config/i386/i386-builtin.def
      	(__builtin_ia32_fpclassss_mask, __builtin_ia32_fpclasssd_mask):
      	New builtins.
      	(__builtin_ia32_fpclassss, __builtin_ia32_fpclasssd): Deleted.
      	* config/i386/i386-builtin-types.def (DEF_FUNCTION_TYPE (QI, V2DF, INT),
      	DEF_FUNCTION_TYPE (QI, V4SF, INT)): Deleted.
      	* config/i386/i386-expand.c (case QI_FTYPE_V4SF_INT,
      	case QI_FTYPE_V2SF_INT): Ditto.
      	* config/i386/sse.md
      	(define_insn "avx512dq_vmfpclass<mode><mask_scalar_merge_name>):
      	Extended to insnstructions with mask operands.
      
      gcc/testsuite
      2019-06-05  Hongtao Liu  <hongtao.liu@intel.com>
      
      	PR target/89803
      	* gcc.target/i386/avx-1.c (__builtin_ia32_fpclasssss,
      	__builtin_ia32_fpclasssd): Removed.
      	(__builtin_ia32_fpclassss_mask, __builtin_ia32_fpclasssd_mask): Define.
      	* gcc.target/i386/sse-13.c (__builtin_ia32_fpclasssss,
      	__builtin_ia32_fpclasssd): Removed.
      	(__builtin_ia32_fpclassss_mask, __builtin_ia32_fpclasssd_mask): Define.
      	* gcc.target/i386/sse-23.c (__builtin_ia32_fpclasssss,
      	__builtin_ia32_fpclasssd): Removed.
      	(__builtin_ia32_fpclassss_mask, __builtin_ia32_fpclasssd_mask): Define.
      	* gcc.target/i386/avx512dq-vfpclassss-2.c: New.
      	* gcc.target/i386/avx512dq-vfpclasssd-2.c: New.
      	* gcc.target/i386/avx512dq-vfpclassss-1.c (avx512f_test):
      	Add test for _mm_mask_fpclass_ss_mask.
      	* gcc.target/i386/avx512dq-vfpclasssd-1.c (avx512f_test):
      	Add test for _mm_mask_fpclass_sd_mask.
      
      From-SVN: r271946
      Hongtao Liu committed
    • compiler: statically allocate constant interface data · 34f66a53
          
          When converting a constant to interface, such as interface{}(42)
          or interface{}("hello"), if the interface escapes, we currently
          generate a heap allocation to hold the constant value.
          
          This CL changes it to generate a static allocation instead, as
          the gc compiler does. This reduces allocations in such cases.
          
          Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/180277
      
      From-SVN: r271945
      Ian Lance Taylor committed
    • Daily bump. · abccc5d2
      From-SVN: r271944
      GCC Administrator committed
  2. 04 Jun, 2019 23 commits
    • rs6000: Update direct-move* testcases · ca72ad5c
      This fixes some testcases that the last fifteen or so patches broke.
      In all these cases we no longer need to set VSX_REG_ATTR: the default
      value of "wa" is correct.
      
      
      gcc/testsuite/
      	* gcc.target/powerpc/direct-move-double1.c (VSX_REG_ATTR): Delete.
      	* gcc.target/powerpc/direct-move-double2.c: Ditto.
      	* gcc.target/powerpc/direct-move-float1.c: Ditto.
      	* gcc.target/powerpc/direct-move-float2.c: Ditto.
      	* gcc.target/powerpc/direct-move-vint1.c: Ditto.
      	* gcc.target/powerpc/direct-move-vint2.c: Ditto.
      
      From-SVN: r271940
      Segher Boessenkool committed
    • rs6000: Remove wp and wq · cb152d12
      wp becomes wa with isa p9tf, and wq is replaced by wa with isa p9kf.
      To manage to do that, there is the new mode attribute VSisa.
      
      
      	* config/rs6000/constraints.md (define_register_constraint "wp"):
      	Delete.
      	(define_register_constraint "wq"): Delete.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_wp and RS6000_CONSTRAINT_wq.
      	* config/rs6000/vsx.md (define_mode_attr VSr3): Delete.
      	(define_mode_attr VSa): Delete.
      	(define_mode_attr VSisa): New.
      	(rest of file): Adjust.
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271939
      Segher Boessenkool committed
    • rs6000: Add p9kf and p9tf isa values · 0e9449e6
      This adds "p9kf" and "p9tf" isa values, to be used for instruction
      alternatives where KFmode resp. TFmode is used.
      
      
      	* config/rs6000/rs6000.md (define_attr "isa"): Add p9kf and p9tf.
      	(define_attr "enabled"): Handle those new isa values.
      
      From-SVN: r271938
      Segher Boessenkool committed
    • rs6000: More simplification · 1f5aa628
      A whole bunch of mode attributes are used only once.  Things are
      easier to read if we just expand those patterns.  It's shorter, too.
      
      
      	* config/rs6000/vsx.md (define_mode_attr VSr4): Delete.
      	(define_mode_attr VSr5): Delete.
      	(define_mode_attr VStype_sqrt): Delete.
      	(define_mode_iterator VSX_SPDP): Delete.
      	(define_mode_attr VS_spdp_res): Delete.
      	(define_mode_attr VS_spdp_insn): Delete.
      	(define_mode_attr VS_spdp_type): Delete.
      	(*vsx_sqrt<mode>2): Adjust.
      	(vsx_<VS_spdp_insn>): Delete, split to...
      	(vsx_xscvdpsp): ... this.  New.  And...
      	(vsx_xvcvspdp): ... this.  New.  And...
      	(vsx_xvcvdpsp): ... this.  New.
      
      From-SVN: r271937
      Segher Boessenkool committed
    • rs6000: <VSs> -> <sd>p · 6cc8f683
      We don't need the <VSs> mode attribute, if we make <sd> work for V4SF
      and V2DF just like for SF and DF.
      
      
      	* config/rs6000/rs6000.md (define_mode_attr sd): Add values for V4SF
      	and V2DF.
      	* config/rs6000/vsx.md (define_mode_attr VSs): Delete.
      	(rest of file): Adjust.
      
      From-SVN: r271936
      Segher Boessenkool committed
    • rs6000: ww->wa in testsuite · 0d086313
      I should have factored this series better.  Oh well.  Near the end,
      let's call it loose ends.
      
      
      gcc/testsuite/
      	* gcc.target/powerpc/direct-move-float1.c: Use "wa" instead of "ww"
      	constraint.
      
      From-SVN: r271935
      Segher Boessenkool committed
    • rs6000: VSa->wa for some more cases · f78c2209
      
      	* config/rs6000/vsx.md (vsx_<VS_spdp_insn>): Use wa instead of <VSa>.
      	(vsx_extract_<mode>_var): Ditto.
      
      From-SVN: r271934
      Segher Boessenkool committed
    • rs6000: Simplify <VSa> for VSX_TI · cd9346a1
      When used in VSX_TI, <VSa> is always just "wa".
      
      
      	* config/rs6000/vsx.md: Replace all <VSa> that are used with VSX_TI
      	with just "wa".
      
      From-SVN: r271933
      Segher Boessenkool committed
    • rs6000: ww -> wa · 72e3386e
      "ww" can always be "wa".
      
      
      	* config/rs6000/constraints.md (define_register_constraint "ww"):
      	Delete.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_ww.
      	* config/rs6000/rs6000.md: Adjust.
      	* config/rs6000/vsx.md: Adjust.
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271932
      Segher Boessenkool committed
    • rs6000: Remove Ftrad, Fvsx, Fs; add s and sd · 4c5d4de7
      This removes the <Ftrad>, <Fvsx>, and <Fs> mode attributes, and creates
      new <sd> and <s> mode attributes instead.  <sd> is either "s" or "d",
      depending on whether the mode is single-precision or double-precision
      floating point; and <s> is either "s" or nothing.
      
      
      	* config/rs6000/rs6000.md (SFDF, SFDF2): Adjust comments.
      	(define_mode_attr sd): New.
      	(define_mode_attr s): New.
      	(define_mode_attr Ftrad): Delete.
      	(define_mode_attr Fvsx): Delete.
      	(define_mode_attr Fs): Delete.
      	(rest of file): Use the new mode attributes.
      	* config.rs6000/vsx.md: Use the new mode attributes.
      
      From-SVN: r271931
      Segher Boessenkool committed
    • rs6000: Simplify <VSa> for VSX_W · 7858932e
      When used in VSX_W, <VSa> is always just "wa".
      
      
      	* config/rs6000/vsx.md: Replace all <VSa> that are used with VSX_W
      	with just "wa".
      
      From-SVN: r271930
      Segher Boessenkool committed
    • rs6000: Simplify VS[ra]* for VSX_[BDF] · 012f609e
      When used in VSX_B, VSX_D, or VSX_F, both <VSr> and <VSa> are always
      just "wa" now.  Similarly <VSr2> and <VSr3>.  The former of those is
      always "wa", so we can remove the mode attribute completely.
      
      
      	* config/rs6000/vsx.md (define_mode_attr VSr2): Delete.
      	(rest of file): Replace all <VSa>, <VSr>, <VSr2>, and <VSr3> that are
      	used with VSX_B, VSX_D, or VSX_F, with just "wa".
      
      From-SVN: r271929
      Segher Boessenkool committed
    • decl.c (grokdeclarator): Use declarator->id_loc in two additional places. · ad441c26
      /cp
      2019-06-04  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* decl.c (grokdeclarator): Use declarator->id_loc in two
      	additional places.
      
      /testsuite
      2019-06-04  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/concepts/pr60573.C: Test locations too.
      	* g++.dg/cpp0x/deleted13.C: Likewise.
      	* g++.dg/parse/error29.C: Likewise.
      	* g++.dg/parse/qualified4.C: Likewise.
      	* g++.dg/template/crash96.C Likewise.
      	* g++.old-deja/g++.brendan/crash22.C Likewise.
      	* g++.old-deja/g++.brendan/crash23.C Likewise.
      	* g++.old-deja/g++.law/visibility10.C Likewise.
      	* g++.old-deja/g++.other/decl5.C: Likewise.
      
      From-SVN: r271928
      Paolo Carlini committed
    • re PR target/78263 (Compile failure with AltiVec library on PPC64le and -std=c++11 flag) · e756e900
      [gcc]
      
      2019-06-04  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	PR target/78263
      	* config/rs6000/altivec.h: Don't #define vector, pixel, bool for
      	C++ with strict ANSI requirements.
      
      [gcc/testsuite]
      
      2019-06-04  Bill Schmidt  <wschmidt@linux.ibm.com>
      
      	PR target/78263
      	* g++.target/powerpc: New directory.
      	* g++.target/powerpc/powerpc.exp: New test driver.
      	* g++.target/powerpc/undef-bool-3.C: New.
      
      From-SVN: r271927
      Bill Schmidt committed
    • Simplify loop size when step=1 · 4a28e1f1
      2019-06-04  Marc Glisse  <marc.glisse@inria.fr>
      
      	* tree-ssa-loop-niter.c (number_of_iterations_ne): Skip
      	computations when step is 1.
      
      From-SVN: r271926
      Marc Glisse committed
    • rs6000: wf -> wa · 8d3620ba
      "wf" is just "wa".
      
      
      	* config/rs6000/constraints.md (define_register_constraint "wf"):
      	Delete.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_wf.
      	* config/rs6000/rs6000.md: Adjust.
      	* config/rs6000/vsx.md: Adjust.
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271921
      Segher Boessenkool committed
    • AARCH64: ILP32: Fix aarch64_asan_shadow_offset · 10078f3e
      aarch64_asan_shadow_offset is using the wrong
      offset for ILP32.  Change it to be a decent one.
      
      ChangeLog:
      * config/aarch64/aarch64.c (aarch64_asan_shadow_offset):
      Fix ILP32 value.
      
      From-SVN: r271920
      Andrew Pinski committed
    • rs6000: wd -> wa · 85949949
      "wd" is just "wa".
      
      
      	* config/rs6000/constraints.md (define_register_constraint "wd"):
      	Delete.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_wd.
      	* config/rs6000/rs6000.md: Adjust.
      	* config/rs6000/vsx.md: Adjust.
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271919
      Segher Boessenkool committed
    • rs6000: Delete Fv2 · 1598bfb0
      <Fv2> always is "wa".
      
      
      	* config/rs6000/rs6000.md (define_mode_attr Fv2): Delete.
      	(rest of file): Adjust.
      
      From-SVN: r271918
      Segher Boessenkool committed
    • rs6000: Delete VS_64reg · 11d7bd36
      <VS_64reg> now always is "wa".  Make that simplification.
      
      
      	* config/rs6000/vsx.md (define_mode_attr VS_64reg): Delete.
      	(*vsx_extract_<P:mode>_<VSX_D:mode>_load): Adjust.
      	(vsx_splat_<mode>_reg): Adjust.
      
      From-SVN: r271917
      Segher Boessenkool committed
    • rs6000: ws -> wa · cc998fd5
      "ws" is just "wa".
      
      
      	* config/rs6000/constraints.md (define_register_constraint "ws"):
      	Delete.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_ws.
      	* config/rs6000/rs6000.md: Adjust.
      	* config/rs6000/vsx.md: Adjust.
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271916
      Segher Boessenkool committed
    • rs6000: wv -> v+p7v · 208a0405
      "wv" is "v", but only if VSX is enabled (otherwise it's NO_REGS).  So
      this patch sets "isa" "p7v" to all alternatives that used "wv" before
      (and that do not already need a later ISA), and changes the constraint.
      
      
      	* config/rs6000/constraints.md (define_register_constraint "wv"):
      	Delete.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_wv.
      	* config/rs6000/rs6000.md: Adjust.
      	* config/rs6000/vsx.md: Adjust.
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271915
      Segher Boessenkool committed
    • rs6000: wi->wa, wt->wa · e670418f
      "wi" and "wt" mean just the same as "wa" these days.  Change them to
      the simpler name.
      
      
      	* config/rs6000/constraints.md (define_register_constraint "wi"):
      	Delete.
      	(define_register_constraint "wt"): Delete.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_wi and RS6000_CONSTRAINT_wt.
      	* config/rs6000/rs6000.md: Adjust.
      	* config/rs6000/vsx.md: Adjust.
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271914
      Segher Boessenkool committed