Re: gcc auto-omit-frame-pointer vs msvc longjmp

2011-10-21 Thread xunxun
于 2011/10/22 13:13, xunxun 写道: Hi, all It seems that gcc's auto-omit-frame-pointer has other problems. The example is from mingw bug tracker: http://sourceforge.net/tracker/?func=detail&aid=3426555&group_id=2435&atid=102435 g++ -O3 main.cpp running will crash. g++ -O2 m

Re: gcc auto-omit-frame-pointer vs msvc longjmp

2011-10-21 Thread xunxun
Hi, all It seems that gcc's auto-omit-frame-pointer has other problems. The example is from mingw bug tracker: http://sourceforge.net/tracker/?func=detail&aid=3426555&group_id=2435&atid=102435 g++ -O3 main.cpp running will crash. g++ -O2 main.cpp running no crash.

Re: adding destroyable objects into Ggc

2011-10-21 Thread Basile Starynkevitch
On Fri, 21 Oct 2011 18:53:16 -0500 Gabriel Dos Reis wrote: > On Fri, Oct 21, 2011 at 3:56 PM, Basile Starynkevitch > wrote: > > On Fri, 21 Oct 2011 10:43:29 +0200 > > Richard Guenther wrote: > >> So there is no inherent limitation with the GGC machinery. > > > > There are at least some annoyanc

RE: Expanding instructions with condition codes inter-deps

2011-10-21 Thread Paul_Koning
>There are lots of parts of the compiler that don't optimize well when an insn >has more than one output. For the normal insn, just clobber the flags; don't >include a second SET. Yes, but... isn't the whole point of CC modeling that you can take advantage of the CC left around by an instructi

Re: Expanding instructions with condition codes inter-deps

