Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(74)

Side by Side Diff: docs/README.rst

Issue 1960393002: Subzero: Add necessary PNaCl files for standalone build. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero@master
Patch Set: make format Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Makefile.standalone ('k') | pnacl-llvm/NaClBitCodes.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 Subzero - Fast code generator for PNaCl bitcode 1 Subzero - Fast code generator for PNaCl bitcode
2 =============================================== 2 ===============================================
3 3
4 Design 4 Design
5 ------ 5 ------
6 6
7 See the accompanying DESIGN.rst file for a more detailed technical overview of 7 See the accompanying DESIGN.rst file for a more detailed technical overview of
8 Subzero. 8 Subzero.
9 9
10 Building 10 Building
(...skipping 26 matching lines...) Expand all
37 37
38 ``DEBUG=1`` builds without optimizations and is good when running the translator 38 ``DEBUG=1`` builds without optimizations and is good when running the translator
39 inside a debugger. ``NOASSERT=1`` disables assertions and is the preferred 39 inside a debugger. ``NOASSERT=1`` disables assertions and is the preferred
40 configuration for performance testing the translator. ``MINIMAL=1`` attempts to 40 configuration for performance testing the translator. ``MINIMAL=1`` attempts to
41 minimize the size of the translator by compiling out everything unnecessary. 41 minimize the size of the translator by compiling out everything unnecessary.
42 ``ASAN=1`` enables AddressSanitizer, and ``TSAN=1`` enables ThreadSanitizer. 42 ``ASAN=1`` enables AddressSanitizer, and ``TSAN=1`` enables ThreadSanitizer.
43 43
44 The result of the ``make`` command is the target ``pnacl-sz`` in the current 44 The result of the ``make`` command is the target ``pnacl-sz`` in the current
45 directory. 45 directory.
46 46
47 Building within LLVM trunk
48 --------------------------
49
50 Subzero can also be built from within a standard LLVM trunk checkout. Here is
51 an example of how it can be checked out and built::
52
53 mkdir llvm-git
54 cd llvm-git
55 git clone http://llvm.org/git/llvm.git
56 cd llvm/projects/
57 git clone https://chromium.googlesource.com/native_client/pnacl-subzero
58 cd ../..
59 mkdir build
60 cd build
61 cmake -G Ninja ../llvm/
62 ninja
63 ./bin/pnacl-sz -version
64
65 This creates a default build of ``pnacl-sz``; currently any options such as
66 ``DEBUG=1`` or ``MINIMAL=1`` have to be added manually.
67
47 ``pnacl-sz`` 68 ``pnacl-sz``
48 ------------ 69 ------------
49 70
50 The ``pnacl-sz`` program parses a pexe or an LLVM bitcode file and translates it 71 The ``pnacl-sz`` program parses a pexe or an LLVM bitcode file and translates it
51 into ICE (Subzero's intermediate representation). It then invokes the ICE 72 into ICE (Subzero's intermediate representation). It then invokes the ICE
52 translate method to lower it to target-specific machine code, optionally dumping 73 translate method to lower it to target-specific machine code, optionally dumping
53 the intermediate representation at various stages of the translation. 74 the intermediate representation at various stages of the translation.
54 75
55 The program can be run as follows:: 76 The program can be run as follows::
56 77
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 204
184 * Global, linear-scan register allocation. 205 * Global, linear-scan register allocation.
185 206
186 * Advanced phi lowering after target lowering and global register allocation, 207 * Advanced phi lowering after target lowering and global register allocation,
187 via edge splitting, topological sorting of the parallel moves, and final local 208 via edge splitting, topological sorting of the parallel moves, and final local
188 register allocation. 209 register allocation.
189 210
190 * Stack slot coalescing to reduce frame size. 211 * Stack slot coalescing to reduce frame size.
191 212
192 * Branch optimization to reduce the number of branches to the following block. 213 * Branch optimization to reduce the number of branches to the following block.
OLDNEW
« no previous file with comments | « Makefile.standalone ('k') | pnacl-llvm/NaClBitCodes.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698