Re: [middle-end,patch] Making __builtin_signbit type-generic

2015-08-18 Thread FX
> .. I think this improvement means that in principle we could revert what we > committed for libstdc++/58625, thus increasing a little the consistency wrt > the other classification facilities in c_global/cmath (and c_std/cmath). Not > sure it's worth it. Can’t comment on whether it’s worth do

Re: [PR64164] drop copyrename, integrate into expand

2015-08-18 Thread Alexandre Oliva
On Aug 18, 2015, Alexandre Oliva wrote: >>> On Aug 17, 2015, Christophe Lyon wrote: Since this was committed (r226901), I can see that the compiler build fails for armeb targets, when building libgcc: > This patch fixes this particular case. I'll also add this configuration > to the

Re: Move some flag_unsafe_math_optimizations using simplify and match

2015-08-18 Thread Hurugalawadi, Naveen
Hi Richard, Thanks very much for your review and comments. >> Can you point me to which patterns exhibit this behavior? root(x)*root(y) as root(x*y) expN(x)*expN(y) as expN(x+y) pow(x,y)*pow(x,z) as pow(x,y+z) x/expN(y) into x*expN(-y) Long Double and Float variants FAIL with segmentation fau

Re: [RFC] COMDAT Safe Module Level Multi versioning

2015-08-18 Thread Cary Coutant
> Thanks, will make those changes. Do you recommend a different name > for this flag like -fmake-comdat-functions-static? Well, the C++ ABI refers to this as "vague linkage." It may be a bit too long or too ABI-specific, but maybe something like -f[no-]use-vague-linkage-for-functions or -f[no-]fu

Re: [PATCH] ivopts costs debug

2015-08-18 Thread Bin.Cheng
On Wed, Aug 19, 2015 at 5:19 AM, Segher Boessenkool wrote: > Hi, > > I've used this patch in the past for another port, and now again for > rs6000, and I think it is generally useful. It prints very verbose > information to the dump file about how ivopts comes up with its costs > for various form

Re: [PATCH GCC]Improve bound information in loop niter analysis

2015-08-18 Thread Bin.Cheng
On Wed, Aug 19, 2015 at 2:14 AM, Jeff Law wrote: > On 08/17/2015 04:01 AM, Bin.Cheng wrote: >>> >>> >>> + c0 = fold_convert (type, c0); >>> + c1 = fold_convert (type, c1); >>> + >>> + if (operand_equal_p (var, c0, 0)) >>> >>> I believe if c0 is not already of type type operand-equal

RE: [Patch, MIPS] MIPS specific optimization for o32 ABI

2015-08-18 Thread Steve Ellcey
On Thu, 2015-08-13 at 02:14 -0700, Matthew Fortune wrote: > Hi Steve, > > Overall, I don't think these optimizations are ready to include. In principle > the idea looks good but it is done at the wrong point in the compiler in my > opinion. > > The biggest concern I have is that the analysis shou

Re: [gomp4] OpenACC first private

2015-08-18 Thread Thomas Schwinge
Hi! On Mon, 10 Aug 2015 21:50:21 +0200, I wrote: > On Mon, 3 Aug 2015 10:30:49 -0400, Nathan Sidwell wrote: > > I've committed this patch to gomp4. The existing implementation of > > firstprivate > > presumes the existence of memory at the CTA level. This patch does away > > with > > that,

Re: [RFC] COMDAT Safe Module Level Multi versioning

2015-08-18 Thread Sriraman Tallam
On Tue, Aug 18, 2015 at 2:14 PM, Cary Coutant wrote: > Based on Richard's suggestion, I have a patch to localize comdat > functions which seems like a very effective solution to this problem. > The text size increase is limited to the extra comdat copies generated > for the special

PATCH to print_node for TREE_BINFO

2015-08-18 Thread Jason Merrill
When looking at access control bugs, it's nice to have a bit more information about a TREE_BINFO. Tested x86_64-pc-linux-gnu, applying to trunk. commit 98c80a68ea91426855ec2c04b6358aeb67909baf Author: Jason Merrill Date: Tue Aug 18 17:13:16 2015 -0400 * print-tree.c (print_node): Handl

C++ PATCH for DR 1155 (template arguments with internal linkage)

2015-08-18 Thread Jason Merrill
My patch for bug 50372 implemented DR 1155 for arguments of pointer type, but neglected to implement it for reference arguments. Tested x86_64-pc-linux-gnu, applying to trunk. commit 6fe0feb89daa09ff32709ca10734f8063a26f6e9 Author: Jason Merrill Date: Mon Aug 17 15:18:03 2015 -0400 DR 1

Re: [RFC] COMDAT Safe Module Level Multi versioning

2015-08-18 Thread Cary Coutant
> +@item -fno-weak-comdat-functions > +@opindex fno-weak-comdat-functions > +Do not use weak symbol support for comdat non-virtual functions, even if it > +is provided by the linker. By default, G++ uses weak symbols if they are > +available. This option is useful when comdat functions generated

[PATCH] ivopts costs debug

2015-08-18 Thread Segher Boessenkool
Hi, I've used this patch in the past for another port, and now again for rs6000, and I think it is generally useful. It prints very verbose information to the dump file about how ivopts comes up with its costs for various forms of memory accesses, which tends to show problems in the target's addr

Re: [RFC] COMDAT Safe Module Level Multi versioning

