Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 1 | ; RUN: llvm-upgrade < %s | llvm-as | llc -march=ppc32 -mcpu=g5 | not grep CPI |
| 2 | |
| 3 | |
| 4 | ; Tests spltw(0x80000000) and spltw(0x7FFFFFFF). |
| 5 | void %test1(<4 x int>* %P1, <4 x int>* %P2, <4 x float>* %P3) { |
| 6 | %tmp = load <4 x int>* %P1 |
| 7 | %tmp4 = and <4 x int> %tmp, < int -2147483648, int -2147483648, int -2147483648, int -2147483648 > |
| 8 | store <4 x int> %tmp4, <4 x int>* %P1 |
| 9 | %tmp7 = load <4 x int>* %P2 |
| 10 | %tmp9 = and <4 x int> %tmp7, < int 2147483647, int 2147483647, int 2147483647, int 2147483647 > |
| 11 | store <4 x int> %tmp9, <4 x int>* %P2 |
| 12 | %tmp = load <4 x float>* %P3 |
| 13 | %tmp11 = cast <4 x float> %tmp to <4 x int> |
| 14 | %tmp12 = and <4 x int> %tmp11, < int 2147483647, int 2147483647, int 2147483647, int 2147483647 > |
| 15 | %tmp13 = cast <4 x int> %tmp12 to <4 x float> |
| 16 | store <4 x float> %tmp13, <4 x float>* %P3 |
| 17 | ret void |
| 18 | } |
| 19 | |
| 20 | <4 x int> %test_30() { |
| 21 | ret <4 x int> <int 30, int 30, int 30, int 30> |
| 22 | } |
| 23 | |
| 24 | <4 x int> %test_29() { |
| 25 | ret <4 x int> <int 29, int 29, int 29, int 29> |
| 26 | } |
| 27 | |
| 28 | <8 x short> %test_n30() { |
| 29 | ret <8 x short> <short -30, short -30, short -30, short -30, |
| 30 | short -30, short -30, short -30, short -30> |
| 31 | } |
| 32 | |
| 33 | <16 x sbyte> %test_n104() { |
| 34 | ret <16 x sbyte> <sbyte -104, sbyte -104, sbyte -104, sbyte -104, |
| 35 | sbyte -104, sbyte -104, sbyte -104, sbyte -104, |
| 36 | sbyte -104, sbyte -104, sbyte -104, sbyte -104, |
| 37 | sbyte -104, sbyte -104, sbyte -104, sbyte -104> |
| 38 | } |
| 39 | |
| 40 | <4 x int> %test_vsldoi() { |
| 41 | ret <4 x int> <int 512, int 512, int 512, int 512> |
| 42 | } |
| 43 | |
| 44 | <4 x int> %test_rol() { |
| 45 | ret <4 x int> <int -11534337, int -11534337, int -11534337, int -11534337> |
| 46 | } |
| 47 | |