Tanya Lattner | 3f7706b | 2004-11-07 06:08:43 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as %s -o - | llvm-dis > %t1.ll |
| 2 | ; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll |
| 3 | ; RUN: diff %t1.ll %t2.ll |
| 4 | |
Chris Lattner | 86ee776 | 2004-06-11 02:29:57 +0000 | [diff] [blame] | 5 | |
Alkis Evlogimenos | 9685372 | 2004-06-12 19:19:14 +0000 | [diff] [blame] | 6 | declare bool %llvm.isunordered(float, float) |
| 7 | declare bool %llvm.isunordered(double, double) |
| 8 | |
Chris Lattner | 47adf21 | 2005-02-28 19:31:42 +0000 | [diff] [blame] | 9 | declare void %llvm.prefetch(sbyte*, uint, uint) |
| 10 | |
Andrew Lenharth | f166ec6 | 2005-05-03 17:00:48 +0000 | [diff] [blame] | 11 | declare uint %llvm.ctpop(uint) |
| 12 | declare ushort %llvm.cttz(ushort) |
| 13 | declare ulong %llvm.ctlz(ulong) |
Andrew Lenharth | 279a7b2 | 2005-05-03 16:49:48 +0000 | [diff] [blame] | 14 | |
Alkis Evlogimenos | fd39b30 | 2004-06-11 01:06:40 +0000 | [diff] [blame] | 15 | implementation |
| 16 | |
| 17 | ; Test llvm intrinsics |
| 18 | ; |
Chris Lattner | 86ee776 | 2004-06-11 02:29:57 +0000 | [diff] [blame] | 19 | void %libm() { |
Alkis Evlogimenos | 9685372 | 2004-06-12 19:19:14 +0000 | [diff] [blame] | 20 | call bool %llvm.isunordered(float 0.0, float 1.0) |
Chris Lattner | 5e9a7ca | 2004-06-15 21:29:40 +0000 | [diff] [blame] | 21 | call bool %llvm.isunordered(double 0.0, double 0x7FF8000000000000) |
Chris Lattner | 47adf21 | 2005-02-28 19:31:42 +0000 | [diff] [blame] | 22 | call void %llvm.prefetch(sbyte* null, uint 1, uint 3) |
Andrew Lenharth | 279a7b2 | 2005-05-03 16:49:48 +0000 | [diff] [blame] | 23 | call uint %llvm.ctpop(uint 3) |
| 24 | call ushort %llvm.cttz(ushort 7) |
| 25 | call ulong %llvm.ctlz(ulong 65000) |
Alkis Evlogimenos | fd39b30 | 2004-06-11 01:06:40 +0000 | [diff] [blame] | 26 | ret void |
Chris Lattner | 86ee776 | 2004-06-11 02:29:57 +0000 | [diff] [blame] | 27 | } |
Reid Spencer | 87bb7c6 | 2005-05-09 04:47:32 +0000 | [diff] [blame] | 28 | |
| 29 | ; FIXME: test ALL the intrinsics in this file. |