Added copyright header to all C++ source files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9291 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Linker/LinkArchives.cpp b/lib/Linker/LinkArchives.cpp
index 2afe5c1..cfae2b9 100644
--- a/lib/Linker/LinkArchives.cpp
+++ b/lib/Linker/LinkArchives.cpp
@@ -1,4 +1,12 @@
 //===- Linker.cpp - Link together LLVM objects and libraries --------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file contains routines to handle linking together LLVM bytecode files,
 // and to handle annoying things like static libraries.
diff --git a/tools/analyze/AnalysisWrappers.cpp b/tools/analyze/AnalysisWrappers.cpp
index aa4e829..5791377 100644
--- a/tools/analyze/AnalysisWrappers.cpp
+++ b/tools/analyze/AnalysisWrappers.cpp
@@ -1,4 +1,12 @@
 //===- AnalysisWrappers.cpp - Wrappers around non-pass analyses -----------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file defines pass wrappers around LLVM analyses that don't make sense to
 // be passes.  It provides a nice standard pass interface to these classes so
diff --git a/tools/analyze/GraphPrinters.cpp b/tools/analyze/GraphPrinters.cpp
index 28b18d1..83708ec 100644
--- a/tools/analyze/GraphPrinters.cpp
+++ b/tools/analyze/GraphPrinters.cpp
@@ -1,4 +1,12 @@
 //===- GraphPrinters.cpp - DOT printers for various graph types -----------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file defines several printers for various different types of graphs used
 // by the LLVM infrastructure.  It uses the generic graph interface to convert
diff --git a/tools/analyze/analyze.cpp b/tools/analyze/analyze.cpp
index be2adee..17f7e48 100644
--- a/tools/analyze/analyze.cpp
+++ b/tools/analyze/analyze.cpp
@@ -1,4 +1,12 @@
 //===----------------------------------------------------------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 // The LLVM analyze utility
 //
 // This utility is designed to print out the results of running various analysis
diff --git a/tools/bugpoint/BugDriver.cpp b/tools/bugpoint/BugDriver.cpp
index ff68fb0..b28b462 100644
--- a/tools/bugpoint/BugDriver.cpp
+++ b/tools/bugpoint/BugDriver.cpp
@@ -1,4 +1,12 @@
 //===- BugDriver.cpp - Top-Level BugPoint class implementation ------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This class contains all of the shared state and information that is used by
 // the BugPoint tool to track down errors in optimizations.  This class is the
diff --git a/tools/bugpoint/BugDriver.h b/tools/bugpoint/BugDriver.h
index 43edf5c..491bee9 100644
--- a/tools/bugpoint/BugDriver.h
+++ b/tools/bugpoint/BugDriver.h
@@ -1,4 +1,12 @@
 //===- BugDriver.h - Top-Level BugPoint class -------------------*- C++ -*-===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This class contains all of the shared state and information that is used by
 // the BugPoint tool to track down errors in optimizations.  This class is the
diff --git a/tools/bugpoint/CodeGeneratorBug.cpp b/tools/bugpoint/CodeGeneratorBug.cpp
index 21cfa08..60964bc 100644
--- a/tools/bugpoint/CodeGeneratorBug.cpp
+++ b/tools/bugpoint/CodeGeneratorBug.cpp
@@ -1,4 +1,12 @@
 //===- CodeGeneratorBug.cpp - Debug code generation bugs ------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file implements program code generation debugging support.
 //
diff --git a/tools/bugpoint/CrashDebugger.cpp b/tools/bugpoint/CrashDebugger.cpp
index b34d880..b095d16 100644
--- a/tools/bugpoint/CrashDebugger.cpp
+++ b/tools/bugpoint/CrashDebugger.cpp
@@ -1,4 +1,12 @@
 //===- CrashDebugger.cpp - Debug compilation crashes ----------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file defines the bugpoint internals that narrow down compilation crashes
 //
