]> git.gag.com Git - fw/sdcc/blob - src/regression/mult1.c
Applied patch from Kevin L. Pauba that added the #pragma memory declaration feature...
[fw/sdcc] / src / regression / mult1.c
1 #define __16F873
2 #include "p16f873.h"
3 unsigned char success=0;
4 unsigned char failures=0;
5 unsigned char dummy=0;
6
7
8 signed char c1,c2,c3;
9 unsigned char uc1,uc2,uc3;
10
11 unsigned int ui1,ui2,ui3;
12 signed int i1,i2;
13
14 void done()
15 {
16
17   dummy++;
18
19 }
20
21 void m1(void)
22 {
23
24   c1 = c1*5;       // char = char * lit
25
26   c2 = c1 *c3;     // char = char * char
27
28   uc1= uc1*5;      // uchar = uchar * lit
29   uc2=uc1*uc3;     // uchar = uchar * uchar
30
31   if(c2 != 25)
32     failures++;
33 }
34
35 void m2(unsigned char uc)
36 {
37
38   uc2 = uc1 * uc;
39
40   if(uc2 != 0x20)
41     failures++;
42 }
43
44 void main(void)
45 {
46   dummy = 0;
47
48   c1 = 1;
49   c3 = 5;
50
51   //m1();
52
53   uc1 = 0x10;
54   m2(2);
55
56   ui1 = uc1*uc2;   // uint = uchar * uchar
57
58   i1 = c1*c2;      // int = char * char
59
60   ui3 = ui1*ui2;   // uint = uint * unit
61
62
63   success = failures;
64   done();
65 }