Re: [PATCH] Fix reg-stack error-recovery on pr84828 testcase (PR target/84828)

2018-04-24 Thread Richard Biener
On Mon, 23 Apr 2018, Jakub Jelinek wrote: > Hi! > > My earlier attempts to replace bogus inline asm with something that > reg-stack.c would be happy about failed, so this is just a quick hack to > help the error-recovery on the pr84828.C testcase with -m32. > > I bet bunch of other spots will ne

Re: [PATCH] Update nvptx newlib installation requirements

2018-04-24 Thread Richard Biener
On Mon, Apr 23, 2018 at 4:22 PM, Cesar Philippidis wrote: > The nvptx port has been merged into newlib, so the Mentor Embedded > github repository is no longer needed. While we're still maintaining the > github mirror, given the stability of the nvptx port, going forward I > expect all of the deve

[PATCH] Fix PR85491

2018-04-24 Thread Richard Biener
The following patch restricts the previous fix for PR84037 to the case of strided loads with non-constant step to avoid regression nbench LU decomposition test on Haswell where the change causes us to use AVX128 instead of AVX256 in the two critical loops. Bootstrapped and tested on x86_64-unknow

[PATCH] Fix powerpc64le ICE in replace_swapped_load_constant (PR target/85503)

2018-04-24 Thread Jakub Jelinek
Hi! The following patch adjusts the const_load_sequence_p predicate to match what the replace_swapped_load_constant function guarded by it expects. On the testcase base is a CONSTANT_POOL_ADDRESS_P SYMBOL_REF, but it contains an address of a static data member + 8, so not a CONST_VECTOR nor a CON

[Committed] Fix PR85478

2018-04-24 Thread Andreas Krebbel
Bootstrapped and regression tested on x86_64, ppc64, and s390x. Pre-approved by Richard in the PR. -Andreas- gcc/ChangeLog: 2018-04-24 Andreas Krebbel PR tree-optimization/85478 * tree-vect-loop.c (vect_analyze_loop_2): Do not call vect_grouped_store_supported for si

Re: [PATCH 0/2] Require that constraints are used to reference global regs

2018-04-24 Thread Michael Matz
Hi, On Tue, 24 Apr 2018, Alexander Monakov wrote: > On Mon, 23 Apr 2018, Michael Matz wrote: > > Sooo, hmm, I don't know ;-) We could try doing a roll backwards and > > demand explicit dependencies from asms with unknown effects on the few > > unknown users, though the timing really makes me n

[PATCH] Fix UB in ix86_expand_vector_init_one_var (PR target/85508)

