Re: [patch,avr] Simplify genmultilib.awk

2017-05-23 Thread Georg-Johann Lay
On 22.05.2017 13:47, Denis Chertykov wrote: 2017-05-22 15:37 GMT+04:00 Georg-Johann Lay : This patch simplifies genmultilib.awk so that it generates MULTILIB_REQUIRED instead of the complement, MULTILIB_EXCEPTIONS. The current awk script dates back to the days when we mapped all the > 200 devic

Re: Runtime checking of OpenACC parallelism dimensions clauses

2017-05-23 Thread Jakub Jelinek
On Thu, May 11, 2017 at 02:24:05PM +0200, Thomas Schwinge wrote: > Hi! > > OK for trunk? > > commit 0ba48b4faf85420fbe12971afdd6e0afe70778bb > Author: Thomas Schwinge > Date: Fri May 5 16:41:59 2017 +0200 > > Runtime checking of OpenACC parallelism dimensions clauses > >

Re: Web page for binaries

2017-05-23 Thread FX
Hi, I’m suggesting we apply the following patch to provide links to macOS package managers, where users can download binaries for GCC on macOS. I have included the two major ones, Homebrew and MacPorts. FX mac.diff Description: Binary data mac.ChangeLog Description: Binary data

Re: [testsuite, committed, PR65941] Add and use effective target rdrand

2017-05-23 Thread Rainer Orth
Hi Tom, > On 05/11/2017 04:44 PM, Rainer Orth wrote: >> Hi Tom, >> >>> 2017-05-01 Tom de Vries >>> >>> PR testsuite/65941 >>> * lib/target-supports.exp (check_effective_target_rdrand): New proc. >> >> the new effective-target keyword needs documenting in sourcebuild.texi. > > Attached p

RE: [PATCH] Match x86 family machine constraints section with constarints.md

2017-05-23 Thread Peryt, Sebastian
Gentle ping. Thanks, Sebastian -Original Message- From: Peryt, Sebastian Sent: Friday, April 28, 2017 11:31 AM To: Sandra Loosemore ; gcc-patches@gcc.gnu.org Cc: ubiz...@gmail.com; Koval, Julia ; kirill.yuk...@gmail.com Subject: RE: [PATCH] Match x86 family machine constraints section w

Re: Runtime checking of OpenACC parallelism dimensions clauses

2017-05-23 Thread Thomas Schwinge
Hi! On Tue, 23 May 2017 10:25:12 +0200, Jakub Jelinek wrote: > On Thu, May 11, 2017 at 02:24:05PM +0200, Thomas Schwinge wrote: > > OK for trunk? > > Runtime checking of OpenACC parallelism dimensions clauses > Ok. Thanks. As posted, committed to trunk in r248358: commit 681ad5cef0c3153f

Re: OpenACC 2.5 kernels construct: num_gangs, num_workers, vector_length clauses

2017-05-23 Thread Jakub Jelinek
On Thu, May 11, 2017 at 02:26:51PM +0200, Thomas Schwinge wrote: > OpenACC 2.5 kernels construct: num_gangs, num_workers, vector_length > clauses > > gcc/c/ > * c-parser.c (OACC_KERNELS_CLAUSE_MASK): Add > "PRAGMA_OACC_CLAUSE_NUM_GANGS", "PRAGMA_OACC_CL

[Patch, testsuite, committed] Fix bogus builtin-snprintf-warn-3.c failure for avr

2017-05-23 Thread Senthil Kumar Selvaraj
Hi, The below patch fixes failures in builtin-snprintf-warn-3.c for the avr target. The test declares a struct with an array member that has INT_MAX/32767 elements. This causes a "type xxx is too large" error for targets like the avr, which have pointers smaller or equal to (16 bit) int

Re: Make tree-ssa-strlen.c handle partial unterminated strings

2017-05-23 Thread Jakub Jelinek
On Wed, May 17, 2017 at 07:52:38AM +0100, Richard Sandiford wrote: > 2017-05-17 Richard Sandiford > > gcc/ > * tree-ssa-strlen.c (strinfo): Rename the length field to > nonzero_chars. Add a full_string_p field. > (compare_nonzero_chars, zero_length_string_p): New functions. >

Re: [PATCH] Avoid signed overflow in num_get::_M_extract_int (PR libstdc++/67214)

2017-05-23 Thread Jonathan Wakely
On 22/05/17 11:08 +0100, Jonathan Wakely wrote: On 20/05/17 15:10 +0800, Xi Ruoyao wrote: On 2017-05-19 15:38 +0100, Jonathan Wakely wrote: On 18/05/17 19:10 +0800, Xi Ruoyao wrote: This UB has been hiding so long... Indeed! Thanks for the patch. 2017-03-11  Xi Ruoyao   PR libstdc

Re: [Patch] SFINAE on is_same first in variant's _Tp&& constructor

2017-05-23 Thread Jonathan Wakely
On 22/05/17 16:14 -0400, Tim Song wrote: On Mon, May 22, 2017 at 9:21 AM, Jonathan Wakely wrote: On 19/05/17 22:40 -0700, Tim Shen via libstdc++ wrote: diff --git a/libstdc++-v3/include/std/variant b/libstdc++-v3/include/std/variant index 0e04a820d69..b9824a5182c 100644 --- a/libstdc++-v3/inc

