Bill Wendling | 815af99 | 2013-08-20 23:00:25 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as < %s | llvm-dis -disable-output |
Duncan P. N. Exon Smith | 13f5c58 | 2014-08-19 21:08:27 +0000 | [diff] [blame] | 2 | ; RUN: verify-uselistorder < %s |
Mon P Wang | cf62b37 | 2011-10-26 00:34:48 +0000 | [diff] [blame] | 3 | |
| 4 | ; <rdar://problem/8622574> |
| 5 | ; tests the bitcodereader can handle the case where the reader will initially |
| 6 | ; create shuffle with a place holder mask. |
| 7 | |
| 8 | |
| 9 | define <4 x float> @test(<2 x double> %d2) { |
| 10 | entry: |
| 11 | %call20.i = tail call <4 x float> @cmp(<2 x double> %d2, |
| 12 | <2 x double> bitcast ( |
| 13 | <4 x float> shufflevector ( |
| 14 | <3 x float> shufflevector ( |
| 15 | <4 x float> shufflevector ( |
| 16 | <3 x float> bitcast ( |
| 17 | i96 trunc ( |
| 18 | i128 bitcast (<2 x double> bitcast ( |
| 19 | <4 x i32> <i32 0, i32 0, i32 0, i32 undef> to <2 x double>) |
| 20 | to i128) to i96) |
| 21 | to <3 x float>), |
| 22 | <3 x float> undef, |
| 23 | <4 x i32> <i32 0, i32 1, i32 2, i32 undef>), |
| 24 | <4 x float> undef, |
| 25 | <3 x i32> <i32 0, i32 1, i32 2>), |
| 26 | <3 x float> undef, |
| 27 | <4 x i32> <i32 0, i32 1, i32 2, i32 undef>) |
| 28 | to <2 x double>)) |
| 29 | ret <4 x float> %call20.i |
| 30 | } |
| 31 | |
| 32 | declare <4 x float> @cmp(<2 x double>, <2 x double>) |