Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread Uros Bizjak
Hello! > +int > get_fpu_except_flags (void) > { >unsigned short cw; >int excepts; >int result = 0; > > - __asm__ __volatile__ ("fnstsw\t%0" : "=a" (cw)); > + __asm__ __volatile__ ("fnstsw\t%0" : "=m" (cw)); >excepts = cw; > >if (has_sse()) You can use "=am" constraint here

Re: [PATCH] Add support for OpenMP fortran user defined reductions

2014-06-05 Thread Jakub Jelinek
On Tue, Jun 03, 2014 at 09:42:39AM +0200, FX wrote: > > As discussed with Tobias on IRC yesterday, the fact that I'd like to > > eventually backport the Fortran OpenMP 4.0 support to 4.9 branch > > poses a problem with the module.c changes > > But this is by design, because we’re not supposed to a

Re: [PATCH, PR 61391]

2014-06-05 Thread Richard Biener
On Wed, Jun 4, 2014 at 5:23 PM, Yuri Rumyantsev wrote: > Sorry, I sent you 'bad' patch, resend it. Ok. Thanks, Richard. > 2014-06-04 19:19 GMT+04:00 Yuri Rumyantsev : >> I converted test-case to Unix format and new patch is attached. >> >> 2014-06-04 19:14 GMT+04:00 Jakub Jelinek : >>> On Wed,

Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread Rainer Orth
Janne Blomqvist writes: > On Thu, Jun 5, 2014 at 1:04 AM, FX wrote: >> 2. Your review of the patch! > > Not a full review, just a few quick comments. > > - Wrt. libgfortran/gfortran.map: You have added the GFORTRAN_1.6 > symbol node, as you're the first one to export new symbols in the 4.10 >

Re: [patch, mips, tree] align microMIPS functions to 16 bits with -Os

2014-06-05 Thread Richard Biener
On Wed, 4 Jun 2014, Sandra Loosemore wrote: > On 06/04/2014 06:20 AM, Richard Biener wrote: > > On Tue, 3 Jun 2014, Richard Sandiford wrote: > > > > > Richi suggested just changing the alignment at output time. I assume > > > that would be a case of replacing the DECL_ALIGN in: > > > > > >/

Re: Fix address space computation in expand_debug_expr

2014-06-05 Thread Richard Biener
On Wed, Jun 4, 2014 at 10:06 PM, Senthil Kumar Selvaraj wrote: > For the AVR target, assertions in convert_debug_memory_address cause a > couple of ICEs (see PR 52472). Jakub suggested returning a NULL rtx, > which works, but on debugging further, I found that expand_debug_expr > appears to incorr

Re: [4.9, PR 61393] Disable IPA-CP of transactional memory clones

2014-06-05 Thread Richard Biener
On Wed, Jun 4, 2014 at 11:28 PM, Martin Jambor wrote: > Hi, > > this patch does the same thing (disables IPA-CP for nodes marked as > tm_clone) for the same reason as described in the previous mail but > for the 4.9 branch. > > I've confirmed it fixes the PR failure and passes bootstrap and > test

[Patch ARM] Fix bootstrap issue with thumb state + neon.

2014-06-05 Thread Ramana Radhakrishnan
Hi, In certain configurations of our auto-testers bootstrap fails because the enabled attribute depends on "opt_enabled" which is driven by state that is not constant for a compilation unit. We probably need a hot/ cold alternative which may be useful per insn. For now, work around this till

Re: C++ PATCH for c++/61382 (init-list evaluation order)

2014-06-05 Thread Andreas Schwab
* g++.dg/cpp0x/initlist86.C (main): Initialize i. diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist86.C b/gcc/testsuite/g++.dg/cpp0x/initlist86.C index 16af476..ace2ef9 100644 --- a/gcc/testsuite/g++.dg/cpp0x/initlist86.C +++ b/gcc/testsuite/g++.dg/cpp0x/initlist86.C @@ -11,7 +11,7 @@ exte

Re: [RFC][AArch64] Define TARGET_SPILL_CLASS

2014-06-05 Thread Ramana Radhakrishnan
> > Thanks Richard for the comments. My primary intention here is to use > TARGET_SPILL_CLASS to make FP_REGS as spill registers. > Do you think > AArch64 can benefit from TARGET_SPILL_CLASS hook. I agree that just > increasing GP2FP and FP2GP for all the modes as I am doing is not the > right thi

[PATCH][match-and-simplify] Fix testsuite fallout

2014-06-05 Thread Richard Biener
This fixes most of the testsuite fallout of earlier patches. Committed. Richard. 2014-06-05 Richard Biener * gimple-match-head.c (gimple_resimplify2): Verify constant folded result is really constant. (gimple_match_and_simplify): Likewise. Bail out for internal

[C PATCH] More locus tweaks (PR c/56724)

2014-06-05 Thread Marek Polacek
My previous patch for 56724 didn't handle all cases of this. So let's fix this now by using expr_loc for ic_argpass. Tested x86_64-unknown-linux-gnu, applying to trunk. 2014-06-05 Marek Polacek PR c/56724 * c-typeck.c (convert_for_assignment): Use expr_loc for ic_argpass.

Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread FX
Hi Janne, Thanks for the quick feedback. > - Wrt. libgfortran/gfortran.map: You have added the GFORTRAN_1.6 > symbol node, as you're the first one to export new symbols in the 4.10 > cycle. I've seen occasional confusion from users when they have symbol > version mismatches and e.g. "1.4" doesn't

Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread Uros Bizjak
Hello! > 0. Gradual underflow control is implemented as "not supported by the > processor" (its SUPPORT > function returns false, and the GET and SET procedures abort if you call > them). That’s explicitly > allowed by the standard, so it’s not actually “missing". We can improve on > this in th

Re: [Patch] PR55189 enable -Wreturn-type by default

2014-06-05 Thread Sylvestre Ledru
On 05/06/2014 01:31, Joseph S. Myers wrote: > On Wed, 4 Jun 2014, Sylvestre Ledru wrote: > >> Hello, >> >> Finally, I have been able to update all tests with -Wreturn-type enabled >> by default. AFAIK, under GNU/Linux Debian Jessie 64 bits, there is no >> PASS->FAIL tests. >> >> Now, I would like

Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread FX
> Please look at libgcc/config/i386/crtfastmath.c for how to set > MXCSR_FTZ from mxcsr. You already have all necessary bits in place, > the function is basically only: > > + if (has_sse()) > + { > +unsigned int cw_sse; > + > +__asm__ __volatile__ ("%vstmxcsr\t%0" : "=m" (cw_sse)); > +

Re: [patch, arm] fix gcc.target/arm/pr45094.c options

2014-06-05 Thread Richard Earnshaw
On 30/05/14 19:43, Sandra Loosemore wrote: > This execution test specifies -mcpu=cortex-a8 but there is no > corresponding check to make sure that the hardware/simulator being used > to run the test can run cortex-a8 code. (The specific case we tripped > over was in combination with a -mbig-end

Re: [PATCH, PR52252] Alternative way of vectorization for load groups of size 2 and 3.

2014-06-05 Thread Evgeny Stupachenko
make check passed: no new fails. On Wed, May 28, 2014 at 5:09 PM, Evgeny Stupachenko wrote: > Hi, > > The patch introduces alternative way of permutations for load groups > of size 2 and 3 which should be faster on architectures with low > parallelism. > The patch gives 2 times gain on Silvermont

Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread Uros Bizjak
On Thu, Jun 5, 2014 at 11:35 AM, FX wrote: >> Please look at libgcc/config/i386/crtfastmath.c for how to set >> MXCSR_FTZ from mxcsr. You already have all necessary bits in place, >> the function is basically only: >> >> + if (has_sse()) >> + { >> +unsigned int cw_sse; >> + >> +__asm__ _

Re: [PATCH, PR52252] Alternative way of vectorization for load groups of size 2 and 3.

2014-06-05 Thread Ramana Radhakrishnan
On Wed, May 28, 2014 at 2:09 PM, Evgeny Stupachenko wrote: > Hi, > > The patch introduces alternative way of permutations for load groups > of size 2 and 3 which should be faster on architectures with low > parallelism. > The patch gives 2 times gain on Silvermont to the test from PR52252 > (in ad

Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread Rainer Orth
Rainer Orth writes: > Janne Blomqvist writes: > >> On Thu, Jun 5, 2014 at 1:04 AM, FX wrote: >>> 2. Your review of the patch! >> >> Not a full review, just a few quick comments. >> >> - Wrt. libgfortran/gfortran.map: You have added the GFORTRAN_1.6 >> symbol node, as you're the first one to e

Re: [RFC][AArch64] Define TARGET_SPILL_CLASS

2014-06-05 Thread Marcus Shawcroft
On 5 June 2014 09:29, Ramana Radhakrishnan wrote: >> >> Thanks Richard for the comments. My primary intention here is to use >> TARGET_SPILL_CLASS to make FP_REGS as spill registers. > >> Do you think >> AArch64 can benefit from TARGET_SPILL_CLASS hook. I agree that just >> increasing GP2FP and FP

Re: [RFC][AArch64] Define TARGET_SPILL_CLASS

2014-06-05 Thread Ramana Radhakrishnan
>> I don't think increasing GP2FP and FP2GP costs is a bad thing. In a >> number of benchmarks we've seen increased moves between FP and integer >> registers and having this fix appears to help some of them. However >> moving this to generic model needs more benchmarking across a variety >> of core

Re: libgo patch committed: Merge from revision 18783 of master

2014-06-05 Thread Matthias Klose
Am 05.06.2014 03:28, schrieb Ian Lance Taylor: > I have committed a patch to libgo to merge from revision > 18783:00cce3a34d7e of the master library. This revision was committed > January 7. I picked this revision to merge to because the next revision > deleted a file that is explicitly merged in

Re: [fortran, patch] IEEE intrinsic modules

2014-06-05 Thread Janne Blomqvist
On Thu, Jun 5, 2014 at 1:13 PM, Rainer Orth wrote: > Rainer Orth writes: > >> Janne Blomqvist writes: >> >>> On Thu, Jun 5, 2014 at 1:04 AM, FX wrote: 2. Your review of the patch! >>> >>> Not a full review, just a few quick comments. >>> >>> - Wrt. libgfortran/gfortran.map: You have add

Re: [PATCH, Pointer Bounds Checker 6/x] New static constructor types

2014-06-05 Thread Ilya Enkovich
2014-06-04 17:35 GMT+04:00 Richard Biener : > On Wed, Jun 4, 2014 at 3:13 PM, Ilya Enkovich wrote: >> 2014-06-04 13:58 GMT+04:00 Richard Biener : >>> On Wed, Apr 16, 2014 at 2:33 PM, Ilya Enkovich >>> wrote: Hi, This patch add new static constructor types used by Pointer Bounds >

RE: [PATCH][MIPS] P5600 scheduling

2014-06-05 Thread Andrew Bennett
> FWIW, since regenerated files are often not posted as part of the patch, > I'd just assumed the committer would do that. I should have checked the > changelog though... Thats fine. I will remember in future not to include regenerated files in my patches. > > > Secondly, I have changed invoke

Re: [PATCH, Pointer Bounds Checker 13/x] Early versioning

2014-06-05 Thread Ilya Enkovich
On 04 Jun 11:59, Richard Biener wrote: > On Wed, Jun 4, 2014 at 8:46 AM, Jeff Law wrote: > > On 06/03/14 03:29, Richard Biener wrote: > >> > >> On Tue, Jun 3, 2014 at 7:55 AM, Ilya Enkovich > >> wrote: > >>> > >>> 2014-06-02 21:27 GMT+04:00 Jeff Law : > > On 06/02/14 04:48, Ilya Enkovic

Re: [PATCH, PR C++/61038] - g++ -E is unusable with UDL strings

2014-06-05 Thread Ed Smith-Rowland
On 05/20/2014 04:44 PM, Jason Merrill wrote: On 05/13/2014 08:59 PM, Ed Smith-Rowland wrote: + escape_it = escape_it || cpp_userdef_string_p (token->type) +|| cpp_userdef_char_p (token->type); Let's add the new cases to the previous statement instead of a new one. OK wit

[AArch64][COMMITTED] Update stack layout comment.

2014-06-05 Thread Marcus Shawcroft
I've committed to the attached to clarify the stack layout comment. /Marcusdiff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index 961e5c9..3348cf2 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -2078,37 +2078,35 @@ aarch64_save_or_restore_ca

Re: [PATCH, PR52252] Alternative way of vectorization for load groups of size 2 and 3.

2014-06-05 Thread Evgeny Stupachenko
New hook is related to vector instructions only. Vector instructions could be sequential in pipeline, but scalar - parallel. For x86 architectures TARGET_SCHED_REASSOC_WIDTH does not give required differentiation. General hooks could be potentially reused in other algorithms/by other architectures.

[PATCH][match-and-simplify] Fix bogus transform

2014-06-05 Thread Richard Biener
Transcribe error from forwprop, catched by pr54767.f90 in the fortran torture. Committed. 2014-06-05 Richard Biener * match.pd: Fix bogus (~x & y) | x -> x & y transform which should have simplified to x | y. Index: gcc/match.pd ==

Re: [PATCH, PR52252] Alternative way of vectorization for load groups of size 2 and 3.

2014-06-05 Thread Ramana Radhakrishnan
On 06/05/14 12:43, Evgeny Stupachenko wrote: New hook is related to vector instructions only. Vector instructions could be sequential in pipeline, but scalar - parallel. For x86 architectures TARGET_SCHED_REASSOC_WIDTH does not give required differentiation. General hooks could be potentially reu

Re: Fix a function decl in gfortran

2014-06-05 Thread Bernd Schmidt
On 06/04/2014 10:36 PM, Tobias Burnus wrote: Bernd Schmidt wrote: Even with this applied, I'm still seeing similar failures. I didn't claim that the patch would fix everything – nor that it was well tested. Just wanted to report back since the problem doesn't really show up on normal target

[PATCH][Fortran] Do not search -L library path for libgfortran.spec

2014-06-05 Thread Richard Biener
(sorry for the dups, forgot to include gcc-patches) The following patch fixes PR61418 by removing the odd code (probably copied from Java) that adds a -specs= command line flag if libgfortran.spec was found in a path specified by -L. It shouldn't be necessary to search those paths (and it could b

Re: [PATCH, Pointer Bounds Checker 13/x] Early versioning

2014-06-05 Thread Richard Biener
On Thu, Jun 5, 2014 at 1:18 PM, Ilya Enkovich wrote: > On 04 Jun 11:59, Richard Biener wrote: >> On Wed, Jun 4, 2014 at 8:46 AM, Jeff Law wrote: >> > On 06/03/14 03:29, Richard Biener wrote: >> >> >> >> On Tue, Jun 3, 2014 at 7:55 AM, Ilya Enkovich >> >> wrote: >> >>> >> >>> 2014-06-02 21:27 GMT

[AARch64][COMMITTED] Move saved_varargs_size.

2014-06-05 Thread Marcus Shawcroft
I've just committed the attached to co-locate saved_varargs_size with the other target specific frame related state... /Marcus 2014-06-05 Marcus Shawcroft * config/aarch64/aarch64.h (machine_function): Move saved_varargs_size from here... (aarch64_frameGTY): ... to h

Re: Fix address space computation in expand_debug_expr

2014-06-05 Thread Senthil Kumar Selvaraj
On Thu, Jun 05, 2014 at 09:46:25AM +0200, Richard Biener wrote: > On Wed, Jun 4, 2014 at 10:06 PM, Senthil Kumar Selvaraj > wrote: > > For the AVR target, assertions in convert_debug_memory_address cause a > > couple of ICEs (see PR 52472). Jakub suggested returning a NULL rtx, > > which works, bu

Re: [PATCH][C++] Fix PR61004

2014-06-05 Thread Richard Biener
On Tue, May 6, 2014 at 12:55 PM, Richard Biener wrote: > On Wed, 30 Apr 2014, Richard Biener wrote: > >> >> With no longer recording alias subsets using BINFOs we now emit >> bogus alias warnings for accessing empty bases. The following >> avoids this, accessing those with an incompatible alias-s

[PATCH, tree-ssa] Optimize loop invariant phi defs constants

2014-06-05 Thread Christian Bruel
Hello, while checking why a loop snippet like for (i = 0; i <= 5000; i++) if (b) a = 2; else a = x; was not optimized in -O2 (unless loop unrolling or loop switching), I found out that the case was already partially handled by Richard in PR43934. So this patch just adds a

[AArch64] [COMMITTED] Restructure callee save slot allocation logic.

2014-06-05 Thread Marcus Shawcroft
Refactor the existing implementation to use symbol SLOT_REQUIRED / SLOT_NOT_REQUIRED. The magic numbers used for SLOT_REQUIRED is moved from 0 to -1 in order to distinquish between the cases of SLOT_REQUIRED and offset 0. This distinction is important for a subsequent patch to restrucutre the h

Re: patch to fix PR61325

2014-06-05 Thread James Greenhalgh
On Wed, Jun 04, 2014 at 08:00:51PM +0100, Vladimir Makarov wrote: > On 2014-06-03, 6:02 PM, James Greenhalgh wrote: > > On Thu, May 29, 2014 at 06:38:22PM +0100, Vladimir Makarov wrote: > >>The following patch PR61325. The details can be found on > >> > >> https://gcc.gnu.org/bugzilla/show_bug

Re: [PATCH][C++] Fix PR61004

2014-06-05 Thread Jason Merrill
OK. Jason

Re: [PATCH, tree-ssa] Optimize loop invariant phi defs constants

2014-06-05 Thread Richard Biener
On Thu, 5 Jun 2014, Christian Bruel wrote: > Hello, > > while checking why a loop snippet like > > for (i = 0; i <= 5000; i++) > if (b) > a = 2; > else > a = x; > > was not optimized in -O2 (unless loop unrolling or loop switching), I > found out that the case was already

Re: C++ PATCH for c++/61382 (init-list evaluation order)

2014-06-05 Thread Jason Merrill
Oops, thanks. Jason

RE: [PATCH, Fortan] fix initialization of flag_errno_math and flag_associative_math

2014-06-05 Thread VandeVondele Joost
I have now verified that both new testcases indeed pass with gcc version 4.6.0 20100520 (experimental) [trunk revision 159620] (GCC) that is the revision where Tobias enabled associative math by default. So that this patch fixes a regression.

[COMMITTED][AArch64] Unify callee save slot allocation for X29 and X30.

2014-06-05 Thread Marcus Shawcroft
This patch restructures the callee slave slot allocation code to handle X29 and X30 consistently with the other core registers. The patch also ensures that the offset recorded for X30 is accurate. Committed. /Marcus 2014-06-05 Marcus Shawcroft Jiong Wang * config/aa

Re: [PATCH, Pointer Bounds Checker 13/x] Early versioning

2014-06-05 Thread Ilya Enkovich
2014-06-05 15:58 GMT+04:00 Richard Biener : > On Thu, Jun 5, 2014 at 1:18 PM, Ilya Enkovich wrote: >> On 04 Jun 11:59, Richard Biener wrote: >>> On Wed, Jun 4, 2014 at 8:46 AM, Jeff Law wrote: >>> > On 06/03/14 03:29, Richard Biener wrote: >>> >> >>> >> On Tue, Jun 3, 2014 at 7:55 AM, Ilya Enkovi

[C++ RFH] PR 56961

2014-06-05 Thread Paolo Carlini
Hi, in this minor issue, after a permerror about "passing ‘volatile foo’ as ‘this’ argument discards qualifiers" we crash with an infinite recursion in the gimplifier. The testcase: struct foo { }; typedef struct { volatile foo fields; } CSPHandleState; CSPHandleState a; void fn1 () { CSPH

Re: [C++ RFH] PR 56961

2014-06-05 Thread Richard Biener
On Thu, Jun 5, 2014 at 2:59 PM, Paolo Carlini wrote: > Hi, > > in this minor issue, after a permerror about "passing ‘volatile foo’ as > ‘this’ argument discards qualifiers" we crash with an infinite recursion in > the gimplifier. The testcase: > > struct foo { }; > > typedef struct > { > volatile

Re: [PATCH, Fortan] fix initialization of flag_errno_math and flag_associative_math

2014-06-05 Thread Janne Blomqvist
On Thu, Jun 5, 2014 at 3:54 PM, VandeVondele Joost wrote: > I have now verified that both new testcases indeed pass with > > gcc version 4.6.0 20100520 (experimental) [trunk revision 159620] (GCC) > > that is the revision where Tobias enabled associative math by default. So > that this patch fix

Re: [C++ RFH] PR 56961

2014-06-05 Thread Jason Merrill
On 06/05/2014 09:05 AM, Richard Biener wrote: + *expr_p = build2 (COMPOUND_EXPR, TREE_TYPE (*expr_p), + op0, build_fold_addr_expr (op1)); That seems like a fine approach. Jason

[COMMITTED][AArch64] Add frame_size and hard_fp_offset to machine.frame

2014-06-05 Thread Marcus Shawcroft
Each of the various frame related functions in the backend contains a bespoke set of frame layout calculations. This patch recognizes that all of these functions require three pieces of information from which they can trivially compute the various offsets and sizes they need. We compute the S

Re: [C++ RFH] PR 56961

2014-06-05 Thread Paolo Carlini
Hi, On 06/05/2014 03:12 PM, Jason Merrill wrote: On 06/05/2014 09:05 AM, Richard Biener wrote: + *expr_p = build2 (COMPOUND_EXPR, TREE_TYPE (*expr_p), + op0, build_fold_addr_expr (op1)); That seems like a fine approach. Thanks a lot guys. Therefor

Re: [C++ RFH] PR 56961

2014-06-05 Thread Richard Biener
On Thu, Jun 5, 2014 at 3:12 PM, Paolo Carlini wrote: > Hi, > > > On 06/05/2014 03:12 PM, Jason Merrill wrote: >> >> On 06/05/2014 09:05 AM, Richard Biener wrote: >>> >>> + *expr_p = build2 (COMPOUND_EXPR, TREE_TYPE (*expr_p), >>> + op0, build_fold_addr

Re: patch to fix PR61325

2014-06-05 Thread Christophe Lyon
On 5 June 2014 14:37, James Greenhalgh wrote: > On Wed, Jun 04, 2014 at 08:00:51PM +0100, Vladimir Makarov wrote: >> On 2014-06-03, 6:02 PM, James Greenhalgh wrote: >> > On Thu, May 29, 2014 at 06:38:22PM +0100, Vladimir Makarov wrote: >> >>The following patch PR61325. The details can be foun

[PATCH][match-and-simplify] Annotate generated source with line directives

2014-06-05 Thread Richard Biener
The following makes genmatch annotate gimple-match.c with (commented for now) line directives, similar to other generator programs. This should help associating generated code with parts in match.pd. Bootstrapped on x86_64-unknown-linux-gnu, applied. Richard. 2014-06-05 Richard Biener

Re: [C++ RFH] PR 56961

2014-06-05 Thread Paolo Carlini
Hi, On 06/05/2014 03:20 PM, Richard Biener wrote: I think the operands have to be reversed though - the type matches that of op0. Sorry ;) Something like this, then? Thanks, Paolo. /// Index: cp-gimplify.c === --- cp-

Re: [C++ RFH] PR 56961

2014-06-05 Thread Richard Biener
On Thu, Jun 5, 2014 at 3:26 PM, Paolo Carlini wrote: > Hi, > > > On 06/05/2014 03:20 PM, Richard Biener wrote: >> >> I think the operands have to be reversed though - the type matches that of >> op0. Sorry ;) > > Something like this, then? Yes. I suppose it's ok to re-order side-effects lhs, rhs

Re: [PATCH][match-and-simplify] Annotate generated source with line directives

2014-06-05 Thread Richard Earnshaw
On 05/06/14 14:25, Richard Biener wrote: > > The following makes genmatch annotate gimple-match.c with (commented > for now) line directives, similar to other generator programs. > This should help associating generated code with parts in match.pd. > I've often found these annotations more of a

Re: [PATCH][match-and-simplify] Annotate generated source with line directives

2014-06-05 Thread Richard Biener
On Thu, 5 Jun 2014, Richard Earnshaw wrote: > On 05/06/14 14:25, Richard Biener wrote: > > > > The following makes genmatch annotate gimple-match.c with (commented > > for now) line directives, similar to other generator programs. > > This should help associating generated code with parts in matc

[PATCH] Move get_addr_base_and_unit_offset_1() out of tree-dfa.h

2014-06-05 Thread Andrew MacLeod
I'd like to move this rather large inline function out of the header file and into the .c file. The function has the following comment: /* ??? This is a static inline here to avoid the overhead of the indirect calls +to VALUEIZE. But is this overhead really that significant? And should w

Re: [PATCH] Move get_addr_base_and_unit_offset_1() out of tree-dfa.h

2014-06-05 Thread Richard Biener
On Thu, Jun 5, 2014 at 3:46 PM, Andrew MacLeod wrote: > I'd like to move this rather large inline function out of the header file > and into the .c file. The function has the following comment: > > /* ??? This is a static inline here to avoid the overhead of the indirect > calls > +to VALUEIZ

Re: libgo patch committed: Merge from revision 18783 of master

2014-06-05 Thread Ian Lance Taylor
On Thu, Jun 5, 2014 at 3:24 AM, Matthias Klose wrote: > Am 05.06.2014 03:28, schrieb Ian Lance Taylor: >> I have committed a patch to libgo to merge from revision >> 18783:00cce3a34d7e of the master library. This revision was committed >> January 7. I picked this revision to merge to because the

[GOMP4, COMMITTED] OpenACC present data clause.

2014-06-05 Thread Thomas Schwinge
From: tschwinge gcc/ * gimplify.c (gimplify_scan_omp_clauses) : Don't block OMP_CLAUSE_MAP_FORCE_PRESENT. gcc/testsuite/ * c-c++-common/goacc/data-clause-duplicate-1.c: Extend. * c-c++-common/goacc/present-1.c: New file. git-svn-id: svn+ssh://gcc.g

[GOMP4, COMMITTED] OpenACC deviceptr clause.

2014-06-05 Thread Thomas Schwinge
From: tschwinge gcc/c/ * c-typeck.c (handle_omp_array_sections, c_finish_omp_clauses): Handle OMP_CLAUSE_MAP_FORCE_DEVICEPTR. gcc/ * gimplify.c (gimplify_scan_omp_clauses) (gimplify_adjust_omp_clauses): Handle OMP_CLAUSE_MAP_FORCE_DEVICEPTR.

[AArch64] Make sure start callee-save offset for D registers aligned

2014-06-05 Thread Jiong Wang
For AArch64, there may have been an odd num core registers need to be saved. This small patch ensure we remain 16 byte aligned for subsequent STP writes of D registers. OK for trunk? thanks. gcc/ * config/aarch64/aarch64.c (aarch64_layout_frame): Make sure start offset for vector regist

[Google/4_8] Fix testsuite/gcc.dg/ipa/ipa-sra-6.c

2014-06-05 Thread Teresa Johnson
I just committed the following patch to google/4_8 as 211279. This fixes a test failure with my backport of tree-sra fix r211180 from trunk. It turns out that the bug I fixed affected this test case, but because the dumping format is slightly different between google/4_8 and both google/4_9 and tr

Re: [C++ RFH] PR 56961

2014-06-05 Thread Paolo Carlini
Hi, On 06/05/2014 03:35 PM, Richard Biener wrote: On Thu, Jun 5, 2014 at 3:26 PM, Paolo Carlini wrote: Hi, On 06/05/2014 03:20 PM, Richard Biener wrote: I think the operands have to be reversed though - the type matches that of op0. Sorry ;) Something like this, then? Yes. I suppose it's

Re: [PATCH, Fortan] fix initialization of flag_errno_math and flag_associative_math

2014-06-05 Thread Dominique Dhumieres
> Ok for trunk. Thanks! Please don't rush! The behavior of -fno-signed-zeros -fno-trapping-math implying associative math has been changed (as in reverted) between r165758 (implied associative math) and r165930 (lost associative math). AFAICT it could be due to 165823. Investigating! I am also loo

[PATCH] Remove some (now) pointless current_loops checks

2014-06-05 Thread Richard Biener
This removes the obvious ones. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2014-06-05 Richard Biener * cfgexpand.c (expand_gimple_cond): Remove check for current_loops. (construct_init_block): Likewise. (construct_exit_block): Likewise.

Re: [PATCH, Pointer Bounds Checker 19/x] Support bounds in expand

2014-06-05 Thread Ilya Enkovich
On 04 Jun 16:36, Michael Matz wrote: > Hi, > > On Mon, 2 Jun 2014, Ilya Enkovich wrote: > > > > There is exactly one place (except for the self-recursive ones) where > > > you call the new store_expr with a non-null argument for bounds > > > target, and it seems to be only necessary for when so

[PATCH, x86] Improves x86 permutation expand

2014-06-05 Thread Evgeny Stupachenko
Hi, The patch passed bootstrap and make check. No new fails. The patch gives ~10% to test in pr52252 and potentially in pr61403. Is it ok? Thanks, Evgeny ChangeLog: 2014-06-05 Evgeny Stupachenko * config/i386/i386.c (expand_vec_perm_pblendv): New. Permutation expand using

Re: std::quoted doesn't respect padding

2014-06-05 Thread Ed Smith-Rowland
On 04/01/2014 07:33 AM, Jonathan Wakely wrote: [CCing gcc-patches] On 11/03/14 11:18 -0400, Ed Smith-Rowland wrote: On 02/14/2014 07:56 PM, Jonathan Wakely wrote: We need to implement this fix (probably after 4.9 is released though) http://cplusplus.github.io/LWG/lwg-active.html#2344 Here i

Re: [PATCH 3/5] introduce the binding oracle

2014-06-05 Thread Tom Tromey
> "Jeff" == Jeff Law writes: Jeff> Just a nit. C-style comment would be appreciated. It might also help Jeff> to clarify what "much more sane" really means here. I made this change locally. The new comment reads: /* Temporarily hide any binding oracle. Without this, calls to debug

Re: std::quoted doesn't respect padding

2014-06-05 Thread Jonathan Wakely
On 05/06/14 11:43 -0400, Ed Smith-Rowland wrote: On 04/01/2014 07:33 AM, Jonathan Wakely wrote: [CCing gcc-patches] On 11/03/14 11:18 -0400, Ed Smith-Rowland wrote: On 02/14/2014 07:56 PM, Jonathan Wakely wrote: We need to implement this fix (probably after 4.9 is released though) http://cpl

Re: [PATCH]Code size optimization for the fmul/fdiv and dmul/ddiv function in libgcc

2014-06-05 Thread Richard Earnshaw
On 04/06/14 07:56, Tony Wang wrote: > Hi there, > > In libgcc the file ieee754-sf.S and ieee754-df.S have some function > pairs which will be bundled into one .o file and sharing the same > .text section. For example, the fmul and fdiv, the libgcc makefile > will build them into one .o file and ar

Re: libgo patch committed: Merge from revision 18783 of master

2014-06-05 Thread Uros Bizjak
Hello! > I have committed a patch to libgo to merge from revision > 18783:00cce3a34d7e of the master library. This revision was committed > January 7. I picked this revision to merge to because the next revision > deleted a file that is explicitly merged in by the libgo/merge.sh > script. crypt

Re: [patch i386]: Fix PR/46219 Generate indirect jump instruction

2014-06-05 Thread Kai Tietz
Thanks for all your hints. Here is the updated patch ChangeLog testsuite 2014-06-05 Kai Tietz PR target/46219 * gcc.target/i386/sibcall-4.c: Remove xfail. ChangeLog 2014-06-05 Kai Tietz Richard Henderson PR target/46219 * config/i386/predicates.md (memory_nox32

Re: [PATCH, x86] Improves x86 permutation expand

2014-06-05 Thread Richard Henderson
On 06/05/2014 08:29 AM, Evgeny Stupachenko wrote: > + /* Figure out where permutation elements stay not in their > + respective lanes. */ > + for (i = 0, which = 0; i < nelt; ++i) > +{ > + unsigned e = d->perm[i]; > + if (e != i) > + which |= (e < nelt ? 1 : 2); > +}

Re: [patch i386]: Fix PR/46219 Generate indirect jump instruction

2014-06-05 Thread Richard Henderson
On 06/05/2014 09:47 AM, Kai Tietz wrote: > +(define_insn "*sibcall_intern" > + [(call (unspec [(mem:QI (match_operand:W 0 "memory_operand"))] Probably best to use memory_nox32_operand here (and the other define_insn patterns) too. Otherwise ok. r~

Re: [C++ RFH] PR 56961

2014-06-05 Thread Jason Merrill
On 06/05/2014 09:35 AM, Richard Biener wrote: I suppose it's ok to re-order side-effects lhs, rhs to rhs, lhs? Yes. Jason

C++ PATCH for c++/61343 (missing init for thread_local)

2014-06-05 Thread Jason Merrill
The bug here was that we were setting DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P for a variable where the explicitly written initializer is constant, but becomes a non-constant constructor call. Fixed thus. Tested x86_64-pc-linux-gnu, applying to trunk. commit 210aa8e75e0827163fd3041890404d39d

C++ PATCH to be more helpful about noexcept/thread_local in C++98 mode

2014-06-05 Thread Jason Merrill
We end up in cp_parser_diagnose_invalid_type_name for uses of noexcept and thread_local as well as constexpr, and we can give the same helpful message. Tested x86_64-pc-linux-gnu, applying to trunk. commit df531541273db6a1f885f48f7a4923bfbc437999 Author: Jason Merrill Date: Wed Jun 4 13:29:0

Re: libgo patch committed: Merge from revision 18783 of master

2014-06-05 Thread Ian Lance Taylor
On Thu, Jun 5, 2014 at 9:38 AM, Uros Bizjak wrote: > >> I have committed a patch to libgo to merge from revision >> 18783:00cce3a34d7e of the master library. This revision was committed >> January 7. I picked this revision to merge to because the next revision >> deleted a file that is explicitl

Re: [Patch] PR55189 enable -Wreturn-type by default

2014-06-05 Thread Joseph S. Myers
On Thu, 5 Jun 2014, Sylvestre Ledru wrote: > > Some of those patches appear to be addressing cases where control appears > > to reach the end of a function returning non-void, as opposed to cases > > where the return type defaults to int. > Do you have an example of the patches you are talking

[PR tree-optimization/61289] Fix equivalence invalidation when threading across loop backedge

2014-06-05 Thread Jeff Law
When I wrote the improved support for threading across backedges I tried to minimize the cost to invalidate equivalences. This led to some convoluted code to track things which might need invalidation (at PHI nodes), then further hacks to invalidate equivalences implied by traversal of parti

Re: [patch][gomp4] openacc loops

2014-06-05 Thread Tobias Burnus
Janne Blomqvist wrote: Fortran does not allow aliasing of dummy arguments, That's not quite true: It permits aliasing variables (also without TARGET or POINTER attribute) – but if you modify one, you may no longer access the other, unless they do have the POINTER or TARGET attribute. (See be

Re: Fix address space computation in expand_debug_expr

2014-06-05 Thread Jeff Law
On 06/05/14 06:19, Senthil Kumar Selvaraj wrote: gcc/ChangeLog 2014-06-05 Senthil Kumar Selvaraj PR target/52472 * cfgexpand.c (expand_debug_expr): Use address space of nested TREE_TYPE for ADDR_EXPR and MEM_REF. gcc/testsuite/ChangeLog 2014-06-05 Senthil Kumar Selv

Re: [PATCH 4/5] add gcc/gdb interface files

2014-06-05 Thread Jeff Law
On 06/04/14 14:39, Tom Tromey wrote: "Jakub" == Jakub Jelinek writes: +GCC_METHOD7 (gcc_decl, build_decl, +const char */* name */, +enum gcc_c_symbol_kind /* sym_kind */, +gcc_type /* sym_type */, +const char */* substitution_name */, +

Handle MULTILIB_REUSE in auto-generated SYSROOT_SUFFIX_SPEC macro

2014-06-05 Thread Julian Brown
Hi, The print-sysroot-suffix.sh script that can be used (via the t-sysroot-suffix makefile fragment) to auto-generate the SYSROOT_SUFFIX_SPEC macro for non-trivial multilib setups does not take into account the MULTILIB_REUSE target fragment variable. I'm not sure of a way to demonstrate how this

Re: [PATCH 4/5] add gcc/gdb interface files

2014-06-05 Thread Jakub Jelinek
On Thu, Jun 05, 2014 at 01:23:37PM -0600, Jeff Law wrote: > >>>+GCC_METHOD7 (gcc_decl, build_decl, > >>>+ const char */* name */, > >>>+ enum gcc_c_symbol_kind /* sym_kind */, > >>>+ gcc_type /* sym_type */, > >>>+ const char */* substitution_name */, > >>>+ gcc_addres

Re: [PATCH 5/5] add libcc1

2014-06-05 Thread Tom Tromey
> "Mike" == Mike Stump writes: Mike> On May 16, 2014, at 11:48 AM, Tom Tromey wrote: >> This patch adds the plugin to the gcc tree Mike> So, this code isn’t as portable as gcc (I can run a native gcc Mike> bootstrap on my binutils sim simulator for my target, and I’m a newlib Mike> target),

Re: [PATCH] Fix logic for detection of zero initializer (PR c/53119)

2014-06-05 Thread Jeff Law
On 06/04/14 10:47, S. Gilles wrote: PR c/53119 c/ * c-typeck.c (push_init_level, process_init_element, pop_init_level): Correct check for zero initialization, move missing brace warning to respect zero initialization. * gcc.dg/pr53119.c: New testcase. Than

[Google/4_8] Reduce memory overhead of LIPO COMDAT fixups

2014-06-05 Thread Teresa Johnson
(cc'ing a few additional people to help with review as David is out and I'm not sure Rong is available) This patch greatly reduces the memory overhead of the new COMDAT fixup analysis, by changing the second level hash tables to linked lists. I found that almost none of the second level hash table

[PATCH, rs6000][trunk, 4.9, 4.8] Fix PR target/61415, long double 128 issues

2014-06-05 Thread Peter Bergner
PR61415 shows a problem for two test cases that should only be tested if the target supports a 128-bit long double. In addition, the 128-bit long double pack and unpack builtins should not be enabled unless the target supports 128-bit long double. The following patch accomplishes that, as well as

Re: [patch, mips, tree] align microMIPS functions to 16 bits with -Os

2014-06-05 Thread Sandra Loosemore
On 06/05/2014 01:39 AM, Richard Biener wrote: [snip] Ok, we definitely need to preserve that (documented) behavior. I suppose it also sets DECL_USER_ALIGN. -falign-functions is probably another setter of DECL_ALIGN here. If we add a target hook that may adjust function alignment then it has

RFA: Small tweak to ira-lives.c:single_reg_class

2014-06-05 Thread Richard Sandiford
I'm about to post a series of patches that reworks the handling of standard constraints. As part of that I needed to make single_reg_class handle "extra" constraints in a similar way to the standard ones. It's not a particularly worthwhile change in itself -- not enough to justify this long essay

Re: [Google/4_8] Reduce memory overhead of LIPO COMDAT fixups

2014-06-05 Thread Rong Xu
This patch looks good to me. -Rong On Thu, Jun 5, 2014 at 12:45 PM, Teresa Johnson wrote: > (cc'ing a few additional people to help with review as David is out > and I'm not sure Rong is available) > > This patch greatly reduces the memory overhead of the new COMDAT fixup > analysis, by changing

Re: [RS6000] PR61300 K&R incoming args

2014-06-05 Thread Jeff Law
On 05/29/14 00:55, Alan Modra wrote: One of the nice features of the ELFv2 ABI is that stack frames are smaller compared to ELFv1. We don't allocate a parameter save area unless we actually use it. However, for variable argument lists, we kept the simple va_list type which is a pointer to the m

  1   2   >