Re: Remove unused "default_kind" member from gcc/omp-low.c's "struct omp_context"

2017-05-23 Thread Jakub Jelinek
On Fri, Mar 31, 2017 at 05:05:29PM +0200, Thomas Schwinge wrote: > It would appear that ever since the first version of gcc/omp-low.c got > committed to GCC trunk (more than ten years ago), it extraced OpenMP > default clause data that it doesn't actually use for anything. OK to The last use of t

Re: OpenACC 2.5 default (present) clause

2017-05-23 Thread Jakub Jelinek
On Fri, May 19, 2017 at 03:46:53PM +0200, Thomas Schwinge wrote: > > > - /* OpenMP clause: default. */ > > > + /* OpenACC clause: default ( none | present ). > > > + > > > + OpenMP clause: default ( firstprivate | none | private | shared ). > > > */ > > >OMP_CLAUSE_DEFAULT, > > > > >

Re: libgomp nvptx plugin: Debugging output for cuInit failure

2017-05-23 Thread Jakub Jelinek
On Mon, May 22, 2017 at 02:57:24PM +0200, Thomas Schwinge wrote: > Hi! > > OK for trunk? > > commit 7b2f06b7d2fd23b20d81fda8be6ec7453e8b3fe3 > Author: Thomas Schwinge > Date: Thu Dec 22 08:30:04 2016 +0100 > > libgomp nvptx plugin: Debugging output for cuInit failure > >

[committed] Remove redundant quotes in c-parser.c

2017-05-23 Thread Marek Polacek
Applying to trunk. 2017-05-23 Marek Polacek * c-parser.c (c_parser_compound_statement_nostart): Remove redundant quotes. diff --git gcc/c/c-parser.c gcc/c/c-parser.c index 2e01316..f3bcbee 100644 --- gcc/c/c-parser.c +++ gcc/c/c-parser.c @@ -4905,7 +4905,7 @@ c_parser_compound

SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Aldy Hernandez
Howdy! For Andrew's upcoming on-demand range work I have created a range class for use in his engine. Currently, the range class is only for SSA integers, but there is no reason why we couldn't adapt this for RTL or non-integer types at a later time. The class can live outside of his work,

[C++ PATCH] using decls

2017-05-23 Thread Nathan Sidwell
This patch addresses namespace and local scope using declarations. Unlike the using directive case, we already had separate workers for these, they just needed a bit of cleanup to use the new iterator and make them ready for the pushdecl change that's coming. I renamed them consistently with t

[PATCH] rs6000: Fix for separate shrink-wrapping for fp (PR80860, PR80843)

2017-05-23 Thread Segher Boessenkool
After my r248256, rs6000_components_for_bb allocates an sbitmap of size only 32 while it can use up to 64. This patch fixes it. It moves the n_components variable into the machine_function struct so that other hooks can use it. Tested on powerpc64-linux {-m32,-m64}. Will also test on AIX before

Re: C/C++ OpenACC: acc_pcopyin, acc_pcreate

2017-05-23 Thread Jakub Jelinek
On Mon, May 22, 2017 at 04:26:48PM +0200, Thomas Schwinge wrote: > In , we currently describe acc_pcopyin, acc_pcreate as "old > names", but they're not "old" but really "alternative names", with the > intention to provide them at symbol level, not via "#define"s. OK for > trunk? No. >

Re: Translate libgomp.oacc-c-c++-common/lib-32.c into Fortran (was: C/C++ OpenACC: acc_pcopyin, acc_pcreate)

2017-05-23 Thread Jakub Jelinek
On Mon, May 22, 2017 at 04:29:51PM +0200, Thomas Schwinge wrote: > Hi! > > On Mon, 22 May 2017 16:26:48 +0200, I wrote: > > C/C++ OpenACC: acc_pcopyin, acc_pcreate > > > libgomp/ > > [...] > > * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging

Re: Implementing OpenACC's Fortran module

2017-05-23 Thread Jakub Jelinek
On Mon, May 22, 2017 at 05:23:25PM +0200, Thomas Schwinge wrote: > --- libgomp/openacc_lib.h > +++ libgomp/openacc_lib.h > @@ -191,23 +191,9 @@ >end interface > >interface acc_pcopyin > -subroutine acc_pcopyin_32_h (a, len) > - use iso_c_binding, only: c_int32_t >

Re: OpenACC 1.0 compatibility: acc_async_wait, acc_async_wait_all

2017-05-23 Thread Jakub Jelinek
On Mon, May 22, 2017 at 07:42:38PM +0200, Thomas Schwinge wrote: > Hi! > > For OpenACC 1.0 compatibility, we need to provide the aliases > acc_async_wait, and acc_async_wait_all for acc_wait, and acc_wait_all, > respectively. OK for trunk? > > commit 0f8302913db6d2c23804a3463c51a47e623e76b2 > Au

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Nathan Sidwell
On 05/23/2017 06:48 AM, Aldy Hernandez wrote: The class can live outside of his work, as can be demonstrated by the attached patch. With it, I was able to rewrite the post-VRP range information to use this class and get rid of VR_ANTI_RANGE throughout the compiler. A VR_ANTI_RANGE of ~[5,10]

