Add regression test to make sure that constants are generated optimally.
authorJim Laskey <jlaskey@mac.com>
Thu, 18 Aug 2005 19:32:46 +0000 (19:32 +0000)
committerJim Laskey <jlaskey@mac.com>
Thu, 18 Aug 2005 19:32:46 +0000 (19:32 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22871 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/PowerPC/constants.ll [new file with mode: 0644]

diff --git a/test/CodeGen/PowerPC/constants.ll b/test/CodeGen/PowerPC/constants.ll
new file mode 100644 (file)
index 0000000..a22d970
--- /dev/null
@@ -0,0 +1,51 @@
+; All of these ands and shifts should be folded into constants's
+; RUN: llvm-as < constants.ll | llc -march=ppc32 | grep lis | wc -l | grep 5 &&
+; RUN: llvm-as < constants.ll | llc -march=ppc32 | grep ori | wc -l | grep 3 &&
+; RUN: llvm-as < constants.ll | llc -march=ppc32 | grep li | wc -l | grep 18
+
+implementation   ; Functions:
+
+int %_Z2f1v() {
+entry:
+        ret int 1
+}
+
+int %_Z2f2v() {
+entry:
+        ret int -1
+}
+
+int %_Z2f3v() {
+entry:
+        ret int 0
+}
+
+int %_Z2f4v() {
+entry:
+        ret int 32767
+}
+
+int %_Z2f5v() {
+entry:
+        ret int 65535
+}
+
+int %_Z2f6v() {
+entry:
+        ret int 65536
+}
+
+int %_Z2f7v() {
+entry:
+        ret int 131071
+}
+
+int %_Z2f8v() {
+entry:
+        ret int 2147483647
+}
+
+int %_Z2f9v() {
+entry:
+        ret int -2147483648
+}