diff --git a/docs/Passes.html b/docs/Passes.html
index 66ef44b..efa69fe 100644
--- a/docs/Passes.html
+++ b/docs/Passes.html
@@ -4,6 +4,7 @@
 <head>
   <title>LLVM's Analysis and Transform Passes</title>
   <link rel="stylesheet" href="llvm.css" type="text/css">
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 </head>
 <body>
 
@@ -20,7 +21,7 @@
   m:^<tr><td><a href="#(.*)">-.*</a></td><td>.*</td></tr>$: or next;
   $order{$1} = sprintf("%03d", 1 + int %order);
 }
-open HELP, "../Release/bin/opt --help|" or die "open: opt --help: $!\n";
+open HELP, "../Release/bin/opt -help|" or die "open: opt -help: $!\n";
 while (<HELP>) {
   m:^    -([^ ]+) +- (.*)$: or next;
   my $o = $order{$1};
@@ -66,8 +67,8 @@
 </div>
 <div class="doc_text" >
 <table>
-<tr><th colspan="3"><b>ANALYSIS PASSES</b></th></tr>
-<tr><th>Option</th><th>Name</th><th>Directory</th></tr>
+<tr><th colspan="2"><b>ANALYSIS PASSES</b></th></tr>
+<tr><th>Option</th><th>Name</th></tr>
 <tr><td><a href="#aa-eval">-aa-eval</a></td><td>Exhaustive Alias Analysis Precision Evaluator</td></tr>
 <tr><td><a href="#anders-aa">-anders-aa</a></td><td>Andersen's Interprocedural Alias Analysis</td></tr>
 <tr><td><a href="#basicaa">-basicaa</a></td><td>Basic Alias Analysis (default AA impl)</td></tr>
@@ -105,8 +106,8 @@
 <tr><td><a href="#targetdata">-targetdata</a></td><td>Target Data Layout</td></tr>
 
 
-<tr><th colspan="3"><b>TRANSFORM PASSES</b></th></tr>
-<tr><th>Option</th><th>Name</th><th>Directory</th></tr>
+<tr><th colspan="2"><b>TRANSFORM PASSES</b></th></tr>
+<tr><th>Option</th><th>Name</th></tr>
 <tr><td><a href="#adce">-adce</a></td><td>Aggressive Dead Code Elimination</td></tr>
 <tr><td><a href="#argpromotion">-argpromotion</a></td><td>Promote 'by reference' arguments to scalars</td></tr>
 <tr><td><a href="#block-placement">-block-placement</a></td><td>Profile Guided Basic Block Placement</td></tr>
@@ -169,8 +170,8 @@
 <tr><td><a href="#tailduplicate">-tailduplicate</a></td><td>Tail Duplication</td></tr>
 
 
-<tr><th colspan="3"><b>UTILITY PASSES</b></th></tr>
-<tr><th>Option</th><th>Name</th><th>Directory</th></tr>
+<tr><th colspan="2"><b>UTILITY PASSES</b></th></tr>
+<tr><th>Option</th><th>Name</th></tr>
 <tr><td><a href="#deadarghaX0r">-deadarghaX0r</a></td><td>Dead Argument Hacking (BUGPOINT USE ONLY; DO NOT USE)</td></tr>
 <tr><td><a href="#extract-blocks">-extract-blocks</a></td><td>Extract Basic Blocks From Module (for bugpoint use)</td></tr>
 <tr><td><a href="#emitbitcode">-emitbitcode</a></td><td>Bitcode Writer</td></tr>
@@ -529,15 +530,16 @@
   <p>Correlated Expression Elimination propagates information from conditional
   branches to blocks dominated by destinations of the branch.  It propagates
   information from the condition check itself into the body of the branch,
-  allowing transformations like these for example:
-  <pre>
-    if (i == 7)
-      ... 4*i;  // constant propagation
+  allowing transformations like these for example:</p>
+  
+<blockquote><pre>
+if (i == 7)
+  ... 4*i;  // constant propagation
 
-    M = i+1; N = j+1;
-    if (i == j)
-      X = M-N;  // = M-M == 0;
-   </pre></p>
+M = i+1; N = j+1;
+if (i == j)
+  X = M-N;  // = M-M == 0;
+</pre></blockquote>
 
    <p>This is called Correlated Expression Elimination because we eliminate or
    simplify expressions that are correlated with the direction of a branch. In
@@ -569,10 +571,10 @@
 <div class="doc_text">
   <p>This file implements constant propagation and merging. It looks for
   instructions involving only constant operands and replaces them with a
-  constant value instead of an instruction. For example:
-  <pre>add i32 1, 2</pre><br/>
-  becomes
-  <pre>i32 3</pre></p>
+  constant value instead of an instruction. For example:</p>
+  <blockquote><pre>add i32 1, 2</pre></blockquote>
+  <p>becomes</p>
+  <blockquote><pre>i32 3</pre></blockquote>
   <p>NOTE: this pass has a habit of making definitions be dead.  It is a good 
   idea to to run a <a href="#die">DIE</a> (Dead Instruction Elimination) pass 
   sometime after running this pass.</p>
