1 #ifndef __ASM_ALPHA_FPU_H
2 #define __ASM_ALPHA_FPU_H
3
4
5
6
7 #define FPCR_INVD (1UL<<49)
8 #define FPCR_DZED (1UL<<50)
9 #define FPCR_OVFD (1UL<<51)
10 #define FPCR_INV (1UL<<52)
11 #define FPCR_DZE (1UL<<53)
12 #define FPCR_OVF (1UL<<54)
13 #define FPCR_UNF (1UL<<55)
14 #define FPCR_INE (1UL<<56)
15 #define FPCR_IOV (1UL<<57)
16 #define FPCR_UNDZ (1UL<<60)
17 #define FPCR_UNFD (1UL<<61)
18 #define FPCR_INED (1UL<<62)
19 #define FPCR_SUM (1UL<<63)
20
21 #define FPCR_DYN_SHIFT 58
22 #define FPCR_DYN_CHOPPED (0x0UL << FPCR_DYN_SHIFT)
23 #define FPCR_DYN_MINUS (0x1UL << FPCR_DYN_SHIFT)
24 #define FPCR_DYN_NORMAL (0x2UL << FPCR_DYN_SHIFT)
25 #define FPCR_DYN_PLUS (0x3UL << FPCR_DYN_SHIFT)
26 #define FPCR_DYN_MASK (0x3UL << FPCR_DYN_SHIFT)
27
28 #define FPCR_MASK 0xfffe000000000000
29
30
31
32
33
34
35
36
37
38
39
40 #define IEEE_TRAP_ENABLE_INV (1<<1)
41 #define IEEE_TRAP_ENABLE_DZE (1<<2)
42 #define IEEE_TRAP_ENABLE_OVF (1<<3)
43 #define IEEE_TRAP_ENABLE_UNF (1<<4)
44 #define IEEE_TRAP_ENABLE_INE (1<<5)
45 #define IEEE_TRAP_ENABLE_MASK (IEEE_TRAP_ENABLE_INV | IEEE_TRAP_ENABLE_DZE |\
46 IEEE_TRAP_ENABLE_OVF | IEEE_TRAP_ENABLE_UNF |\
47 IEEE_TRAP_ENABLE_INE)
48
49
50 #define IEEE_STATUS_INV (1<<17)
51 #define IEEE_STATUS_DZE (1<<18)
52 #define IEEE_STATUS_OVF (1<<19)
53 #define IEEE_STATUS_UNF (1<<20)
54 #define IEEE_STATUS_INE (1<<21)
55
56 #define IEEE_STATUS_MASK (IEEE_STATUS_INV | IEEE_STATUS_DZE | \
57 IEEE_STATUS_OVF | IEEE_STATUS_UNF | \
58 IEEE_STATUS_INE)
59
60 #define IEEE_STATUS_TO_EXCSUM_SHIFT 16
61
62 #define IEEE_INHERIT (1UL<<63)
63
64 #endif