Home | History | Annotate | Download | only in Bitcode
      1 ; RUN: llvm-as < %s | llvm-dis -disable-output
      2 
      3 ; <rdar://problem/8622574>
      4 ; tests the bitcodereader can handle the case where the reader will initially
      5 ; create shuffle with a place holder mask.
      6 
      7 
      8 define <4 x float> @test(<2 x double> %d2)  {
      9 entry:
     10   %call20.i = tail call <4 x float> @cmp(<2 x double> %d2,
     11                                         <2 x double> bitcast (
     12                                           <4 x float> shufflevector (
     13                                             <3 x float> shufflevector (
     14                                               <4 x float> shufflevector (
     15                                                 <3 x float> bitcast (
     16                                                   i96 trunc (
     17                                                     i128 bitcast (<2 x double> bitcast (
     18                                                       <4 x i32> <i32 0, i32 0, i32 0, i32 undef> to <2 x double>)
     19                                                     to i128) to i96)
     20                                                   to <3 x float>),
     21                                                 <3 x float> undef,
     22                                                 <4 x i32> <i32 0, i32 1, i32 2, i32 undef>),
     23                                               <4 x float> undef,
     24                                             <3 x i32> <i32 0, i32 1, i32 2>),
     25                                             <3 x float> undef,
     26                                             <4 x i32> <i32 0, i32 1, i32 2, i32 undef>)
     27                                           to <2 x double>))
     28   ret <4 x float> %call20.i
     29 }
     30 
     31 declare <4 x float> @cmp(<2 x double>, <2 x double>)
     32