gcc/unwind-pe.h broken

2007-01-24 Thread Marco Trudel

Hello Andreas

Your latest patch to unwind-pe.h breaks at least canadian 
cross-compilation host=mingw target=mingw:


In file included from /usr/local/src/gcc/libgcc/../gcc/unwind-dw2.c:40:
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:133: error: expected 
declaration specifiers or '...' before '_uleb128_t'

/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: In function 'read_uleb128':
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: '_uleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: (Each 
undeclared identifier is reported only once
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: for each 
function it appears in.)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: expected ';' 
before 'result'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:139: error: 'result' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:143: error: expected ')' 
before 'byte'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:148: error: 'val' 
undeclared (first use in this function)

/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: At top level:
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:155: error: expected 
declaration specifiers or '...' before '_sleb128_t'

/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: In function 'read_sleb128':
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:159: error: '_uleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:159: error: expected ';' 
before 'result'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:161: error: 'result' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:165: error: expected ')' 
before 'byte'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:172: error: expected ')' 
before numeric constant
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:174: error: 'val' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:174: error: '_sleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:174: error: expected ';' 
before 'result'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: In function 
'read_encoded_value_with_base':
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:218: error: '_uleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:218: error: expected ';' 
before 'tmp'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:219: error: 'tmp' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:219: error: too many 
arguments to function 'read_uleb128'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:226: error: '_sleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:226: error: expected ';' 
before 'tmp'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:227: error: too many 
arguments to function 'read_sleb128'



Marco


Re: gcc/unwind-pe.h broken

2007-01-24 Thread Marco Trudel

Marco Trudel wrote:

Hello Andreas

Your latest patch to unwind-pe.h breaks at least canadian 
cross-compilation host=mingw target=mingw:


In file included from /usr/local/src/gcc/libgcc/../gcc/unwind-dw2.c:40:
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:133: error: expected 
declaration specifiers or '...' before '_uleb128_t'

/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: In function 'read_uleb128':
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: '_uleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: (Each 
undeclared identifier is reported only once
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: for each 
function it appears in.)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:137: error: expected ';' 
before 'result'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:139: error: 'result' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:143: error: expected ')' 
before 'byte'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:148: error: 'val' 
undeclared (first use in this function)

/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: At top level:
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:155: error: expected 
declaration specifiers or '...' before '_sleb128_t'

/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: In function 'read_sleb128':
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:159: error: '_uleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:159: error: expected ';' 
before 'result'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:161: error: 'result' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:165: error: expected ')' 
before 'byte'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:172: error: expected ')' 
before numeric constant
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:174: error: 'val' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:174: error: '_sleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:174: error: expected ';' 
before 'result'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h: In function 
'read_encoded_value_with_base':
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:218: error: '_uleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:218: error: expected ';' 
before 'tmp'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:219: error: 'tmp' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:219: error: too many 
arguments to function 'read_uleb128'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:226: error: '_sleb128_t' 
undeclared (first use in this function)
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:226: error: expected ';' 
before 'tmp'
/usr/local/src/gcc/libgcc/../gcc/unwind-pe.h:227: error: too many 
arguments to function 'read_sleb128'


Addition: I had to revert the changes of these files to make the build 
work again:

- gcc/unwind-pe.h
- libstdc++-v3/libsupc++/eh_personality.cc
- libjava/exception.cc
- gcc/unwind-c.c
- gcc/unwind-dw2-fde.c

I can try patches if you need to verify them.

thanks
Marco


Re: Failure to build libjava on 512MB machine

2007-01-30 Thread Marco Trudel

Andrew Haley wrote:

Gerald Pfeifer writes:
 > I can no longer build libjava on a machine with "just" 512MB of main 
 > memory (FreeBSD/i386 5.4 in this case).
 > 
 > Three weeks ago the build worked on that very machine; did we raise

 > our minimum requirements

We just imported a whole new release of the Classpath library, and
it's big.  But that doesn't explain this bug.


You mean 0.93, right?


 > or is this simply a bug?