diff --git a/tools/bugpoint/ExecutionDriver.cpp b/tools/bugpoint/ExecutionDriver.cpp
index 635a691..18c2a90 100644
--- a/tools/bugpoint/ExecutionDriver.cpp
+++ b/tools/bugpoint/ExecutionDriver.cpp
@@ -1,4 +1,12 @@
 //===- ExecutionDriver.cpp - Allow execution of LLVM program --------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file contains code used to execute the program utilizing one of the
 // various ways of running LLVM bytecode.
diff --git a/tools/bugpoint/ExtractFunction.cpp b/tools/bugpoint/ExtractFunction.cpp
index 68dc3c9..00e0d6c 100644
--- a/tools/bugpoint/ExtractFunction.cpp
+++ b/tools/bugpoint/ExtractFunction.cpp
@@ -1,4 +1,12 @@
 //===- ExtractFunction.cpp - Extract a function from Program --------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file implements a method that extracts a function from program, cleans
 // it up, and returns it as a new module.
diff --git a/tools/bugpoint/ListReducer.h b/tools/bugpoint/ListReducer.h
index cc8ab20..96341e8 100644
--- a/tools/bugpoint/ListReducer.h
+++ b/tools/bugpoint/ListReducer.h
@@ -1,4 +1,12 @@
 //===- ListReducer.h - Trim down list while retaining property --*- C++ -*-===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This class is to be used as a base class for operations that want to zero in
 // on a subset of the input which still causes the bug we are tracking.
diff --git a/tools/bugpoint/Miscompilation.cpp b/tools/bugpoint/Miscompilation.cpp
index 95d24e9..bf8c43d 100644
--- a/tools/bugpoint/Miscompilation.cpp
+++ b/tools/bugpoint/Miscompilation.cpp
@@ -1,4 +1,12 @@
 //===- Miscompilation.cpp - Debug program miscompilations -----------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file implements program miscompilation debugging support.
 //
diff --git a/tools/bugpoint/OptimizerDriver.cpp b/tools/bugpoint/OptimizerDriver.cpp
index 9b855be..424a7aa 100644
--- a/tools/bugpoint/OptimizerDriver.cpp
+++ b/tools/bugpoint/OptimizerDriver.cpp
@@ -1,4 +1,12 @@
 //===- OptimizerDriver.cpp - Allow BugPoint to run passes safely ----------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file defines an interface that allows bugpoint to run various passes
 // without the threat of a buggy pass corrupting bugpoint (of course, bugpoint
diff --git a/tools/bugpoint/TestPasses.cpp b/tools/bugpoint/TestPasses.cpp
index 32bca95..25f2819 100644
--- a/tools/bugpoint/TestPasses.cpp
+++ b/tools/bugpoint/TestPasses.cpp
@@ -1,4 +1,12 @@
 //===- TestPasses.cpp - "buggy" passes used to test bugpoint --------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file contains "buggy" passes that are used to test bugpoint, to check
 // that it is narrowing down testcases correctly.
diff --git a/tools/bugpoint/bugpoint.cpp b/tools/bugpoint/bugpoint.cpp
index 646d43a..9e0d034 100644
--- a/tools/bugpoint/bugpoint.cpp
+++ b/tools/bugpoint/bugpoint.cpp
@@ -1,4 +1,12 @@
 //===- bugpoint.cpp - The LLVM BugPoint utility ---------------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This program is an automated compiler debugger tool.  It is used to narrow
 // down miscompilations and crash problems to a specific pass in the compiler,
diff --git a/tools/extract/extract.cpp b/tools/extract/extract.cpp
index 0298df2..cf5bc90 100644
--- a/tools/extract/extract.cpp
+++ b/tools/extract/extract.cpp
@@ -1,4 +1,12 @@
 //===- extract.cpp - LLVM function extraction utility ---------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This utility changes the input module to only contain a single function,
 // which is primarily used for debugging transformations.
