summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/ARM
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-09-22 08:34:46 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-09-22 08:34:46 +0000
commit08d1e41c107af1e08988bc54eef8d2a83cc6e322 (patch)
tree7f5383c0a7264af6a039b45f1906ffc51a5f94e0 /llvm/test/CodeGen/ARM
parent28830b39b4bd2fec7ba937b49d1389ac0b56c322 (diff)
downloadbcm5719-llvm-08d1e41c107af1e08988bc54eef8d2a83cc6e322.tar.gz
bcm5719-llvm-08d1e41c107af1e08988bc54eef8d2a83cc6e322.zip
Fix PR5024. LiveVariables::FindLastPartialDef should return a set of sub-registers that were defined by the last partial def, not just a single sub-register.
llvm-svn: 82535
Diffstat (limited to 'llvm/test/CodeGen/ARM')
-rw-r--r--llvm/test/CodeGen/ARM/2009-09-21-LiveVariablesBug.ll14
1 files changed, 14 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/ARM/2009-09-21-LiveVariablesBug.ll b/llvm/test/CodeGen/ARM/2009-09-21-LiveVariablesBug.ll
new file mode 100644
index 00000000000..aace4751915
--- /dev/null
+++ b/llvm/test/CodeGen/ARM/2009-09-21-LiveVariablesBug.ll
@@ -0,0 +1,14 @@
+; RUN: llc < %s -mtriple=armv7-none-linux-gnueabi -mattr=+neon
+
+; PR5024
+
+%bar = type { <4 x float> }
+%foo = type { %bar, %bar, %bar, %bar }
+
+declare arm_aapcs_vfpcc <4 x float> @bbb(%bar*) nounwind
+
+define arm_aapcs_vfpcc void @aaa(%foo* noalias sret %agg.result, %foo* %tfrm) nounwind {
+entry:
+ %0 = call arm_aapcs_vfpcc <4 x float> @bbb(%bar* undef) nounwind ; <<4 x float>> [#uses=0]
+ ret void
+}
OpenPOWER on IntegriCloud