1156cd587Sjoerg /* ===-- fixunssfsi.c - Implement __fixunssfsi -----------------------------=== 2156cd587Sjoerg * 3156cd587Sjoerg * The LLVM Compiler Infrastructure 4156cd587Sjoerg * 5156cd587Sjoerg * This file is dual licensed under the MIT and the University of Illinois Open 6156cd587Sjoerg * Source Licenses. See LICENSE.TXT for details. 7156cd587Sjoerg * 8156cd587Sjoerg * ===----------------------------------------------------------------------=== 9156cd587Sjoerg * 10156cd587Sjoerg * This file implements __fixunssfsi for the compiler_rt library. 11156cd587Sjoerg * 12156cd587Sjoerg * ===----------------------------------------------------------------------=== 13156cd587Sjoerg */ 14156cd587Sjoerg 15ef84fd3bSjoerg #define SINGLE_PRECISION 16ef84fd3bSjoerg #include "fp_lib.h" 17ef84fd3bSjoerg typedef su_int fixuint_t; 18ef84fd3bSjoerg #include "fp_fixuint_impl.inc" 19156cd587Sjoerg 20156cd587Sjoerg COMPILER_RT_ABI su_int __fixunssfsi(fp_t a)21ef84fd3bSjoerg__fixunssfsi(fp_t a) { 22ef84fd3bSjoerg return __fixuint(a); 23156cd587Sjoerg } 243044ee7eSrin 253044ee7eSrin #if defined(__ARM_EABI__) 26*d3143459Srin #if defined(COMPILER_RT_ARMHF_TARGET) __aeabi_f2uiz(fp_t a)273044ee7eSrinAEABI_RTABI su_int __aeabi_f2uiz(fp_t a) { 283044ee7eSrin return __fixunssfsi(a); 293044ee7eSrin } 30*d3143459Srin #else 31*d3143459Srin AEABI_RTABI su_int __aeabi_f2uiz(fp_t a) COMPILER_RT_ALIAS(__fixunssfsi); 323044ee7eSrin #endif 33*d3143459Srin #endif 34