Re: [PATCH] Use tail calls to memcpy/memset even for structure assignments (PR target/41455, PR target/82935)

2018-06-22 Thread Jeff Law
On 12/06/2017 02:04 PM, Jakub Jelinek wrote: > Hi! > > Aggregate assignments and clears aren't in GIMPLE represented as calls, > and while often they expand inline, sometimes we emit libcalls for them. > This patch allows us to tail call those libcalls if there is nothing > after them. The patch

Re: [PATCH] Remove stale doc notes about netbsd and openbsd

2018-06-22 Thread Jeff Law
On 06/22/2018 03:34 PM, Maya Rashish wrote: > That isn't a default any more because the default is 80486 with FPU. > > --- > gcc/doc/invoke.texi | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Thanks. Installed on the trunk. jeff

Re: [13/n] PR85694: Try to avoid vectorising casts of invariants

2018-06-22 Thread Jeff Law
On 06/20/2018 04:32 AM, Richard Sandiford wrote: > vect_recog_rotate_pattern had code to prevent operations > on invariants being vectorised unnecessarily: > > if (dt == vect_external_def > && TREE_CODE (oprnd1) == SSA_NAME > && is_a (vinfo)) > { > struct loop *loop =

Re: PING [PATCH] update Zero-length array documentation

2018-06-22 Thread Jeff Law
On 06/18/2018 05:00 PM, Martin Sebor wrote: > Attached is an updated patch with the additional text as > discussed below. OK with a ChangeLog entry. jeff

Re: [10/n] PR85694: Split out check for vectorizable associative reductions

2018-06-22 Thread Jeff Law
On 06/18/2018 09:07 AM, Richard Sandiford wrote: > This patch adds an overload of vect_reassociating_reduction_p > that checks for a vectorizable associative reduction, > since the check was duplicated in three functions. > > Tested on aarch64-linux-gnu and x86_64-linux-gnu. OK to install? > >

Re: [PATCH][Middle-end][version 3]2nd patch of PR78809 and PR83026

2018-06-22 Thread Jeff Law
On 05/29/2018 06:08 PM, Qing Zhao wrote: > Hi, Jeff, > > Thanks a lot for your review and comments. > > I have updated my patch based on your suggestion, and retested this whole > patch on both X86 and aarch64. > > please take a look at the patch again. > > thanks. > > Qing > >> On May 25,

Re: [PATCH] allow more strncat calls with -Wstringop-truncation (PR 85700)

2018-06-22 Thread Jeff Law
On 05/22/2018 07:40 PM, Martin Sebor wrote: > Here's another small refinement to -Wstringop-truncation to > avoid diagnosing more arguably "safe" cases of strncat() that > match the expected pattern of > >   strncat (d, s, sizeof d - strlen (d) - 1); > > such as > >   extern char a[4]; >   

libgo patch committed: Test USING_SPLIT_STACK using #ifdef, not #if

2018-06-22 Thread Ian Lance Taylor
This patch by Cherry Zhang fixes the libgo runtime code to consistently use #ifdef instead of #if for USING_SPLIT_STACK. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian Index: gcc/go/gofrontend/MERGE

Re: [PATCH, rs6000] Change word selector to prefered location for vec_insert builtin

2018-06-22 Thread Segher Boessenkool
Hi Carl, On Fri, Jun 22, 2018 at 07:32:47AM -0700, Carl Love wrote: > The following patch changes the word selected when extracting the word > from the second vector to insert into the first vector by the > vec_insert() builtin. > > Specifically, the test case > > vector float > fn2 (float a,

Re: [PATCH], PowerPC long double transition patches, v2, Patch #7 (fix IBM extended double tests to use __ibm128 as needed)

2018-06-22 Thread Segher Boessenkool
On Thu, Jun 21, 2018 at 07:11:37PM -0400, Michael Meissner wrote: > On Thu, Jun 21, 2018 at 06:07:36PM -0500, Segher Boessenkool wrote: > > On Wed, Jun 20, 2018 at 10:54:18AM -0400, Michael Meissner wrote: > > > This patch fixes the tests in the testsuite that implicitly were > > > expecting long

Re: [PATCH], PowerPC long double transition patches, v2, Patch #3 (use correct way to get the IEEE 128-bit complex type)

2018-06-22 Thread Segher Boessenkool
On Thu, Jun 21, 2018 at 10:43:16PM +, Joseph Myers wrote: > On Thu, 21 Jun 2018, Segher Boessenkool wrote: > > > The comment doesn't make much sense. If long double is IBM, the long > > double complex mode is ICmode, not KCmode. "To get the IEEE128 complex > > type", perhaps? And can't you

Re: [PRs fortran/82972, fortran/83088, fortran/85851] Fix ICE with -finit-derived when using iso_c_binding

2018-06-22 Thread Steve Kargl
On Fri, Jun 22, 2018 at 04:46:19PM -0400, Fritz Reese wrote: > > With the patch, the trunk compiler does not exhibit the bugs in the > mentioned PRs (82972, 83088, 85851). I did encounter some issues > building and regression testing the trunk compiler which I am certain > are unrelated. The

Re: [PATCH v2, rs6000] Backport Fix implementation of vec_pack (vector double, vector double) built-in function

2018-06-22 Thread Kelvin Nilsen
Hi Segher, After waiting a few days for this newly committed patch to settle, is it ok to backport to gcc 6, gcc 7, and gcc 8? Thanks. On 6/22/18 5:34 PM, Kelvin Nilsen wrote: > Thanks for feedback. It turns out that the vmrgew and vmrgow instructions > require power 8. > > After

Re: [PATCH v2, rs6000] Fix implementation of vec_pack (vector double, vector double) built-in function

2018-06-22 Thread Kelvin Nilsen
Thanks for feedback. It turns out that the vmrgew and vmrgow instructions require power 8. After coordinating with Segher on minor refinements to the test cases, I have committed the patch as quoted below to the trunk. On 6/19/18 5:37 PM, Segher Boessenkool wrote: > Hi! > > On Tue, Jun 19,

Re: [PATCH] avoid using strnlen result for late calls to strlen (PR 82604)

2018-06-22 Thread Jeff Law
On 06/18/2018 01:15 PM, Martin Sebor wrote: > While looking into opportunities to detect strnlen/strlen coding > mistakes (pr86199) I noticed a bug in the strnlen implementation > I committed earlier today that lets a strnlen() result be saved > and used in subsequent calls to strlen() with the 

C++ PATCHes for c++/86219, ICE with erroneous init in template

2018-06-22 Thread Jason Merrill
The problem in this testcase was that the initializer looked constant to is_nondependent_constant_expression, but instantiating it found the conversion error, but because fold_non_dependent_expr passed tf_none to the instantiation, we didn't give an error. store_init_value then happily stuck the

[PATCH, rs6000] Fix AIX test case failures

2018-06-22 Thread Carl Love
GCC Maintainers: The following patch addresses test failures on AIX. The patch has been tested on powerpc64le-unknown-linux-gnu (Power 8 LE)   powerpc64-unknown-linux-gnu (Power 8 BE) AIX 7200-00-01-1543 (Power 8 BE) With no regressions. Please let me know if the patch looks OK

[PATCH] Fix up AVX512F 128/256-bit shifts from using EVEX counts (PR target/84786)

2018-06-22 Thread Jakub Jelinek
Hi! The following testcase got fixed in 8/trunk with r253924 part of PR82370 enhancements, but that is not IMHO something we should backport. So instead the following patch adds something simpler, use Yv constraint for the DImode shift count in instructions that need AVX512VL when EVEX encoded if

Re: [PATCH] libiberty: fix memory usage explosion for invalid templates (PR demangler/84668)

2018-06-22 Thread Jeff Law
On 03/03/2018 05:48 AM, David Malcolm wrote: > PR demangler/84668 reports this failure of c++filt (found by fuzzing): > > $ c++filt '__H5z55_H5z555' > c++filt: out of memory allocating 18446744071696285694 bytes after a total of > 135168 bytes > >

Backports to 7.x branch

2018-06-22 Thread Jakub Jelinek
Hi! I've backported following 61 trunk commits to 7.x branch (2 patches contain more than one commit), bootstrapped/regtested them on x86_64-linux and i686-linux and committed to 7.x branch. Jakub 2018-06-22 Jakub Jelinek Backported from mainline 2018-03-02 Jakub

[PATCH] Remove stale doc notes about netbsd and openbsd

2018-06-22 Thread Maya Rashish
That isn't a default any more because the default is 80486 with FPU. --- gcc/doc/invoke.texi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 9bb1a4910b2..f231da3cde2 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi

Re: [PATCH], PowerPC long double transition patches, v2, Patch #1 (disable long double multilib)

2018-06-22 Thread Michael Meissner
On Thu, Jun 21, 2018 at 02:22:50PM -0500, Segher Boessenkool wrote: > On Thu, Jun 21, 2018 at 01:26:19PM -0400, Michael Meissner wrote: > > On Thu, Jun 21, 2018 at 12:09:12PM -0500, Segher Boessenkool wrote: > > > > * config.gcc (powerpc64le*): Remove multilib support for IEEE > > > > and

[PRs fortran/82972, fortran/83088, fortran/85851] Fix ICE with -finit-derived when using iso_c_binding

2018-06-22 Thread Fritz Reese
All, The attached patch generates special initializers for derived-type c_ptr and c_funptr symbols so they are handled correctly by the translation phase. Previously, an EXPR_STRUCTURE expression was generated for both types, as c_ptr and c_funptr are structure types with a c_address field. The

Re: [patch] add -nolibc option

2018-06-22 Thread Jeff Law
On 06/21/2018 11:06 AM, Olivier Hainque wrote: > Hello Joseph, > > Thanks for getting back to me on this! > >> On 19 Jun 2018, at 17:50, Joseph Myers wrote: >> >> On Thu, 7 Jun 2018, Olivier Hainque wrote: >> >>> An updated version of the patch is attached, accounting for >>> your two comments

Re: [x86] Do not omit the frame pointer at -O0

2018-06-22 Thread Jeff Law
On 06/20/2018 07:56 AM, Eric Botcazou wrote: > Hi, > > the fix for PR target/81736 unconditionally overrules > -fno-omit-frame-pointer, > including at -O0 where it is implicit. That seems brutal and unnecessary so > the attached patch reverts it at -O0 and thus fixes 135 failures in the GDB

Re: [PATCH] When using -fprofile-generate=/some/path mangle absolute path of file (PR lto/85759).

2018-06-22 Thread Jeff Law
On 05/16/2018 05:53 AM, Martin Liška wrote: > On 12/21/2017 10:13 AM, Martin Liška wrote: >> On 12/20/2017 06:45 PM, Jakub Jelinek wrote: >>> Another thing is that the "/" in there is wrong, so >>> const char dir_separator_str[] = { DIR_SEPARATOR, '\0' }; >>> char *b = concat

Re: [PATCH] [PR86064] split single cross-partition range with nonzero locviews

2018-06-22 Thread Jeff Law
On 06/12/2018 08:02 PM, Alexandre Oliva wrote: > > We didn't split cross-partition ranges in loclists to output a > whole-function location expression, but with nonzero locviews, we > force loclists, and then we have to split to avoid cross-partition > list entries. > > From: Alexandre Oliva >

Re: [PATCH] c/55976 -Werror=return-type should error on returning a value from a void function

2018-06-22 Thread Jeff Law
On 06/19/2018 09:13 AM, dave.pa...@oracle.com wrote: > This patch fixes spurious failure for C test added with original patch > for bug 55976. > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55976 > > Added dg-prune-output for extraneous message causing unexpected test > failure for test 

[PATCH] [RFC] Higher-level reporting of vectorization problems

2018-06-22 Thread David Malcolm
NightStrike and I were chatting on IRC last week about issues with trying to vectorize the following code: #include std::size_t f(std::vector> const & v) { std::size_t ret = 0; for (auto const & w: v) ret += w.size(); return ret; } icc could vectorize it,

Re: [PATCH] Let env var CLICOLOR_FORCE set -fdiagnostics-color=always.

2018-06-22 Thread Adam Borowski
On Fri, Jun 22, 2018 at 02:08:27PM -0600, Jeff Law wrote: > On 06/12/2018 04:46 PM, Adam Borowski wrote: > > Here's a patch for Bugzilla 80271, to add support for env CLICOLOR_FORCE. > > > > Automated build environments -- and even some which you run by hand -- > > redirect the output somewhere

Re: [PATCH] Let env var CLICOLOR_FORCE set -fdiagnostics-color=always.

2018-06-22 Thread Jeff Law
On 06/12/2018 04:46 PM, Adam Borowski wrote: > Hi! > Here's a patch for Bugzilla 80271, to add support for env CLICOLOR_FORCE. > > Automated build environments -- and even some which you run by hand -- > redirect the output somewhere to save a log, even if they tee it to the > terminal anyway.

Re: [PATCH 02/11] Initial TI PRU libgcc port

2018-06-22 Thread Dimitar Dimitrov
On петък, 22 юни 2018 г. 10:55:29 EEST Jeff Law wrote: > On 06/13/2018 12:57 PM, Dimitar Dimitrov wrote: > > The floating point support has been borrowed from C6X libgcc port > > to help with TI PRU toolchain ABI compatibility. > > > > libgcc/ChangeLog: > > > > 2018-06-13 Dimitar Dimitrov > >

Re: [PATCH], PowerPC long double transition patches, v2, Patch #6 (fix long double tests for -mno-float128)

2018-06-22 Thread Michael Meissner
On Thu, Jun 21, 2018 at 06:12:52PM -0500, Segher Boessenkool wrote: > On Wed, Jun 20, 2018 at 10:49:41AM -0400, Michael Meissner wrote: > > These patches fix the tests in the testsuite that check whether > > -mno-float128 > > works properly. In these cases, I explicitly run them with long double

Re: [C++ Patch] Use declspecs->locations more in grokdeclarator (and grokvardecl)

2018-06-22 Thread Jason Merrill
OK. On Fri, Jun 22, 2018 at 1:18 PM, Paolo Carlini wrote: > Hi, > > this rather straightforward patch simply uses available location information > - in the form of declspecs->locations - in diagnostic messages. In order to > do that, the information is also propagated to bad_specifiers and >

Re: [PATCH 01/11] Initial TI PRU GCC port

2018-06-22 Thread Jeff Law
On 06/13/2018 12:57 PM, Dimitar Dimitrov wrote: > ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * configure: Regenerate. > * configure.ac: Add PRU target. > > gcc/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * config/pru/pru-ldst-multiple.md: Generate using

Re: [PATCH 11/11] Increase MAX_MAX_OPERANDS limit

2018-06-22 Thread Jakub Jelinek
On Fri, Jun 22, 2018 at 11:33:06AM -0600, Jeff Law wrote: > On 06/13/2018 12:58 PM, Dimitar Dimitrov wrote: > > The PRU load/store instructions can access memory with byte > > granularity for all 30 of its 32-bit GP registers. Examples: > > > ># Load 17 bytes from address r0[0] into registers

Re: [PATCH, rs6000] Backport Fix implementation of vec_packsu (vector unsigned long long, vector unsigned long long) built-in function

2018-06-22 Thread Segher Boessenkool
On Fri, Jun 22, 2018 at 08:30:12AM -0500, Kelvin Nilsen wrote: > This has been committed to trunk. > > Is this ok to backport to gcc6, gcc7, and gcc8? Yes, but wait a few days please. Thanks! Segher

Re: [PATCH 11/11] Increase MAX_MAX_OPERANDS limit

2018-06-22 Thread Jeff Law
On 06/13/2018 12:58 PM, Dimitar Dimitrov wrote: > The PRU load/store instructions can access memory with byte > granularity for all 30 of its 32-bit GP registers. Examples: > ># Load 17 bytes from address r0[0] into registers r10.b1-r14.b2 >lbbo r10.b1, r0, 0, 17 > ># Load 100 bytes

[committed] Add another testcase for PR c++/85662

2018-06-22 Thread Jakub Jelinek
Hi! On the 7.x branch, without the fix offsetof2.C testcase passes at -O0, which is how it is compiled in the testsuite, and only fails at -O2. Thus, this patch adds a copy of that testcase to be compiled for -O2, so that it is tested too, and I'll backport then both the original fix and this

Re: [PATCH/RFC] enable -Wstrict-prototypes (PR 82922)

2018-06-22 Thread Joseph Myers
On Thu, 21 Jun 2018, Eric Gallager wrote: > On 6/21/18, Jeff Law wrote: > > On 06/12/2018 11:21 AM, Joseph Myers wrote: > >> On Tue, 12 Jun 2018, Martin Sebor wrote: > >> > >>> The proposal to enable -Wstrict-prototypes discussed below > >>> was considered too late for GCC 8. I'd like to revive

[C++ Patch] Use declspecs->locations more in grokdeclarator (and grokvardecl)

2018-06-22 Thread Paolo Carlini
Hi, this rather straightforward patch simply uses available location information - in the form of declspecs->locations - in diagnostic messages. In order to do that, the information is also propagated to bad_specifiers and mark_inline_variable. Tested x86_64-linux. Thanks, Paolo.

Re: [PATCH v3] Change default to -fno-math-errno

2018-06-22 Thread Joseph Myers
On Thu, 21 Jun 2018, Jeff Law wrote: > I think all this implies that the setting of -fno-math-errno by default > really depends on the math library in use since it's the library that > has to arrange for either errno to get set or for an exception to be raised. If the library does not set errno,

Re: [PATCH 02/11] Initial TI PRU libgcc port

2018-06-22 Thread Jeff Law
On 06/13/2018 12:57 PM, Dimitar Dimitrov wrote: > The floating point support has been borrowed from C6X libgcc port > to help with TI PRU toolchain ABI compatibility. > > libgcc/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * config.host: Add PRU target. > * config/pru/asri.c:

Re: [PATCH 09/11] testsuite: Mark that PRU uses all function pointer bits

2018-06-22 Thread Jeff Law
On 06/13/2018 12:58 PM, Dimitar Dimitrov wrote: > gcc/testsuite/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * g++.old-deja/g++.abi/ptrmem.C: Add PRU to list. OK once the rest of the kit is approved. jeff

Re: [PATCH 08/11] testsuite: Mark that PRU has one-cycle jumps

2018-06-22 Thread Jeff Law
On 06/13/2018 12:58 PM, Dimitar Dimitrov wrote: > gcc/testsuite/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * gcc.dg/tree-ssa/20040204-1.c: XFAIL on pru. > * gcc.dg/tree-ssa/reassoc-33.c: Ditto. > * gcc.dg/tree-ssa/reassoc-34.c: Ditto. > *

Re: [PATCH 06/11] testsuite: Remove PRU from test cases requiring hosted environment

2018-06-22 Thread Jeff Law
On 06/13/2018 12:58 PM, Dimitar Dimitrov wrote: > gcc/testsuite/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * gcc.c-torture/execute/20101011-1.c: Define DO_TEST to 0 for PRU. > * gcc.dg/20020312-2.c: No PIC register for PRU. This is OK once the rest of the kit is approved.

Re: [PATCH 07/11] testsuite: Define PRU stack usage

2018-06-22 Thread Jeff Law
On 06/13/2018 12:58 PM, Dimitar Dimitrov wrote: > gcc/testsuite/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * gcc.dg/stack-usage-1.c: Define PRU stack usage. This is OK once the rest of the kit is approved. Jeff

Re: [PATCH 05/11] testsuite: Add check for unsupported TI ABI PRU features to testsuite

2018-06-22 Thread Jeff Law
On 06/13/2018 12:57 PM, Dimitar Dimitrov wrote: > Not all C language features are supported when -mabi=ti option is > used for PRU target. > > gcc/testsuite/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * lib/gcc-dg.exp: Filter unsupported features in PRU's TI ABI mode. > *

Re: [PATCH 04/11] testsuite: Add check for overflowed IMEM region to testsuite

2018-06-22 Thread Jeff Law
On 06/13/2018 12:57 PM, Dimitar Dimitrov wrote: > PRU architecture supports maximum 256k program memory (IMEM). Some GCC > test cases manage to produce executables bigger than that. > > gcc/testsuite/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * lib/gcc-dg.exp: Bail on region

Re: [PATCH 03/11] testsuite: Add PRU tests

2018-06-22 Thread Jeff Law
On 06/13/2018 12:57 PM, Dimitar Dimitrov wrote: > gcc/testsuite/ChangeLog: > > 2018-06-13 Dimitar Dimitrov > > * gcc.target/pru/abi-arg-struct.c: New test. > * gcc.target/pru/ashiftrt.c: New test. > * gcc.target/pru/builtins-1.c: New test. > *

Re: [PATCH 10/11] Fix LRA to handle multi-word eliminable registers

2018-06-22 Thread Jeff Law
On 06/21/2018 10:01 PM, Dimitar Dimitrov wrote: > On четвъртък, 21 юни 2018 г. 17:03:55 EEST Jeff Law wrote: >> On 06/21/2018 11:44 AM, Vladimir Makarov wrote: >>> On 06/13/2018 02:58 PM, Dimitar Dimitrov wrote: From: Dimitar Dimitrov For some targets, Pmode != UNITS_PER_WORD. Take

Re: [patch] improve entry/exit instrumentation wrt trampolines

2018-06-22 Thread Olivier Hainque
Hi Jeff, > On 22 Jun 2018, at 18:13, Jeff Law wrote: > >>> * gimplify.c (gimplify_function_tree): Prevent creation >>> of a trampoline for the address of the current function >>> passed to entry/exit instrumentation hooks. > I was a little concerned about the TREE_NO_TRAMPOLINE

[patch] refine getenv_spec_function fallback value for undefined variable

2018-06-22 Thread Olivier Hainque
Hello, getenv_spec_function features code to return a fake value for an undefined variable when we know that we shouldn't complain about the variable being undefined and that the variable value doesn't matter. This code is there to prevent errors about undefined variables referenced in specs

Re: [PATCH] Fix clustering algorithm in switch expansion.

2018-06-22 Thread Jeff Law
On 06/22/2018 03:23 AM, Martin Liška wrote: > Hi. > > For correctness of clustering algorithm: > https://www.semanticscholar.org/paper/Short-Communication%3A-Correction-to-'Producing-Good-Kannan-Proebsting/311091fb9fb9d38f7b76e768a603c02acc799fe0 > > one needs to allow single case clusters as

Re: [PATCH 1/3] Introduce auto_string_vec class.

2018-06-22 Thread Jeff Law
On 06/22/2018 05:06 AM, Martin Liška wrote: > On 06/20/2018 04:41 PM, David Malcolm wrote: >> On Mon, 2018-05-14 at 14:50 +0200, Martin Liška wrote: >>> First part with introduction of auto_string_vec class. >>> >> FWIW, I'm fine with the changes to the jit subdir, but I don't think I >> have

Re: PATCH to fix ICE with -Wint-conversion (PR middle-end/86202)

2018-06-22 Thread Jeff Law
On 06/18/2018 02:34 PM, Marek Polacek wrote: > This patch improves the checks in size_must_be_zero_p so that we don't > call get_range_info with SIZE of a pointer type. > > Bootstrapped/regtested on x86_64-linux, ok for trunk and 8? > > 2018-06-18 Marek Polacek > > PR middle-end/86202

Re: [patch] improve entry/exit instrumentation wrt trampolines

2018-06-22 Thread Jeff Law
On 06/22/2018 09:47 AM, Olivier Hainque wrote: > > >> On 22 Jun 2018, at 17:44, Olivier Hainque wrote: > >> Receiving the actual function address would seem more >> useful for function-instrumentation purposes, and this >> patch adjusts the compiler to do that instead. >> >> 2018-06-22

Re: [PATCH 3/3] Come up with new --completion option.

2018-06-22 Thread Jeff Law
On 06/22/2018 05:25 AM, Martin Liška wrote: > On 06/20/2018 05:27 PM, David Malcolm wrote: >> On Mon, 2018-05-14 at 14:51 +0200, Martin Liška wrote: >>> Main part where I still need to write ChangeLog file and >>> gcc.sh needs to be moved to bash-completions project. >>> >>> Martin >> >> As

Re: [PATCH 2/3] Refactoring to opt-suggestions.[ch].

2018-06-22 Thread Jeff Law
On 06/22/2018 05:07 AM, Martin Liška wrote: > On 06/20/2018 04:57 PM, David Malcolm wrote: >> On Mon, 2018-05-14 at 14:51 +0200, Martin Liška wrote: >>> Second part refactors function from gcc.c into a new class >>> option_proposer. >>> >>> Martin >> >> [...snip...] >> >> diff --git

Re: [PATCH 2/4] Switch other switch expansion methods into classes.

2018-06-22 Thread Jeff Law
On 06/22/2018 04:32 AM, Martin Liška wrote: > On 06/20/2018 05:16 PM, Jeff Law wrote: >> On 06/20/2018 05:25 AM, Steven Bosscher wrote: >>> On Tue, Jun 12, 2018 at 10:44 PM, Jeff Law wrote: On 06/05/2018 01:15 AM, marxin wrote: > + The definition of "much bigger" depends on whether we

Re: [PATCH 0/3][POPCOUNT]

2018-06-22 Thread Jeff Law
On 06/22/2018 03:11 AM, Kugan Vivekanandarajah wrote: > When we set niter with maybe_zero, currently final_value_relacement > will not happen due to expression_expensive_p not handling. Patch 1 > adds this. > > With that we have the following optimized gimple. > >[local count: 118111601]: >

Re: [PATCH][testsuite/guality] Use buildarea gdb by default in combined build

2018-06-22 Thread Jeff Law
On 06/22/2018 05:38 AM, Tom de Vries wrote: > Hi, > > when doing a combined build of gcc and binutils-gdb repos, guality still > uses the gdb in PATH by default. > > This patch makes sure that quality uses the gdb from the combined build > instead. > > Tested on x86_64. > > OK for trunk? > >

Re: [PATCH][testsuite/guality] Be verbose about gdb version used

2018-06-22 Thread Jeff Law
On 06/22/2018 05:35 AM, Tom de Vries wrote: > Hi, > > by default, guality invokes gdb with --quiet to avoid being unnecessarily > verbose for each test. But as a consequence, we don't see which version of > gdb is used. > > This patch adds printing of the full path to the gdb used, as well as

Re: Do not emit unnecessary NOPs at -O0

2018-06-22 Thread Jeff Law
On 06/22/2018 02:39 AM, Richard Biener wrote: > On Thu, Jun 21, 2018 at 9:37 PM Jeff Law wrote: >> >> On 06/21/2018 11:04 AM, Eric Botcazou wrote: >>> When code is compiled at -O0, the RTL middle-end makes sure that location >>> information is preserved as much as possible by generating NOPs with

Re: [Patch] Do not call the linker if we are creating precompiled header files

2018-06-22 Thread Steve Ellcey
On Tue, 2018-06-19 at 15:22 +, Joseph Myers wrote: >  > > What should plain > >   gcc -Wl,-rpath=/foo > > do?  Whatever it should do regarding trying to link or not trying to link, > it should do the same if you also name a header on the command line to be > compiled to a precompiled

Re: [patch] improve entry/exit instrumentation wrt trampolines

2018-06-22 Thread Olivier Hainque
> On 22 Jun 2018, at 17:44, Olivier Hainque wrote: > Receiving the actual function address would seem more > useful for function-instrumentation purposes, and this > patch adjusts the compiler to do that instead. > > 2018-06-22 Olivier Hainque > > * gimplify.c

[patch] improve entry/exit instrumentation wrt trampolines

2018-06-22 Thread Olivier Hainque
Hello, Execution of the example program below shows that when a nested function is called by way of a stack trampoline, the -finstrument-functions hooks receive the address of the trampoline as the "this function" parameter. Receiving the actual function address would seem more useful for

[PATCH, rs6000] Add vec_extract builtin tests, fix arguments on existing tests

2018-06-22 Thread Carl Love
GCC Maintainers: The following patch adds tests for the vec_extract builtin. I also adjusts the second argument on the existing tests so they match the ABI, specifically an integer not a const integer. The patch has been tested on  powerpc64le-unknown-linux-gnu (Power 9 LE)   With no

[PATCH, committed] fix pdp11 target test failures

2018-06-22 Thread Paul Koning
This patch fixes a number of test suite failures caused by data too large for the address space or alignment larger than supported by this target. paul testsuite/ChangeLog: 2018-06-22 Paul Koning * gcc.c-torture/execute/builtins/lib/chk.c: Use smaller alignment if

[PATCH, rs6000] Change word selector to prefered location for vec_insert builtin

2018-06-22 Thread Carl Love
GCC Maintainers: The following patch changes the word selected when extracting the word from the second vector to insert into the first vector by the vec_insert() builtin. Specifically, the test case vector float fn2 (float

libgo patch committed: Remove syscall.Ustat

2018-06-22 Thread Ian Lance Taylor
Reportedly glibc 2.28 removes the ustat.h header file and the ustat function. This breaks libgo, which provides syscall.Ustat that calls the C ustat function. Fix this by removing syscall.Ustat from libgo. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline, GCC 8

Re: [PATCH] PR libstdc++/83328 add correct basic_string::insert for initializer_list

2018-06-22 Thread Jonathan Wakely
On 22/06/18 15:14 +0200, Christophe Lyon wrote: Hi, On Fri, 22 Jun 2018 at 14:54, Jonathan Wakely wrote: On 22/06/18 14:51 +0200, Rainer Orth wrote: >Hi Jonathan, > >> The SSO basic_string has a non-standard insert(iterator, initializer_list) >> overload, from a C++0x draft. This adds the

Re: [PATCH] PR libstdc++/83328 add correct basic_string::insert for initializer_list

2018-06-22 Thread Jonathan Wakely
On 22/06/18 14:13 +0100, Jonathan Wakely wrote: On 22/06/18 13:54 +0100, Jonathan Wakely wrote: On 22/06/18 14:51 +0200, Rainer Orth wrote: Hi Jonathan, The SSO basic_string has a non-standard insert(iterator, initializer_list) overload, from a C++0x draft. This adds the correct overload,

Re: [PATCH ARM] Fix armv8-m multilib build failure with stdint.h

2018-06-22 Thread Kyrill Tkachov
On 22/06/18 14:56, Andre Vieira (lists) wrote: On 17/05/18 09:29, Kyrill Tkachov wrote: > > On 16/05/18 10:22, Jérôme Lambourg wrote: >> Hello Kyrill, >> >>> Thanks for the patch! To validate it your changes you can also look >>> at the disassembly >>> of the cmse.c binary in the build tree.

Re: [ARM][PATCH] Make arm_cmse.h C99 compatible

2018-06-22 Thread Kyrill Tkachov
On 22/06/18 14:56, Andre Vieira (lists) wrote: On 05/06/18 11:18, Kyrill Tkachov wrote: > > On 05/06/18 11:03, Andre Vieira (lists) wrote: >> On 05/06/18 10:42, Kyrill Tkachov wrote: >>> Hi Andre, >>> >>> On 05/06/18 10:40, Andre Vieira (lists) wrote: Hi all, This patch makes

Re: [PATCH ARM] Fix armv8-m multilib build failure with stdint.h

2018-06-22 Thread Andre Vieira (lists)
On 17/05/18 09:29, Kyrill Tkachov wrote: > > On 16/05/18 10:22, Jérôme Lambourg wrote: >> Hello Kyrill, >> >>> Thanks for the patch! To validate it your changes you can also look >>> at the disassembly >>> of the cmse.c binary in the build tree. If the binary changes with >>> your patch then that

Re: [ARM][PATCH] Make arm_cmse.h C99 compatible

2018-06-22 Thread Andre Vieira (lists)
On 05/06/18 11:18, Kyrill Tkachov wrote: > > On 05/06/18 11:03, Andre Vieira (lists) wrote: >> On 05/06/18 10:42, Kyrill Tkachov wrote: >>> Hi Andre, >>> >>> On 05/06/18 10:40, Andre Vieira (lists) wrote: Hi all, This patch makes the arm_cmse.h header file ISO C compliant. We were

Re: [PATCH, rs6000] Backport Fix implementation of vec_packsu (vector unsigned long long, vector unsigned long long) built-in function

2018-06-22 Thread Kelvin Nilsen
This has been committed to trunk. Is this ok to backport to gcc6, gcc7, and gcc8? Thanks. On 6/19/18 2:30 PM, Segher Boessenkool wrote: > Hi! > > On Mon, Jun 18, 2018 at 11:29:55AM -0500, Kelvin Nilsen wrote: >> +/* A single vpkudus matches twice because this is compiled with -dp, >> +

Re: [PATCH 3/3] Come up with new --completion option.

2018-06-22 Thread David Malcolm
On Fri, 2018-06-22 at 13:25 +0200, Martin Liška wrote: > On 06/20/2018 05:27 PM, David Malcolm wrote: > > On Mon, 2018-05-14 at 14:51 +0200, Martin Liška wrote: [...snip...] > > Thanks for working on this; the rest looks good to me (though as I > > said, I'm not officially a reviewer for this).

Re: [PATCH] PR libstdc++/83328 add correct basic_string::insert for initializer_list

2018-06-22 Thread Christophe Lyon
Hi, On Fri, 22 Jun 2018 at 14:54, Jonathan Wakely wrote: > > On 22/06/18 14:51 +0200, Rainer Orth wrote: > >Hi Jonathan, > > > >> The SSO basic_string has a non-standard insert(iterator, initializer_list) > >> overload, from a C++0x draft. This adds the correct overload, while also > >>

Re: [PATCH] PR libstdc++/83328 add correct basic_string::insert for initializer_list

2018-06-22 Thread Jonathan Wakely
On 22/06/18 13:54 +0100, Jonathan Wakely wrote: On 22/06/18 14:51 +0200, Rainer Orth wrote: Hi Jonathan, The SSO basic_string has a non-standard insert(iterator, initializer_list) overload, from a C++0x draft. This adds the correct overload, while also preserving the old one so that the old

Re: [PATCH] PR libstdc++/70940 make pmr::resource_adaptor return aligned memory

2018-06-22 Thread Jonathan Wakely
On 22/06/18 13:42 +0100, Jonathan Wakely wrote: On 22/06/18 14:34 +0200, Rainer Orth wrote: Hi Jonathan, PR libstdc++/70940 * include/experimental/memory_resource (__resource_adaptor_common): New base class. (__resource_adaptor_common::_AlignMgr): Helper for

Re: [PATCH] PR libstdc++/83328 add correct basic_string::insert for initializer_list

2018-06-22 Thread Jonathan Wakely
On 22/06/18 14:51 +0200, Rainer Orth wrote: Hi Jonathan, The SSO basic_string has a non-standard insert(iterator, initializer_list) overload, from a C++0x draft. This adds the correct overload, while also preserving the old one so that the old symbol is still exported from the library. The

Re: [PATCH] PR libstdc++/83328 add correct basic_string::insert for initializer_list

2018-06-22 Thread Rainer Orth
Hi Jonathan, > The SSO basic_string has a non-standard insert(iterator, initializer_list) > overload, from a C++0x draft. This adds the correct overload, while also > preserving the old one so that the old symbol is still exported from the > library. > > The COW basic_string doesn't have any of

Re: [PATCH] PR libstdc++/70940 make pmr::resource_adaptor return aligned memory

2018-06-22 Thread Jonathan Wakely
On 22/06/18 14:34 +0200, Rainer Orth wrote: Hi Jonathan, PR libstdc++/70940 * include/experimental/memory_resource (__resource_adaptor_common): New base class. (__resource_adaptor_common::_AlignMgr): Helper for obtaining aligned pointer from unaligned,

Re: [PATCH] PR libstdc++/70940 make pmr::resource_adaptor return aligned memory

2018-06-22 Thread Rainer Orth
Hi Jonathan, > PR libstdc++/70940 > * include/experimental/memory_resource (__resource_adaptor_common): > New base class. > (__resource_adaptor_common::_AlignMgr): Helper for obtaining aligned > pointer from unaligned, and vice versa. >

[PATCH][testsuite/guality] Use buildarea gdb by default in combined build

2018-06-22 Thread Tom de Vries
Hi, when doing a combined build of gcc and binutils-gdb repos, guality still uses the gdb in PATH by default. This patch makes sure that quality uses the gdb from the combined build instead. Tested on x86_64. OK for trunk? Thanks, - Tom [testsuite/guality] Use buildarea gdb by default in

Re: [Patch, fortran] PR49630 - [OOP] ICE on obsolescent deferred-length type bound character function

2018-06-22 Thread Martin Liška
On 06/21/2018 05:25 PM, Steve Kargl wrote: > On Thu, Jun 21, 2018 at 09:03:47AM +0100, Paul Richard Thomas wrote: >> Ping! >> >>> 2018-06-19 Paul Thomas >>> >>> PR fortran/49630 >>> * resolve.c (resolve_contained_fntype): Change standard ref. >>> from F95 to F2003: C418. Correct a

[PATCH][testsuite/guality] Be verbose about gdb version used

2018-06-22 Thread Tom de Vries
Hi, by default, guality invokes gdb with --quiet to avoid being unnecessarily verbose for each test. But as a consequence, we don't see which version of gdb is used. This patch adds printing of the full path to the gdb used, as well as the gdb version as printed by gdb. Tested on x86_64. OK

Re: [PATCH 3/3] Come up with new --completion option.

2018-06-22 Thread Martin Liška
On 06/20/2018 05:27 PM, David Malcolm wrote: > On Mon, 2018-05-14 at 14:51 +0200, Martin Liška wrote: >> Main part where I still need to write ChangeLog file and >> gcc.sh needs to be moved to bash-completions project. >> >> Martin > > As before, I'm not an official reviewer for it, but it

Add support for dumping multiple dump files under one name

2018-06-22 Thread Jan Hubicka
Hi, this patch adds dumpfile support for dumps that come in multiple parts. This is needed for WPA stream-out dump since we stream partitions in parallel and the dumps would come up in random order. Parts are added by new parameter that is initialzed by default to -1 (no parts). One thing I

Re: [PATCH 2/3] Refactoring to opt-suggestions.[ch].

2018-06-22 Thread Martin Liška
On 06/20/2018 04:57 PM, David Malcolm wrote: > On Mon, 2018-05-14 at 14:51 +0200, Martin Liška wrote: >> Second part refactors function from gcc.c into a new class >> option_proposer. >> >> Martin > > [...snip...] > > diff --git a/gcc/c-family/cppspec.c b/gcc/c-family/cppspec.c > index

Re: [PATCH 1/3] Introduce auto_string_vec class.

2018-06-22 Thread Martin Liška
On 06/20/2018 04:41 PM, David Malcolm wrote: > On Mon, 2018-05-14 at 14:50 +0200, Martin Liška wrote: >> First part with introduction of auto_string_vec class. >> > > FWIW, I'm fine with the changes to the jit subdir, but I don't think I > have approval rights on the vec.h changes. Hi. Good,

[PATCH][3/3] Consider multiple vector sizes for vectorization based on cost

2018-06-22 Thread Richard Biener
The following makes the vectorizer consider all vector sizes as advertised by targetm.vectorize.autovectorize_vector_sizes and decide on which vector size to use based on costs. Given comparing costs is difficult if you do not know the number of scalar iterations the patch simply uses the cost

[PATCH][2/3] Share dataref and dependence analysis for multi-vector size vectorization

2018-06-22 Thread Richard Biener
This is the main part to make considering multiple vector sizes based on costs less compile-time costly. It shares dataref analysis and dependence analysis for loop vectorization (BB vectorization is only adjusted to comply with the new APIs sofar). Sharing means that DRs (and of course DDRs)

[PATCH][1/3] Refactor SIMD lane handling in vect_find_stmt_data_reference

2018-06-22 Thread Richard Biener
This is a prerequesite for sharing dataref and dependence analysis results between different vector size vectorization attempts. Bootstrapped on x86_64-unknown-linux-gnu (with 2/3 included), testing in progress. Richard. >From 9b406b12269d2a0fe86591df862c2ffd0197df37 Mon Sep 17 00:00:00 2001

Re: [PATCH] Fix emission of jump tables (PR tree-optimization/86263).

2018-06-22 Thread Richard Biener
On Fri, Jun 22, 2018 at 11:21 AM Martin Liška wrote: > > Hello. > > Quite obvious patch where I accidentally removed check for: > if (!targetm.have_casesi () && !targetm.have_tablejump ()) > > Patch can bootstrap on ppc64le-redhat-linux and survives regression tests. > > Ready to be installed?

Re: [PATCH 2/4] Switch other switch expansion methods into classes.

2018-06-22 Thread Martin Liška
On 06/20/2018 05:16 PM, Jeff Law wrote: > On 06/20/2018 05:25 AM, Steven Bosscher wrote: >> On Tue, Jun 12, 2018 at 10:44 PM, Jeff Law wrote: >>> On 06/05/2018 01:15 AM, marxin wrote: + The definition of "much bigger" depends on whether we are + optimizing for size or for

Re: Have g++ define _FILE_OFFSET_BITS=64 on Solaris

2018-06-22 Thread Franz Sirl
Am 2018-06-22 um 09:51 schrieb Rainer Orth: Hi Franz, No idea about possible problems, but isn't it usually recommended to use either _FILE_OFFSET_BITS=64 or _LARGEFILE{64}_SOURCE=1, not both at the same time? quite the contrary: for regular largefile support, you're supposed to use `getconf

[ping] Improve specs processing to allow %* in function arguments

2018-06-22 Thread Olivier Hainque
Hello, ping for https://gcc.gnu.org/ml/gcc-patches/2018-06/msg00228.html > On 5 Jun 2018, at 16:13, Olivier Hainque wrote: > The attached patch is a proposal to improve specs processing > so %* works in spec function arguments (it doesn't as of today). Thanks in advance! With Kind Regards,

  1   2   >