Release Notes - RVM - Version 3.1.0 - HTML format


  • [RVM-685] - Implement x86 64 JNI Compiler
  • [RVM-751] - Implement PowerPC syscalls
  • [RVM-759] - Stack maps seem to be broken
  • [RVM-779] - Update userguide to decribe native threads
  • [RVM-783] - Fix baseline Intel 64bit reference maps
  • [RVM-786] - Adjust sampling mechanism in AOS to account for native threads
  • [RVM-787] - Outline exception raising code in to enable better inlining


  • [RVM-460] - Not accounting for nursery promotion AND defrag in GenImmix
  • [RVM-498] - ppc-linux32 dying on SPEC jbb 2005 with 4 threads
  • [RVM-589] - Crash in GetStringUTFChars running xalan on ppc32-aix and ppc64-aix
  • [RVM-613] - asking if a method has a hasBaselineSaveLSRegistersAnnotation triggers classloading (and thus GC) when GC is disabled during OSR
  • [RVM-625] - FullAdaptiveImmix and FullAdaptiveStickyImmix broken on ppc32-linux
  • [RVM-638] - Crash in Poisoned configs on PPC (aix/linux, 32/64) apparently relating to clone
  • [RVM-662] - Error growing discontiguous space
  • [RVM-664] - Occasional digest validation errors on lusearch performance runs
  • [RVM-683] - Fix race in AOS controller/organizer synchronication during startup
  • [RVM-690] - Class loader and reflection problems for unboxed types
  • [RVM-696] - Don't recomend copying project contents with eclipse-project
  • [RVM-698] - Don't clear most significant bits for <32bit return types on Intel [breaks Ubuntu 8.10]
  • [RVM-700] - Not running class initializer for InetAddress causing ServerSocket failures
  • [RVM-701] - Edge Counter and Dynamic Call Graph output after run fails
  • [RVM-703] - Throwable.getStackTrace() implementation is incorrect
  • [RVM-704] - Regressions from 2.9.1 not allowing jetty web server to run
  • [RVM-708] - Bad reference map created by IA32 baseline compiler
  • [RVM-712] - Uninterruptible code should not be allowed to call UnpremptibleNoWarn methods
  • [RVM-722] - Bug in Static Spliting induces unconditional OSR invalidations when running _228_jack in measure compilation mode
  • [RVM-729] - enabling simple_escape_ipa causes a ClassCastException
  • [RVM-732] - Exception in thread "MainThread" permission (java.lang.RuntimePermission exitVM) not granted: no protection domains
  • [RVM-733] - rvm crash when closing a file in ExitMonitor.notifyExit(int value)
  • [RVM-738] - Fix debugging output when extracting long variable values for OSR
  • [RVM-743] - compress-3GC fails with OOME
  • [RVM-744] - Terminal not in grammar: read_ceiling (BURS)
  • [RVM-748] - Bug in type checking when > 32767 types
  • [RVM-756] - Intel unnecessarily restricts boot image to be at addresses > 0x30000000
  • [RVM-774] - Incorrect implementation of static initializers in the case of initializers that throw exceptions
  • [RVM-795] - Baseline GC Maps with JSRs fails to set reference flag for aload operations
  • [RVM-800] - In TemplateCompilerFramework.genCode, case JBC_anewarray, I don't believe that the array resolution and instantiation path is ever taken
  • [RVM-808] - OutOfMemoryError when allocating a 200 MB tab
  • [RVM-814] - Wrong exception from Java reflection
  • [RVM-828] - Do not search superclasses for a method unless no method is found.


  • [RVM-91] - Modularize threading system (native thread support)
  • [RVM-283] - Increase frequency of timer-based method sampling
  • [RVM-362] - Sort accumulating operands on to LHS of commutative operations
  • [RVM-462] - Immix code still contains huge number of experimental variables
  • [RVM-532] - Harmony's OSMemory implementation uses JNI
  • [RVM-612] - Assertion checking on stack height in baseline compiler
  • [RVM-689] - Update MMTk tutorial
  • [RVM-709] - Document meaning of constants in build reference maps
  • [RVM-725] - Increase command line options for tuning opt compiler behaviour
  • [RVM-736] - Disable ImmutableEntryHashSetRVM.remove()
  • [RVM-737] - Support local variable table for methods
  • [RVM-739] - Made org.jikesrvm.compilers.opt.util.Pair generic and moved it to package org.jikesrvm.util
  • [RVM-740] - Support for floating point conditional moves on Intel with SSE
  • [RVM-741] - Support for negation and abs() using SSE2 bit masks
  • [RVM-775] - Cleanup up code that obtains targets of pseudo_invokestatic instruction
  • [RVM-791] - Clean up and modularize locking
  • [RVM-801] - Minor change: Reorganize ClassFileReader by moving code for reading in the constant pool into a separate function
  • [RVM-803] - Use for-each loop in RVMClass wherever possible

New Feature

  • [RVM-641] - Make Immix the default mature space collector
  • [RVM-682] - Assertion checking in sysMalloc
  • [RVM-802] - Debugging hooks in MMTk
  • [RVM-806] - Heavyweight sanity checker for MMTk Harness
  • [RVM-807] - Simple type system for MMTk Harness scripting language


  • [RVM-817] - Change Jikes RVM license from Common Public License to Eclipse Public License


  • [RVM-29] - Track website traffic via sourceforge logo requests

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.