Re: [PATCH] Implement non-trivial std::random_device::entropy (PR libstdc++/67578)

2017-05-23 Thread Jonathan Wakely
On 22/05/17 22:10 +0800, Xi Ruoyao wrote: In very old Linux kernel (1.3.x) there is random.h but not RNDGETENTCNT. The random.h without RNDGETENTCNT was only used in the kernel internally. But at that time Linux Makefile didn't have "headers_install" target so user may copy all headers (including

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Jakub Jelinek
On Tue, May 23, 2017 at 06:48:15AM -0400, Aldy Hernandez wrote: > --- a/gcc/tree-ssanames.h > +++ b/gcc/tree-ssanames.h > @@ -45,14 +45,12 @@ struct GTY(()) ptr_info_def >unsigned int misalign; > }; > > -/* Value range information for SSA_NAMEs representing non-pointer variables. > */ > -

[PING][RFC, PATCH][ASAN] Implement dynamic allocas/VLAs sanitization.

2017-05-23 Thread Maxim Ostapenko
Hi, could someone take a look on this patch: https://gcc.gnu.org/ml/gcc-patches/2017-05/msg01374.html ? Thanks, -Maxim

Avoid ICE in fnsummary on complex predicates

2017-05-23 Thread Jan Hubicka
Hi, as noticed when bootstrapping ppc, it may happen that !exec does not imply nonconst becuase predicates are computed conservatively and we can throw away some information. Bootstrapped/regtested x86_64-linux, comitted. Honza * ipa-fnsummary.c (estimate_node_size_and_time): Do not sani

[PATCH][www] Deprecate MPX for GCC 7

2017-05-23 Thread Richard Biener
Appearantly we forgot to officially deprecate MPX in GCC 7 changes.html. The following adds the missing note. Ok? Thanks, Richard. 2017-05-23 Richard Biener * gcc-7/changes.html: Deprecate MPX. Index: changes.html ===

Re: [RFC, testsuite] Add dg-save-linenr

