aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/2006-05-02-InstrSched1.ll
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-05-03 02:11:36 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-05-03 02:11:36 +0000
commit33f9cce73a1963e0178774fe3c2da2a40c75d08a (patch)
tree62a758d40e965c2c6f7892d04b10dcf029a950bd /test/CodeGen/X86/2006-05-02-InstrSched1.ll
parentc9a83a45ba53abeab329548e7ac9f3968b440e64 (diff)
downloadexternal_llvm-33f9cce73a1963e0178774fe3c2da2a40c75d08a.zip
external_llvm-33f9cce73a1963e0178774fe3c2da2a40c75d08a.tar.gz
external_llvm-33f9cce73a1963e0178774fe3c2da2a40c75d08a.tar.bz2
A few instruction scheduling test cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28077 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/2006-05-02-InstrSched1.ll')
-rw-r--r--test/CodeGen/X86/2006-05-02-InstrSched1.ll20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/CodeGen/X86/2006-05-02-InstrSched1.ll b/test/CodeGen/X86/2006-05-02-InstrSched1.ll
new file mode 100644
index 0000000..e6e8f69
--- /dev/null
+++ b/test/CodeGen/X86/2006-05-02-InstrSched1.ll
@@ -0,0 +1,20 @@
+; RUN: llvm-as < %s | llc -march=x86 -relocation-model=static -stats 2>&1 | grep "asm-printer" | grep 14
+%size20 = external global uint ; <uint*> [#uses=1]
+%in5 = external global ubyte* ; <ubyte**> [#uses=1]
+
+int %compare(sbyte* %a, sbyte* %b) {
+ %tmp = cast sbyte* %a to uint* ; <uint*> [#uses=1]
+ %tmp1 = cast sbyte* %b to uint* ; <uint*> [#uses=1]
+ %tmp = load uint* %size20 ; <uint> [#uses=1]
+ %tmp = load ubyte** %in5 ; <ubyte*> [#uses=2]
+ %tmp3 = load uint* %tmp1 ; <uint> [#uses=1]
+ %tmp4 = getelementptr ubyte* %tmp, uint %tmp3 ; <ubyte*> [#uses=1]
+ %tmp7 = load uint* %tmp ; <uint> [#uses=1]
+ %tmp8 = getelementptr ubyte* %tmp, uint %tmp7 ; <ubyte*> [#uses=1]
+ %tmp8 = cast ubyte* %tmp8 to sbyte* ; <sbyte*> [#uses=1]
+ %tmp4 = cast ubyte* %tmp4 to sbyte* ; <sbyte*> [#uses=1]
+ %tmp = tail call int %memcmp( sbyte* %tmp8, sbyte* %tmp4, uint %tmp ) ; <int> [#uses=1]
+ ret int %tmp
+}
+
+declare int %memcmp(sbyte*, sbyte*, uint)