Revert r122936. I'll re-implement the change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122949 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng
2011-01-06 06:17:53 +00:00
parent 238589ebf5
commit 255874ff52
3 changed files with 26 additions and 57 deletions

View File

@@ -50,7 +50,6 @@
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/Triple.h"
#include <algorithm>
#include <cmath>
using namespace llvm;
@@ -3287,14 +3286,8 @@ static bool FindOptimalMemOpLowering(std::vector<EVT> &MemOps,
// the size of a call to memcpy or memset (3 arguments + call).
if (Limit != ~0U) {
const Function *F = DAG.getMachineFunction().getFunction();
if (F->hasFnAttr(Attribute::OptimizeForSize)) {
Triple T(((LLVMTargetMachine&)TLI.getTargetMachine()).getTargetTriple());
if (T.getOS() != Triple::Darwin)
// A pretty terrible hack to defat the wild guess. On Darwin, -Os means
// optimize for size without hurting performance so we don't want to
// bump down the limit.
Limit = 4;
}
if (F->hasFnAttr(Attribute::OptimizeForSize))
Limit = 4;
}
unsigned NumMemOps = 0;