comparison README.md @ 13962:258a09b6449b

Change AUTHORS, CHANGELOG, and README file from HTML to Markdown.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Thu, 06 Feb 2014 14:50:36 +0100
parents
children 8df361535530
comparison
equal deleted inserted replaced
13880:4c2f5b7deb6c 13962:258a09b6449b
1 ## Building Graal
2
3 There is a Python script in mxtool/mx.py that simplifies working with the code
4 base. It requires Python 2.7. While you can run this script by using an absolute path,
5 it's more convenient to add graal/mxtool to your PATH environment variable so that the
6 'mx' helper script can be used. The following instructions in this file assume this
7 setup.
8
9 Building both the Java and C++ source code comprising the Graal VM
10 can be done with the following simple command.
11
12 ```
13 % mx build
14 ```
15
16 There are a number of VM configurations supported by mx which can
17 be explicitly specified using the --vm option. However, you'll typically
18 want one of these VM configurations:
19
20 1. The 'server' configuration is a standard HotSpot VM that includes the
21 runtime support for Graal but uses the existing compilers for normal
22 compilation (e.g., when the interpreter threshold is hit for a method).
23 Compilation with Graal is only done by explicit requests to the
24 Graal API. This is how Truffle uses Graal.
25
26 2. The 'graal' configuration is a VM where all compilation is performed
27 by Graal and no other compilers are built into the VM binary. This
28 VM will bootstrap Graal itself at startup unless the -XX:-BootstrapGraal
29 VM option is given.
30
31 Unless you use the --vm option with the build command, you will be presented
32 with a dialogue to choose one of the above VM configurations for the build
33 as well as have the option to make it your default for subsequent commands
34 that need a VM specified.
35
36 To build the debug or fastdebug builds:
37
38 ```
39 % mx --vmbuild debug build
40 % mx --vmbuild fastdebug build
41 ```
42
43 ## Running Graal
44
45 To run the VM, use 'mx vm' in place of the standard 'java' command:
46
47 ```
48 % mx vm ...
49 ```
50
51 To select the fastdebug or debug builds of the VM:
52
53 ```
54 % mx --vmbuild fastdebug vm ...
55 % mx --vmbuild debug vm ...
56 ```
57
58 ## Other VM Configurations
59
60 In addition to the VM configurations described above, there are
61 VM configurations that omit all VM support for Graal:
62
63 ```
64 % mx --vm server-nograal build
65 % mx --vm server-nograal vm -version
66 java version "1.7.0_25"
67 Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
68 OpenJDK 64-Bit Server VM (build 25.0-b43-internal, mixed mode)
69 ```
70
71 ```
72 % mx --vm client-nograal build
73 % mx --vm client-nograal vm -version
74 java version "1.7.0_25"
75 Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
76 OpenJDK 64-Bit Cleint VM (build 25.0-b43-internal, mixed mode)
77 ```
78
79 These configurations aim to match as closely as possible the
80 VM(s) included in the OpenJDK binaries one can download.
81 No newline at end of file
82