1. 23 Dec, 2018 9 commits
    • Fix Ada bootstrap for Darwin9 and earlier. · 3f5c0b6b
      2018-12-23  Iain Sandoe  <iain@sandoe.co.uk>
      
      gcc/ada/
      
      	* adaint.c [__APPLE__] (__gnat_lwp_self): Ensure that the system
      	interface used is available on the target.
      
      From-SVN: r267374
      Iain Sandoe committed
    • LTO-wrapper, don't pre-link early debug objects. · b5327e50
      Pass them to the final link, the pre-link wasn't effective.
      Make the temp filenames easier to follow.
      Also save them in the CWD when save-temps is given.
      
      2018-12-23  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* lto-wrapper.c (tool_cleanup): Don’t report ficticious temp files.
      	(debug_objcopy): Improve temp filenames.  Append the early
      	debug objects to the outfiles.  Remove the phase prelinking the
      	early debug. Emit the early debug filenames for ld.
      
      From-SVN: r267373
      Iain Sandoe committed
    • Fix ident tests by Enabling ident output for X86 Darwin. · d590d99a
      The c-c++-common tests fail (or XPASS depending on which) on Darwin
      because it doesn't currently emit .ident marker.  For X86 Darwin, this
      is a trivial oversight; the assembler supports the directive.  We can
      therefore use the default target hook there.
      
      2018-12-23  Iain Sandoe  <iain@sandoe.co.uk>
      
              * config/i386/darwin.h (TARGET_ASM_OUTPUT_IDENT): New.
      
      From-SVN: r267372
      Iain Sandoe committed
    • use simple-object instead of nm to determine if files contain LTO. · 4098a6d4
      This replaces the use of nm to search for the LTO common symbol marker
      and uses simple object to see if there's a section starting with
      ".gnu.lto_." or ".gnu.offload_lto_"
      
      2018-12-23  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* collect2.c (maybe_run_lto_and_relink): Don’t say we have a temp file
      	unless we actually did some LTO.
      	(has_lto_section, is_lto_object_file): New.
      	(maybe_lto_object_file): Remove.
      	(scan_prog_file): Use is_lto_object_file() instead of scanning the
      	output of nm.
      
      From-SVN: r267371
      Iain Sandoe committed
    • Handle -save-temps in collect2 · 513825f0
      Handle the option, make the saved filenames and paths easier to handle.
      Don't print '[Leaving...]' for files we never created and don't exist - or unless
      verbose is true.
      
      2018-12-23  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* collect2.c (main): Parse the output file early so we can make nicer
      	temp names.  Respond to “-save-temps” in the GCC OPTIONS.
      	(maybe_unlink): Don’t print “[Leaving…”] for files we never created
      	and don’t exist.
      
      From-SVN: r267370
      Iain Sandoe committed
    • Ensure collect2 responds to intended commmand line options. · f67eeb79
      To ensure compatibility with the flags consumed by ld, some of the flags
      needed by collect2 come from the command line and some are passed
      in the COLLECT_GCC_OPTIONS.
      
      Here we combine initial parses of both and then set the LTO mode accordingly.
      
      2018-12-23  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* collect2.c (main): Combine flags from both the command line and
      	COLLECT_GCC_OPTIONS to determine the set in force
      
      From-SVN: r267369
      Iain Sandoe committed
    • re PR fortran/88328 (ICE in resolve_tag_format, at fortran/io.c:1641) · 0652a151
      2018-12-22  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/88328
      	* io.c (resolve_tag_format): Add error for zero-sized array.
      	(gfc_resolve_dt): Manipulate gfc_current_locus to get sensible error
      	message locus.
      
      2018-12-22  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/88328
      	* gfortran.dg/pr88328.f90: New test.
      
      From-SVN: r267367
      Steven G. Kargl committed
    • Daily bump. · e2385f4e
      From-SVN: r267366
      GCC Administrator committed
    • Remove support for demangling GCC 2.x era mangling schemes. · 6c8120c5
      libiberty/
      	* cplus-dem.c: Remove cplus_mangle_opname, cplus_demangle_opname,
      	internal_cplus_demangle, and all subroutines.
      	(libiberty_demanglers): Remove entries for ancient GNU (pre-3.0),
      	Lucid, ARM, HP, and EDG demangling styles.
      	(cplus_demangle): Remove 'work' variable.  Don't call
      	internal_cplus_demangle.
      include/
      	* demangle.h: Remove support for ancient GNU (pre-3.0), Lucid,
      	ARM, HP, and EDG demangling styles.
      
      From-SVN: r267363
      Jason Merrill committed
  2. 22 Dec, 2018 8 commits
  3. 21 Dec, 2018 22 commits
    • re PR fortran/69121 (IEEE_SCALB is not generic) · 8ab8b08a
      2018-12-21  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/69121
      	* ieee/ieee_arithmetic.F90: Provide missing interfaces for IEEE_SCALB.
      
      2018-12-21  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/69121
      	* gfortran.dg/ieee/ieee_9.f90: New test.
      
      From-SVN: r267343
      Steven G. Kargl committed
    • re PR c++/86524 (std::less with pointer arguments not usable in static_assert in… · 4cd3e7df
      re PR c++/86524 (std::less with pointer arguments not usable in static_assert in constexpr function)
      
      	PR c++/86524
      	PR c++/88446
      	* cp-tree.h (cp_fold_maybe_rvalue, cp_fold_rvalue): Declare.
      	(fold_non_dependent_expr): Add manifestly_const_eval argument.
      	* constexpr.c (cxx_eval_builtin_function_call): Evaluate
      	__builtin_constant_p if ctx->manifestly_const_eval even in constexpr
      	functions.  Don't reuse dummy{1,2} vars between different arguments.
      	Use cp_fold_rvalue instead of cp_fully_fold.  Fix comment typo.
      	(fold_non_dependent_expr): Add manifestly_const_eval argument, pass
      	it through to cxx_eval_outermost_constant_expr and
      	maybe_constant_value.
      	* cp-gimplify.c (cp_fold_maybe_rvalue, cp_fold_rvalue): No longer
      	static.
      	* semantics.c (finish_static_assert): Call fold_non_dependent_expr
      	with true as manifestly_const_eval.
      
      	* g++.dg/cpp1y/constexpr-86524.C: New test.
      	* g++.dg/cpp2a/is-constant-evaluated4.C: New test.
      	* g++.dg/cpp2a/is-constant-evaluated5.C: New test.
      	* g++.dg/cpp2a/is-constant-evaluated6.C: New test.
      
      From-SVN: r267341
      Jakub Jelinek committed
    • correct double semi-colons · dca00617
      From-SVN: r267340
      Paul Thomas committed
    • re PR middle-end/85594 (ICE during expand when compiling with -fwrapv -fopenmp) · d1ffbd43
      	PR middle-end/85594
      	PR middle-end/88553
      	* omp-expand.c (extract_omp_for_update_vars): Regimplify the condition
      	if needed.
      	(expand_omp_for_generic): Don't clobber t temporary for ordered loops.
      
      	* gcc.dg/gomp/pr85594.c: New test.
      	* gcc.dg/gomp/pr88553.c: New test.
      
      From-SVN: r267339
      Jakub Jelinek committed
    • re PR ipa/88561 (PGO devirtualization miscompilation of firefox) · ffdcdc0b
      
      	PR ipa/88561
      	* ipa-polymorphic-call.c
      	(ipa_polymorphic_call_context::ipa_polymorphic_call_context): Handle
      	arguments of thunks correctly.
      	(ipa_polymorphic_call_context::get_dynamic_context): Be ready for
      	NULL instance pinter.
      	* lto-cgraph.c (lto_output_node): Always stream thunk info.
      
      From-SVN: r267338
      Jan Hubicka committed
    • re PR fortran/87881 (gfortran.dg/inquiry_type_ref_(1.f08|3.f90) fail on darwin) · 69597e2f
      2018-12-21  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/87881
      	* expr.c (find_inquiry_ref): Loop through the inquiry refs in
      	case there are two of them.
      	(simplify_ref_chain): Return true after a successful call to
      	find_inquiry_ref.
      
      2018-12-21  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/87881
      	* gfortran.dg/inquiry_part_ref_4.f90: New test.
      
      From-SVN: r267337
      Paul Thomas committed
    • S/390: Add support for double<->long vector converts · 2f8df14d
      gcc/ChangeLog:
      
      2018-12-21  Andreas Krebbel  <krebbel@linux.ibm.com>
      
      	* config/s390/vector.md ("floatv2div2df2", "floatunsv2div2df2")
      	("fix_truncv2dfv2di2", "fixuns_truncv2dfv2di2"): New pattern
      	definitions.
      
      gcc/testsuite/ChangeLog:
      
      2018-12-21  Andreas Krebbel  <krebbel@linux.ibm.com>
      
      	* gcc.target/s390/vector/fp-signedint-convert-1.c: New test.
      	* gcc.target/s390/vector/fp-unsignedint-convert-1.c: New test.
      
      From-SVN: r267336
      Andreas Krebbel committed
    • pr88418.c (dg-options): Add -mno-avx. · c3d62ffd
              * gcc.target/i386/pr88418.c (dg-options): Add -mno-avx.
      
      From-SVN: r267334
      Uros Bizjak committed
    • Update maintainer email address · 7c50cefc
      2018-12-21  Thomas Preud'homme  <thomas.preudhomme@linaro.org>
      
          * MAINTAINERS (Write After Approval): Update my maintainer address.
      
      From-SVN: r267330
      Thomas Preud'homme committed
    • * MAINTAINERS (Write After Approval): Add myself. · ea9a30d0
      From-SVN: r267329
      Gergö Barany committed
    • re PR rtl-optimization/87727 (gcc.target/sparc/overflow-2.c FAILs) · dd9bf787
      	PR rtl-optimization/87727
      	* combine.c (cant_combine_insn_p): On a LEAF_REGISTERS target, combine
      	again moves from leaf hard registers.
      
      	* final.c (final_scan_insn_1) <NOTE_INSN_INLINE_ENTRY>: Minor tweak.
      
      From-SVN: r267328
      Eric Botcazou committed
    • re PR target/88522 (Error: operand size mismatch for `vpgatherqq') · 4a77025b
      	PR target/88522
      	* config/i386/sse.md (*avx512pf_gatherpf<mode>sf_mask,
      	*avx512pf_gatherpf<mode>df_mask, *avx512pf_scatterpf<mode>sf_mask,
      	*avx512pf_scatterpf<mode>df_mask): Use %X5 instead of %5 for
      	-masm=intel.
      	(gatherq_mode): Remove mode iterator.
      	(*avx512f_gathersi<mode>, *avx512f_gathersi<mode>_2): Use X instead
      	of <xtg_mode>.
      	(*avx512f_gatherdi<mode>): Use X instead of <gatherq_mode>.
      	(*avx512f_gatherdi<mode>_2, *avx512f_scattersi<mode>,
      	*avx512f_scatterdi<mode>): Use %X5 for -masm=intel.
      
      From-SVN: r267327
      Jakub Jelinek committed
    • re PR rtl-optimization/88563 (wrong code with -O2 -fno-code-hoisting… · f9f248c8
      re PR rtl-optimization/88563 (wrong code with -O2 -fno-code-hoisting -fno-tree-ccp -fno-tree-dominator-opts -fno-tree-forwprop -fno-tree-fre -fno-tree-pre -fno-tree-vrp)
      
      	PR rtl-optimization/88563
      	* expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Swap innermode
      	and mode arguments to convert_modes.  Likewise swap mode and word_mode
      	arguments.  Handle both arguments with VOIDmode before convert_modes
      	of one of them.  Formatting fixes.
      
      	* gcc.dg/pr88563.c: New test.
      
      From-SVN: r267326
      Jakub Jelinek committed
    • re PR target/88556 (Inline built-in sinh, cosh, tanh for -ffast-math) · 247c45b2
      	PR target/88556
      	* internal-fn.def (COSH): New.
      	(SINH): Ditto.
      	(TANH): Ditto.
      	* optabs.def (cosh_optab): New.
      	(sinh_optab): Ditto.
      	(tanh_optab): Ditto.
      	* config/i386/i386-protos.h (ix86_emit_i387_sinh): New prototype.
      	(ix86_emit_i387_cosh): Ditto.
      	(ix86_emit_i387_tanh): Ditto.
      	* config/i386/i386.c (ix86_emit_i387_sinh): New function.
      	(ix86_emit_i387_cosh): Ditto.
      	(ix86_emit_i387_tanh): Ditto.
      	* config/i386/i386.md (sinhxf2): New expander.
      	(sinh<mode>2):	Ditto.
      	(coshxf2): Ditto.
      	(cosh<mode>2): Ditto.
      	(tanhxf2): Ditto.
      	(tanh<mode>2): Ditto.
      
      From-SVN: r267325
      Uros Bizjak committed
    • re PR c++/87125 (ICE in tsubst_copy starting with r261084) · 6aa698aa
      	PR c++/87125
      	* g++.dg/cpp0x/pr87125.C: New test.
      
      From-SVN: r267324
      Jakub Jelinek committed
    • [ARM] Fix size-optimization-ieee testcase failure · 7fa344c5
      On some version of dejagnu, options in RUNTESTFLAGS are appended to the
      command-line and thus any -mfloat-abi=softfp or -mfloat-abi=hard in
      there overwrite the -mfloat-abi=soft in the dg-options for
      size-optimization-ieee-* tests. Test is still run though because
      arm_soft_ok returns true if -mfloat-abi=soft is accepted, even if the
      file is not compiled for softfloat due to a later -mfloat-abi on the
      command line.
      
      This patch adds a dg-skip-if to those tests to ensure they are not run
      in softfp or hard mode.
      
      2018-12-21  Thomas Preud'homme  <thomas.preudhomme@linaro.org>
      
          gcc/testsuite/
          * gcc.target/arm/size-optimization-ieee-1.c: Skip if passing
          -mfloat-abi=softfp or -mfloat-abi=hard.
          * gcc.target/arm/size-optimization-ieee-2.c: Likewise.
          * gcc.target/arm/size-optimization-ieee-3.c: Likewise.
      
      From-SVN: r267323
      Thomas Preud'homme committed
    • re PR target/88547 (missed optimization for vector comparisons) · d6b612a7
      	PR target/88547
      	* config/i386/i386.c (ix86_expand_int_sse_cmp): Optimize
      	x > y ? 0 : -1 into min (x, y) == x ? -1 : 0.
      
      	* gcc.target/i386/pr88547-1.c: Expect only 2 knotb and 2 knotw
      	insns instead of 4, check for vpminud, vpminuq and no vpsubd or
      	vpsubq.
      	* gcc.target/i386/sse2-pr88547-1.c: New test.
      	* gcc.target/i386/sse2-pr88547-2.c: New test.
      	* gcc.target/i386/sse4_1-pr88547-1.c: New test.
      	* gcc.target/i386/sse4_1-pr88547-2.c: New test.
      	* gcc.target/i386/avx2-pr88547-1.c: New test.
      	* gcc.target/i386/avx2-pr88547-2.c: New test.
      	* gcc.target/i386/avx512f-pr88547-2.c: New test.
      	* gcc.target/i386/avx512vl-pr88547-1.c: New test.
      	* gcc.target/i386/avx512vl-pr88547-2.c: New test.
      	* gcc.target/i386/avx512vl-pr88547-3.c: New test.
      	* gcc.target/i386/avx512f_cond_move.c (y): Change from unsigned int
      	array to int array.
      
      From-SVN: r267322
      Jakub Jelinek committed
    • x86: VAESDEC{,LAST} allow memory inputs · 10d26d9d
      They are no different from their VAESENC{,LAST} counterparts in this
      regard.
      
      From-SVN: r267321
      Jan Beulich committed
    • support --with-multilib-list=@name for ARM · 5d6551f5
      Introduce @name as a means to specify alternate multilib profiles as
      arguments to --with-multilib-list.
      
      So far this is only implemented for ARM.
      
      
      for  gcc/ChangeLog
      
      	* config.gcc (tmake_file): Add name to tmake_file for
              each @name in --with-multilib-list on arm-*-* targets.
      	* doc/install.texi (with-multilib-list): Document it.
      
      From-SVN: r267320
      Alexandre Oliva committed
    • PR c++/88196 - ICE with class non-type template parameter. · 906a9283
      	* pt.c (convert_nontype_argument): If the expr is a PTRMEM_CST, also
      	check if the type we're converting it to is TYPE_PTRMEM_P.
      
      	* g++.dg/cpp0x/ptrmem-cst-arg1.C: Tweak dg-error.
      	* g++.dg/cpp2a/nontype-class10.C: New test.
      	* g++.dg/template/pr54858.C: Tweak dg-error.
      
      From-SVN: r267319
      Marek Polacek committed
    • tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Use… · 6647c1e8
      tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Use DR_TARGET_ALIGNMENT on dr_info rather than dr.
      
      	* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Use
      	DR_TARGET_ALIGNMENT on dr_info rather than dr.  Spelling fixes.
      
      From-SVN: r267318
      Jakub Jelinek committed
    • Daily bump. · adf778df
      From-SVN: r267317
      GCC Administrator committed
  4. 20 Dec, 2018 1 commit