comparison packages/language/c/libm/current/tests/vectors/copysignf.c @ 3337:77f9d3253c3e

Add: Complex number header and library (single and double precision floating point), port from Newlib. Add: Single precision floating point library, port from Newlib. [ Bugzilla 1001539 ]
author vae
date Sun, 25 Aug 2013 14:38:57 +0000
parents
children
comparison
equal deleted inserted replaced
3336:8ecac279f33c 3337:77f9d3253c3e
1 //===========================================================================
2 //
3 // copysignf.c
4 //
5 // Test of copysignf() math library function
6 //
7 //===========================================================================
8 // ####ECOSGPLCOPYRIGHTBEGIN####
9 // -------------------------------------------
10 // This file is part of eCos, the Embedded Configurable Operating System.
11 // Copyright (C) 2012 Free Software Foundation, Inc.
12 //
13 // eCos is free software; you can redistribute it and/or modify it under
14 // the terms of the GNU General Public License as published by the Free
15 // Software Foundation; either version 2 or (at your option) any later
16 // version.
17 //
18 // eCos is distributed in the hope that it will be useful, but WITHOUT
19 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 // for more details.
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with eCos; if not, write to the Free Software Foundation, Inc.,
25 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
26 //
27 // As a special exception, if other files instantiate templates or use
28 // macros or inline functions from this file, or you compile this file
29 // and link it with other works to produce a work based on this file,
30 // this file does not by itself cause the resulting work to be covered by
31 // the GNU General Public License. However the source code for this file
32 // must still be made available in accordance with section (3) of the GNU
33 // General Public License v2.
34 //
35 // This exception does not invalidate any other reasons why a work based
36 // on this file might be covered by the GNU General Public License.
37 // -------------------------------------------
38 // ####ECOSGPLCOPYRIGHTEND####
39 //===========================================================================
40 //#####DESCRIPTIONBEGIN####
41 //
42 // Author(s):
43 // Contributors: visar, ilijak
44 // Date: 1998-02-13
45 // Purpose:
46 // Description:
47 // Usage:
48 //
49 //####DESCRIPTIONEND####
50 //
51 //===========================================================================
52
53 // Declarations for test system:
54 //
55 // TESTCASE_TYPE=CYG_TEST_MODULE
56
57
58 // CONFIGURATION
59
60 #include <pkgconf/libm.h> // Configuration header
61
62
63 // INCLUDES
64
65 #include <cyg/infra/cyg_type.h> // Common type definitions and support
66 #include <cyg/infra/testcase.h> // Test infrastructure
67 #include <math.h> // Header for this package
68 #include <sys/ieeefp.h> // Cyg_libm_ieee_float_shape_type
69 #include "vectors/vector_support_float.h"// extra support for math tests
70
71 #include "vectors/copysignf.h"
72
73 // FUNCTIONS
74
75 static void
76 test( CYG_ADDRWORD data )
77 {
78 cyg_ucount32 vec_size;
79 cyg_bool ret;
80
81 vec_size = sizeof(copysignf_vec) / sizeof(Cyg_libm_test_float_vec_t);
82 ret = doTestVecFloat( (CYG_ADDRWORD) &copysignf, CYG_LIBM_TEST_VEC_FLOAT,
83 CYG_LIBM_TEST_VEC_FLOAT, CYG_LIBM_TEST_VEC_FLOAT,
84 &copysignf_vec[0], vec_size );
85
86 if (ret==true)
87 {
88 CYG_TEST_PASS("copysignf() is stable");
89 } // if
90 else
91 {
92 CYG_TEST_FAIL("copysignf() failed tests");
93 } // else
94
95 CYG_TEST_FINISH("Finished tests from testcase " __FILE__ " for Math "
96 "library copysignf() function");
97 } // test()
98
99
100 int
101 main(int argc, char *argv[])
102 {
103 CYG_TEST_INIT();
104
105 CYG_TEST_INFO("Starting tests from testcase " __FILE__ " for Math library "
106 "copysignf() function");
107
108 START_TEST( test );
109
110 CYG_TEST_PASS_FINISH("Testing is not applicable to this configuration");
111
112 } // main()
113
114
115 // EOF copysignf.c