@@ -61,110 +61,94 @@ constexpr bit_value_t l_buf[4] = {
61
61
_0, _1, _x, _x};
62
62
_static_unused (l_buf)
63
63
64
- constexpr bit_value_t l_not[4 ]
65
- = {
64
+ constexpr bit_value_t l_not[4 ] = {
66
65
/* 0 1 x z <- a */
67
66
_1, _0, _x, _x};
68
67
_static_unused (l_not)
69
68
70
- constexpr bit_value_t is_unk[4 ]
71
- = {
69
+ constexpr bit_value_t is_unk[4 ] = {
72
70
/* 0 1 x z <- a*/
73
71
_0, _0, _1, _1};
74
72
_static_unused (is_unk)
75
73
76
- constexpr bit_value_t is_x_bit[4 ]
77
- = {
74
+ constexpr bit_value_t is_x_bit[4 ] = {
78
75
/* 0 1 x z <- a*/
79
76
_0, _0, _1, _0};
80
77
_static_unused (is_x_bit)
81
78
82
- constexpr bit_value_t is_z_bit[4 ]
83
- = {
79
+ constexpr bit_value_t is_z_bit[4 ] = {
84
80
/* 0 1 x z <- a*/
85
81
_0, _0, _0, _1};
86
82
_static_unused (is_z_bit)
87
83
88
- constexpr bit_value_t is_one_bit[4 ]
89
- = {
84
+ constexpr bit_value_t is_one_bit[4 ] = {
90
85
/* 0 1 x z <- a*/
91
86
_0, _1, _0, _0};
92
87
_static_unused (is_one_bit)
93
88
94
- constexpr bit_value_t is_zero_bit[4 ]
95
- = {
89
+ constexpr bit_value_t is_zero_bit[4 ] = {
96
90
/* 0 1 x z <- a*/
97
91
_1, _0, _0, _0};
98
92
_static_unused (is_zero_bit)
99
93
100
- constexpr bit_value_t l_and[4 ][4 ]
101
- = {
94
+ constexpr bit_value_t l_and[4 ][4 ] = {
102
95
/* a / 0 1 x z <-b */
103
96
/* 0 */ {_0, _0, _0, _0},
104
97
/* 1 */ {_0, _1, _x, _x},
105
98
/* x */ {_0, _x, _x, _x},
106
99
/* z */ {_0, _x, _x, _x}};
107
100
_static_unused (l_and)
108
101
109
- constexpr bit_value_t l_nand[4 ][4 ]
110
- = unroll_2d_invert(l_and);
102
+ constexpr bit_value_t l_nand[4 ][4 ] = unroll_2d_invert(l_and);
111
103
_static_unused (l_nand)
112
104
113
- constexpr bit_value_t l_or[4 ][4 ]
114
- = {
105
+ constexpr bit_value_t l_or[4 ][4 ] = {
115
106
/* a / 0 1 x z <-b */
116
107
/* 0 */ {_0, _1, _x, _x},
117
108
/* 1 */ {_1, _1, _1, _1},
118
109
/* x */ {_x, _1, _x, _x},
119
110
/* z */ {_x, _1, _x, _x}};
120
111
_static_unused (l_or)
121
112
122
- constexpr bit_value_t l_nor[4 ][4 ]
123
- = unroll_2d_invert(l_or);
113
+ constexpr bit_value_t l_nor[4 ][4 ] = unroll_2d_invert(l_or);
124
114
_static_unused (l_nor)
125
115
126
- constexpr bit_value_t l_xor[4 ][4 ]
127
- = {
116
+ constexpr bit_value_t l_xor[4 ][4 ] = {
128
117
/* a / 0 1 x z <-b */
129
118
/* 0 */ {_0, _1, _x, _x},
130
119
/* 1 */ {_1, _0, _x, _x},
131
120
/* x */ {_x, _x, _x, _x},
132
121
/* z */ {_x, _x, _x, _x}};
133
122
_static_unused (l_xor)
134
123
135
- constexpr bit_value_t l_xnor[4 ][4 ]
136
- = unroll_2d_invert(l_xor);
124
+ constexpr bit_value_t l_xnor[4 ][4 ] = unroll_2d_invert(l_xor);
137
125
_static_unused (l_xnor)
138
126
139
- constexpr bit_value_t l_notif1[4 ][4 ]
140
- = {
127
+ constexpr bit_value_t l_notif1[4 ][4 ] = {
141
128
/* in / 0 1 x z <-control */
142
129
/* 0 */ {_z, _1, _x, _x},
143
130
/* 1 */ {_z, _0, _x, _x},
144
131
/* x */ {_z, _x, _x, _x},
145
132
/* z */ {_z, _x, _x, _x}};
146
133
_static_unused (l_notif1)
147
134
148
- constexpr bit_value_t l_notif0[4 ][4 ]
149
- = {
135
+ constexpr bit_value_t l_notif0[4 ][4 ] = {
150
136
/* in / 0 1 x z <-control */
151
137
/* 0 */ {_1, _z, _x, _x},
152
138
/* 1 */ {_0, _z, _x, _x},
153
139
/* x */ {_x, _z, _x, _x},
154
140
/* z */ {_x, _z, _x, _x}};
155
141
_static_unused (l_notif0)
156
142
157
- constexpr bit_value_t l_bufif1[4 ][4 ]
158
- = {
143
+ constexpr bit_value_t l_bufif1[4 ][4 ] = {
159
144
/* in / 0 1 x z <-control */
160
145
/* 0 */ {_z, _0, _x, _x},
161
146
/* 1 */ {_z, _1, _x, _x},
162
147
/* x */ {_z, _x, _x, _x},
163
148
/* z */ {_z, _x, _x, _x}};
164
149
_static_unused (l_bufif1)
165
150
166
- constexpr bit_value_t l_bufif0[4 ][4 ]
167
- = {
151
+ constexpr bit_value_t l_bufif0[4 ][4 ] = {
168
152
/* in / 0 1 x z <-control */
169
153
/* 0 */ {_0, _z, _x, _x},
170
154
/* 1 */ {_1, _z, _x, _x},
@@ -176,26 +160,23 @@ _static_unused(l_bufif0)
176
160
* Tran NO SUPPORT FOR THESE YET
177
161
*/
178
162
/* cmos gates */
179
- constexpr bit_value_t l_rpmos[4 ][4 ]
180
- = {
163
+ constexpr bit_value_t l_rpmos[4 ][4 ] = {
181
164
/* in / 0 1 x z <-control */
182
165
/* 0 */ {_0, _z, _x, _x},
183
166
/* 1 */ {_1, _z, _x, _x},
184
167
/* x */ {_x, _z, _x, _x},
185
168
/* z */ {_z, _z, _z, _z}};
186
169
_static_unused (l_rpmos)
187
170
188
- constexpr bit_value_t l_rnmos[4 ][4 ]
189
- = {
171
+ constexpr bit_value_t l_rnmos[4 ][4 ] = {
190
172
/* in / 0 1 x z <-control */
191
173
/* 0 */ {_z, _0, _x, _x},
192
174
/* 1 */ {_z, _1, _x, _x},
193
175
/* x */ {_z, _x, _x, _x},
194
176
/* z */ {_z, _z, _z, _z}};
195
177
_static_unused (l_rnmos)
196
178
197
- constexpr bit_value_t l_nmos[4 ][4 ]
198
- = {
179
+ constexpr bit_value_t l_nmos[4 ][4 ] = {
199
180
/* in / 0 1 x z <-control */
200
181
/* 0 */ {_z, _0, _x, _x},
201
182
/* 1 */ {_z, _1, _x, _x},
@@ -204,8 +185,7 @@ _static_unused(l_rnmos)
204
185
_static_unused (l_nmos)
205
186
206
187
// see table 5-21 p:54 IEEE 1364-2005
207
- constexpr bit_value_t l_ternary[4 ][4 ]
208
- = {
188
+ constexpr bit_value_t l_ternary[4 ][4 ] = {
209
189
/* in / 0 1 x z <-control */
210
190
/* 0 */ {_0, _x, _x, _x},
211
191
/* 1 */ {_x, _1, _x, _x},
@@ -217,70 +197,61 @@ _static_unused(l_ternary)
217
197
* these extend the library and simplify the process
218
198
*/
219
199
/* helper */
220
- constexpr bit_value_t l_unk[4 ][4 ]
221
- = {
200
+ constexpr bit_value_t l_unk[4 ][4 ] = {
222
201
/* in / 0 1 x z <-control */
223
202
/* 0 */ {_x, _x, _x, _x},
224
203
/* 1 */ {_x, _x, _x, _x},
225
204
/* x */ {_x, _x, _x, _x},
226
205
/* z */ {_x, _x, _x, _x}};
227
206
_static_unused (l_unk)
228
207
229
- constexpr bit_value_t l_case_eq[4 ][4 ]
230
- = {
208
+ constexpr bit_value_t l_case_eq[4 ][4 ] = {
231
209
/* a / 0 1 x z <-b */
232
210
/* 0 */ {_1, _0, _0, _0},
233
211
/* 1 */ {_0, _1, _0, _0},
234
212
/* x */ {_0, _0, _1, _0},
235
213
/* z */ {_0, _0, _0, _1}};
236
214
_static_unused (l_case_eq)
237
215
238
- constexpr bit_value_t l_lt[4 ][4 ]
239
- = {
216
+ constexpr bit_value_t l_lt[4 ][4 ] = {
240
217
/* a / 0 1 x z <-b */
241
218
/* 0 */ {_0, _1, _x, _x},
242
219
/* 1 */ {_0, _0, _x, _x},
243
220
/* x */ {_x, _x, _x, _x},
244
221
/* z */ {_x, _x, _x, _x}};
245
222
_static_unused (l_lt)
246
223
247
- constexpr bit_value_t l_gt[4 ][4 ]
248
- = {
224
+ constexpr bit_value_t l_gt[4 ][4 ] = {
249
225
/* a / 0 1 x z <-b */
250
226
/* 0 */ {_0, _0, _x, _x},
251
227
/* 1 */ {_1, _0, _x, _x},
252
228
/* x */ {_x, _x, _x, _x},
253
229
/* z */ {_x, _x, _x, _x}};
254
230
_static_unused (l_gt)
255
231
256
- constexpr bit_value_t l_eq[4 ][4 ]
257
- = unroll_2d(l_xnor);
232
+ constexpr bit_value_t l_eq[4 ][4 ] = unroll_2d(l_xnor);
258
233
_static_unused (l_eq)
259
234
260
- constexpr bit_value_t l_sum[4 ][4 ][4 ]
261
- = {
235
+ constexpr bit_value_t l_sum[4 ][4 ][4 ] = {
262
236
/* c_in */
263
237
/* 0 */ unroll_2d (l_xor),
264
238
/* 1 */ unroll_2d (l_xnor),
265
239
/* x */ unroll_2d (l_unk),
266
240
/* z */ unroll_2d (l_unk)};
267
241
_static_unused (l_sum)
268
242
269
- constexpr bit_value_t l_carry[4 ][4 ][4 ]
270
- = {
243
+ constexpr bit_value_t l_carry[4 ][4 ][4 ] = {
271
244
/* c_in */
272
245
/* 0 */ unroll_2d (l_and),
273
246
/* 1 */ unroll_2d (l_or),
274
247
/* x */ unroll_2d (l_ternary),
275
248
/* z */ unroll_2d (l_ternary)};
276
249
_static_unused (l_carry)
277
250
278
- constexpr bit_value_t l_half_carry[4 ][4 ]
279
- = unroll_2d(l_carry[_0]);
251
+ constexpr bit_value_t l_half_carry[4 ][4 ] = unroll_2d(l_carry[_0]);
280
252
_static_unused (l_half_carry)
281
253
282
- constexpr bit_value_t l_half_sum[4 ][4 ]
283
- = unroll_2d(l_sum[_0]);
254
+ constexpr bit_value_t l_half_sum[4 ][4 ] = unroll_2d(l_sum[_0]);
284
255
_static_unused (l_half_sum)
285
256
286
257
static char bit_to_c (bit_value_t bit, bool uppercase) {
0 commit comments