ARM: enable tail call optimisation on Thumb 2
Tail call optimisation was previously disabled on all targets other than
iOS5.0+. This enables the tail call optimisation on all Thumb 2 capable
platforms.
The test adjustments are to remove the IR hint "tail" to function invocation.
The tests were designed assuming that tail call optimisations would not kick in
which no longer holds true.
llvm-svn: 203575
diff --git a/llvm/test/CodeGen/ARM/2014-02-21-byval-reg-split-alignment.ll b/llvm/test/CodeGen/ARM/2014-02-21-byval-reg-split-alignment.ll
index 054a45c..33bfa2f 100644
--- a/llvm/test/CodeGen/ARM/2014-02-21-byval-reg-split-alignment.ll
+++ b/llvm/test/CodeGen/ARM/2014-02-21-byval-reg-split-alignment.ll
@@ -23,7 +23,7 @@
; CHECK: pop {r11, lr}
; CHECK: add sp, sp, #16
- tail call void @useLong(i64 %c)
+ call void @useLong(i64 %c)
ret void
}
@@ -40,7 +40,7 @@
; CHECK: pop {r11, lr}
; CHECK: add sp, sp, #8
- tail call void @usePtr(%struct8bytes8align* %b)
+ call void @usePtr(%struct8bytes8align* %b)
ret void
}
@@ -57,7 +57,7 @@
; CHECK: pop {r11, lr}
; CHECK: add sp, sp, #16
- tail call void @usePtr(%struct8bytes8align* %a)
+ call void @usePtr(%struct8bytes8align* %a)
ret void
}
@@ -76,7 +76,7 @@
; CHECK: add sp, sp, #16
; CHECK: mov pc, lr
- tail call void @usePtr(%struct8bytes8align* %b)
+ call void @usePtr(%struct8bytes8align* %b)
ret void
}
@@ -95,7 +95,7 @@
; CHECK: add sp, sp, #16
; CHECK: mov pc, lr
- tail call void @usePtr(%struct8bytes8align* %a)
+ call void @usePtr(%struct8bytes8align* %a)
ret void
}
@@ -109,6 +109,6 @@
; CHECK: pop {r11, lr}
; CHECK: mov pc, lr
- tail call void @usePtr(%struct8bytes8align* %d)
+ call void @usePtr(%struct8bytes8align* %d)
ret void
}