Re: Usage of -ftrapv

2006-06-16 Thread Mike Stump
On Jun 16, 2006, at 5:43 PM, Paulo J. Matos wrote: I'd like to catch automatically over/underflows on floating point Wrong list. You want gcc-help... Does it mean that if I use this, exceptions are thrown when I have an over/underflow? No, it it meant that, the documentation would say that

Re: Coroutines

2006-06-16 Thread Dustin Laurence
On Fri, Jun 16, 2006 at 05:34:41PM -0500, David Nicol wrote: > On 6/16/06, Dustin Laurence <[EMAIL PROTECTED]> wrote: > >... > >is. :-) OTOH if it is possible I'd consider trying to write it, if my > >GCC-fu ever reaches the requisite level (my rank is somewhere below > >"pale piece of pigs ear"

Re: Coroutines

2006-06-16 Thread Dustin Laurence
On Fri, Jun 16, 2006 at 02:05:13PM -0700, Mike Stump wrote: > On Jun 16, 2006, at 1:41 PM, Dustin Laurence wrote: > >I'm pretty sure this is stepping into deep quicksand > > No, just hard work. It is only quicksand, if you start, but never > finish. It's quicksand if it turns out to vastly exc

Re: Usage of -ftrapv

2006-06-16 Thread Andrew Pinski
On Jun 16, 2006, at 5:43 PM, Paulo J. Matos wrote: int main() { unsigned int maxi = std::numeric_limits::max(); maxi++; This is well defined as unsigned overflow is defined as wrapping. -- Pinski

GCC 4.2 Status Report (2006-06-16)

2006-06-16 Thread Mark Mitchell
[Jakub, see below for question.] There are presently 200 P3 or higher regressions open against 4.2. We remain in regression-only mode on the mainline. I have half a mind to see if I can bribe AJH to lock everyone in the conference hall until they have fixed at least 1 PR. :-) I'm not sure the n

Usage of -ftrapv

2006-06-16 Thread Paulo J. Matos
Hi all, I'd like to catch automatically over/underflows on floating point and integer arithmetic. I thought -ftrapv would do the trick but I don't really understand how it works. From the latest manual online: -ftrapv This option generates traps for signed overflow on addition, subtraction, mu

Re: Coroutines

2006-06-16 Thread Geoffrey Keating
Dustin Laurence <[EMAIL PROTECTED]> writes: > I'm pretty sure this is stepping into deep quicksand, but I'll ask > anyway...I'm interested in writing an FE for a language that has > stackable coroutines (Lua-style, where you can yield and resume > arbitrarily far down the call stack). I'm trying

gcc-4.1-20060616 is now available

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

Re: Coroutines

2006-06-16 Thread David Nicol
On 6/16/06, Dustin Laurence <[EMAIL PROTECTED]> wrote: I'm pretty sure this is stepping into deep quicksand, but I'll ask anyway...I'm interested in writing an FE for a language that has stackable coroutines (Lua-style, where you can yield and resume arbitrarily far down the call stack). I'm try

Re: MIPS RDHWR instruction reordering

2006-06-16 Thread Ian Lance Taylor
Atsushi Nemoto <[EMAIL PROTECTED]> writes: > If I compile this code with gcc 4.1.1 (-O2), > > extern __thread int x; > int foo(int arg) > { > if (arg) > return x; > return 0; > } > > I got this output. > > foo: > .frame $sp,0,$31 # vars= 0, regs= 0

Re: Coroutines

2006-06-16 Thread Mike Stump
On Jun 16, 2006, at 1:41 PM, Dustin Laurence wrote: I'm pretty sure this is stepping into deep quicksand No, just hard work. It is only quicksand, if you start, but never finish. The mechanism I might favor would be to handle all the fun inside the language front end. Objective-C does t

Coroutines

2006-06-16 Thread Dustin Laurence
I'm pretty sure this is stepping into deep quicksand, but I'll ask anyway...I'm interested in writing an FE for a language that has stackable coroutines (Lua-style, where you can yield and resume arbitrarily far down the call stack). I'm trying to wrap my head around what would be involve and how

Re: try/finally in GNU C

