Currently we have several mechanisms scattered throughout the code base for outputting text for debug or reporting purposes. Examples include VM.sysWrite*, PrintLn, VM_Stats, PrintContainer. Ideally all debug and logging output should be redirected to Logger objects (possibly custom RVM versions) that can be re-directed to arbitrary locations. After
RVM-40 is applied there should not be any need for such artifacts during reporting.
We should probably put the logger in org.jikesrvm.runtime. We should move code that appears to be in the wrong place, like VM_Thread.sprintf.