Lines Matching refs:START

119 /* compute the number of bits between START and STOP */
122 #define _MAKE_WIDTH(START, STOP) (STOP - START + 1)
124 #define _MAKE_WIDTH(START, STOP) (START - STOP + 1)
166 #define _MSB_32(START, STOP) (START <= STOP \
167 ? (START < 32 ? 0 : START - 32) \
169 #define _MSB_16(START, STOP) (START <= STOP \
170 ? (START < 48 ? 0 : START - 48) \
173 #define _MSB_32(START, STOP) (START >= STOP \
174 ? (START >= 32 ? 31 : START) \
176 #define _MSB_16(START, STOP) (START >= STOP \
177 ? (START >= 16 ? 15 : START) \
182 #define _LSB_32(START, STOP) (START <= STOP \
184 : (START < 32 ? 0 : START - 32))
185 #define _LSB_16(START, STOP) (START <= STOP \
187 : (START < 48 ? 0 : START - 48))
189 #define _LSB_32(START, STOP) (START >= STOP \
191 : (START >= 32 ? 31 : START))
192 #define _LSB_16(START, STOP) (START >= STOP \
194 : (START >= 16 ? 15 : START))
198 #define _MSB(START, STOP) (START <= STOP ? START : STOP)
200 #define _MSB(START, STOP) (START >= STOP ? START : STOP)
204 #define _LSB(START, STOP) (START <= STOP ? STOP : START)
206 #define _LSB(START, STOP) (START >= STOP ? STOP : START)
277 #define _MASKn(WIDTH, START, STOP) (((unsigned##WIDTH)(-1) \
278 >> (_MSB_SHIFT (WIDTH, START) \
283 #define _POS_LE(START, STOP) (START <= STOP)
285 #define _POS_LE(START, STOP) (STOP <= START)
289 #define MASK(START, STOP) \
290 (_POS_LE ((START), (STOP)) \
292 _MSB ((START), (STOP)), \
293 _LSB ((START), (STOP)) ) \
295 | _MASKn(64, (START), _LSB_POS (64, 0))))
298 #define MASK(START, STOP) \
299 (_POS_LE ((START), (STOP)) \
303 _MSB_32 ((START), (STOP)), \
304 _LSB_32 ((START), (STOP)))) \
306 _LSB_32 ((START), (STOP)), \
312 _MSB_32 ((START), (STOP))))))
315 #define MASK(START, STOP) \
316 (_POS_LE ((START), (STOP)) \
320 _MSB_16 ((START), (STOP)), \
321 _LSB_16 ((START), (STOP)))) \
323 _LSB_16 ((START), (STOP)), \
329 _MSB_16 ((START), (STOP))))))