Re: [ARM][PATCH, PR 68223] arm_[su]min_cmp pattern fails

2015-11-05 Thread Ramana Radhakrishnan
On 06/11/15 06:46, Michael Collison wrote: > The patterns arm_smin_cmp and arm_umin_cmp patterns fail if operand 0 and > operand 2 are equal and both are less than operand 1. The solution is to > remove the two patterns. Agreed. There is no way this can be made to work without additional branche

Re: Division Optimization in match and simplify

2015-11-05 Thread Marc Glisse
+/* Optimize (X & (-A)) / A where A is a power of 2, to X >> log2(A) */ +(for div (trunc_div ceil_div floor_div round_div exact_div) + (simplify + (div (convert? (bit_and @0 INTEGER_CST@1)) INTEGER_CST@2) + (if (!TYPE_UNSIGNED (type) && integer_pow2p (@2) + && tree_int_cst_sgn (@2) > 0 +

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Marc Glisse
On Fri, 6 Nov 2015, Jonathan Wakely wrote: On 6 November 2015 at 09:02, Daniel Gutson wrote: El 5/11/2015 22:56, "Jonathan Wakely" escribió: It can just call malloc, and the replacement operator delete can call free. It can but the actual code of operator new is optimized and more comple

Re: Status of rich location work (was Re: [PATCH 06/10] Track expression ranges in C frontend)

2015-11-05 Thread Dodji Seketeli
> Talking about risks: the reduction of the space for ordinary maps by a > factor of 32, by taking up 5 bits for the packed range information > optimization (patch 10): > https://gcc.gnu.org/ml/gcc-patches/2015-10/msg02539.html > CCing Dodji: Dodji; is this reasonable? FWIW, I am definitely to ge

RE: [PATCH] PR67518 and PR53852 -- add testcase.

2015-11-05 Thread VandeVondele Joost
> Attached testcases for two previously fixed PRs (and thanks to Dominique who > was quicker for PR67982). ping ?

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Jakub Jelinek
On Thu, Nov 05, 2015 at 06:10:49PM -0800, Cesar Philippidis wrote: > I've applied this patch to trunk. It also includes the fortran and > template changes. Note that there is a new regression in > gfortran.dg/goacc/combined_loop.f90. Basically, the gimplifier is > complaining about reduction variab

[ARM][PATCH, PR 68223] arm_[su]min_cmp pattern fails

2015-11-05 Thread Michael Collison
The patterns arm_smin_cmp and arm_umin_cmp patterns fail if operand 0 and operand 2 are equal and both are less than operand 1. The solution is to remove the two patterns. 2015-11-06 Michael Collison PR target/68223 * gcc/config/arm/arm.md (*arm_smin_cmp): Remove pattern. (*arm_

Fix ipa-polymorphic-call-info ICE

2015-11-05 Thread Jan Hubicka
Hi, this patch fixes tripple thinko when in ipa_polymorphic_call_context::restrict_to_inner_type when dealing with an offset that is out of the range of the type considered. In this case function should return true only when type is dynamic (so there may be additional type after the known type) or

Re: Fix 61441

2015-11-05 Thread Sujoy Saraswati
Hi, > This is looking pretty close to ready to go in, but the patch also seems > to be doing several things at once and it might be easier to review if > split into separate logical pieces. For example (this is an illustration, > not necessarily saying it should be exactly this way): (1) Add > RE

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Jonathan Wakely
On 6 November 2015 at 09:02, Daniel Gutson wrote: > > El 5/11/2015 22:56, "Jonathan Wakely" escribió: >> >> On 5 November 2015 at 23:31, Daniel Gutson >> wrote: >> > On Thu, Nov 5, 2015 at 2:11 PM, Jonathan Wakely >> > wrote: >> >> On 5 November 2015 at 20:52, Daniel Gutson wrote: >> >>> Real u

Re: [PATCH] Merge from gomp-4_5-branch to trunk

2015-11-05 Thread David Edelsohn
Sorry for the incorrect blame. I thought the failure was due to GOMP changes, but it appears to be due to the placement new size changes. I am re-testing after Martin's fix. By the way, Martin, the ChangeLog entry is wrong 2015-11-05 Martin Sebor PR c++/67942 * invoke.texi (-

Re: [PATCH] PR 68192 Export AIX TLS symbols

2015-11-05 Thread Alexandre Oliva
On Nov 5, 2015, Paolo Bonzini wrote: > On 05/11/2015 17:28, David Edelsohn wrote: >> [Explicitly copying build maintainers.] >> >> Paolo and Alexandre, >> >> Could you review and help with this patch? >> >> TLS symbols in AIX display a new, different symbol type in nm output. >> Libtool expli

[PATCH] Merge from gomp-4_5-branch to trunk

2015-11-05 Thread David Edelsohn
This patch broke bootstrap on AIX. /nasfarm/edelsohn/src/src/libstdc++-v3/src/c++98/ios_init.cc: In static member function 'static bool std::ios_base::sync_with_stdio(bool)': /nasfarm/edelsohn/src/src/libstdc++-v3/src/c++98/ios_init.cc:181:59: internal compiler error: in tree_to_shwi, at tree.c:7

Re: Division Optimization in match and simplify

2015-11-05 Thread Hurugalawadi, Naveen
Hi, >> it probably works for all integer divisions (floor_div, etc) >> since it is exact and thus does not depend on the rounding. Please find attached the modified patch as per comments. Thanks, Naveendiff --git a/gcc/fold-const.c b/gcc/fold-const.c index ee9b349..88dbbdd 100644 --- a/gcc/fold-

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Cesar Philippidis
I've applied this patch to trunk. It also includes the fortran and template changes. Note that there is a new regression in gfortran.dg/goacc/combined_loop.f90. Basically, the gimplifier is complaining about reduction variables appearing in multiple clauses. E.g. 'acc parallel reduction(+:var) copy

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Jonathan Wakely
On 5 November 2015 at 23:31, Daniel Gutson wrote: > On Thu, Nov 5, 2015 at 2:11 PM, Jonathan Wakely wrote: >> On 5 November 2015 at 20:52, Daniel Gutson wrote: >>> Real use cases: statistics and logging. It's a (one time) callback >>> reporting that something went wrong, >>> but not intended to f

Re: [ping] Fix PR debug/66728

2015-11-05 Thread Mike Stump
On Nov 5, 2015, at 4:32 AM, Richard Biener wrote: > No idea on location lists but maybe this means we should just use the > maximum supported integer mode for CONST_WIDE_INTs? Ah, yeah, that sounds like a fine idea. Below is that version. I snuck in one more change, as it was annoying me, and

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Martin Sebor
On 11/05/2015 04:30 PM, Segher Boessenkool wrote: On Thu, Nov 05, 2015 at 02:04:47PM -0700, Martin Sebor wrote: On 11/05/2015 10:09 AM, Segher Boessenkool wrote: On Thu, Nov 05, 2015 at 08:58:25AM -0700, Martin Sebor wrote: I don't think that reiterating in a condensed form what the manual doe

Re: [PING 2] [PATCH] c++/67942 - diagnose placement new buffer overflow

2015-11-05 Thread Martin Sebor
On 11/05/2015 04:41 PM, Martin Sebor wrote: On 11/05/2015 11:13 AM, Jason Merrill wrote: OK, thanks. I'm afraid the last patch that I just committed breaks libstdc++ bootstrap with the following error: I committed a slightly more robust fix that avoids assuming that either the size of the ob

Re: [PATCH][combine][RFC] Don't transform sign and zero extends inside mults

2015-11-05 Thread Segher Boessenkool
On Thu, Nov 05, 2015 at 12:01:26PM +, Kyrill Tkachov wrote: > Thanks, that looks less intrusive. I did try it out on arm and aarch64. > It does work on the aarch64 testcase. However, there's also a correctness > regression, I'll try to explain inline > >diff --git a/gcc/combine.c b/gcc/com

[PATCH 4/4][AArch64] Add cost model for Exynos M1

2015-11-05 Thread Evandro Menezes
2015-10-25 Evandro Menezes gcc/ * config/aarch64/aarch64-cores.def: Use the Exynos M1 cost model. * config/aarch64/aarch64.c (exynosm1_addrcost_table): New variable. (exynosm1_regmove_cost): Likewise. (exynosm1_vector_cost): Likewise. (exynosm1_tunings)

Re: [PING 2] [PATCH] c++/67942 - diagnose placement new buffer overflow

2015-11-05 Thread Martin Sebor
On 11/05/2015 11:13 AM, Jason Merrill wrote: OK, thanks. I'm afraid the last patch that I just committed breaks libstdc++ bootstrap with the following error: /home/msebor/scm/fsf/gcc-svn/libstdc++-v3/src/c++98/ios_init.cc: In static member function ‘static bool std::ios_base::sync_with_stdio(

Re: [PATCH 3/4][AArch64] Add scheduling model for Exynos M1

2015-11-05 Thread Evandro Menezes
2015-11-05 Evandro Menezes gcc/ * config/aarch64/aarch64-cores.def: Use the Exynos M1 sched model. * config/aarch64/aarch64.md: Include "exynos-m1.md". * config/arm/arm-cores.def: Use the Exynos M1 sched model. * config/arm/arm.md: Include "exynos-m1.md".

Re: [PATCH 3/4][AArch64] Add scheduling model for Exynos M1

2015-11-05 Thread Evandro Menezes
2015-11-05 Evandro Menezes gcc/ * config/aarch64/aarch64-cores.def: Use the Exynos M1 sched model. * config/aarch64/aarch64.md: Include "exynos-m1.md". * config/arm/arm-cores.def: Use the Exynos M1 sched model. * config/arm/arm.md: Include "exynos-m1.md".

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Segher Boessenkool
On Thu, Nov 05, 2015 at 02:04:47PM -0700, Martin Sebor wrote: > On 11/05/2015 10:09 AM, Segher Boessenkool wrote: > >On Thu, Nov 05, 2015 at 08:58:25AM -0700, Martin Sebor wrote: > >>I don't think that reiterating in a condensed form what the manual > >>doesn't make clear in many more words will he

Re: [hsa 5/12] New HSA-related GCC options

2015-11-05 Thread Joseph Myers
The new options need to be documented in invoke.texi. -- Joseph S. Myers jos...@codesourcery.com

Re: [hsa 3/12] HSA libgomp plugin

2015-11-05 Thread Joseph Myers
This new file should have the standard libgomp copyright / license notice. -- Joseph S. Myers jos...@codesourcery.com

Re: [hsa 1/12] Configuration and offloading-related changes

2015-11-05 Thread Joseph Myers
On Thu, 5 Nov 2015, Martin Jambor wrote: > libgomp plugin to be built. Because the plugin needs to use HSA > run-time library, I have introduced options --with-hsa-runtime (and > more precise --with-hsa-include and --with-hsa-lib) to help find it. New configure options should be documented in in

[hsa 12/12] HSA register allocator

2015-11-05 Thread Martin Jambor
Hi, because HSA backend is not based on RTL,we need our own, and it is in this patch. The allocator has been written by Michael Matz and I have put it into a separate email so that I can add him to CC, because he is much better suited to answer any questions or review comments. Thanks, Martin

[PATCH] [graphite] do not collect cold loops in scops

2015-11-05 Thread Sebastian Pop
* graphite-scop-detection.c (loop_is_valid_scop): Call optimize_loop_nest_for_speed_p. --- gcc/graphite-scop-detection.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c index ae8497d..f22e9cc 100644 ---

[hsa 10/12] HSAIL BRIG description header file (hopefully not a licensing issue)

2015-11-05 Thread Martin Jambor
Hi, the following patch adds a BRIG (binary representation of HSAIL) representation description. It is within a single header file describing the binary structures and constants of the format. Initially, I have created the file by copying out pieces of PDF documentation but the latest version o

[hsa 8/12] Pass manager changes

2015-11-05 Thread Martin Jambor
Hi, the following pathch has been actually already committed to trunk by Martin yesterday, but is necessary if you have an older trunk. It allows an optimization pass to declare the functon finished by returning TODO_discard_function. The pass manager will then discard the function. Martin 20

[hsa 9/12] Small alloc-pool fix

2015-11-05 Thread Martin Jambor
Hi, we use C++ new operators based on alloc-pools a lot in the subsequent patches and realized that on the current trunk, such new operators would needlessly call the placement ::new operator within the allocate method of pool-alloc. Fixed below by providing a new allocation method which does not

[hsa 7/12] Disabling the vectorizer for GPU kernels/functions

2015-11-05 Thread Martin Jambor
Hi, in the previous email I wrote we need to "change behavior" of a few optimization passes. One was the flattening of GPU functions and the other two are in the patch below. It all comes to that, at the moment, we need to switch off the vectorizer (only for the GPU functions, of course). We ar

[hsa 6/12] IPA-HSA pass

2015-11-05 Thread Martin Jambor
Hi, when a target construct is gridified, the HSA GPU function is associated with the CPU function throughout the compilation, so that they can be registered as a pair in libgomp. When a target or a parallel construct is not gridified, its body emerges out of OMP expansion as one gimple function.

[hsa 5/12] New HSA-related GCC options

2015-11-05 Thread Martin Jambor
Hi, the following small part of the merge deals with new options. It adds four independent things: 1) flag_disable_hsa is used by code in opts.c (in the first patch) to remember whether HSA has been explicitely disabled on the compiler command line. 2) -Whsa is a new warning we emit whene

[hsa 4/12] OpenMP lowering/expansion changes (gridification)

2015-11-05 Thread Martin Jambor
Hi, the patch in this email contains the changes to make our OpenMP lowering and expansion machinery produce GPU kernels for a certain limited class of loops. The plan is to make that class quite a big bigger, but only the following is ready for submission now. Basically, whenever the compiler c

[hsa 3/12] HSA libgomp plugin

2015-11-05 Thread Martin Jambor
Hi, the patch below adds the HSA-specific plugin for libgomp. The plugin implements the interface mandated by libgomp and takes care of finding any available HSA devices, finalizing HSAIL code and running it on HSA-capable GPUs. The plugin does not really implement any data movement functions (i

[hsa 2/12] Modifications to libgomp proper

2015-11-05 Thread Martin Jambor
Hi, The patch below contains all changes to libgomp files. First, it adds a new constant identifying HSA devices and a structure that is shared between libgomp and the compiler when kernels from kernels are invoked via dynamic parallelism. Second it modifies the GOMP_target_41 function so that i

[hsa 1/12] Configuration and offloading-related changes

2015-11-05 Thread Martin Jambor
Hi, this patch contains changes to the configuration mechanism and offload bits, so that users can build compilers with HSA support and it plays nicely with other accelerators despite using an altogether different implementation approach. With this patch, the user can request HSA support by inclu

Merge of HSA branch

2015-11-05 Thread Martin Jambor
Hi, we have had a few last-minute issues, so I apologize this is happening a bit late, but I would like to start the process or merging the HSA branch to GCC trunk. Changes to different parts of the compiler and libgomp are posted as individual emails in this thread. No two patches touch any sin

[PATCH] enable loop fusion on isl-15

2015-11-05 Thread Sebastian Pop
* graphite-optimize-isl.c (optimize_isl): Call isl_options_set_schedule_maximize_band_depth. * gcc.dg/graphite/fuse-1.c: New. * gcc.dg/graphite/fuse-2.c: New. * gcc.dg/graphite/interchange-13.c: Remove bogus check. --- gcc/graphite-optimize-isl.c

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Martin Sebor
On 11/05/2015 10:09 AM, Segher Boessenkool wrote: On Thu, Nov 05, 2015 at 08:58:25AM -0700, Martin Sebor wrote: I don't think that reiterating in a condensed form what the manual doesn't make clear in many more words will help. First, even users who do find the relevant text in the manual often

[PATCH 2/4][AArch64] Increase the loop peeling limit

2015-11-05 Thread Evandro Menezes
2015-11-05 Evandro Menezes gcc/ * config/aarch64/aarch64.c (aarch64_override_options_internal): Increase loop peeling limit. This patch increases the limit for the number of peeled insns. With this change, I noticed no major regression in either Geekbench v3 or SPEC CPU

Re: [PING] Re: [PATCH] c++/67913, 67917 - fix new expression with wrong number of elements

2015-11-05 Thread Martin Sebor
On 11/02/2015 09:55 PM, Jason Merrill wrote: On 10/26/2015 10:06 PM, Martin Sebor wrote: + if (TREE_CONSTANT (maybe_constant_value (outer_nelts))) +{ + if (tree_int_cst_lt (max_outer_nelts_tree, outer_nelts)) maybe_constant_value may return a constant, but that doesn't mean that

Re: [PATCH 6/6] Make SRA replace constant-pool loads

2015-11-05 Thread Alan Lawrence
On 3 November 2015 at 14:01, Richard Biener wrote: > > Hum. I still wonder why we need all this complication ... Well, certainly I'd love to make it simpler, and if the complication is because I've gone about trying to deal with especially Ada in the wrong way... > I would > expect that if > w

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Joseph Myers
On Thu, 5 Nov 2015, Martin Sebor wrote: > Yes, I agree that printing "disabled by -O0" when -fexceptions is > explicitly enabled on the command line is not right if the option > isn't actually affected by -O0. This would be prevented if we knew > which of the -fxxx options are or aren't controlled

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Martin Sebor
On 11/05/2015 11:07 AM, Joseph Myers wrote: On Thu, 5 Nov 2015, Martin Sebor wrote: There are several options marked Optimization that are actually matters of language semantics that I don't think have anything to do with -O options, e.g. -fexceptions and -fcx-limited-range. The Optimization t

Re: [PING 2] [PATCH] c++/67942 - diagnose placement new buffer overflow

2015-11-05 Thread Jason Merrill
OK, thanks. Jason

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Joseph Myers
On Thu, 5 Nov 2015, Martin Sebor wrote: > > There are several options marked Optimization that are actually matters of > > language semantics that I don't think have anything to do with -O options, > > e.g. -fexceptions and -fcx-limited-range. The Optimization tag really > > just means that it's

[gomp4] Merge trunk r229764 (2015-11-04) into gomp-4_0-branch

2015-11-05 Thread Thomas Schwinge
Hi! Committed to gomp-4_0-branch in r229821: commit bed2efe185cf13a52b9cf87ee52d74265f97d97b Merge: bb6471e bf3a27b Author: tschwinge Date: Thu Nov 5 18:02:08 2015 + svn merge -r 229562:229764 svn+ssh://gcc.gnu.org/svn/gcc/trunk git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/

Re: [C PATCH] Fix error-recovery with variable-sized compound literals (PR c/68090)

2015-11-05 Thread Joseph Myers
On Thu, 5 Nov 2015, Marek Polacek wrote: > This fixes an error-recovery problem, where we were trying to build > a C_MAYBE_CONST_EXPR even though the type is invalid. I think let's > just skip this for error_mark_nodes. > > Bootstrapped/regtested on x86_64-linux, ok for trunk? OK. -- Joseph S

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Daniel Gutson
On Thu, Nov 5, 2015 at 2:11 PM, Jonathan Wakely wrote: > On 5 November 2015 at 20:52, Daniel Gutson wrote: >> Real use cases: statistics and logging. It's a (one time) callback >> reporting that something went wrong, >> but not intended to fix things e.g. by attempting to free more memory. > > Why

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Martin Sebor
On 11/05/2015 10:10 AM, Joseph Myers wrote: On Thu, 5 Nov 2015, Martin Sebor wrote: optimiziation. We seem to have consensus that even though there might be exceptions (do we know what some of them are?) the vast majority optimizations that have -fxxx options are in fact not performed at -O0. I

Re: [PATCH 1/4][AArch64] Add scheduling and cost models for Exynos M1

2015-11-05 Thread Evandro Menezes
James, Since other members of the "tune_params" structure were signed integers, even though negative numbers would make no sense for most either, I followed the same pattern. Regardless, here's a patch with unsigned integers as you requested: [AArch64] Add extra tuning parameters for targ

[C PATCH] Fix error-recovery with variable-sized compound literals (PR c/68090)

2015-11-05 Thread Marek Polacek
This fixes an error-recovery problem, where we were trying to build a C_MAYBE_CONST_EXPR even though the type is invalid. I think let's just skip this for error_mark_nodes. Bootstrapped/regtested on x86_64-linux, ok for trunk? 2015-11-05 Marek Polacek PR c/68090 * c-parser.c

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Cesar Philippidis
On 11/05/2015 09:13 AM, Nathan Sidwell wrote: > On 11/05/15 12:01, Thomas Schwinge wrote: > >> On Thu, 5 Nov 2015 06:47:58 -0800, Cesar Philippidis >> wrote: >>> On 11/05/2015 04:14 AM, Thomas Schwinge wrote: > >>> Sorry, I must have mis-phrased it. The spec is unclear here. There are >>> three

Re: [PATCH] PR 68192 Export AIX TLS symbols

2015-11-05 Thread Paolo Bonzini
On 05/11/2015 17:38, David Edelsohn wrote: > On Thu, Nov 5, 2015 at 8:34 AM, Paolo Bonzini wrote: >> >> >> On 05/11/2015 17:28, David Edelsohn wrote: >>> [Explicitly copying build maintainers.] >>> >>> Paolo and Alexandre, >>> >>> Could you review and help with this patch? >>> >>> TLS symbols in

Re: Division Optimization in match and simplify

2015-11-05 Thread Richard Biener
On November 5, 2015 2:40:30 PM GMT+01:00, Michael Matz wrote: >Hi, > >On Wed, 4 Nov 2015, Richard Biener wrote: > >> Ah, it was _left_ shift of negative values that ubsan complains >about. > >Note that this is only for the frontend definition of shifts. I don't >see >why gimple shouldn't define

Re: [PATCH] PR 68192 Export AIX TLS symbols

2015-11-05 Thread David Edelsohn
Hi, Richi You mentioned GCC 5.3 release around the time of stage 1 ending in the GCC 5 status report: https://gcc.gnu.org/ml/gcc/2015-07/msg00197.html If the timeframe is later, we have more time to address the AIX libtool problem. Thanks, David On Thu, Nov 5, 2015 at 9:13 AM, Richard Biener

Re: [PATCH] PR 68192 Export AIX TLS symbols

2015-11-05 Thread Richard Biener
On November 5, 2015 5:38:45 PM GMT+01:00, David Edelsohn wrote: >On Thu, Nov 5, 2015 at 8:34 AM, Paolo Bonzini wrote: >> >> >> On 05/11/2015 17:28, David Edelsohn wrote: >>> [Explicitly copying build maintainers.] >>> >>> Paolo and Alexandre, >>> >>> Could you review and help with this patch? >>

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Nathan Sidwell
On 11/05/15 12:01, Thomas Schwinge wrote: On Thu, 5 Nov 2015 06:47:58 -0800, Cesar Philippidis wrote: On 11/05/2015 04:14 AM, Thomas Schwinge wrote: Sorry, I must have mis-phrased it. The spec is unclear here. There are three possible ways to interpret 'acc parallel loop reduction': 1.

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Joseph Myers
On Thu, 5 Nov 2015, Martin Sebor wrote: > optimiziation. We seem to have consensus that even though there > might be exceptions (do we know what some of them are?) the vast > majority optimizations that have -fxxx options are in fact not > performed at -O0. I think reflecting that in the output is

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Jonathan Wakely
On 5 November 2015 at 20:52, Daniel Gutson wrote: > Real use cases: statistics and logging. It's a (one time) callback > reporting that something went wrong, > but not intended to fix things e.g. by attempting to free more memory. Why can't that be done by replacing operator new with a user-define

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Segher Boessenkool
On Thu, Nov 05, 2015 at 08:58:25AM -0700, Martin Sebor wrote: > I don't think that reiterating in a condensed form what the manual > doesn't make clear in many more words will help. First, even users > who do find the relevant text in the manual often misunderstand it. > Others are misled by the "[

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Thomas Schwinge
Hi! Nathan, question here about clause splitting for combined OpenACC "parallel loop" and "kernels loop" constructs, in particular: #pragma acc parallel loop reduction([...]) On Thu, 5 Nov 2015 06:47:58 -0800, Cesar Philippidis wrote: > On 11/05/2015 04:14 AM, Thomas Schwinge wrote: > > >

Re: Fix 61441

2015-11-05 Thread Joseph Myers
On Thu, 5 Nov 2015, Sujoy Saraswati wrote: > > Some other places in this patch have similar issues with checking > > HONOR_SNANS && REAL_VALUE_ISNAN when they should check if the particular > > value is sNaN. > > I modified the code to check for sNaN specifically. The modified patch > is below.

Re: [PING 2] [PATCH] c++/67942 - diagnose placement new buffer overflow

2015-11-05 Thread Martin Sebor
If we use gcc_checking_assert it won't fire in release builds; let's go with that. Okay. Attached is an updated patch with that change. Martin gcc ChangeLog 2015-11-05 Martin Sebor PR c++/67942 * invoke.texi (-Wplacement-new): Document new option. * gcc/testsuite/g++.dg/warn/Wpla

Re: [PATCH] PR 68192 Export AIX TLS symbols

2015-11-05 Thread David Edelsohn
On Thu, Nov 5, 2015 at 8:34 AM, Paolo Bonzini wrote: > > > On 05/11/2015 17:28, David Edelsohn wrote: >> [Explicitly copying build maintainers.] >> >> Paolo and Alexandre, >> >> Could you review and help with this patch? >> >> TLS symbols in AIX display a new, different symbol type in nm output. >

Re: [PATCH] PR 68192 Export AIX TLS symbols

2015-11-05 Thread Paolo Bonzini
On 05/11/2015 17:28, David Edelsohn wrote: > [Explicitly copying build maintainers.] > > Paolo and Alexandre, > > Could you review and help with this patch? > > TLS symbols in AIX display a new, different symbol type in nm output. > Libtool explicitly creates a list of exported symbols for sha

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Jakub Jelinek
Hi! On Wed, Nov 04, 2015 at 09:55:49AM -0800, Cesar Philippidis wrote: So, you are going to deal with gang parsing incrementally? Fine with me. > +/* OpenACC 2.0: > + tile ( size-expr-list ) */ > + > +static tree > +c_parser_oacc_clause_tile (c_parser *parser, tree list) > +{ > + tree c, expr

Re: [PATCH] PR 68192 Export AIX TLS symbols

2015-11-05 Thread David Edelsohn
[Explicitly copying build maintainers.] Paolo and Alexandre, Could you review and help with this patch? TLS symbols in AIX display a new, different symbol type in nm output. Libtool explicitly creates a list of exported symbols for shared libraries using nm and does not recognize the new TLS sym

Re: [PATCH, ARM] PR target/68059 libgcc should not use __write for printing fatal error

2015-11-05 Thread Szabolcs Nagy
On 05/11/15 15:59, Richard Earnshaw wrote: On 05/11/15 12:30, Szabolcs Nagy wrote: libgcc/config/arm/linux-atomic-64bit.c uses __write to print an error message if the 64bit xchg method is not available in the kernel. __write is not part of the public libc abi. Since this code is only run on l

[PATCH, PR tree-optimization/68145] Fix vectype computation in vectorizable_operation

2015-11-05 Thread Ilya Enkovich
Hi, This patch fixes a way vectype is computed in vectorizable_operation. Currently op0 is always used to compute vectype. If it is a loop invariant then its type is used to get vectype which is impossible for booleans requiring a context to correctly compute vectype. This patch uses output

Re: [vec-cmp, patch 1/6] Add optabs for vector comparison

2015-11-05 Thread Ilya Enkovich
2015-10-27 23:52 GMT+03:00 Jeff Law : > > Sigh. I searched for the enum type, not for CODE_FOR_nothing ;( My bad. > > If it's easy to get rid of, yes. I believe we've got 3 uses of > CODE_FOR_nothing. AFAICT in none of those cases do we care about the code > other than does it correspond to COD

Re: [PATCH, ARM] PR target/68059 libgcc should not use __write for printing fatal error

2015-11-05 Thread Richard Earnshaw
On 05/11/15 12:30, Szabolcs Nagy wrote: > libgcc/config/arm/linux-atomic-64bit.c uses __write to print an error > message if the 64bit xchg method is not available in the kernel. > > __write is not part of the public libc abi. Since this code is only > run on linux the write syscall can be invoke

Re: [PATCH] clarify documentation of -Q --help=optimizers

2015-11-05 Thread Martin Sebor
On 11/05/2015 03:48 AM, Alexander Monakov wrote: On Thu, 5 Nov 2015, Joseph Myers wrote: On Wed, 4 Nov 2015, Martin Sebor wrote: Improving the compiler output is a good idea. The attached patch prints "[disabled by -O0]" instead of "[enabled]" when an optimization option is enabled by default

Re: [OpenACC] internal fn folding

2015-11-05 Thread Nathan Sidwell
On 11/04/15 05:02, Bernd Schmidt wrote: On 11/02/2015 02:56 PM, Nathan Sidwell wrote: On 10/28/15 14:40, Nathan Sidwell wrote: Richard, this patch adds folding for the new GOACC_DIM_POS and GOACC_DIM_SIZE internal functions. IIUC gimple_fold_call is the right place to add this. The size of a

Re: [PATCH] Simple optimization for MASK_STORE.

2015-11-05 Thread Yuri Rumyantsev
Hi All! I prepared another patch which performs insertion additional check on zero mask for masked stores if only parameter PARAM_ZERO_TEST_FOR_MASK_STORE has non-zero value. My attempt to use approach proposed by Richard with simpler alternative for comparison - use scalar type for 256-bit was no

[Ping][C++ Patch] PR c++/67846

2015-11-05 Thread Paolo Carlini
Hi, pinging this (admittedly minor) issue... On 10/26/2015 07:10 PM, Paolo Carlini wrote: Hi, in mainline this ICE on invalid doesn't exist anymore but we may want to avoid issuing the additional redundant "error: cannot convert ‘A::foo’ from type ‘void (A::)()’ to type ‘void (A::*)()’" and/

Re: [PATCH] Merge from gomp-4_5-branch to trunk

2015-11-05 Thread Nathan Sidwell
On 11/05/15 10:29, Jakub Jelinek wrote: Hi! I've merged the current state of gomp-4_5-branch into trunk, after bootstrapping/regtesting it on x86_64-linux and i686-linux. There are +FAIL: gfortran.dg/goacc/private-3.f95 -O (test for excess errors) +FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-

Re: [PATCH v3 1/2] [PR debug/67192] Fix C loops' back-jump location

2015-11-05 Thread Andreas Arnez
On Thu, Nov 05 2015, Bernd Schmidt wrote: > On 11/05/2015 12:33 PM, Andreas Arnez wrote: > >> Thanks again for reviewing. Are you going to look at patch #2 as well? > > Yeah, still thinking about that one. > >>> Does C++ have similar issues? >> >> Not this particular issue, AFAIK. But I've just

Re: [PING 2] [PATCH] c++/67942 - diagnose placement new buffer overflow

2015-11-05 Thread Jason Merrill
On 11/05/2015 10:12 AM, Martin Sebor wrote: On 11/04/2015 09:27 PM, Jason Merrill wrote: On 11/04/2015 07:15 PM, Martin Sebor wrote: There was a lot of discussion of C++ aliasing rules at the recent meeting; we really seem to be moving in the direction of being stricter about which union member

Re: [PATCH] Add configure flag for operator new (std::nothrow)

2015-11-05 Thread Daniel Gutson
On Wed, Nov 4, 2015 at 3:20 AM, Jonathan Wakely wrote: > On 4 November 2015 at 02:11, Daniel Gutson wrote: >> Since this is a nothrow new, we thought that probably the system >> might not be exceptions-friendly (such as certain embedded systems), >> so we wanted to provide the new_handler the abil

Re: [PATCH] tree-scalar-evolution.c: Handle LSHIFT by constant

2015-11-05 Thread Richard Biener
On Thu, Nov 5, 2015 at 2:26 PM, Alan Lawrence wrote: > On 3 November 2015 at 11:35, Richard Biener > wrote: >> >> I think this should simply re-write A << B to (type) (unsigned-type) A >> * (1U << B). >> >> Does that then still vectorize the signed case? > > I didn't realize our representation o

[PATCH] Fix tree_operand_hash traits

2015-11-05 Thread Richard Biener
It was overloading equal_keys and not keys and thus the hash table lookup used equal from the inerited pointer_hash ... (so pointer equality rather than operand_equal_p as desired). This makes hash_map work as intented. Bootstrap / regtest running on x86_64-unknown-linux-gnu. Richard. 2015-11-

Re: [PING 2] [PATCH] c++/67942 - diagnose placement new buffer overflow

2015-11-05 Thread Martin Sebor
On 11/04/2015 09:27 PM, Jason Merrill wrote: On 11/04/2015 07:15 PM, Martin Sebor wrote: There was a lot of discussion of C++ aliasing rules at the recent meeting; we really seem to be moving in the direction of being stricter about which union member is active. So I think we do want to diagnos

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Cesar Philippidis
On 11/04/2015 11:29 PM, Jakub Jelinek wrote: > On Wed, Nov 04, 2015 at 08:58:32PM -0800, Cesar Philippidis wrote: >> diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c >> index e3f55a7..4424596 100644 >> --- a/gcc/cp/pt.c >> +++ b/gcc/cp/pt.c >> @@ -14395,6 +14395,15 @@ tsubst_omp_clauses (tree clauses, bool

Re: Re: [AArch64][TLSGD][2/2] Implement TLS GD traditional for tiny code model

2015-11-05 Thread Jiong Wang
Marcus Shawcroft writes: +#ifdef HAVE_AS_TINY_TLSGD_RELOCS + return SYMBOL_TINY_TLSGD; +#else + return SYMBOL_SMALL_TLSGD; +#endif Rather than introduce blocks of conditional compilation it is better to gate different behaviours with a test on a constant expression. In this case add something

[gomp4, committed] Revert omp_data_i init handling in ccp and forwprop

2015-11-05 Thread Tom de Vries
Hi, This patch reverts the omp_data_i init handling in ccp and forwprop. Committed to gomp-4_0-branch. Thanks, - Tom Revert omp_data_i init handling in ccp and forwprop 2015-11-05 Tom de Vries Revert: 2015-04-21 Tom de Vries * tree-ssa-ccp.c: Include omp-low.h. (surely_varying_stmt

[gomp4, committed] Remove misc oacc kernels functions

2015-11-05 Thread Tom de Vries
Hi, this patch removes a number of unused function related to the oacc kernels region. Committed to gomp-4_0-branch. Thanks, - Tom Remove misc oacc kernels functions 2015-11-05 Tom de Vries * omp-low.c (get_bbs_in_oacc_kernels_region): (loop_get_oacc_kernels_region_entry, get_oacc_kern

[gomp4, committed] Remove gimple_stmt_omp_data_i_init_p

2015-11-05 Thread Tom de Vries
Hi, this patch: - removes a superfluous test on gimple_stmt_omp_data_i_init_p in tree-parloops.c - removes unused functions gimple_stmt_omp_data_i_init_p and get_omp_data_i. Committed to gomp-4_0-branch. Thanks, - Tom Remove gimple_stmt_omp_data_i_init_p 2015-11-05 Tom de Vries * omp-

Re: [openacc] tile, independent, default, private and firstprivate support in c/++

2015-11-05 Thread Cesar Philippidis
On 11/05/2015 04:14 AM, Thomas Schwinge wrote: > On Tue, 3 Nov 2015 14:16:59 -0800, Cesar Philippidis > wrote: >> This patch does the following to the c and c++ front ends: > >> * updates c_oacc_split_loop_clauses to filter out the loop clauses >>from combined parallel/kernels loops > >>

[gomp4, committed] Revert omp_data_i init handling in copy_prop

2015-11-05 Thread Tom de Vries
Hi, this patch reverts omp_data_i init handling in copy_prop. Committed to gomp-4_0-branch. Thanks, - Tom Revert omp_data_i init handling in copy_prop 2015-11-05 Tom de Vries revert: 2015-04-21 Tom de Vries * tree-ssa-copy.c (stmt_may_generate_copy): Handle .omp_data_i init conserv

[Fortran, patch, pr68218, v1] ALLOCATE with size given by a module function

2015-11-05 Thread Andre Vehreschild
Hi all, attached is a rather trivial patch to prevent multiple evaluations of a function in: allocate( array(func()) ) The patch tests whether the upper bound of the array is a function and calls gfc_evaluate_now(). Bootstrapped and regtested for x86_64-linux-gnu/f21. Ok for trunk? Regards,

Re: Add VIEW_CONVERT_EXPR to operand_equal_p

2015-11-05 Thread Richard Biener
On Wed, Nov 4, 2015 at 5:50 PM, Jan Hubicka wrote: >> > Are these supposed to be fixed by Richard's change to not use >> > useless_type_conversion for VCE, or is it another issue? >> >> Richard's change not to use useless_type_conversion for VCE was causing >> additional GIMPLE verification failur

Re: [PR64164] drop copyrename, integrate into expand

2015-11-05 Thread Richard Biener
On Thu, Nov 5, 2015 at 6:08 AM, Alexandre Oliva wrote: > On Sep 23, 2015, Alexandre Oliva wrote: > >> @@ -2982,38 +2887,39 @@ assign_parm_setup_block (struct assign_parm_data_all >> *all, > [snip] >> + if (GET_CODE (reg) != CONCAT) >> +stack_parm = reg; >> + else >> +/*

Re: Division Optimization in match and simplify

2015-11-05 Thread Michael Matz
Hi, On Wed, 4 Nov 2015, Richard Biener wrote: > Ah, it was _left_ shift of negative values that ubsan complains about. Note that this is only for the frontend definition of shifts. I don't see why gimple shouldn't define it to the only sensible definition there is, which also happens to be th

Re: [PATCH] PR/67682, break SLP groups up if only some elements match

2015-11-05 Thread Alan Lawrence
On 03/11/15 13:39, Richard Biener wrote: > On Tue, Oct 27, 2015 at 6:38 PM, Alan Lawrence wrote: >> >> Say I...P are consecutive, the input would have gaps 0 1 1 1 1 1 1 1. If we >> split the load group, we would want subgroups with gaps 0 1 1 1 and 0 1 1 1? > > As said on IRC it should be 4 1 1 1

Re: [PATCH] tree-scalar-evolution.c: Handle LSHIFT by constant

2015-11-05 Thread Alan Lawrence
On 3 November 2015 at 11:35, Richard Biener wrote: > > I think this should simply re-write A << B to (type) (unsigned-type) A > * (1U << B). > > Does that then still vectorize the signed case? I didn't realize our representation of chrec's could express that. Yes, it does - thanks! (And the avx51

  1   2   >