2017-05-23 Thread Tom de Vries
On 05/22/2017 06:55 PM, Tom de Vries wrote: Besides, it may be worthwhile contributing/suggesting this upstream. Will do. Sent 'relative line numbers and dg-line directive' to dejagnu ml ( http://lists.gnu.org/archive/html/dejagnu/2017-05/msg0.html ). Thanks, - Tom

Re: [RFC] propagate malloc attribute in ipa-pure-const pass

2017-05-23 Thread Prathamesh Kulkarni
On 19 May 2017 at 19:02, Jan Hubicka wrote: >> >> * LTO and memory management >> This is a general question about LTO and memory management. >> IIUC the following sequence takes place during normal LTO: >> LGEN: generate_summary, write_summary >> WPA: read_summary, execute ipa passes, write_opt_su

Ping ** 0.8571 [patch, fortran] Handle MATMUL(TRANSPOSE(A),B) in inline matmul

2017-05-23 Thread Thomas Koenig
Hi, after receiving no negative feedback on my RFC patch, I have deciced to submit the patch. The attached patch handles MATMUL(TRANSPOSE(A),B) in inlining matmul. Speed is a bit faster than the library version. Regression-tested. OK for trunk? Ping.

Re: PR80806

2017-05-23 Thread Prathamesh Kulkarni
On 22 May 2017 at 10:03, Jeff Law wrote: > On 05/18/2017 12:55 PM, Prathamesh Kulkarni wrote: >> Hi, >> The attached patch tries to fix PR80806 by warning when a variable is >> set using memset (and friends) but not used. I chose to warn in dse >> pass since dse would detect if the variable passed

remove call to memset in value-prof.c:free_hist()

2017-05-23 Thread Prathamesh Kulkarni
Hi Jeff, As discussed in the other thread, this patch removes dead call to memset in free_hist(). Bootstrap+tested on x86_64-unknown-linux-gnu. Cross-tested on arm*-*-*, aarch64*-*-*. OK for trunk ? Thanks, Prathamesh 2017-05-23 Prathamesh Kulkarni * value-prof.c (free_hist): Remove ca

[ping * 2] PR78736: New C warning -Wenum-conversion

2017-05-23 Thread Prathamesh Kulkarni
Hi, I would like to ping this patch for review: https://gcc.gnu.org/ml/gcc-patches/2017-05/msg00775.html Thanks, Prathamesh

Re: [PATCH] Introduce symtab_node::dump_{asm_,}name functions.

2017-05-23 Thread Martin Liška
On 05/19/2017 04:41 PM, Jan Hubicka wrote: We used to have fixed size cyclic buffer for those strings, so it was safe to invoke name/asm_name few times and still expect the result to be there. I wonder what happened to those? Using ggc is bit ugly here, but I suppose it is OK for debug output...

Re: [PATCH], PR target/80718, Improve PowerPC splat double word

2017-05-23 Thread Richard Sandiford
Michael Meissner writes: > When I was comparing spec 2006 numbers between GCC 6.3 and 7.1, there was one > benchmark that was noticeably slower (milc). In looking at the code > generated, > the #1 hot function (mult_adj_su3_mat_vec) had some cases where automatic > vectorization generated splat

Re: [PATCH][www] Deprecate MPX for GCC 7

2017-05-23 Thread Jeff Law
On 05/23/2017 06:50 AM, Richard Biener wrote: > > Appearantly we forgot to officially deprecate MPX in GCC 7 changes.html. > > The following adds the missing note. > > Ok? > > Thanks, > Richard. > > 2017-05-23 Richard Biener > > * gcc-7/changes.html: Deprecate MPX. I don't recall dep

Re: [PATCH] [Aarch64] Variable shift count truncation issues

2017-05-23 Thread Richard Sandiford
Wilco Dijkstra writes: > Richard Sandiford wrote: > >> Insn patterns shouldn't check can_create_pseudo_p, because there's no >> guarantee that the associated split happens before RA. In this case it >> should be safe to reuse operand 0 after RA if you change it to: > > The goal is to only create

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread David Malcolm
On Tue, 2017-05-23 at 14:11 +0200, Jakub Jelinek wrote: > On Tue, May 23, 2017 at 06:48:15AM -0400, Aldy Hernandez wrote: [...] > > --- /dev/null > > +++ b/gcc/range.h > > + > > +You should have received a copy of the GNU General Public License > > +along with GCC; see the file COPYING3. If not

[PATCH] [i386] Recompute the frame layout less often

2017-05-23 Thread Bernd Edlinger
Hi, this is the latest version of my patch. As already said, it attempts to compute the frame layout only when relevant data have changed. Apologies for doing more clean-up on Daniel's patch than absolutely necessary, but ... Bootstrap and reg-tested successfully on x86_64-pc-linux-gnu with uni

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Jakub Jelinek
On Tue, May 23, 2017 at 10:29:58AM -0400, David Malcolm wrote: > > Do we really want methods starting with capital letters? > > I understand why you can't use union, but I don't think we use > > CamelCase > > anywhere. > > FWIW in the JIT, I have a class switch_ (i.e. with a trailing > underscore)

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Andrew MacLeod
On 05/23/2017 08:11 AM, Jakub Jelinek wrote: On Tue, May 23, 2017 at 06:48:15AM -0400, Aldy Hernandez wrote: --- a/gcc/tree-ssanames.h +++ b/gcc/tree-ssanames.h @@ -45,14 +45,12 @@ struct GTY(()) ptr_info_def unsigned int misalign; }; -/* Value range information for SSA_NAMEs representi

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Andrew MacLeod
On 05/23/2017 10:34 AM, Jakub Jelinek wrote: On Tue, May 23, 2017 at 10:29:58AM -0400, David Malcolm wrote: Do we really want methods starting with capital letters? I understand why you can't use union, but I don't think we use CamelCase anywhere. FWIW in the JIT, I have a class switch_ (i.e. w

Re: [PATCH GCC]Check tieable TRUNCATE only if inner rtx is register

2017-05-23 Thread Richard Sandiford
Bin Cheng writes: > Hi, > Revision 247881 possibly exposes bug in RTL or ARM backend, while the > change itself > may be incomplete too. Given a TRUNCATE rtx with complicated sub-rtx, > backend may > want to know the complicated sub-rtx happens in context of TRUNCATE in > order to give > differen

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Jakub Jelinek
On Tue, May 23, 2017 at 10:38:44AM -0400, Andrew MacLeod wrote: > As follow on work we have discussed an interface which would be able to > calculate a bitmask (for either zeros or ones) from a range and vice versa.. Sometimes the range vs. nonzero_bits info is redundant, you can compute one from

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Richard Sandiford
Andrew MacLeod writes: > On 05/23/2017 08:11 AM, Jakub Jelinek wrote: >> On Tue, May 23, 2017 at 06:48:15AM -0400, Aldy Hernandez wrote: >>> --- a/gcc/tree-ssanames.h >>> +++ b/gcc/tree-ssanames.h >>> @@ -45,14 +45,12 @@ struct GTY(()) ptr_info_def >>> unsigned int misalign; >>> }; >>> >>

Re: [RFC, testsuite] Add dg-save-linenr

2017-05-23 Thread Mike Stump
On May 22, 2017, at 9:55 AM, Tom de Vries wrote: > > Attached patch adds the missing documentation. > > It looks like this in gccint.info: > ... > '{ dg-line LINENUMVAR }' > This DejaGnu directive sets the variable LINENUMVAR to the line > number of the source line. The variable LINENUM

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Andrew MacLeod
On 05/23/2017 10:54 AM, Jakub Jelinek wrote: On Tue, May 23, 2017 at 10:38:44AM -0400, Andrew MacLeod wrote: As follow on work we have discussed an interface which would be able to calculate a bitmask (for either zeros or ones) from a range and vice versa.. Sometimes the range vs. nonzero_bits

Make the OpenACC C++ acc_on_device wrapper "always inline" (was: [openacc] on_device fix)

2017-05-23 Thread Thomas Schwinge
Hi! On Thu, 29 Oct 2015 17:22:46 -0700, Nathan Sidwell wrote: > acc_on_device and it's builtin had a conflict. The function formally takes > an > enum argument, but the builtin takes an int -- primarily to avoid the > compiler > having to generate the enum type internally. > > This works f

Re: [PATCH] Match x86 family machine constraints section with constarints.md

2017-05-23 Thread Sandra Loosemore
On 04/28/2017 03:30 AM, Peryt, Sebastian wrote: Hi, Thank you for your comments. I edited my patch accordingly. As for some of your doubts: - REX is the opcode prefix to access 64-bit register extensions introduced in IA-32e mode. - EVEX is the encoding prefix which applies to SIMD operating

Re: OpenACC 2.5 kernels construct: num_gangs, num_workers, vector_length clauses

2017-05-23 Thread Thomas Schwinge
Hi! On Tue, 23 May 2017 11:48:09 +0200, Jakub Jelinek wrote: > On Thu, May 11, 2017 at 02:26:51PM +0200, Thomas Schwinge wrote: > > OpenACC 2.5 kernels construct: num_gangs, num_workers, vector_length > > clauses > Ok, thanks. Thanks. As posted, committed to trunk in r248370: commit 9d5c

[PATCH 0/5 v3] Vect peeling cost model

2017-05-23 Thread Robin Dapp
The last version of the patch series caused some regressions for ppc64. This was largely due to incorrect handling of unsupportable alignment and should be fixed with the new version. p2 and p5 have not changed but I'm posting the whole series again for reference. p1 only changed comment wording,

[PATCH 1/5 v3] Vect peeling cost model

2017-05-23 Thread Robin Dapp
gcc/ChangeLog: 2017-05-23 Robin Dapp * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Create DR_HAS_NEGATIVE_STEP. (vect_update_misalignment_for_peel): Define DR_MISALIGNMENT. (vect_enhance_data_refs_alignment): Use. (vect_duplicate_ssa_name_pt

Re: PR80806

2017-05-23 Thread Martin Sebor
On 05/18/2017 12:55 PM, Prathamesh Kulkarni wrote: Hi, The attached patch tries to fix PR80806 by warning when a variable is set using memset (and friends) but not used. I chose to warn in dse pass since dse would detect if the variable passed as 1st argument is a dead store. Does this approach l

[PATCH 2/5 v3] Vect peeling cost model

2017-05-23 Thread Robin Dapp
gcc/ChangeLog: 2017-05-23 Robin Dapp * tree-vect-data-refs.c (vect_update_misalignment_for_peel): Rename. (vect_get_peeling_costs_all_drs): Create function. (vect_peeling_hash_get_lowest_cost): Use vect_get_peeling_costs_all_drs. (vect_peeling_su

[PATCH 3/5 v3] Vect peeling cost model

2017-05-23 Thread Robin Dapp
gcc/ChangeLog: 2017-05-23 Robin Dapp * tree-vect-data-refs.c (vect_peeling_hash_choose_best_peeling): Return peeling info and set costs to zero for unlimited cost model. (vect_enhance_data_refs_alignment): Also inspect all datarefs with unknown misalignm

[PATCH 4/5 v3] Vect peeling cost model

2017-05-23 Thread Robin Dapp
gcc/ChangeLog: 2017-05-23 Robin Dapp * tree-vect-data-refs.c (vect_get_data_access_cost): Workaround for SLP handling. (vect_enhance_data_refs_alignment): Compute costs for doing no peeling at all, compare to the best peeling costs so far and avoid peeli

[PATCH 5/5 v3] Vect peeling cost model

2017-05-23 Thread Robin Dapp
gcc/testsuite/ChangeLog: 2017-05-23 Robin Dapp * gcc.target/s390/vector/vec-nopeel-2.c: New test. diff --git a/gcc/testsuite/gcc.target/s390/vector/vec-nopeel-2.c b/gcc/testsuite/gcc.target/s390/vector/vec-nopeel-2.c new file mode 100644 index 000..9b67793 --- /dev/null +++ b/gcc

Re: Remove unused "default_kind" member from gcc/omp-low.c's "struct omp_context"

2017-05-23 Thread Thomas Schwinge
Hi! On Tue, 23 May 2017 12:36:18 +0200, Jakub Jelinek wrote: > On Fri, Mar 31, 2017 at 05:05:29PM +0200, Thomas Schwinge wrote: > > Remove unused "default_kind" member from gcc/omp-low.c's "struct > > omp_context" > Ok for trunk. Thanks. As posted, committed to trunk in r248372: commit 0

Re: OpenACC 2.5 default (present) clause

2017-05-23 Thread Thomas Schwinge
Hi! On Tue, 23 May 2017 12:40:06 +0200, Jakub Jelinek wrote: > On Fri, May 19, 2017 at 03:46:53PM +0200, Thomas Schwinge wrote: > > > > - /* OpenMP clause: default. */ > > > > + /* OpenACC clause: default ( none | present ). > > > > + > > > > + OpenMP clause: default ( firstprivate | none

[C++ PATCH] break more out of pushdecl

2017-05-23 Thread Nathan Sidwell
this patch breaks some more workers out of pushdecl. 1) in function-scope pushdecl may need to set the decl's context. pushdecl had some funky code there to cope with pushing a function decl in its own context -- that's no longer needed with my changes to start_preparsed_function to get things

Re: [PATCH v2] Implement non-trivial std::random_device::entropy (PR libstdc++/67578)

2017-05-23 Thread Jonathan Wakely
On 22/05/17 22:28 +0800, Xi Ruoyao wrote: The new patch is attached.  Just merged the patches you sent and fixed the ChangeLog of gnu.ver and testsuite_abi.cc. (For fun:  I had mistakenly attached the Vim .swp file of the patch and almost sent it. :-p) Ha, that *definitely* wouldnt' have appli

[PATCH GCC][1/6]Move compare_tree to tree.c and expose the interface.

2017-05-23 Thread Bin Cheng
Hi, This patch set factors out runtime alias check code from tree-vect-data-refs.c and tree-vect-loop-manip.c as general interfaces in tree-data-ref.c. With this change other optimizers like tree loop distribution could version loop wrto the runtime alias checks. During this work, I also found cu

[PATCH GCC][2/6]Factor out code pruning runtime alias checks

2017-05-23 Thread Bin Cheng
Hi, This is the second patch in the set, it factors out code pruning runtime alias checks from file tree-vect-data-refs.c to tree-data-ref.c. It also introduces new interface prune_runtime_alias_test_list so that we can use it in pass like loop distribution. Bootstrap and test on x86_64 and AArch6

[PATCH GCC][4/6]Relax minimal segment length of DR_B for merging alias check

2017-05-23 Thread Bin Cheng
Hi, As commented in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80815#c1, We can relax minimal segment length of DR_B for merging. With this change, the new test can be improved to only one alias check. Note the condition is still accurate after this patch, it won't introduce false alias. Bootst

[PATCH GCC][3/6]Fix PR80815 by handling negative DR_STEPs in runtime alias check

2017-05-23 Thread Bin Cheng
Hi, This patch fixes PR80815 in which negative DR_STEP is mis-handled. It does below: 1) Reorder three cases in which we merge alias checks, in order like: old_case_A -> new_case_B old_case_B -> new_case_C (and removed as described in 3)) old_case_C -> new_case_A

[PATCH GCC][5/6]Change parameters to make functions independent to vect structure

2017-05-23 Thread Bin Cheng
Hi, This is a simple patch changing parameter to below functions: create_intersect_range_checks_index create_intersect_range_checks as well as updating calls to these functions. This is to make them independent to vectorizer's data structure. Bootstrap and test on x86_64 and AArch64, is it OK?

[PATCH GCC][6/6]Factor out code generating runtime alias checks

2017-05-23 Thread Bin Cheng
Hi, This patch factors out code generating runtime alias check from tree-vect-data-refs.c to tree-data-ref.c, as well as introduces new interface create_runtime_alias_checks for later use. Bootstrap and test on x86_64 and AArch64, is it OK? Thanks, bin 2017-05-22 Bin Cheng * tree-vec

Ipa function summary pass

2017-05-23 Thread Jan Hubicka
Hi, this patch finishes the breakup of ipa-inline and function analysis. The analysis is now done by separate pass and I will work on cleaning up the interfaces now. Honza * cgraphunit.c (symbol_table::process_new_functions): Update. * ipa-fnsummary.c (pass_data_inline_parameters)

[C++ PATCH] fix 80866

2017-05-23 Thread Nathan Sidwell
This patch fixes 80866, a regression I introduced. The parser stashes template-ids when tentatively parsing, such ids can contain lookups. We need to mark the lookup as 'kept', otherwise the first parse could say 'I'm done with this' and recycle it prematurely. Applied to trunk. nathan -- N

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Martin Sebor
--- /dev/null +++ b/gcc/range.h + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +. */ + +#ifndef GCC_RANGE_H +#define GCC_RANGE_H +#define MAX_RANGES 6 + +typedef class irange *irange_p; +en

