Re: Builtin/headers: Constant arguments and adding extra entry points.

2015-06-08 Thread Ondřej Bílka
On Mon, Jun 08, 2015 at 01:55:47PM -0700, Richard Henderson wrote: > On 06/04/2015 12:35 PM, Ondřej Bílka wrote: > >char *strchr_c(char *x, unsigned long u); > >#define strchr(x,c) \ > >(__builtin_constant_p(c) ? strchr_c (x, c * (~0ULL / 255)) : strchr (x,c)) > > > > Certainly not a universal win

Re: Builtin/headers: Constant arguments and adding extra entry points.

2015-06-08 Thread Richard Henderson
On 06/04/2015 12:35 PM, Ondřej Bílka wrote: char *strchr_c(char *x, unsigned long u); #define strchr(x,c) \ (__builtin_constant_p(c) ? strchr_c (x, c * (~0ULL / 255)) : strchr (x,c)) Certainly not a universal win, especially for 64-bit RISC. This constant can be just as expensive to construc

Re: Static Chain Register on iOS AArch64

2015-06-08 Thread Richard Henderson
On 06/08/2015 10:00 AM, Richard Earnshaw wrote: r12 can *also* be clobbered by interworking calls or calls that span more than the branch range of a call instruction. Rare, but possible. I can only presume from this that nested functions are not reliable now, for very large programs. Unless

Re: Static Chain Register on iOS AArch64

2015-06-08 Thread Richard Earnshaw
On 08/06/15 17:58, Richard Henderson wrote: > On 06/06/2015 06:24 AM, Richard Earnshaw wrote: >> That's going to make it impossible to implement Go closures on AArch32, >> then, since the only call-clobbered register not used for parameter >> passing is r12 (ip) and that can be clobbered by functio

Re: Static Chain Register on iOS AArch64

2015-06-08 Thread Richard Henderson
On 06/06/2015 06:24 AM, Richard Earnshaw wrote: That's going to make it impossible to implement Go closures on AArch32, then, since the only call-clobbered register not used for parameter passing is r12 (ip) and that can be clobbered by function calls. No, because r12 is only clobbered by plt s

Re: Proposal for merging scalar-storage-order branch into mainline

2015-06-08 Thread Andreas Schwab
Mark Wielaard writes: > I am sorry, I normally use the git mirror and this branch doesn't seem > to be there and I don't know how to get the svn branch. http://gcc.gnu.org/git/?p=gcc.git;a=shortlog;h=refs/remotes/scalar-storage-order Andreas. -- Andreas Schwab, SUSE Labs, sch...@suse.de GPG K

Re: Proposal for merging scalar-storage-order branch into mainline

2015-06-08 Thread Mark Wielaard
On Mon, 2015-06-08 at 10:05 +0200, Eric Botcazou wrote: > It implements an attribute (C/C++/Ada only) that makes it possible to specify > the storage order (aka endianness) of scalar components of aggregate types; > for example, you can declare a structure with big-endian SSO containing only > sc

Re: [patch] fix _OBJC_Module defined but not used warning

2015-06-08 Thread Aldy Hernandez
On 06/08/2015 04:03 AM, Iain Sandoe wrote: Hi Aldy, On 7 Jun 2015, at 12:37, Aldy Hernandez wrote: On 06/07/2015 06:19 AM, Andreas Schwab wrote: Another fallout: FAIL: obj-c++.dg/try-catch-5.mm -fgnu-runtime (test for excess errors) Excess errors: : warning: '_OBJC_Module' defined but not us

Re: devbranches: ambigous characterisation of branches

2015-06-08 Thread Jonathan Wakely
On 7 June 2015 at 21:28, Wolfgang Hospital wrote: > in the repository contents description at > , numerous branch names are > listed as inactive, with some further comments. Right at the start there is > the longest list of such names, followed by "These

Re: Proposal for merging scalar-storage-order branch into mainline

2015-06-08 Thread Richard Biener
On Mon, Jun 8, 2015 at 10:05 AM, Eric Botcazou wrote: > Hi, > > I'd like to propose merging the scalar-storage-order branch that I have been > maintaining for a couple of years into mainline. Original announcement at: > https://gcc.gnu.org/ml/gcc/2013-05/msg00249.html > > It implements an attri

Re: ARM's Changing Call Used Registers Causes Weird Bugs

2015-06-08 Thread Ramana Radhakrishnan
On Mon, Jun 8, 2015 at 9:07 AM, lin zuojian wrote: > Hi, > in arm.c > static void > arm_conditional_register_usage (void) > ... > if (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_VFP) > { > /* VFPv3 registers are disabled when earlier VFP > versions are selected

Re: Proposal for merging scalar-storage-order branch into mainline

2015-06-08 Thread Andrew Pinski
On Mon, Jun 8, 2015 at 4:19 PM, Andrew Pinski wrote: > On Mon, Jun 8, 2015 at 4:05 PM, Eric Botcazou wrote: >> Hi, >> >> I'd like to propose merging the scalar-storage-order branch that I have been >> maintaining for a couple of years into mainline. Original announcement at: >> https://gcc.gnu

Re: Proposal for merging scalar-storage-order branch into mainline

2015-06-08 Thread Andrew Pinski
On Mon, Jun 8, 2015 at 4:05 PM, Eric Botcazou wrote: > Hi, > > I'd like to propose merging the scalar-storage-order branch that I have been > maintaining for a couple of years into mainline. Original announcement at: > https://gcc.gnu.org/ml/gcc/2013-05/msg00249.html > > It implements an attrib

ARM's Changing Call Used Registers Causes Weird Bugs

2015-06-08 Thread lin zuojian
Hi, in arm.c static void arm_conditional_register_usage (void) ... if (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_VFP) { /* VFPv3 registers are disabled when earlier VFP versions are selected due to the definition of LAST_VFP_REGNUM. */ for (re

Proposal for merging scalar-storage-order branch into mainline

2015-06-08 Thread Eric Botcazou
Hi, I'd like to propose merging the scalar-storage-order branch that I have been maintaining for a couple of years into mainline. Original announcement at: https://gcc.gnu.org/ml/gcc/2013-05/msg00249.html It implements an attribute (C/C++/Ada only) that makes it possible to specify the stora

Re: [patch] fix _OBJC_Module defined but not used warning

2015-06-08 Thread Iain Sandoe
Hi Aldy, On 7 Jun 2015, at 12:37, Aldy Hernandez wrote: > On 06/07/2015 06:19 AM, Andreas Schwab wrote: >> Another fallout: >> >> FAIL: obj-c++.dg/try-catch-5.mm -fgnu-runtime (test for excess errors) >> Excess errors: >> : warning: '_OBJC_Module' defined but not used [-Wunused-variable] > > ch

Re: Writing a dot product that vectorizes without -fassociative-math -fno-signed-zeros -fno-trapping-math

2015-06-08 Thread Richard Biener
On Thu, Jun 4, 2015 at 1:17 PM, Thomas Koenig wrote: > Hello world, > > Assume I want to calculate a dot product, > > s = sum(a[i]*b[i], i=1..n) > > The order of summation in this case should be arbitrary. > > Currently, the way to do this is to write out an explicit loop > (either by by the user