Home | History | Annotate | Download | only in crosstest
      1 define <4 x float> @_Z6selectDv4_iDv4_fS0_(<4 x i32> %cond.ext, <4 x float> %arg1, <4 x float> %arg2) {
      2 entry:
      3   %cond = trunc <4 x i32> %cond.ext to <4 x i1>
      4   %res = select <4 x i1> %cond, <4 x float> %arg1, <4 x float> %arg2
      5   ret <4 x float> %res
      6 }
      7 
      8 define <4 x i32> @_Z6selectDv4_iS_S_(<4 x i32> %cond.ext, <4 x i32> %arg1, <4 x i32> %arg2) {
      9 entry:
     10   %cond = trunc <4 x i32> %cond.ext to <4 x i1>
     11   %res = select <4 x i1> %cond, <4 x i32> %arg1, <4 x i32> %arg2
     12   ret <4 x i32> %res
     13 }
     14 
     15 define <4 x i32> @_Z6selectDv4_iDv4_jS0_(<4 x i32> %cond.ext, <4 x i32> %arg1, <4 x i32> %arg2) {
     16 entry:
     17   %cond = trunc <4 x i32> %cond.ext to <4 x i1>
     18   %res = select <4 x i1> %cond, <4 x i32> %arg1, <4 x i32> %arg2
     19   ret <4 x i32> %res
     20 }
     21 
     22 define <8 x i16> @_Z6selectDv8_sS_S_(<8 x i16> %cond.ext, <8 x i16> %arg1, <8 x i16> %arg2) {
     23 entry:
     24   %cond = trunc <8 x i16> %cond.ext to <8 x i1>
     25   %res = select <8 x i1> %cond, <8 x i16> %arg1, <8 x i16> %arg2
     26   ret <8 x i16> %res
     27 }
     28 
     29 define <8 x i16> @_Z6selectDv8_sDv8_tS0_(<8 x i16> %cond.ext, <8 x i16> %arg1, <8 x i16> %arg2) {
     30 entry:
     31   %cond = trunc <8 x i16> %cond.ext to <8 x i1>
     32   %res = select <8 x i1> %cond, <8 x i16> %arg1, <8 x i16> %arg2
     33   ret <8 x i16> %res
     34 }
     35 
     36 define <16 x i8> @_Z6selectDv16_aS_S_(<16 x i8> %cond.ext, <16 x i8> %arg1, <16 x i8> %arg2) {
     37 entry:
     38   %cond = trunc <16 x i8> %cond.ext to <16 x i1>
     39   %res = select <16 x i1> %cond, <16 x i8> %arg1, <16 x i8> %arg2
     40   ret <16 x i8> %res
     41 }
     42 
     43 define <16 x i8> @_Z6selectDv16_aDv16_hS0_(<16 x i8> %cond.ext, <16 x i8> %arg1, <16 x i8> %arg2) {
     44 entry:
     45   %cond = trunc <16 x i8> %cond.ext to <16 x i1>
     46   %res = select <16 x i1> %cond, <16 x i8> %arg1, <16 x i8> %arg2
     47   ret <16 x i8> %res
     48 }
     49 
     50 define <4 x i32> @_Z9select_i1Dv4_iS_S_(<4 x i32> %cond.ext, <4 x i32> %arg1.ext, <4 x i32> %arg2.ext) {
     51 entry:
     52   %cond = trunc <4 x i32> %cond.ext to <4 x i1>
     53   %arg1 = trunc <4 x i32> %arg1.ext to <4 x i1>
     54   %arg2 = trunc <4 x i32> %arg2.ext to <4 x i1>
     55   %res.trunc = select <4 x i1> %cond, <4 x i1> %arg1, <4 x i1> %arg2
     56   %res = sext <4 x i1> %res.trunc to <4 x i32>
     57   ret <4 x i32> %res
     58 }
     59 
     60 define <8 x i16> @_Z9select_i1Dv8_sS_S_(<8 x i16> %cond.ext, <8 x i16> %arg1.ext, <8 x i16> %arg2.ext) {
     61 entry:
     62   %cond = trunc <8 x i16> %cond.ext to <8 x i1>
     63   %arg1 = trunc <8 x i16> %arg1.ext to <8 x i1>
     64   %arg2 = trunc <8 x i16> %arg2.ext to <8 x i1>
     65   %res.trunc = select <8 x i1> %cond, <8 x i1> %arg1, <8 x i1> %arg2
     66   %res = sext <8 x i1> %res.trunc to <8 x i16>
     67   ret <8 x i16> %res
     68 }
     69 
     70 define <16 x i8> @_Z9select_i1Dv16_aS_S_(<16 x i8> %cond.ext, <16 x i8> %arg1.ext, <16 x i8> %arg2.ext) {
     71 entry:
     72   %cond = trunc <16 x i8> %cond.ext to <16 x i1>
     73   %arg1 = trunc <16 x i8> %arg1.ext to <16 x i1>
     74   %arg2 = trunc <16 x i8> %arg2.ext to <16 x i1>
     75   %res.trunc = select <16 x i1> %cond, <16 x i1> %arg1, <16 x i1> %arg2
     76   %res = sext <16 x i1> %res.trunc to <16 x i8>
     77   ret <16 x i8> %res
     78 }
     79