blob: 22d28f91573077ede91b1751bc37591318cd9bb7 [file] [log] [blame]
Sergei Poselenov3190dbe2007-07-05 08:17:37 +02001/*
2 * Copyright (C) 2007
3 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02005 * SPDX-License-Identifier: GPL-2.0+
Sergei Poselenov3190dbe2007-07-05 08:17:37 +02006 */
7/*
8 * This file is originally a part of the GCC testsuite.
9 */
10
11#include <common.h>
12
Sergei Poselenov3190dbe2007-07-05 08:17:37 +020013#include <post.h>
14
Yuri Tikhonov7ed66f72008-12-20 14:54:21 +030015GNU_FPOST_ATTR
16
Kumar Galafe6555b2011-01-25 03:00:08 -060017#if CONFIG_POST & CONFIG_SYS_POST_FPU
18
Sergei Poselenov3190dbe2007-07-05 08:17:37 +020019static double func (const double *array)
20{
21 double d = *array;
22
23 if (d == 0.0)
24 return d;
25 else
26 return d + func (array + 1);
27}
28
29int fpu_post_test_math5 (void)
30{
31 double values[] = { 0.1e-100, 1.0, -1.0, 0.0 };
32
33 if (func (values) != 0.1e-100) {
34 post_log ("Error in FPU math5 test\n");
35 return -1;
36 }
37 return 0;
38}
39
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020040#endif /* CONFIG_POST & CONFIG_SYS_POST_FPU */