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 14 GNU_FPOST_ATTR 15 16 #if CONFIG_POST & CONFIG_SYS_POST_FPU 17 18 int fpu_post_test_math4 (void) 19 { 20 volatile float reale = 1.0f; 21 volatile float oneplus; 22 int i; 23 24 if (sizeof (float) != 4) 25 return 0; 26 27 for (i = 0; ; i++) 28 { 29 oneplus = 1.0f + reale; 30 if (oneplus == 1.0f) 31 break; 32 reale = reale / 2.0f; 33 } 34 /* Assumes ieee754 accurate arithmetic above. */ 35 if (i != 24) { 36 post_log ("Error in FPU math4 test\n"); 37 return -1; 38 } 39 return 0; 40 } 41 42 #endif /* CONFIG_POST & CONFIG_SYS_POST_FPU */ 43