diff options
author | Akira Hatanaka <ahatanak@gmail.com> | 2011-09-13 20:13:58 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanak@gmail.com> | 2011-09-13 20:13:58 +0000 |
commit | a4b97f327de0332ef1e68bb3c3b94fed0ffe3520 (patch) | |
tree | 4bd6530f2f276dfecc880ba77c548c1ad7502890 /test/CodeGen/Mips/mipslopat.ll | |
parent | 8f28aaf72c61a493dfcd1b838ff8c5050352b5cd (diff) | |
download | external_llvm-a4b97f327de0332ef1e68bb3c3b94fed0ffe3520.zip external_llvm-a4b97f327de0332ef1e68bb3c3b94fed0ffe3520.tar.gz external_llvm-a4b97f327de0332ef1e68bb3c3b94fed0ffe3520.tar.bz2 |
Add pattern used to match MipsLo, which is needed when the instruction selector
tries to match a dead MipsLo node (explanation in the link below).
http://article.gmane.org/gmane.comp.compilers.llvm.devel/42757/match=dagcombiner+dead
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139634 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/Mips/mipslopat.ll')
-rw-r--r-- | test/CodeGen/Mips/mipslopat.ll | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/CodeGen/Mips/mipslopat.ll b/test/CodeGen/Mips/mipslopat.ll new file mode 100644 index 0000000..0279828 --- /dev/null +++ b/test/CodeGen/Mips/mipslopat.ll @@ -0,0 +1,19 @@ +; This test does not check the machine code output. +; RUN: llc -march=mips < %s + +@stat_vol_ptr_int = internal global i32* null, align 4 +@stat_ptr_vol_int = internal global i32* null, align 4 + +define void @simple_vol_file() nounwind { +entry: + %tmp = volatile load i32** @stat_vol_ptr_int, align 4 + %0 = bitcast i32* %tmp to i8* + call void @llvm.prefetch(i8* %0, i32 0, i32 0, i32 1) + %tmp1 = load i32** @stat_ptr_vol_int, align 4 + %1 = bitcast i32* %tmp1 to i8* + call void @llvm.prefetch(i8* %1, i32 0, i32 0, i32 1) + ret void +} + +declare void @llvm.prefetch(i8* nocapture, i32, i32, i32) nounwind + |