diff --git a/tools/gccas/gccas.cpp b/tools/gccas/gccas.cpp
index 9298760..eaca552 100644
--- a/tools/gccas/gccas.cpp
+++ b/tools/gccas/gccas.cpp
@@ -1,4 +1,12 @@
 //===-- gccas.cpp - The "optimizing assembler" used by the GCC frontend ---===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This utility is designed to be used by the GCC frontend for creating bytecode
 // files from its intermediate LLVM assembly.  The requirements for this utility
diff --git a/tools/gccld/GenerateCode.cpp b/tools/gccld/GenerateCode.cpp
index c7d23eb..5939691 100644
--- a/tools/gccld/GenerateCode.cpp
+++ b/tools/gccld/GenerateCode.cpp
@@ -1,4 +1,12 @@
 //===- GenerateCode.cpp - Functions for generating executable files  ------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file contains functions for generating executable files once linking
 // has finished.  This includes generating a shell script to run the JIT or
diff --git a/tools/gccld/Linker.cpp b/tools/gccld/Linker.cpp
index 2afe5c1..cfae2b9 100644
--- a/tools/gccld/Linker.cpp
+++ b/tools/gccld/Linker.cpp
@@ -1,4 +1,12 @@
 //===- Linker.cpp - Link together LLVM objects and libraries --------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file contains routines to handle linking together LLVM bytecode files,
 // and to handle annoying things like static libraries.
diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp
index cd4cce0..b484fd7 100644
--- a/tools/gccld/gccld.cpp
+++ b/tools/gccld/gccld.cpp
@@ -1,4 +1,12 @@
 //===- gccld.cpp - LLVM 'ld' compatible linker ----------------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This utility is intended to be compatible with GCC, and follows standard
 // system 'ld' conventions.  As such, the default output file is ./a.out.
diff --git a/tools/gccld/gccld.h b/tools/gccld/gccld.h
index b94fa89..c98ca6c 100644
--- a/tools/gccld/gccld.h
+++ b/tools/gccld/gccld.h
@@ -1,4 +1,12 @@
 //===- util.h - Utility functions header file -----------------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file contains function prototypes for the functions in util.cpp.
 //
diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp
index 4a39ef4..ed99c1c 100644
--- a/tools/llc/llc.cpp
+++ b/tools/llc/llc.cpp
@@ -1,4 +1,12 @@
 //===-- llc.cpp - Implement the LLVM Native Code Generator ----------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This is the llc code generator.
 //
