177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#include <stdint.h> 277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#include <stdio.h> 377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liaolong double __floatditf(int64_t); 577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#include "floatunditf_test.h" 777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao#include "DD.h" 877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liaoint main(int argc, char *argv[]) { 1077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao int i; 1177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 1277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao DD expected; 1377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao DD computed; 1477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 1577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao for (i=0; i<numTests; ++i) { 1677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao expected.hi = tests[i].hi; 1777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao expected.lo = tests[i].lo; 1877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao computed.ld = __floatditf(tests[i].input); 1977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 2077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao if ((computed.hi != expected.hi) || (computed.lo != expected.lo)) 2177ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao { 2277ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao printf("Error on __floatunditf( 0x%016llx ):\n", tests[i].input); 2377ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao printf("\tExpected %La = ( %a , %a )\n", expected.ld, expected.hi, expected.lo); 2477ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao printf("\tComputed %La = ( %a , %a )\n", computed.ld, computed.hi, computed.lo); 2577ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao return 1; 2677ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao } 2777ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao } 2877ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao 2977ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao return 0; 3077ed6142daed1e068fbda64405d0de9845e40e1Shih-wei Liao} 31