[C++ Patch] Fix a start_decl location

2019-01-06 Thread Paolo Carlini
Hi, this was supposed to be very straightforward but required a little more. A first draft of the patch exploited DECL_SOURCE_LOCATION but that failed when I tested the case of a function already defined in class: at that point the location of the decl is that of the in class definition itsel

Re: [PATCH] accept all C integer types in function parameters referenced by alloc_align (PR 88363)

2019-01-06 Thread Jakub Jelinek
On Tue, Dec 11, 2018 at 01:36:58PM -0700, Martin Sebor wrote: > --- gcc/testsuite/c-c++-common/attributes-4.c (nonexistent) > +++ gcc/testsuite/c-c++-common/attributes-4.c (working copy) > @@ -0,0 +1,47 @@ ... > +ATTR (alloc_align (1)) void* falloc_align_int128 (__int128_t); ... > +ATTR (alloc_alig

Re: [PATCH] Add a two value VR comparison to two consecutive PHI args optimization (PR tree-optimization/88676, take 2)

2019-01-06 Thread Jakub Jelinek
On Sat, Jan 05, 2019 at 01:17:47PM +0100, Jakub Jelinek wrote: > Ok for trunk if it passes bootstrap/regtest? FYI, it passed bootstrap/regtest on x86_64-linux and i686-linux. Jakub

[PATCH] Add vec_extract{v32qiv16qi,v16hiv8hi,v8siv4si,v4div2di,v8sfv4sf,v4dfv2df}

2019-01-06 Thread Jakub Jelinek
Hi! Looking at the output of builtin-convertvector-1.c (f4), this patch changes the generated code: vcvttpd2dqy (%rdi), %xmm0 - vmovdqa %xmm0, %xmm0 vmovaps %xmm0, (%rsi) - vzeroupper ret The problem is that without vec_extract patterns to extract 128-bit ve

*ping* [patch, fortran] Fix PR 88658, wrong type for MAX1 and friends type when simplifying

2019-01-06 Thread Thomas Koenig
Am 02.01.19 um 15:31 schrieb Thomas Koenig: Hello world, the attached patch fixes the PR, a regression introduced by r265649, by special-casing those intrinsics of the min/max family which need to be special-cased. This is actually something that had been fixed before (PR 14377), but at the tim

[RFC] Add gcc_assert_implies

2019-01-06 Thread Tom de Vries
Hi, Comments welcome. Thanks, - Tom [RFC] Add gcc_assert_implies [ Following up on "Fix bug in simplify_ternary_operation" ( https://gcc.gnu.org/ml/gcc-patches/2017-11/msg01699.html ). ] The C/C++ languages do not support the implication logical operator a -> b, so we typically use '!a || b'.

Re: *ping* [patch, fortran] Fix PR 88658, wrong type for MAX1 and friends type when simplifying

2019-01-06 Thread Janne Blomqvist
On Sun, Jan 6, 2019 at 12:54 PM Thomas Koenig wrote: > Am 02.01.19 um 15:31 schrieb Thomas Koenig: > > Hello world, > > > > the attached patch fixes the PR, a regression introduced by r265649, > > by special-casing those intrinsics of the min/max family which > > need to be special-cased. > > > >

Backport to GCC 8 branch fix for PIC LTO option merging

2019-01-06 Thread Jan Hubicka
Hi, I have backported the following patch to merge PIC/PIE options in LTO wrapper. Bootstrapped/regtested x86_64-linux Honza 2019-01-03 Jan Hubicka Backport from mainline 2018-08-29 Jan Hubicka PR lto/86517 PR lto/88185 * lto-opts.c (lto_write_optio

Add forgotten options to -fprofile-use

2019-01-06 Thread Jan Hubicka
Hi, I have noticed that we now enabled more loop transformations at -O3 but not for -fprofile-use. Like loop transforms we already have, they should be enabled because with profile they should be almost consistent win. I have checked that all the passes check profile except for loop interchange w

Re: [PATCH] Export explicit instantiations for C++17 members of std::string

2019-01-06 Thread Rainer Orth
Hi Jonathan, > The C++17 standard added some new members to std::basic_string, which > were not previously instantiated in the library. This meant that the > extern template declarations had to be disabled for C++17 mode. With > this patch the new members are instantiated in the library and so the

Re: [PATCH] Export explicit instantiations for C++17 members of std::string

2019-01-06 Thread Jonathan Wakely
On 06/01/19 17:59 +0100, Rainer Orth wrote: Hi Jonathan, The C++17 standard added some new members to std::basic_string, which were not previously instantiated in the library. This meant that the extern template declarations had to be disabled for C++17 mode. With this patch the new members are

Revert inliner badness change from 2017

2019-01-06 Thread Jan Hubicka
Hi, the PR tree-opt/86020 track regression from patch I committed in 2017-05-22. I believe I did so accidentally becuase the patch does not make much sense to me - the badness is documented as: /* When profile is available. Compute badness as: time_saved * caller_count

Re: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87626

2019-01-06 Thread Martin Liška
On 11/19/18 11:38 AM, Lokesh Janghel wrote: Thank you Jakub, I update the patch with your comments and tested it. Please let me know your thoughts/suggestions. On Mon, Nov 19, 2018 at 4:00 PM Lokesh Janghel wrote: Thank you Jakub, I update the patch with your comments and tested it. Please le

Re: [PATCH] Export explicit instantiations for C++17 members of std::string

2019-01-06 Thread Jonathan Wakely
On 06/01/19 17:18 +, Jonathan Wakely wrote: On 06/01/19 17:59 +0100, Rainer Orth wrote: Hi Jonathan, The C++17 standard added some new members to std::basic_string, which were not previously instantiated in the library. This meant that the extern template declarations had to be disabled fo

Re: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87626

2019-01-06 Thread Jakub Jelinek
On Sun, Jan 06, 2019 at 06:25:35PM +0100, Martin Liška wrote: > The patch causes failures in libffi: > https://github.com/libffi/libffi/issues/463 > > Can you please take a look? Perhaps PR88521? A patch has been posted for that and even approved: https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01

[PATCH] PR libstdc++/87431 fix regression introduced by r264574

2019-01-06 Thread Jonathan Wakely
The previous patch for PR 87431 assumed that initialing a scalar type could not throw, but it can obtain its value via a conversion operator, which could throw. This meant the variant could get into a valueless state, but the valueless_by_exception() member function would always return false. Thi

Re: [PATCH] Define new filesystem::__file_clock type

2019-01-06 Thread Jonathan Wakely
On 05/01/19 20:03 +, Jonathan Wakely wrote: In C++17 the clock used for filesystem::file_time_type is unspecified, allowing it to be chrono::system_clock. The C++2a draft requires it to be a distinct type, with additional member functions to convert to/from other clocks (either the system clo

[patch, fortran] Implement IS_CONTINUOUS intrinsic

2019-01-06 Thread Thomas Koenig
Hello world, the attached patch builds on a long history: Tobias Burnus created an original version in 2012. Harald Anlauf recently picked it up, (see https://gcc.gnu.org/ml/fortran/2019-01/msg00012.html). polished it and made it ready for gcc-9. This already worked quite well. I added a bit o

[PATCH 1/2] PR libstdc++/86756 add std::filesystem::path to libstdc++.so

2019-01-06 Thread Jonathan Wakely
Move the C++17 std::filesystem::path definitions from the libstdc++fs.a archive to the main libstdc++ library. The path classes do not depend on any OS functions, so can be defined unconditionally on all targets (rather than depending on --enable-libstdcxx-filesystem-ts). The tests should pass on

Re: [PATCH] genattrtab bit-rot, and if_then_else in values

2019-01-06 Thread Alan Modra
On Fri, Jan 04, 2019 at 12:18:03PM +, Richard Sandiford wrote: > Alan Modra writes: > > On Thu, Jan 03, 2019 at 07:03:59PM +, Richard Sandiford wrote: > >> Richard Sandiford writes: > >> > This still seems risky and isn't what the name and function comment > > > > OK, how about this delta

[PATCH 2/2] PR libstdc++/86756 Move rest of std::filesystem to libstdc++.so

2019-01-06 Thread Jonathan Wakely
Move std::filesystem directory iterators and operations from libstdc++fs.a to main libstdc++ library. These components have many dependencies on OS support, which is not available on all targets. Some additional autoconf checks and conditional compilation is needed to ensure the files will build f

Re: [patch, fortran] Implement IS_CONTINUOUS intrinsic

2019-01-06 Thread Steve Kargl
On Sun, Jan 06, 2019 at 11:04:12PM +0100, Thomas Koenig wrote: > > the attached patch builds on a long history: Tobias Burnus created > an original version in 2012. Harald Anlauf recently picked it up, > (see https://gcc.gnu.org/ml/fortran/2019-01/msg00012.html). > polished it and made it ready f

New Spanish PO file for 'gcc' (version 8.2.0)

2019-01-06 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the Spanish team of translators. The file is available at: https://translationproject.org/latest/gcc/es.po (This file, 'gcc-8.2.0.es.po', has jus

[RS6000] PR88614, output_operand: invalid %z value

2019-01-06 Thread Alan Modra
The direct cause of this PR is the fact that tls_gdld_nomark didn't handle indirect calls. Adding the missing support revealed that most indirect calls were being optimised back to direct calls anyway, due to tls_gdld_nomark not checking any of the parallel elements except the first (plus the extr

Re: [PATCH] restore CFString handling in attribute format (PR 88638)

2019-01-06 Thread Martin Sebor
Attached is an updated patch with the wording change to the manual discussed below and rebased on the top of today's trunk. Martin PS Thanks for the additional info, Iain. On 1/5/19 10:53 AM, Iain Sandoe wrote: On 5 Jan 2019, at 17:39, Martin Sebor wrote: On 1/5/19 3:31 AM, Iain Sandoe wro

Remove overall growth from badness metrics

2019-01-06 Thread Jan Hubicka
Hi, this patch removes overall growth from badness metrics. This code was added at a time inliner was purely function size based to give a hint that inlining more different functions into all callers is better than inlining one called very many times. With profile we now have more fine grained in

Handle builtin_expect better in ipa-fnsummary

2019-01-06 Thread Jan Hubicka
Hi, while analyzing Firefox I noticed that it uses builtin_expect quite extensively and this sometimes causes ipa-predicates to be computed very conservatively. There are more possible improvements, but I will leave it for stage1. This handles the common case where builtin_expect is applied to par

Re: [PATCH, C++,rebased] Fix PR c++/88261

2019-01-06 Thread Martin Sebor
On 1/5/19 9:04 AM, Bernd Edlinger wrote: On 1/4/19 10:22 PM, Jason Merrill wrote: Hmm, I'm uncomfortable with starting to pass in the decl just for the sake of deciding whether this diagnostic should be a pedwarn or error. In general, because of copy elision, we can't know at this point what w

[RS6000] Emit inline PLT when -mno-tls-markers

2019-01-06 Thread Alan Modra
I restricted output of inline PLT sequences to when TLS marker relocs were also available, which is obviously true when just considering assembler support. However, there is a -mno-tls-markers option to disable emitting the marker relocs. Currently that option also disables inline PLT sequences,

[RS6000] Implement -mno-pltseq

2019-01-06 Thread Alan Modra
Since the last patch untangled inline PLT and TLS marker support there now isn't a way of requesting the older long call sequences on a compiler built with inline PLT support. This patch adds support for a new -mno-pltseq option. Bootstrapped etc. powerpc64le-linux and powerpc64-linux. OK?

[PATCH, libgfortran, committed] Make GFORTRAN_9 symbol node depend on GFORTRAN_8

2019-01-06 Thread Janne Blomqvist
At some point when the GFORTRAN_9 node was added it was forgotten to make it depend on GFORTRAN_8. This patch fixes this. Committed as obvious. Index: ChangeLog === --- ChangeLog (revision 267620) +++ ChangeLog (working copy) @@

Re: [Patch] Bug 88521 - gcc 9.0 from r266355 miscompile x265 for mingw-w64 target

2019-01-06 Thread Martin Liška
On 12/29/18 2:30 AM, JonY wrote: > On 12/26/18 1:10 PM, Lokesh Janghel wrote: >> Hi, >> >> Here is the patch for the issue. >> Please let me know your thoughts. >> >> On Fri, Dec 21, 2018 at 3:16 PM JonY <10wa...@gmail.com> wrote: >>> >>> On 12/21/18 9:08 AM, Uros Bizjak wrote: On Thu, Dec 20,