2015-08-18 Thread Cary Coutant
Based on Richard's suggestion, I have a patch to localize comdat functions which seems like a very effective solution to this problem. The text size increase is limited to the extra comdat copies generated for the specialized modules (modules with unsafe options) which is u

[PATCH] PR66870 PowerPC64 Enable gold linker with split stack

2015-08-18 Thread Lynn A. Boger
As discussed in PR 66870, for ppc64le and ppc64le it is preferred to use the gold linker with gccgo or gcc if the split stack option is enabled. Use of the gold linker with the split stack option results in less storage allocated for goroutine stacks; if split stack is used without the gold lin

Re: [middle-end,patch] Making __builtin_signbit type-generic

2015-08-18 Thread Paolo Carlini
.. I think this improvement means that in principle we could revert what we committed for libstdc++/58625, thus increasing a little the consistency wrt the other classification facilities in c_global/cmath (and c_std/cmath). Not sure it's worth it. Jon? Thanks, Paolo.

[PATCH] clone_function_name_1: Retain any stdcall suffix

2015-08-18 Thread Ray Donnelly
I'm not familiar with setting up GCC testcases yet so I expect to have to do that at least. To aid discussion, the commit message contains a testcase. -- Best regards, Ray. 0022-clone_function_name_1-Retain-any-stdcall-suffix.patch Description: Binary data

Re: [middle-end,patch] Making __builtin_signbit type-generic

2015-08-18 Thread FX
>> + __builtin_printf ("%d %d %g\n", __builtin_signbit (d), res_signbit, >> d); > Did you mean to keep this call to __builtin_printf? > OK with that removed, assuming it wasn't intentional. Indeed, that was a leftover from a debugging session. Committed to trunk, with that __builtin_printf

Re: [PATCH 2/2] Windows libcpp: Make path-exists semantics more Posix-like

2015-08-18 Thread Ray Donnelly
On Fri, Apr 25, 2014 at 9:33 PM, Kai Tietz wrote: > 2014-04-25 21:24 GMT+02:00 Pedro Alves : >> On 04/25/2014 08:05 PM, Kai Tietz wrote: >>> 2014-04-25 18:53 GMT+02:00 Pedro Alves : On 04/19/2014 09:41 PM, Kai Tietz wrote: > Isn't this function something better placed in libiberty?

Re: [PATCH] Fix middle-end/67133, part 1

2015-08-18 Thread Marek Polacek
On Tue, Aug 18, 2015 at 10:45:21AM +0200, Richard Biener wrote: > On Mon, Aug 17, 2015 at 7:31 PM, Jeff Law wrote: > > But in walking through all that, I think I've stumbled on a simpler > > solution. Specifically do as a little as possible and let the standard > > mechanisms clean things up :-)

Re: [PATCH, rs6000] Add some missing vector built-ins

2015-08-18 Thread David Edelsohn
On Tue, Aug 18, 2015 at 3:24 PM, Bill Schmidt wrote: > Hi, > > This is the first of several patches to come, adding vector interfaces > defined in ELFv2 ABI 1.1 but not yet implemented in GCC. This patch > handles a number of easy ones that just add more overloaded forms to > existing built-ins.

Re: [PATCH][1/n] dwarf2out refactoring for early (LTO) debug

2015-08-18 Thread Aldy Hernandez
On 08/18/2015 07:20 AM, Richard Biener wrote: This starts a series of patches (still in development) to refactor dwarf2out.c to better cope with early debug (and LTO debug). Awesome! Thanks. Aldyh, what other testing did you usually do for changes? Run the gdb testsuite against the new com

[PATCH, rs6000] Add some missing vector built-ins

2015-08-18 Thread Bill Schmidt
Hi, This is the first of several patches to come, adding vector interfaces defined in ELFv2 ABI 1.1 but not yet implemented in GCC. This patch handles a number of easy ones that just add more overloaded forms to existing built-ins. I've added three new tests for this patch that test code generat

Re: [PATCH][4/N] Introduce new inline functions for GET_MODE_UNIT_SIZE and GET_MODE_UNIT_PRECISION

2015-08-18 Thread Jeff Law
On 08/17/2015 05:38 AM, David Sherwood wrote: Hi, This is the last patch in the series. It follows on from: [PATCH][3/N] Replace the pattern GET_MODE_BITSIZE (GET_MODE_INNER (m)) with GET_MODE_UNIT_BITSIZE (m) As a simple optimisation, introduce new inline functions for GET_MODE_UNIT_SIZE and

Re: [PATCH 1/2] C++-ify dominance.c

