Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Tom de Vries
On 15-12-13 04:37, Alan Modra wrote: On Sat, Dec 14, 2013 at 09:14:34PM +0100, Tom de Vries wrote: I wonder if OUTGOING_REG_PARM_STACK_SPACE makes a difference here. If OUTGOING_REG_PARM_STACK_SPACE == 0, it is the responsibility of the callee to allocate the area reserved for arguments passed

RFA: revert libstdc++ r205810: simulator workload increase caused regression

2013-12-14 Thread Hans-Peter Nilsson
>From the revision range 205803:205810 (excluding:including) an on, my autotester for cris-elf reports a regression: Running /tmp/hpautotest-gcc1/gcc/libstdc++-v3/testsuite/libstdc++-dg/conformance.exp ... WARNING: program timed out. FAIL: 20_util/hash/chi2_quality.cc execution test This appears

Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Alan Modra
On Sat, Dec 14, 2013 at 09:14:34PM +0100, Tom de Vries wrote: > I wonder if OUTGOING_REG_PARM_STACK_SPACE makes a difference here. > > If OUTGOING_REG_PARM_STACK_SPACE == 0, it is the responsibility of > the callee to allocate the area reserved for arguments passed in > registers. AFAIU, both func

[Patch, Fortran, OOP] PR 59493: ICE: Segfault on Class(*) pointer association

2013-12-14 Thread Janus Weil
Hi all, here is a rather simple fix for a problem with the pointer assignment of an unlimited polymorphic variable. The patch regtests cleanly on x86_64-unknown-linux-gnu. Firstly, I would like to commit to trunk, of course. Ok? Secondly, the bug reporter asked me (privately) for the possibility

RFC: PATCH: Add subreg_byte to REG_CANNOT_CHANGE_MODE_P

2013-12-14 Thread H.J. Lu
On Sat, Dec 14, 2013 at 08:32:25AM -0800, H.J. Lu wrote: > On Wed, Dec 11, 2013 at 7:49 AM, Richard Sandiford > wrote: > > "H.J. Lu" writes: > >> On Wed, Dec 11, 2013 at 1:13 AM, Richard Sandiford > >> wrote: > >>> Richard Henderson writes: > On 12/10/2013 10:44 AM, Richard Sandiford wrote

Fix PR58477, part I

2013-12-14 Thread Jan Hubicka
Hi, this patch fixes first part of PR58477. Here we miss IPA devirtualization opurtunity but produce speculative call. Later during inlining, the standard folders produce direct call and we ICE after cgraph_clone_edge messes up the speculative call info. This patch makes cgraph_clone_edge to d

Fix PR58477, part II

2013-12-14 Thread Jan Hubicka
Hi, this patch makes stmt_may_be_vtbl_ptr_store to skip clobbers as discussed previously. Martin, I do not fully follow the logic of this function. Can't we just ignore all stores that are not of pointer type that looks like vptr type? All those tores are compiler generated and we probably can ju

Re: wide-int more performance fixes for wide multiplication.

2013-12-14 Thread Kenneth Zadeck
+ vallen = canonize (val, (uvlen + 1) >> 1, prec); + + /* Shift is not always safe to write over one of the +operands, so we must copy. */ + HOST_WIDE_INT tval[2 * WIDE_INT_MAX_ELTS]; + memcpy (tval, val, vallen * CHAR_BIT / HOST_BITS_PER_WIDE_INT); vallen * size

Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Tom de Vries
On 13-12-13 06:43, Jeff Law wrote: Was this meant perhaps? ... || (reg_parm_stack_space != REG_PARM_STACK_SPACE (current_function_decl)) I think you're probably right. sibcall/tailcall basically re-use the current function's stack Jeff, Right, say we have function a tail-calling funct

Re: [PATCH] Fix PR 58867: asan and ubsan tests not run for installed testing

