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
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
index be2de0c..110812c 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
@@ -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 @@
   // 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;