[PATCH] Fix a SPARC -mcbcond compare-and-branch out of range failure.

2017-05-23 Thread Sheldon Lobo
The compare-and-branch distance was calculated incorrectly. This occurred because a -mflat sibcall returned an instruction count of 2 instead of 3. Fix sparc.md to match the output_sibcall() code in sparc.c. * config/sparc/sparc.md: Set the number of instructions correctly for -mfl

[PATCH] Fix PR middle-end/80823, ICE: verify_flow_info failed

2017-05-23 Thread Peter Bergner
The fix for PR80775 included a thinko bug that caused us to skip some case label statements. This leads to problems for test cases where we have multiple case labels that point to the same unreachable block, but are not mergeable since they don't have consecutive case values. This leads to a probl

Re: [PATCH GCC][3/6]Fix PR80815 by handling negative DR_STEPs in runtime alias check

2017-05-23 Thread Richard Sandiford
AIUI, the reason the old code mishandled negative steps was that the associated segment lengths were stored as sizetype and so looked like big unsigned values. Those values therefore satisfied tree_fits_uhwi_p even though they were semantically negative. Is that right? Assuming yes, and quoting

Re: [PATCH] PR c++/80544 strip cv-quals from cast results

2017-05-23 Thread Jonathan Wakely
On 18/05/17 13:44 -0400, Nathan Sidwell wrote: On 05/18/2017 01:40 PM, Jonathan Wakely wrote: + /* A prvalue of non-class type is cv-unqualified. */ + if (TREE_CODE (type) != REFERENCE_TYPE && !CLASS_TYPE_P (type)) +type = cv_unqualified (type); + References can't be CV qualified, so t

