A customer has found out a hang.
The behavior seems hang, but actually this seems infinite loop in javac in jdk1.4.2 for ia64.
CONFIGURATION:
-bash-2.05b$ more /proc/cpuinfo
processor  : 0
vendor     : GenuineIntel
arch       : IA-64
family     : Itanium 2
model      : 0
revision   : 7
archrev    : 0
features   : branchlong
cpu number : 0
cpu regs   : 4
cpu MHz    : 900.000000
itc MHz    : 900.000000
BogoMIPS   : 1346.37
-bash-2.05b$ more /etc/redhat-release
Red Hat Enterprise Linux AS release 3 (Taroon)
-bash-2.05b$ uname -a
Linux llllll 2.4.21-4.EL #1 SMP Fri Oct 3 17:29:39 EDT 2003 ia64 ia64 ia64 GNU/Linux
JDK : 1.4.2_18
REPRODUCE:
1) unfold the attached .tar file
2) Go to javac_infloop/j2se
3) Edit j2se_build_javac.sh
 3-1) Set Java home path to JAVA_H
  ex.
  #JAVA_H=/opt/j2se/1.4.2_18
  JAVA_H=/export/home/guest4us/java/jdk1.4.2_18
 3-2)Set option
   OPT="-J-XX:MaxInlineSize=60"
  
   Note:
     In jdk1.4.2_10 and earlier, this problem occurs easier
     even if without the above option.
4) Invoke ./j2se_build_javac.sh
  This script tries to execute javac.
  This is repeated 1000 times in while loop.
  Usually, this problem occurs within 5-10 iterations in the loop.
==== Messages and Thread Dump ======>
-bash-2.05b$ ./j2se_build_javac.sh
......
2 /export/home/guest4us/java/jdk1.4.2_18/bin/javac -J-XX:MaxInlineSize=60
src/share/classes/java/io/ObjectStreamClass.java:896: warning: non-varargs call of varargs method with inexact argument type for last parameter;
cast to java.lang.Object for a varargs call
cast to java.lang.Object[] for a non-varargs call and to suppress this warning
                return cons.newInstance(null);
                                        ^
src/share/classes/java/io/ObjectStreamClass.java:976: warning: non-varargs call of varargs method with inexact argument type for last parameter;
cast to java.lang.Object for a varargs call
cast to java.lang.Object[] for a non-varargs call and to suppress this warning
                readObjectNoDataMethod.invoke(obj, null);
                                                   ^
src/share/classes/java/io/ObjectStreamClass.java:1004: warning: non-varargs call of varargs method with inexact argument type for last parameter;
cast to java.lang.Object for a varargs call
cast to java.lang.Object[] for a non-varargs call and to suppress this warning
                return writeReplaceMethod.invoke(obj, null);
                                                      ^
src/share/classes/java/io/ObjectStreamClass.java:1033: warning: non-varargs call of varargs method with inexact argument type for last parameter;
cast to java.lang.Object for a varargs call
cast to java.lang.Object[] for a non-varargs call and to suppress this warning
                return readResolveMethod.invoke(obj, null);
                                                     ^
[ Here, "kill -QUIT <process#>" was invoked ]
Full thread dump Java HotSpot(TM) 64-Bit Server VM (1.4.2_18-b06 mixed mode):
"Signal Dispatcher" daemon prio=1 tid=0x6000000000097bb0 nid=0x1f9c waiting on
condition [0x0000000000000000..0x0000000000000000]
"Finalizer" daemon prio=1 tid=0x6000000000091e40 nid=0x1f9a in Object.wait() [0x2000000013cde000..0x2000000013cdebe0]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x200000000a7906b8> (a java.lang.ref.ReferenceQueue$Lock)        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x200000000a7906b8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
"Reference Handler" daemon prio=1 tid=0x60000000000916f0 nid=0x1f99 in Object.wait() [0x2000000013bde000..0x2000000013bdebe0]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x200000000a790760> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:429)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
        - locked <0x200000000a790760> (a java.lang.ref.Reference$Lock)
"main" prio=1 tid=0x600000000001a400 nid=0x1f97 runnable [0x60000fffffff1000..0x60000fffffff3378]
        at com.sun.tools.javac.util.ListBuffer.append(ListBuffer.java:98)
        at com.sun.tools.javac.comp.Flow.visitTry(Flow.java:1009)
        at com.sun.tools.javac.tree.Tree$Try.accept(Tree.java:674)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:34)
        at com.sun.tools.javac.comp.Flow.scanStat(Flow.java:484)
        at com.sun.tools.javac.comp.Flow.scanStats(Flow.java:492)
        at com.sun.tools.javac.comp.Flow.visitBlock(Flow.java:732)
        at com.sun.tools.javac.tree.Tree$Block.accept(Tree.java:540)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:34)
        at com.sun.tools.javac.comp.Flow.scanStat(Flow.java:484)
        at com.sun.tools.javac.comp.Flow.visitMethodDef(Flow.java:684)
        at com.sun.tools.javac.tree.Tree$MethodDef.accept(Tree.java:482)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:34)
        at com.sun.tools.javac.comp.Flow.visitClassDef(Flow.java:624)
        at com.sun.tools.javac.tree.Tree$ClassDef.accept(Tree.java:438)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:34)
        at com.sun.tools.javac.comp.Flow.analyzeTree(Flow.java:1229)
        at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:418)        
        at com.sun.tools.javac.main.Main.compile(Main.java:592)
        at com.sun.tools.javac.main.Main.compile(Main.java:544)
        at com.sun.tools.javac.Main.compile(Main.java:58)
        at com.sun.tools.javac.Main.main(Main.java:48)
"VM Thread" prio=1 tid=0x60000000000905a0 nid=0x1f98 runnable
"VM Periodic Task Thread" prio=1 tid=0x600000000009d960 nid=0x1fa0 waiting on condition
"Suspend Checker Thread" prio=1 tid=0x6000000000096fd0 nid=0x1f9b runnable
==== Messages and Thread Dump End ======>
NOTE:
 1) This problem did not occur with -XX:-OptoScheduling
 2) When the following statement was specified in .hotspot_compiler,
    This problem did not occur.
     exclude com/sun/tools/javac/comp/Flow visitTry
 3) There is a similar issue, BugID 5068762. The bug file provides a workaround
    -J-XX:MaxInlineSize=0. This option is set in Makefile of JavaSE for jdk5. 
    This option is not specified in the provided reproducing environment easier reproduction.
 4) This problem occurs easier in jdk1.4.2_10 and earlier.
   (Please see "comment" section. More details comment for source code change is attached.)