Re: [PATCH], PowerPC ISA 3.0 defaults + IEEE 128-bit floating point test

2017-01-19 Thread Segher Boessenkool
On Wed, Jan 18, 2017 at 08:35:05PM -0500, Michael Meissner wrote: > This patch changes the default options enabled for the PowerPC -mcpu=power9 > option to include the undocumented -mpower9-minmax option. This option > enables > MIN/MAX instructions that do not require -ffast-math or -fhonor-nans

RE: [patch mips/gcc] add build-time and runtime options to disable or set madd.fmt type

2017-01-19 Thread Matthew Fortune
Matthew Fortune writes: > I've rewritten/simplified this patch as it provides far too much control > to end users who will undoubtedly shoot themselves in the foot so to > speak. The option I intend to support is simply --with-madd4 --without-madd4 > and -mmadd4 -mno-madd4. This is a simple enable

Re: [RS6000] PR79144, cmpstrnsi optimization breaks glibc

2017-01-19 Thread Segher Boessenkool
On Thu, Jan 19, 2017 at 10:44:27PM +1030, Alan Modra wrote: > glibc compiled with current gcc-7 fails one test due to strcmp and > strncmp appearing in the PLT. This is because the inline expansion of > those functions falls back to a function call, but not using the asm > name for the call. Fixe

Re: [RS6000] Don't expand strcmp and strncmp inline when -Os