2013-12-14 Thread Andrew Pinski
On Tue, Oct 29, 2013 at 7:56 AM, Andrew Pinski wrote: > Hi, > The problem here is that both asan and ubsan testsuite test if we > have set a library path before running the testsuite. This is > incorrect when running the already installed testing as there is no > path to set. > > This patch cha

[PATCH] Ubsan load of bool/enum sanitization

2013-12-14 Thread Jakub Jelinek
Hi! This patch implements one of the few remaining missing ubsan sanitizations, in particular instrumentation which complains about loads of (non-bitfield) bool or enum (the latter in C++ only) value that is outside of the range allowed (0/1 for bool, min/max for minimum precision integer type hol

Re: [PATCH] Add more testing to ubsan #2

2013-12-14 Thread Jakub Jelinek
On Sat, Dec 14, 2013 at 08:24:21PM +0100, Marek Polacek wrote: > This adds more testing of unary -. > > Regtested on x86_64-linux with -m32/-m64, ok for trunk? > > 2013-12-14 Marek Polacek > > testsuite/ > * c-c++-common/ubsan/overflow-negate-1.c: Add more testing. Don't > requir

[PATCH] Add more testing to ubsan #2

2013-12-14 Thread Marek Polacek
This adds more testing of unary -. Regtested on x86_64-linux with -m32/-m64, ok for trunk? 2013-12-14 Marek Polacek testsuite/ * c-c++-common/ubsan/overflow-negate-1.c: Add more testing. Don't require int128 target. * c-c++-common/ubsan/overflow-negate-2.c: New test.

Re: Fix PR rtl-optimization/59350

2013-12-14 Thread Eric Botcazou
> I checked in this patch: > > http://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=3f899b097ac0188fc55c763afc1 > ccde5e2766027 > > to fix ChangeLog entries. Thanks! -- Eric Botcazou

[Patch, Fortran, committed] PR 59502: [OOP] ICE on invalid on pointer assignment to non-pointer CLASS

2013-12-14 Thread Janus Weil
Hi all, I have just committed an 'obvious' patch to fix an ICE-on-invalid problem with class pointer assignments: http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=205990 Cheers, Janus

Re: [PATCH] Don't reject TER unnecessarily (PRs middle-end/58956, middle-end/59470)

2013-12-14 Thread Richard Biener
Jakub Jelinek wrote: >On Fri, Dec 13, 2013 at 09:47:20AM +0100, Richard Biener wrote: >> Jakub Jelinek wrote: >> >On Fri, Dec 13, 2013 at 07:30:12AM +0100, Richard Biener wrote: >> >> Jakub Jelinek wrote: >> >> >lhs of a call for calls or somewhere in output arguments of >inline >> >asm. >> >>

Re: Fix PR rtl-optimization/59350

2013-12-14 Thread H.J. Lu
On Sat, Dec 14, 2013 at 7:24 AM, Eric Botcazou wrote: > This fixes an oversight in the recent change to var-tracking.c > http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02007.html > whereby union types are not treated in a consistent way. > > Tested on x86_64-suse-linux, applied on the mainline as

Re: wide-int more performance fixes for wide multiplication.

2013-12-14 Thread Kenneth Zadeck
On 12/14/2013 09:30 AM, Richard Sandiford wrote: + /* True if the result needs to be negated. */ + bool is_neg = false; /* If the top level routine did not really pass in an overflow, then just make sure that we never attempt to set it. */ bool needs_overflow = (overfl

Re: PATCH: PR target/59492: Don't change -fPIC

2013-12-14 Thread H.J. Lu
On Sat, Dec 14, 2013 at 7:58 AM, Uros Bizjak wrote: > On Sat, Dec 14, 2013 at 3:07 PM, H.J. Lu wrote: > We can't change -fPIC underneath in x86 backend while middle-end is unchanged. This patch restores opts->x_flag_pic from global flag_pic. OK to install? 2013-12-12

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-12-14 Thread H.J. Lu
On Wed, Dec 11, 2013 at 7:49 AM, Richard Sandiford wrote: > "H.J. Lu" writes: >> On Wed, Dec 11, 2013 at 1:13 AM, Richard Sandiford >> wrote: >>> Richard Henderson writes: On 12/10/2013 10:44 AM, Richard Sandiford wrote: > Sorry, I don't understand. I never said it was invalid. I sai

Re: PATCH: PR target/59492: Don't change -fPIC

2013-12-14 Thread Uros Bizjak
On Sat, Dec 14, 2013 at 3:07 PM, H.J. Lu wrote: >>> We can't change -fPIC underneath in x86 backend while middle-end is >>> unchanged. >>> This patch restores opts->x_flag_pic from global flag_pic. OK to install? >>> >>> 2013-12-12 H.J. Lu >>> >>> PR target/59492 >>> * confi

Re: wide-int more performance fixes for wide multiplication.

2013-12-14 Thread Kenneth Zadeck
The current world is actually structured so that we never ask about overflow for the two larger classes because the reason that you used those classes was that you never wanted to have this discussion. So if you never ask about overflow, then it really does not matter because we are not going to

Re: [testsuite] Fix g++.dg/cilk-plus/cilk-plus.exp

2013-12-14 Thread Andreas Schwab
* gcc.dg/cilk-plus/cilk-plus.exp: Fix last change. diff --git a/gcc/testsuite/g++.dg/cilk-plus/cilk-plus.exp b/gcc/testsuite/g++.dg/cilk-plus/cilk-plus.exp index cb27418..2f7fcb7 100644 --- a/gcc/testsuite/g++.dg/cilk-plus/cilk-plus.exp +++ b/gcc/testsuite/g++.dg/cilk-plus/cilk-plus.exp @

Fix PR rtl-optimization/59350

2013-12-14 Thread Eric Botcazou
This fixes an oversight in the recent change to var-tracking.c http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02007.html whereby union types are not treated in a consistent way. Tested on x86_64-suse-linux, applied on the mainline as obvious. 2013-12-14 Eric Botcazou * var-tracking.c

Re: wide-int more performance fixes for wide multiplication.

2013-12-14 Thread Richard Sandiford
Kenneth Zadeck writes: > On 12/14/2013 06:40 AM, Richard Sandiford wrote: >> Hi Kenny, >> >> Sorry for the slow response. >> >> Kenneth Zadeck writes: >>> Index: gcc/wide-int.cc >>> === >>> --- gcc/wide-int.cc (revision 205765) >>> +

Re: PATCH: PR target/59492: Don't change -fPIC

2013-12-14 Thread H.J. Lu
On Sat, Dec 14, 2013 at 1:33 AM, Uros Bizjak wrote: > On Fri, Dec 13, 2013 at 3:41 PM, H.J. Lu wrote: >> We can't change -fPIC underneath in x86 backend while middle-end is >> unchanged. >> This patch restores opts->x_flag_pic from global flag_pic. OK to install? >> >> 2013-12-12 H.J. Lu >>

Re: [PATCH] Add more testing to ubsan #1

2013-12-14 Thread Jakub Jelinek
On Sat, Dec 14, 2013 at 02:20:05PM +0100, Marek Polacek wrote: > This adds two sanity tests for signed-integer-overflow sanitization. > One variant uses asms to prevent ccp/... from optimizing away the > computations. Nothing in these tests should fail. > > Regtested on x86_64-unknown-linux-gnu a

[PATCH] Add more testing to ubsan #1

2013-12-14 Thread Marek Polacek
This adds two sanity tests for signed-integer-overflow sanitization. One variant uses asms to prevent ccp/... from optimizing away the computations. Nothing in these tests should fail. Regtested on x86_64-unknown-linux-gnu and powerpc64-unknown-linux-gnu, ok for trunk? 2013-12-14 Marek Polacek

Re: C++ edge_iterator (was: Re: [SH] PR 53976 - Add RTL pass to eliminate clrt, sett insns)

2013-12-14 Thread Oleg Endo
On Sat, 2013-12-14 at 10:19 +0100, Richard Biener wrote: > Oleg Endo wrote: > >On Thu, 2013-12-12 at 03:13 -0500, Trevor Saunders wrote: > >> On Wed, Dec 11, 2013 at 06:47:37PM +0100, Oleg Endo wrote: > >> > On Thu, 2013-11-21 at 00:04 +0100, Steven Bosscher wrote: > >> > > Declaring the edge_iter

Re: wide-int more performance fixes for wide multiplication.

2013-12-14 Thread Kenneth Zadeck
On 12/14/2013 06:40 AM, Richard Sandiford wrote: Hi Kenny, Sorry for the slow response. Kenneth Zadeck writes: Index: gcc/wide-int.cc === --- gcc/wide-int.cc (revision 205765) +++ gcc/wide-int.cc (working copy) @@ -1275,

Re: lto-plugin: mismatch between ld's architecture and GCC's configure --host

2013-12-14 Thread Thomas Schwinge
Hi! Ping, after another month. Reposting the patches below; freshly re-tested, both to cause no change if the new configure options are not used, and to do the right thing if they are. On Tue, 12 Nov 2013 14:52:37 +0100, I wrote: > Could a global maintainer or build machinery maintainer please r

Re: wide-int more performance fixes for wide multiplication.

2013-12-14 Thread Richard Sandiford
Hi Kenny, Sorry for the slow response. Kenneth Zadeck writes: > Index: gcc/wide-int.cc > === > --- gcc/wide-int.cc (revision 205765) > +++ gcc/wide-int.cc (working copy) > @@ -1275,23 +1275,31 @@ wi::mul_internal (HOST_WIDE_INT

Re: [PATCH] Don't reject TER unnecessarily (PRs middle-end/58956, middle-end/59470)

2013-12-14 Thread Jakub Jelinek
On Fri, Dec 13, 2013 at 09:47:20AM +0100, Richard Biener wrote: > Jakub Jelinek wrote: > >On Fri, Dec 13, 2013 at 07:30:12AM +0100, Richard Biener wrote: > >> Jakub Jelinek wrote: > >> >lhs of a call for calls or somewhere in output arguments of inline > >asm. > >> > >> Can you please simply use

Re: [Patch, Fortran, OOP] PR 59450: ICE for type-bound-procedure expression in module procedure interface

2013-12-14 Thread Janus Weil
Hi Paul, > I am somewhat startled that this was so "easy" to fix (ie. the patch looks > easy but I'll bet that find the fix was not!). well, actually finding it was not so hard: The backtrace in the PR pointed me directly to mio_expr, and a bit of debugging showed that we simply do do handle any

Re: PATCH: PR target/59492: Don't change -fPIC

2013-12-14 Thread Uros Bizjak
On Fri, Dec 13, 2013 at 3:41 PM, H.J. Lu wrote: > We can't change -fPIC underneath in x86 backend while middle-end is unchanged. > This patch restores opts->x_flag_pic from global flag_pic. OK to install? > > 2013-12-12 H.J. Lu > > PR target/59492 > * config/i386/i386.c (ix86_

Re: C++ edge_iterator (was: Re: [SH] PR 53976 - Add RTL pass to eliminate clrt, sett insns)

2013-12-14 Thread Richard Biener
Oleg Endo wrote: >On Thu, 2013-12-12 at 03:13 -0500, Trevor Saunders wrote: >> On Wed, Dec 11, 2013 at 06:47:37PM +0100, Oleg Endo wrote: >> > On Thu, 2013-11-21 at 00:04 +0100, Steven Bosscher wrote: >> > > Declaring the edge_iterator inside the for() is not a good >argument >> > > against FOR_EA