Patch ping

2017-01-09 Thread Jakub Jelinek
Hi! I'd like to ping 2 patches: - DWARF5 - adjust for 161031.2 resolution - remove padding from unit headers http://gcc.gnu.org/ml/gcc-patches/2017-01/msg00138.html - Introduce the noipa attribute http://gcc.gnu.org/ml/gcc-patches/2016-12/msg01501.html Jakub

[PATCH] Optimize away useless snprintf calls with -fprintf-return-value (take 2)

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 02, 2017 at 04:54:57PM -0700, Martin Sebor wrote: > Looks good to me, thanks! Just a couple of suggestions: Here is updated patch with those added comments (and adjusted for the current trunk). Ok for trunk? 2017-01-10 Jakub Jelinek * gimple-ssa-sprintf.c (try_substitute

Re: [PATCH] Introduce --with-gcc-major-version-only configure option

2017-01-09 Thread Jakub Jelinek
On Tue, Jan 10, 2017 at 12:15:41AM +0100, Matthias Klose wrote: > On 09.01.2017 21:43, Jakub Jelinek wrote: > > On Fri, Jan 06, 2017 at 01:48:26PM +0100, Jakub Jelinek wrote: > >> Yet another option is introduce AC_ARG_ENABLE into all those configure > >> scripts (some macro in config/*.m4) and do

[Commited/WWW] Add Cavium ThunderX related changes to changes.html for gcc-7

2017-01-09 Thread Andrew Pinski
Just adding the changes that were done to add Cavium ThunderX to changes.html. Committed as obvious. Thanks, Andrew Index: changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-7/changes.html,v retrieving revision 1.34 diff -u -p -r

Go patch committed: drop size arguments to hash/equal functions

2017-01-09 Thread Ian Lance Taylor
Drop the size arguments for the hash/equal functions stored in type descriptors. Types know what size they are. To make this work, generate hash/equal functions for types that can use an identity comparison but are not a standard size and alignment. Drop the multiplications by 33 in the generate

[PATCH 9j] testsuite: add x86_64-specific files

2017-01-09 Thread David Malcolm
A collection of test cases, capturing the state of various functions at various places within the pass list, and verifying that we can restart at various passes. gcc/testsuite/ChangeLog: * gcc.dg/rtl/x86_64/dfinit.c: New test case. * gcc.dg/rtl/x86_64/different-structs.c: New test

[PATCH 9h] testsuite: add platform-independent files

2017-01-09 Thread David Malcolm
This patch adds: - an rtl.exp (to make it easy to run just the tests for __RTL-tagged functions) - a test.c source file I used when generating the various RTL dumps (for reference) - a couple of tests of __RTL parser errors gcc/testsuite/ChangeLog: * gcc.dg/rtl/rtl.exp: New file.

[PATCH 9f] Add a way for the C frontend to compile __RTL-tagged functions

2017-01-09 Thread David Malcolm
The backend is full of singleton state, so we have to compile __RTL-functions as soon as we parse them. This means that the C frontend needs to invoke the backed. This patch adds the support needed. Normally this would be a no-no, and including rtl headers is blocked by this within system.h: /

[PATCH 9d] Don't call delete_tree_ssa for __RTL functions

2017-01-09 Thread David Malcolm
gcc/ChangeLog: * final.c (rest_of_clean_state): Don't call delete_tree_ssa for __RTL functions. --- gcc/final.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/final.c b/gcc/final.c index 8a4c9f8..2483381 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -4699

[PATCH 9g] Extend .md and RTL parsing to support being wired up to cc1

2017-01-09 Thread David Malcolm
gcc/ChangeLog: * read-md.c (md_reader::read_char): Support filtering the input to a subset of line numbers. (md_reader::md_reader): Initialize fields m_first_line and m_last_line. (md_reader::read_file_fragment): New function. * read-md.h (md_reader::

[PATCH 9i] testsuite: add aarch64-specific files

2017-01-09 Thread David Malcolm
gcc/testsuite/ChangeLog: * gcc.dg/rtl/aarch64/asr_div1.c: New test case. * gcc.dg/rtl/aarch64/pr71779.c: New test case. --- gcc/testsuite/gcc.dg/rtl/aarch64/asr_div1.c | 41 +++ gcc/testsuite/gcc.dg/rtl/aarch64/pr71779.c | 50 + 2 fi

[PATCH 9e] Update "startwith" logic for pass-skipping to handle __RTL functions

2017-01-09 Thread David Malcolm
gcc/ChangeLog: * passes.c: Include "insn-addr.h". (should_skip_pass_p): Add logging. Update logic for running "expand" to be compatible with both __GIMPLE and __RTL. Guard property-provider override so it is only done for gimple passes. Don't skip dfinit.

[PATCH 9c] callgraph: handle __RTL functions

2017-01-09 Thread David Malcolm
The RTL backend code is full of singleton state, so we have to handle functions as soon as we parse them. This requires various special-casing in the callgraph code. gcc/ChangeLog: * cgraph.h (symtab_node::native_rtl_p): New decl. * cgraphunit.c (symtab_node::native_rtl_p): New fu

[PATCH 9/9] Add "__RTL" to cc1 (v8)

2017-01-09 Thread David Malcolm
This is a slightly updated version of the patch sent here: "[PATCH] Add "__RTL" to cc1 (v7)" https://gcc.gnu.org/ml/gcc-patches/2016-12/msg01662.html but split up into smaller parts to (I hope) make review easier. Other changes in v8: - fix copyright years in new files - split out change

[PATCH 9a] Add "__RTL" to C frontend

2017-01-09 Thread David Malcolm
This part of the patch adds the ability to tag a function with "__RTL", analogous to the "__GIMPLE" tag. gcc/c-family/ChangeLog: * c-common.c (c_common_reswords): Add "__RTL". * c-common.h (enum rid): Add RID_RTL. gcc/c/ChangeLog: * c-parser.c: Include "read-rtl-function.h

[PATCH 9b] Don't assume that copy tables were initialized

2017-01-09 Thread David Malcolm
gcc/ChangeLog: * cfg.c (original_copy_tables_initialized_p): New function. * cfg.h (original_copy_tables_initialized_p): New decl. * cfgrtl.c (relink_block_chain): Guard the call to free_original_copy_tables with a call to original_copy_tables_initialized_p.

[PATCH] PR target/79004, Fix char/short -> _Float128 on PowerPC -mcpu=power9

2017-01-09 Thread Michael Meissner
This patch fixes PR target/79004 by eliminating the optimization of avoiding direct move if we are converting an 8/16-bit integer value from memory to IEEE 128-bit floating point. I opened a new bug (PR target/79038) to address the underlying issue that the IEEE 128-bit floating point integer conv

Re: [PATCH] Introduce --with-gcc-major-version-only configure option

2017-01-09 Thread Matthias Klose
On 09.01.2017 21:43, Jakub Jelinek wrote: > Hi! > > On Fri, Jan 06, 2017 at 01:48:26PM +0100, Jakub Jelinek wrote: >> Yet another option is introduce AC_ARG_ENABLE into all those configure >> scripts (some macro in config/*.m4) and do the sed conditionally. > > Here is a patch to do that. > Boots

Re: Use a specfile that actually allows building programs on NetBSD

2017-01-09 Thread coypu
3 month ping, 1 week ping (trying again), etc... This patch has zero affect on non-netbsd users and was already accepted in NetBSD years ago. On Wed, Jan 04, 2017 at 11:24:27AM +, coypu wrote: > Like most operating systems, NetBSD has a libc which contains > stuff it needs for most programs t

[committed PATCH] PR79026 The tests changed by revision r244006 now fail on darwin

2017-01-09 Thread Dominique d'Humières
I have committed on the trunk as revision r244244 (pre approved by Uros Bizjak in bugzilla) the following patch --- ../_clean/gcc/testsuite/gcc.target/i386/pr78904-2.c 2017-01-09 23:14:04.0 +0100 +++ gcc/testsuite/gcc.target/i386/pr78904-2.c 2017-01-09 22:41:49.0 +0100 @@ -1,5

Re: C++ PATCH to implement C++17 variadic using

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 05:02:03PM -0500, Jason Merrill wrote: > On Mon, Jan 9, 2017 at 4:56 PM, Jakub Jelinek wrote: > > On Mon, Jan 09, 2017 at 04:50:20PM -0500, Jason Merrill wrote: > >> The last C++17 feature > > > > What about P0490R0? > > That's the response to various national body comment

Re: [Patch] PR71017 - libgcc/config/i386/cpuinfo.c:346:17: runtime error: left shift of 1 by 31 places cannot be represented in type 'int'

2017-01-09 Thread Dominique d'Humières
> Le 9 janv. 2017 à 20:37, Uros Bizjak a écrit : > > Hello! > >> The following patch fixes errors of the kind >> >> libgcc/config/i386/cpuinfo.c:260:17: runtime error: left shift of 1 by 31 >> places cannot be >> represented in type ‘int' >> >> 2017-01-07 Dominique d'Humieres >> >>

Re: C++ PATCH to implement C++17 variadic using

2017-01-09 Thread Jason Merrill
On Mon, Jan 9, 2017 at 4:56 PM, Jakub Jelinek wrote: > On Mon, Jan 09, 2017 at 04:50:20PM -0500, Jason Merrill wrote: >> The last C++17 feature > > What about P0490R0? That's the response to various national body comments, I don't see anything in there that I would consider a new feature, most is

C++ PATCH to implement C++17 variadic using

2017-01-09 Thread Jason Merrill
The last C++17 feature was pretty trivial to implement, as expected. Tested x86_64-pc-linux-gnu, applying to trunk. commit 10650d842cd49cad2adb396bc19192bf52975be8 Author: Jason Merrill Date: Mon Jan 9 15:08:47 2017 -0500 Implement P0195R2, C++17 variadic using. *

Re: C++ PATCH to implement C++17 variadic using

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 04:50:20PM -0500, Jason Merrill wrote: > The last C++17 feature What about P0490R0? Jakub

[PR tree-optimization/79007 tree-optimization/67955] Don't be so conservative with pt.null

2017-01-09 Thread Jeff Law
Per the discussion with Richi. Bootstrapped and regression tested on x86_64-linux-gnu. Though I thought I'd done the same with the prior patch, but it clearly was making the new dse-points-to test fail everywhere. Installed on the trunk. Jeff commit 18c5f2e1d38dfd248f7d17eb9656251191a8bd15

Re: [PATCH] Spelling and typo fixes in translatable strings (PR translation/79019, PR translation/79020)

2017-01-09 Thread Joseph Myers
On Mon, 9 Jan 2017, Jakub Jelinek wrote: > I'm not a native English speaker, so I'd appreciate corrections (e.g. not > 100% sure about the endianess -> endianness). Bootstrapped/regtested on > x86_64-linux and i686-linux, ok for trunk? OK. -- Joseph S. Myers jos...@codesourcery.com

Re: [patch] aarch64-*-freebsd* support for gcc.

2017-01-09 Thread Andreas Tobler
On 13.10.16 17:14, Jeff Law wrote: On 10/12/2016 01:43 PM, Andreas Tobler wrote: libgcc: 2016-10-10 Andreas Tobler * config.host: Add support for aarch64-*-freebsd*. gcc: 2016-10-10 Andreas Tobler * config.gcc: Add aarch64-*-freebsd* support. * config.host: Likewise.

[PATCH] Introduce --with-gcc-major-version-only configure option

2017-01-09 Thread Jakub Jelinek
Hi! On Fri, Jan 06, 2017 at 01:48:26PM +0100, Jakub Jelinek wrote: > Yet another option is introduce AC_ARG_ENABLE into all those configure > scripts (some macro in config/*.m4) and do the sed conditionally. Here is a patch to do that. Bootstrapped/regtested on x86_64-linux (without --with-gcc-ma

Re: [PATCH] Fix late dwarf generated early from optimized out globals

2017-01-09 Thread Andreas Tobler
On 09.01.17 18:36, Jakub Jelinek wrote: On Mon, Jan 09, 2017 at 06:25:05PM +0100, Andreas Tobler wrote: On 09.01.17 12:25, Jakub Jelinek wrote: On Mon, Jan 09, 2017 at 11:53:38AM +0100, Richard Biener wrote: Ok, attached the part I bootstrapped successfully on amd64-*-freebsd12 and aarch64-*-f

Re: Pretty printers for versioned namespace

2017-01-09 Thread François Dumont
On 04/01/2017 13:52, Jonathan Wakely wrote: On 24/12/16 14:47 +0100, François Dumont wrote: I'd prefer not to have to use the regex matches in libstdc++.exp as they complicate things. For the two examples above, the whatis results are bad even for the non-versioned namespace. For specialization

[PATCH] Spelling and typo fixes in translatable strings (PR translation/79019, PR translation/79020)

2017-01-09 Thread Jakub Jelinek
Hi! These two PRs made me run aspell -c po/gcc.pot. Didn't want to spend too much time, so I've been pressing I like crazy and therefore surely missed lots of things, here is what I've noticed (which includes the two issues filed in bugzilla): containg -> containing intructions -> instructions o

[committed] increase buffer size to avoid truncation warning in asan.c (PR 79033)

2017-01-09 Thread Martin Sebor
To unblock the bootstrap failure I committed r244237 as an obviously safe fix to resolve bug 79033 - asan.c not compiling with make BOOT_CFLAGS='-O0'. Martin

Re: [Patch] PR71017 - libgcc/config/i386/cpuinfo.c:346:17: runtime error: left shift of 1 by 31 places cannot be represented in type 'int'

2017-01-09 Thread Uros Bizjak
Hello! > The following patch fixes errors of the kind > > libgcc/config/i386/cpuinfo.c:260:17: runtime error: left shift of 1 by 31 > places cannot be > represented in type ‘int' > > 2017-01-07 Dominique d'Humieres > > PR target/71017 > * config/i386/cpuid.h: Fix undefined beh

[v3 PATCH] Reduce the size of variant, it doesn't need an index of type size_t internally.

2017-01-09 Thread Ville Voutilainen
Tested on Linux-x64. 2017-01-09 Ville Voutilainen Reduce the size of variant, it doesn't need an index of type size_t internally. * include/std/variant (parse_numbers.h): New include. (__select_index): New. (_Variant_storage::_M_reset_impl): Use _index_type for comparis

Re: [patch,libgomp] Make libgomp Fortran modules multilib-aware

2017-01-09 Thread Mike Stump
On Jan 9, 2017, at 2:04 AM, FX wrote: > > Given lack of review of this Fortran-specific patch for libgomp, can a > Fortran maintainer approve it please? Ok.

Re: [PATCH] PR79017 workaround incomplete C99 math on darwin

2017-01-09 Thread Mike Stump
On Jan 9, 2017, at 9:16 AM, Jonathan Wakely wrote: > > Older versions of OS X (at least Leopard) are missing some > declarations of C99 functions from , which causes our > configure test to decide that all C99 functions are missing from > . Rather then splitting up the check into dozens of smalle

Re: [PATCH, rs6000] Add vec_nabs builtin support

2017-01-09 Thread Carl E. Love
Oops, accidentally hit send. Was trying to insert file. On Mon, 2017-01-09 at 09:58 -0800, Carl E. Love wrote: > GCC maintainers: > > The following patch adds two more built-ins that are missing. > Specifically: > > vector signed char vec_nabs (vector signed char) > vector signed

[PATCH, rs6000] Add vec_nabs builtin support

2017-01-09 Thread Carl E. Love
GCC maintainers: The following patch adds two more built-ins that are missing. Specifically: vector signed char vec_nabs (vector signed char) vector signed short vec_nabs (vector signed short) vector signed int vec_nabs (vector signed int) vector signed long long v

Re: [PATCH] Fix late dwarf generated early from optimized out globals

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 06:25:05PM +0100, Andreas Tobler wrote: > On 09.01.17 12:25, Jakub Jelinek wrote: > > On Mon, Jan 09, 2017 at 11:53:38AM +0100, Richard Biener wrote: > > > > Ok, attached the part I bootstrapped successfully on amd64-*-freebsd12 > > > > and > > > > aarch64-*-freebsd12. From

Re: [PATCH] Fix late dwarf generated early from optimized out globals

2017-01-09 Thread Andreas Tobler
On 09.01.17 12:25, Jakub Jelinek wrote: On Mon, Jan 09, 2017 at 11:53:38AM +0100, Richard Biener wrote: Ok, attached the part I bootstrapped successfully on amd64-*-freebsd12 and aarch64-*-freebsd12. From the amd64 run you'll find some test results at the usual place. The aarch64 run takes some

Re: [PR tree-optimization/67955] Exploit PTA in DSE

2017-01-09 Thread Richard Biener
On January 9, 2017 6:02:16 PM GMT+01:00, Jeff Law wrote: >On 01/09/2017 02:36 AM, Richard Biener wrote: >>> >>> >>> a = 1; >>> >>> a = 2; >>> >>> >>> If "a" escapes such that its value can be queried in the exception >handler, >>> then the exception handler would be able to observe the first stor

[PATCH] PR79017 workaround incomplete C99 math on darwin

2017-01-09 Thread Jonathan Wakely
Older versions of OS X (at least Leopard) are missing some declarations of C99 functions from , which causes our configure test to decide that all C99 functions are missing from . Rather then splitting up the check into dozens of smaller checks for individual functions (which would be stage 1 mate

Re: [PR tree-optimization/67955] Exploit PTA in DSE

2017-01-09 Thread Jeff Law
On 01/09/2017 02:36 AM, Richard Biener wrote: a = 1; a = 2; If "a" escapes such that its value can be queried in the exception handler, then the exception handler would be able to observe the first store and thus it should not be removed. Yes, and it won't as long as the EH is thrown inter

Re: [PATCH] improve string find algorithm

2017-01-09 Thread Aditya K
Thanks, -Aditya From: Jonathan Wakely Sent: Monday, January 9, 2017 6:33 AM To: Aditya K Cc: Aditya Kumar; Sebastian Pop; libstd...@gcc.gnu.org; gcc-patches@gcc.gnu.org Subject: Re: [PATCH] improve string find algorithm   On 06/01/17 22:19 +, Aditya K wrote: >> Could you try the correc

Re: [doc, committed] clean up include search path documentation in cpp.texi

2017-01-09 Thread Joseph Myers
On Sat, 7 Jan 2017, Sandra Loosemore wrote: > I've checked in this patch to modernize the tutorial information about the > preprocessor search path in cpp.texi -- in particular, removing the discussion > of the deprecated -I- option, better integrating information about the > preferred replacement

Re: C++ PATCH for c++/78948 (instantiation from discarded statement)

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 09:10:06AM -0500, Nathan Sidwell wrote: > On 01/09/2017 09:03 AM, Jakub Jelinek wrote: > > > FAIL: g++.dg/cpp1z/constexpr-if10.C (test for excess errors) > > > > Could we do e.g. > > sed -i -e 's/long long/int */g' testsuite/g++.dg/cpp1z/constexpr-if10.C > > so that it i

Re: [PATCH] Fix exgettext to handle multi-line help texts from *.opt files (PR translation/78745)

2017-01-09 Thread Thomas Schwinge
Hi! On Thu, 29 Dec 2016 16:15:01 +0100, Jakub Jelinek wrote: > PR translation/78745 > * exgettext: Handle multi-line help texts in *.opt files. With this committed in r243981, I noticed the following new snippet in gcc/po/gcc.pot: +#: config/nvptx/nvptx.c:1132 +msgid "tid.y;

Re: [PATCH] Do not error when -E provided (PR pch/78970).

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 04:09:57PM +0100, Martin Liška wrote: > Hello. > > As reported here https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78970#c7, > we should not report error when one want to pre-compile a {c,c++}-header file. > > Patch can bootstrap on x86_64-linux-gnu and survives regression t

[PATCH 2/2] IPA ICF: make algorithm stable to survive -fcompare-debug

2017-01-09 Thread Martin Liška
Second part of the patch does sorting of final congruence classes, it's groups and items included in the groups according DECL_UID. Both patches can bootstrap together on ppc64le-redhat-linux and survive regression tests. Ready to be installed? Martin >From c3baaad9da1fdaa95ff5b8a69fc7925ede13d8

[PATCH] Do not error when -E provided (PR pch/78970).

2017-01-09 Thread Martin Liška
Hello. As reported here https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78970#c7, we should not report error when one want to pre-compile a {c,c++}-header file. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Martin >From bf226badedf38c81d09e34bde6ce0ff

[PATCH 1/2] Revert m_classes_vec introduction.

2017-01-09 Thread Martin Liška
First patch removes basically what was installed by Jakub in r242910, except formatting changes. Martin >From 32f4ccb48dfd84e4f64fb38f5122f5dc61482f3b Mon Sep 17 00:00:00 2001 From: marxin Date: Fri, 6 Jan 2017 11:36:13 +0100 Subject: [PATCH 1/2] Revert m_classes_vec introduction. gcc/ChangeLog:

Re: [PATCH] Speed-up use-after-scope (re-writing to SSA) (version 2)

2017-01-09 Thread Martin Liška
On 12/22/2016 06:21 PM, Jakub Jelinek wrote: > On Thu, Dec 22, 2016 at 06:03:50PM +0100, Martin Liška wrote: >> Done by hash_map. > > Ok. > >>> 3) I think you just want to do copy_node, plus roughly what >>>copy_decl_for_dup_finish does (and set DECL_ARTIFICIAL and >>>DECL_IGNORED_P) - ex

Re: C++ PATCH for c++/78948 (instantiation from discarded statement)

2017-01-09 Thread Nathan Sidwell
On 01/09/2017 09:03 AM, Jakub Jelinek wrote: FAIL: g++.dg/cpp1z/constexpr-if10.C (test for excess errors) Could we do e.g. sed -i -e 's/long long/int */g' testsuite/g++.dg/cpp1z/constexpr-if10.C so that it is something where if constexpr will be always true? that would seem fine to me nath

Re: [PATCH] Outer vs. inner loop ifcvt (PR tree-optimization/78899)

2017-01-09 Thread Richard Biener
On Mon, 9 Jan 2017, Jakub Jelinek wrote: > On Mon, Jan 09, 2017 at 11:08:08AM +0100, Richard Biener wrote: > > > > > There is one thing my patch doesn't do but should for efficiency, if > > > > > loop1 > > > > > (outer loop) is not successfully outer-loop vectorized, then we > > > > > should mar

Re: C++ PATCH for c++/78948 (instantiation from discarded statement)

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 08:49:25AM -0500, Nathan Sidwell wrote: > On 01/08/2017 01:34 AM, Jason Merrill wrote: > > P0292 defines the notion of "discarded statement" which is almost but > > not quite the same as "unevaluated operand". This PR shows a case > > where we need to be able to tell that w

Re: C++ PATCH for c++/78948 (instantiation from discarded statement)

2017-01-09 Thread Kyrill Tkachov
On 09/01/17 13:49, Nathan Sidwell wrote: On 01/08/2017 01:34 AM, Jason Merrill wrote: P0292 defines the notion of "discarded statement" which is almost but not quite the same as "unevaluated operand". This PR shows a case where we need to be able to tell that we're in a discarded statement at

Re: C++ PATCH for c++/78948 (instantiation from discarded statement)

2017-01-09 Thread Nathan Sidwell
On 01/08/2017 01:34 AM, Jason Merrill wrote: P0292 defines the notion of "discarded statement" which is almost but not quite the same as "unevaluated operand". This PR shows a case where we need to be able to tell that we're in a discarded statement at a lower level than in the parser, so this p

[PATCH] [ARC] Clean up arc header file.

2017-01-09 Thread Claudiu Zissulescu
This patch revamps the arc's header file by means of using separate headers for different tool targets. Each target header file holds the specific compiler backend macros definitions. Thus, we have: - elf.h is used for bare metal type of toolchains. - linux.h is used by our Linux type of toolchai

Re: Implement -Wduplicated-branches (PR c/64279) (v3)

2017-01-09 Thread Marek Polacek
On Mon, Jan 09, 2017 at 12:18:01PM +0100, Jakub Jelinek wrote: > On Mon, Jan 09, 2017 at 10:21:47AM +0100, Marek Polacek wrote: > > +/* Callback function to determine whether an expression TP or one of its > > + subexpressions comes from macro expansion. Used to suppress bogus > > + warnings.

[RFC] [PATCH] Ignore Debug options for ICF equality.

2017-01-09 Thread Martin Liška
Hello. Thanks Alexander for fixed the issue. In the meantime, I worked on a patch that would be more generic and would introduce cl_optimization_eq function. It's definitely stage1 material and it adds 'Debug' keyword to Optimization options (equal to PerFunction that is currently in trunk). Ho

Re: [PATCH] PR78968 add configure check for __cxa_thread_atexit in libc

2017-01-09 Thread Jonathan Wakely
On 06/01/17 17:06 +, Jonathan Wakely wrote: On 04/01/17 15:42 +, Jonathan Wakely wrote: FreeBSD 11 adds __cxa_thread_atexit to libc, so we should use that instead of defining our own inferior version. This also avoids multiple definitions of the symbol. PR libstdc++/78968

Re: [PATCH] improve string find algorithm

2017-01-09 Thread Jonathan Wakely
On 06/01/17 22:19 +, Aditya K wrote: Could you try the corrected patch on your benchmarks? For the test-case you gave there is a regression. Benchmark    Time   CPU      Iterations

Re: [PATCH] Fix late dwarf generated early from optimized out globals

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 11:53:38AM +0100, Richard Biener wrote: > > Ok, attached the part I bootstrapped successfully on amd64-*-freebsd12 and > > aarch64-*-freebsd12. From the amd64 run you'll find some test results at the > > usual place. The aarch64 run takes some more time. > > > > I hope I go

[PATCH] MIPS: Fix generation of DIV.G and MOD.G for Loongson targets.

2017-01-09 Thread Toma Tabacu
Hi, The expand_DIVMOD function, introduced in r241660, will pick the divmod4 (or the udivmod4) pattern when it checks for the presence of hardware div/mod instructions, which results in the generation of the old DIV instruction. Unfortunately, this interferes with the generation of DIV.G and MOD.

Re: [PATCH][wwwdocs][ARM] ACLE Coprocessor Intrinsics

2017-01-09 Thread Andre Vieira (lists)
On 09/01/17 11:35, Kyrill Tkachov wrote: > > On 09/01/17 11:33, Andre Vieira (lists) wrote: >> Hi, >> >> This patch adds a change entry for the ACLE Coprocessor Intrinsics in >> the ARM section. >> >> Is this OK? >> >> Cheers, >> Andre > > --- htdocs/gcc-7/changes.html21 Nov 2016 10:11:59 -00

Re: [PATCH][wwwdocs][ARM] ACLE Coprocessor Intrinsics

2017-01-09 Thread Kyrill Tkachov
On 09/01/17 11:33, Andre Vieira (lists) wrote: Hi, This patch adds a change entry for the ACLE Coprocessor Intrinsics in the ARM section. Is this OK? Cheers, Andre --- htdocs/gcc-7/changes.html 21 Nov 2016 10:11:59 - 1.25 +++ htdocs/gcc-7/changes.html 9 Jan 2017 10:47:11 -

[PATCH][wwwdocs][ARM] ACLE Coprocessor Intrinsics

2017-01-09 Thread Andre Vieira (lists)
Hi, This patch adds a change entry for the ACLE Coprocessor Intrinsics in the ARM section. Is this OK? Cheers, Andre ? coprocessor_changes.patch ? htdocs/gcc-7/.changes.html.swp cvs diff: Diffing . cvs diff: Diffing bin cvs diff: Diffing cgi-bin cvs diff: Diffing htdocs cvs diff: Diffing htdocs/

Re: [PATCH] Outer vs. inner loop ifcvt (PR tree-optimization/78899)

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 11:08:08AM +0100, Richard Biener wrote: > > > > There is one thing my patch doesn't do but should for efficiency, if > > > > loop1 > > > > (outer loop) is not successfully outer-loop vectorized, then we should > > > > mark > > > > loop2 (its inner loop) as dont_vectorize i

Re: Implement -Wduplicated-branches (PR c/64279) (v3)

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 10:21:47AM +0100, Marek Polacek wrote: > +/* Callback function to determine whether an expression TP or one of its > + subexpressions comes from macro expansion. Used to suppress bogus > + warnings. */ > + > +static tree > +expr_from_macro_expansion_r (tree *tp, int *,

Re: [patch] Fix wrong code for return of small aggregates on big-endian

2017-01-09 Thread Richard Biener
On Mon, Jan 9, 2017 at 11:43 AM, Eric Botcazou wrote: > Hi, > > this is a regression present on all active branches for big-endian targets > returning small aggregate types in registers under certain circumstances and > when optimization is enabled: when the bitfield path of store_field is taken,

Re: [PATCH] PR78991 make __gnu_cxx::__ops constructors explicit

2017-01-09 Thread Jonathan Wakely
On 09/01/17 11:05 +, Kyrill Tkachov wrote: On 09/01/17 10:47, Jonathan Wakely wrote: On 09/01/17 10:39 +, Kyrill Tkachov wrote: Hi Jonathan, On 06/01/17 12:40, Jonathan Wakely wrote: This solves a problem when using libstdc++ with Clang, due to Clang more eagerly instantiating conste

Re: [PATCH] PR78991 make __gnu_cxx::__ops constructors explicit

2017-01-09 Thread Jonathan Wakely
On 09/01/17 10:47 +, Jonathan Wakely wrote: On 09/01/17 10:39 +, Kyrill Tkachov wrote: Hi Jonathan, On 06/01/17 12:40, Jonathan Wakely wrote: This solves a problem when using libstdc++ with Clang, due to Clang more eagerly instantiating constexpr function templates during argument dedu

Re: [PATCH] PR78991 make __gnu_cxx::__ops constructors explicit

2017-01-09 Thread Kyrill Tkachov
On 09/01/17 10:47, Jonathan Wakely wrote: On 09/01/17 10:39 +, Kyrill Tkachov wrote: Hi Jonathan, On 06/01/17 12:40, Jonathan Wakely wrote: This solves a problem when using libstdc++ with Clang, due to Clang more eagerly instantiating constexpr function templates during argument deduction

Re: Implement -Wduplicated-branches (PR c/64279) (v3)

2017-01-09 Thread Marek Polacek
On Mon, Jan 09, 2017 at 11:57:48AM +0100, Richard Biener wrote: > On Mon, 9 Jan 2017, Marek Polacek wrote: > > > On Thu, Jan 05, 2017 at 04:41:28PM +0100, Jakub Jelinek wrote: > > > On Thu, Jan 05, 2017 at 04:39:40PM +0100, Marek Polacek wrote: > > > > Coming back to this... > > > > > > > > Right

Re: Implement -Wduplicated-branches (PR c/64279) (v3)

2017-01-09 Thread Richard Biener
On Mon, 9 Jan 2017, Marek Polacek wrote: > On Thu, Jan 05, 2017 at 04:41:28PM +0100, Jakub Jelinek wrote: > > On Thu, Jan 05, 2017 at 04:39:40PM +0100, Marek Polacek wrote: > > > Coming back to this... > > > > > > Right, after h0 == h1 is missing && operand_equal_p (thenb, elseb, 0) > > > > or so

Re: [PATCH] Fix late dwarf generated early from optimized out globals

2017-01-09 Thread Richard Biener
On Thu, 5 Jan 2017, Andreas Tobler wrote: > On 05.01.17 13:05, Richard Biener wrote: > > On Wed, 4 Jan 2017, Andreas Tobler wrote: > > > > > On 04.01.17 10:21, Richard Biener wrote: > > > > On Wed, 28 Dec 2016, Andreas Tobler wrote: > > > > > > > > > On 28.12.16 19:24, Richard Biener wrote: > >

Re: [PATCH/AARCH64] Add -mcpu=thunderx2t99 support

2017-01-09 Thread James Greenhalgh
On Thu, Dec 29, 2016 at 07:43:17PM -0800, Andrew Pinski wrote: > Hi, > This patch adds -mcpu=thunderx2t99. Cavium has acquired the Vulcan > IP from Broadcom. I am keeping the old -mcpu=vulcan as backwards > compatible but renaming all of the structures to be based on the new > name of the chip.

Re: [PATCH] Implement P0393R3

2017-01-09 Thread Jonathan Wakely
On 08/01/17 22:49 -0800, Tim Shen wrote: On Tue, Jan 3, 2017 at 6:17 AM, Jonathan Wakely wrote: On 01/01/17 04:17 -0800, Tim Shen via libstdc++ wrote: +#define _VARIANT_RELATION_FUNCTION_TEMPLATE(__op, __name) \ + template \ +constexpr bool operator __op(const variant<_Types...>& __lhs,

Re: [PR78365] ICE in determine_value_range, at tree-ssa-loo p-niter.c:413

2017-01-09 Thread Richard Biener
On Fri, Jan 6, 2017 at 7:00 PM, Martin Jambor wrote: > Hi, > > On Wed, Dec 14, 2016 at 01:12:11PM +0100, Richard Biener wrote: >> On Wed, Dec 14, 2016 at 11:15 AM, Martin Jambor wrote: > >> > ... > >> > +/* Emulate effects of unary OPERATION and/or conversion from SRC_TYPE to >> > + DST_TYPE on

Re: [PATCH] PR78991 make __gnu_cxx::__ops constructors explicit

2017-01-09 Thread Jonathan Wakely
On 09/01/17 10:39 +, Kyrill Tkachov wrote: Hi Jonathan, On 06/01/17 12:40, Jonathan Wakely wrote: This solves a problem when using libstdc++ with Clang, due to Clang more eagerly instantiating constexpr function templates during argument deduction. G++ has some shortcuts to avoid this probl

[patch] Fix wrong code for return of small aggregates on big-endian

2017-01-09 Thread Eric Botcazou
Hi, this is a regression present on all active branches for big-endian targets returning small aggregate types in registers under certain circumstances and when optimization is enabled: when the bitfield path of store_field is taken, the function ends up calling store_bit_field to store the val

Re: [PATCH] PR78991 make __gnu_cxx::__ops constructors explicit

2017-01-09 Thread Kyrill Tkachov
Hi Jonathan, On 06/01/17 12:40, Jonathan Wakely wrote: This solves a problem when using libstdc++ with Clang, due to Clang more eagerly instantiating constexpr function templates during argument deduction. G++ has some shortcuts to avoid this problem, but Clang doesn't, and it's not clear that i

Re: [PATCH 6/6][ARM] Implement support for ACLE Coprocessor MCRR and MRRC intrinsics

2017-01-09 Thread Kyrill Tkachov
Hi Andre, On 06/01/17 15:15, Kyrill Tkachov wrote: On 06/01/17 14:58, Andre Vieira (lists) wrote: On 05/01/17 11:11, Kyrill Tkachov wrote: Hi Andre, On 09/11/16 10:12, Andre Vieira (lists) wrote: Hi, This patch implements support for the ARM ACLE Coprocessor MCR and MRC intrinsics. See bel

Re: [PATCH] Fix lto-bootstrap (PR bootstrap/79003).

2017-01-09 Thread Christophe Lyon
Hi, On 7 January 2017 at 12:43, Richard Biener wrote: > On January 6, 2017 8:00:21 PM GMT+01:00, Jakub Jelinek > wrote: >>On Fri, Jan 06, 2017 at 05:58:05PM +0100, Christophe Lyon wrote: >>> > Trying now: >>> > >>> > 2017-01-06 Jakub Jelinek >>> > >>> > * Makefile.in (CFLAGS, CPPFLAG

Re: [PATCH] Outer vs. inner loop ifcvt (PR tree-optimization/78899)

2017-01-09 Thread Richard Biener
On Mon, 9 Jan 2017, Jakub Jelinek wrote: > On Mon, Jan 09, 2017 at 10:08:24AM +0100, Richard Biener wrote: > > > if if-conversion thinks outer loop vectorization might be successful. > > > In this case, loop2 is if-converted. This works well if the outer loop > > > versioning is subsequently succ

Re: [patch,libgomp] Make libgomp Fortran modules multilib-aware

2017-01-09 Thread FX
Given lack of review of this Fortran-specific patch for libgomp, can a Fortran maintainer approve it please? FX Index: libgomp/Makefile.am === --- libgomp/Makefile.am (revision 235843) +++ libgomp/Makefile.am (working copy) @@ -10,7

Re: [PATCH, GCC/testsuite/ARM, ping] Skip optional_mthumb tests if GCC has a default mode

2017-01-09 Thread Thomas Preudhomme
Hi Jeff, On 06/01/17 21:12, Jeff Law wrote: On 01/03/2017 10:19 AM, Thomas Preudhomme wrote: Ping? Best regards, Generic parts seem fine to me. They may be a bit specific to arm right now, but we can generalize as needed in the future. What's too ARM specific about it? The default_mode pro

[PATCH, GCC/LRA, gcc-5/6-branch] Fix PR78617: Fix conflict detection in rematerialization

2017-01-09 Thread Thomas Preudhomme
Hi, Is it ok to backport the fix for PR78617 (incorrect conflict detection in rematerialization) to GCC 5 and GCC 6? The patch applies cleanly and the testsuite showed no regression when performed with the following configurations: - an arm-none-eabi GCC cross-compiler targeting Cortex-M0 and

Re: [PATCH] Outer vs. inner loop ifcvt (PR tree-optimization/78899)

2017-01-09 Thread Jakub Jelinek
On Mon, Jan 09, 2017 at 10:08:24AM +0100, Richard Biener wrote: > > if if-conversion thinks outer loop vectorization might be successful. > > In this case, loop2 is if-converted. This works well if the outer loop > > versioning is subsequently successful, doesn't work at all if it is > > unsuccess

Re: [PR tree-optimization/67955] Exploit PTA in DSE

2017-01-09 Thread Richard Biener
On Sat, Jan 7, 2017 at 7:01 PM, Jeff Law wrote: > On 01/05/2017 01:34 AM, Richard Biener wrote: >> >> On Wed, Jan 4, 2017 at 8:24 PM, Jeff Law wrote: >>> >>> >>> The more I think about this the more I'm sure we need to verify pt.null >>> is >>> not in the points-to set.I've taken the above te

Re: [PR tree-optimization/71691] Fix unswitching in presence of maybe-undef SSA_NAMEs (take 2)

2017-01-09 Thread Richard Biener
On Sat, Jan 7, 2017 at 1:54 PM, Aldy Hernandez wrote: > On 01/04/2017 07:11 AM, Richard Biener wrote: >> >> On Tue, Jan 3, 2017 at 6:36 PM, Aldy Hernandez wrote: >>> >>> On 12/20/2016 09:16 AM, Richard Biener wrote: On Fri, Dec 16, 2016 at 3:41 PM, Aldy Hernandez wrote: >

Re: [PATCH] Fix up vectorizable_condition for comparisons of 2 booleans (PR tree-optimization/78938)

2017-01-09 Thread Richard Biener
On Thu, 5 Jan 2017, Jakub Jelinek wrote: > Hi! > > As mentioned in the PR, while vectorizable_comparison has code to deal > with comparison of 2 booleans by transorming those into one or two > BIT_*_EXPR operations that work equally well on normal vectors as well > as the AVX512 bitset masks, vec

Re: Implement -Wduplicated-branches (PR c/64279) (v3)

2017-01-09 Thread Marek Polacek
On Thu, Jan 05, 2017 at 04:41:28PM +0100, Jakub Jelinek wrote: > On Thu, Jan 05, 2017 at 04:39:40PM +0100, Marek Polacek wrote: > > Coming back to this... > > > > Right, after h0 == h1 is missing && operand_equal_p (thenb, elseb, 0) > > > or so (the exact last operand needs to be figured out). > >

Re: [PATCH] Outer vs. inner loop ifcvt (PR tree-optimization/78899)

2017-01-09 Thread Richard Biener
On Mon, 9 Jan 2017, Jakub Jelinek wrote: > On Sat, Jan 07, 2017 at 12:46:26PM +0100, Richard Biener wrote: > > >The following patch tweaks tree-if-conv.c so that when it wants to > > >version > > >an outer loop, it actually transforms: > > > loop1 > > > loop2 > > >into: > > >

Re: [PATCH] Outer vs. inner loop ifcvt (PR tree-optimization/78899)

2017-01-09 Thread Jakub Jelinek
On Sat, Jan 07, 2017 at 12:46:26PM +0100, Richard Biener wrote: > >The following patch tweaks tree-if-conv.c so that when it wants to > >version > >an outer loop, it actually transforms: > > loop1 > > loop2 > >into: > > if (LOOP_VECTORIZED (1, 3)) > > { >