1. 05 Oct, 2015 10 commits
    • Remove remaining uses of CONST_DOUBLE_FROM_REAL_VALUE · 555affd7
      This patch replaces all uses of CONST_DOUBLE_FROM_REAL_VALUE
      with the already-existing const_double_from_real_value.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/
      	* real.h (CONST_DOUBLE_ATOF): Use const_double_from_real_value
      	instead of CONST_DOUBLE_FROM_REAL_VALUE.
      	(CONST_DOUBLE_FROM_REAL_VALUE): Delete.
      	* config/c6x/c6x.md (divsf3, divdf3): Use const_double_from_real_value
      	instead of CONST_DOUBLE_FROM_REAL_VALUE.
      	* config/epiphany/epiphany.md (fixuns_truncsfsi2): Likewise.
      	* config/i386/i386.c (standard_80387_constant_rtx): Likewise.
      	(ix86_expand_builtin, ix86_emit_i387_log1p, ix86_emit_i387_round)
      	(ix86_emit_swsqrtsf): Likewise.
      	* config/ia64/ia64.c (ia64_expand_builtin): Likewise.
      	* config/mips/mips.md (fixuns_truncdfsi2, fixuns_truncdfdi2)
      	(fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
      	* config/pa/pa.c (pa_expand_builtin): Likewise.
      	* config/rs6000/rs6000.c (rs6000_load_constant_and_splat): Likewise.
      	(rs6000_scale_v2df): Likewise.
      	* config/rs6000/rs6000.md (*cmptf_internal2): Likewise.
      	* config/s390/s390.md (fixuns_truncdddi2, fixuns_trunctddi2)
      	(fixuns_trunc<BFP:mode><GPR:mode>2): Likewise.
      	* config/s390/vx-builtins.md (vec_ctd_s64, vec_ctd_u64, vec_ctsl)
      	(vec_ctul): Likewise.
      	* config/sparc/sparc.c (sparc_emit_fixunsdi): Likewise.
      	* config/spu/spu.c (hwint_to_const_double, spu_float_const): Likewise.
      	* config/spu/spu.md (floatunsdisf2, floatunstisf2): Likewise.
      	* cse.c (fold_rtx): Likewise.
      	* emit-rtl.c (immed_double_const): Likewise (in comments).
      	(init_emit_once): Likewise.
      	* expr.c (compress_float_constant, expand_expr_real_1)
      	(const_vector_from_tree): Likewise.
      	* optabs.c (expand_float, expand_fix): Likewise.
      	* reg-stack.c (reg_to_stack): Likewise.
      	* simplify-rtx.c (avoid_constant_pool_reference): Likewise.
      	(simplify_const_unary_operation, simplify_binary_operation_1)
      	(simplify_const_binary_operation, simplify_relational_operation)
      	(simplify_immed_subreg): Likewise.
      
      From-SVN: r228477
      Richard Sandiford committed
    • Remove remaining uses of REAL_ARITHMETIC · 5c88ea94
      This patch replaces all remaining uses of the old target macro
      REAL_ARITHMETIC with calls to the (now generic) real_arithmetic
      function.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/ada/
      	* gcc-interface/trans.c (convert_with_check): Use real_arithmetic
      	instead of REAL_ARITHMETIC.
      
      gcc/
      	* doc/tm.texi.in (REAL_ARITHMETIC): Delete.
      	* doc/tm.texi: Regenerate.
      	* real.h (REAL_ARITHMETIC): Delete.
      	* config/i386/i386.c (ix86_expand_lround, ix86_expand_round)
      	(ix86_expand_round_sse4): Use real_arithmetic instead of
      	REAL_ARITHMETIC.
      	* config/i386/sse.md (round<mode>2): Likewise.
      	* rtl.h (rtx_to_tree_code): Likewise (in comment).
      	* explow.c (rtx_to_tree_code): Likewise (in comment).
      	* match.pd: Likewise.
      	* simplify-rtx.c (simplify_binary_operation_1): Likewise.
      	* tree-ssa-math-opts.c (representable_as_half_series_p): Likewise.
      	(expand_pow_as_sqrts): Likewise.
      	* tree-pretty-print.c (dump_generic_node): Remove code that
      	was conditional on REAL_ARITHMETIC being undefined.
      
      From-SVN: r228476
      Richard Sandiford committed
    • Replace REAL_VALUES_LESS with real_less · 8cb41028
      This patch continues the removal of real-related macros by
      replacing REAL_VALUES_LESS with real_less.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/ada/
      	* gcc-interface/trans.c (convert_with_check): Use real_less instead
      	of REAL_VALUES_LESS.
      
      gcc/
      	* doc/tm.texi.in (REAL_VALUES_LESS): Delete.
      	* doc/tm.texi: Regenerate.
      	* real.h (real_less): Declare.
      	(REAL_VALUES_LESS): Delete.
      	* real.c (real_less): New function.
      	(real_compare): Use it.
      	* config/m68k/m68k.c (floating_exact_log2): Use real_less instead
      	of REAL_VALUES_LESS.
      	* config/microblaze/microblaze.c (microblaze_const_double_ok):
      	Likewise.
      	* fold-const.c (fold_convert_const_int_from_real): Likewise.
      	* simplify-rtx.c (simplify_const_unary_operation): Likewise.
      	(simplify_const_relational_operation): Likewise.
      	* tree-call-cdce.c (check_pow): Likewise.
      	(gen_conditions_for_pow_cst_base): Likewise.
      
      From-SVN: r228475
      Richard Sandiford committed
    • Remove remaining uses of REAL_VALUES_IDENTICAL · 1a25c6b1
      This patch continues the removal of real-related macros.
      We already had both the old-style REAL_VALUES_IDENTICAL and the
      new-style real_identical, so this patch replaces all remaining
      uses of the former with the latter.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/
      	* real.h (REAL_VALUES_IDENTICAL): Delete.
      	* config/m68k/m68k.c (standard_68881_constant_p): Use real_identical
      	instead of REAL_VALUES_IDENTICAL.
      	* fold-const.c (operand_equal_p): Likewise.
      	* ipa-icf.c (sem_variable::equals): Likewise.
      	* tree-complex.c (some_nonzerop): Likewise.
      	(expand_complex_multiplication): Likewise.
      	* tree.c (simple_cst_equal): Likewise.
      	* varasm.c (compare_constant): Likewise.
      ---
       gcc/config/m68k/m68k.c | 5 ++---
       gcc/fold-const.c       | 3 +--
       gcc/ipa-icf.c          | 4 ++--
       gcc/real.h             | 1 -
       gcc/tree-complex.c     | 4 ++--
       gcc/tree.c             | 2 +-
       gcc/varasm.c           | 2 +-
       7 files changed, 9 insertions(+), 12 deletions(-)
      
      From-SVN: r228474
      Richard Sandiford committed
    • Replace REAL_VALUES_EQUAL with real_equal · 624d31fe
      Richard B suggested we should replace dconsthalf etc. with
      dconst<1, 2> ().  When I tried that, the extra comma caused problems
      with some lingering uses of the old target macros for handling reals
      (e.g. REAL_ARITHMETIC instead of real_arithmetic), since the constant
      was then treated as two macro parameters.  It would have been possible
      to add an extra level of brackets to avoid this, but I thought I might
      as well take the opportunity to remove the macros instead.  (Note that
      I'm only removing macros that caused a problem directly, or are closely
      related to ones that did.)
      
      This first patch replaces REAL_VALUES_EQUAL with a real_equal function.
      The prototype is the same as for real_identical, which has already
      undergone a half-transition in this direction.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/c-family/
      	* c-lex.c (interpret_float): Use real_equal instead of
      	REAL_VALUES_EQUAL.
      
      gcc/c/
      	* c-typeck.c (c_tree_equal): Use real_equal instead of
      	REAL_VALUES_EQUAL.
      
      gcc/cp/
      	* tree.c (cp_tree_equal): Use real_equal instead of
      	REAL_VALUES_EQUAL.
      
      gcc/
      	* real.h (real_equal): Declare.
      	(REAL_VALUES_EQUAL): Delete.
      	* real.c (real_equal): New function.
      	(real_compare): Use it.
      	* doc/tm.texi.in (REAL_VALUES_EQUAL): Delete.
      	* doc/tm.texi: Regenerate.
      	* builtins.c (fold_builtin_pow, fold_builtin_load_exponent): Use
      	real_equal instead of REAL_VALUES_EQUAL.
      	* config/aarch64/aarch64.c (aarch64_float_const_zero_rtx_p): Likewise.
      	* config/arm/arm.c (arm_const_double_rtx, neon_valid_immediate)
      	(fp_const_from_val): Likewise.
      	* config/fr30/fr30.c (fr30_const_double_is_zero): Likewise.
      	* config/m68k/m68k.c (standard_68881_constant_p): Likewise.
      	(floating_exact_log2): Likewise.
      	* config/sh/sh.c (fp_zero_operand, fp_one_operand): Likewise.
      	* config/vax/vax.c (vax_float_literal): Likewise.
      	* config/xtensa/predicates.md (const_float_1_operand): Likewise.
      	* cprop.c (implicit_set_cond_p): Likewise.
      	* expmed.c (expand_mult): Likewise.
      	* fold-const.c (const_binop): Likewise.
      	* simplify-rtx.c (simplify_binary_operation_1): Likewise.
      	(simplify_const_binary_operation): Likewise.
      	(simplify_const_relational_operation): Likewise.
      	* tree-call-cdce.c (check_pow): Likewise.
      	(gen_conditions_for_pow_cst_base): Likewise.
      	* tree-inline.c (estimate_num_insns): Likewise.
      	* tree-ssa-dom.c (record_equality): Likewise.
      	* tree-ssa-math-opts.c (representable_as_half_series_p): Likewise.
      	(gimple_expand_builtin_pow): Likewise.
      	(pass_optimize_widening_mul::execute): Likewise.
      	* tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise.
      	* tree-vect-patterns.c (vect_recog_pow_pattern): Likewise.
      	* tree.c (real_zerop, real_onep, real_minus_onep): Likewise.
      ---
       gcc/builtins.c                  | 14 +++++++-------
       gcc/c-family/c-lex.c            |  6 +++---
       gcc/c/c-typeck.c                |  2 +-
       gcc/config/aarch64/aarch64.c    |  2 +-
       gcc/config/arm/arm.c            |  6 +++---
       gcc/config/fr30/fr30.c          |  2 +-
       gcc/config/m68k/m68k.c          |  6 +++---
       gcc/config/sh/sh.c              |  4 ++--
       gcc/config/vax/vax.c            |  4 ++--
       gcc/config/xtensa/predicates.md |  2 +-
       gcc/cp/tree.c                   |  2 +-
       gcc/cprop.c                     |  2 +-
       gcc/doc/tm.texi                 |  7 -------
       gcc/doc/tm.texi.in              |  7 -------
       gcc/expmed.c                    |  2 +-
       gcc/fold-const.c                |  2 +-
       gcc/real.c                      | 10 +++++++++-
       gcc/real.h                      |  4 ++--
       gcc/simplify-rtx.c              | 16 ++++++++--------
       gcc/tree-call-cdce.c            |  4 ++--
       gcc/tree-inline.c               |  5 +++--
       gcc/tree-ssa-dom.c              |  2 +-
       gcc/tree-ssa-math-opts.c        | 16 ++++++++--------
       gcc/tree-ssa-uncprop.c          |  2 +-
       gcc/tree-vect-patterns.c        |  4 ++--
       gcc/tree.c                      |  6 +++---
       26 files changed, 67 insertions(+), 72 deletions(-)
      
      From-SVN: r228473
      Richard Sandiford committed
    • re PR ipa/67783 (quadratic time consumption in IPA inlining with -O1 and higher) · 7d475a54
      2015-10-05  Richard Biener  <rguenther@suse.de>
      
      	PR ipa/67783
      	* ipa-inline-analysis.c (estimate_function_body_sizes): Only
      	consider loop header PHI defs as IVs.
      
      From-SVN: r228472
      Richard Biener committed
    • tree-ssa-pre.c (create_component_ref_by_pieces_1): Move call handling ... · 9c709f64
      2015-10-05  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Move
      	call handling ...
      	(create_expression_by_pieces): ... here and build GIMPLE
      	calls directly.  Use gimple_build API and avoid force_gimple_operand.
      	(insert_into_preds_of_block): Simplify.
      	(do_regular_insertion): Add comment.
      
      From-SVN: r228471
      Richard Biener committed
    • [Patch ARM/ AArch64] Fix typo in vcvt_f16.c testcase . · 562eadf8
      
      This test worked by accident. While looking at why this was failing randomly in my builds, I discovered a bug in the way in which the testcases were written up in this case.
      
      
      
      2015-10-05  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	* gcc.target/aarch64/advsimd-intrinsics/vcvt_f16.c (TEST_MSG): Fix typo.
      	(exec_vcvt): Add comments.
      
      From-SVN: r228470
      Ramana Radhakrishnan committed
    • re PR c++/67844 (Cannot make tuple of class with template constructor) · 057ce497
      2015-10-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
      
      	PR 67844.
      	* include/std/tuple (_TC::_NonNestedTuple): Eagerly reject
      	conversions from tuple types same as the target tuple.
      	* testsuite/20_util/tuple/67844.cc: New.
      	* testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Add
      	a missing copyright header.
      
      From-SVN: r228468
      Ville Voutilainen committed
    • Daily bump. · aa385812
      From-SVN: r228465
      GCC Administrator committed
  2. 04 Oct, 2015 8 commits
    • Implement N4514, C++ Extensions for Transactional Memory. · b8fd7909
      gcc/
      	* builtins.def (BUILT_IN_ABORT): Add transaction_pure attribute.
      gcc/c-family/
      	* c-common.c (c_common_reswords): Add C++ TM TS keywords.
      	(c_common_attribute_table): Add transaction_safe_dynamic.
      	transaction_safe now affects type identity.
      	(handle_tm_attribute): Handle transaction_safe_dynamic.
      	* c-common.h (enum rid): Add RID_ATOMIC_NOEXCEPT,
      	RID_ATOMIC_CANCEL, RID_SYNCHRONIZED.
      	(OBJC_IS_CXX_KEYWORD): Add RID_SYNCHRONIZED.
      	(D_TRANSMEM): New.
      	* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_transactional_memory.
      	* c-pretty-print.c (pp_c_attributes_display): Don't print
      	transaction_safe in C++.
      gcc/c/
      	* c-parser.c (c_lex_one_token): Handle @synchronized.
      	* c-decl.c (match_builtin_function_types): A declaration of a built-in
      	can change whether the function is transaction_safe.
      gcc/cp/
      	* cp-tree.h (struct cp_declarator): Add tx_qualifier field.
      	(BCS_NORMAL, BCS_TRANSACTION): New enumerators.
      	* lex.c (init_reswords): Limit TM kewords to -fgnu-tm.
      	* parser.c (cp_lexer_get_preprocessor_token): Fix @synchronized.
      	(make_call_declarator): Take tx_qualifier.
      	(cp_parser_tx_qualifier_opt): New.
      	(cp_parser_lambda_declarator_opt): Use it.
      	(cp_parser_direct_declarator): Likewise.
      	(cp_parser_statement): Handle atomic_noexcept, atomic_cancel.
      	(cp_parser_compound_statement): Change in_try parameter to bcs_flags.
      	(cp_parser_std_attribute): Map optimize_for_synchronized to
      	transaction_callable.
      	(cp_parser_transaction): Take the token.  Handle atomic_noexcept.
      	* lambda.c (maybe_add_lambda_conv_op): Handle transaction-safety.
      	* call.c (enum conversion_kind): Add ck_tsafe.
      	(standard_conversion): Handle transaction-safety conversion.
      	(convert_like_real, resolve_address_of_overloaded_function): Likewise.
      	(check_methods): Diagnose transaction_safe_dynamic on non-virtual
      	function.
      	(look_for_tm_attr_overrides): Don't inherit transaction_safe_dynamic.
      	* cvt.c (tx_safe_fn_type_p, tx_unsafe_fn_variant)
      	(can_convert_tx_safety): New.
      	* typeck.c (composite_pointer_type): Handle transaction-safety.
      	* name-lookup.h (enum scope_kind): Add sk_transaction.
      	* name-lookup.c (begin_scope): Handle it.
      	* semantics.c (begin_compound_stmt): Pass it.
      	* decl.c (check_previous_goto_1): Check it.
      	(struct named_label_entry): Add in_transaction_scope.
      	(poplevel_named_label_1): Set it.
      	(check_goto): Check it.
      	(duplicate_decls): A specialization can be transaction_safe
      	independently of its template.
      	(grokdeclarator): Handle tx-qualifier.
      	* rtti.c (ptr_initializer): Handle transaction-safe.
      	* search.c (check_final_overrider): Check transaction_safe_dynamic.
      	Don't check transaction_safe.
      	* mangle.c (write_function_type): Mangle transaction_safe here.
      	(write_CV_qualifiers_for_type): Not here.
      	(write_type): Preserve transaction_safe when stripping attributes.
      	* error.c (dump_type_suffix): Print transaction_safe.
      libiberty/
      	* cp-demangle.c (d_cv_qualifiers): Dx means transaction_safe.
      	(cplus_demangle_type): Let d_cv_qualifiers handle it.
      	(d_dump, d_make_comp, has_return_type, d_encoding)
      	(d_count_templates_scopes, d_print_comp_inner)
      	(d_print_mod_list, d_print_mod, d_print_function_type)
      	(is_ctor_or_dtor): Handle DEMANGLE_COMPONENT_TRANSACTION_SAFE.
      
      From-SVN: r228462
      Jason Merrill committed
    • re PR rtl-optimization/67447 (ICE in extract_constrain_insn… · bd841941
      re PR rtl-optimization/67447 (ICE in extract_constrain_insn (reload_cse_simplify_operands): insn does not satisfy its constraints)
      
      	PR rtl-optimization/67447
      	* gcc.target/i386/pr67447.c: New test.
      
      From-SVN: r228461
      Uros Bizjak committed
    • i386.c (ix86_nsaved_regs): Use GENERAL_REGNO_P to check for general register. · beabed99
      	* config/i386/i386.c (ix86_nsaved_regs): Use GENERAL_REGNO_P to
      	check for general register.
      	(ix86_emit_save_regs): Ditto.
      	(ix86_emit_save_regs_using_mov): Ditto.
      	(ix86_emit_restore_regs_using_pop): Ditto.
      	(ix86_emit_restore_regs_using_mov): Ditto.
      
      From-SVN: r228460
      Uros Bizjak committed
    • vect-pack-trunc-1.c: Require avx512bw effective target. · 51daf358
      	* gcc.target/i386/vect-pack-trunc-1.c: Require avx512bw
      	effective target.
      	* gcc.target/i386/vect-pack-trunc-2.c: Ditto.
      	* gcc.target/i386/vect-perm-even-1.c: Ditto.
      	* gcc.target/i386/vect-perm-odd-1.c: Ditto.
      	* gcc.target/i386/vect-unpack-1.c: Ditto.
      	* gcc.target/i386/vect-unpack-2.c: Ditto.
      
      From-SVN: r228459
      Uros Bizjak committed
    • Remove dead code · 2018f53e
      gcc/fortran/
      	* match.c (gfc_match_common): Remove dead variable old_blank_common.
      
      From-SVN: r228458
      Mikael Morin committed
    • Fix fortran common-related error recovery ICE. · 2b3f52a2
      Upon reverting a symbol in a common block (after throwing an error),
      the compiler was ICEing because the symbol's common_block field was set,
      but the symbol was not in the common block's list of symbols.
      
      Fixed by both adding the symbol to the common block list and setting
      the symbol's common_block field at the same time.
      Furthermore, the gfc_add_in_common call is delayed and its result is
      ignored, so that its error messages are ignored and the compiler has
      the opportunity to give a better error message.
      Another gfc_add_in_common call is added later during resolution
      to emit again the missing errors.
      
      	PR fortran/67758
      gcc/fortran/
      	* match.c (gfc_match_common): Delay the common_block pointer
      	assignment after error checking.
      	Delay the call to gfc_add_in_common attribute after the handling
      	of array specs.
      	* resolve.c (resolve_common_vars): Call gfc_add_in_common again.
      gcc/testsuite/
      	* gfortran.dg/common_24.f: New.
      
      From-SVN: r228457
      Mikael Morin committed
    • Factor access to the common block head symbol · 6dcab507
      	* resolve.c (resolve_common_vars): Move access to the common
      	block's head symbol inside the function.
      	(resolve_common_blocks, resolve_types): Update callers.
      
      From-SVN: r228456
      Mikael Morin committed
    • Daily bump. · 18696c74
      From-SVN: r228454
      GCC Administrator committed
  3. 03 Oct, 2015 7 commits
  4. 02 Oct, 2015 15 commits
    • Fix testsuite failures with --disable-wchar_t · 1ca9de51
      	* testsuite/21_strings/basic_string/literals/types.cc: Guard use of
      	wchar_t with _GLIBCXX_USE_WCHAR_T.
      	* testsuite/21_strings/basic_string/literals/values.cc: Likewise.
      	* testsuite/21_strings/basic_string/requirements/citerators.cc:
      	Likewise.
      	* testsuite/22_locale/messages/13631.cc: Likewise.
      	* testsuite/experimental/string_view/literals/types.cc: Likewise.
      	* testsuite/experimental/string_view/literals/values.cc: Likewise.
      
      From-SVN: r228439
      Jonathan Wakely committed
    • Enable dual ABI for Filesystem library · 8b756210
      	* src/filesystem/Makefile.am: Add cxx11_abi_sources.
      	* src/filesystem/Makefile.in: Regenerate.
      	* src/filesystem/cow-dir.cc: New.
      	* src/filesystem/cow-ops.cc: New.
      	* src/filesystem/cow-path.cc: New.
      	* src/filesystem/dir.cc: Define macro for new ABI.
      	* src/filesystem/ops.cc: Likewise.
      	* src/filesystem/path.cc: Likewise.
      
      From-SVN: r228437
      Jonathan Wakely committed
    • minimal.cc: Minor tweaks to match narrow char version. · ee216d80
      	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
      	Minor tweaks to match narrow char version.
      
      From-SVN: r228436
      Jonathan Wakely committed
    • Fix tests that fail with old std::string · c980d0b4
      	* testsuite/21_strings/basic_string/allocator/char/minimal.cc: Guard
      	explicit instantiation with check for new ABI.
      	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
      	Likewise. Use wchar_t as char_type.
      
      From-SVN: r228435
      Jonathan Wakely committed
    • Use noexcept instead of _GLIBCXX_NOEXCEPT · 783aa06e
      	* include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
      	(basic_string::front() const, basic_string::back() const): Use
      	noexcept instead of _GLIBCXX_NOEXCEPT macro.
      	(__versa_string::front, __versa_string::back): Likewise.
      
      From-SVN: r228434
      Jonathan Wakely committed
    • * acinclude.m4 (GLIBCXX_ENABLE_DEBUG_FLAGS): Fix comment. · 38cccb0b
      From-SVN: r228433
      Jonathan Wakely committed
    • Help the offload gcc driver find the right assembler · 89f54035
      	gcc/
      	* gcc.c (process_command): Use spec_machine rather than
      	spec_host_machine to build tooldir_prefix2.
      
      From-SVN: r228429
      Bernd Schmidt committed
    • nvptx offloading linking · 113020dc
      	gcc/
      	* config/nvptx/mkoffload.c (Kind, Vis): Remove enums.
      	(Token, Stmt): Remove structs.
      	(decls, vars, fns): Remove variables.
      	(alloc_comment, append_stmt, is_keyword): Remove macros.
      	(tokenize, write_token, write_tokens, alloc_stmt, rev_stmts)
      	(write_stmt, write_stmts, parse_insn, parse_list_nosemi)
      	(parse_init, parse_file): Remove functions.
      	(read_file): Accept a pointer to a length and store into it.
      	(process): Don't try to parse the input file, just write it out as
      	a string, but looking for maps.  Also write out the length.
      	(main): Don't use "-S" to compile PTX code.
      
      	libgomp/
      	* oacc-ptx.h: Remove file, moving its content into...
      	* config/nvptx/fortran.c: ... here...
      	* config/nvptx/oacc-init.c: ..., here...
      	* config/nvptx/oacc-parallel.c: ..., and here.
      	* config/nvptx/openacc.f90: New file.
      	* plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
      	(link_ptx): Don't link in predefined bits of PTX code.
      
      Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>
      
      From-SVN: r228418
      Thomas Schwinge committed
    • Allow Filesystem TS to compile without wchar_t · 7fcdbdd2
      	* include/bits/locale_conv.h [!_GLIBCXX_USE_WCHAR_T]
      	(__do_str_codecvt, __str_codecvt_in, __str_codecvt_out): Enable.
      	* include/experimental/fs_path.h [!_GLIBCXX_USE_WCHAR_T]
      	(path::wstring, path::generic_wstring): Disable.
      	* src/filesystem/path.cc (path::_S_convert_loc)
      	[!_GLIBCXX_USE_WCHAR_T]: Skip conversion.
      	* testsuite/experimental/filesystem/path/assign/assign.cc: Check for
      	wchar_t support.
      	* testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
      	* testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
      
      From-SVN: r228417
      Jonathan Wakely committed
    • testsuite_fs.h (nonexistent_path): Use less generic name for paths. · 43222a5e
      	* testsuite/util/testsuite_fs.h (nonexistent_path): Use less generic
      	name for paths. Prefer snprintf to sprintf.
      
      From-SVN: r228416
      Jonathan Wakely committed
    • Re: [PATCH] Improve DOM's optimization of control statements · 2671ee45
      	* tree-ssa-dom.c (optimize_stmt): Note when loop structures need
      	fixups.
      
      From-SVN: r228415
      Jeff Law committed
    • [PR target/67822] OpenMP offloading to nvptx fails · d4852cd4
      	gcc/
      	PR target/67822
      	* config/nvptx/mkoffload.c (main): Scan the argument vector for
      	-fopenmp, and skip generating an offloading image if specified.
      
      From-SVN: r228414
      Thomas Schwinge committed
    • system.h (ROUND_UP): New macro definition. · 54070b51
      	* system.h (ROUND_UP): New macro definition.
      	(ROUND_DOWN): Ditto.
      	* ggc-page.c (ROUND_UP): Remove local macro definition.
      	(PAGE_ALIGN): Implement using ROUND_UP macro.
      
      	* config/i386/i386.h (PUSH_ROUNDING): Implement using ROUND_UP macro.
      	* config/i386/i386.c (function_arg_advance_64): Use ROUND_UP macro
      	to align values.
      	(ix86_compute_frame_layout): Ditto.
      	(ix86_expand_prologue): Ditto.
      	(ix86_adjust_stack_and_probe): Use ROUND_DOWN macro
      	to round down values.
      	(expand_set_or_movmem_via_rep): Ditto.
      
      From-SVN: r228410
      Uros Bizjak committed
    • re PR c/67730 (No warning when returning NULL in void function) · 1c7485af
      	PR c/67730
      	* c-typeck.c (convert_for_assignment): Use the expansion point
      	location throughout.
      
      	* gcc.dg/pr67730-1.c: New test.
      	* gcc.dg/pr67730-2.c: New test.
      	* gcc.dg/pr67730.h: New test.
      
      From-SVN: r228408
      Marek Polacek committed
    • re PR c/67819 (-Wduplicated-cond should take macros into account) · 12651878
      	* genemit.c (gen_exp): Remove -Wduplicated-cond hack.
      
      	* c.opt (Wduplicated-cond): Don't enable by -Wall anymore.
      
      	* c-c++-common/Wduplicated-cond-2.c: Skip until PR67819 is resolved.
      
      From-SVN: r228405
      Marek Polacek committed