2015-08-18 Thread Jeff Law
On 08/14/2015 10:02 PM, Mikhail Maltsev wrote: On 08/14/2015 10:54 AM, Richard Biener wrote: In fact initializing dom_info from that would allow it to work on SESE regions as well? Can't tell for sure. We would need a way to iterate through region's basic blocks (I'm not familiar with that cod

concept diagnostics

2015-08-18 Thread Andrew Sutton
This is not a proper patch. I'm missing the usual changelog and I'm still running the regression tests, but I wanted to get some opinions before committing more time to it. This patch extends the diagnostics for concepts to report precise failures when constraints are not satisfied. It currently r

Re: [RFC] COMDAT Safe Module Level Multi versioning

2015-08-18 Thread Sriraman Tallam
On Wed, Aug 12, 2015 at 10:36 PM, Sriraman Tallam wrote: > On Tue, Aug 4, 2015 at 11:43 AM, Sriraman Tallam wrote: >> On Tue, Jun 16, 2015 at 4:22 PM, Sriraman Tallam wrote: >>> On Tue, May 19, 2015 at 9:11 AM, Xinliang David Li >>> wrote: > > Hm. But which options are unsafe? Also w

Re: [PATCH GCC]Improve bound information in loop niter analysis

2015-08-18 Thread Jeff Law
On 08/17/2015 04:01 AM, Bin.Cheng wrote: + c0 = fold_convert (type, c0); + c1 = fold_convert (type, c1); + + if (operand_equal_p (var, c0, 0)) I believe if c0 is not already of type type operand-equal_p will never succeed. It's quite specific case targeting comparison between va

Re: [middle-end,patch] Making __builtin_signbit type-generic

2015-08-18 Thread Jeff Law
On 08/17/2015 02:14 PM, FX wrote: Attached patch makes __builtin_signbit type-generic in the middle-end (PR 36757). Error message will be issued (from gcc/c-family/c-common.c) if argument is not real (or too few, or too many). gcc_assert() is used in expand_builtin_signbit() it cases that shoul

[v3 patch] Backport Filesystem TS to GCC 5 branch

2015-08-18 Thread Jonathan Wakely
I've been meaning to backport the FIlesystem TS library to the GCC 5 branch for some time, so here it is. As with trunk it's only enabled for targets where it's known to build and pass the tests. Tested powerpc64le-linux, committed to gcc-5-branch. Backport Filesystem TS from mainline

Regenerated libstdc++-v3/* with automake-1.11.6

2015-08-18 Thread Jonathan Wakely
I need to make some changes to src/Makefile.am on the gcc-5-branch so this regenerates everything with automake-1.11.6 first. Tested powerpc64le-linux, committed to gcc-5-branch. * Makefile.in: Regenerate with automake-1.11.6. * aclocal.m4: Likewise. * configure: Likewise

[gomp4] oacc xform tweak

2015-08-18 Thread Nathan Sidwell
I've committed this to gomp4 branch. It changes the oacc_xform_on_device and oacc_xform_dim_pos calls to lose the GSI parameter. Thus they look similar to the interface we're implementing for the reduction transformations. The iterator in the caller is advanced before the call, so it isn't le

Re: [Patch] sext_hwi: Avoid left shift of negative value undefined behaviour

2015-08-18 Thread Jeff Law
On 08/18/2015 09:29 AM, Mikael Morin wrote: Le 14/08/2015 09:29, Richard Biener a écrit : On Thu, Aug 13, 2015 at 7:47 PM, Mike Stump wrote: On Aug 13, 2015, at 3:05 AM, Richard Biener wrote: Ok, then guard the << >> with __GCC__ and do the expensive bit stuff otherwise. Just to cater for o

Re: [Patch/rtl-expand] Take tree range info into account to improve LSHIFT_EXP expanding

2015-08-18 Thread Jeff Law
On 08/18/2015 06:54 AM, Jiong Wang wrote: Changes are: 1. s/shfit/shift/ 2. Re-write the comment. more explanations on the left shift across word size boundary scenario, explan gcc's current expand steps and what this optimization can improve. 3. Match the code to the

Re: PR67218: Fix invalid removal of FP cast

2015-08-18 Thread Jeff Law
On 08/18/2015 09:10 AM, Richard Sandiford wrote: simplify_unary_operation_1 has: /* (float_truncate (float x)) is (float x) */ if ((GET_CODE (op) == FLOAT || GET_CODE (op) == UNSIGNED_FLOAT) && (flag_unsafe_math_optimizations || (SCALAR_FLOAT_MODE_P (GET_MOD

Re: Forwarding -foffload=[...] from the driver (compile-time) to libgomp (run-time)

2015-08-18 Thread Thomas Schwinge
Hi! On Fri, 14 Aug 2015 22:56:30 +, Joseph Myers wrote: > On Fri, 14 Aug 2015, Thomas Schwinge wrote: > > > Can you suggest off-hand where you'd expect this option filtering to > > happen? Should this be during specs parsing in the driver; something > > like adding a lang_mask to gcc/gcc.c

Re: [PR64164] drop copyrename, integrate into expand

2015-08-18 Thread Kyrill Tkachov
On 17/08/15 03:56, Alexandre Oliva wrote: On Aug 16, 2015, Andreas Schwab wrote: Alexandre Oliva writes: On Aug 15, 2015, Andreas Schwab wrote: FAIL: gcc.target/aarch64/target_attr_crypto_ice_1.c (internal compiler error) In file included from /opt/gcc/gcc-20150815/gcc/testsuite/gcc.targ

[gomp4] Cleanup oacc xform target hooks

2015-08-18 Thread Nathan Sidwell
I've committed this to remove the GSI parameter from the existing openacc tranform target hooks. It seems that the gimple way is to just pass a statement, and the consumer creates its own iterator if needed. I'll address the on_device and dim_pos transformers next. nathan 2015-08-18 Nathan

Re: [Patch] sext_hwi: Avoid left shift of negative value undefined behaviour

2015-08-18 Thread Mikael Morin
Le 14/08/2015 09:29, Richard Biener a écrit : On Thu, Aug 13, 2015 at 7:47 PM, Mike Stump wrote: On Aug 13, 2015, at 3:05 AM, Richard Biener wrote: Ok, then guard the << >> with __GCC__ and do the expensive bit stuff otherwise. Just to cater for other host compilers doing sth unsensibly impl

PR67218: Fix invalid removal of FP cast

2015-08-18 Thread Richard Sandiford
simplify_unary_operation_1 has: /* (float_truncate (float x)) is (float x) */ if ((GET_CODE (op) == FLOAT || GET_CODE (op) == UNSIGNED_FLOAT) && (flag_unsafe_math_optimizations || (SCALAR_FLOAT_MODE_P (GET_MODE (op)) && ((unsigned)significand_si

Re: [PATCH] combine: Fix for PR67028

2015-08-18 Thread Segher Boessenkool
On Fri, Aug 07, 2015 at 06:43:28PM -0700, Segher Boessenkool wrote: > Bootstrapped and tested on powerpc64-linux. Applying to trunk; will > backport it in a week or so. I did that now (5 and 4.9). The patch needed a teeny bit of wiggling because the older branches still have #ifdef WORD_REGISTER

[PATCH][1/n] dwarf2out refactoring for early (LTO) debug

2015-08-18 Thread Richard Biener
This starts a series of patches (still in development) to refactor dwarf2out.c to better cope with early debug (and LTO debug). The first part (and some followups) will move stuff from dwarf2out_finish to dwarf2out_early_finish to get the early DIE tree "complete" as LTO early debug will assemble

PR67192 (Was: Re: [PATCH 1/3] Implement -Wmisleading-indentation (v4))

2015-08-18 Thread Andreas Arnez
On Tue, May 12 2015, David Malcolm wrote: > On Tue, 2015-05-12 at 17:21 -0400, David Malcolm wrote: > [...] >> Thanks; I've removed the new warning from -Wall, making the appropriate >> trivial doc changes, and committed it to trunk (r223098; attached). > > ...having bootstrapped®rtested it on x86

Re: [C++ Patch] PR 67160 ("static_assert feature test macro")

2015-08-18 Thread Paolo Carlini
Hi, On 08/18/2015 04:07 PM, Jason Merrill wrote: On 08/18/2015 08:54 AM, Paolo Carlini wrote: +// { dg-do compile { target c++1z } } This doesn't work; you need to use dg-options for C++1z currently. The test is simply skipped. The funny thing is that I noticed that a few weeks ago and fixed

Re: [PING][Patch] Add support for IEEE-conformant versions of scalar fmin* and fmax*

2015-08-18 Thread Richard Sandiford
Richard Biener writes: > On Tue, Aug 18, 2015 at 1:07 PM, David Sherwood > wrote: >>> On Mon, Aug 17, 2015 at 11:29 AM, David Sherwood >>> wrote: >>> > Hi Richard, >>> > >>> > Thanks for the reply. I'd chosen to add new expressions as this seemed >>> > more >>> > consistent with the existing M

Re: [C++ Patch] PR 67160 ("static_assert feature test macro")

2015-08-18 Thread Jason Merrill
On 08/18/2015 08:54 AM, Paolo Carlini wrote: +// { dg-do compile { target c++1z } } This doesn't work; you need to use dg-options for C++1z currently. OK with that change. Jason

Re: [nvptx] Incorrect %retval usage in C++ code

2015-08-18 Thread Nathan Sidwell
On 08/17/15 03:31, Thomas Schwinge wrote: Hi! I observed that for a (slowly increasing?) number of C++ testcases (gcc/testsuite/g++.*/), their nvptx compilation fails as follows: This is occurring because in C++land (some?) functions that return structs via a hidden parameter now also return

Re: top-level configure.ac: factor the libgomp check for posix-like OS

2015-08-18 Thread Gary Funck
On 08/18/15 08:52:31, Thomas Schwinge wrote: > Even if applicable regarding the libgomp configuration (because > nvptx-none has its own libgomp "port": libgomp/config/nvptx/), it seems a > bit strange to qualify nvptx-none as a POSIX-like system. Hmm... > > + > > +# Enable libgomp by default on P

Re: [PING][Patch] Add support for IEEE-conformant versions of scalar fmin* and fmax*

2015-08-18 Thread Richard Biener
On Tue, Aug 18, 2015 at 1:07 PM, David Sherwood wrote: >> On Mon, Aug 17, 2015 at 11:29 AM, David Sherwood >> wrote: >> > Hi Richard, >> > >> > Thanks for the reply. I'd chosen to add new expressions as this seemed more >> > consistent with the existing MAX_EXPR and MIN_EXPR tree codes. In addit

Re: [ARM] Use vector wide add for mixed-mode adds

2015-08-18 Thread Ramana Radhakrishnan
On 18/08/15 08:53, Michael Collison wrote: > > This patch is designed to address code that was not being vectorized due to > missing widening patterns in the ARM backend. Code such as: > > int t6(int len, void * dummy, short * __restrict x) > { > len = len & ~31; > int result = 0; > __as

Re: ira.c update_equiv_regs patch causes gcc/testsuite/gcc.target/arm/pr43920-2.c regression

2015-08-18 Thread Ramana Radhakrishnan
> Hi Marcus, > > On fsf-4.9 I see the test pass: > > PASS: gcc.target/arm/pr43920-2.c (test for excess errors) > PASS: gcc.target/arm/pr43920-2.c scan-assembler-times pop 2 > PASS: gcc.target/arm/pr43920-2.c scan-assembler-times beq 3 > Executing on host: arm-none-eabi-size pr43920-2.o (timeou

Re: [Patch/rtl-expand] Take tree range info into account to improve LSHIFT_EXP expanding

2015-08-18 Thread Jiong Wang
Jiong Wang writes: > Jeff Law writes: > >> On 08/14/2015 11:40 AM, Jiong Wang wrote: >>> >>>* Figuring out whether the shift source is coming from sign extension >>> by checking SSA_NAME_DEF_STMT instead of deducing from tree range >>> info. I fell checking the gimple statement is m

Re: [PATCH] Fix ICE with bogus posix_memalign call (PR middle-end/67222)

2015-08-18 Thread Richard Biener
On Tue, Aug 18, 2015 at 1:10 PM, Marek Polacek wrote: > On Tue, Aug 18, 2015 at 12:47:45PM +0200, Richard Biener wrote: >> Please instead change the tree-ssa-alias.c code to do >> >> if (callee != NULL >> && gimple_call_builtin_p (call, BUILT_IN_NORMAL)) >> switch (DECL_FUNCTION_CODE (

Re: [PATCH] Add extensions to dwarf2.def

2015-08-18 Thread Pierre-Marie de Rodat
On 08/18/2015 02:47 PM, Manuel López-Ibáñez wrote: Sorry, I did it before I read your message. For the future, I would advise to "Just Do It" and then say that you did it. It is a wiki, it can always be reverted if someone disagrees. Sure, I have no problem with the paternity of this change. ;-

[C++ Patch] PR 67160 ("static_assert feature test macro")

2015-08-18 Thread Paolo Carlini
Hi, submitter noticed that we have the extended static_assert but the value of the feature macro is still unconditionally 200410, whereas, eg, http://wg21.link/n4440#recs.cpp17 , has 201411. Submitter proposes to unconditionally, thus in c++11 and c++14 modes too, bump the value, but thinkin

Re: [PATCH] S390: Fix vec_load_bndry.

2015-08-18 Thread Ulrich Weigand
Dominik Vogt wrote: > The attached patch fixes the vec_load_bndry builtin on S390. The second > argument must be one of 64, 128, 256, ..., 4096, but the table expected that > value to fit into 3 bits. Makes sense. However, I'd really like to see a testcase that verifies we're accepting the corr

Re: [patch] Alter libstdc++ test to work after c++/67216 fix

2015-08-18 Thread Paolo Carlini
Hi, On 08/18/2015 02:41 PM, Jonathan Wakely wrote: With Paolo's fix the use of the safe-bool idiom in this test no longer compiles in C++11 or C++14. The requirement in TR1 is that it works "in a boolean context" and p1 == false is not necessarily a boolean context. Do an explicit conversion to

Re: [PATCH] Add extensions to dwarf2.def

2015-08-18 Thread Manuel López-Ibáñez
On 18 August 2015 at 14:38, Pierre-Marie de Rodat wrote: > > I think it would be great to copy this text in GCC's: may I do this? Sorry, I did it before I read your message. For the future, I would advise to "Just Do It" and then say that you did it. It is a wiki, it can always be reverted if som

RE: [PATCH][MIPS] Fix register renaming in the interrupt handlers

2015-08-18 Thread Robert Suchanek
Hi, > > gcc/ > > * config/mips/mips-protos.h (mips_hard_regno_rename_ok): New > > prototype. > > * config/mips/mips.c (mips_hard_regno_rename_ok): New > > function. > > (mips_hard_regno_scratch_ok): Likewise. > > (TARGET_HARD_REGNO_SCRATCH_OK): Define macro. > > * config/mips/m

[patch] Alter libstdc++ test to work after c++/67216 fix

2015-08-18 Thread Jonathan Wakely
With Paolo's fix the use of the safe-bool idiom in this test no longer compiles in C++11 or C++14. The requirement in TR1 is that it works "in a boolean context" and p1 == false is not necessarily a boolean context. Do an explicit conversion to make it valid in all modes. Tested powerpc64le-linux

[v3 patch] Fix header included by

2015-08-18 Thread Jonathan Wakely
While trying some header rearrangment I noticed that this file should include for addressof. Tested powerpc64le-linux, committing to trunk. commit 223119133ca91452b3e9979a2f1eeb4554210d12 Author: Jonathan Wakely Date: Tue Aug 18 13:03:40 2015 +0100 * include/bits/ptr_traits.h: Include

Re: [PATCH] Add extensions to dwarf2.def

2015-08-18 Thread Pierre-Marie de Rodat
On 08/18/2015 02:15 PM, Pedro Alves wrote: The blurb at the top of glibc's page explains this: https://sourceware.org/glibc/wiki/EditorGroup [...] Looks like neither GCC's nor GDB's borrowed that longer text yet. Ok, understood. Thank you very much! I think it would be great to copy this

[PATCH] S390: Fix vec_load_bndry.

2015-08-18 Thread Dominik Vogt
The attached patch fixes the vec_load_bndry builtin on S390. The second argument must be one of 64, 128, 256, ..., 4096, but the table expected that value to fit into 3 bits. Ciao Dominik ^_^ ^_^ -- Dominik Vogt IBM Germany >From 51d68bc3b6fd293504ff859763bbc4f3aff8cb69 Mon Sep 17 00:00:00 2

Re: [PATCH] Add extensions to dwarf2.def

2015-08-18 Thread Pedro Alves
On 08/18/2015 11:24 AM, Pierre-Marie de Rodat wrote: > I successfuly created the two wiki pages, thanks to both of you! > > As a side note, for some reason I could no longer login and I had to > re-create my account (same identifier, which worked). I'm not sure, but > I think it's the second ti

[patch] libstdc++/67066 disable concept checks for C++11 and up

2015-08-18 Thread Jonathan Wakely
This fixes a bootstrap failure with --enable-concept-checks, caused by the Filesystem code (built as C++14) not meeting the C++03 concept requirements for containers. I think building with --enable-concept-checks is crazy nowadays but this at least makes it possible. Rather than trying to fix th

Re: [PATCH] Fix ICE with bogus posix_memalign call (PR middle-end/67222)

2015-08-18 Thread Marek Polacek
On Tue, Aug 18, 2015 at 12:47:45PM +0200, Richard Biener wrote: > Please instead change the tree-ssa-alias.c code to do > > if (callee != NULL > && gimple_call_builtin_p (call, BUILT_IN_NORMAL)) > switch (DECL_FUNCTION_CODE (callee)) > ... Ok. I see that works as well because g

RE: [PING][Patch] Add support for IEEE-conformant versions of scalar fmin* and fmax*

2015-08-18 Thread David Sherwood
> On Mon, Aug 17, 2015 at 11:29 AM, David Sherwood > wrote: > > Hi Richard, > > > > Thanks for the reply. I'd chosen to add new expressions as this seemed more > > consistent with the existing MAX_EXPR and MIN_EXPR tree codes. In addition > > it > > would seem to provide more opportunities for o

Re: [PATCH] Fix ICE with bogus posix_memalign call (PR middle-end/67222)

2015-08-18 Thread Richard Biener
On Tue, Aug 18, 2015 at 12:28 PM, Marek Polacek wrote: > On Tue, Aug 18, 2015 at 10:47:44AM +0200, Richard Biener wrote: >> On Mon, Aug 17, 2015 at 8:01 PM, Marek Polacek wrote: >> > Here we were crashing on an invalid call to posix_memalign. The code in >> > lower_builtin_posix_memalign assumed

Re: [RFC][Scalar masks 1/x] Introduce GEN_MASK_EXPR.

2015-08-18 Thread Richard Biener
On Mon, Aug 17, 2015 at 6:22 PM, Ilya Enkovich wrote: > Hi, > > This patch starts a series introducing scalar masks support in the > vectorizer. It was discussed on the recent Cauldron and changes overiew is > available here: > https://gcc.gnu.org/wiki/cauldron2015?action=AttachFile&do=view&ta

Re: [PATCH] Fix ICE with bogus posix_memalign call (PR middle-end/67222)

2015-08-18 Thread Marek Polacek
On Tue, Aug 18, 2015 at 10:47:44AM +0200, Richard Biener wrote: > On Mon, Aug 17, 2015 at 8:01 PM, Marek Polacek wrote: > > Here we were crashing on an invalid call to posix_memalign. The code in > > lower_builtin_posix_memalign assumed that the call had valid arguments. > > The reason the C FE d

[Scalar masks 6/x] Vectorize bool statements

2015-08-18 Thread Ilya Enkovich
Hi, This patch adds vectorization for statements we can now get due to modified bool patterns. Comparison is transformed into vector comparison + GEN_MASK_EXPR. Other ops basically just get integer type. Thanks, Ilya -- 2015-08-17 Ilya Enkovich * tree-vectorizer.h (vect_var_kind):

Re: [PATCH] Add extensions to dwarf2.def

2015-08-18 Thread Pierre-Marie de Rodat
On 08/18/2015 11:36 AM, Manuel López-Ibáñez wrote: On 18/08/15 10:32, Pedro Alves wrote: On 08/14/2015 10:49 AM, Pierre-Marie de Rodat wrote: I also tried to create the new pages on the wiki but it says "You are not allowed to edit this page." (

Re: Move some flag_unsafe_math_optimizations using simplify and match

2015-08-18 Thread Richard Biener
On Mon, Aug 17, 2015 at 7:24 AM, Hurugalawadi, Naveen wrote: > Hi, > > Please find attached the modified patch as per the comments. > > Tested the patch on AArch64 and X86 without any regressions. > > The other hunks of the earlier patch have been removed as per the earlier > comments due to failu

[Scalar masks 5/x] Bool patterns

2015-08-18 Thread Ilya Enkovich
Hi, This patch adds few changes into existing bool patterns in case scalar masks are used: - for scalar masks we don't need comparison to be merged into cond expression - when bool in converted into integer we don't need to convert all producers and may just emit a single cond_expr instead

Re: [PATCH 2/2] Get rid of global state accesses in dominance.c

2015-08-18 Thread Richard Biener
On Sat, Aug 15, 2015 at 8:05 AM, Mikhail Maltsev wrote: > On 08/14/2015 11:02 AM, Richard Biener wrote: >> So the last time I did similar refactoring I wondered if we can somehow avoid >> the "noise" in non-IPA passes. Ideas I came up with are >> >> a) Inherit gimple/rtl pass classes from a cla

Re: ira.c update_equiv_regs patch causes gcc/testsuite/gcc.target/arm/pr43920-2.c regression

2015-08-18 Thread Ramana Radhakrishnan
> On fsf-4.9 I see the test pass: > > PASS: gcc.target/arm/pr43920-2.c (test for excess errors) > PASS: gcc.target/arm/pr43920-2.c scan-assembler-times pop 2 > PASS: gcc.target/arm/pr43920-2.c scan-assembler-times beq 3 > Executing on host: arm-none-eabi-size pr43920-2.o (timeout = 300) > spawn

Re: ira.c update_equiv_regs patch causes gcc/testsuite/gcc.target/arm/pr43920-2.c regression

2015-08-18 Thread Alex Velenko
On 18/08/15 10:45, Marcus Shawcroft wrote: On 18 August 2015 at 10:25, Alex Velenko wrote: On 31/07/15 12:04, Alex Velenko wrote: On 29/07/15 23:14, Jeff Law wrote: On 07/28/2015 12:18 PM, Alex Velenko wrote: On 21/04/15 06:27, Jeff Law wrote: On 04/20/2015 01:09 AM, Shiva Chen wrot

Re: ira.c update_equiv_regs patch causes gcc/testsuite/gcc.target/arm/pr43920-2.c regression

2015-08-18 Thread Marcus Shawcroft
On 18 August 2015 at 10:25, Alex Velenko wrote: > > > On 31/07/15 12:04, Alex Velenko wrote: >> >> On 29/07/15 23:14, Jeff Law wrote: >>> >>> On 07/28/2015 12:18 PM, Alex Velenko wrote: On 21/04/15 06:27, Jeff Law wrote: > > On 04/20/2015 01:09 AM, Shiva Chen wrote: >> >>

Re: [PATCH] Add extensions to dwarf2.def

2015-08-18 Thread Manuel López-Ibáñez
On 18/08/15 10:32, Pedro Alves wrote: On 08/14/2015 10:49 AM, Pierre-Marie de Rodat wrote: I also tried to create the new pages on the wiki but it says "You are not allowed to edit this page." (, I'm logged in as pmderodat).

[Scalar masks 4/x] Vecorization factor and vectype for bool statements

2015-08-18 Thread Ilya Enkovich
Hi, This patch adopts vectorization factor and vectype computation to statements operating with boolean operands. For comparison compared values are used to estimate VF. Other bool statements don't affect VF. Thanks, Ilya -- 2015-08-18 Ilya Enkovich * tree-vect-loop.c (vect_determ

Re: ira.c update_equiv_regs patch causes gcc/testsuite/gcc.target/arm/pr43920-2.c regression

2015-08-18 Thread Alex Velenko
On 31/07/15 12:04, Alex Velenko wrote: On 29/07/15 23:14, Jeff Law wrote: On 07/28/2015 12:18 PM, Alex Velenko wrote: On 21/04/15 06:27, Jeff Law wrote: On 04/20/2015 01:09 AM, Shiva Chen wrote: Hi, Jeff Thanks for your advice. can_replace_by.patch is the new patch to handle both cases.

Re: [Aarch64] Adjust tests to take LSE extension into account.

2015-08-18 Thread Marcus Shawcroft
On 18 August 2015 at 09:51, Matthew Wahab wrote: > gcc/testsuite > 2015-08-18 Matthew Wahab > > * gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Adjust > dg-options to disable LSE extensions. > * gcc.target/aarch64/atomic-op-acq_rel.c: Likewise. > * gcc.

Re: [PATCH GCC]Improve bound information in loop niter analysis

2015-08-18 Thread Bin.Cheng
On Tue, Aug 18, 2015 at 4:02 PM, Ajit Kumar Agarwal wrote: > > > -Original Message- > From: Bin.Cheng [mailto:amker.ch...@gmail.com] > Sent: Tuesday, August 18, 2015 1:08 PM > To: Ajit Kumar Agarwal > Cc: Richard Biener; Bin Cheng; GCC Patches; Vinod Kathail; Shail Aditya > Gupta; Vidhumo

Re: [Aarch64] Adjust tests to take LSE extension into account.

2015-08-18 Thread Matthew Wahab
On 14/08/15 16:18, Matthew Wahab wrote: On 14/08/15 14:36, Matthew Wahab wrote: Tests for the code generated by the Aarch64 backends for the __sync and __atomic builtins assume that they are implemented using sequences based on load-exclusive and store-exclusive instructions. ARMv8.1 introduces

Re: [PATCH GCC]Improve bound information in loop niter analysis

2015-08-18 Thread Richard Biener
On Tue, Aug 18, 2015 at 10:02 AM, Ajit Kumar Agarwal wrote: > > > -Original Message- > From: Bin.Cheng [mailto:amker.ch...@gmail.com] > Sent: Tuesday, August 18, 2015 1:08 PM > To: Ajit Kumar Agarwal > Cc: Richard Biener; Bin Cheng; GCC Patches; Vinod Kathail; Shail Aditya > Gupta; Vidhum

Re: [PATCH][AARCH64]Add backend combine_bfi pattern.

2015-08-18 Thread Marcus Shawcroft
On 5 August 2015 at 17:46, Renlin Li wrote: > Hi Kyrill, > > > On 30/07/15 17:08, Kyrill Tkachov wrote: >> >> Hi Renlin, >> >> On 30/07/15 16:50, Renlin Li wrote: >>> >>> Hi all, >>> >>> This insn should match the following similar rtx pattern and remove the >>> redundant zero_extend operation if

Re: [PATCH] Fix ICE with bogus posix_memalign call (PR middle-end/67222)

2015-08-18 Thread Richard Biener
On Mon, Aug 17, 2015 at 8:01 PM, Marek Polacek wrote: > Here we were crashing on an invalid call to posix_memalign. The code in > lower_builtin_posix_memalign assumed that the call had valid arguments. > The reason the C FE doesn't reject this code is, in short, that > int () is compatible with

Re: [PATCH] Fix middle-end/67133, part 1

2015-08-18 Thread Richard Biener
On Mon, Aug 17, 2015 at 7:31 PM, Jeff Law wrote: > On 08/14/2015 02:46 PM, Marek Polacek wrote: Then in isolate-paths in find_explicit_erroneous_behaviour we're walking the stmts in bb 2 and we find a null dereference, so insert_trap_and_remove_trailing_statements com

Re: [PATCH] Add extensions to dwarf2.def

2015-08-18 Thread Pedro Alves
On 08/14/2015 10:49 AM, Pierre-Marie de Rodat wrote: > I also tried to create the new pages on the wiki but it says "You are > not allowed to edit this page." > (, > I'm logged in as pmderodat). Does anyone know how I should

Re: [PATCH][AARCH64] Make arm_align_max_stack_pwr.c and arm_align_max_pwr.c compile testcase, instead of execution.

2015-08-18 Thread Marcus Shawcroft
On 28 July 2015 at 16:51, Renlin Li wrote: > 2015-07-28 Renlin Li > > * gcc.target/aarch64/arm_align_max_pwr.c: Make it a compile test case, > check the assembly. > * gcc.target/aarch64/arm_align_max_stack_pwr.c: Likewise. Hi, #include #include Test cases should not rel

Re: [PATCH 4/8] DWARF: add a language hook for fixed-point types

2015-08-18 Thread Pierre-Marie de Rodat
On 07/16/2015 10:43 AM, Pierre-Marie de Rodat wrote: Support for fixed-point types in GCC is not powerful enough for Ada fixed-point types: GNAT uses regular scalar types to implement them. This new language hook makes it possible to output the desired debugging information anyway. Here's the u

Re: [PATCH 7/8] DWARF: add a language hook for scalar biased types

2015-08-18 Thread Pierre-Marie de Rodat
On 07/16/2015 10:48 AM, Pierre-Marie de Rodat wrote: Front-ends like GNAT for Ada sometimes use biased encodings for integral types. This change creates a new language hook so that the bias information can make it into the debugging information back-end and introduces an experimental DWARF attri

RE: [PATCH GCC]Improve bound information in loop niter analysis

2015-08-18 Thread Ajit Kumar Agarwal
-Original Message- From: Bin.Cheng [mailto:amker.ch...@gmail.com] Sent: Tuesday, August 18, 2015 1:08 PM To: Ajit Kumar Agarwal Cc: Richard Biener; Bin Cheng; GCC Patches; Vinod Kathail; Shail Aditya Gupta; Vidhumouli Hunsigida; Nagaraju Mekala Subject: Re: [PATCH GCC]Improve bound info

[ARM] Use vector wide add for mixed-mode adds

2015-08-18 Thread Michael Collison
This patch is designed to address code that was not being vectorized due to missing widening patterns in the ARM backend. Code such as: int t6(int len, void * dummy, short * __restrict x) { len = len & ~31; int result = 0; __asm volatile (""); for (int i = 0; i < len; i++) result +

Re: [PATCH GCC]Improve bound information in loop niter analysis

2015-08-18 Thread Bin.Cheng
On Mon, Aug 17, 2015 at 6:49 PM, Ajit Kumar Agarwal wrote: > All: > > Does the Logic to calculate the Loop bound information through Value Range > Analyis uses the post dominator and > Dominator info. The iteration branches instead of Loop exit condition can be > calculated through post dominato

Re: [PATCH 5/5][ARM] Move initializer into arm-cores.def and arm-arches.def.

2015-08-18 Thread Ramana Radhakrishnan
On Mon, Aug 10, 2015 at 1:00 PM, Matthew Wahab wrote: > The ARM backend uses an unsigned long to record CPU feature flags and > there are currently 30 bits in use. This series of patches replaces the > single unsigned long with a representation based on an array of values. > > This patch updates t

Re: [PATCH 4/5][ARM] Use features sets for builtins.

2015-08-18 Thread Ramana Radhakrishnan
On Mon, Aug 10, 2015 at 12:58 PM, Matthew Wahab wrote: > The ARM backend uses an unsigned long to record CPU feature flags and > there are currently 31 bits in use. This series of patches replaces the > single unsigned long with a representation based on an array of values. > > This patch updates

Re: [PATCH 3/5][ARM] Use new feature set representation.

2015-08-18 Thread Ramana Radhakrishnan
On Mon, Aug 10, 2015 at 12:57 PM, Matthew Wahab wrote: > The ARM backend uses an unsigned long to record CPU feature flags and > there are currently 31 bits in use. This series of patches replaces the > single unsigned long with a representation based on an array of values. > > This patch replaces