2006-06-16 Thread Mike Stump
On Jun 16, 2006, at 12:47 AM, Paolo Bonzini wrote: I think that every variable you do "weird" things with in C, must be declared volatile. The C++/Objective-C/Objective-C++ language standards ensures that you don't have to mark all variables volatile in the presence of EH. These builtins

Re: try/finally in GNU C

2006-06-16 Thread Mike Stump
On Jun 16, 2006, at 5:54 AM, Gabriel Dos Reis wrote: For the bootstrapping problem I mentioned earlier, they added volatile to variables in the scope but it did not change anything. For the problem I am thinking of, volatile should go a long way in working around the compiler bug, assuming no

Re: c99 VLA semantics

2006-06-16 Thread Mike Stump
On Jun 16, 2006, at 6:57 AM, Dave Korn wrote: static int bar(int a[new_i()][new_i()]); If that isn't a sequence point violation, it probably ought to be, shouldn't it? No, the text has no meaning (in this case (non (const int))), read it as `'*' and you'll have a better mental model for

Re: c99 VLA semantics

2006-06-16 Thread Mike Stump
Ok, good, you gave the same answers I was hoping for. :-) On Jun 16, 2006, at 10:51 AM, Joseph S. Myers wrote: But the definition in terms of contained declarators hardly makes things clear. I would say, however, that while VM-ness shouldn't propagate out from function argument types to the

Re: c99 VLA semantics

2006-06-16 Thread Joseph S. Myers
On Thu, 15 Jun 2006, Mike Stump wrote: > Here are just a few more issues I was wondering about for VLAs: > > static int i; > static int new_i() { i++; return i; } > static int bar(int a[new_i()][new_i()]); Same as static int bar(int a[*][*]);. (In a definition, the two calls to new_i() happen

MIPS RDHWR instruction reordering

2006-06-16 Thread Atsushi Nemoto
The RDHWR instruction is used to support TLS on Linux/MIPS. For now it is always emulated by kernel (on Reserved Instruction exception handler), the instruction will be quite expensive. If I compile this code with gcc 4.1.1 (-O2), extern __thread int x; int foo(int arg) { if (arg)

RE: gcc-4.1.0 cross-compile for MIPS

2006-06-16 Thread Dave Korn
On 16 June 2006 16:47, David Daney wrote: > kernel coder wrote: >> hi, >>I'm trying to cross compile gcc-4.1.0 for mipsel >> platform.Following is the sequence of commands which i'm using >> >> ../gcc-4.1.0/configure --target=mipsel --without-headres >> --prefix=/home/shahzad/install/ --with-

Re: gcc-4.1.0 cross-compile for MIPS

2006-06-16 Thread David Daney
kernel coder wrote: hi, I'm trying to cross compile gcc-4.1.0 for mipsel platform.Following is the sequence of commands which i'm using ../gcc-4.1.0/configure --target=mipsel --without-headres --prefix=/home/shahzad/install/ --with-newlib --enable-languages=c Perhaps you should try to disa

Re: Patch queue and reviewing (Was Re: Generator programs can only be built with optimization enabled?)

2006-06-16 Thread Tom Tromey
> "Dan" == Daniel Berlin <[EMAIL PROTECTED]> writes: Dan> It can also tell you who to copy on a ping email to make sure it Dan> actually goes to a maintainer. Dan> the interface is under construction, but "okay" for casual use. Dan> http://www.dberlin.org/patches/patches/maintainer_list/745 wo

Re: Generator programs can only be built with optimization enabled?

2006-06-16 Thread David Edelsohn
> Eric Botcazou writes: >> I actually like the existing behaviour, which I'm pretty sure hasn't >> changed for many years. Eric> It has, at least for "make quickstrap". Yes, exactly. Prior to the top-level bootstrap changes, I explicitly would need to use "make CFLAGS=-g" to recompi

RE: c99 VLA semantics

2006-06-16 Thread Dave Korn
On 16 June 2006 02:02, Mike Stump wrote: > Here are just a few more issues I was wondering about for VLAs: > > static int i; > static int new_i() { i++; return i; } > static int bar(int a[new_i()][new_i()]); If that isn't a sequence point violation, it probably ought to be, shouldn't it?

RE: What assertions to use in libcpp?

2006-06-16 Thread Dave Korn
On 16 June 2006 09:38, Laurynas Biveinis wrote: > Hi, > > I'm somewhat stuck with debugging GCC+Boehm's GC bootstrap failure. At > one point cpplib starts producing cpp_string objects with len = 0. > They crash cpp_interpret_string. I'd like to add some assertions to > the code to catch zero-leng

Re: try/finally in GNU C

2006-06-16 Thread Jonathan Wilson
> The discussion kind of wandered off, but I'd like to note that I am in > favor of adding __try/__finally as a GNU extension for both C and C++. > It's true, of course, that it's just syntactic sugar which can be > implemented in other ways, but sometimes sugar is sweet. How would this mesh with

Re: try/finally in GNU C

2006-06-16 Thread Gabriel Dos Reis
"Steven Bosscher" <[EMAIL PROTECTED]> writes: | On 6/16/06, Mike Stump <[EMAIL PROTECTED]> wrote: | > foo() { | >int i = 99; | >__builtin_setjmp(A) | >if (i) { | > print i | > --i; | > __builtin_longjump(A); | >} | > | > It used to not infinite loop, now it does. | >

Re: Top-level bootstrap question

2006-06-16 Thread Richard Kenner
If you want exactly what make unstage1 did, "make stage1-start". There is also "make restrap" as in the old scheme. Thanks. A side note: I've always been extremely confused by the "unstageN" and "stageN" targets in the gcc directory. The double usage of "stage" as noun an

gcc-4.1.0 cross-compile for MIPS

2006-06-16 Thread kernel coder
hi, I'm trying to cross compile gcc-4.1.0 for mipsel platform.Following is the sequence of commands which i'm using ../gcc-4.1.0/configure --target=mipsel --without-headres --prefix=/home/shahzad/install/ --with-newlib --enable-languages=c make But following error is generated /home/shahzad

What assertions to use in libcpp?

2006-06-16 Thread Laurynas Biveinis
Hi, I'm somewhat stuck with debugging GCC+Boehm's GC bootstrap failure. At one point cpplib starts producing cpp_string objects with len = 0. They crash cpp_interpret_string. I'd like to add some assertions to the code to catch zero-length cpp_strings as early as possible, but I don't see any ass

Re: Generator programs can only be built with optimization enabled?

2006-06-16 Thread Paolo Bonzini
I actually like the existing behaviour, which I'm pretty sure hasn't changed for many years. I often find myself typing Hum, I think I need another patch. Paolo

Re: try/finally in GNU C

2006-06-16 Thread Paolo Bonzini
Steven Bosscher wrote: On 6/16/06, Mike Stump <[EMAIL PROTECTED]> wrote: > foo() { >int i = 99; >__builtin_setjmp(A) >if (i) { > print i > --i; > __builtin_longjump(A); >} > > It used to not infinite loop, now it does. We had an example just like this on IRC only a

Re: Top-level bootstrap question

2006-06-16 Thread Paolo Bonzini
Richard Kenner wrote: I haven't had to to do this with the new mechanism for a while, but now I need to do the equivalent of the old "make unstage1" and can't find any documentation on how to do that (I thought this would be discussed inside Makefile.tpl). No, Makefile.tpl only discusses a few

Re: Patch queue and reviewing (Was Re: Generator programs can only be built with optimization enabled?)

2006-06-16 Thread Michael Matz
Hi, On Wed, 14 Jun 2006, Joe Buck wrote: > On Wed, Jun 14, 2006 at 11:34:33AM -0700, Mike Stump wrote: > > I'd welcome the issue be addressed by the SC. I'd favor more timely > > reviews. Maybe auto approval for a patch that sits for more than a > > week? :-) > > I see your smilie, Mike,

Re: try/finally in GNU C

2006-06-16 Thread Ian Lance Taylor
Gabriel Dos Reis <[EMAIL PROTECTED]> writes: > while looking into a recent mismatch between GCC-4.x and a C dialect > EH implemented as setjmp/longjmp, I recalled there was a talk about > extending GNU C with __try/__finally construct: > > http://gcc.gnu.org/ml/gcc-patches/2002-11/msg00239.