[llvm-commits] [128613] add a new -mllvm -disable-llvm-optzns option, which can be used
clattner at apple.com
clattner at apple.com
Tue Jun 19 10:49:10 PDT 2007
Revision: 128613
Author: clattner
Date: 2007-06-19 10:49:09 -0700 (Tue, 19 Jun 2007)
Log Message:
-----------
add a new -mllvm -disable-llvm-optzns option, which can be used
to isolate changes in the code made by llvm optimizers from changes
make by GCC FE optimizations.
Modified Paths:
--------------
apple-local/branches/llvm/gcc/llvm-backend.cpp
Modified: apple-local/branches/llvm/gcc/llvm-backend.cpp
===================================================================
--- apple-local/branches/llvm/gcc/llvm-backend.cpp 2007-06-19 16:30:52 UTC (rev 128612)
+++ apple-local/branches/llvm/gcc/llvm-backend.cpp 2007-06-19 17:49:09 UTC (rev 128613)
@@ -78,6 +78,11 @@
TypeConverter *TheTypeConverter = 0;
llvm::OStream *AsmOutFile = 0;
+/// DisableLLVMOptimizations - Allow the user to specify:
+/// "-mllvm -disable-llvm-optzns" on the llvm-gcc command line to force llvm
+/// optimizations off.
+static cl::opt<bool> DisableLLVMOptimizations("disable-llvm-optzns");
+
std::vector<std::pair<Function*, int> > StaticCtors, StaticDtors;
std::vector<Constant*> AttributeUsedGlobals;
std::vector<Constant*> AttributeNoinlineFunctions;
@@ -271,7 +276,7 @@
HasPerFunctionPasses = true;
#endif
- if (optimize > 0) {
+ if (optimize > 0 && !DisableLLVMOptimizations) {
HasPerFunctionPasses = true;
PerFunctionPasses->add(createCFGSimplificationPass());
if (optimize == 1)
@@ -287,7 +292,7 @@
PerModulePasses->add(new TargetData(*TheTarget->getTargetData()));
bool HasPerModulePasses = false;
- if (optimize > 0) {
+ if (optimize > 0 && !DisableLLVMOptimizations) {
HasPerModulePasses = true;
PassManager *PM = PerModulePasses;
if (flag_unit_at_a_time)
More information about the llvm-commits
mailing list