1. 02 Jun, 2019 2 commits
    • re PR fortran/90539 (481.wrf slowdown by 25% on Intel Kaby with -Ofast… · 5d9c602d
      re PR fortran/90539 (481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377)
      
      2019-06-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/90539
      	* trans-expr.c (gfc_conv_subref_array_arg): If the size of the
      	expression can be determined to be one, treat it as contiguous.
      	Set likelyhood of presence of an actual argument according to
      	PRED_FORTRAN_ABSENT_DUMMY and likelyhood of being contiguous
      	according to PRED_FORTRAN_CONTIGUOUS.
      
      2019-06-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/90539
      	* predict.def (PRED_FORTRAN_CONTIGUOUS): New predictor.
      
      2019-06-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/90539
      	* gfortran.dg/internal_pack_24.f90: New test.
      
      From-SVN: r271844
      Thomas Koenig committed
    • Daily bump. · 5efdd6ee
      From-SVN: r271843
      GCC Administrator committed
  2. 01 Jun, 2019 6 commits
  3. 31 May, 2019 32 commits
    • i386: Don't insert ENDBR after NOTE_INSN_DELETED_LABEL · 02ed9049
      NOTE_INSN_DELETED_LABEL is used to mark what used to be a 'code_label',
      but was not used for other purposes than taking its address which cannot
      be used as target for indirect jumps.
      
      Tested on Linux/x86-64 with -fcf-protection.
      
      For x86-64 libc.so on glibc master branch (commit f43b8dd55588c3),
      
      Before: 2961 endbr64
      After:  2943 endbr64
      
      gcc/
      
      	PR target/89355
      	* config/i386/i386-features.c (rest_of_insert_endbranch): Remove
      	NOTE_INSN_DELETED_LABEL check.
      
      gcc/testsuite/
      
      	PR target/89355
      	* gcc.target/i386/cet-label-3.c: New test.
      	* gcc.target/i386/cet-label-4.c: Likewise.
      	* gcc.target/i386/cet-label-5.c: Likewise.
      
      Co-Authored-By: Hongtao Liu <hongtao.liu@intel.com>
      
      From-SVN: r271828
      H.J. Lu committed
    • mips.c (mips_expand_builtin_insn): Swap the 1st and 3rd operands of the fmadd/fmsub/maddv builtin. · 29c15932
      	* config/mips/mips.c (mips_expand_builtin_insn): Swap the 1st
      	and 3rd operands of the fmadd/fmsub/maddv builtin.
      
      	* gcc.target/mips/msa-fmadd.c: New.
      
      From-SVN: r271826
      Jeff Law committed
    • tree.h (OMP_CLAUSE__CONDTEMP__ITER): Define. · e7393c89
      	* tree.h (OMP_CLAUSE__CONDTEMP__ITER): Define.
      	* gimplify.c (gimplify_scan_omp_clauses): Allow lastprivate conditional
      	on OMP_SIMD if not nested inside of worksharing loop that also has
      	lastprivate conditional clause for the same decl.
      	(gimplify_omp_for): Add _condtemp_ clauses to OMP_SIMD if needed.
      	* omp-low.c (scan_sharing_clauses): Handle OMP_CLAUSE__CONDTEMP_ also
      	on simd.
      	(lower_rec_input_clauses): Likewise.  Handle lastprivate conditional
      	on simd construct.
      	(lower_lastprivate_conditional_clauses): Handle lastprivate conditional
      	on simd construct.
      	(lower_lastprivate_clauses): Likewise.
      	(lower_omp_sections): Call lower_lastprivate_conditional_clauses before
      	calling lower_rec_input_clauses.
      	(lower_omp_for): Likewise.
      	(lower_omp_1): Use first rather than second OMP_CLAUSE__CONDTEMP_
      	clause on simd construct.
      	* omp-expand.c (expand_omp_simd): Initialize cond_var if
      	OMP_CLAUSE__CONDTEMP_ clause is present.
      
      	* c-c++-common/gomp/lastprivate-conditional-2.c (foo): Don't expect
      	a sorry on lastprivate conditional on simd construct.
      	* gcc.dg/vect/vect-simd-6.c: New test.
      	* gcc.dg/vect/vect-simd-7.c: New test.
      
      From-SVN: r271825
      Jakub Jelinek committed
    • omp-low.c (lower_rec_simd_input_clauses): Set TREE_THIS_NOTRAP on ivar and lvar. · 1ce8fc63
      	* omp-low.c (lower_rec_simd_input_clauses): Set TREE_THIS_NOTRAP on
      	ivar and lvar.
      
      	* gcc.dg/vect/vect-simd-5.c: New test.
      
      From-SVN: r271824
      Jakub Jelinek committed
    • runtime: drop unused C type reflection code · 2099d446
          
          In particular, drop __go_type_descriptors_equal, which is no longer
          used, and will be made obsolete by CL 179598.
          
          Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/179858
      
      From-SVN: r271823
      Ian Lance Taylor committed
    • compiler: optimize append of make · 6303331c
          
          The gc compiler recognizes append(s, make([]T, n)...), and
          generates code to directly zero the tail instead of allocating a
          new slice and copying. This CL lets the Go frontend do basically
          the same.
          
          The difficulty is that at the point we handle append, there may
          already be temporaries introduced (e.g. in order_evaluations),
          which makes it hard to find the append-of-make pattern. The
          compiler could "see through" the value of a temporary, but it is
          only safe to do if the temporary is not assigned multiple times.
          For this, we add tracking of assignments and uses for temporaries.
          
          This also helps in optimizing non-escape slice make. We already
          optimize non-escape slice make with constant len/cap to stack
          allocation. But it failed to handle things like f(make([]T, n))
          (where the slice doesn't escape and n is constant), because of
          the temporary. With tracking of temporary assignments and uses,
          it can handle this now as well.
          
          Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/179597
      
      From-SVN: r271822
      Ian Lance Taylor committed
    • compiler: handle int-to-string conversion with large integer constant · 2b5360d7
          
          Currently, Type_conversion_expression::do_is_constant thinks the
          int-to-string conversion is constant if the integer operand is
          constant, but Type_conversion_expression::do_get_backend actually
          generates a call to runtime.intstring if the integer does not fit
          in a "ushort", which makes it not suitable in constant context,
          such as static initializer.
          
          This CL makes it handle all constant integer input as constant,
          generating constant string.
          
          Fixes golang/go#32347.
          
          Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/179777
      
      From-SVN: r271821
      Ian Lance Taylor committed
    • re PR c/43673 (Incorrect warning: use of 'D' length modifier with 'a' type character) · f2c2c4e3
      	PR c/43673
      	* c-format.c (print_char_table, scanf_char_table): Replace BADLEN with
      	TEX_D32, TEX_D64 or TEX_D128.
      
      	PR c/43673
      	* gcc.dg/format-dfp-printf-1.c: New test.
      	* gcc.dg/format-dfp-scanf-1.c: Likewise.
      
      From-SVN: r271820
      Xiong Hu Luo committed
    • cp-demangle.c: Don't define CP_DYNAMIC_ARRAYS if __STDC_NO_VLA__ is non-zero. · 2a1c064a
      	* cp-demangle.c: Don't define CP_DYNAMIC_ARRAYS if __STDC_NO_VLA__
      	is non-zero.
      
      From-SVN: r271819
      Michael Forney committed
    • runtime: implement cheaper context switch on Linux/AMD64 · 4d12cf3c
          
          Currently, goroutine switches are implemented with libc
          getcontext/setcontext functions, which saves/restores the machine
          register states and also the signal context. This does more than
          what we need, and performs an expensive syscall.
          
          This CL implements a simplified version of getcontext/setcontext,
          in assembly, that only saves/restores the necessary part, i.e.
          the callee-save registers, and the PC, SP. A simplified version
          of makecontext, written in C, is also added. Currently this is
          only implemented on Linux/AMD64.
          
          Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/178298
      
      From-SVN: r271818
      Ian Lance Taylor committed
    • apply unary op to both sides of (vec_cond x cst1 cst2) · 34a13a52
      2019-05-31  Marc Glisse  <marc.glisse@inria.fr>
      
      gcc/
      	* match.pd (~(vec?cst1:cst2)): New transformation.
      
      gcc/testsuite/
      	* g++.dg/tree-ssa/cprop-vcond.C: New file.
      
      From-SVN: r271817
      Marc Glisse committed
    • Simplify more EXACT_DIV_EXPR comparisons · 9cf60d3b
      2019-05-31  Marc Glisse  <marc.glisse@inria.fr>
      
      gcc/
      	* match.pd (X/[ex]D<Y/[ex]D): Handle negative denominator.
      	((size_t)(A /[ex] B) CMP C): New transformation.
      
      gcc/testsuite/
      	* gcc.dg/tree-ssa/cmpexactdiv-3.c: New file.
      	* gcc.dg/tree-ssa/cmpexactdiv-4.c: New file.
      	* gcc.dg/Walloca-13.c: Xfail.
      
      From-SVN: r271816
      Marc Glisse committed
    • New .md construct: define_insn_and_rewrite · f4fde1b3
      Several SVE patterns need define_insn_and_splits that generate the
      same insn_code, but with different operands.  That's probably a
      niche requirement, but it's cropping up often enough on the ACLE
      branch that I think it would be good to have a syntactic sugar for it.
      
      This patch therefore adds a new construct called define_insn_and_rewrite.
      It's basically a define_insn_and_split with an implicit split pattern,
      obtained by copying the insn pattern and replacing match_operands with
      match_dups and match_operators with match_op_dups.
      
      2019-05-31  Richard Sandiford  <richard.sandiford@arm.com>
      
      gcc/
      	* doc/md.texi: Document define_insn_and_rewrite.
      	* rtl.def (DEFINE_INSN_AND_REWRITE): New rtx code.
      	* gensupport.c (queue_elem): Update comment.
      	(replace_operands_with_dups): New function.
      	(gen_rewrite_sequence): Likewise.
      	(process_rtx): Handle DEFINE_INSN_AND_REWRITE.
      	* read-rtl.c (apply_subst_iterator): Likewise.
      	(add_condition_to_rtx, named_rtx_p): Likewise.
      	(rtx_reader::read_rtx_operand): Likewise.
      	* config/aarch64/aarch64-sve.md
      	(while_ult<GPI:mode><PRED_ALL:mode>_cc): Rename to...
      	(*while_ult<GPI:mode><PRED_ALL:mode>_cc): ...this and use
      	define_insn_and_rewrite.
      	(*cond_<optab><mode>_any): Turn into define_insn_and_rewrites.
      	Remove separate define_split.
      
      From-SVN: r271815
      Richard Sandiford committed
    • Add noexcept to tuple<> and simplify tuple<T1,T2> noexcept-specifiers · b1bb4869
      	* include/std/tuple (tuple<>): Add noexcept to allocator-extended
      	constructors.
      	(tuple<T1, T2>::__nothrow_default_constructible()): New helper
      	function.
      	(tuple<T1, T2>::tuple(), explicit tuple<T1, T2>::tuple()): Use helper.
      
      From-SVN: r271814
      Jonathan Wakely committed
    • tree-ssa-alias.c (type_has_components_p): New function. · 1facd627
      
      	* tree-ssa-alias.c (type_has_components_p): New function.
      	(aliasing_component_refs_p): Use it.
      
      From-SVN: r271813
      Jan Hubicka committed
    • Fix breakage due to removing __gnu_cxx::size_t declaration · ff0b7e88
      Restore the using-declaration but locally in the source file, not in the
      header.
      
      	* src/c++98/bitmap_allocator.cc: Add using-declaration for size_t.
      
      From-SVN: r271812
      Jonathan Wakely committed
    • [C++PATCH] Lambda names are anonymous · ca3edeae
      https://gcc.gnu.org/ml/gcc-patches/2019-05/msg02126.html
      	* cp-tree.h (IDENTIFIER_LAMBDA_P): New.
      	(TYPE_ANON_P): New.
      	(LAMBDA_TYPE_P, TYPE_UNNAMED_P):  Likewise.
      	(LAMBDANAME_PREFIX, LAMBDANAME_FORMAT): Delete.
      	(make_lambda_name): Don't declare.
      	* error.c (dump_aggr_type): Check for lambdas before other
      	anonymous names.
      	* lambda.c (begin_lambda_type): Use make_anon_name.
      	* cp-lang.c (cxx_dwarf_name): Lambda names smell anonymous.
      	* mangle.c (write_local_name): Likewise.
      	* name-lookup.c (lambda_cnt, make_lambda_name): Delete.
      
      From-SVN: r271811
      Nathan Sidwell committed
    • cpu-future.c: Require powerpc_future_ok. · 929c046d
      2019-05-31  Bill Schmidt  <wschmidt@linux.ibm.com>
      	    Michael Meissner  <meissner@linux.ibm.com>
      
      	* gcc.target/powerpc/cpu-future.c: Require powerpc_future_ok.
      	* gcc.target/powerpc/localentry-1.c: Likewise.
      	* gcc.target/powerpc/localentry-direct-1.c: Likewise.
      	* gcc.target/powerpc/notoc-direct-1.c: Likewise.
      	* gcc.target/powerpc/pcrel-sibcall-1.c: Likewise.
      	* lib/target-supports.exp (check_powerpc_future_hw_available): New.
      	(check_effective_target_powerpc_future_ok): New.
      
      
      Co-Authored-By: Michael Meissner <meissner@linux.ibm.com>
      
      From-SVN: r271810
      Bill Schmidt committed
    • PR libstdc++/90682 allow set_terminate(0) and set_unexpected(0) · 3228289e
      Make these functions restore the default handlers when passed a null
      pointer. This is consistent with std::pmr::set_default_resource(0), and
      also matches the current behaviour of libc++.
      
      In order to avoid duplicating the preprocessor condition from
      eh_term_handler.cc more that into a new eh_term_handler.h header and
      define a macro that can be used in both eh_term_handler.cc and
      eh_terminate.cc.
      
      	PR libstdc++/90682
      	* libsupc++/eh_term_handler.cc: Include eh_term_handler.h to get
      	definition of _GLIBCXX_DEFAULT_TERM_HANDLER.
      	* libsupc++/eh_term_handler.h: New header defining
      	_GLIBCXX_DEFAULT_TERM_HANDLER.
      	* libsupc++/eh_terminate.cc: Include eh_term_handler.h.
      	(set_terminate): Restore default handler when argument is null.
      	(set_unexpected): Likewise.
      	* testsuite/18_support/set_terminate.cc: New test.
      	* testsuite/18_support/set_unexpected.cc: New test.
      
      From-SVN: r271808
      Jonathan Wakely committed
    • Remove using-declarations that add std names to __gnu_cxx · 3263fb9c
      These using-declarations appear to have been added for simplicity when
      moving the non-standard extensions from namespace std to namespace
      __gnu_cxx. Dumping all these names into namespace __gnu_cxx allows
      unportable uses like __gnu_cxx::size_t and __gnu_cxx::pair, which serve
      no useful purpose.
      
      This patch removes most of the using-declarations from namespace scope,
      then either qualifies names as needed or adds using-declarations at
      block scope or typedefs at class scope.
      
      	* include/backward/hashtable.h (size_t, ptrdiff_t)
      	(forward_iterator_tag, input_iterator_tag, _Construct, _Destroy)
      	(distance, vector, pair, __iterator_category): Remove
      	using-declarations that add these names to namespace __gnu_cxx.
      	* include/ext/bitmap_allocator.h (size_t, ptrdiff_t): Likewise.
      	* include/ext/debug_allocator.h (size_t): Likewise.
      	* include/ext/functional (size_t, unary_function, binary_function)
      	(mem_fun1_t, const_mem_fun1_t, mem_fun1_ref_t, const_mem_fun1_ref_t):
      	Likewise.
      	* include/ext/malloc_allocator.h (size_t, ptrdiff_t): Likewise.
      	* include/ext/memory (ptrdiff_t, pair, __iterator_category): Likewise.
      	* include/ext/mt_allocator.h (size_t, ptrdiff_t): Likewise.
      	* include/ext/new_allocator.h (size_t, ptrdiff_t): Likewise.
      	* include/ext/numeric (iota): Fix outdated comment.
      	* include/ext/pool_allocator.h (size_t, ptrdiff_t): Likewise.
      	* include/ext/rb_tree (_Rb_tree, allocator): Likewise.
      	* include/ext/rope (size_t, ptrdiff_t, allocator, _Destroy): Likewise.
      	* include/ext/ropeimpl.h (size_t, printf, basic_ostream)
      	(__throw_length_error, _Destroy, std::__uninitialized_fill_n_a):
      	Likewise.
      	* include/ext/slist (size_t, ptrdiff_t, _Construct, _Destroy)
      	(allocator, __true_type, __false_type): Likewise.
      
      From-SVN: r271807
      Jonathan Wakely committed
    • PR libstdc++/71579 assert that type traits are not misused with incomplete types · 608a080c
      This patch adds static asserts for type traits misuse with incomplete
      classes and unions. This gives a nice readable error message instead
      of an UB and odr-violations.
      
      Some features of the patch:
      * each type trait has it's own static_assert inside. This gives better
      diagnostics than the approach with putting the assert into a helper
      structure and using it in each trait.
      * the result of completeness check is not memorized by the compiler.
      This gives no false positive after the first failed check.
      * some of the compiler builtins already implement the check. But not
      all of them! So the asserts are in all the type_traits that may
      benefit from the check. This also makes the behavior of libstdc++ more
      consistent across different (non GCC) compilers.
      * std::is_base_of does not have the assert as it works well in many
      cases with incomplete types
      
      2019-05-31  Antony Polukhin  <antoshkka@gmail.com>
      
      	PR libstdc++/71579
      	* include/std/type_traits __type_identity, __is_complete_or_unbounded):
      	New helpers for checking preconditions in traits.
      	(is_trivial, is_trivially_copyable, is_standard_layout, is_pod)
      	(is_literal_type, is_empty, is_polymorphic, is_final, is_abstract)
      	(is_destructible, is_nothrow_destructible, is_constructible)
      	(is_default_constructible, is_copy_constructible)
      	(is_move_constructible, is_nothrow_default_constructible)
      	(is_nothrow_constructible, is_nothrow_copy_constructible)
      	(is_nothrow_move_constructible, is_copy_assignable, is_move_assignable)
      	(is_nothrow_assignable, is_nothrow_copy_assignable)
      	(is_nothrow_move_assignable, is_trivially_constructible)
      	(is_trivially_copy_constructible, is_trivially_move_constructible)
      	is_trivially_assignable, is_trivially_copy_assignable)
      	(is_trivially_move_assignable, is_trivially_destructible)
      	(alignment_of, is_swappable, is_nothrow_swappable, is_invocable)
      	(is_invocable_r, is_nothrow_invocable)
      	(has_unique_object_representations, is_aggregate): Add static_asserts
      	to make sure that type traits are not misused with incomplete types.
      	(__is_constructible_impl, __is_nothrow_default_constructible_impl)
      	(__is_nothrow_constructible_impl, __is_nothrow_assignable_impl): New
      	base characteristics without assertions that can be reused in other
      	traits.
      	* testsuite/20_util/is_complete_or_unbounded/memoization.cc: New test.
      	* testsuite/20_util/is_complete_or_unbounded/memoization_neg.cc: New
      	test.
      	* testsuite/20_util/is_complete_or_unbounded/value.cc: New test.
      	* testsuite/20_util/is_abstract/incomplete_neg.cc: New test.
      	* testsuite/20_util/is_aggregate/incomplete_neg.cc: New test.
      	* testsuite/20_util/is_class/value.cc: Check incomplete type.
      	* testsuite/20_util/is_function/value.cc: Likewise.
      	* testsuite/20_util/is_move_constructible/incomplete_neg.cc: New test.
      	* testsuite/20_util/is_nothrow_move_assignable/incomplete_neg.cc: New
      	test.
      	* testsuite/20_util/is_polymorphic/incomplete_neg.cc: New test.
      	* testsuite/20_util/is_reference/value.cc: Check incomplete types.
      	* testsuite/20_util/is_unbounded_array/value.cc: Likewise.
      	* testsuite/20_util/is_union/value.cc: Likewise.
      	* testsuite/20_util/is_void/value.cc: Likewise.
      	* testsuite/util/testsuite_tr1.h: Add incomplete union type.
      
      From-SVN: r271806
      Antony Polukhin committed
    • Fix random_device to work with COW strings again · aeedf077
      Instead of duplicating the initialization functions that take string,
      add a new member taking a raw pointer that can be used to convert the
      constructor token from the old string to the new.
      
      Also fix "mt19337" typos in a testcase.
      
      	* include/bits/random.h (random_device::_M_init(const char*, size_t)):
      	Add new private member function.
      	* src/c++11/cow-string-inst.cc (random_device::_M_init(const string&))
      	(random_device::_M_init_pretr1(const string&)): Call new private
      	member with string data.
      	* src/c++11/random.cc (random_device::_M_init(const char*, size_t)):
      	Define.
      	* testsuite/26_numerics/random/random_device/cons/default-cow.cc: New
      	test using COW strings.
      	* testsuite/26_numerics/random/random_device/cons/default.cc: Generate
      	a value from the device.
      	* testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
      	Fix typo in token string.
      
      From-SVN: r271805
      Jonathan Wakely committed
    • Add pretty print for const_tree. · decc53df
      2019-05-31  Martin Liska  <mliska@suse.cz>
      
      	* gdbhooks.py: Add const_tree to TreePrinter.
      
      From-SVN: r271804
      Martin Liska committed
    • re PR debug/86964 (Too many debug symbols included, especially for extern globals) · d1137c02
      2019-05-31  Thomas De Schampheleire  <thomas.de_schampheleire@nokia.com>
      
      	PR debug/86964
      	* common.opt (feliminate-unused-debug-symbols): Enable by default.
      	* doc/invoke.texi (Debugging Options): Document new default of
      	-feliminate-unused-debug-symbols and remove restriction to 'stabs'.
      
      	* g++.dg/debug/dwarf2/fesd-any.C: Use
      	-fno-eliminate-unused-debug-symbols.
      	* g++.dg/debug/dwarf2/fesd-baseonly.C: Likewise.
      	* g++.dg/debug/dwarf2/fesd-none.C: Likewise.
      	* g++.dg/debug/dwarf2/fesd-reduced.C: Likewise.
      	* g++.dg/debug/dwarf2/fesd-sys.C: Likewise.
      	* g++.dg/debug/dwarf2/inline-var-1.C: Likewise.
      	* g++.dg/debug/enum-2.C: Likewise.
      	* gcc.dg/debug/dwarf2/fesd-any.c: Likewise.
      	* gcc.dg/debug/dwarf2/fesd-baseonly.c: Likewise.
      	* gcc.dg/debug/dwarf2/fesd-none.c: Likewise.
      	* gcc.dg/debug/dwarf2/fesd-reduced.c: Likewise.
      	* gcc.dg/debug/dwarf2/fesd-sys.c: Likewise.
      
      From-SVN: r271803
      Thomas De Schampheleire committed
    • re PR tree-optimization/90671 (ICE on valid code at -Os and above with -g… · 6992d6fb
      re PR tree-optimization/90671 (ICE on valid code at -Os and above with -g enabled in gsi_split_seq_after, at gimple-iterator.c:345)
      
      	PR tree-optimization/90671
      	* tree-ssa-threadupdate.c (ssa_create_duplicates): If
      	template_block used to be empty on the first call, don't use
      	gsi_split_seq_after and gsi_insert_seq_after, but remember whole
      	seq with bb_seq and set it with set_bb_seq.
      
      	* gcc.dg/torture/pr90671.c: New test.
      
      From-SVN: r271802
      Jakub Jelinek committed
    • c++, testsuite - require alias support for a test. · 0eee8eaa
      The test for pr84497 uses a facility that requires alias support from
      the target, and therefore fails on targets without.  Add a suitable 
      dg-require statement.
      
      2019-05-31  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* g++.dg/cpp0x/pr84497.C: Require alias support.
      
      From-SVN: r271801
      Iain Sandoe committed
    • Darwin, x86, testsuite - adjust tests for Darwin's align syntax. · 4ef2ef0c
      Darwin has a .align taking a power of 2 by default, so that some
      tests expecting a byte count are failing, fixed thus.
      
      gcc/testsuite/
      
      2019-05-31  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* gcc.target/i386/falign-functions-3.c: Adjust align syntax
      	and label for Darwin.
      	* gcc.target/i386/attr-aligned-2.c: Adjust align syntax for
      	Darwin.
      
      From-SVN: r271800
      Iain Sandoe committed
    • Darwin, x86 - We have .p2align, so declare its use. · eb11a552
      .p2align support is present in all x86 assemblers on released
      Darwin systems.
      
      gcc/
      
      2019-05-29  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* config/i386/darwin.h (ASM_OUTPUT_MAX_SKIP_ALIGN): New.
      
      From-SVN: r271799
      Iain Sandoe committed
    • predicates.md (pcrel_address): New define_predicate. · a1842c37
      2019-05-30  Bill Schmidt  <wschmidt@linux.ibm.com>
      	    Michael Meissner  <meissner@linux.ibm.com>
      
      	* config/rs6000/predicates.md (pcrel_address): New define_predicate.
      	(prefixed_mem_operand): Likewise.
      	(non_prefixed_mem_operand): Likewise.
      	* config/rs6000/rs6000-protos.h (rs6000_prefixed_address): New
      	prototype.
      	* config/rs6000/rs6000.c (print_operand_address): Handle
      	PC-relative addresses.
      	(mode_supports_prefixed_address_p): New function.
      	(rs6000_prefixed_address): New function.
      	* config/rs6000/rs6000.h (SYMBOL_FLAG_PCREL): New #define.
      	(SYMBOL_REF_PCREL_P): Likewise.
      
      
      Co-Authored-By: Michael Meissner <meissner@linux.ibm.com>
      
      From-SVN: r271798
      Bill Schmidt committed
    • * fi.po, sv.po: Update. · 47a665af
      From-SVN: r271796
      Joseph Myers committed
    • Daily bump. · 17c5c4c7
      From-SVN: r271795
      GCC Administrator committed