Re: [PATCH] PR c++/80544 strip cv-quals from cast results

2017-05-23 Thread Nathan Sidwell
On 05/23/2017 01:56 PM, Jonathan Wakely wrote: On 18/05/17 13:44 -0400, Nathan Sidwell wrote: References can't be CV qualified, so the REFERENCE_TYPE check seems superfluous? True. I did it because that matches the semantics of the cast according to the standard, but it isn't needed here. Is

Re: [PATCH] PR c++/80544 strip cv-quals from cast results

2017-05-23 Thread Jonathan Wakely
On 19/05/17 15:14 -0400, Jason Merrill wrote: On Thu, Apr 27, 2017 at 12:59 PM, Jonathan Wakely wrote: I also tried to add a warning like EDG's (see the PR) but it gave a false positive for direct-list-init of scoped enums (P0138R2, r240449) because that code goes through build_c_cast to perfor

Re: [PATCH] PR c++/80544 strip cv-quals from cast results

2017-05-23 Thread Jonathan Wakely
On 23/05/17 13:58 -0400, Nathan Sidwell wrote: On 05/23/2017 01:56 PM, Jonathan Wakely wrote: On 18/05/17 13:44 -0400, Nathan Sidwell wrote: References can't be CV qualified, so the REFERENCE_TYPE check seems superfluous? True. I did it because that matches the semantics of the cast accordi

