36 lines
		
	
	
		
			674 B
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			674 B
		
	
	
	
		
			C
		
	
	
	
| /* WinBond bug report
 | |
| 
 | |
|    Please don't use "gcc -O3 -S hello.c" command, because it
 | |
|    will optimize "i/5" to be "2" in compile time.
 | |
| 
 | |
|  */
 | |
| 
 | |
| #include <stdio.h>
 | |
| #define TESTSEED 10
 | |
| 
 | |
| main ()
 | |
| {
 | |
|   int    a1,b1,c1;
 | |
|   long   a2,b2,c2;
 | |
|   double a3,b3,c3;
 | |
|   float  a4,b4,c4;
 | |
|   char   buf[20];
 | |
| 
 | |
|   /* integer tests */
 | |
|   for (a1 = 1; a1 < 16; a1++) {
 | |
|     b1 = TESTSEED/a1;
 | |
|     c1 = TESTSEED%a1;
 | |
|     printf ("%d/%d = %d, ^ = %d\n", TESTSEED, a1, b1, c1);
 | |
|     if ((c1 + (a1 * b1)) == TESTSEED) {
 | |
|       sprintf (buf, "div %d by %d", TESTSEED, a1);
 | |
|       pass (buf);      
 | |
|     } else {
 | |
|       sprintf (buf, "div %d by %d", TESTSEED, a1);
 | |
|       fail (buf);
 | |
|     }
 | |
|     fflush (stdout);
 | |
|   }
 | |
| }
 | |
| 
 | |
| 
 |