Re: match.pd: Three new patterns

2015-06-23 Thread Richard Biener
On Mon, 22 Jun 2015, Marek Polacek wrote: > On Fri, Jun 19, 2015 at 05:51:53PM +0200, Marc Glisse wrote: > > On Fri, 19 Jun 2015, Marek Polacek wrote: > > > > >+/* x + y - (x | y) -> x & y */ > > >+(simplify > > >+ (minus (plus @0 @1) (bit_ior @0 @1)) > > >+ (if (!TYPE_OVERFLOW_SANITIZED (type) &

Re: match.pd: Three new patterns

2015-06-23 Thread Marek Polacek
On Tue, Jun 23, 2015 at 09:56:33AM +0200, Richard Biener wrote: > > I think you're right about TYPE_SATURATING so I've dropped that and instead > > replaced it with TYPE_OVERFLOW_TRAPS. That should do the right thing > > together with TYPE_OVERFLOW_SANITIZED. > > Are you sure? The point is that

[nvptx] gcc/testsuite/gcc.target/nvptx/

2015-06-23 Thread Thomas Schwinge
Hi! Written and internally approved by Bernd nearly a year ago; now committed to trunk in r224822: commit 5b988b24f5e557e19242d50179aa4e3e0c3752d9 Author: tschwinge Date: Tue Jun 23 08:17:23 2015 + [nvptx] gcc/testsuite/gcc.target/nvptx/ We don't claim to support "K&R C" for

[Patch SRA] Fix PR66119 by calling get_move_ratio in SRA

2015-06-23 Thread James Greenhalgh
Hi, The problem in PR66119 is that we assume MOVE_RATIO will be constant for a compilation run, such that we only need to read it once at compiler startup if we want to set up defaults for --param sra-max-scalarization-size-Osize and --param sra-max-scalarization-size-Osize. This assumption is f

Re: match.pd: Three new patterns

2015-06-23 Thread Richard Biener
On Tue, 23 Jun 2015, Marek Polacek wrote: > On Tue, Jun 23, 2015 at 09:56:33AM +0200, Richard Biener wrote: > > > I think you're right about TYPE_SATURATING so I've dropped that and > > > instead > > > replaced it with TYPE_OVERFLOW_TRAPS. That should do the right thing > > > together with TYPE_

Re: [PATCH] Expand PIC calls without PLT with -fno-plt

2015-06-23 Thread Ramana Radhakrishnan
On Mon, Jun 22, 2015 at 7:11 PM, Alexander Monakov wrote: > On Mon, 22 Jun 2015, Jiong Wang wrote: >> Have done a quick experiment, -fno-plt doesn't work on AArch64. >> >> it's because although this patch force the function address into register, >> but the combine pass runs later combine it back

Re: *Ping* patch, fortran] Warn about constant integer divisions

2015-06-23 Thread Janne Blomqvist
On Sun, Jun 21, 2015 at 4:57 PM, Thomas Koenig wrote: > *ping* > > https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00966.html > > >> Hello world, >> >> the attached patch emits a warning for constant integer division. >> While correct according to the standard, I cannot really think >> of a legitima

[Patch AArch64 0/4] Add "-moverride" option for overriding tuning parameters

2015-06-23 Thread James Greenhalgh
Hi, This patch set adds support for a new command line option "-moverride". The purpose of this command line is to allow expert-level users of the compiler, and those comfortable with experimenting with the compiler, *unsupported* full access to the tuning structures used in the AArch64 back-end.

[Patch AArch64 1/4] Define candidates for instruction fusion in a .def file

2015-06-23 Thread James Greenhalgh
Hi, This patch moves the instruction fusion pairs from a set of #defines to an enum which we can generate from a .def file. We'll use that .def file again, and the friendly names it introduces shortly. OK? Thanks, James --- 2015-06-23 James Greenhalgh * config/aarch64/aarch64-fusi

[Patch AArch64 3/4] De-const-ify struct tune_params

2015-06-23 Thread James Greenhalgh
Hi, If we want to overwrite parts of this structure, we're going to need it to be more malleable than it is presently. Run through and remove const from each of the members, create a non-const tuning structure we can modify, and set aarch64_tune_params to always point to this new structure. Chan

[Patch AArch64 4/4] Add -moverride tuning command, and wire it up for control of fusion and fma-steering

2015-06-23 Thread James Greenhalgh
Hi, This final patch adds support for the new command line option "-moverride". The purpose of this command line is to allow expert-level users of the compiler, and those comfortable with experimenting with the compiler, *unsupported* full access to the tuning structures used in the AArch64 back-

[Patch AArch64 2/4] Control the FMA steering pass in tuning structures rather than as core property

2015-06-23 Thread James Greenhalgh
Hi, The FMA steering pass should be enabled through the tuning structures rather than be an intrinsic property of the core. This patch moves the control of the pass to the tuning structures - turning it off for everything other than a Cortex-A57 system (i.e. -mcpu=cortex-a57 or -mcpu=cortex-a57.

Re: [Patch SRA] Fix PR66119 by calling get_move_ratio in SRA

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 09:18:52AM +0100, James Greenhalgh wrote: > This patch fixes the issue by always calling get_move_ratio in the SRA > code, ensuring that an up-to-date value is used. > > Unfortunately, this means we have to use 0 as a sentinel value for > the parameter - indicating no user

[PATCH COMMITTED] MAINTAINERS (Write After Approval): Add myself.

2015-06-23 Thread Ludovic Courtès
FYI. Index: ChangeLog === --- ChangeLog (revision 224824) +++ ChangeLog (revision 224825) @@ -1,3 +1,7 @@ +2015-06-23 Ludovic Courtès + + * MAINTAINERS (Write After Approval): Add myself. + 2015-06-22 Andreas Tobler * MAINT

[PATCH, i386]; Fix PR 66560, Fails to generate ADDSUBPS

2015-06-23 Thread Uros Bizjak
Hello! Attached patch introduces combiner splitters to handle every possible ADDSUB permutation of vec_merge and vec_select/vec_concat operands. These combiners handle swapped PLUS and MINUS operators, and account for commutative operands of PLUS RTX. As shown in the attached testcases, there are

Re: [Ping, Patch, fortran, 64674, v3] [OOP] ICE in ASSOCIATE with class array

2015-06-23 Thread Andre Vehreschild
Hi Paul, thanks for the review. Submitted as r224827. Regards, Andre -- Andre Vehreschild * Email: vehre ad gmx dot de Index: gcc/testsuite/gfortran.dg/associate_18.f08 === --- gcc/testsuite/gfortran.dg/associate_18.f08 (Re

Re: [PATCH][ARM] PR/65711: Don't pass '-dynamic-linker' when '-shared' is used

2015-06-23 Thread Richard Biener
On Mon, May 18, 2015 at 9:09 PM, Ludovic Courtès wrote: > Ramana Radhakrishnan skribis: > >> On Thu, Apr 23, 2015 at 9:29 AM, Ludovic Courtès wrote: >>> As discussed at . >>> >>> Patch is for both 4.8 and 4.9 (possibly 5.1 too, I haven’t checke

Re: [PATCH][ARM] PR/65711: Don't pass '-dynamic-linker' when '-shared' is used

2015-06-23 Thread Ludovic Courtès
Ramana Radhakrishnan skribis: > On Thu, Apr 23, 2015 at 9:29 AM, Ludovic Courtès wrote: >> As discussed at . >> >> Patch is for both 4.8 and 4.9 (possibly 5.1 too, I haven’t checked.) >> > > OK for trunk. This is also ok for all release branche

Re: [PATCH] Check dominator info in compute_dominance_frontiers

2015-06-23 Thread Richard Biener
On Mon, Jun 22, 2015 at 7:10 PM, Tom de Vries wrote: > On 22/06/15 13:47, Richard Biener wrote: >>> >>> (eventually also for the case where we >>> >>end up only computing the fast-query stuff). >>> > > Like this? > ... > diff --git a/gcc/dominance.c b/gcc/dominance.c > index 9c66ca2..58fc6fd 10064

Re: [PATCH][ARM] PR/65711: Don't pass '-dynamic-linker' when '-shared' is used

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 11:30:25AM +0200, Ludovic Courtès wrote: > Ramana Radhakrishnan skribis: > > > On Thu, Apr 23, 2015 at 9:29 AM, Ludovic Courtès wrote: > >> As discussed at . > >> > >> Patch is for both 4.8 and 4.9 (possibly 5.1 too, I h

Re: [i386, PATCH, 3/3] IA MCU psABI support: testsuite.

2015-06-23 Thread Kirill Yukhin
Hello, This patch introduces tests for new psABI. gcc/testsuite/ * gcc.target/i386/iamcu/abi-iamcu.exp: New file. * gcc.target/i386/iamcu/args.h: Likewise. * gcc.target/i386/iamcu/asm-support.S: Likewise. * gcc.target/i386/iamcu/defines.h: Likewise. * gcc.ta

Re: [PATCH][ARM] PR/65711: Don't pass '-dynamic-linker' when '-shared' is used

2015-06-23 Thread Ludovic Courtès
Richard Biener skribis: > On Mon, May 18, 2015 at 9:09 PM, Ludovic Courtès wrote: >> Ramana Radhakrishnan skribis: >> >>> On Thu, Apr 23, 2015 at 9:29 AM, Ludovic Courtès wrote: As discussed at . Patch is for both 4.8 and 4.9 (

Re: match.pd: Three new patterns

2015-06-23 Thread Marek Polacek
On Tue, Jun 23, 2015 at 10:22:35AM +0200, Richard Biener wrote: > Who says you can't do bitwise ops on them? I can't see that being > enforced in the GIMPLE checking in tree-cfg.c. Yes, there is no > such thing as a "saturating" bitwise and but bitwise and should > just work fine. > > You can ch

Re: [PATCH] c/66516 - missing diagnostic on taking the address of a builtin function

2015-06-23 Thread Marek Polacek
On Mon, Jun 22, 2015 at 07:59:20PM -0600, Martin Sebor wrote: > >It seems like this patch regresess pr59630.c testcase; I don't see > >the testcase being addressed in this patch. > > Thanks for the review and for pointing out this regression! > I missed it among all the C test suite failures (I se

Re: [PATCH] c/66516 - missing diagnostic on taking the address of a builtin function

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 12:18:30PM +0200, Marek Polacek wrote: > > Is it intended that programs be able to take the address of > > the builtins that correspond to libc functions and make calls > > to the underlying libc functions via such pointers? (If so, > > the patch will need some tweaking.) >

Re: [PATCH] Expand PIC calls without PLT with -fno-plt

2015-06-23 Thread Alexander Monakov
On Tue, 23 Jun 2015, Ramana Radhakrishnan wrote: > > If you try disabling the REG_EQUAL note generation [*], you'll probably > > find a > > performance regression on arm32 (and probably on aarch64 as well? > > we only > > IMHO disabling the REG_EQUAL note generation is the wrong way to go about

Re: [PATCH] Enable two UNSIGNED_FLOAT simplifications in simplify_unary_operation_1

2015-06-23 Thread Renlin Li
Hi Christophe, Yes, we have also noticed this failure. Here I have a simple patch to remove the mfloat-abi option for hard-float toolchain. The default abi is used. For non-hardfloat toolchain, softfp abi is specified. I have checked with arm-none-eabi and arm-none-linux-gnueabihf toolchain,

Re: [gomp4.1] Handle linear clause on worksharing loop

2015-06-23 Thread Ilya Verbin
On Thu, Jun 18, 2015 at 15:15:21 +0200, Jakub Jelinek wrote: > This patch adds support for linear clause on OpenMP 4.1 worksharing loops. > > 2015-06-18 Jakub Jelinek > > * gimplify.c (gimplify_scan_omp_clauses): For linear clause > on worksharing loop combined with parallel add sh

Re: [gomp4.1] Handle linear clause on worksharing loop

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 02:06:27PM +0300, Ilya Verbin wrote: > On Thu, Jun 18, 2015 at 15:15:21 +0200, Jakub Jelinek wrote: > > This patch adds support for linear clause on OpenMP 4.1 worksharing loops. > > > > 2015-06-18 Jakub Jelinek > > > > * gimplify.c (gimplify_scan_omp_clauses): For

Re: [AArch64] Implement -fpic for -mcmodel=small

2015-06-23 Thread Marcus Shawcroft
On 20 May 2015 at 11:21, Jiong Wang wrote: > gcc/ > * config/aarch64/aarch64.md: (ldr_got_small_): Support new GOT > relocation > modifiers. > (ldr_got_small_sidi): Ditto. > * config/aarch64/iterators.md (got_modifier): New mode iterator. > * config/aarch64/aarch64-otps.h (aarch64_code

Re: [gomp4.1] Add new versions of GOMP_target{,_data,_update} and GOMP_target_enter_exit_data

2015-06-23 Thread Ilya Verbin
On Sat, Jun 20, 2015 at 00:35:14 +0300, Ilya Verbin wrote: > Given that a mapped variable in 4.1 can have different kinds across nested > data > regions, we need to store map-type not only for each var, but also for each > structured mapping. Here is my WIP patch, is it sane? :) > Attached testca

Re: [gomp4.1] Add new versions of GOMP_target{,_data,_update} and GOMP_target_enter_exit_data

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 02:40:43PM +0300, Ilya Verbin wrote: > On Sat, Jun 20, 2015 at 00:35:14 +0300, Ilya Verbin wrote: > > Given that a mapped variable in 4.1 can have different kinds across nested > > data > > regions, we need to store map-type not only for each var, but also for each > > stru

RFA: FT32: Fix building gcc.

2015-06-23 Thread Nicholas Clifton
Hi Guys, It seems that the FT32 port of GCC does not have a maintainer at the moment. Nevertheless I have a patch to fix a couple of build time problems compiling gcc for the FT32. Is this OK to apply ? Cheers Nick gcc/ChangeLog 2015-06-23 Nick Clifton * config/ft32/ft32.c

[PATCH 1/2] Add mask to specify which LEON3 targets support CASA

2015-06-23 Thread Daniel Cederman
Not all LEON3 support the CASA instruction. This patch provides a mask that can be used to specify which LEON3 targets that support CASA. gcc/ChangeLog: 2015-06-22 Daniel Cederman * config/sparc/sparc.c (sparc_option_override): Mark CPU targets leon3 and leon3v7 as supportin

[PATCH] Make muser-mode the default for LEON3

2015-06-23 Thread Daniel Cederman
The muser-mode flag causes the CASA instruction for LEON3 to use the user mode ASI. This is the correct behavior for almost all LEON3 targets. For this reason it makes sense to make user mode the default. This patch adds a flag for supervisor mode that can be used on the very few LEON3 targets that

[PATCH 2/2] Add leon3r0 and leon3r0v7 CPU targets

2015-06-23 Thread Daniel Cederman
Early variants of LEON3, revision 0, do not support the CASA instruction. This patch adds two new targets, leon3r0 and leon3r0v7, that are equivalent to leon3 and leon3v7, except that they do not support CASA. gcc/ChangeLog: 2015-06-22 Daniel Cederman * config.gcc: Add leon3r0[v7] tar

[PATCH] Use leon3 target for native LEON on Linux

2015-06-23 Thread Daniel Cederman
Linux requires LEON version 3 or above with CASA support. gcc/ChangeLog: 2015-06-23 Daniel Cederman * config/sparc/driver-sparc.c: map /proc/cpuinfo with CPU LEON to leon3 --- gcc/config/sparc/driver-sparc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/config/spa

Re: [PATCH][ARM] PR/65711: Don't pass '-dynamic-linker' when '-shared' is used

2015-06-23 Thread Ludovic Courtès
Jakub Jelinek skribis: > On Tue, Jun 23, 2015 at 11:30:25AM +0200, Ludovic Courtès wrote: >> Ramana Radhakrishnan skribis: >> >> > On Thu, Apr 23, 2015 at 9:29 AM, Ludovic Courtès wrote: >> >> As discussed at . >> >> >> >> Patch is for both 4

Re: [PATCH] Make muser-mode the default for LEON3

2015-06-23 Thread Sebastian Huber
Instead of introducing a new option which may conflict with an existing one, is it not possible to simply use -mno-user-mode? On 23/06/15 14:22, Daniel Cederman wrote: The muser-mode flag causes the CASA instruction for LEON3 to use the user mode ASI. This is the correct behavior for almost all

Re: [PATCH] Make muser-mode the default for LEON3

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 02:22:34PM +0200, Daniel Cederman wrote: > The muser-mode flag causes the CASA instruction for LEON3 to use the > user mode ASI. This is the correct behavior for almost all LEON3 targets. > For this reason it makes sense to make user mode the default. This patch > adds a fla

[gomp4] Additional testing for deviceptr clause.

2015-06-23 Thread James Norris
Hi! The following patch adds additional testing of the deviceptr clause. Patch applied to gomp-4_0-branch. Thanks! Jim diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c index e271a37..e62c315 100644 --- a/libgomp/t

Re: [PATCH] Make muser-mode the default for LEON3

2015-06-23 Thread Daniel Cederman
On 2015-06-23 14:34, Jakub Jelinek wrote: On Tue, Jun 23, 2015 at 02:22:34PM +0200, Daniel Cederman wrote: The muser-mode flag causes the CASA instruction for LEON3 to use the user mode ASI. This is the correct behavior for almost all LEON3 targets. For this reason it makes sense to make user

Re: [gomp4] Generate sequential loop for OpenACC loop directive inside kernels

2015-06-23 Thread Chung-Lin Tang
On 2015/6/16 05:05 PM, Tom de Vries wrote: > On 16/06/15 10:59, Chung-Lin Tang wrote: >> This patch adjusts omp-low.c:expand_omp_for_generic() to expand to a >> "sequential" >> loop form (without the OMP runtime calls), used for loop directives inside >> OpenACC kernels constructs. Tom mentions th

RFA: Add support for -fstack-usage to various ports

2015-06-23 Thread Nick Clifton
Hi Guys, The patch below adds support for the -fstack-usage option to the BFIN, FT32, H8300, IQ2000 and M32C ports. It also adjusts the expected output in the gcc.dg/stack-usage-1.c test for the V850 and MN10300 to match the actual results generated by these toolchains. Tested with no

Re: [PATCH] Make muser-mode the default for LEON3

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 02:48:45PM +0200, Daniel Cederman wrote: > How does one check if the bit has been explicitly set? It was not obvious to if (TARGET_USER_MODE_P (target_flags_explicit)) > me, which is why I took a similar approach to a patch I found for another > CPU target. If it is possib

[nvptx] add select

2015-06-23 Thread Nathan Sidwell
I've committed this PTX patch to add support for the selp instruction. It's pretty much a direct implementation of 'r = a ? b : c'. This is sufficient for combine(?) to generate selp instructions such as: selp.u32%r22, %r25, %r26, %r28; selp.u32%r22, %r25, 4, %r27;

Re: [AArch64] Implement -fpic for -mcmodel=small

2015-06-23 Thread Jiong Wang
Marcus Shawcroft writes: > On 20 May 2015 at 11:21, Jiong Wang wrote: > >> gcc/ >> * config/aarch64/aarch64.md: (ldr_got_small_): Support new GOT >> relocation >> modifiers. >> (ldr_got_small_sidi): Ditto. >> * config/aarch64/iterators.md (got_modifier): New mode iterator. >> * config

[c-family PATCH] Fix for -Wlogical-op

2015-06-23 Thread Marek Polacek
While looking at something else I noticed that we're using == for INTEGER_CSTs comparison. That isn't going to work well, so use tree_int_cst_equal instead. Because of that we weren't diagnosing the following test. Bootstrapped/regtested on x86_64-linux, ok for trunk? 2015-06-23 Marek Polacek

Re: [PATCH] Expand PIC calls without PLT with -fno-plt

2015-06-23 Thread Jeff Law
On 06/23/2015 02:29 AM, Ramana Radhakrishnan wrote: If you try disabling the REG_EQUAL note generation [*], you'll probably find a performance regression on arm32 (and probably on aarch64 as well? we only IMHO disabling the REG_EQUAL note generation is the wrong way to go about this. Agreed.

Re: [c-family PATCH] Fix for -Wlogical-op

2015-06-23 Thread Jeff Law
On 06/23/2015 07:12 AM, Marek Polacek wrote: While looking at something else I noticed that we're using == for INTEGER_CSTs comparison. That isn't going to work well, so use tree_int_cst_equal instead. Because of that we weren't diagnosing the following test. Bootstrapped/regtested on x86_64-l

Re: [AArch64] Implement -fpic for -mcmodel=small

2015-06-23 Thread Marcus Shawcroft
On 23 June 2015 at 14:02, Jiong Wang wrote: > > Marcus Shawcroft writes: > >> On 20 May 2015 at 11:21, Jiong Wang wrote: >> >>> gcc/ >>> * config/aarch64/aarch64.md: (ldr_got_small_): Support new GOT >>> relocation >>> modifiers. >>> (ldr_got_small_sidi): Ditto. >>> * config/aarch64/iter

Re: RFA: FT32: Fix building gcc.

2015-06-23 Thread Jeff Law
On 06/23/2015 06:10 AM, Nicholas Clifton wrote: Hi Guys, It seems that the FT32 port of GCC does not have a maintainer at the moment. Nevertheless I have a patch to fix a couple of build time problems compiling gcc for the FT32. Is this OK to apply ? Cheers Nick gcc/ChangeLog 201

Re: RFA: Add support for -fstack-usage to various ports

2015-06-23 Thread Jeff Law
On 06/23/2015 06:56 AM, Nick Clifton wrote: Hi Guys, The patch below adds support for the -fstack-usage option to the BFIN, FT32, H8300, IQ2000 and M32C ports. It also adjusts the expected output in the gcc.dg/stack-usage-1.c test for the V850 and MN10300 to match the actual results

[PATCH] Fix PR66636

2015-06-23 Thread Richard Biener
The following fixes an ICE with 188.ammp and AVX2. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2015-06-23 Richard Biener PR tree-optimization/66636 * tree-vect-stmts.c (vectorizable_store): Properly compute the def type for further

C++ PATCH for c++/65879 (error on member function of nested class of anonymous class)

2015-06-23 Thread Jason Merrill
It doesn't make sense to complain about a function using its own enclosing class. There were two problems here: 1) The function should have been marked as internal because its class is internal. 2) We shouldn't bother looking at 'this' for no-linkage types. Tested x86_64-pc-linux-gnu, applyi

Fwd: [PATCH] Add CFI entries for ARM Linux idiv0 / ldiv0

2015-06-23 Thread James Lemke
Ping.. Forwarded Message Subject: [PATCH] Add CFI entries for ARM Linux idiv0 / ldiv0 Date: Tue, 16 Jun 2015 17:25:49 -0400 From: James Lemke To: gcc-patches@gcc.gnu.org A divide by zero exception was not giving a proper traceback for LINUX ARM_EABI. The attached patch fixes

C++ PATCH for c++/66542 (missing error with deleted dtor and static variable)

2015-06-23 Thread Jason Merrill
In expand_static_init we were diagnosing a deleted dtor if there was also no initializer, but not if there was, and nothing later on was diagnosing it either. Fixed thus. Tested x86_64-pc-linux-gnu, applying to trunk. commit 78593d02fb6af72a8f97e52cbfbbe9f49b29e9db Author: Jason Merrill Date:

Re: [PATCH] Make muser-mode the default for LEON3

2015-06-23 Thread Daniel Cederman
On 2015-06-23 14:58, Jakub Jelinek wrote: On Tue, Jun 23, 2015 at 02:48:45PM +0200, Daniel Cederman wrote: How does one check if the bit has been explicitly set? It was not obvious to if (TARGET_USER_MODE_P (target_flags_explicit)) me, which is why I took a similar approach to a patch I fo

[PATCH] Make muser-mode the default for LEON3

2015-06-23 Thread Daniel Cederman
The muser-mode flag causes the CASA instruction for LEON3 to use the user mode ASI. This is the correct behavior for almost all LEON3 targets. For this reason it makes sense to make user mode the default. gcc/ChangeLog: 2015-06-23 Daniel Cederman * config/sparc/sparc.opt: Rename mask

C++ PATCH for c++/66501 (wrong code with array move assignment)

2015-06-23 Thread Jason Merrill
build_vec_init was assuming that if a class has a trivial copy assignment, then an array assignment is trivial. But overload resolution might not choose the copy assignment operator. So this patch changes build_vec_init to check for any non-trivial assignment operator. Tested x86_64-pc-linux

[gomp4.1] Taskloop C++ random access iterator support

2015-06-23 Thread Jakub Jelinek
Hi! I've committed following patch to add support for C++ random access iterators in taskloop constructs. 2015-06-23 Jakub Jelinek * tree.h (OMP_CLAUSE_PRIVATE_TASKLOOP_IV, OMP_CLAUSE_LASTPRIVATE_TASKLOOP_IV): Define. * gimplify.c (gimplify_omp_for): Handle gimplificat

[00/12] Share hash traits between hash_table and hash_map

2015-06-23 Thread Richard Sandiford
Following on from: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg01066.html this series unifies the key hashing traits for hash_maps in all but one case (which needs to use the values rather than keys to represent deleted and empty entries). It also consolidates the various tree, integer and strin

[01/12] Add hash_map traits that use existing hash_table-like traits

2015-06-23 Thread Richard Sandiford
This patch defines a class that converts hash_table-style traits into hash_map traits. It can be used as the default traits for all hash_maps that don't specify their own traits (i.e. this patch does work on its own). By the end of the series this class replaces default_hashmap_traits. gcc/

[02/12] Move tree operand hashers to a new header file

2015-06-23 Thread Richard Sandiford
There were three tree operand hashers, so move them to their own header file. The typedefs in this and subsequent patches are temporary and get removed in patch 12. gcc/ * tree-hash-traits.h: New file. (tree_operand_hash): New class. * sanopt.c: Include tree-hash-traits.h

[03/12] Move decl hasher to header file

2015-06-23 Thread Richard Sandiford
Like the previous patch, but for decl hashers. There's only one copy of this so far, but the idea seems general. gcc/ * tree-hash-traits.h (tree_decl_hash): New class. * tree-ssa-strlen.c: Include tree-hash-traits.h. (stridxlist_hash_traits): Use tree_decl_hash. Index: g

[04/12] Move ssa_name hasher to header file

2015-06-23 Thread Richard Sandiford
Another tree hasher, this time for SSA names. Again there's only one copy at the moment, but the idea seems general. gcc/ * tree-hash-traits.h (tree_ssa_name_hasher): New class. * sese.c: Include tree-hash-traits.h. (rename_map_hasher): Use tree_ssa_name_hasher. Index: g

[05/12] Move TREE_HASH hasher to header file

2015-06-23 Thread Richard Sandiford
One more tree hasher, this time based on TREE_HASH. gcc/ * tree-hash-traits.h (tree_hash): New class. * except.c: Include tree-hash-traits.h. (tree_hash_traits): Use tree_hash. Index: gcc/tree-hash-traits.h =

[06/12] Consolidate string hashers

2015-06-23 Thread Richard Sandiford
This patch replaces various string hashers with a single copy in hash-traits.h. gcc/ * hash-traits.h (string_hash, nofree_string_hash): New classes. * genmatch.c (capture_id_map_hasher): Use nofree_string_hash. * passes.c (pass_registry_hasher): Likewise. * config/

[07/12] Use new string hasher for MIPS

2015-06-23 Thread Richard Sandiford
Use the string hasher from patch 6 for MIPS. I split this out because local_alias_traits doesn't actually need to use SYMBOL_REF rtxes as the map keys, since the only data used is the symbol name. gcc/ * config/mips/mips.c (mips16_flip_traits): Use it. (local_alias_traits, mips16

[08/12] Add common traits for integer hash keys

2015-06-23 Thread Richard Sandiford
Several places define hash traits for integers, using particular integer values as "empty" and "deleted" markers. This patch defines them in terms of a single int_hash class. I also needed to extend gengtype to accept "+" in template arguments. gcc/ * gengtype-parse.c (require_template_

[09/12] Remove all but one use of default_hashmap_traits

2015-06-23 Thread Richard Sandiford
After the previous patches in the series, there are three remaining hash traits that use the key to represent empty and deleted entries. This patch makes them use simple_hashmap_traits. gcc/ * ipa-icf.h (symbol_compare_hash): New class. (symbol_compare_hashmap_traits): Use it.

[10/12] Add helper class for valued-based empty and deleted slots

2015-06-23 Thread Richard Sandiford
part_traits in cfgexpand.c needs to use the value rather than the key to represent empty and deleted slots. What it's doing is pretty generic, so this patch adds a helper class to hash-map-traits.h. gcc/ * hash-map-traits.h (unbounded_hashmap_traits): New class. (unbounded_int_ha

Re: [gomp4.1] Add new versions of GOMP_target{,_data,_update} and GOMP_target_enter_exit_data

2015-06-23 Thread Ilya Verbin
On Tue, Jun 23, 2015 at 13:51:39 +0200, Jakub Jelinek wrote: > > + /* Set dd on target to 0 for the further check. */ > > + #pragma omp target map(always to: dd) > > + { dd; } > > This reminds me that: > if (ctx->region_type == ORT_TARGET && !(n->value & GOVD_SEEN)) >

[11/12] Remove default_hashmap_traits

2015-06-23 Thread Richard Sandiford
The previous patches removed all uses of default_hashmap_traits, so this patch deletes the definition. gcc/ * hash-map-traits.h (default_hashmap_traits): Delete. Index: gcc/hash-map-traits.h === --- gcc/hash-map-traits.h

[12/12] Simplify uses of hash_map

2015-06-23 Thread Richard Sandiford
At this point all hash_map traits know what kind of key they're dealing with, so we can make that a traits typedef, like it is for hash_table traits. Then, if we make the default hash traits for T be T, we can use hash_table-style traits as the first template parameter to hash_map, without the nee

Re: [PATCH] Add CFI entries for ARM Linux idiv0 / ldiv0

2015-06-23 Thread Ramana Radhakrishnan
On 16/06/15 22:25, James Lemke wrote: A divide by zero exception was not giving a proper traceback for LINUX ARM_EABI. The attached patch fixes the problem on trunk (and several local branches). Tested on gcc-trunk for arm-none-linux-gnueabi. OK to commit? > 2015-06-16 James Lemke

Re: [gomp4.1] Add new versions of GOMP_target{,_data,_update} and GOMP_target_enter_exit_data

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 05:54:48PM +0300, Ilya Verbin wrote: > On Tue, Jun 23, 2015 at 13:51:39 +0200, Jakub Jelinek wrote: > > > + /* Set dd on target to 0 for the further check. */ > > > + #pragma omp target map(always to: dd) > > > + { dd; } > > > > This reminds me that: > >

[committed] Use abort in parloops-exit-first-loop-alt-{3,4}.c

2015-06-23 Thread Tom de Vries
Hi, committed attached patch as trivial. Thanks, - Tom Use abort in parloops-exit-first-loop-alt-{3,4}.c 2015-06-23 Tom de Vries * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use abort. * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same. --- libgomp/tes

Re: [patch] Delete temporary response file

2015-06-23 Thread Jeff Law
On 06/22/2015 11:37 AM, Eric Botcazou wrote: Hi, when you pass a response file at link time and you use the GNU linker, then collect2 creates another, temporary response file and passes it to the linker. But it fails to delete the file after it is done. This can easily be seen with the followin

Re: [PATCH] c/66516 - missing diagnostic on taking the address of a builtin function

2015-06-23 Thread Martin Sebor
On 06/23/2015 04:29 AM, Jakub Jelinek wrote: On Tue, Jun 23, 2015 at 12:18:30PM +0200, Marek Polacek wrote: Is it intended that programs be able to take the address of the builtins that correspond to libc functions and make calls to the underlying libc functions via such pointers? (If so, the pa

Re: [Patch SRA] Fix PR66119 by calling get_move_ratio in SRA

2015-06-23 Thread James Greenhalgh
On Tue, Jun 23, 2015 at 09:52:01AM +0100, Jakub Jelinek wrote: > On Tue, Jun 23, 2015 at 09:18:52AM +0100, James Greenhalgh wrote: > > This patch fixes the issue by always calling get_move_ratio in the SRA > > code, ensuring that an up-to-date value is used. > > > > Unfortunately, this means we ha

Remove redundant AND from count reduction loop

2015-06-23 Thread Richard Sandiford
We vectorise: int f (int *a, int n) { int count = 0; for (int i = 0; i < n; ++i) if (a[i] < 255) count += 1; return count; } using an add reduction of a VEC_COND_EXPR . This leads to the main loop having an AND with a loop invariant {1, 1, ...}. E.g. on aarch64: moviv

[PATCH 2/3][AArch64 nofp] Clarify docs for +nofp/-mgeneral-regs-only

2015-06-23 Thread Alan Lawrence
James Greenhalgh wrote: -Generate code which uses only the general registers. +Generate code which uses only the general registers. Equivalent to feature The ARMARM uses "general-purpose registers" to refer to these registers, we should match that style. s/Equivalent to feature/This is equi

[PATCH 1/3][AArch64 nofp] Fix ICEs with +nofp/-mgeneral-regs-only and improve error messages

2015-06-23 Thread Alan Lawrence
James Greenhalgh wrote: Submissions on this list should be one patch per mail, it makes tracking review easier. OK here's a respin of the first, I've added a third patch after I found another route to get to an ICE. +void +aarch64_err_no_fpadvsimd (machine_mode mode, const char *msg) +{ +

[PATCH 3/3][AArch64 nofp] Fix another ICE with +nofp/-mgeneral-regs-only

2015-06-23 Thread Alan Lawrence
This fixes another ICE, obtained with the attached testcase - yes, there was a way to get hold of a float, without passing an argument or going through movsf/movdf! Bootstrapped + check-gcc on aarch64-none-linux-gnu. gcc/ChangeLog: * config/aarch64/aarch64.md (2): Condition on

PING: Re: [patch] PR debug/66482: Do not ICE in gen_formal_parameter_die

2015-06-23 Thread Aldy Hernandez
On 06/12/2015 10:07 AM, Aldy Hernandez wrote: Hi. This is now a P2, as it is causing a secondary target bootstrap to fail (s390). Aldy Sigh. I must say my head is spinning with this testcase and what we do with it (-O3), even prior to the debug-early work: void f(int p) {} int g() { vo

Re: [PATCH] Add CFI entries for ARM Linux idiv0 / ldiv0

2015-06-23 Thread James Lemke
Tested on gcc-trunk for arm-none-linux-gnueabi. OK to commit? 2015-06-16 James Lemke libgcc/config/arm/ * lib1funcs.S (aeabi_idiv0, aeabi_ldiv0): Add CFI entries for Linux ARM_EABI. s/for Linux ARM EABI// given you handle both __ARM_EABI__ and the not __ARM_EAB

Re: *Ping* patch, fortran] Warn about constant integer divisions

2015-06-23 Thread Jerry DeLisle
On 06/23/2015 01:36 AM, Janne Blomqvist wrote: > On Sun, Jun 21, 2015 at 4:57 PM, Thomas Koenig wrote: >> *ping* >> >> https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00966.html >> >> >>> Hello world, >>> >>> the attached patch emits a warning for constant integer division. >>> While correct accordi

Re: [PATCH] Add CFI entries for ARM Linux idiv0 / ldiv0

2015-06-23 Thread Ramana Radhakrishnan
On Tue, Jun 23, 2015 at 5:18 PM, James Lemke wrote: > >>> Tested on gcc-trunk for arm-none-linux-gnueabi. >>> >>> OK to commit? >>> 2015-06-16 James Lemke >>> >>> libgcc/config/arm/ >>> * lib1funcs.S (aeabi_idiv0, aeabi_ldiv0): Add CFI entries for >>> Linux ARM

Re: [PATCH] Add CFI entries for ARM Linux idiv0 / ldiv0

2015-06-23 Thread James Lemke
On 06/23/2015 12:22 PM, Ramana Radhakrishnan wrote: I have no access to a non-EABI arm target to test this, not sure if there are any intree anymore (probably vxworks ?) . It looks sane on a read - just apply it and look after regressions if anything gets reported in bugzilla. Thanks Ramana.

Re: [PATCH] [ARM] Post-indexed addressing for NEON memory access

2015-06-23 Thread Ramana Radhakrishnan
On Fri, Jun 19, 2015 at 7:04 PM, Charles Baylis wrote: > On 18 June 2014 at 11:06, Ramana Radhakrishnan > wrote: >> On Tue, Jun 17, 2014 at 4:03 PM, Charles Baylis >> wrote: >>> Your mention of larger vector modes prompted me to check that the >>> patch has the desired result with them. In fact,

Re: [PATCH][testsuite] Fix TORTURE_OPTIONS overriding

2015-06-23 Thread James Greenhalgh
On Thu, Jun 18, 2015 at 11:10:01AM +0100, Richard Biener wrote: > > Currently when doing > > make check-gcc RUNTESTFLAGS="TORTURE_OPTIONS=\\\"{ -O3 } { -O2 }\\\" > dg-torture.exp" > > you get -O3 and -O2 but also the two LTO torture option combinations. > That's undesired (those are the most expen

[PATCH] backport FreeBSD add functionality to build PIE executables

2015-06-23 Thread Andreas Tobler
Hi all, I'm going to commit this patch to 5.1 in the next days unless someone objects. The patch is in my 5.1 tree since a longer time and I regularly post results. Thanks, Andreas 2015-06-22 Andreas Tobler Backport from mainline 2015-05-18 Andreas Tobler *

[PATCH] backport Contribute FreeBSD unwind support (x86_64 and x86)

2015-06-23 Thread Andreas Tobler
Hi all, the next one. I'm going to commit this patch to 5.1 in the next days. Also in my tree, test results posted for amd64/i386-*-freebsd11.0 Thanks, Andreas 2015-06-22 Andreas Tobler Backport from mainline 2015-05-27 John Marino * config.host (i[34567]86-*-f

[PATCH] backport libjava signal handling for FreeBSD (amd64/i386)

2015-06-23 Thread Andreas Tobler
Hi again, number three. This one is also on my list to be committed to 5.1. Results on the usual place. Thanks, Andreas 2015-06-22 Andreas Tobler Backport from mainline 2015-05-28 Andreas Tobler * configure.host: Add bits for FreeBSD amd64 and i386. * c

[PATCH] libgomp sysctl check

2015-06-23 Thread Andreas Tobler
Hi all, this patch fixes a long standing bug in the libgomp configury. The initial patch was correct, but the commit I did was wrong. Ok for trunk? Thanks, Andreas 2015-06-23 Andreas Tobler * configure.ac: Fix check for header * configure: Regenerate. * config.h.i

Re: [PATCH] libgomp sysctl check

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 07:36:22PM +0200, Andreas Tobler wrote: > Hi all, > > this patch fixes a long standing bug in the libgomp configury. > The initial patch was correct, but the commit I did was wrong. > > Ok for trunk? > > Thanks, > > Andreas > > 2015-06-23 Andreas Tobler > > *

Re: [PATCH] backport FreeBSD add functionality to build PIE executables

2015-06-23 Thread Jakub Jelinek
On Tue, Jun 23, 2015 at 07:26:09PM +0200, Andreas Tobler wrote: > Hi all, > > I'm going to commit this patch to 5.1 in the next days unless someone > objects. > > The patch is in my 5.1 tree since a longer time and I regularly post > results. Note, Richard announced plan to do 5.2-rc2 on July, 3

Re: [PATCH] backport FreeBSD add functionality to build PIE executables

2015-06-23 Thread Andreas Tobler
On 23.06.15 19:50, Jakub Jelinek wrote: On Tue, Jun 23, 2015 at 07:26:09PM +0200, Andreas Tobler wrote: Hi all, I'm going to commit this patch to 5.1 in the next days unless someone objects. The patch is in my 5.1 tree since a longer time and I regularly post results. Note, Richard announced

Re: [PATCH] libgomp sysctl check

2015-06-23 Thread Andreas Tobler
On 23.06.15 19:47, Jakub Jelinek wrote: On Tue, Jun 23, 2015 at 07:36:22PM +0200, Andreas Tobler wrote: Hi all, this patch fixes a long standing bug in the libgomp configury. The initial patch was correct, but the commit I did was wrong. Ok for trunk? Thanks, Andreas 2015-06-23 Andreas Tob

  1   2   >