# HG changeset patch # User Doug Simon # Date 1333361958 -7200 # Node ID 70aaaa83b93a6fcdd876762708cefa839a8e0e02 # Parent b97ef124c3ea09445c8ed1067d0cf6c5b904e4f3 fixed gcc warning; added note to README_GRAAL about disabling the bootstrap step diff -r b97ef124c3ea -r 70aaaa83b93a README_GRAAL.txt --- a/README_GRAAL.txt Mon Apr 02 11:39:32 2012 +0200 +++ b/README_GRAAL.txt Mon Apr 02 12:19:18 2012 +0200 @@ -1,3 +1,5 @@ +Building Graal +-------------- There is a Python script in graal/mxtool/mx.py that simplifies working with the code base. It requires Python 2.7. While you can run this script by using an absolute path, it's more convenient to add graal/mxtool to your PATH environment variable so that the @@ -15,10 +17,21 @@ mx build debug mx build fastdebug -To run one of the correspong VM instances: +Running Graal +------------- + +To run the VM, use 'mx vm' in place of the standard 'java' command: - mx --product vm ... + mx vm ... + +To select the fastdebug or debug versions of the VM: + mx --fastdebug vm ... mx --debug vm ... -The default is --product. \ No newline at end of file +Graal has an optional bootstrap step where it compiles itself before +compiling any application code. This bootstrap step currently takes about 7 seconds +on a fast x64 machine. It's useful to disable this bootstrap step when running small +programs with the -XX:-BootstrapGraal options. For example: + + mx vm -XX:-BootstrapGraal ... diff -r b97ef124c3ea -r 70aaaa83b93a src/os_cpu/linux_x86/vm/os_linux_x86.cpp --- a/src/os_cpu/linux_x86/vm/os_linux_x86.cpp Mon Apr 02 11:39:32 2012 +0200 +++ b/src/os_cpu/linux_x86/vm/os_linux_x86.cpp Mon Apr 02 12:19:18 2012 +0200 @@ -313,7 +313,7 @@ if (thread->thread_state() == _thread_in_Java) { // Throw a stack overflow exception. Guard pages will be reenabled // while unwinding the stack. - if (WizardMode) tty->print("implicit: %08x%08x\n", ((long)pc) >> 32, pc); + if (WizardMode) tty->print("implicit: %08x%08x\n", ((long long)pc) >> 32, pc); stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::STACK_OVERFLOW); } else { // Thread was in the vm or native code. Return and try to finish.