2011-10-21 Thread Peter Bigot
On Fri, Oct 21, 2011 at 4:41 PM, Richard Henderson wrote: > On 10/21/2011 10:15 AM, Paulo J. Matos wrote: >> So I have implemented the nadd and addc as: >> >> (define_insn "negqi2" >>   [(set (match_operand:QI 0 "register_operand" "=c") >>         (neg:QI (match_operand:QI 1 "register_operand" "0"

Re: adding destroyable objects into Ggc

2011-10-21 Thread Gabriel Dos Reis
On Fri, Oct 21, 2011 at 3:56 PM, Basile Starynkevitch wrote: > On Fri, 21 Oct 2011 10:43:29 +0200 > Richard Guenther wrote: >> So there is no inherent limitation with the GGC machinery. > > There are at least some annoyances: can you think of C++ ways to remove those without prescribing more GC?

gcc-4.6-20111021 is now available

2011-10-21 Thread gccadmin
Snapshot gcc-4.6-20111021 is now available on ftp://gcc.gnu.org/pub/gcc/snapshots/4.6-20111021/ and on various mirrors, see http://gcc.gnu.org/mirrors.html for details. This snapshot has been generated from the GCC 4.6 SVN branch with the following options: svn://gcc.gnu.org/svn/gcc/branches

Re: Expanding instructions with condition codes inter-deps

2011-10-21 Thread Richard Henderson
On 10/21/2011 10:15 AM, Paulo J. Matos wrote: > So I have implemented the nadd and addc as: > > (define_insn "negqi2" > [(set (match_operand:QI 0 "register_operand" "=c") > (neg:QI (match_operand:QI 1 "register_operand" "0"))) >(set (reg:CC_C RCC) (eq (match_dup 1) (const_int 0))) >

Re: adding destroyable objects into Ggc

2011-10-21 Thread Basile Starynkevitch
On Fri, 21 Oct 2011 10:43:29 +0200 Richard Guenther wrote: > So there is no inherent limitation with the GGC machinery. There are at least some annoyances: If a C++ class is GTY-ed, or is pointed by a field inside a GTY-ed struct, and if that class contains for example a PPL data (or simply if

Re: gcc auto-omit-frame-pointer vs msvc longjmp

2011-10-21 Thread jojelino
On 2011-10-21 AM 12:34, Kai Tietz wrote: Hi, For trunk-version I have a tentative patch for this issue. On 4.6.x and older branches this doesn't work, as here we can't differenciate that easy between ms- and sysv-abi. But could somebody give this patch a try? Regards, Kai ChangeLog

Re: Expanding instructions with condition codes inter-deps

2011-10-21 Thread Paulo J. Matos
On 19/10/11 01:48, paul_kon...@dell.com wrote: From: gcc-ow...@gcc.gnu.org [mailto:gcc-ow...@gcc.gnu.org] On Behalf Of Richard Henderson On 10/17/2011 03:50 AM, Paulo J. Matos wrote: ... (for example, it would be ok to output negqi2, xorqi3 and addc_internal since xorqi3 only sets N and Z, not

Re: Expanding instructions with condition codes inter-deps

2011-10-21 Thread Richard Henderson
On 10/21/2011 09:13 AM, Peter Bigot wrote: > Are there any existing machine descriptions that do model the carry > flag separately, specifically to model rotate operations that use the > carry flag as the destination and source for the shifted bit? Or is > the best I can do for that is to have the

Re: Cilk+ questions

2011-10-21 Thread Jonathan Wakely
On 21 October 2011 15:31, Torvald Riegel wrote: > Hello everyone, > > we thought to take this conversation to the list because it is related > to the GCC implementation of Cilk+. My questions to Balaji are quoted, > Balaji's replies are marked with BVI>. > > On Fri, 2011-09-23 at 10:42 -0700, Iyer,

Re: IRA changes rules of the game

2011-10-21 Thread Richard Henderson
On 10/20/2011 07:41 AM, Paulo J. Matos wrote: > (define_insn_and_split "neghi_internal" >[(set (match_operand:QI 0 "register_operand" "=c") > (neg:QI (match_dup 0))) > (set (match_operand:QI 1 "register_operand" "=c") > (plus:QI >(plus:QI > (ltu:QI

Re: arithmetic standard pattern using only memory_operand

2011-10-21 Thread Richard Henderson
On 10/21/2011 06:10 AM, BELBACHIR Selim wrote: > Is it possible to define arithmetic standard parttern with operands matched > by memory_operand only? No. r~

[4.6.1] ICE in size_binop_loc, at fold-const.c:1433

2011-10-21 Thread Aurelien Buhrig
Hi, I'm trying to port gcc 4.6.1 for a new target for which Pmode=PSI. I have an ICE in size_binop_loc, at fold-const.c:1433 when compiling gcc.c-torture/compile/92-1.c Here is the back trace #1 0x0060f8f3 in size_binop_loc (loc=0, code=PLUS_EXPR, arg0=0x2e8d8150, arg1=0x2e8

Cilk+ questions

2011-10-21 Thread Torvald Riegel
Hello everyone, we thought to take this conversation to the list because it is related to the GCC implementation of Cilk+. My questions to Balaji are quoted, Balaji's replies are marked with BVI>. On Fri, 2011-09-23 at 10:42 -0700, Iyer, Balaji V wrote: > > 1) Implicit syncs are said to be called

Re: [RFC] New git-only branch for Fission project

2011-10-21 Thread Diego Novillo
On Wed, Oct 19, 2011 at 21:30, Cary Coutant wrote: >   http://gcc.gnu.org/wiki/DebugFission > > I expect we'll be ready to merge our work into trunk when Stage 1 > opens for GCC 4.8. > > Any objections? Is it OK to make a git-only branch? Anyone with SVN write access can create a new branch. Th

arithmetic standard pattern using only memory_operand

2011-10-21 Thread BELBACHIR Selim
Hi, My target has arithmetic instruction whose operands can ONLY be memory (offseted, post/pre inc, ...). For example 'add' can only have a memory operand as its first operand : add mem($C1), $C2, $C3 I tried to simply write the addsi3 pattern with using memory_operand as predicate for oper

Re: IRA changes rules of the game

2011-10-21 Thread Joern Rennecke
Quoting "Paulo J. Matos" : This is a very strange insn indeed: (set (ge (reg:QI 0 AH [orig:26 w ] [26]) (const_int 0 [0])) (plus:QI (plus:QI (ltu:QI (reg:CC 13 CC) (const_int 0 [0])) (lt (reg:QI 0 AH [orig:30 a ] [30]) (const_int 0 [0])))

Re: IRA changes rules of the game

2011-10-21 Thread Paulo J. Matos
On 21/10/11 10:02, Paolo Bonzini wrote: On 10/20/2011 07:46 PM, Paulo J. Matos wrote: However, it failed to compile libgcc with: ../../../../../../../devHost/gcc46/gcc/libgcc/../gcc/libgcc2.c:272:1: internal compiler error: in df_uses_record, at df-scan.c:3178 This feels like a GCC bug. I will

Re: IRA changes rules of the game

2011-10-21 Thread Paolo Bonzini
On 10/20/2011 07:46 PM, Paulo J. Matos wrote: However, it failed to compile libgcc with: ../../../../../../../devHost/gcc46/gcc/libgcc/../gcc/libgcc2.c:272:1: internal compiler error: in df_uses_record, at df-scan.c:3178 This feels like a GCC bug. I will try to get a better look at it tomorrow.

Re: adding destroyable objects into Ggc

2011-10-21 Thread Richard Guenther
On Fri, Oct 21, 2011 at 8:09 AM, Basile Starynkevitch wrote: > On Thu, 20 Oct 2011 17:13:46 +0200 (CEST) > Marc Glisse wrote: > >> Can't you use GTY-ed memory in PPL? Sorry for the naive question, but >> std::vector can take an allocator parameter, gmp lets you specify an >> allocation function..