diff --git a/tools/llee/OSInterface.h b/tools/llee/OSInterface.h
index 18fe0da..e886a60 100644
--- a/tools/llee/OSInterface.h
+++ b/tools/llee/OSInterface.h
@@ -1,4 +1,12 @@
 /*===- OSInterface.h - Interface to query OS for functionality ---*- C -*--===*\
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
  *                                                                            *
  * This file defines the prototype interface that we will expect operating    *
  * systems to implement if they wish to support offline cachine.              *
diff --git a/tools/llee/SysUtils.h b/tools/llee/SysUtils.h
index 2e498a8..8db79cc 100644
--- a/tools/llee/SysUtils.h
+++ b/tools/llee/SysUtils.h
@@ -1,4 +1,12 @@
 /*===- SysUtils.h - Utilities to do low-level system stuff -------*- C -*--===*\
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
  *                                                                            *
  * This file contains functions used to do a variety of low-level, often      *
  * system-specific, tasks.                                                    *
diff --git a/tools/lli/lli.cpp b/tools/lli/lli.cpp
index 5bd19fc..2cd4e82 100644
--- a/tools/lli/lli.cpp
+++ b/tools/lli/lli.cpp
@@ -1,4 +1,12 @@
 //===- lli.cpp - LLVM Interpreter / Dynamic compiler ----------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This utility provides a way to execute LLVM bytecode without static
 // compilation.  This consists of a very simple and slow (but portable)
diff --git a/tools/llvm-ar/llvm-ar.cpp b/tools/llvm-ar/llvm-ar.cpp
index bb9aef5..a017974 100644
--- a/tools/llvm-ar/llvm-ar.cpp
+++ b/tools/llvm-ar/llvm-ar.cpp
@@ -1,4 +1,12 @@
 //===-- tools/llvm-ar/llvm-ar.cpp - LLVM archive librarian utility --------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // Builds up standard unix archive files (.a) containing LLVM bytecode.
 //
diff --git a/tools/llvm-as/llvm-as.cpp b/tools/llvm-as/llvm-as.cpp
index da95622..e00d4e2 100644
--- a/tools/llvm-as/llvm-as.cpp
+++ b/tools/llvm-as/llvm-as.cpp
@@ -1,4 +1,12 @@
 //===------------------------------------------------------------------------===
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 // LLVM 'AS' UTILITY 
 //
 //  This utility may be invoked in the following manner:
diff --git a/tools/llvm-dis/llvm-dis.cpp b/tools/llvm-dis/llvm-dis.cpp
index 4429efa..70f8f51 100644
--- a/tools/llvm-dis/llvm-dis.cpp
+++ b/tools/llvm-dis/llvm-dis.cpp
@@ -1,4 +1,12 @@
 //===----------------------------------------------------------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 // LLVM 'DIS' UTILITY 
 //
 // This utility may be invoked in the following manner:
diff --git a/tools/llvm-extract/llvm-extract.cpp b/tools/llvm-extract/llvm-extract.cpp
index 0298df2..cf5bc90 100644
--- a/tools/llvm-extract/llvm-extract.cpp
+++ b/tools/llvm-extract/llvm-extract.cpp
@@ -1,4 +1,12 @@
 //===- extract.cpp - LLVM function extraction utility ---------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This utility changes the input module to only contain a single function,
 // which is primarily used for debugging transformations.
diff --git a/tools/llvm-link/llvm-link.cpp b/tools/llvm-link/llvm-link.cpp
index 3400df8..b3ff994 100644
--- a/tools/llvm-link/llvm-link.cpp
+++ b/tools/llvm-link/llvm-link.cpp
@@ -1,4 +1,12 @@
 //===- llvm-link.cpp - Low-level LLVM linker ------------------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This utility may be invoked in the following manner:
 //  llvm-link a.bc b.bc c.bc -o x.bc
diff --git a/tools/llvm-nm/llvm-nm.cpp b/tools/llvm-nm/llvm-nm.cpp
index e98f655..ffd8cf3 100644
--- a/tools/llvm-nm/llvm-nm.cpp
+++ b/tools/llvm-nm/llvm-nm.cpp
@@ -1,4 +1,12 @@
 //===-- llvm-nm.cpp - Symbol table dumping utility for llvm ---------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This program is a utility that works like traditional Unix "nm",
 // that is, it prints out the names of symbols in a bytecode file,
diff --git a/tools/opt/AnalysisWrappers.cpp b/tools/opt/AnalysisWrappers.cpp
index aa4e829..5791377 100644
--- a/tools/opt/AnalysisWrappers.cpp
+++ b/tools/opt/AnalysisWrappers.cpp
@@ -1,4 +1,12 @@
 //===- AnalysisWrappers.cpp - Wrappers around non-pass analyses -----------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file defines pass wrappers around LLVM analyses that don't make sense to
 // be passes.  It provides a nice standard pass interface to these classes so
diff --git a/tools/opt/GraphPrinters.cpp b/tools/opt/GraphPrinters.cpp
index 28b18d1..83708ec 100644
--- a/tools/opt/GraphPrinters.cpp
+++ b/tools/opt/GraphPrinters.cpp
@@ -1,4 +1,12 @@
 //===- GraphPrinters.cpp - DOT printers for various graph types -----------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 //
 // This file defines several printers for various different types of graphs used
 // by the LLVM infrastructure.  It uses the generic graph interface to convert
diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp
index 1eaadd2..3c86d2f 100644
--- a/tools/opt/opt.cpp
+++ b/tools/opt/opt.cpp
@@ -1,4 +1,12 @@
 //===----------------------------------------------------------------------===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
+// 
 // LLVM Modular Optimizer Utility: opt
 //
 // Optimizations may be specified an arbitrary number of times on the command