2018-04-24 Thread Jakub Jelinek
Hi! WHen INTVAL (x) is negative, this invokes UB, because left shift of negative value is undefined in C++. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2018-04-24 Jakub Jelinek PR target/85508 * config/i386/i386.c (ix86_expand_vector_ini

Re: [PATCH 0/2] Require that constraints are used to reference global regs

2018-04-24 Thread Alexander Monakov
On Tue, 24 Apr 2018, Michael Matz wrote: > Sure but even for that we need to decide if we want to go that or the > opposite way, and that's not easy when a deadline is lurking behind you. I am surprised there is any question. Even gcc-3.4 optimizes reg vars over asms, on a testcase not unlike the

Re: [PATCH] Fix UB in ix86_expand_vector_init_one_var (PR target/85508)

2018-04-24 Thread Richard Biener
On Tue, Apr 24, 2018 at 2:53 PM, Jakub Jelinek wrote: > Hi! > > WHen INTVAL (x) is negative, this invokes UB, because left shift of negative > value is undefined in C++. > > Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for > trunk? OK. Richard. > 2018-04-24 Jakub Jel

Re: [PATCH 0/2] Require that constraints are used to reference global regs

2018-04-24 Thread Michael Matz
Hi, On Tue, 24 Apr 2018, Alexander Monakov wrote: > > Sure but even for that we need to decide if we want to go that or the > > opposite way, and that's not easy when a deadline is lurking behind > > you. > > I am surprised there is any question. Even gcc-3.4 optimizes reg vars > over asms, o

Re: [PATCH] Fix PR85491

2018-04-24 Thread Jakub Jelinek
On Tue, Apr 24, 2018 at 09:42:03AM +0200, Richard Biener wrote: > > The following patch restricts the previous fix for PR84037 to the case > of strided loads with non-constant step to avoid regression nbench > LU decomposition test on Haswell where the change causes us to use > AVX128 instead of A

Re: RFC: C++ PATCH for c++/69763, making C++ alignof match C _Alignof

2018-04-24 Thread Jakub Jelinek
On Mon, Apr 23, 2018 at 04:49:24PM -0400, Jason Merrill wrote: > On Tue, Apr 17, 2018 at 8:50 AM, Joseph Myers wrote: > > On Tue, 10 Apr 2018, Jason Merrill wrote: > > > >> But really this is beside the point: the x86 ABI says that the > >> alignment of double is 4, so alignof(double) should be 4

[PATCH, rs6000] Improve Documentation of Built-In Functions Part 1

2018-04-24 Thread Kelvin Nilsen
This is the first of several patches to address shortcomings in existing documentation of PowerPC built-in functions.  The focus of this particular patch is to improve documentation of low-level built-in functions that do not require special include headers. A summary of this patch follows: 1. Ch

Re: [PATCH AArch64]Fix test failure for pr84682-2.c

2018-04-24 Thread Bin.Cheng
On Thu, Mar 22, 2018 at 11:07 AM, Bin.Cheng wrote: > On Sat, Mar 17, 2018 at 8:54 AM, Richard Sandiford > wrote: >> Kyrill Tkachov writes: >>> Hi Bin, >>> >>> On 16/03/18 11:42, Bin Cheng wrote: Hi, This simple patch fixes test case failure for pr84682-2.c by returning false on w

Re: GCC 7 backports

2018-04-24 Thread Martin Liška
Hi. I'm sending GCC 7 branch backports I've just tested and regbootstrapped. I'm going to install that. Thanks, Martin >From 3f14f2b8c441f2919a026bd86a5419f4fbdf33f5 Mon Sep 17 00:00:00 2001 From: marxin Date: Tue, 13 Mar 2018 08:20:27 + Subject: [PATCH 1/9] Backport r258480 gcc/ChangeLog:

Re: [PATCH 0/2] Require that constraints are used to reference global regs

2018-04-24 Thread Alexander Monakov
On Tue, 24 Apr 2018, Michael Matz wrote: > Well, documentation is both: a description and specification. If we > change the documentation now we might not be in the position anymore to > change behaviour and docu back because people might in the meanwhile rely > on the specification. Which is

[PATCH][AArch64] PR target/85512: Tighten SIMD right shift immediate constraints

2018-04-24 Thread Kyrill Tkachov
Hi all, In this testcase it is possible to generate an invalid SISD shift of zero: Error: immediate value out of range 1 to 64 at operand 3 -- `sshr v9.2s,v0.2s,0' The SSHR and USHR instructions require a shift from 1 up to the element size. However our constraints on the scalar shifts that gene

Re: [PATCH] Fix powerpc64le ICE in replace_swapped_load_constant (PR target/85503)

2018-04-24 Thread Segher Boessenkool
Hi Jakub, On Tue, Apr 24, 2018 at 09:52:29AM +0200, Jakub Jelinek wrote: > The following patch adjusts the const_load_sequence_p predicate to match > what the replace_swapped_load_constant function guarded by it expects. > > On the testcase base is a CONSTANT_POOL_ADDRESS_P SYMBOL_REF, but it > c

Re: [PATCH 0/2] Require that constraints are used to reference global regs

2018-04-24 Thread Michael Matz
Hi, On Tue, 24 Apr 2018, Alexander Monakov wrote: > On Tue, 24 Apr 2018, Michael Matz wrote: > > Well, documentation is both: a description and specification. If we > > change the documentation now we might not be in the position anymore to > > change behaviour and docu back because people mig

Re: RFC: C++ PATCH for c++/69763, making C++ alignof match C _Alignof

2018-04-24 Thread Jason Merrill
On Tue, Apr 24, 2018 at 9:19 AM, Jakub Jelinek wrote: > On Mon, Apr 23, 2018 at 04:49:24PM -0400, Jason Merrill wrote: >> On Tue, Apr 17, 2018 at 8:50 AM, Joseph Myers >> wrote: >> > On Tue, 10 Apr 2018, Jason Merrill wrote: >> > >> >> But really this is beside the point: the x86 ABI says that t

Re: [PATCH] Update nvptx newlib installation requirements

2018-04-24 Thread Cesar Philippidis
On 04/24/2018 12:10 AM, Richard Biener wrote: > That's great news! Note that we usually keep copies of build dependences at > ftp://gcc.gnu.org/pub/gcc/infrastructure/ and there's currently no nvptx > newlib > variant there. Maybe you can prepare a tarball that's ready to plug into gcc > source

Re: [PATCH][AArch64] PR target/85512: Tighten SIMD right shift immediate constraints

2018-04-24 Thread James Greenhalgh
On Tue, Apr 24, 2018 at 04:38:31PM +0100, Kyrill Tkachov wrote: > Hi all, > > In this testcase it is possible to generate an invalid SISD shift of zero: > Error: immediate value out of range 1 to 64 at operand 3 -- `sshr > v9.2s,v0.2s,0' > > The SSHR and USHR instructions require a shift from 1

RE: [PATCH 0/5] x86/CET: Remove the -mcet command-lint option

2018-04-24 Thread Tsimbalist, Igor V
> -Original Message- > From: H.J. Lu [mailto:hjl.to...@gmail.com] > Sent: Sunday, April 22, 2018 3:48 PM > To: gcc-patches@gcc.gnu.org > Cc: Tsimbalist, Igor V ; Uros Bizjak > > Subject: [PATCH 0/5] x86/CET: Remove the -mcet command-lint option > > With revision 259496: > > commit b13840

Re: [PATCH][AArch64] PR target/85512: Tighten SIMD right shift immediate constraints

2018-04-24 Thread Kyrill Tkachov
On 24/04/18 17:09, James Greenhalgh wrote: On Tue, Apr 24, 2018 at 04:38:31PM +0100, Kyrill Tkachov wrote: Hi all, In this testcase it is possible to generate an invalid SISD shift of zero: Error: immediate value out of range 1 to 64 at operand 3 -- `sshr v9.2s,v0.2s,0' The SSHR and USHR inst

Re: RFC: C++ PATCH for c++/69763, making C++ alignof match C _Alignof

2018-04-24 Thread Jakub Jelinek
On Tue, Apr 24, 2018 at 11:55:44AM -0400, Jason Merrill wrote: > >> Tested x86_64-pc-linux-gnu, applying to trunk. > > > > This regressed: > > +FAIL: c-c++-common/attr-aligned-1.c -std=c++11 (test for excess errors) > > +UNRESOLVED: c-c++-common/attr-aligned-1.c -std=c++11 compilation failed > >

Re: [PATCH] Remove __builtin_ia32_readeflags_u32/__builtin_ia32_writeeflags_u32 builtins for TARGET_64BIT (PR target/85511)

2018-04-24 Thread Uros Bizjak
On Tue, Apr 24, 2018 at 2:51 PM, Jakub Jelinek wrote: > Hi! > > These two *_u32 builtins are defined also in -m64 mode, but share the > builtin codes with the *_u64 ones and the expansion of them uses word_mode. > > The following patch just removes them, ia32intrin.h uses the u32 suffixed > ones o

Re: [PATCH] [PR c++/85437] accept static_casted ptrmem in constexpr

2018-04-24 Thread Nathan Sidwell
On 04/23/2018 01:19 PM, Jason Merrill wrote: On Fri, Apr 20, 2018, 12:52 PM Nathan Sidwell I have to change convert_ptrmem to always expand the constant (into an OFFSET_TYPE) so that initializer_constant_valid_p (used by reduced_constant_expression_p) doesn't get confused by a z

Re: [PATCH] [PR c++/85437] accept static_casted ptrmem in constexpr

2018-04-24 Thread Nathan Sidwell
Now with added patchy goodness. On 04/24/2018 12:31 PM, Nathan Sidwell wrote: On 04/23/2018 01:19 PM, Jason Merrill wrote: On Fri, Apr 20, 2018, 12:52 PM Nathan Sidwell     I have to change convert_ptrmem to always     expand the constant (into an OFFSET_TYPE) so that     initializer_constant

Re: [PATCH 0/2] Require that constraints are used to reference global regs

2018-04-24 Thread Alexander Monakov
On Tue, 24 Apr 2018, Michael Matz wrote: > What is lost here (it wasn't explicit before, but is the case and must > continue to work) is that function calls and returns count as needing the > observable value in the specified register (function calls also count as > setters of them). I think th

Re: [PATCH][AArch64] PR target/85512: Tighten SIMD right shift immediate constraints

2018-04-24 Thread Kyrill Tkachov
On 24/04/18 17:41, Jakub Jelinek wrote: On Tue, Apr 24, 2018 at 05:22:15PM +0100, Kyrill Tkachov wrote: I've cleaned up the testcase a bit to leave only the function that generates the invalid instruction, making it shorter. Jakub, is the patch ok to go in for GCC 8 from your perspective? Th

[PATCH 2/2] x86: Update __CET__ check

2018-04-24 Thread H.J. Lu
__CET__ has been changed by revision 259522: commit d59cfa9a4064339cf2bd2da828c4c133f13e57f0 Author: hjl Date: Fri Apr 20 13:30:13 2018 + Define __CET__ for -fcf-protection and remove -mibt to (__CET__ & 1) != 0: -fcf-protection=branch or -fcf-protection=full (__CET__ & 2) !=

[PATCH 1/2] x86/CET: Add -fcf-protection to STAGE4_CFLAGS

2018-04-24 Thread H.J. Lu
Since profiledbootstrap uses STAGEfeedback_CFLAGS = $(STAGE4_CFLAGS) -fprofile-use add STAGE4_CFLAGS += -fcf-protection -mcet to bootstrap-cet.mk to support profiledbootstrap with CET. PR bootstrap/85490 * bootstrap-cet.mk (STAGE4_CFLAGS): New. --- config/bootstrap-cet.mk | 3

[PATCH] Remove __builtin_ia32_readeflags_u32/__builtin_ia32_writeeflags_u32 builtins for TARGET_64BIT (PR target/85511)

2018-04-24 Thread Jakub Jelinek
Hi! These two *_u32 builtins are defined also in -m64 mode, but share the builtin codes with the *_u64 ones and the expansion of them uses word_mode. The following patch just removes them, ia32intrin.h uses the u32 suffixed ones only when __x86_64__ is not defined, bootstrapped/regtested on x86_6

Re: [PATCH] PR 85075, Fix PowerPC __float182/__ibm128 types and mangling

2018-04-24 Thread Joseph Myers
On Mon, 16 Apr 2018, Segher Boessenkool wrote: > > The manglings that are now used are: > > > > For -mabi=ieeelongdouble: > > > > __float128 "u10__float128" > > __ibm128"u8__ibm128" > > long double "u9__ieee128" > > > > For -mabi=ibmlongdouble: > > > > __float1

Re: [PATCH, rs6000] Improve Documentation of Built-In Functions Part 1

2018-04-24 Thread Kelvin Nilsen
I'm updating this patch to make two improvements to what was submitted earlier today: 1. Correct the description of the htm-no-suspend CPU feature. 2. Add a comment to clarify that the builtin_divde and builtin_divdeu built-in functions require 64-bit targets. Everything else is the same as s

Re: [PATCH] Warn for ignored ASM labels on typdef declarations

2018-04-24 Thread Joseph Myers
This patch is missing testcases, which need to be added to the testsuite for any such new feature, and when submitting a patch you should say explicitly in what configuration it was bootstrapped and tested without regressions. Also, it's always incorrect to use -Wpedantic as the option control

Re: [PATCH][AArch64] PR target/85512: Tighten SIMD right shift immediate constraints

2018-04-24 Thread Jakub Jelinek
On Tue, Apr 24, 2018 at 05:22:15PM +0100, Kyrill Tkachov wrote: > I've cleaned up the testcase a bit to leave only the function that generates > the invalid instruction, > making it shorter. > > Jakub, is the patch ok to go in for GCC 8 from your perspective? The PR is marked P1 now, so sure, pl

Re: [PATCH] [PR c++/85437] accept static_casted ptrmem in constexpr

2018-04-24 Thread Jason Merrill
On Tue, Apr 24, 2018 at 12:31 PM, Nathan Sidwell wrote: > On 04/23/2018 01:19 PM, Jason Merrill wrote: >> >> On Fri, Apr 20, 2018, 12:52 PM Nathan Sidwell > >> I have to change convert_ptrmem to always >> expand the constant (into an OFFSET_TYPE) so that >> initializer_constant_valid_

Re: [PATCH, rs6000] Improve Documentation of Built-In Functions Part 1

2018-04-24 Thread Segher Boessenkool
Hi! On Tue, Apr 24, 2018 at 02:25:58PM -0500, Kelvin Nilsen wrote: > > 4. Remove descriptions of built-in function that do not belong in this > > section because the > >    built-in functions are generic (not specific to PowerPC): > > __builtin_fabsq, > >    __builtin_copysignq, __builtin_infq, __

RE: [PATCH 1/2] x86/CET: Add -fcf-protection to STAGE4_CFLAGS

2018-04-24 Thread Tsimbalist, Igor V
> -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- > ow...@gcc.gnu.org] On Behalf Of H.J. Lu > Sent: Tuesday, April 24, 2018 7:08 PM > To: gcc-patches@gcc.gnu.org > Cc: Tsimbalist, Igor V ; Uros Bizjak > > Subject: [PATCH 1/2] x86/CET: Add -fcf-protection to ST

RE: [PATCH 2/2] x86: Update __CET__ check

2018-04-24 Thread Tsimbalist, Igor V
> -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- > ow...@gcc.gnu.org] On Behalf Of H.J. Lu > Sent: Tuesday, April 24, 2018 7:08 PM > To: gcc-patches@gcc.gnu.org > Cc: Tsimbalist, Igor V ; Uros Bizjak > > Subject: [PATCH 2/2] x86: Update __CET__ check > > __C

[PATCH] rs6000: Fix __powikf2 and __abskf2 spelling

2018-04-24 Thread Segher Boessenkool
Both of these libfuncs had a "tkf" misspelling, which caused gcc.target/powerpc/pr85456.c to fail (there is no test for __abskf2). Committing to trunk. Segher 2018-04-24 Segher Boessenkool * config/rs6000/rs6000.c (init_float128_ieee): Fix spelling mistakes in __abskf2 and

[Committed] PR fortran/85520 -- check for negative length

2018-04-24 Thread Steve Kargl
I've committed the attached patch after checking that it does not cause any regression and that it fixes the problem in the PR. The patch checks for a negative string length, and resets it to 0 if it is < 0. 2018-04-24 Steven G. Kargl PR fortran/85520 * decl.c (gfc_match_char_