Home | History | Annotate | Download | only in runtime
      1 ;;===- subzero/runtime/szrt_ll.ll - Subzero runtime source ----------------===;;
      2 ;;
      3 ;;                        The Subzero Code Generator
      4 ;;
      5 ;; This file is distributed under the University of Illinois Open Source
      6 ;; License. See LICENSE.TXT for details.
      7 ;;
      8 ;;===----------------------------------------------------------------------===;;
      9 ;;
     10 ;; This file implements wrappers for particular bitcode instructions that are
     11 ;; too uncommon and complex for a particular target to bother implementing
     12 ;; directly in Subzero target lowering.  This needs to be compiled by some
     13 ;; non-Subzero compiler.
     14 ;;
     15 ;;===----------------------------------------------------------------------===;;
     16 
     17 define <4 x float> @__Sz_uitofp_4xi32_4xf32(<4 x i32> %a) {
     18 entry:
     19   %0 = uitofp <4 x i32> %a to <4 x float>
     20   ret <4 x float> %0
     21 }
     22 
     23 define <4 x i32> @__Sz_fptoui_4xi32_f32(<4 x float> %a) {
     24 entry:
     25   %0 = fptoui <4 x float> %a to <4 x i32>
     26   ret <4 x i32> %0
     27 }
     28 
     29 define i32 @__Sz_bitcast_8xi1_i8(<8 x i1> %a) {
     30 entry:
     31   %0 = bitcast <8 x i1> %a to i8
     32   %ret = zext i8 %0 to i32
     33   ret i32 %ret
     34 }
     35 
     36 define i32 @__Sz_bitcast_16xi1_i16(<16 x i1> %a) {
     37 entry:
     38   %0 = bitcast <16 x i1> %a to i16
     39   %ret = zext i16 %0 to i32
     40   ret i32 %ret
     41 }
     42 
     43 define <8 x i1> @__Sz_bitcast_i8_8xi1(i8 %a) {
     44 entry:
     45   %0 = bitcast i8 %a to <8 x i1>
     46   ret <8 x i1> %0
     47 }
     48 
     49 define <16 x i1> @__Sz_bitcast_i16_16xi1(i16 %a) {
     50 entry:
     51   %0 = bitcast i16 %a to <16 x i1>
     52   ret <16 x i1> %0
     53 }
     54