<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=ks_c_5601-1987">
<META content="MSHTML 5.50.4919.2200" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>First, an unmodifled Kaffe.1.0.7 release source 
tree </FONT></DIV>
<DIV><FONT face=Arial size=2>will not </FONT><FONT face=Arial size=2>give you a 
working MIPS version of Kaffe.</FONT></DIV>
<DIV><FONT face=Arial size=2>The necessary patches to the release sources should 
be in</FONT></DIV>
<DIV><FONT face=Arial size=2><A 
href="ftp://ftp.paralogos.com/pub/kaffe/mips/kaffe-1.0.7.patch_kevink_021001">ftp://ftp.paralogos.com/pub/kaffe/mips/kaffe-1.0.7.patch_kevink_021001</A> 
</FONT></DIV>
<DIV><FONT face=Arial size=2>The changes were also merged with the 
Kaffe.org</FONT></DIV>
<DIV><FONT face=Arial size=2>CVS repository, so if you're working from 
development</FONT></DIV>
<DIV><FONT face=Arial size=2>sources, you should have them - along with all 
the</FONT></DIV>
<DIV><FONT face=Arial size=2>fun problems that come with working from 
development</FONT></DIV>
<DIV><FONT face=Arial size=2>sources.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Assuming you've got the right Kaffe 
sources,</FONT></DIV>
<DIV><FONT face=Arial size=2>I see a couple&nbsp;more potential problems.&nbsp; 
One is that you</FONT></DIV>
<DIV><FONT face=Arial size=2>are using unix-pthreads instead of the Kaffe 
internal</FONT></DIV>
<DIV><FONT face=Arial size=2>"jthread" multithreading scheme.&nbsp; There have 
been</FONT></DIV>
<DIV><FONT face=Arial size=2>problems with Linux/UNIX pthreads for MIPS in 
many</FONT></DIV>
<DIV><FONT face=Arial size=2>versions of the kernel and gnu libraries, and I 
have</FONT></DIV>
<DIV><FONT face=Arial size=2>avoided pthreads in all my MIPS/Linux work, 
to</FONT></DIV>
<DIV><FONT face=Arial size=2>avoid confusing the issue.&nbsp; I would 
recommend</FONT></DIV>
<DIV><FONT face=Arial size=2>dropping the --with-threads configure option 
and</FONT></DIV>
<DIV><FONT face=Arial size=2>letting the build default to jthreads.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>The other potential problem is that most 
MIPS/Linux</FONT></DIV>
<DIV><FONT face=Arial size=2>kernel sources up until very recently had 
problems</FONT></DIV>
<DIV><FONT face=Arial size=2>with context management during some 
exceptional</FONT></DIV>
<DIV><FONT face=Arial size=2>signal conditions that happen to turn up in 
Kaffe.&nbsp; </FONT></DIV>
<DIV><FONT face=Arial size=2>Most 2.4.17-level sources don't </FONT><FONT 
face=Arial size=2>have the fixes, though</FONT></DIV>
<DIV><FONT face=Arial size=2>Monta Vista's just might.&nbsp; 
If&nbsp;updating&nbsp;your</FONT></DIV>
<DIV><FONT face=Arial size=2>Kaffe sources and using jthreads doesn't fix 
things,&nbsp; </FONT></DIV>
<DIV><FONT face=Arial size=2>I would encourage you to get more </FONT><FONT 
face=Arial size=2>up-to-date kernel</FONT></DIV>
<DIV><FONT face=Arial size=2>sources,&nbsp;</FONT><FONT face=Arial size=2>either 
from&nbsp;<A 
href="ftp://ftp.mips.com/pub/linux/mips/">ftp://ftp.mips.com/pub/linux/mips/</A>&nbsp;</FONT></DIV>
<DIV><FONT face=Arial size=2>or from </FONT><FONT face=Arial size=2>the CVS 
archive at linux-mips.org (which is</FONT></DIV>
<DIV><FONT face=Arial size=2>another development tree, with all the fun 
associated, etc.).&nbsp; </FONT></DIV>
<DIV><FONT face=Arial size=2>I actually </FONT><FONT face=Arial 
size=2>rather&nbsp;</FONT><FONT face=Arial size=2>doubt that this is your 
problem, since </FONT></DIV>
<DIV><FONT face=Arial size=2>in </FONT><FONT face=Arial 
size=2>general&nbsp;</FONT><FONT face=Arial size=2>one&nbsp; </FONT><FONT 
face=Arial size=2>needs to be doing floating-point operations</FONT></DIV>
<DIV><FONT face=Arial size=2>to see the problems, but if you're going to use 
Kaffe,</FONT></DIV>
<DIV><FONT face=Arial size=2>you will ultimately need those fixes.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>When you say that you are testing your Kaffe 
build,</FONT></DIV>
<DIV><FONT face=Arial size=2>is this to say that all of the "make check" 
regression</FONT></DIV>
<DIV><FONT face=Arial size=2>tests run?&nbsp; It took me a while to get all 
those to work</FONT></DIV>
<DIV><FONT face=Arial size=2>(i.e. to generate the patch above), but once they 
did,</FONT></DIV>
<DIV><FONT face=Arial size=2>all the AWT stuff I tried worked fine.&nbsp; But I 
did not try</FONT></DIV>
<DIV><FONT face=Arial size=2>QT!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
&nbsp;&nbsp;&nbsp; Regards,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
&nbsp;&nbsp;&nbsp; Kevin K.</FONT></DIV>
<BLOCKQUOTE dir=ltr 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=sbkim@mail.marusys.com href="mailto:sbkim@mail.marusys.com">Kim, 
  Seong Beom</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=kaffe@kaffe.org 
  href="mailto:kaffe@kaffe.org">kaffe@kaffe.org</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Monday, December 30, 2002 8:05 
  AM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> [kaffe] Problems of Kaffe on 
  mips-linux platform</DIV>
  <DIV><BR></DIV>
  <DIV><FONT size=2>Dear Kaffe experts.</FONT></DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2>Because it is my first time to post message in this mailing 
  list,</FONT></DIV>
  <DIV><FONT size=2>let me introduce a little bit.</FONT></DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2>Hello, my name is Seongbeom Kim, and I'm working for a 
  digital television project</FONT></DIV>
  <DIV><FONT size=2>that requires Java virtual machine. I've chosen Kaffe for 
  our virtual machine </FONT></DIV>
  <DIV><FONT size=2>because it is one of few VM solutions for mips-linux 
  platform.</FONT></DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2>The specification of our system&nbsp;is...</FONT></DIV>
  <DIV><FONT 
  size=2>-------------------------------------------------------------------------------------------------------</FONT></DIV>
  <DIV><FONT size=2>Kaffe 
  version:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kaffe 
  1.0.7</FONT></DIV>
  <DIV><FONT size=2>Reference board:&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  &nbsp;&nbsp;&nbsp; TeraLogic Cougar-L board</FONT></DIV>
  <DIV><FONT size=2>CPU:&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  &nbsp;&nbsp;&nbsp; MIPS</FONT></DIV>
  <DIV><FONT 
  size=2>OS:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Linux 
  (kernel 2.4.17 &nbsp;monta vista linux RedHat 7.1)</FONT></DIV>
  <DIV><FONT 
  size=2>AWT:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;QTE 
  (QTE 3.0.3)</FONT></DIV>
  <DIV><FONT size=2>cross compiling 
  with:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mips-linux-gcc 
  (egcs-2.91.66)</FONT></DIV>
  <DIV><FONT size=2>configure 
  option:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--target=mips-pc-linux-gnu 
  --host=mips-pc-linux-gnu --build=mips-pc-linux-gnu</FONT></DIV>
  <DIV><FONT size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; --with-engine=intrp 
  --with-threads=unix-pthreads</FONT></DIV>
  <DIV><FONT size=2>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 
  --with-includes=/usr/mips-linux/include 
  --with-libraries=/usr/mips-linux/lib</FONT></DIV>
  <DIV><FONT size=2>
  <DIV><FONT 
  size=2>-------------------------------------------------------------------------------------------------------</FONT></DIV>
  <DIV>&nbsp;</DIV>
  <DIV>What I have done with this development is...</DIV>
  <DIV>1. Test build on i386-linux-QTE platform: it had no problem at all with 
  virtual frame buffer feature in embedded&nbsp;QT.</DIV>
  <DIV>2. QTE test on mips-linux: I verified it with&nbsp;test programs.</DIV>
  <DIV>3. Cross compiling for mips-linux-qte platform: build done, test compile 
  &amp; running&nbsp;for simple text based application done successfully.</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>The problems are...</DIV>
  <DIV>1. When I try to running simple AWT example, the main thread hangs 
  in&nbsp;Toolkit.createNative() and does not proceed.</DIV>
  <DIV>The code in Toolkit.java&gt;&gt;&gt;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>static void createNative ( Component c ) {<BR>&nbsp;WMEvent e = 
  null;</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;synchronized ( Toolkit.class ) {<BR>&nbsp;&nbsp;// even if this 
  could be done in a central location, we defer this<BR>&nbsp;&nbsp;// as much 
  as possible because it might involve polling (for 
  non-threaded<BR>&nbsp;&nbsp;// AWTs), slowing down the startup 
  time<BR>&nbsp;&nbsp;if ( eventThread == null ) 
  {<BR>&nbsp;&nbsp;&nbsp;startDispatch();<BR>&nbsp;&nbsp;}<BR>&nbsp;}</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>System.out.println( "startDispatch() done..." );&nbsp;&lt;&lt;---------- 
  does not print this message (hangs in startDispatch())</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>&nbsp;// do we need some kind of a context switch ?<BR>&nbsp;...</DIV>
  <DIV>}<BR></FONT></DIV></DIV>
  <DIV><FONT size=2>2. After some modifications in Java codes such as inserting 
  debugging messages, there happens strange errors.</FONT></DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2>[root@target /root]# javac -v HelloWorld.java<BR>[ start 
  compilation in verbose mode ]<BR>java.lang.VerifyError: In class 
  java/io/PushbackReader$PushbackBuffer in method &lt;init&gt; with signature 
  (Ljava/io/PushbackReader;Ljava/io/PushbackReader$1;I)V at pc 5: sp 7 not in 
  range [4, 6]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at 
  java.io.PushbackReader.&lt;init&gt;(PushbackReader.java:27)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  at 
  java.io.PushbackReader.&lt;init&gt;(PushbackReader.java:32)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  at 
  at.dms.compiler.tools.antlr.extra.InputBuffer.&lt;init&gt;(InputBuffer.java:69)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  at 
  at.dms.compiler.tools.antlr.extra.InputBuffer.&lt;init&gt;(InputBuffer.java:82)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  at 
  at.dms.kjc.Main.parseFile(Main.java:325)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  at 
  at.dms.kjc.Main.run(Main.java:147)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  at 
  at.dms.kjc.Main.compile(Main.java:69)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  at at.dms.kjc.Main.main(Main.java:60)<BR></FONT></DIV>
  <DIV><FONT size=2>This error is only solved when I remove entire Kaffe tree, 
  re-install source, re-configure and re-make it.</FONT></DIV>
  <DIV><FONT size=2>'make distclean' cannot solve this problem.</FONT></DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2>Does anyone know about these problems?</FONT></DIV>
  <DIV><FONT size=2>Please help me, I'm in a really big trouble. :(</FONT></DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2>Thanks in advance.</FONT></DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2></FONT>&nbsp;</DIV>
  <DIV><FONT size=2>-----------------------------------<BR>Seong-beom 
  Kim<BR>Research Engineer<BR>Marusys, Co. Ltd.<BR>Seoul, 
  Korea<BR>+82-2-3445-3999 (117)</FONT></DIV></BLOCKQUOTE></BODY></HTML>