1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Copyright (C) 2007 4 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 5 */ 6/* 7 * This file is originally a part of the GCC testsuite. 8 */ 9 10#include <common.h> 11 12#include <post.h> 13 14GNU_FPOST_ATTR 15 16#if CFG_POST & CFG_SYS_POST_FPU 17 18static float rintf (float x) 19{ 20 volatile float TWO23 = 8388608.0; 21 22 if (__builtin_fabs (x) < TWO23) 23 { 24 if (x > 0.0) 25 { 26 x += TWO23; 27 x -= TWO23; 28 } 29 else if (x < 0.0) 30 { 31 x = TWO23 - x; 32 x = -(x - TWO23); 33 } 34 } 35 36 return x; 37} 38 39int fpu_post_test_math2 (void) 40{ 41 if (rintf (-1.5) != -2.0) { 42 post_log ("Error in FPU math2 test\n"); 43 return -1; 44 } 45 return 0; 46} 47 48#endif /* CFG_POST & CFG_SYS_POST_FPU */ 49