diff options
author | Bill Wendling <isanbard@gmail.com> | 2009-04-28 00:21:31 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2009-04-28 00:21:31 +0000 |
commit | 11a01bfa097cfe006de022154709b545ee125523 (patch) | |
tree | 9dd3e8a53311bd2858fbd020e0a886952726bb2b /lib/Target/CBackend | |
parent | e57ec73d79c10811e2c0ac4579c62e110ee7f7bd (diff) | |
download | external_llvm-11a01bfa097cfe006de022154709b545ee125523.zip external_llvm-11a01bfa097cfe006de022154709b545ee125523.tar.gz external_llvm-11a01bfa097cfe006de022154709b545ee125523.tar.bz2 |
Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to
use the old behavior, the flag is -O0. This change allows for finer-grained
control over which optimizations are run at different -O levels.
Most of this work was pretty mechanical. The majority of the fixes came from
verifying that a "fast" variable wasn't used anymore. The JIT still uses a
"Fast" flag. I'm not 100% sure if it's necessary to change it there...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70270 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/CBackend')
-rw-r--r-- | lib/Target/CBackend/CBackend.cpp | 2 | ||||
-rw-r--r-- | lib/Target/CBackend/CTargetMachine.h | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/Target/CBackend/CBackend.cpp b/lib/Target/CBackend/CBackend.cpp index 8b2473b..0a8e9df 100644 --- a/lib/Target/CBackend/CBackend.cpp +++ b/lib/Target/CBackend/CBackend.cpp @@ -3587,7 +3587,7 @@ void CWriter::visitExtractValueInst(ExtractValueInst &EVI) { bool CTargetMachine::addPassesToEmitWholeFile(PassManager &PM, raw_ostream &o, CodeGenFileType FileType, - bool Fast) { + unsigned OptLevel) { if (FileType != TargetMachine::AssemblyFile) return true; PM.add(createGCLoweringPass()); diff --git a/lib/Target/CBackend/CTargetMachine.h b/lib/Target/CBackend/CTargetMachine.h index a17df05..a851486 100644 --- a/lib/Target/CBackend/CTargetMachine.h +++ b/lib/Target/CBackend/CTargetMachine.h @@ -27,7 +27,8 @@ struct CTargetMachine : public TargetMachine { virtual bool WantsWholeFile() const { return true; } virtual bool addPassesToEmitWholeFile(PassManager &PM, raw_ostream &Out, - CodeGenFileType FileType, bool Fast); + CodeGenFileType FileType, + unsigned OptLevel); // This class always works, but must be requested explicitly on // llc command line. |