Setting environment for using Microsoft Visual Studio 2008 x86 tools. OVERVIEW: llvm .bc -> .bc modular optimizer and analysis printer USAGE: opt [options] OPTIONS: -O1 - Optimization level 1. Similar to llvm-gcc -O1 -O2 - Optimization level 2. Similar to llvm-gcc -O2 -O3 - Optimization level 3. Similar to llvm-gcc -O3 -S - Write output as LLVM assembly -analyze - Only perform analysis, no optimization -default-data-layout= - data layout string to use if not specified by module -disable-inlining - Do not run the inliner pass -disable-internalize - Do not mark all symbols as internal -disable-opt - Do not run any optimization passes -disable-simplify-libcalls - Disable simplify-libcalls -enable-correct-eh-support - Make the -lowerinvoke pass insert expensive, but correct, EH code -enable-load-pre - -enable-objc-arc-opts - -enable-tbaa - -f - Enable binary output on terminals -funit-at-a-time - Enable IPO. This is same as llvm-gcc's -funit-at-a-time -help - Display available options (-help-hidden for more) -internalize-public-api-file= - A file containing list of symbol names to preserve -internalize-public-api-list= - A list of symbol names to preserve -load= - Load the specified plugin -mtriple= - Override target triple for module -o= - Override output filename -p - Print module after each transformation -print-after-all - Print IR after each pass -print-before-all - Print IR before each pass -print-breakpoints-for-testing - Print select breakpoints location for testing -profile-estimator-loop-weight= - Number of loop executions used for profile-estimator -profile-info-file= - Profile file loaded by -profile-loader -profile-verifier-noassert - Disable assertions -stats - Enable statistics output from program -std-compile-opts - Include the standard compile time optimizations -std-link-opts - Include the standard link time optimizations -strip-debug - Strip debugger symbol info from translation unit Optimizations available: -aa-eval - Exhaustive Alias Analysis Precision Evaluator -adce - Aggressive Dead Code Elimination -always-inline - Inliner for always_inline functions -argpromotion - Promote 'by reference' arguments to scalars -asan - AddressSanitizer: detects use-after-free and out-of-bounds bugs. -basicaa - Basic Alias Analysis (stateless AA impl) -basiccg - Basic CallGraph Construction -bb-vectorize - Basic-Block Vectorization -block-freq - Block Frequency Analysis -block-placement - Profile Guided Basic Block Placement -branch-prob - Branch Probability Analysis -break-crit-edges - Break critical edges in CFG -codegenprepare - Optimize for code generation -constmerge - Merge Duplicate Global Constants -constprop - Simple constant propagation -correlated-propagation - Value Propagation -count-aa - Count Alias Analysis Query Responses -dce - Dead Code Elimination -deadargelim - Dead Argument Elimination -deadarghaX0r - Dead Argument Hacking (BUGPOINT USE ONLY; DO NOT USE) -debug-aa - AA use debugger -die - Dead Instruction Elimination -domfrontier - Dominance Frontier Construction -domtree - Dominator Tree Construction -dot-callgraph - Print Call Graph to 'dot' file -dot-cfg - Print CFG of function to 'dot' file -dot-cfg-only - Print CFG of function to 'dot' file (with no function bodies) -dot-dom - Print dominance tree of function to 'dot' file -dot-dom-only - Print dominance tree of function to 'dot' file (with no function bodies) -dot-postdom - Print postdominance tree of function to 'dot' file -dot-postdom-only - Print postdominance tree of function to 'dot' file (with no function bodies) -dot-regions - Print regions of function to 'dot' file -dot-regions-only - Print regions of function to 'dot' file (with no function bodies) -dse - Dead Store Elimination -early-cse - Early CSE -extract-blocks - Extract Basic Blocks From Module (for bugpoint use) -functionattrs - Deduce function attributes -globaldce - Dead Global Elimination -globalopt - Global Variable Optimizer -globalsmodref-aa - Simple mod/ref analysis for globals -gvn - Global Value Numbering -indvars - Induction Variable Simplification -inline - Function Integration/Inlining -insert-edge-profiling - Insert instrumentation for edge profiling -insert-gcov-profiling - Insert instrumentation for GCOV profiling -insert-optimal-edge-profiling - Insert optimal instrumentation for edge profiling -insert-path-profiling - Insert instrumentation for Ball-Larus path profiling -instcombine - Combine redundant instructions -instcount - Counts the various types of Instructions -instnamer - Assign names to anonymous instructions -instsimplify - Remove redundant instructions -internalize - Internalize Global Symbols -intervals - Interval Partition Construction -ipconstprop - Interprocedural constant propagation -ipsccp - Interprocedural Sparse Conditional Constant Propagation -iv-users - Induction Variable Users -jump-threading - Jump Threading -lazy-value-info - Lazy Value Information Analysis -lcssa - Loop-Closed SSA Form Pass -lda - Loop Dependence Analysis -libcall-aa - LibCall Alias Analysis -licm - Loop Invariant Code Motion -lint - Statically lint-checks LLVM IR -loop-deletion - Delete dead loops -loop-extract - Extract loops into new functions -loop-extract-single - Extract at most one loop into a new function -loop-idiom - Recognize loop idioms -loop-instsimplify - Simplify instructions in loops -loop-reduce - Loop Strength Reduction -loop-rotate - Rotate Loops -loop-simplify - Canonicalize natural loops -loop-unroll - Unroll loops -loop-unswitch - Unswitch loops -loops - Natural Loop Information -lower-expect - Lower 'expect' Intrinsics -loweratomic - Lower atomic intrinsics to non-atomic form -lowerinvoke - Lower invoke and unwind, for unwindless code generators -lowerswitch - Lower SwitchInst's to branches -mem2reg - Promote Memory to Register -memcpyopt - MemCpy Optimization -memdep - Memory Dependence Analysis -mergefunc - Merge Functions -mergereturn - Unify function exit nodes -module-debuginfo - Decodes module-level debug info -no-aa - No Alias Analysis (always returns 'may' alias) -no-path-profile - No Path Profile Information -no-profile - No Profile Information -objc-arc - ObjC ARC optimization -objc-arc-aa - ObjC-ARC-Based Alias Analysis -objc-arc-apelim - ObjC ARC autorelease pool elimination -objc-arc-contract - ObjC ARC contraction -objc-arc-expand - ObjC ARC expansion -partial-inliner - Partial Inliner -path-profile-loader - Load path profile information from file -path-profile-verifier - Compare the path profile derived edge profile against the edge profile. -postdomtree - Post-Dominator Tree Construction -preverify - Preliminary module verification -print-alias-sets - Alias Set Printer -print-callgraph - Print a call graph -print-callgraph-sccs - Print SCCs of the Call Graph -print-cfg-sccs - Print SCCs of each function CFG -print-dbginfo - Print debug info in human readable form -print-dom-info - Dominator Info Printer -print-externalfnconstants - Print external fn callsites passed constants -print-function - Print function to stderr -print-memdeps - Print MemDeps of function -print-module - Print module to stderr -print-used-types - Find Used Types -profile-estimator - Estimate profiling information -profile-loader - Load profile information from llvmprof.out -profile-verifier - Verify profiling information -prune-eh - Remove unused exception handling info -reassociate - Reassociate expressions -reg2mem - Demote all values to stack slots -regions - Detect single entry single exit regions -scalar-evolution - Scalar Evolution Analysis -scalarrepl - Scalar Replacement of Aggregates (DT) -scalarrepl-ssa - Scalar Replacement of Aggregates (SSAUp) -sccp - Sparse Conditional Constant Propagation -scev-aa - ScalarEvolution-based Alias Analysis -simplify-libcalls - Simplify well-known library calls -simplifycfg - Simplify the CFG -sink - Code sinking -strip - Strip all symbols from a module -strip-dead-debug-info - Strip debug info for unused symbols -strip-dead-prototypes - Strip Unused Function Prototypes -strip-debug-declare - Strip all llvm.dbg.declare intrinsics -strip-nondebug - Strip all symbols, except dbg symbols, from a module -tailcallelim - Tail Call Elimination -targetdata - Target Data Layout -targetlibinfo - Target Library Information -tbaa - Type-Based Alias Analysis -tsan - ThreadSanitizer: detects data races. -verify - Module Verifier -view-cfg - View CFG of function -view-cfg-only - View CFG of function (with no function bodies) -view-dom - View dominance tree of function -view-dom-only - View dominance tree of function (with no function bodies) -view-postdom - View postdominance tree of function -view-postdom-only - View postdominance tree of function (with no function bodies) -view-regions - View regions of function -view-regions-only - View regions of function (with no function bodies) -time-passes - Time each pass, printing elapsed time for each on exit -vectorize - Run vectorization passes -verify-dom-info - Verify dominator info (time consuming) -verify-each - Verify after each transform -verify-loop-info - Verify loop info (time consuming) -verify-region-info - Verify region info (time consuming) -version - Display the version of this program