Revert r142530 at least temporarily while a discussion is had on llvm-commits regardi...
authorJames Molloy <james.molloy@arm.com>
Wed, 26 Oct 2011 08:53:19 +0000 (08:53 +0000)
committerJames Molloy <james.molloy@arm.com>
Wed, 26 Oct 2011 08:53:19 +0000 (08:53 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143023 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMISelLowering.cpp
test/CodeGen/ARM/2011-10-18-DisableMovtSize.ll [deleted file]

index d7aca309807ed53724c8d4ac3094a808a9a249be..472bf4c42f3de0b9283f1a1e73cfaed852f5003b 100644 (file)
@@ -2104,11 +2104,8 @@ SDValue ARMTargetLowering::LowerGlobalAddressELF(SDValue Op,
   }
 
   // If we have T2 ops, we can materialize the address directly via movt/movw
-  // pair. This is always cheaper in terms of performance, but uses at least 2
-  // extra bytes.
-  MachineFunction &MF = DAG.getMachineFunction();
-  if (Subtarget->useMovt() &&
-      !MF.getFunction()->hasFnAttr(Attribute::OptimizeForSize)) {
+  // pair. This is always cheaper.
+  if (Subtarget->useMovt()) {
     ++NumMovwMovt;
     // FIXME: Once remat is capable of dealing with instructions with register
     // operands, expand this into two nodes.
diff --git a/test/CodeGen/ARM/2011-10-18-DisableMovtSize.ll b/test/CodeGen/ARM/2011-10-18-DisableMovtSize.ll
deleted file mode 100644 (file)
index 4f84ab0..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-; RUN: llc < %s -mtriple=armv7-unknown-linux-eabi | FileCheck %s
-
-; Check that when optimizing for size, a literal pool load is used
-; instead of the (potentially faster) movw/movt pair when loading
-; a large constant.
-
-@x = global i32* inttoptr (i32 305419888 to i32*), align 4
-
-define i32 @f() optsize {
-  ; CHECK: f:
-  ; CHECK: ldr  r{{.}}, {{.?}}LCPI{{.}}_{{.}}
-  ; CHECK: ldr  r{{.}}, [{{(pc, )?}}r{{.}}]
-  ; CHECK: ldr  r{{.}}, [r{{.}}]
-  %1 = load i32** @x, align 4
-  %2 = load i32* %1
-  ret i32 %2
-}
-
-define i32 @g() {
-  ; CHECK: g:
-  ; CHECK: movw
-  ; CHECK: movt
-  %1 = load i32** @x, align 4
-  %2 = load i32* %1
-  ret i32 %2
-}