I think so.  javax/swing/text/html/parser is quite small:

 $ /usr/bin/time make javax/swing/text/html/parser.lo 


What? No way! I always thought this must be something about 7gb or so.
Compiling my canadian cross mingw takes 2h. 40min to 50min is spend for 
compiling html/parser...
I think a linux normal build (static, 32bit) also needs about 2h. A 
cross host=mingw target=linux took only 50min to my surprise.



0.53user 0.16system 0:00.74elapsed 93%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+26369minor)pagefaults 0swaps

 $ ls -lh javax/swing/text/html/.libs/parser.o 
-rw-r--r-- 1 aph aph 260K Jan 30 11:44 javax/swing/text/html/.libs/parser.o


I don't know why it is using so much memory in your case.


I assume is has something to do with optimization.
- I noticed myself that I can't compile some jars on mingw (Waited an 
hour) while it just took a few minutes on Linux (cross to mingw)
- A user of my builds reported also out of memory exceptions with recent 
gcc builds when optimization is used

- someone made a java or libjava bugreport about that


Marco


 > Gerald
 > 
 > echo /sw/test/GCC/trunk/libjava/classpath/lib/gnu/javax/swing/text/html/parser/*.class > gnu/javax/swing/text/html/parser.list

 > /bin/sh ./libtool --mode=compile /files/pfeifer/OBJ-0129-2308/gcc/gcj 
-B/files/pfeifer/OBJ-0129-2308/i386-unknown-freebsd5.4/libjava/ 
-B/files/pfeifer/OBJ-0129-2308/gcc/ -ffloat-store -fomit-frame-pointer 
-fclasspath= -fbootclasspath=/sw/test/GCC/trunk/libjava/classpath/lib 
--encoding=UTF-8 -Wno-deprecated -fbootstrap-classes -g -O2 -c -o 
gnu/javax/swing/text/html/parser.lo 
-fsource-filename=/files/pfeifer/OBJ-0129-2308/i386-unknown-freebsd5.4/libjava/classpath/lib/classes
 -MT gnu/javax/swing/text/html/parser.lo -MD -MP -MF 
gnu/javax/swing/text/html/parser.deps @gnu/javax/swing/text/html/parser.list
 > /files/pfeifer/OBJ-0129-2308/gcc/gcj 
-B/files/pfeifer/OBJ-0129-2308/i386-unknown-freebsd5.4/libjava/ 
-B/files/pfeifer/OBJ-0129-2308/gcc/ -ffloat-store -fomit-frame-pointer 
-fclasspath= -fbootclasspath=/sw/test/GCC/trunk/libjava/classpath/lib 
--encoding=UTF-8 -Wno-deprecated -fbootstrap-classes -g -O2 -c 
-fsource-filename=/files/pfeifer/OBJ-0129-2308/i386-unknown-freebsd5.4/libjava/classpath/lib/classes
 -MT gnu/javax/swing/text/html/parser.lo -MD -MP -MF 
gnu/javax/swing/text/html/parser.deps @gnu/javax/swing/text/html/parser.list -fPIC 
-o gnu/javax/swing/text/html/.libs/parser.o
 > jc1: out of memory allocating 4072 bytes after a total of 536273352 bytes
 > gmake[3]: *** [gnu/javax/swing/text/html/parser.lo] Error 1
 > gmake[3]: Leaving directory 
`/files/pfeifer/OBJ-0129-2308/i386-unknown-freebsd5.4/libjava'
 > gmake[2]: *** [all-recursive] Error 1
 > gmake[2]: Leaving directory 
`/files/pfeifer/OBJ-0129-2308/i386-unknown-freebsd5.4/libjava'
 > gmake[1]: *** [all-target-libjava] Error 2
 > gmake[1]: Leaving directory `/files/pfeifer/OBJ-0129-2308'
 > gmake: *** [bootstrap-lean] Error 2





Re: Failure to build libjava on 512MB machine

2007-01-31 Thread Marco Trudel

Gerald Pfeifer wrote:

On Tue, 30 Jan 2007, Andrew Haley wrote:

78.67user 1.29system 1:20.01elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k

and indeed, it does want a lot of memory - at peak some 550m.  It'll
be smaller on a 32-bit box, but not much smaller.


Ouch.  I can confirm that on a 32-bit box of mine it fails with about
500MB of main memory.


I also only have 500mb on my building box...



On Tue, 30 Jan 2007, Tom Tromey wrote:

I suppose with some awful build hacking we could split this .o into
multiple parts.  I'm fine with the situation as it is, myself, but I
will do this if the consensus is that we should.


Please, pleeease.  This really hurts.  No I can no longer build libgcj
on my notebook and one or two older (but not that old) testers of mine.


For me it's fine too... Gerald, what about using a bigger swap partition?


Marco


Re: Failure to build libjava on 512MB machine

2007-02-01 Thread Marco Trudel

Tom Tromey wrote:

"Benjamin" == Benjamin Kosnik <[EMAIL PROTECTED]> writes:


Benjamin> but I am
Benjamin> somewhat concerned with the response of the java maintainers (and
Benjamin> others) that it's OK to require >512MB to bootstrap gcc with java, or
Benjamin> that make times "WORKSFORME."

My proposal was more that, if it "WORKSFORUS", then I wouldn't bother
hacking on the build.  Build hacking is unpleasant and I am somewhat
motivated to avoid it.

Anyhow, I'm testing a patch for this case.  And, this will make it a
bit simpler to split other objects should it be needed.


Aren't you here solving the wrong problem? The problem that is caused by 
the real problem?
If it takes about 30 to 40min to build this html/parser.o and gnu-xml.o 
needs about 1 or 2 minutes but is - last time I took a look - a lot 
bigger than the html parser, shouldn't then be investigated why this 
html parser is such a hard thing?
Otherwise there might just come another object after some changes with 
the same problem...



Marco


Re: Failure to build libjava on 512MB machine

2007-02-03 Thread Marco Trudel

Tom Tromey wrote:

"Marco" == Marco Trudel <[EMAIL PROTECTED]> writes:


Marco> If it takes about 30 to 40min to build this html/parser.o and
Marco> gnu-xml.o needs about 1 or 2 minutes but is - last time I took a look
Marco> - a lot bigger than the html parser, shouldn't then be investigated
Marco> why this html parser is such a hard thing?

It is just a really big file.


I think there's more than that. Way bigger files need way less time to 
compile...



If it still takes too much memory to
compile, I suppose I, or someone (hint, hint), will look at how to
shrink it.


Makefile has been updated to split the compilation, right? I just 
compiled a rev 121540 and still, htmp/parser[FOOBAR].o takes way over 30min.
A good example is also to compile ecj.jar. It can need from 1min to way 
over 30min, depending on the gcj. I'll try some test compilations and 
send statistics as soon as my machine is free for some extra work.
This might be a x86, 32bit, static gcj or whatever problem only. But 
optimization seems to be involved...



Marco


Re: [RFA] Boehm GC support addition for debugging

2006-06-27 Thread Marco Trudel

I already sent a patch for that to the java-patches list...


Andreas Tobler wrote:

Andrew Pinski wrote:


On Jun 26, 2006, at 10:02 PM, Andrew Pinski wrote:



On Jun 26, 2006, at 9:01 AM, Bryce McKinlay wrote:


Otherwise, this is fine.


No it is not, it broke bootstrap on powerpc-darwin:


Did you look when the function would have been declared.
 From gc.h:

#if defined(GC_PTHREADS) && !defined(GC_SOLARIS_THREADS) \
  && !defined(GC_WIN32_THREADS) && !defined(GC_DARWIN_THREADS)
GC_API void GC_suspend_thread GC_PROTO((pthread_t));
GC_API void GC_resume_thread GC_PROTO((pthread_t));
#endif

So this is not just Darwin but also Windows and maybe solaris too.


Solaris too. :(

I'd wish being a bit more careful with such patches.
Everyone can ask for RFT and I'll happily test on my farm as time permits.

Andreas

P.S, Me being a _spare_ time contributor