aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/Target/ARM/ARMBaseRegisterInfo.cpp5
-rw-r--r--test/CodeGen/ARM/hello.ll2
-rw-r--r--test/CodeGen/ARM/ifcvt5.ll2
-rw-r--r--test/CodeGen/ARM/insn-sched1.ll2
-rw-r--r--test/CodeGen/Thumb2/thumb2-ifcvt1.ll1
-rw-r--r--test/CodeGen/Thumb2/thumb2-ifcvt2.ll1
6 files changed, 3 insertions, 10 deletions
diff --git a/lib/Target/ARM/ARMBaseRegisterInfo.cpp b/lib/Target/ARM/ARMBaseRegisterInfo.cpp
index df45868..19762ee 100644
--- a/lib/Target/ARM/ARMBaseRegisterInfo.cpp
+++ b/lib/Target/ARM/ARMBaseRegisterInfo.cpp
@@ -222,7 +222,6 @@ BitVector ARMBaseRegisterInfo::getReservedRegs(const MachineFunction &MF) const
BitVector Reserved(getNumRegs());
Reserved.set(ARM::SP);
Reserved.set(ARM::PC);
- // FP is reserved on Darwin even if we're not using it in this function.
if (STI.isTargetDarwin() || hasFP(MF))
Reserved.set(FramePtr);
// Some targets reserve R9.
@@ -240,7 +239,6 @@ bool ARMBaseRegisterInfo::isReservedReg(const MachineFunction &MF,
return true;
case ARM::R7:
case ARM::R11:
- // FP is reserved on Darwin even if we're not using it in this function.
if (FramePtr == Reg && (STI.isTargetDarwin() || hasFP(MF)))
return true;
break;
@@ -494,8 +492,7 @@ static unsigned calculateMaxStackAlignment(const MachineFrameInfo *FFI) {
///
bool ARMBaseRegisterInfo::hasFP(const MachineFunction &MF) const {
const MachineFrameInfo *MFI = MF.getFrameInfo();
- return ((STI.isTargetDarwin() && MFI->hasCalls()) ||
- NoFramePointerElim ||
+ return (NoFramePointerElim ||
needsStackRealignment(MF) ||
MFI->hasVarSizedObjects() ||
MFI->isFrameAddressTaken());
diff --git a/test/CodeGen/ARM/hello.ll b/test/CodeGen/ARM/hello.ll
index 23935b9..ccdc7bf 100644
--- a/test/CodeGen/ARM/hello.ll
+++ b/test/CodeGen/ARM/hello.ll
@@ -2,7 +2,7 @@
; RUN: llc < %s -mtriple=arm-linux-gnueabi | grep mov | count 1
; RUN: llc < %s -mtriple=arm-linux-gnu --disable-fp-elim | \
; RUN: grep mov | count 3
-; RUN: llc < %s -mtriple=arm-apple-darwin | grep mov | count 3
+; RUN: llc < %s -mtriple=arm-apple-darwin | grep mov | count 2
@str = internal constant [12 x i8] c"Hello World\00"
diff --git a/test/CodeGen/ARM/ifcvt5.ll b/test/CodeGen/ARM/ifcvt5.ll
index f6084b8..623f2cb 100644
--- a/test/CodeGen/ARM/ifcvt5.ll
+++ b/test/CodeGen/ARM/ifcvt5.ll
@@ -1,7 +1,5 @@
; RUN: llc < %s -mtriple=armv7-apple-darwin | FileCheck %s
-; XFAIL: *
-
@x = external global i32* ; <i32**> [#uses=1]
define void @foo(i32 %a) {
diff --git a/test/CodeGen/ARM/insn-sched1.ll b/test/CodeGen/ARM/insn-sched1.ll
index 717b89c..59f0d53 100644
--- a/test/CodeGen/ARM/insn-sched1.ll
+++ b/test/CodeGen/ARM/insn-sched1.ll
@@ -1,6 +1,6 @@
; RUN: llc < %s -march=arm -mattr=+v6
; RUN: llc < %s -mtriple=arm-apple-darwin -mattr=+v6 |\
-; RUN: grep mov | count 4
+; RUN: grep mov | count 3
define i32 @test(i32 %x) {
%tmp = trunc i32 %x to i16 ; <i16> [#uses=1]
diff --git a/test/CodeGen/Thumb2/thumb2-ifcvt1.ll b/test/CodeGen/Thumb2/thumb2-ifcvt1.ll
index 617d0b1..71199ab 100644
--- a/test/CodeGen/Thumb2/thumb2-ifcvt1.ll
+++ b/test/CodeGen/Thumb2/thumb2-ifcvt1.ll
@@ -1,5 +1,4 @@
; RUN: llc < %s -mtriple=thumbv7-apple-darwin | FileCheck %s
-; XFAIL: *
define i32 @t1(i32 %a, i32 %b, i32 %c, i32 %d) {
; CHECK: t1:
diff --git a/test/CodeGen/Thumb2/thumb2-ifcvt2.ll b/test/CodeGen/Thumb2/thumb2-ifcvt2.ll
index 5ff9bfd..d917ffe 100644
--- a/test/CodeGen/Thumb2/thumb2-ifcvt2.ll
+++ b/test/CodeGen/Thumb2/thumb2-ifcvt2.ll
@@ -1,5 +1,4 @@
; RUN: llc < %s -mtriple=thumbv7-apple-darwin | FileCheck %s
-; XFAIL: *
define void @foo(i32 %X, i32 %Y) {
entry: