15
15
]
16
16
17
17
dtype_mapping = {
18
- 'i1 ' : xp .int8 ,
19
- 'i2 ' : xp .int16 ,
20
- 'i4 ' : xp .int32 ,
21
- 'i8 ' : xp .int64 ,
22
- 'u1 ' : xp .uint8 ,
23
- 'u2 ' : xp .uint16 ,
24
- 'u4 ' : xp .uint32 ,
25
- 'u8 ' : xp .uint64 ,
26
- 'f4 ' : xp .float32 ,
27
- 'f8 ' : xp .float64 ,
28
- 'b ' : xp .bool ,
18
+ 'int8 ' : xp .int8 ,
19
+ 'int16 ' : xp .int16 ,
20
+ 'int32 ' : xp .int32 ,
21
+ 'int64 ' : xp .int64 ,
22
+ 'uint8 ' : xp .uint8 ,
23
+ 'uint16 ' : xp .uint16 ,
24
+ 'uint32 ' : xp .uint32 ,
25
+ 'uint64 ' : xp .uint64 ,
26
+ 'float32 ' : xp .float32 ,
27
+ 'float64 ' : xp .float64 ,
28
+ 'bool ' : xp .bool ,
29
29
}
30
30
31
31
reverse_dtype_mapping = {v : k for k , v in dtype_mapping .items ()}
@@ -62,69 +62,69 @@ def dtype_signed(dtype):
62
62
raise ValueError ("dtype_signed is only defined for integer dtypes" )
63
63
64
64
signed_integer_promotion_table = {
65
- ('i1 ' , 'i1 ' ): 'i1 ' ,
66
- ('i1 ' , 'i2 ' ): 'i2 ' ,
67
- ('i1 ' , 'i4 ' ): 'i4 ' ,
68
- ('i1 ' , 'i8 ' ): 'i8 ' ,
69
- ('i2 ' , 'i1 ' ): 'i2 ' ,
70
- ('i2 ' , 'i2 ' ): 'i2 ' ,
71
- ('i2 ' , 'i4 ' ): 'i4 ' ,
72
- ('i2 ' , 'i8 ' ): 'i8 ' ,
73
- ('i4 ' , 'i1 ' ): 'i4 ' ,
74
- ('i4 ' , 'i2 ' ): 'i4 ' ,
75
- ('i4 ' , 'i4 ' ): 'i4 ' ,
76
- ('i4 ' , 'i8 ' ): 'i8 ' ,
77
- ('i8 ' , 'i1 ' ): 'i8 ' ,
78
- ('i8 ' , 'i2 ' ): 'i8 ' ,
79
- ('i8 ' , 'i4 ' ): 'i8 ' ,
80
- ('i8 ' , 'i8 ' ): 'i8 ' ,
65
+ ('int8 ' , 'int8 ' ): 'int8 ' ,
66
+ ('int8 ' , 'int16 ' ): 'int16 ' ,
67
+ ('int8 ' , 'int32 ' ): 'int32 ' ,
68
+ ('int8 ' , 'int64 ' ): 'int64 ' ,
69
+ ('int16 ' , 'int8 ' ): 'int16 ' ,
70
+ ('int16 ' , 'int16 ' ): 'int16 ' ,
71
+ ('int16 ' , 'int32 ' ): 'int32 ' ,
72
+ ('int16 ' , 'int64 ' ): 'int64 ' ,
73
+ ('int32 ' , 'int8 ' ): 'int32 ' ,
74
+ ('int32 ' , 'int16 ' ): 'int32 ' ,
75
+ ('int32 ' , 'int32 ' ): 'int32 ' ,
76
+ ('int32 ' , 'int64 ' ): 'int64 ' ,
77
+ ('int64 ' , 'int8 ' ): 'int64 ' ,
78
+ ('int64 ' , 'int16 ' ): 'int64 ' ,
79
+ ('int64 ' , 'int32 ' ): 'int64 ' ,
80
+ ('int64 ' , 'int64 ' ): 'int64 ' ,
81
81
}
82
82
83
83
unsigned_integer_promotion_table = {
84
- ('u1 ' , 'u1 ' ): 'u1 ' ,
85
- ('u1 ' , 'u2 ' ): 'u2 ' ,
86
- ('u1 ' , 'u4 ' ): 'u4 ' ,
87
- ('u1 ' , 'u8 ' ): 'u8 ' ,
88
- ('u2 ' , 'u1 ' ): 'u2 ' ,
89
- ('u2 ' , 'u2 ' ): 'u2 ' ,
90
- ('u2 ' , 'u4 ' ): 'u4 ' ,
91
- ('u2 ' , 'u8 ' ): 'u8 ' ,
92
- ('u4 ' , 'u1 ' ): 'u4 ' ,
93
- ('u4 ' , 'u2 ' ): 'u4 ' ,
94
- ('u4 ' , 'u4 ' ): 'u4 ' ,
95
- ('u4 ' , 'u8 ' ): 'u8 ' ,
96
- ('u8 ' , 'u1 ' ): 'u8 ' ,
97
- ('u8 ' , 'u2 ' ): 'u8 ' ,
98
- ('u8 ' , 'u4 ' ): 'u8 ' ,
99
- ('u8 ' , 'u8 ' ): 'u8 ' ,
84
+ ('uint8 ' , 'uint8 ' ): 'uint8 ' ,
85
+ ('uint8 ' , 'uint16 ' ): 'uint16 ' ,
86
+ ('uint8 ' , 'uint32 ' ): 'uint32 ' ,
87
+ ('uint8 ' , 'uint64 ' ): 'uint64 ' ,
88
+ ('uint16 ' , 'uint8 ' ): 'uint16 ' ,
89
+ ('uint16 ' , 'uint16 ' ): 'uint16 ' ,
90
+ ('uint16 ' , 'uint32 ' ): 'uint32 ' ,
91
+ ('uint16 ' , 'uint64 ' ): 'uint64 ' ,
92
+ ('uint32 ' , 'uint8 ' ): 'uint32 ' ,
93
+ ('uint32 ' , 'uint16 ' ): 'uint32 ' ,
94
+ ('uint32 ' , 'uint32 ' ): 'uint32 ' ,
95
+ ('uint32 ' , 'uint64 ' ): 'uint64 ' ,
96
+ ('uint64 ' , 'uint8 ' ): 'uint64 ' ,
97
+ ('uint64 ' , 'uint16 ' ): 'uint64 ' ,
98
+ ('uint64 ' , 'uint32 ' ): 'uint64 ' ,
99
+ ('uint64 ' , 'uint64 ' ): 'uint64 ' ,
100
100
}
101
101
102
102
mixed_signed_unsigned_promotion_table = {
103
- ('i1 ' , 'u1 ' ): 'i2 ' ,
104
- ('i1 ' , 'u2 ' ): 'i4 ' ,
105
- ('i1 ' , 'u4 ' ): 'i8 ' ,
106
- ('i2 ' , 'u1 ' ): 'i2 ' ,
107
- ('i2 ' , 'u2 ' ): 'i4 ' ,
108
- ('i2 ' , 'u4 ' ): 'i8 ' ,
109
- ('i4 ' , 'u1 ' ): 'i4 ' ,
110
- ('i4 ' , 'u2 ' ): 'i4 ' ,
111
- ('i4 ' , 'u4 ' ): 'i8 ' ,
112
- ('i8 ' , 'u1 ' ): 'i8 ' ,
113
- ('i8 ' , 'u2 ' ): 'i8 ' ,
114
- ('i8 ' , 'u4 ' ): 'i8 ' ,
103
+ ('int8 ' , 'uint8 ' ): 'int16 ' ,
104
+ ('int8 ' , 'uint16 ' ): 'int32 ' ,
105
+ ('int8 ' , 'uint32 ' ): 'int64 ' ,
106
+ ('int16 ' , 'uint8 ' ): 'int16 ' ,
107
+ ('int16 ' , 'uint16 ' ): 'int32 ' ,
108
+ ('int16 ' , 'uint32 ' ): 'int64 ' ,
109
+ ('int32 ' , 'uint8 ' ): 'int32 ' ,
110
+ ('int32 ' , 'uint16 ' ): 'int32 ' ,
111
+ ('int32 ' , 'uint32 ' ): 'int64 ' ,
112
+ ('int64 ' , 'uint8 ' ): 'int64 ' ,
113
+ ('int64 ' , 'uint16 ' ): 'int64 ' ,
114
+ ('int64 ' , 'uint32 ' ): 'int64 ' ,
115
115
}
116
116
117
117
flipped_mixed_signed_unsigned_promotion_table = {(u , i ): p for (i , u ), p in mixed_signed_unsigned_promotion_table .items ()}
118
118
119
119
float_promotion_table = {
120
- ('f4 ' , 'f4 ' ): 'f4 ' ,
121
- ('f4 ' , 'f8 ' ): 'f8 ' ,
122
- ('f8 ' , 'f4 ' ): 'f8 ' ,
123
- ('f8 ' , 'f8 ' ): 'f8 ' ,
120
+ ('float32 ' , 'float32 ' ): 'float32 ' ,
121
+ ('float32 ' , 'float64 ' ): 'float64 ' ,
122
+ ('float64 ' , 'float32 ' ): 'float64 ' ,
123
+ ('float64 ' , 'float64 ' ): 'float64 ' ,
124
124
}
125
125
126
126
boolean_promotion_table = {
127
- ('b ' , 'b ' ): 'b ' ,
127
+ ('bool ' , 'bool ' ): 'bool ' ,
128
128
}
129
129
130
130
promotion_table = {
@@ -151,18 +151,18 @@ def dtype_signed(dtype):
151
151
}
152
152
153
153
dtypes_to_scalars = {
154
- 'b ' : [bool ],
155
- 'i1 ' : [int ],
156
- 'i2 ' : [int ],
157
- 'i4 ' : [int ],
158
- 'i8 ' : [int ],
154
+ 'bool ' : [bool ],
155
+ 'int8 ' : [int ],
156
+ 'int16 ' : [int ],
157
+ 'int32 ' : [int ],
158
+ 'int64 ' : [int ],
159
159
# Note: unsigned int dtypes only correspond to positive integers
160
- 'u1 ' : [int ],
161
- 'u2 ' : [int ],
162
- 'u4 ' : [int ],
163
- 'u8 ' : [int ],
164
- 'f4 ' : [int , float ],
165
- 'f8 ' : [int , float ],
160
+ 'uint8 ' : [int ],
161
+ 'uint16 ' : [int ],
162
+ 'uint32 ' : [int ],
163
+ 'uint64 ' : [int ],
164
+ 'float32 ' : [int , float ],
165
+ 'float64 ' : [int , float ],
166
166
}
167
167
168
168
elementwise_function_input_types = {
0 commit comments