Create Project for repo.or.cz
[vp.git] / test / round_test.cpp
blob396019d0994a4ee02e77388e6d8774cd6c486081
1 /*******************************************************************************
2 * File Name : round_test.cpp
3 *
4 * Author : Henry He
5 * Created Time : Tue 03 Nov 2009 01:02:39 PM CST
6 * Description :
7 ******************************************************************************/
10 /*******************************************************************************
11 * Desc : Includes Files
12 ******************************************************************************/
15 /*******************************************************************************
16 * Desc : Macro Definations
17 ******************************************************************************/
19 #define EXE_ECHO(expr) \
20 do { \
21 (expr); \
22 HLH_DEBUG ( HLH_DEBUG_MAIN, (#expr) ); \
23 } while (0)
25 #define EXE_CHK(expr, expr_eq) \
26 do { \
27 if ( (expr) != (expr_eq) ) { \
28 HLH_DEBUG ( HLH_DEBUG_MAIN, \
29 ( #expr" != "#expr_eq ) ); \
30 } else { \
31 HLH_DEBUG ( HLH_DEBUG_MAIN, \
32 ( #expr" == "#expr_eq ) ); \
33 } \
34 } while (0)
37 /*******************************************************************************
38 * Desc : Type Definations
39 ******************************************************************************/
42 /*******************************************************************************
43 * Desc : Global Variables
44 ******************************************************************************/
47 /*******************************************************************************
48 * Desc : File Variables
49 ******************************************************************************/
52 #include "utils/common.h"
56 /******************************************************************************
57 * Func : main
58 * Desc :
59 * Args :
60 * Outs :
61 ******************************************************************************/
62 int main ( int argc, char *argv[] )
64 HLH_RoundU32 zhrVal1;
65 HLH_RoundU32 zhrVal2;
67 UINT32 unVal1;
68 UINT32 unVal2;
71 (void) argc;
72 (void) argv;
74 EXE_ECHO (zhrVal1 = 11);
75 EXE_ECHO (zhrVal2 = 5);
76 EXE_ECHO (unVal1 = 11);
77 EXE_ECHO (unVal2 = 5);
79 EXE_CHK ( (UINT32)(zhrVal1 + zhrVal2), (UINT32)(unVal1 + unVal2) );
80 EXE_CHK ( (UINT32)(zhrVal1 - zhrVal2), (UINT32)(unVal1 - unVal2) );
81 EXE_CHK ( (UINT32)(zhrVal1 * zhrVal2), (UINT32)(unVal1 * unVal2) );
82 EXE_CHK ( (UINT32)(zhrVal1 / zhrVal2), (UINT32)(unVal1 / unVal2) );
84 EXE_CHK ( (zhrVal1 > zhrVal2), (unVal1 > unVal2) );
85 EXE_CHK ( (zhrVal1 < zhrVal2), (unVal1 < unVal2) );
86 EXE_CHK ( (zhrVal1 >= zhrVal2), (unVal1 >= unVal2) );
87 EXE_CHK ( (zhrVal1 <= zhrVal2), (unVal1 <= unVal2) );
89 EXE_ECHO (zhrVal1 = 5);
90 EXE_ECHO (zhrVal2 = 11);
91 EXE_ECHO (unVal1 = 5);
92 EXE_ECHO (unVal2 = 11);
94 EXE_CHK ( (UINT32)(zhrVal1 + zhrVal2), (UINT32)(unVal1 + unVal2) );
95 EXE_CHK ( (UINT32)(zhrVal1 - zhrVal2), (UINT32)(unVal1 - unVal2) );
96 EXE_CHK ( (UINT32)(zhrVal1 * zhrVal2), (UINT32)(unVal1 * unVal2) );
97 EXE_CHK ( (UINT32)(zhrVal1 / zhrVal2), (UINT32)(unVal1 / unVal2) );
99 EXE_CHK ( (zhrVal1 > zhrVal2), (unVal1 > unVal2) );
100 EXE_CHK ( (zhrVal1 < zhrVal2), (unVal1 < unVal2) );
101 EXE_CHK ( (zhrVal1 >= zhrVal2), (unVal1 >= unVal2) );
102 EXE_CHK ( (zhrVal1 <= zhrVal2), (unVal1 <= unVal2) );
104 EXE_ECHO (zhrVal1 = -5);
105 EXE_ECHO (zhrVal2 = 11);
106 EXE_ECHO (unVal1 = -5);
107 EXE_ECHO (unVal2 = 11);
109 EXE_CHK ( (UINT32)(zhrVal1 + zhrVal2), (UINT32)(unVal1 + unVal2) );
110 EXE_CHK ( (UINT32)(zhrVal1 - zhrVal2), (UINT32)(unVal1 - unVal2) );
111 EXE_CHK ( (UINT32)(zhrVal1 * zhrVal2), (UINT32)(unVal1 * unVal2) );
112 EXE_CHK ( (UINT32)(zhrVal1 / zhrVal2), (UINT32)(unVal1 / unVal2) );
114 EXE_CHK ( (zhrVal1 > zhrVal2), (unVal1 > unVal2) );
115 EXE_CHK ( (zhrVal1 < zhrVal2), (unVal1 < unVal2) );
116 EXE_CHK ( (zhrVal1 >= zhrVal2), (unVal1 >= unVal2) );
117 EXE_CHK ( (zhrVal1 <= zhrVal2), (unVal1 <= unVal2) );
120 EXE_ECHO (zhrVal1 = -5);
121 EXE_ECHO (zhrVal2 = -5);
122 EXE_ECHO (unVal1 = -5);
123 EXE_ECHO (unVal2 = -5);
125 EXE_CHK ( (UINT32)(zhrVal1 + zhrVal2), (UINT32)(unVal1 + unVal2) );
126 EXE_CHK ( (UINT32)(zhrVal1 - zhrVal2), (UINT32)(unVal1 - unVal2) );
127 EXE_CHK ( (UINT32)(zhrVal1 * zhrVal2), (UINT32)(unVal1 * unVal2) );
128 EXE_CHK ( (UINT32)(zhrVal1 / zhrVal2), (UINT32)(unVal1 / unVal2) );
130 EXE_CHK ( (zhrVal1 > zhrVal2), (unVal1 > unVal2) );
131 EXE_CHK ( (zhrVal1 < zhrVal2), (unVal1 < unVal2) );
132 EXE_CHK ( (zhrVal1 >= zhrVal2), (unVal1 >= unVal2) );
133 EXE_CHK ( (zhrVal1 <= zhrVal2), (unVal1 <= unVal2) );
136 HLH_DEBUG (HLH_DEBUG_MAIN, ("zhrVal1++ = %d", (UINT32)zhrVal1 ++) );
137 HLH_DEBUG (HLH_DEBUG_MAIN, ("zhrVal1 = %d", (UINT32)zhrVal1 ) );
141 return 0;
142 } /* ---------- end of function main ---------- */