diff --git a/docs/CommandGuide/analyze.html b/docs/CommandGuide/analyze.html
new file mode 100644
index 00000000000..76bc6fb141f
--- /dev/null
+++ b/docs/CommandGuide/analyze.html
@@ -0,0 +1,87 @@
+
+
+analyze
+
+
+
+
+
+Low Level Virtual Machine
+
+
+
+
+NAME
+
+
+analyze
+
+
+SYNOPSIS
+
+
+analyze [options] < filename>
+
+DESCRIPTION
+
+
+The analyze command performs various analysis of LLVM bytecode. It will
+usually print the results on standard output, but in a few cases it will print
+output to standard error or generate a file with the analysis output (which is
+usually done when generating output for another program).
+
+OPTIONS
+
+
+
+
+
+EXIT STATUS
+
+
+If analyze succeeds, it will exit with 0. Otherwise, if an error occurs, it
+will exit with a non-zero value.
+
+
+SEE ALSO
+
+opt
+
+
+University of Illinois at Urbana-Champaign
+
+
+
diff --git a/docs/CommandGuide/gccas.html b/docs/CommandGuide/gccas.html
new file mode 100644
index 00000000000..d1dbb75d6a8
--- /dev/null
+++ b/docs/CommandGuide/gccas.html
@@ -0,0 +1,81 @@
+
+
+gccas
+
+
+
+
+
+Low Level Virtual Machine
+
+
+
+
+NAME
+
+
+gccas
+
+
+SYNOPSIS
+
+
+gccas [options] < filename>
+
+DESCRIPTION
+
+
+The gccas utility takes an LLVM assembly file generated by GCC and converts it
+into an LLVM bytecode file. It is primarily used by the GCC front end, and as
+such, attempts to mimic the interface provided by the default system assembler
+so that it can act as a "drop-in" replacement.
+
+
+OPTIONS
+
+
+
+ - -help
+
+ Print a summary of command line options.
+
+
+
- -o <filename>
+
+ Specify the output filename which will hold the assembled bytecode.
+
+
+
- -stats
+
+ Print statistics.
+
+
+
- -time-passes
+
+ Record the amount of time needed for each pass and print it to standard
+ error.
+
+
+
- -verify
+
+ Verify each pass result.
+
+
+
+
+EXIT STATUS
+
+
+If gccas succeeds, it will exit with 0. Otherwise, if an error occurs, it
+will exit with a non-zero value.
+
+
+SEE ALSO
+
+llvm-dis
+
+
+University of Illinois at Urbana-Champaign
+
+
+
diff --git a/docs/CommandGuide/gccld.html b/docs/CommandGuide/gccld.html
new file mode 100644
index 00000000000..15a4f5f2264
--- /dev/null
+++ b/docs/CommandGuide/gccld.html
@@ -0,0 +1,124 @@
+
+
+gccld
+
+
+
+
+
+Low Level Virtual Machine
+
+
+
+
+NAME
+
+
+gccld
+
+
+SYNOPSIS
+
+
+gccld [options] < filename>
+
+DESCRIPTION
+
+
+The gccld utility takes a set of LLVM bytecode files GCC and links them
+together into a single LLVM bytecode file. It will link in any LLVM bytecode
+libraries that are necessary to make a single LLVM "bytecode executable."
+
+The gccld utility is primarily used by the GCC front end, and as such, attempts
+to mimic the interface provided by the default system linker so that it can act
+as a "drop-in" replacement.
+
+
+OPTIONS
+
+
+
+ - -help
+
+ Print a summary of command line options.
+
+
+
- -o <filename>
+
+ Specify the output filename which will hold the assembled bytecode.
+
+
+
- -stats
+
+ Print statistics.
+
+
+
- -time-passes
+
+ Record the amount of time needed for each pass and print it to standard
+ error.
+
+
+
- -verify
+
+ Verify each pass result.
+
+
+
- -L=<directory>
+
+ Add directory to the list of directories to search when looking for
+ libraries.
+
+
+
- -disable-internalize
+
+ Do not mark all symbols as internal.
+
+
+
- -internalize-public-api-file <filename>
+
+ Preserve the list of symbol names in the file filename.
+
+
+
- -internalize-public-api-list <list>
+
+ Preserve the symbol names in list.
+
+
+
- -l=<library prefix>
+
+ Specify libraries to link to
+
+
+
- -link-as-library
+
+ Link the .bc files together as a library, not an executable.
+
+
+
- -s
+
+ Strip symbol information from the generated executable.
+
+
+
- -v
+
+ Print information about actions taken.
+
+
+
+EXIT STATUS
+
+
+If gccld succeeds, it will exit with 0. Otherwise, if an error occurs, it
+will exit with a non-zero value.
+
+
+SEE ALSO
+
+llvm-dis
+
+
+University of Illinois at Urbana-Champaign
+
+
+
diff --git a/docs/CommandGuide/index.html b/docs/CommandGuide/index.html
new file mode 100644
index 00000000000..fcb4904d90d
--- /dev/null
+++ b/docs/CommandGuide/index.html
@@ -0,0 +1,85 @@
+
+
+
+ LLVM Command Guide
+
+
+
+
+ LLVM Command Guide
+
+
+
+
+
+ This document is the reference manual for the LLVM utilities. It will
+ show you how to use the LLVM commands and what all of their options
+ are.
+
+
+
+
+
+
+ - bugpoint
+
-
+ Trace an LLVM bytecode program and reduce its failure to a
+ simple testcase.
+
+
+
- as
+
- llvm-as
+
-
+ Assemble a human-readable LLVM program into LLVM bytecode.
+
+
+
- dis
+
- llvm-dis
+
-
+ Disassemble an LLVM bytecode file into human-readable form.
+
+
+
- extract
+
-
+ Extract a function from an LLVM bytecode file.
+
+
+
- analyze
+
-
+ Analyze an LLVM bytecode file.
+
+
+
- opt
+
-
+ Optimize an LLVM bytecode file.
+
+
+
- link
+
-
+ Link several LLVM bytecode files together into one LLVM
+ bytecode file.
+
+
+
- gccas
+
-
+ LLVM assembler used by GCC and other native compiler tools.
+
+
+
- gccld
+
-
+ LLVM linker used by GCC and other native compiler tools.
+
+
+
- llc
+
-
+ Compile an LLVM bytecode program into native machine code.
+
+
- lli
+
-
+ Run an LLVM bytecode program using either an interpreter or a
+ JIT compiler.
+
+
+
+
+
diff --git a/docs/CommandGuide/lli.html b/docs/CommandGuide/lli.html
new file mode 100644
index 00000000000..34953981c6e
--- /dev/null
+++ b/docs/CommandGuide/lli.html
@@ -0,0 +1,80 @@
+
+
+lli
+
+
+
+
+
+Low Level Virtual Machine
+
+
+
+
+NAME
+
+
+lli
+
+
+SYNOPSIS
+
+
+lli [options] < filename>
+
+DESCRIPTION
+
+
+The lli command is the LLVM interpreter. It takes a program in LLVM bytecode
+format and executes it, either using an interpreter or a Just In Time (JIT)
+compiler.
+
+
+OPTIONS
+
+
+
+ - -array-checks
+
+ Enable array bound checks.
+
+
+
- -help
+
+ Print a summary of command line options.
+
+
+
- -disable-fp-elim
+
+ Disable frame pointer elimination optimization.
+
+
+
- -stats
+
+ Print statistics.
+
+
+
- -time-passes
+
+ Record the amount of time needed for each pass and print it to standard
+ error.
+
+
+
+
+EXIT STATUS
+
+
+If lli succeeds, it will exit with 0. Otherwise, if an error occurs, it
+will exit with a non-zero value.
+
+
+SEE ALSO
+
+llvm-dis
+
+
+University of Illinois at Urbana-Champaign
+
+
+
diff --git a/docs/CommandGuide/llvm-as.html b/docs/CommandGuide/llvm-as.html
new file mode 100644
index 00000000000..26ff47fdec1
--- /dev/null
+++ b/docs/CommandGuide/llvm-as.html
@@ -0,0 +1,83 @@
+
+
+llvm-as
+
+
+
+
+
+Low Level Virtual Machine
+
+
+
+
+NAME
+
+
+llvm-as
+
+
+SYNOPSIS
+
+
+llvm-as [options] < filename>
+
+DESCRIPTION
+
+
+The llvm-as command is the LLVM assembler. It takes a human readable LLVM
+assembly language file and translates it into LLVM bytecode.
+
+By default, llvm-as places its output into filename.bc.
+
+
+OPTIONS
+
+
+
+ - -f
+
+ Force overwrite. Normally, llvm-as will refuse to overwrite an output
+ file that already exists. With this option, llvm-as will overwrite the
+ output file and replace it with new bytecode.
+
+
+
- -help
+
+ Print a summary of command line options.
+
+
+
- -o <filename>
+
+ Specify the output filename.
+
+
+
- -stats
+
+ Print statistics.
+
+
+
- -time-passes
+
+ Record the amount of time needed for each pass and print it to standard
+ error.
+
+
+
+
+EXIT STATUS
+
+
+If llvm-as succeeds, it will exit with 0. Otherwise, if an error occurs, it
+will exit with a non-zero value.
+
+
+SEE ALSO
+
+llvm-dis
+
+
+University of Illinois at Urbana-Champaign
+
+
+
diff --git a/docs/CommandGuide/llvm-dis.html b/docs/CommandGuide/llvm-dis.html
new file mode 100644
index 00000000000..b90442e8716
--- /dev/null
+++ b/docs/CommandGuide/llvm-dis.html
@@ -0,0 +1,89 @@
+
+
+llvm-dis
+
+
+
+
+
+Low Level Virtual Machine
+
+
+
+
+NAME
+
+
+llvm-dis
+
+
+SYNOPSIS
+
+
+llvm-dis [options] < filename>
+
+DESCRIPTION
+
+
+The llvm-dis command is the LLVM disassembler. It takes an LLVM bytecode file
+and converts it into one of several human readable formats.
+
+By default, llvm-dis places its output in filename.ll, removing the .bc suffix
+if it exists.
+
+OPTIONS
+
+
+
+ - -llvm
+
+ Instruct llvm-dis to generate LLVM assembly code in human readable
+ format. This is the default behavior.
+
+
+
- -c
+
+ Instruct llvm-dis to generate C source code.
+
+
+
- -f
+
+ Force overwrite. Normally, llvm-dis will refuse to overwrite an output
+ file that already exists. With this option, llvm-dis will overwrite the
+ output file.
+
+
+
- -help
+
+ Print a summary of command line options.
+
+
+
- -o <filename>
+
+ Specify the output filename.
+
+
+
- -time-pdisses
+
+ Record the amount of time needed for each pdiss and print it to standard
+ error.
+
+
+
+
+EXIT STATUS
+
+
+If llvm-dis succeeds, it will exit with 0. Otherwise, if an error occurs, it
+will exit with a non-zero value.
+
+
+SEE ALSO
+
+llvm-dis
+
+
+University of Illinois at Urbana-Champaign
+
+
+
diff --git a/docs/CommandGuide/opt.html b/docs/CommandGuide/opt.html
new file mode 100644
index 00000000000..8e1274ee93a
--- /dev/null
+++ b/docs/CommandGuide/opt.html
@@ -0,0 +1,116 @@
+
+
+opt
+
+
+
+
+
+Low Level Virtual Machine
+
+
+
+
+NAME
+
+
+opt
+
+
+SYNOPSIS
+
+
+opt [options] < filename>
+
+DESCRIPTION
+
+
+The opt command is the LLVM optimizer. It takes LLVM bytecode as input, runs
+the specified optimizations on it, and then outputs the optimized code in LLVM
+bytecode.
+
+The optimizations available via opt depend upon what libraries it was linked
+with, as well as any additional libraries that have been loaded with the -load
+option. Use the -help option to determine what optimizations you can use.
+
+
+OPTIONS
+
+
+
+
+
+EXIT STATUS
+
+
+If opt succeeds, it will exit with 0. Otherwise, if an error occurs, it
+will exit with a non-zero value.
+
+
+SEE ALSO
+
+analyze
+
+
+University of Illinois at Urbana-Champaign
+
+
+