I checked half a dozen of the failing prototype test cases on ppc64-aix. They all had the appended error (this one is from _213_javac).
Fatal error: ArrayIndexOutOfBoundsException within uninterruptible region.
Died in GC:
Exiting virtual machine due to uninterruptibility violation.
– Stack –
at [0x00000000400198c0] Lorg/jikesrvm/VM; sysFail(Ljava/lang/String;)V at line 2027
at [0x00000000400198f0] Lorg/jikesrvm/runtime/VM_Runtime; deliverHardwareException(II)V at line 710
at [0x00000000400199b0] <hardware trap>
at [0x00000000400199c8] Lorg/mmtk/utility/heap/Map; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 291
at [0x0000000040019a10] Lorg/mmtk/policy/Space; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 359
at [0x0000000040019a48] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/Address;)Z at line 324
at [0x0000000040019ac0] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/ObjectReference;)Z at line 308
at [0x0000000040019b10] Lorg/mmtk/plan/generational/marksweep/GenMSMatureTraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;)Lorg/vmmagic/unboxed/ObjectReference; at line 52
at [0x0000000040019b60] Lorg/mmtk/plan/TraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;Z)Lorg/vmmagic/unboxed/ObjectReference; at line 293
at [0x0000000040019bb8] Lorg/mmtk/plan/TraceLocal; processRootEdge(Lorg/vmmagic/unboxed/Address;)V at line 120
at [0x0000000040019c28] Lorg/jikesrvm/mm/mmtk/ScanBootImage; processChunk(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/mmtk/plan/TraceLocal;)V at line 140
at [0x0000000040019d08] Lorg/jikesrvm/mm/mmtk/ScanBootImage; scanBootImage(Lorg/mmtk/plan/TraceLocal;)V at line 79
at [0x0000000040019dc8] Lorg/jikesrvm/mm/mmtk/Scanning; computeBootImageRoots(Lorg/mmtk/plan/TraceLocal;)V at line 278
at [0x0000000040019e08] Lorg/mmtk/plan/generational/GenCollector; collectionPhase(SZ)V at line 98
at [0x0000000040019e68] Lorg/mmtk/plan/generational/marksweep/GenMSCollector; collectionPhase(SZ)V at line 143
at [0x0000000040019ec8] Lorg/mmtk/plan/Phase; processPhaseStack(Z)Z at line 477
at [0x0000000040019fd8] Lorg/mmtk/plan/Phase; beginNewPhaseStack(I)Z at line 390
at [0x000000004001a020] Lorg/mmtk/plan/StopTheWorldCollector; collect()V at line 39
at [0x000000004001a050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; run()V at line 383
at [0x000000004001a1e0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
Virtual machine state:
– Processors –
Processor 1 running thread4-daemon-collector-RUNNABLE
system thread id 1
transferQueue:7-main-RUNNABLE
readyQueue:
ioQueue:
processWaitQueue:
idleQueue:2-daemon-idle-RUNNABLE
status: IN_JAVA
timeSliceExpired: 0
Processor 2 (me) running thread5-daemon-collector-RUNNABLE
system thread id 258
transferQueue:
readyQueue:
ioQueue:
processWaitQueue:
idleQueue:3-daemon-idle-RUNNABLE
status: IN_JAVA
timeSliceExpired: 0
– System Queues –
wakeupQueue:
debuggerQueue: 8-daemon-RUNNABLE
collectorQueue:
finalizerQueue: 6-daemon-BLOCKED
– Threads –
2-daemon-idle-RUNNABLE
3-daemon-idle-RUNNABLE
4-daemon-collector-RUNNABLE
5-daemon-collector-RUNNABLE
6-daemon-BLOCKED
7-main-RUNNABLE
8-daemon-RUNNABLE
– Locks available –
processor 1: 0 locks allocated, 0 locks freed, 0 free looks, 0 unallocated slots
processor 2: 0 locks allocated, 0 locks freed, 0 free looks, 0 unallocated slots
– Locks in use –
Dumping stack of active thread
– Stack –
at [0x0000000040019838] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; dumpVirtualMachineInternal()V at line 475
at [0x00000000400198a0] Lorg/jikesrvm/scheduler/VM_Scheduler; dumpVirtualMachine()V at line 237
at [0x00000000400198c0] Lorg/jikesrvm/VM; sysFail(Ljava/lang/String;)V at line 2029
at [0x00000000400198f0] Lorg/jikesrvm/runtime/VM_Runtime; deliverHardwareException(II)V at line 710
at [0x00000000400199b0] <hardware trap>
at [0x00000000400199c8] Lorg/mmtk/utility/heap/Map; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 291
at [0x0000000040019a10] Lorg/mmtk/policy/Space; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 359
at [0x0000000040019a48] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/Address;)Z at line 324
at [0x0000000040019ac0] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/ObjectReference;)Z at line 308
at [0x0000000040019b10] Lorg/mmtk/plan/generational/marksweep/GenMSMatureTraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;)Lorg/vmmagic/unboxed/ObjectReference; at line 52
at [0x0000000040019b60] Lorg/mmtk/plan/TraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;Z)Lorg/vmmagic/unboxed/ObjectReference; at line 293
at [0x0000000040019bb8] Lorg/mmtk/plan/TraceLocal; processRootEdge(Lorg/vmmagic/unboxed/Address;)V at line 120
at [0x0000000040019c28] Lorg/jikesrvm/mm/mmtk/ScanBootImage; processChunk(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/mmtk/plan/TraceLocal;)V at line 140
at [0x0000000040019d08] Lorg/jikesrvm/mm/mmtk/ScanBootImage; scanBootImage(Lorg/mmtk/plan/TraceLocal;)V at line 79
at [0x0000000040019dc8] Lorg/jikesrvm/mm/mmtk/Scanning; computeBootImageRoots(Lorg/mmtk/plan/TraceLocal;)V at line 278
at [0x0000000040019e08] Lorg/mmtk/plan/generational/GenCollector; collectionPhase(SZ)V at line 98
at [0x0000000040019e68] Lorg/mmtk/plan/generational/marksweep/GenMSCollector; collectionPhase(SZ)V at line 143
at [0x0000000040019ec8] Lorg/mmtk/plan/Phase; processPhaseStack(Z)Z at line 477
at [0x0000000040019fd8] Lorg/mmtk/plan/Phase; beginNewPhaseStack(I)Z at line 390
at [0x000000004001a020] Lorg/mmtk/plan/StopTheWorldCollector; collect()V at line 39
at [0x000000004001a050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; run()V at line 383
at [0x000000004001a1e0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
Attempting to dump the stack of all other live threads
This is somewhat risky since if the thread is running we're going to be quite confused
2-daemon-idle-RUNNABLE
– Stack –
at [0x000000004084aea8] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x000000004084aef0] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yield(Lorg/jikesrvm/scheduler/greenthreads/VM_AbstractThreadQueue;)V at line 461
at [0x000000004084af38] Lorg/jikesrvm/scheduler/greenthreads/VM_IdleThread; run()V at line 87
at [0x000000004084afd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
3-daemon-idle-RUNNABLE
– Stack –
at [0x0000000040892cf8] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x0000000040892d40] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; timerTickYield(I)V at line 371
at [0x0000000040892d88] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yieldpoint(I)V at line 349
at [0x0000000040892e08] Lorg/jikesrvm/scheduler/VM_Thread; yieldpointFromBackedge()V at line 808
at [0x0000000040892f38] Lorg/jikesrvm/scheduler/greenthreads/VM_IdleThread; run()V at line 101
at [0x0000000040892fd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
4-daemon-collector-RUNNABLE
– Stack –
at [0x000000004000edc0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
6-daemon-BLOCKED
– Stack –
at [0x00000000408dae68] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x00000000408daeb0] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yield(Lorg/jikesrvm/scheduler/greenthreads/VM_AbstractThreadQueue;Lorg/jikesrvm/scheduler/VM_ProcessorLock;)V at line 398
at [0x00000000408daf10] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; suspendFinalizerThreadInternal()V at line 633
at [0x00000000408daf50] Lorg/jikesrvm/scheduler/VM_Scheduler; suspendFinalizerThread()V at line 417
at [0x00000000408daf70] Lorg/jikesrvm/scheduler/VM_FinalizerThread; run()V at line 54
at [0x00000000408dafd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
7-main-RUNNABLE
– Stack –
at [0x0000000040985f40] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x0000000040985f88] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yield()V at line 382
at [0x0000000040985fc0] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; yieldInternal()V at line 607
at [0x0000000040985fe8] Lorg/jikesrvm/scheduler/VM_Scheduler; yield()V at line 270
at [0x0000000040986008] Lorg/jikesrvm/memorymanagers/mminterface/VM_Handshake; requestAndAwaitCompletion(I)V at line 73
at [0x0000000040986050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; collect(Lorg/jikesrvm/memorymanagers/mminterface/VM_Handshake;I)V at line 270
at [0x0000000040986098] Lorg/jikesrvm/mm/mmtk/Collection; triggerCollectionStatic(I)V at line 127
at [0x00000000409860d0] Lorg/jikesrvm/mm/mmtk/Collection; triggerCollection(I)V at line 79
at [0x0000000040986110] Lorg/mmtk/plan/Plan; poll(ZLorg/mmtk/policy/Space;)Z at line 840
at [0x0000000040986170] Lorg/mmtk/policy/Space; acquire(I)Lorg/vmmagic/unboxed/Address; at line 394
at [0x00000000409861e0] Lorg/mmtk/utility/alloc/BumpPointer; allocSlowOnce(III)Lorg/vmmagic/unboxed/Address; at line 258
at [0x0000000040986280] Lorg/mmtk/utility/alloc/Allocator; allocSlowInline(III)Lorg/vmmagic/unboxed/Address; at line 229
at [0x0000000040986338] Lorg/mmtk/utility/alloc/BumpPointer; allocSlow(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;II)Lorg/vmmagic/unboxed/Address; at line 172
at [0x00000000409863e0] Lorg/mmtk/utility/alloc/BumpPointer; alloc(III)Lorg/vmmagic/unboxed/Address; at line 146
at [0x0000000040986480] Lorg/mmtk/plan/generational/GenMutator; alloc(IIIII)Lorg/vmmagic/unboxed/Address; at line 88
at [0x0000000040986528] Lorg/mmtk/plan/generational/marksweep/GenMSMutator; alloc(IIIII)Lorg/vmmagic/unboxed/Address; at line 89
at [0x00000000409865d0] Lorg/jikesrvm/memorymanagers/mminterface/MM_Interface; allocateSpace(Lorg/jikesrvm/memorymanagers/mminterface/Selected$Mutator;IIIII)Lorg/vmmagic/unboxed/Address; at line 664
at [0x0000000040986688] Lorg/jikesrvm/memorymanagers/mminterface/MM_Interface; allocateArrayInternal(II[Ljava/lang/Object;IIII)Ljava/lang/Object; at line 639
at [0x0000000040986770] Lorg/jikesrvm/memorymanagers/mminterface/MM_Interface; allocateArray(III[Ljava/lang/Object;IIII)Ljava/lang/Object; at line 605
at [0x0000000040986860] Lorg/jikesrvm/runtime/VM_Runtime; resolvedNewArray(III[Ljava/lang/Object;IIII)Ljava/lang/Object; at line 463
at [0x0000000040986938] Ljava/lang/StringBuffer; <init>(Ljava/lang/String;)V at line 150
at [0x0000000040986998] Lspec/benchmarks/_213_javac/Type; tClass(Lspec/benchmarks/_213_javac/Identifier;)Lspec/benchmarks/_213_javac/Type; at line 167
at [0x0000000040986a10] Lspec/benchmarks/_213_javac/ClassDeclaration; getType()Lspec/benchmarks/_213_javac/Type; at line 76
at [0x0000000040986a40] Lspec/benchmarks/_213_javac/Environment; isMoreSpecific(Lspec/benchmarks/_213_javac/FieldDefinition;Lspec/benchmarks/_213_javac/FieldDefinition;)Z at line 179
at [0x0000000040986ad0] Lspec/benchmarks/_213_javac/ClassDefinition; matchMethod(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/ClassDefinition;Lspec/benchmarks/_213_javac/Identifier;[Lspec/benchmarks/_213_javac/Type;Lspec/benchmarks/_213_javac/FieldDefinition;Z)Lspec/benchmarks/_213_javac/FieldDefinition; at line 390
at [0x0000000040986be0] Lspec/benchmarks/_213_javac/ClassDefinition; matchMethod(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/ClassDefinition;Lspec/benchmarks/_213_javac/Identifier;[Lspec/benchmarks/_213_javac/Type;)Lspec/benchmarks/_213_javac/FieldDefinition; at line 432
at [0x0000000040986c90] Lspec/benchmarks/_213_javac/Expression; codeAppend(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;Lspec/benchmarks/_213_javac/ClassDeclaration;)V at line 263
at [0x0000000040986d50] Lspec/benchmarks/_213_javac/AddExpression; codeAppend(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;Lspec/benchmarks/_213_javac/ClassDeclaration;)V at line 105
at [0x0000000040986de0] Lspec/benchmarks/_213_javac/AddExpression; codeValue(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 120
at [0x0000000040986e90] Lspec/benchmarks/_213_javac/NewInstanceExpression; codeValue(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 205
at [0x0000000040986f18] Lspec/benchmarks/_213_javac/ConvertExpression; codeValue(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 117
at [0x0000000040986fa0] Lspec/benchmarks/_213_javac/ThrowStatement; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 94
at [0x0000000040987018] Lspec/benchmarks/_213_javac/IfStatement; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 127
at [0x00000000409870d0] Lspec/benchmarks/_213_javac/CompoundStatement; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 135
at [0x0000000040987168] Lspec/benchmarks/_213_javac/SourceField; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Assembler;)V at line 403
at [0x0000000040987210] Lspec/benchmarks/_213_javac/SourceField; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Assembler;)V at line 365
at [0x00000000409872b8] Lspec/benchmarks/_213_javac/SourceClass; compileClass(Lspec/benchmarks/_213_javac/Environment;Ljava/io/OutputStream;)V at line 565
at [0x0000000040987470] Lspec/benchmarks/_213_javac/SourceClass; compile(Lspec/benchmarks/_213_javac/Environment;Ljava/io/OutputStream;)V at line 528
at [0x0000000040987500] Lspec/benchmarks/_213_javac/Javac; compile([Ljava/lang/String;)Z at line 198
at [0x0000000040987668] Lspec/benchmarks/_213_javac/Javac; inst_main([Ljava/lang/String;)J at line 305
at [0x0000000040987718] Lspec/benchmarks/_213_javac/Main; runBenchmark([Ljava/lang/String;)J at line 45
at [0x0000000040987798] Lspec/benchmarks/_213_javac/Main; harnessMain([Ljava/lang/String;)J at line 57
at [0x00000000409877e0] Lspec/harness/ProgramRunner; runOnce(Ljava/lang/Object;IJILjava/util/Properties;)Lspec/harness/BenchmarkTime; at line 382
at [0x00000000409878d0] Lspec/harness/ProgramRunner; runBenchmark2()Ljava/util/Properties; at line 305
at [0x0000000040987a18] Lspec/harness/ProgramRunner; runBenchmark()V at line 238
at [0x0000000040987a78] Lspec/harness/ProgramRunner; run()V at line 206
at [0x0000000040987ab0] Lspec/harness/RunProgram; run(Ljava/lang/String;ZLjava/util/Properties;Lspec/harness/BenchmarkDone;)V at line 60
at [0x0000000040987c28] LSpecApplication; runBenchmark(Ljava/lang/String;Z)V at line 239
at [0x0000000040987c88] LSpecApplication; main([Ljava/lang/String;)V at line 155
at [0x0000000040987d38] <invisible method>
at [0x0000000040987d50] Lorg/jikesrvm/runtime/VM_Reflection; invoke(Lorg/jikesrvm/classloader/VM_Method;Ljava/lang/Object;[Ljava/lang/Object;Z)Ljava/lang/Object; at line 132
at [0x0000000040987eb8] Lorg/jikesrvm/scheduler/VM_MainThread; run()V at line 193
at [0x0000000040987f60] Lorg/jikesrvm/scheduler/VM_Thread; run()V at line 581
at [0x0000000040987fd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
8-daemon-RUNNABLE
– Stack –
JikesRVM: internal error: recursive use of hardware exception registers (exiting)
VM_Scheduler.dumpStack(): in a recursive call, 2 deep.
– Stack –
at [0x00000000400197f0] Lorg/jikesrvm/scheduler/VM_Scheduler; dumpStack(Lorg/vmmagic/unboxed/Address;)V at line 645
at [0x0000000040019838] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; dumpVirtualMachineInternal()V at line 485
at [0x00000000400198a0] Lorg/jikesrvm/scheduler/VM_Scheduler; dumpVirtualMachine()V at line 237
at [0x00000000400198c0] Lorg/jikesrvm/VM; sysFail(Ljava/lang/String;)V at line 2029
at [0x00000000400198f0] Lorg/jikesrvm/runtime/VM_Runtime; deliverHardwareException(II)V at line 710
at [0x00000000400199b0] <hardware trap>
at [0x00000000400199c8] Lorg/mmtk/utility/heap/Map; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 291
at [0x0000000040019a10] Lorg/mmtk/policy/Space; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 359
at [0x0000000040019a48] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/Address;)Z at line 324
at [0x0000000040019ac0] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/ObjectReference;)Z at line 308
at [0x0000000040019b10] Lorg/mmtk/plan/generational/marksweep/GenMSMatureTraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;)Lorg/vmmagic/unboxed/ObjectReference; at line 52
at [0x0000000040019b60] Lorg/mmtk/plan/TraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;Z)Lorg/vmmagic/unboxed/ObjectReference; at line 293
at [0x0000000040019bb8] Lorg/mmtk/plan/TraceLocal; processRootEdge(Lorg/vmmagic/unboxed/Address;)V at line 120
at [0x0000000040019c28] Lorg/jikesrvm/mm/mmtk/ScanBootImage; processChunk(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/mmtk/plan/TraceLocal;)V at line 140
at [0x0000000040019d08] Lorg/jikesrvm/mm/mmtk/ScanBootImage; scanBootImage(Lorg/mmtk/plan/TraceLocal;)V at line 79
at [0x0000000040019dc8] Lorg/jikesrvm/mm/mmtk/Scanning; computeBootImageRoots(Lorg/mmtk/plan/TraceLocal;)V at line 278
at [0x0000000040019e08] Lorg/mmtk/plan/generational/GenCollector; collectionPhase(SZ)V at line 98
at [0x0000000040019e68] Lorg/mmtk/plan/generational/marksweep/GenMSCollector; collectionPhase(SZ)V at line 143
at [0x0000000040019ec8] Lorg/mmtk/plan/Phase; processPhaseStack(Z)Z at line 477
at [0x0000000040019fd8] Lorg/mmtk/plan/Phase; beginNewPhaseStack(I)Z at line 390
at [0x000000004001a020] Lorg/mmtk/plan/StopTheWorldCollector; collect()V at line 39
at [0x000000004001a050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; run()V at line 383
at [0x000000004001a1e0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
I checked half a dozen of the failing prototype test cases on ppc64-aix. They all had the appended error (this one is from _213_javac).
Fatal error: ArrayIndexOutOfBoundsException within uninterruptible region.
Died in GC:
Exiting virtual machine due to uninterruptibility violation.
– Stack –
at [0x00000000400198c0] Lorg/jikesrvm/VM; sysFail(Ljava/lang/String;)V at line 2027
at [0x00000000400198f0] Lorg/jikesrvm/runtime/VM_Runtime; deliverHardwareException(II)V at line 710
at [0x00000000400199b0] <hardware trap>
at [0x00000000400199c8] Lorg/mmtk/utility/heap/Map; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 291
at [0x0000000040019a10] Lorg/mmtk/policy/Space; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 359
at [0x0000000040019a48] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/Address;)Z at line 324
at [0x0000000040019ac0] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/ObjectReference;)Z at line 308
at [0x0000000040019b10] Lorg/mmtk/plan/generational/marksweep/GenMSMatureTraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;)Lorg/vmmagic/unboxed/ObjectReference; at line 52
at [0x0000000040019b60] Lorg/mmtk/plan/TraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;Z)Lorg/vmmagic/unboxed/ObjectReference; at line 293
at [0x0000000040019bb8] Lorg/mmtk/plan/TraceLocal; processRootEdge(Lorg/vmmagic/unboxed/Address;)V at line 120
at [0x0000000040019c28] Lorg/jikesrvm/mm/mmtk/ScanBootImage; processChunk(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/mmtk/plan/TraceLocal;)V at line 140
at [0x0000000040019d08] Lorg/jikesrvm/mm/mmtk/ScanBootImage; scanBootImage(Lorg/mmtk/plan/TraceLocal;)V at line 79
at [0x0000000040019dc8] Lorg/jikesrvm/mm/mmtk/Scanning; computeBootImageRoots(Lorg/mmtk/plan/TraceLocal;)V at line 278
at [0x0000000040019e08] Lorg/mmtk/plan/generational/GenCollector; collectionPhase(SZ)V at line 98
at [0x0000000040019e68] Lorg/mmtk/plan/generational/marksweep/GenMSCollector; collectionPhase(SZ)V at line 143
at [0x0000000040019ec8] Lorg/mmtk/plan/Phase; processPhaseStack(Z)Z at line 477
at [0x0000000040019fd8] Lorg/mmtk/plan/Phase; beginNewPhaseStack(I)Z at line 390
at [0x000000004001a020] Lorg/mmtk/plan/StopTheWorldCollector; collect()V at line 39
at [0x000000004001a050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; run()V at line 383
at [0x000000004001a1e0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
Virtual machine state:
– Processors –
Processor 1 running thread4-daemon-collector-RUNNABLE
system thread id 1
transferQueue:7-main-RUNNABLE
readyQueue:
ioQueue:
processWaitQueue:
idleQueue:2-daemon-idle-RUNNABLE
status: IN_JAVA
timeSliceExpired: 0
Processor 2 (me) running thread5-daemon-collector-RUNNABLE
system thread id 258
transferQueue:
readyQueue:
ioQueue:
processWaitQueue:
idleQueue:3-daemon-idle-RUNNABLE
status: IN_JAVA
timeSliceExpired: 0
– System Queues –
wakeupQueue:
debuggerQueue: 8-daemon-RUNNABLE
collectorQueue:
finalizerQueue: 6-daemon-BLOCKED
– Threads –
2-daemon-idle-RUNNABLE
3-daemon-idle-RUNNABLE
4-daemon-collector-RUNNABLE
5-daemon-collector-RUNNABLE
6-daemon-BLOCKED
7-main-RUNNABLE
8-daemon-RUNNABLE
– Locks available –
processor 1: 0 locks allocated, 0 locks freed, 0 free looks, 0 unallocated slots
processor 2: 0 locks allocated, 0 locks freed, 0 free looks, 0 unallocated slots
– Locks in use –
Dumping stack of active thread
– Stack –
at [0x0000000040019838] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; dumpVirtualMachineInternal()V at line 475
at [0x00000000400198a0] Lorg/jikesrvm/scheduler/VM_Scheduler; dumpVirtualMachine()V at line 237
at [0x00000000400198c0] Lorg/jikesrvm/VM; sysFail(Ljava/lang/String;)V at line 2029
at [0x00000000400198f0] Lorg/jikesrvm/runtime/VM_Runtime; deliverHardwareException(II)V at line 710
at [0x00000000400199b0] <hardware trap>
at [0x00000000400199c8] Lorg/mmtk/utility/heap/Map; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 291
at [0x0000000040019a10] Lorg/mmtk/policy/Space; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 359
at [0x0000000040019a48] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/Address;)Z at line 324
at [0x0000000040019ac0] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/ObjectReference;)Z at line 308
at [0x0000000040019b10] Lorg/mmtk/plan/generational/marksweep/GenMSMatureTraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;)Lorg/vmmagic/unboxed/ObjectReference; at line 52
at [0x0000000040019b60] Lorg/mmtk/plan/TraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;Z)Lorg/vmmagic/unboxed/ObjectReference; at line 293
at [0x0000000040019bb8] Lorg/mmtk/plan/TraceLocal; processRootEdge(Lorg/vmmagic/unboxed/Address;)V at line 120
at [0x0000000040019c28] Lorg/jikesrvm/mm/mmtk/ScanBootImage; processChunk(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/mmtk/plan/TraceLocal;)V at line 140
at [0x0000000040019d08] Lorg/jikesrvm/mm/mmtk/ScanBootImage; scanBootImage(Lorg/mmtk/plan/TraceLocal;)V at line 79
at [0x0000000040019dc8] Lorg/jikesrvm/mm/mmtk/Scanning; computeBootImageRoots(Lorg/mmtk/plan/TraceLocal;)V at line 278
at [0x0000000040019e08] Lorg/mmtk/plan/generational/GenCollector; collectionPhase(SZ)V at line 98
at [0x0000000040019e68] Lorg/mmtk/plan/generational/marksweep/GenMSCollector; collectionPhase(SZ)V at line 143
at [0x0000000040019ec8] Lorg/mmtk/plan/Phase; processPhaseStack(Z)Z at line 477
at [0x0000000040019fd8] Lorg/mmtk/plan/Phase; beginNewPhaseStack(I)Z at line 390
at [0x000000004001a020] Lorg/mmtk/plan/StopTheWorldCollector; collect()V at line 39
at [0x000000004001a050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; run()V at line 383
at [0x000000004001a1e0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
Attempting to dump the stack of all other live threads
This is somewhat risky since if the thread is running we're going to be quite confused
2-daemon-idle-RUNNABLE
– Stack –
at [0x000000004084aea8] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x000000004084aef0] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yield(Lorg/jikesrvm/scheduler/greenthreads/VM_AbstractThreadQueue;)V at line 461
at [0x000000004084af38] Lorg/jikesrvm/scheduler/greenthreads/VM_IdleThread; run()V at line 87
at [0x000000004084afd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
3-daemon-idle-RUNNABLE
– Stack –
at [0x0000000040892cf8] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x0000000040892d40] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; timerTickYield(I)V at line 371
at [0x0000000040892d88] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yieldpoint(I)V at line 349
at [0x0000000040892e08] Lorg/jikesrvm/scheduler/VM_Thread; yieldpointFromBackedge()V at line 808
at [0x0000000040892f38] Lorg/jikesrvm/scheduler/greenthreads/VM_IdleThread; run()V at line 101
at [0x0000000040892fd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
4-daemon-collector-RUNNABLE
– Stack –
at [0x000000004000edc0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
6-daemon-BLOCKED
– Stack –
at [0x00000000408dae68] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x00000000408daeb0] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yield(Lorg/jikesrvm/scheduler/greenthreads/VM_AbstractThreadQueue;Lorg/jikesrvm/scheduler/VM_ProcessorLock;)V at line 398
at [0x00000000408daf10] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; suspendFinalizerThreadInternal()V at line 633
at [0x00000000408daf50] Lorg/jikesrvm/scheduler/VM_Scheduler; suspendFinalizerThread()V at line 417
at [0x00000000408daf70] Lorg/jikesrvm/scheduler/VM_FinalizerThread; run()V at line 54
at [0x00000000408dafd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
7-main-RUNNABLE
– Stack –
at [0x0000000040985f40] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; morph(Z)V at line 443
at [0x0000000040985f88] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenThread; yield()V at line 382
at [0x0000000040985fc0] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; yieldInternal()V at line 607
at [0x0000000040985fe8] Lorg/jikesrvm/scheduler/VM_Scheduler; yield()V at line 270
at [0x0000000040986008] Lorg/jikesrvm/memorymanagers/mminterface/VM_Handshake; requestAndAwaitCompletion(I)V at line 73
at [0x0000000040986050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; collect(Lorg/jikesrvm/memorymanagers/mminterface/VM_Handshake;I)V at line 270
at [0x0000000040986098] Lorg/jikesrvm/mm/mmtk/Collection; triggerCollectionStatic(I)V at line 127
at [0x00000000409860d0] Lorg/jikesrvm/mm/mmtk/Collection; triggerCollection(I)V at line 79
at [0x0000000040986110] Lorg/mmtk/plan/Plan; poll(ZLorg/mmtk/policy/Space;)Z at line 840
at [0x0000000040986170] Lorg/mmtk/policy/Space; acquire(I)Lorg/vmmagic/unboxed/Address; at line 394
at [0x00000000409861e0] Lorg/mmtk/utility/alloc/BumpPointer; allocSlowOnce(III)Lorg/vmmagic/unboxed/Address; at line 258
at [0x0000000040986280] Lorg/mmtk/utility/alloc/Allocator; allocSlowInline(III)Lorg/vmmagic/unboxed/Address; at line 229
at [0x0000000040986338] Lorg/mmtk/utility/alloc/BumpPointer; allocSlow(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;II)Lorg/vmmagic/unboxed/Address; at line 172
at [0x00000000409863e0] Lorg/mmtk/utility/alloc/BumpPointer; alloc(III)Lorg/vmmagic/unboxed/Address; at line 146
at [0x0000000040986480] Lorg/mmtk/plan/generational/GenMutator; alloc(IIIII)Lorg/vmmagic/unboxed/Address; at line 88
at [0x0000000040986528] Lorg/mmtk/plan/generational/marksweep/GenMSMutator; alloc(IIIII)Lorg/vmmagic/unboxed/Address; at line 89
at [0x00000000409865d0] Lorg/jikesrvm/memorymanagers/mminterface/MM_Interface; allocateSpace(Lorg/jikesrvm/memorymanagers/mminterface/Selected$Mutator;IIIII)Lorg/vmmagic/unboxed/Address; at line 664
at [0x0000000040986688] Lorg/jikesrvm/memorymanagers/mminterface/MM_Interface; allocateArrayInternal(II[Ljava/lang/Object;IIII)Ljava/lang/Object; at line 639
at [0x0000000040986770] Lorg/jikesrvm/memorymanagers/mminterface/MM_Interface; allocateArray(III[Ljava/lang/Object;IIII)Ljava/lang/Object; at line 605
at [0x0000000040986860] Lorg/jikesrvm/runtime/VM_Runtime; resolvedNewArray(III[Ljava/lang/Object;IIII)Ljava/lang/Object; at line 463
at [0x0000000040986938] Ljava/lang/StringBuffer; <init>(Ljava/lang/String;)V at line 150
at [0x0000000040986998] Lspec/benchmarks/_213_javac/Type; tClass(Lspec/benchmarks/_213_javac/Identifier;)Lspec/benchmarks/_213_javac/Type; at line 167
at [0x0000000040986a10] Lspec/benchmarks/_213_javac/ClassDeclaration; getType()Lspec/benchmarks/_213_javac/Type; at line 76
at [0x0000000040986a40] Lspec/benchmarks/_213_javac/Environment; isMoreSpecific(Lspec/benchmarks/_213_javac/FieldDefinition;Lspec/benchmarks/_213_javac/FieldDefinition;)Z at line 179
at [0x0000000040986ad0] Lspec/benchmarks/_213_javac/ClassDefinition; matchMethod(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/ClassDefinition;Lspec/benchmarks/_213_javac/Identifier;[Lspec/benchmarks/_213_javac/Type;Lspec/benchmarks/_213_javac/FieldDefinition;Z)Lspec/benchmarks/_213_javac/FieldDefinition; at line 390
at [0x0000000040986be0] Lspec/benchmarks/_213_javac/ClassDefinition; matchMethod(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/ClassDefinition;Lspec/benchmarks/_213_javac/Identifier;[Lspec/benchmarks/_213_javac/Type;)Lspec/benchmarks/_213_javac/FieldDefinition; at line 432
at [0x0000000040986c90] Lspec/benchmarks/_213_javac/Expression; codeAppend(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;Lspec/benchmarks/_213_javac/ClassDeclaration;)V at line 263
at [0x0000000040986d50] Lspec/benchmarks/_213_javac/AddExpression; codeAppend(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;Lspec/benchmarks/_213_javac/ClassDeclaration;)V at line 105
at [0x0000000040986de0] Lspec/benchmarks/_213_javac/AddExpression; codeValue(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 120
at [0x0000000040986e90] Lspec/benchmarks/_213_javac/NewInstanceExpression; codeValue(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 205
at [0x0000000040986f18] Lspec/benchmarks/_213_javac/ConvertExpression; codeValue(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 117
at [0x0000000040986fa0] Lspec/benchmarks/_213_javac/ThrowStatement; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 94
at [0x0000000040987018] Lspec/benchmarks/_213_javac/IfStatement; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 127
at [0x00000000409870d0] Lspec/benchmarks/_213_javac/CompoundStatement; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Context;Lspec/benchmarks/_213_javac/Assembler;)V at line 135
at [0x0000000040987168] Lspec/benchmarks/_213_javac/SourceField; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Assembler;)V at line 403
at [0x0000000040987210] Lspec/benchmarks/_213_javac/SourceField; code(Lspec/benchmarks/_213_javac/Environment;Lspec/benchmarks/_213_javac/Assembler;)V at line 365
at [0x00000000409872b8] Lspec/benchmarks/_213_javac/SourceClass; compileClass(Lspec/benchmarks/_213_javac/Environment;Ljava/io/OutputStream;)V at line 565
at [0x0000000040987470] Lspec/benchmarks/_213_javac/SourceClass; compile(Lspec/benchmarks/_213_javac/Environment;Ljava/io/OutputStream;)V at line 528
at [0x0000000040987500] Lspec/benchmarks/_213_javac/Javac; compile([Ljava/lang/String;)Z at line 198
at [0x0000000040987668] Lspec/benchmarks/_213_javac/Javac; inst_main([Ljava/lang/String;)J at line 305
at [0x0000000040987718] Lspec/benchmarks/_213_javac/Main; runBenchmark([Ljava/lang/String;)J at line 45
at [0x0000000040987798] Lspec/benchmarks/_213_javac/Main; harnessMain([Ljava/lang/String;)J at line 57
at [0x00000000409877e0] Lspec/harness/ProgramRunner; runOnce(Ljava/lang/Object;IJILjava/util/Properties;)Lspec/harness/BenchmarkTime; at line 382
at [0x00000000409878d0] Lspec/harness/ProgramRunner; runBenchmark2()Ljava/util/Properties; at line 305
at [0x0000000040987a18] Lspec/harness/ProgramRunner; runBenchmark()V at line 238
at [0x0000000040987a78] Lspec/harness/ProgramRunner; run()V at line 206
at [0x0000000040987ab0] Lspec/harness/RunProgram; run(Ljava/lang/String;ZLjava/util/Properties;Lspec/harness/BenchmarkDone;)V at line 60
at [0x0000000040987c28] LSpecApplication; runBenchmark(Ljava/lang/String;Z)V at line 239
at [0x0000000040987c88] LSpecApplication; main([Ljava/lang/String;)V at line 155
at [0x0000000040987d38] <invisible method>
at [0x0000000040987d50] Lorg/jikesrvm/runtime/VM_Reflection; invoke(Lorg/jikesrvm/classloader/VM_Method;Ljava/lang/Object;[Ljava/lang/Object;Z)Ljava/lang/Object; at line 132
at [0x0000000040987eb8] Lorg/jikesrvm/scheduler/VM_MainThread; run()V at line 193
at [0x0000000040987f60] Lorg/jikesrvm/scheduler/VM_Thread; run()V at line 581
at [0x0000000040987fd0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606
8-daemon-RUNNABLE
– Stack –
JikesRVM: internal error: recursive use of hardware exception registers (exiting)
VM_Scheduler.dumpStack(): in a recursive call, 2 deep.
– Stack –
at [0x00000000400197f0] Lorg/jikesrvm/scheduler/VM_Scheduler; dumpStack(Lorg/vmmagic/unboxed/Address;)V at line 645
at [0x0000000040019838] Lorg/jikesrvm/scheduler/greenthreads/VM_GreenScheduler; dumpVirtualMachineInternal()V at line 485
at [0x00000000400198a0] Lorg/jikesrvm/scheduler/VM_Scheduler; dumpVirtualMachine()V at line 237
at [0x00000000400198c0] Lorg/jikesrvm/VM; sysFail(Ljava/lang/String;)V at line 2029
at [0x00000000400198f0] Lorg/jikesrvm/runtime/VM_Runtime; deliverHardwareException(II)V at line 710
at [0x00000000400199b0] <hardware trap>
at [0x00000000400199c8] Lorg/mmtk/utility/heap/Map; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 291
at [0x0000000040019a10] Lorg/mmtk/policy/Space; getDescriptorForAddress(Lorg/vmmagic/unboxed/Address;)I at line 359
at [0x0000000040019a48] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/Address;)Z at line 324
at [0x0000000040019ac0] Lorg/mmtk/policy/Space; isInSpace(ILorg/vmmagic/unboxed/ObjectReference;)Z at line 308
at [0x0000000040019b10] Lorg/mmtk/plan/generational/marksweep/GenMSMatureTraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;)Lorg/vmmagic/unboxed/ObjectReference; at line 52
at [0x0000000040019b60] Lorg/mmtk/plan/TraceLocal; traceObject(Lorg/vmmagic/unboxed/ObjectReference;Z)Lorg/vmmagic/unboxed/ObjectReference; at line 293
at [0x0000000040019bb8] Lorg/mmtk/plan/TraceLocal; processRootEdge(Lorg/vmmagic/unboxed/Address;)V at line 120
at [0x0000000040019c28] Lorg/jikesrvm/mm/mmtk/ScanBootImage; processChunk(Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/vmmagic/unboxed/Address;Lorg/mmtk/plan/TraceLocal;)V at line 140
at [0x0000000040019d08] Lorg/jikesrvm/mm/mmtk/ScanBootImage; scanBootImage(Lorg/mmtk/plan/TraceLocal;)V at line 79
at [0x0000000040019dc8] Lorg/jikesrvm/mm/mmtk/Scanning; computeBootImageRoots(Lorg/mmtk/plan/TraceLocal;)V at line 278
at [0x0000000040019e08] Lorg/mmtk/plan/generational/GenCollector; collectionPhase(SZ)V at line 98
at [0x0000000040019e68] Lorg/mmtk/plan/generational/marksweep/GenMSCollector; collectionPhase(SZ)V at line 143
at [0x0000000040019ec8] Lorg/mmtk/plan/Phase; processPhaseStack(Z)Z at line 477
at [0x0000000040019fd8] Lorg/mmtk/plan/Phase; beginNewPhaseStack(I)Z at line 390
at [0x000000004001a020] Lorg/mmtk/plan/StopTheWorldCollector; collect()V at line 39
at [0x000000004001a050] Lorg/jikesrvm/memorymanagers/mminterface/VM_CollectorThread; run()V at line 383
at [0x000000004001a1e0] Lorg/jikesrvm/scheduler/VM_Thread; startoff()V at line 606