Re: [PATCH 2/5 v3] Vect peeling cost model

2017-05-23 Thread Richard Sandiford
Robin Dapp writes: > @@ -1272,12 +1272,40 @@ vect_peeling_hash_get_lowest_cost (_vect_peel_info > **slot, > && !STMT_VINFO_GROUPED_ACCESS (stmt_info)) > continue; > > + int save_misalignment; >save_misalignment = DR_MISALIGNMENT (dr); > - vect_update_misalignment

Re: MinGW compilation warnings in libiberty's waitpid.c

2017-05-23 Thread Eli Zaretskii
> From: DJ Delorie > Cc: gcc-patches@gcc.gnu.org, gdb-patc...@sourceware.org > Date: Mon, 22 May 2017 15:38:40 -0400 > > Since (or "if") nobody will (should) use waitpid() on mingw anyway, and > since libiberty really wants to include waitpid.o, how difficult would > it be to use some #ifdefs to

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Martin Sebor
On 05/23/2017 04:48 AM, Aldy Hernandez wrote: Howdy! For Andrew's upcoming on-demand range work I have created a range class for use in his engine. Currently, the range class is only for SSA integers, but there is no reason why we couldn't adapt this for RTL or non-integer types at a later time

Re: MinGW compilation warnings in libiberty's waitpid.c

2017-05-23 Thread DJ Delorie
Eli Zaretskii writes: > Instead of making waitpid an always-failing stub on MinGW, wouldn't it > be better to make it work on MinGW? Like this: That's up to you, if it's target-specific. What about mingw64? > --- libiberty/waitpid.c~0 2016-08-01 18:50:21.0 +0300 > +++ libiberty/wa

[C++ PATCH] namespace bindings

2017-05-23 Thread Nathan Sidwell
There's a twisty set of function calling to get at a namespace binding. This patch cleans that up. nathan -- Nathan Sidwell 2017-05-23 Nathan Sidwell * name-lookup.c (find_namespace_binding): New. (pushdecl_maybe_friend_1): Use CP_DECL_CONTEXT. (set_identifier_type_value_with_scope): Use

Re: SSA range class and removal of VR_ANTI_RANGEs

2017-05-23 Thread Andrew MacLeod
On 05/23/2017 03:26 PM, Martin Sebor wrote: On 05/23/2017 04:48 AM, Aldy Hernandez wrote: Howdy! +typedef class irange *irange_p; FWIW, I find pointer typedefs more trouble than worth. They obscure the fact that they are pointers and cannot be made const by adding the const qualifier. E.g.,

[PATCH, i386]: Remove moves using pextr insn

2017-05-23 Thread Uros Bizjak
Hello! Implementing SImode and DImode moves using pextr insn doesn't bring anything, since the latency of pextr is slightly worse than movd for targets without efficient inter-unit moves. 2017-05-23 Uros Bizjak * config/i386/i386.md (*movdi_internal): Remove SSE4 alternative 18 (?r, *

Re: Default std::vector default and move constructor

2017-05-23 Thread François Dumont
Gentle reminder, ok to commit ? François On 19/05/2017 21:39, François Dumont wrote: Hi On 15/05/2017 21:31, Marc Glisse wrote: The __fill_bvector part of the fill overload for vector could do with some improvements as well. Looping is unnecessary, one just needs to produce the right mask an

C++ PATCH to add __integer_pack built-in for std::make_integer_sequence (c++/80396)

2017-05-23 Thread Jason Merrill
make_integer_sequence currently uses template metaprogramming to generate a sequence of integers, which is fairly expensive at compile time: PR 80396 asked for some built-in to speed it up. This patch introduces __integer_pack as a magic function taking a single integer argument; a call to this fu

Re: [PATCH] PR c++/80544 strip cv-quals from cast results

