Previously, Debug/bin/llvm-opt would invoke Debug/bin/opt, and
Release/bin/llvm-opt would invoke Release/bin/opt. However, build-script
only ever builds one LLVM configuration, even if Swift is being built
by Xcode in multiple build configurations.
Swift SVN r24259
OptimizeARC does not only contain an optimize arc pass: the library also
includes aa. What this really is a repository of the extra passes and
infrastructure that we inject into LLVM. Thus LLVMPasses is a more descriptive
name. It also matches SILPasses.
I also taught lit how to use the new llvm-opt driver for running swift llvm
passes through opt without having to remember how to setup the dynamic swift
llvm pass dylib. You can use this in lit tests by using the substitution
%llvm-opt.
Swift SVN r21654
This allows one to just run llvm-opt -swift-arc-optimize, etc without needing to
know anything about hooking up the dylib.
I also changed leaks-detector to use the same type of sequence of code as
llvm-opt. It was creating a folder and copying leaks-runner into the folder
instead of just copying leaks-runner into bin.
Swift SVN r21273