1. 03 Apr, 2018 2 commits
  2. 02 Apr, 2018 8 commits
  3. 01 Apr, 2018 6 commits
    • [NDS32] Add relax optimization as new pass. · c4d8d050
      gcc/
      	* config.gcc (nds32): Add nds32-relax-opt.o into extra_objs.
      	* config/nds32/constants.md (unspec_volatile_element): Add
      	UNSPEC_VOLATILE_RELAX_GROUP.
      	* config/nds32/nds32-relax-opt.c: New file.
      	* config/nds32/nds32-predicates.c
      	(nds32_symbol_load_store_p): New function.
      	* config/nds32/nds32-protos.h
      	(nds32_symbol_load_store_p): Declare function.
      	(make_pass_nds32_relax_opt): Declare new rtl pass function.
      	* config/nds32/nds32.c
      	(nds32_register_pass): New function to register pass.
      	(nds32_register_passes): New function to register passes.
      	* config/nds32/nds32.md (relax_group): New pattern.
      	* config/nds32/nds32.opt (mrelax-hint): New option.
      	* config/nds32/t-nds32 (nds32-relax-opt.o): New dependency.
      
      Co-Authored-By: Kito Cheng <kito.cheng@gmail.com>
      Co-Authored-By: Kuan-Lin Chen <kuanlinchentw@gmail.com>
      
      From-SVN: r258998
      Chung-Ju Wu committed
    • [NDS32] Correct the dependency in t-nds32. · af08e51d
      gcc/
      	* config/nds32/t-nds32: Modify files dependency.
      
      From-SVN: r258997
      Kito Cheng committed
    • [NDS32] Implement PROFILE_HOOK. · 9e362bd0
      gcc/
      	* config/nds32/nds32.h (FUNCTION_PROFILER): Output newline character.
      	(PROFILE_HOOK): Define its implementation.
      
      From-SVN: r258996
      Chung-Ju Wu committed
    • [NDS32] Change wchar type to unsinged int. · 7f983342
      gcc/
      	* config/nds32/nds32.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Use unsigned int
      	type and 32-bit size.
      
      From-SVN: r258995
      Chung-Ju Wu committed
    • re PR middle-end/85090 (wrong code with -O2 -fno-tree-dominator-opts -mavx512f… · 7be6ee78
      re PR middle-end/85090 (wrong code with -O2 -fno-tree-dominator-opts -mavx512f -fira-algorithm=priority)
      
      	PR middle-end/85090
      	* config/i386/sse.md (V): Add V64QI and V32HI for TARGET_AVX512F.
      	(V_128_256): New mode iterator.
      	(*avx512dq_vextract<shuffletype>64x2_1 splitter): New define_split.
      	(*avx512f_vextract<shuffletype>32x4_1 splitter): Likewise.
      	(xop_pcmov_<mode><avxsizesuffix>): Use V_128_256 mode iterator instead
      	of V.
      	* config/i386/i386.c (ix86_expand_vector_set): Improve V32HImode and
      	V64QImode expansion for !TARGET_AVX512BW && TARGET_AVX512F.
      
      	* gcc.target/i386/avx512f-pr85090-1.c: New test.
      	* gcc.target/i386/avx512f-pr85090-2.c: New test.
      	* gcc.target/i386/avx512f-pr85090-3.c: New test.
      	* gcc.target/i386/avx512bw-pr85090-2.c: New test.
      	* gcc.target/i386/avx512bw-pr85090-3.c: New test.
      
      From-SVN: r258994
      Jakub Jelinek committed
    • Daily bump. · 0a4800de
      From-SVN: r258993
      GCC Administrator committed
  4. 31 Mar, 2018 4 commits
  5. 30 Mar, 2018 11 commits
  6. 29 Mar, 2018 9 commits
    • * gcc.pot: Regenerate. · 26b455d9
      From-SVN: r258967
      Joseph Myers committed
    • More #include suggestions (PR c++/84269) · 62e98ef1
      PR c++/84269 reports a number of names in the C and C++ standard
      libraries for which we don't yet offer #include fix-it hints.
      
      This patch adds them (up to comment #9).
      
      gcc/c-family/ChangeLog:
      	PR c++/84269
      	* known-headers.cc (get_stdlib_header_for_name): Add various names
      	from <assert.h>, <string.h>, and <memory.h>; add more names from
      	<stdio.h>.
      
      gcc/cp/ChangeLog:
      	PR c++/84269
      	* name-lookup.c (get_std_name_hint): Add names from <memory>,
      	<tuple>, and <utility>.
      
      gcc/testsuite/ChangeLog:
      	PR c++/84269
      	* g++.dg/lookup/missing-std-include-6.C: New test.
      	* g++.dg/lookup/missing-std-include.C: Add std::pair and
      	std::tuple tests.
      	* g++.dg/spellcheck-reswords.C: Expect a hint about <cstring>.
      	* g++.dg/spellcheck-stdlib.C: Add tests for names in <cstdio>,
      	<cstring>, <cassert>, and <cstdlib>.
      
      From-SVN: r258966
      David Malcolm committed
    • PR c++/85093 - too many template args with pack expansion. · 1e2b90c4
      	* pt.c (coerce_template_parms): Keep pack expansion args that will
      	need to be empty.
      
      From-SVN: r258964
      Jason Merrill committed
    • * pt.c (build_non_dependent_expr): Propagate expr location. · 8de4a674
      From-SVN: r258963
      Jason Merrill committed
    • PR c++/85060 - wrong-code with call to base member in template. · e597f682
      	* search.c (any_dependent_bases_p): Check uses_template_parms
      	rather than processing_template_decl.
      
      From-SVN: r258962
      Jason Merrill committed
    • re PR inline-asm/84985 (ICE in match_reload, at lra-constraints.c:1068) · 28ed1460
      2018-03-29  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR inline-asm/84985
      	* lra-constraints.c (process_alt_operands): Move setting
      	this_alternative_matches below.
      
      2018-03-29  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR inline-asm/84985
      	* gcc.target/i386/pr84985.c: New.
      
      From-SVN: r258961
      Vladimir Makarov committed
    • More underlining of bad arguments (PR c++/85110) · 9fa1b661
      As of r256448, the C++ frontend underlines many bad arguments in its
      diagnostics; those where perform_overload_resolution returns a
      non-NULL candidate, but there's a failure in convert_like_real.
      
      However, for the case where perform_overload_resolution fails, but
      there's a single non-viable candidate, the error is diagnosed by
      cp_build_function_call_vec, and that currently doesn't underline
      the bad argument:
      
      $ cat test.cc
      void callee (int one, const char **two, int three);
      
      void
      caller (const char *fmt)
      {
        callee (1, fmt, 3);
      }
      
      We emit:
      
      $ g++ test.cc
      test.cc: In function 'void caller(const char*)':
      test.cc:6:20: error: cannot convert 'const char*' to 'const char**' for argument '2' to 'void callee(int, const char**, int)'
         callee (1, fmt, 3);
                          ^
      
      It's going through convert_for_assignment, and
      implicitly using input_location.
      
      This patch updates convert_for_assignment for this case, using
      an EXPR_LOCATION if there is one, or falling back to input_location
      otherwise, underlining the argument in question:
      
      test.cc: In function 'void caller(const char*)':
      test.cc:6:14: error: cannot convert 'const char*' to 'const char**' for argument '2' to 'void callee(int, const char**, int)'
         callee (1, fmt, 3);
                    ^~~
      
      gcc/cp/ChangeLog:
      	PR c++/85110
      	* typeck.c (convert_for_assignment): When complaining due to
      	conversions for an argument, attempt to use the location of the
      	argument.
      
      gcc/testsuite/ChangeLog:
      	PR c++/85110
      	* g++.dg/diagnostic/param-type-mismatch-2.C: New test.
      
      From-SVN: r258957
      David Malcolm committed
    • i386: Enable AVX/AVX512 features only if supported by OSXSAVE · 059cc8ac
      Enable AVX and AVX512 features only if their states are supported by
      OSXSAVE.
      
      	PR target/85100
      	* config/i386/cpuinfo.c (XCR_XFEATURE_ENABLED_MASK): New.
      	(XSTATE_FP): Likewise.
      	(XSTATE_SSE): Likewise.
      	(XSTATE_YMM): Likewise.
      	(XSTATE_OPMASK): Likewise.
      	(XSTATE_ZMM): Likewise.
      	(XSTATE_HI_ZMM): Likewise.
      	(XCR_AVX_ENABLED_MASK): Likewise.
      	(XCR_AVX512F_ENABLED_MASK): Likewise.
      	(get_available_features): Enable AVX and AVX512 features only
      	if their states are supported by OSXSAVE.
      
      From-SVN: r258954
      H.J. Lu committed
    • Documentation tweaks. · c7cb6c17
      2018-03-29  Martin Liska  <mliska@suse.cz>
      
              PR lto/84995.
              * doc/invoke.texi: Document how LTO works with debug info.
              Describe auto-load support of binutils.  Mention 'x86-64'
              as valid option value of -march option.
      
      From-SVN: r258953
      Martin Liska committed