2017-05-23 Thread Jason Merrill
On Tue, May 23, 2017 at 2:00 PM, Jonathan Wakely wrote: > On 19/05/17 15:14 -0400, Jason Merrill wrote: >> >> On Thu, Apr 27, 2017 at 12:59 PM, Jonathan Wakely >> wrote: >>> >>> I also tried to add a warning like EDG's (see the PR) but it gave a >>> false positive for direct-list-init of scoped e

[C++ PATCH] pushdecl

2017-05-23 Thread Nathan Sidwell
This patch reimplements the innards of pushdecl, which deals with local and namespace scope pushing. I managed to collapse or remove a lot of special casing, which I think greatly improves the readability of this piece of code. We're still not onto the performance improvements though. natha

Re: [PATCH] [i386] Recompute the frame layout less often

2017-05-23 Thread Daniel Santos
On 05/22/2017 01:32 PM, Bernd Edlinger wrote: On 05/19/17 05:17, Daniel Santos wrote: No, I'm not at all comfortable with you making so many seemingly unnecessary changes to this code. (Although I wish I got this much feedback during my RFCs! :) I can accept the changes to is/count_stub_manag

RE: [PATCH] [Aarch64] Variable shift count truncation issues

2017-05-23 Thread Michael Collison
I updated the patch to resolve the big endian issues as recommended by Richard. I also changed all uses of 'can_create_pseudo_p' to '!reload_completed' to make the intent clearer. Bootstrapped and tested on aarch64-linux-gnu. Okay for trunk? 2017-05-22 Kyrylo Tkachov Michael Coll

Re: [patch] build xz (instead of bz2) compressed tarballs and diffs

2017-05-23 Thread Matthias Klose
On 15.05.2017 12:04, Markus Trippelsdorf wrote: > On 2017.05.15 at 16:24 +0200, Jakub Jelinek wrote: >> On Mon, May 15, 2017 at 04:13:44PM +0200, Markus Trippelsdorf wrote: >>> On 2017.05.15 at 14:02 +, Joseph Myers wrote: The xz manpage warns against blindly using -9 (for which --best is

Re: [patch] build xz (instead of bz2) compressed tarballs and diffs

2017-05-23 Thread Matthias Klose
On 18.05.2017 03:34, Richard Biener wrote: > On Mon, May 15, 2017 at 3:11 AM, Matthias Klose wrote: >> As discussed on IRC with Jakub and Richard here are is a small patch which >> builds xz compressed tarballs and diff files. >> >> Tested with >> >> maintainer-scripts/gcc_release \ >> -

Go patch committed: detect failure to set init priority

2017-05-23 Thread Ian Lance Taylor
This patch to the Go frontend detects a failure to set the init priority for a package. This would have caught the bug fixed in the patch in https://golang.org/cl/43610 aka https://gcc.gnu.org/ml/gcc-patches/2017-05/msg01416.html . Bootstrapped and ran Go tests on x86_64-pc-linux-gnu. Committed t

Re: RFA: PATCH to add id_strcmp helper function

2017-05-23 Thread Jason Merrill
On Thu, May 18, 2017 at 11:03 PM, Martin Sebor wrote: > On 05/18/2017 08:30 PM, Jason Merrill wrote: >> >> I got tired of writing strcmp (IDENTIFIER_POINTER and decided to wrap >> it in an inline function. I decided to use "id_strcmp" instead of >> just overloading strcmp, but I don't feel strong

C++ PATCH to -Wunused with C++17 structured bindings

2017-05-23 Thread Jason Merrill
Someone on IRC complained that there was no way to suppress -Wunused on structured bindings. It seemed to me that the way the feature works, we shouldn't warn about the bindings individually; users need to give each of the subobjects a name even if they're only interested in using one of them. So

Re: MinGW compilation warnings in libiberty's waitpid.c

2017-05-23 Thread Eli Zaretskii
> From: DJ Delorie > Cc: gcc-patches@gcc.gnu.org, gdb-patc...@sourceware.org > Date: Tue, 23 May 2017 15:37:32 -0400 > > > Eli Zaretskii writes: > > Instead of making waitpid an always-failing stub on MinGW, wouldn't it > > be better to make it work on MinGW? Like this: > > That's up to you,

Re: MinGW compilation warnings in libiberty's waitpid.c

2017-05-23 Thread DJ Delorie
Eli Zaretskii writes: >> What about mingw64? > > It will be covered as well, because it defines __MINGW32__, Ah, OK. > Is there anything else I need to do about this part to get it solved > in the upstream repository? A ChangeLog entry would be nice, so I don't have to write one ;-)

Re: PR80806

2017-05-23 Thread Martin Sebor
I attach an updated patch that actually bootstraps and (with one minor exception) passes regression tests. It's a C front end-only proof of concept for now. The complete patch will include attributes read-only and read-write and support C++ of course. I think the optimization bits can be done i

Re: [PATCH] [i386] Recompute the frame layout less often

2017-05-23 Thread Daniel Santos
On 05/23/2017 09:31 AM, Bernd Edlinger wrote: Hi, this is the latest version of my patch. As already said, it attempts to compute the frame layout only when relevant data have changed. Apologies for doing more clean-up on Daniel's patch than absolutely necessary, but ... Bootstrap and reg-tes

  1   2   >