xref: /original-bsd/usr.bin/f77/pass1.tahoe/conv.h (revision 72b8f354)
1 #if TARGET != TAHOE
2 	}}}}}	WRONG MACHINE!!!	}}}}}
3 #endif
4 
5 /*  The code for converting the types of constants is not  */
6 /*  portable.  The problems involved in dealing with       */
7 /*  features such as reserved operands and byte orderings  */
8 /*  have proven very difficult to deal with in a portable  */
9 /*  manner.						   */
10 
11 #define	BLANK	' '
12 
13 #define MAXWORD  0x7fff
14 #define MINWORD -0x8000
15 
16 typedef
17   struct Dreal
18     {
19 #if HERE == VAX
20       unsigned fract1: 7;
21       unsigned exp: 8;
22       unsigned sign: 1;
23 #else
24 #if HERE == TAHOE
25       unsigned sign: 1;
26       unsigned exp: 8;
27       unsigned fract1: 7;
28 #else
29 	}}}}}	WRONG MACHINE!!!	}}}}}
30 #endif
31 #endif
32       unsigned fract2: 16;
33       unsigned short fract3;
34       unsigned short fract4;
35     }
36   dreal;
37 
38 typedef
39   struct Quad
40     {
41       long word1;
42       long word2;
43     }
44   quad;
45 
46 typedef
47   union RealValue
48     {
49       double d;
50       quad   q;
51       dreal  f;
52     }
53   realvalue;
54