# 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.

## Basic Commands

llvm-as
  Assemble a human-readable LLVM program into LLVM bytecode.

llvm-dis
  Disassemble an LLVM bytecode file into human-readable form.

analyze
  Analyze an LLVM bytecode file.

opt
  Optimize an LLVM bytecode file.

llc
  Compile an LLVM bytecode program into native machine code.

lli
  Run an LLVM bytecode program using either an interpreter or a JIT compiler.

llvm-link
  Link several LLVM bytecode files together into one LLVM bytecode file.

llvm-nm
  Print out the names and types of symbols in an LLVM bytecode file.

llvm-prof
  Transform raw '`llvmprof.out`' data into a human readable report.

## C and C++ Front-end Commands

llvmgcc
  GCC-based C front end for LLVM.

llvmg++
  GCC-based C++ front end for LLVM.

gccas
  LLVM assembler used by GCC and other native compiler tools.

gccld
  LLVM linker used by GCC and other native compiler tools.

## Debugging Tools

bugpoint
  Trace an LLVM bytecode program and reduce its failure to a simple testcase.

extract
  Extract a function from an LLVM bytecode file.

Maintained by the LLVM Team.
Last modified: $Date$