2017-01-19 Thread Segher Boessenkool
On Thu, Jan 19, 2017 at 10:47:12PM +1030, Alan Modra wrote: > --- a/gcc/config/rs6000/rs6000.md > +++ b/gcc/config/rs6000/rs6000.md > @@ -9102,7 +9102,8 @@ (define_expand "cmpstrnsi" > (use (match_operand:SI 4))])] >"TARGET_CMPB && (BYTES_BIG_ENDIAN || TARGET_LDBRX)" > { > - if (e

[PATCH, pr63256] update powerpc dg options

2017-01-19 Thread Aaron Sawdey
SMS does process the loop in sms-8.c on powerpc now so I have updated the options to reflect that. Test now passes on powerpc -m64/-m32/-m32 -mpowerpc64. Ok for trunk? testsuite/ChangeLog 2017-01-19  Aaron Sawdey   * gcc.dg/sms-8.c: Update options for powerpc*-*-*. -- Aaron Sawdey, Ph.D.

[PATCH] rs6000: Fix the new SSP guard configuration code (PR79140)

2017-01-19 Thread Segher Boessenkool
I foolishly tested this with r241087 reverted. After that revision default_stack_protect_guard is no longer called if the compiler defaults to using the TLS guard, which of course is the wrong thing to do if there is some other way to enable the global guard. This fixes it. Is this okay for trun

Re: [PATCH] PR67085 move comparison functions in heap operations

2017-01-19 Thread Jonathan Wakely
On 19/01/17 20:24 +, Jonathan Wakely wrote: On 19/01/17 18:50 +, Jonathan Wakely wrote: On 19/01/17 18:28 +, Jonathan Wakely wrote: @@ -397,7 +401,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION while (__last - __first > 1) { --__last; - std::__pop_heap(__first,

[PATCH,rs6000] Correct argument and result types for binary floating point built-in functions

2017-01-19 Thread Kelvin Nilsen
This patch corrects several errors in a patch originally committed on 2016-08-10. The following corrections are required to maintain compliance with "Power Architecture 64-Bit ELF V2 ABI Specification", also known as "OpenPOWER ABI for Linux Supplement". vector unsigned long long vec_extract_e

Re: [PATCH] Introduce --with-gcc-major-version-only configure option (take 2)

2017-01-19 Thread Matthias Klose
On 19.01.2017 13:26, Jakub Jelinek wrote: > On Thu, Jan 19, 2017 at 01:13:14PM +0100, Franz Sirl wrote: >> Am 2017-01-12 um 21:16 schrieb Jakub Jelinek: >>> libmpx/ >>> * configure.ac: Add GCC_BASE_VER. >>> * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to >>> get ve

Re: [PATCH] PR69699 document why __GLIBCXX__ macro is useless

2017-01-19 Thread Jonathan Wakely
On 17/01/17 15:36 +, Jonathan Wakely wrote: The closest thing we have to a version macro in libstdc++ is __GLIBCXX__ which holds the valid of gcc/DATESTAMP from the source tree. That's useless for version checking or feature testing because snapshots have arbitrary values and there's no total

Re: Re: Fortran, committed: Forall-with-temporary problems(pr 50069 and pr 55086).

2017-01-19 Thread Louis Krupp
I was able to reproduce this on my x86 box by doing "make -k check". Apparently, "make check-fortran" wasn't enough to catch all of the consequences of changing gcc/fortran/lang.opt. The problem was the help text associated with the -ftest-forall-temp option; it needed to end with a period, and

[PATCH] PR64903 fix number of predicate tests in std::is_partitioned

2017-01-19 Thread Jonathan Wakely
PR libstdc++/64903 * include/bits/stl_algo.h (is_partioned): Don't retest the partition point. * testsuite/25_algorithms/is_partitioned/2.cc: New test. Tested powerpc64le-linux, committed to trunk. commit 5e9b690d27ac3cecf138bac904606f5728ca452f Author: Jonathan W

[PATCH] PR79156 fix std::__enable_shared_from_this extension

2017-01-19 Thread Jonathan Wakely
A couple of silly bugs in the non-standard __enable_shared_from_this extension. PR libstdc++/79156 * include/bits/shared_ptr_base.h (__enable_shared_from_this_base): Fix return type. (__enable_shared_from_this): Declare __shared_ptr as a friend. * testsuite

Re: [PATCH] PR64903 fix number of predicate tests in std::is_partitioned

2017-01-19 Thread Tim Song
On Thu, Jan 19, 2017 at 6:33 PM, Jonathan Wakely wrote: > std::advance(__first, 1); Why not just ++__first;?

Re: [PATCH] PR64903 fix number of predicate tests in std::is_partitioned

2017-01-19 Thread Jonathan Wakely
On 19/01/17 19:08 -0500, Tim Song wrote: On Thu, Jan 19, 2017 at 6:33 PM, Jonathan Wakely wrote: std::advance(__first, 1); Why not just ++__first;? Good question. I have no idea why I did it like that!

Re: [PATCH] rs6000: Fix the new SSP guard configuration code (PR79140)

2017-01-19 Thread David Edelsohn
On Thu, Jan 19, 2017 at 6:00 PM, Segher Boessenkool wrote: > I foolishly tested this with r241087 reverted. After that revision > default_stack_protect_guard is no longer called if the compiler defaults > to using the TLS guard, which of course is the wrong thing to do if > there is some other wa

Re: [PATCH] PR64903 fix number of predicate tests in std::is_partitioned

2017-01-19 Thread Jonathan Wakely
On 20/01/17 00:11 +, Jonathan Wakely wrote: On 19/01/17 19:08 -0500, Tim Song wrote: On Thu, Jan 19, 2017 at 6:33 PM, Jonathan Wakely wrote: std::advance(__first, 1); Why not just ++__first;? Good question. I have no idea why I did it like that! Fixed like so. Committed to trunk. co

[PATCH] Fix PR c++/64382

2017-01-19 Thread Adam Butcher
Hi Jason, I've reopened 64382 and unhooked it from 61636 (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64382#c6). This is a rebase of my original patch for 64382 from April 2015 against latest master. My query about caching parsing_default_capturing_generic_lambda_in_template() still applies. I

RE: [patch mips/gcc] add build-time and runtime options to disable or set madd.fmt type

2017-01-19 Thread Moore, Catherine
> -Original Message- > From: Matthew Fortune [mailto:matthew.fort...@imgtec.com] > Sent: Thursday, January 19, 2017 5:30 PM > To: Moore, Catherine > Cc: 'Aurelien Jarno' ; 'Richard Sandiford' > ; Loosemore, Sandra > ; Yunqiang Su > ; 'gcc-patches' > Subject: RE: [patch mips/gcc] add bui

[PATCH] PR69321 fix any_cast(any*) for non-copyable T

2017-01-19 Thread Jonathan Wakely
any_cast must not trigger the instantiation of the manager function for types which don't meet the requirements for being stored in an any object. PR libstdc++/69321 * include/experimental/any (__any_caster): Avoid instantiating manager function for types that can't be sto

libgo patch committed: Fix build on s390x GNU/Linux

2017-01-19 Thread Ian Lance Taylor
This patch to libgo fixes the build on s390x GNU/Linux by ignoring an s390x-specific file that only works in conjunction with s390x assembly code that has not (yet) been ported to gccgo. Bootstrapped and ran Go tests on x86_64-pc-linux-gnu, which admittedly proves little. Verified that the right f

[PATCH] PR72792 PR72793 relax requirements on rebind members

2017-01-19 Thread Jonathan Wakely
I misread the specifications for pointer_traits::rebind and allocator_traits::rebind_alloc and was requiring them to be valid for any specialization of the class templates. In fact they're only needed if instantiated. This fixes the problem. PR libstdc++/72792 PR libstdc++/72793

Re: [1/5][AArch64] Return address protection on AArch64

2017-01-19 Thread Andrew Pinski
On Fri, Jan 6, 2017 at 3:47 AM, Jiong Wang wrote: > On 11/11/16 18:22, Jiong Wang wrote: >> >> As described in the cover letter, this patch implements return address >> signing >> for AArch64, it's controlled by the new option: >> >>-msign-return-address=[none | non-leaf | all] >> >> "none" me

[PATCH] rs6000: Small varargs for BE SVR4 (PR61729, PR77850)

2017-01-19 Thread Segher Boessenkool
The varargs code for SVR4 puts all (integer) arguments in 4-byte slots. When it then reads an item from there as something not a multiple of 4 bytes, it needs to adjust the address if big endian. We didn't yet do that. This fixes the g++.dg/abi/scoped1.C, gcc.dg/compat/scalar-by-value-4, and gcc.

C++ PATCH for C++17 class deduction issues US 19/20

2017-01-19 Thread Jason Merrill
wg21.link/p0512r0 proposes resolutions for some issues with class template argument deduction raised in national body comments against the C++17 draft; the paper hasn't been accepted yet, but the proposals seem sensible, so I'm implementing them here. The first makes deduction guides take priority

<    1   2