1156cd587Sjoerg //===-- lib/truncdfsf2.c - double -> single conversion ------------*- C -*-===// 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 10190e92d8Sjoerg #define SRC_DOUBLE 11190e92d8Sjoerg #define DST_SINGLE 12190e92d8Sjoerg #include "fp_trunc_impl.inc" 13156cd587Sjoerg __truncdfsf2(double a)14190e92d8SjoergCOMPILER_RT_ABI float __truncdfsf2(double a) { 15190e92d8Sjoerg return __truncXfYf2__(a); 16156cd587Sjoerg } 173044ee7eSrin 183044ee7eSrin #if defined(__ARM_EABI__) 19*d3143459Srin #if defined(COMPILER_RT_ARMHF_TARGET) __aeabi_d2f(double a)203044ee7eSrinAEABI_RTABI float __aeabi_d2f(double a) { 213044ee7eSrin return __truncdfsf2(a); 223044ee7eSrin } 23*d3143459Srin #else 24*d3143459Srin AEABI_RTABI float __aeabi_d2f(double a) COMPILER_RT_ALIAS(__truncdfsf2); 253044ee7eSrin #endif 26*d3143459Srin #endif 27