From 5b4c95810075e3bd8b92f7deeaeb7e06482c9371 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 29 Nov 2006 05:00:14 +0000 Subject: [PATCH] new testcase, bswaps should be eliminated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32005 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Transforms/InstCombine/bswap-fold.ll | 26 +++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 test/Transforms/InstCombine/bswap-fold.ll diff --git a/test/Transforms/InstCombine/bswap-fold.ll b/test/Transforms/InstCombine/bswap-fold.ll new file mode 100644 index 00000000000..eb7539c1dd9 --- /dev/null +++ b/test/Transforms/InstCombine/bswap-fold.ll @@ -0,0 +1,26 @@ +; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep ret | wc -l | grep 3 && +; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep 'call.*bswap' + +bool %test1(ushort %tmp2) { + %tmp10 = call ushort %llvm.bswap.i16( ushort %tmp2 ) + %tmp = seteq ushort %tmp10, 1 + ret bool %tmp +} + +bool %test2(uint %tmp) { + %tmp34 = tail call uint %llvm.bswap.i32( uint %tmp ) + %tmp = seteq uint %tmp34, 1 + ret bool %tmp +} + +declare uint %llvm.bswap.i32(uint) + +bool %test3(ulong %tmp) { + %tmp34 = tail call ulong %llvm.bswap.i64( ulong %tmp ) + %tmp = seteq ulong %tmp34, 1 + ret bool %tmp +} + +declare ulong %llvm.bswap.i64(ulong) + +declare ushort %llvm.bswap.i16(ushort) -- 2.34.1