register_bits/
reg32.rs

1// This file was automatically generated with the `generate_impl_rs.py` script.
2// Any bugs in this script should be addressed in the `reg_reference.rs` file.
3// 
4// The contents of this file is as follows:
5// 1. Definition of RegXBits struct
6// 2. Implementation of operations
7// 3. Implementation of traits
8use core::num::Wrapping;
9
10// The next two lines will be replaced with the appropriate base type and size
11type BaseType = u32; // [REF_REPLACE]
12const NUM_BITS: usize = BaseType::BITS as usize;
13
14#[derive(Debug, PartialEq, PartialOrd, Clone, Copy)]
15#[repr(transparent)]
16pub struct Reg32Bits<const N: usize>(BaseType);
17
18impl<const N: usize> AsRef<BaseType> for Reg32Bits<N> {
19    fn as_ref(&self) -> &BaseType {
20        let Self(inner) = self;
21        inner
22    }
23}
24
25impl<const N: usize> core::ops::Deref for Reg32Bits<N> {
26    type Target = BaseType;
27
28    fn deref(&self) -> &Self::Target {
29        &self.0
30    }
31}
32
33impl<const N: usize> Eq for Reg32Bits<N> {}
34impl<const N: usize> Ord for Reg32Bits<N> {
35    fn cmp(&self, other: &Self) -> core::cmp::Ordering {
36        self.0.cmp(&other.0)
37    }
38}
39
40impl Reg32Bits<NUM_BITS> {
41    #[inline(always)]
42    pub fn new(value: BaseType) -> Self {
43        Self(value)
44    }
45}
46
47impl<const N: usize> From<Reg32Bits<N>> for BaseType {
48    #[inline(always)]
49    fn from(item: Reg32Bits<N>) -> Self {
50        item.0
51    }
52}
53
54const fn truncate(value: BaseType, to_num_bits: usize) -> BaseType {
55    // Needed to circumvent overflow protection
56    if to_num_bits == 0 {
57        return 0;
58    }
59
60    // Needed to circumvent overflow protection
61    if to_num_bits >= NUM_BITS {
62        return value;
63    }
64
65    let mask = BaseType::MAX >> (NUM_BITS - to_num_bits);
66    value & mask
67}
68
69const fn top_bit_mask(num_bits: usize) -> BaseType {
70    if num_bits == 0 {
71        return 0;
72    }
73
74    if num_bits == 1 {
75        return 1;
76    }
77
78    if num_bits > NUM_BITS {
79        return 0;
80    }
81
82    1 << (num_bits - 1)
83}
84
85// Function to ease matching of Bits to a specific sequence of bits
86impl<const N: usize> Reg32Bits<N> {
87    /// N 0's in the base type
88    const BASE_ZEROS: BaseType = 0;
89    /// N 1's in the base type
90    const BASE_ONES: BaseType = truncate(!0, N);
91
92    /// A guarenteed N sequential 0's
93    pub const ZEROS: Self = Self(Self::BASE_ZEROS);
94    /// N sequential 1's
95    pub const ONES: Self = Self(Self::BASE_ONES);
96
97    /// Turn the register bits into a array of 1s and 0s
98    ///
99    /// Can be used in both a const environment and at runtime. This function is especially useful
100    /// when pattern matching.
101    ///
102    /// ```
103    /// use register_bits::prelude::*;
104    /// let value: Reg32Bits<4> =
105    ///     Reg32Bits::new(0b1010).take_low();
106    ///
107    /// match value.bits() {
108    ///     [1, 0, 1, 0] => {
109    ///         // Wow, we matched the individual bits
110    ///     }
111    ///     _ => unreachable!(),
112    /// }
113    /// ```
114    pub const fn bits(self) -> [u8; N] {
115        let mut bits = [0; N];
116        let Self(mut value) = self;
117
118        let mut i = 0;
119        loop {
120            bits[N - i - 1] = (value & 0b1) as u8;
121            value >>= 1;
122
123            i += 1;
124            if i == N {
125                break;
126            }
127        }
128
129        bits
130    }
131
132    /// Fetch a bit at runtime
133    ///
134    /// This will fail if index >= N, where N is the size of the [Reg32Bits].
135    ///
136    /// ```
137    /// use register_bits::prelude::*;
138    ///
139    /// let bits: Reg32Bits<4> =
140    ///     Reg32Bits::new(0b1100).take_low();
141    ///
142    /// assert_eq!(bits.get(0).unwrap(), 0u8);
143    /// assert_eq!(bits.get(1).unwrap(), 0u8);
144    /// assert_eq!(bits.get(2).unwrap(), 1u8);
145    /// assert_eq!(bits.get(3).unwrap(), 1u8);
146    /// assert_eq!(bits.get(4), None);
147    /// ```
148    pub fn get(self, index: usize) -> Option<Reg32Bits<1>> {
149        if index >= N {
150            return None;
151        }
152
153        let last_bit = if index == 0 {
154            self.0 & 0b1
155        } else {
156            (self.0 >> index) & 0b1
157        };
158
159        Some(Reg32Bits(last_bit))
160    }
161
162    /// Give the number of ones in the bits
163    pub fn one_count(self) -> usize {
164        self.bits().into_iter().filter(|bit| { *bit == 1 }).count()
165    }
166    
167    /// Give the number of ones in the bits
168    pub fn zero_count(self) -> usize {
169        self.bits().into_iter().filter(|bit| { *bit == 0 }).count()
170    }
171}
172
173impl From<Reg32Bits<1>> for bool {
174    #[inline(always)]
175    fn from(item: Reg32Bits<1>) -> bool {
176        matches!(item, Reg32Bits::<1>(1))
177    }
178}
179
180impl PartialEq<bool> for Reg32Bits<1> {
181    #[inline(always)]
182    fn eq(&self, other: &bool) -> bool {
183        bool::from(*self) == *other
184    }
185}
186
187impl PartialEq<u8> for Reg32Bits<1> {
188    #[inline(always)]
189    fn eq(&self, other: &u8) -> bool {
190        bool::from(*self) == (*other > 0)
191    }
192}
193
194impl<const N: usize, T: Into<BaseType>> core::ops::Add<T> for Reg32Bits<N> {
195    type Output = Self;
196
197    #[inline(always)]
198    fn add(self, rhs: T) -> Self::Output {
199        let lhs = Wrapping::<BaseType>(self.0);
200        let rhs = Wrapping::<BaseType>(rhs.into());
201
202        Self(((lhs + rhs) & Wrapping(Self::BASE_ONES)).0)
203    }
204}
205
206impl<const N: usize, T: Into<BaseType>> core::ops::Sub<T> for Reg32Bits<N> {
207    type Output = Self;
208
209    #[inline(always)]
210    fn sub(self, rhs: T) -> Self::Output {
211        let lhs = Wrapping::<BaseType>(self.0);
212        let rhs = Wrapping::<BaseType>(rhs.into());
213
214        Self(((lhs - rhs) & Wrapping(Self::BASE_ONES)).0)
215    }
216}
217
218impl<const N: usize, T: Into<BaseType>> core::ops::Div<T> for Reg32Bits<N> {
219    type Output = Self;
220
221    #[inline(always)]
222    fn div(self, rhs: T) -> Self::Output {
223        let lhs = self.0;
224        let rhs = rhs.into();
225
226        Self(lhs / rhs)
227    }
228}
229
230impl<const N: usize, T: Into<BaseType>> core::ops::Rem<T> for Reg32Bits<N> {
231    type Output = Self;
232
233    #[inline(always)]
234    fn rem(self, rhs: T) -> Self::Output {
235        let lhs = self.0;
236        let rhs = rhs.into();
237
238        Self(lhs % rhs)
239    }
240}
241
242impl<const N: usize> core::ops::BitAnd for Reg32Bits<N> {
243    type Output = Self;
244
245    #[inline(always)]
246    fn bitand(self, rhs: Self) -> Self::Output {
247        let lhs = self.0;
248        let rhs = rhs.0;
249
250        Self(lhs & rhs)
251    }
252}
253
254impl<const N: usize> core::ops::BitOr for Reg32Bits<N> {
255    type Output = Self;
256
257    #[inline(always)]
258    fn bitor(self, rhs: Self) -> Self::Output {
259        let lhs = self.0;
260        let rhs = rhs.0;
261
262        Self(lhs | rhs)
263    }
264}
265
266impl<const N: usize> core::ops::BitXor for Reg32Bits<N> {
267    type Output = Self;
268
269    #[inline(always)]
270    fn bitxor(self, rhs: Self) -> Self::Output {
271        let lhs = self.0;
272        let rhs = rhs.0;
273
274        Self(lhs ^ rhs)
275    }
276}
277
278impl<const N: usize> core::ops::Not for Reg32Bits<N> {
279    type Output = Self;
280
281    #[inline(always)]
282    fn not(self) -> Self::Output {
283        let lhs = self.0;
284
285        Self((!lhs) & Self::BASE_ONES)
286    }
287}
288
289impl<const N: usize, T> core::ops::Shl<T> for Reg32Bits<N>
290where
291    BaseType: core::ops::Shl<T, Output = BaseType>,
292{
293    type Output = Self;
294
295    #[inline(always)]
296    fn shl(self, rhs: T) -> Self::Output {
297        let lhs = self.0;
298        let rhs = rhs;
299
300        Self((lhs << rhs) & Self::ONES.0)
301    }
302}
303
304impl<const N: usize, T> core::ops::Shr<T> for Reg32Bits<N>
305where
306    BaseType: core::ops::Shr<T, Output = BaseType>,
307{
308    type Output = Self;
309
310    #[inline(always)]
311    fn shr(self, rhs: T) -> Self::Output {
312        let lhs = self.0;
313        let rhs = rhs;
314
315        Self((lhs >> rhs) & Self::ONES.0)
316    }
317}
318
319pub trait Reg32BitsBitSize {
320    const BIT_SIZE: usize;
321    const BASE_ONES: BaseType;
322}
323
324impl<const N: usize> Reg32BitsBitSize for Reg32Bits<N> {
325    const BIT_SIZE: usize = N;
326    const BASE_ONES: BaseType = Reg32Bits::<N>::BASE_ONES;
327}
328
329// F > T
330pub trait Reg32BitsDownCast<const T: usize>:
331    Reg32BitsBitSize + Copy + Into<BaseType>
332{
333    /// Take a number of the least significant bits
334    ///
335    /// # Example
336    ///
337    /// ```
338    /// use register_bits::prelude::*;
339    /// let bottom_byte: Reg32Bits<8> = Reg32Bits::new(0x42).take_low();
340    /// let bits: Reg32Bits<4> = bottom_byte.take_low();
341    ///
342    /// assert_eq!(bits, 0x2);
343    /// ```
344    #[inline(always)]
345    fn take_low(self) -> Reg32Bits<T> {
346        let value: BaseType = self.into();
347        Reg32Bits(Reg32Bits::<T>::BASE_ONES & value)
348    }
349
350    /// Take a number of the most significant bits
351    ///
352    /// # Example
353    ///
354    /// ```
355    /// use register_bits::prelude::*;
356    /// let bottom_byte: Reg32Bits<8> =
357    ///     Reg32Bits::new(0x42).take_low();
358    /// let bits: Reg32Bits<4> = bottom_byte.take_high();
359    ///
360    /// assert_eq!(bits, 0x4);
361    /// ```
362    #[inline(always)]
363    fn take_high(self) -> Reg32Bits<T> {
364        let value: BaseType = self.into();
365        Reg32Bits(value >> (Self::BIT_SIZE - T))
366    }
367}
368
369pub trait Reg32BitsUpCast<const T: usize>:
370    Reg32BitsBitSize + Copy + Into<BaseType>
371{
372    /// Extend the current register bits with 0s on the most significant bits
373    ///
374    /// # Example
375    ///
376    /// ```
377    /// use register_bits::prelude::*;
378    /// let bits: Reg32Bits<4> =
379    ///     Reg32Bits::new(0b1010).take_low();
380    ///
381    /// // 1010 => 0000 1010
382    /// assert_eq!(bits.zero_extend().bits(), [0, 0, 0, 0, 1, 0, 1, 0]);
383    /// ```
384    #[inline(always)]
385    fn zero_extend(self) -> Reg32Bits<T> {
386        let value = self.into();
387        Reg32Bits(value)
388    }
389
390    /// Extend the current register bits by copied the most significant bit to the new bits
391    ///
392    /// # Example
393    ///
394    /// ```
395    /// use register_bits::prelude::*;
396    ///
397    /// // Most significant bit is 1
398    /// let bits: Reg32Bits<4> =
399    ///     Reg32Bits::new(0b1010).take_low();
400    ///
401    /// // 1010 => 1111 1010
402    /// assert_eq!(bits.sign_extend().bits(), [1, 1, 1, 1, 1, 0, 1, 0]);
403    ///
404    /// // Most significant bit is 0
405    /// let bits: Reg32Bits<4> =
406    ///     Reg32Bits::new(0b0101).take_low();
407    ///
408    /// // 0101 => 0000 0101
409    /// assert_eq!(bits.sign_extend().bits(), [0, 0, 0, 0, 0, 1, 0, 1]);
410    /// ```
411    #[inline(always)]
412    fn sign_extend(self) -> Reg32Bits<T> {
413        // NOTE: We are assuming here that no Bits<0> structure can exist
414        let value = self.into();
415
416        let top_bit = value & top_bit_mask(Self::BIT_SIZE); // Capture only the top bit
417        let top_bits = if top_bit == 0 {
418            // Create a set of NUM_BITS-N bits of with the given sign
419            0
420        } else {
421            (!Self::BASE_ONES) & Reg32Bits::<T>::BASE_ONES // !001111 = 110000
422        };
423
424        Reg32Bits(top_bits | value)
425    }
426
427    /// Add extra zeros for the least significant bits
428    ///
429    /// # Example
430    ///
431    /// ```
432    /// use register_bits::prelude::*;
433    ///
434    /// let bits: Reg32Bits<4> =
435    ///     Reg32Bits::new(0b1010).take_low();
436    ///
437    /// // 1010 => 1010 0000
438    /// assert_eq!(bits.zero_pad().bits(), [1, 0, 1, 0, 0, 0, 0, 0]);
439    /// ```
440    #[inline(always)]
441    fn zero_pad(self) -> Reg32Bits<T> {
442        self.zero_extend() << (T - Self::BIT_SIZE)
443    }
444}
445
446pub trait Reg32BitsConcat<const R: usize, const O: usize>:
447    Copy + Into<BaseType>
448{
449    /// Concatinate two register bit structures forming a new struct sized the sum of their
450    /// concated structs
451    fn concat(self, rhs: Reg32Bits<R>) -> Reg32Bits<O> {
452        let lhs = self.into();
453        let rhs: BaseType = rhs.into();
454
455        Reg32Bits((lhs << R) | rhs)
456    }
457}
458
459impl<const F: usize, const T: usize> Reg32BitsUpCast<T> for Reg32Bits<F> where
460    Reg32Bits<T>: Reg32BitsDownCast<F>
461{
462}
463
464
465
466#[doc(hidden)]
467impl Reg32BitsDownCast<1> for Reg32Bits<1> {}
468#[doc(hidden)]
469impl Reg32BitsConcat<1, 2> for Reg32Bits<1> {}
470#[doc(hidden)]
471impl Reg32BitsConcat<2, 3> for Reg32Bits<1> {}
472#[doc(hidden)]
473impl Reg32BitsConcat<3, 4> for Reg32Bits<1> {}
474#[doc(hidden)]
475impl Reg32BitsConcat<4, 5> for Reg32Bits<1> {}
476#[doc(hidden)]
477impl Reg32BitsConcat<5, 6> for Reg32Bits<1> {}
478#[doc(hidden)]
479impl Reg32BitsConcat<6, 7> for Reg32Bits<1> {}
480#[doc(hidden)]
481impl Reg32BitsConcat<7, 8> for Reg32Bits<1> {}
482#[doc(hidden)]
483impl Reg32BitsConcat<8, 9> for Reg32Bits<1> {}
484#[doc(hidden)]
485impl Reg32BitsConcat<9, 10> for Reg32Bits<1> {}
486#[doc(hidden)]
487impl Reg32BitsConcat<10, 11> for Reg32Bits<1> {}
488#[doc(hidden)]
489impl Reg32BitsConcat<11, 12> for Reg32Bits<1> {}
490#[doc(hidden)]
491impl Reg32BitsConcat<12, 13> for Reg32Bits<1> {}
492#[doc(hidden)]
493impl Reg32BitsConcat<13, 14> for Reg32Bits<1> {}
494#[doc(hidden)]
495impl Reg32BitsConcat<14, 15> for Reg32Bits<1> {}
496#[doc(hidden)]
497impl Reg32BitsConcat<15, 16> for Reg32Bits<1> {}
498#[doc(hidden)]
499impl Reg32BitsConcat<16, 17> for Reg32Bits<1> {}
500#[doc(hidden)]
501impl Reg32BitsConcat<17, 18> for Reg32Bits<1> {}
502#[doc(hidden)]
503impl Reg32BitsConcat<18, 19> for Reg32Bits<1> {}
504#[doc(hidden)]
505impl Reg32BitsConcat<19, 20> for Reg32Bits<1> {}
506#[doc(hidden)]
507impl Reg32BitsConcat<20, 21> for Reg32Bits<1> {}
508#[doc(hidden)]
509impl Reg32BitsConcat<21, 22> for Reg32Bits<1> {}
510#[doc(hidden)]
511impl Reg32BitsConcat<22, 23> for Reg32Bits<1> {}
512#[doc(hidden)]
513impl Reg32BitsConcat<23, 24> for Reg32Bits<1> {}
514#[doc(hidden)]
515impl Reg32BitsConcat<24, 25> for Reg32Bits<1> {}
516#[doc(hidden)]
517impl Reg32BitsConcat<25, 26> for Reg32Bits<1> {}
518#[doc(hidden)]
519impl Reg32BitsConcat<26, 27> for Reg32Bits<1> {}
520#[doc(hidden)]
521impl Reg32BitsConcat<27, 28> for Reg32Bits<1> {}
522#[doc(hidden)]
523impl Reg32BitsConcat<28, 29> for Reg32Bits<1> {}
524#[doc(hidden)]
525impl Reg32BitsConcat<29, 30> for Reg32Bits<1> {}
526#[doc(hidden)]
527impl Reg32BitsConcat<30, 31> for Reg32Bits<1> {}
528#[doc(hidden)]
529impl Reg32BitsConcat<31, 32> for Reg32Bits<1> {}
530#[doc(hidden)]
531impl Reg32BitsDownCast<1> for Reg32Bits<2> {}
532#[doc(hidden)]
533impl Reg32BitsConcat<1, 3> for Reg32Bits<2> {}
534#[doc(hidden)]
535impl Reg32BitsDownCast<2> for Reg32Bits<2> {}
536#[doc(hidden)]
537impl Reg32BitsConcat<2, 4> for Reg32Bits<2> {}
538#[doc(hidden)]
539impl Reg32BitsConcat<3, 5> for Reg32Bits<2> {}
540#[doc(hidden)]
541impl Reg32BitsConcat<4, 6> for Reg32Bits<2> {}
542#[doc(hidden)]
543impl Reg32BitsConcat<5, 7> for Reg32Bits<2> {}
544#[doc(hidden)]
545impl Reg32BitsConcat<6, 8> for Reg32Bits<2> {}
546#[doc(hidden)]
547impl Reg32BitsConcat<7, 9> for Reg32Bits<2> {}
548#[doc(hidden)]
549impl Reg32BitsConcat<8, 10> for Reg32Bits<2> {}
550#[doc(hidden)]
551impl Reg32BitsConcat<9, 11> for Reg32Bits<2> {}
552#[doc(hidden)]
553impl Reg32BitsConcat<10, 12> for Reg32Bits<2> {}
554#[doc(hidden)]
555impl Reg32BitsConcat<11, 13> for Reg32Bits<2> {}
556#[doc(hidden)]
557impl Reg32BitsConcat<12, 14> for Reg32Bits<2> {}
558#[doc(hidden)]
559impl Reg32BitsConcat<13, 15> for Reg32Bits<2> {}
560#[doc(hidden)]
561impl Reg32BitsConcat<14, 16> for Reg32Bits<2> {}
562#[doc(hidden)]
563impl Reg32BitsConcat<15, 17> for Reg32Bits<2> {}
564#[doc(hidden)]
565impl Reg32BitsConcat<16, 18> for Reg32Bits<2> {}
566#[doc(hidden)]
567impl Reg32BitsConcat<17, 19> for Reg32Bits<2> {}
568#[doc(hidden)]
569impl Reg32BitsConcat<18, 20> for Reg32Bits<2> {}
570#[doc(hidden)]
571impl Reg32BitsConcat<19, 21> for Reg32Bits<2> {}
572#[doc(hidden)]
573impl Reg32BitsConcat<20, 22> for Reg32Bits<2> {}
574#[doc(hidden)]
575impl Reg32BitsConcat<21, 23> for Reg32Bits<2> {}
576#[doc(hidden)]
577impl Reg32BitsConcat<22, 24> for Reg32Bits<2> {}
578#[doc(hidden)]
579impl Reg32BitsConcat<23, 25> for Reg32Bits<2> {}
580#[doc(hidden)]
581impl Reg32BitsConcat<24, 26> for Reg32Bits<2> {}
582#[doc(hidden)]
583impl Reg32BitsConcat<25, 27> for Reg32Bits<2> {}
584#[doc(hidden)]
585impl Reg32BitsConcat<26, 28> for Reg32Bits<2> {}
586#[doc(hidden)]
587impl Reg32BitsConcat<27, 29> for Reg32Bits<2> {}
588#[doc(hidden)]
589impl Reg32BitsConcat<28, 30> for Reg32Bits<2> {}
590#[doc(hidden)]
591impl Reg32BitsConcat<29, 31> for Reg32Bits<2> {}
592#[doc(hidden)]
593impl Reg32BitsConcat<30, 32> for Reg32Bits<2> {}
594#[doc(hidden)]
595impl Reg32BitsDownCast<1> for Reg32Bits<3> {}
596#[doc(hidden)]
597impl Reg32BitsConcat<1, 4> for Reg32Bits<3> {}
598#[doc(hidden)]
599impl Reg32BitsDownCast<2> for Reg32Bits<3> {}
600#[doc(hidden)]
601impl Reg32BitsConcat<2, 5> for Reg32Bits<3> {}
602#[doc(hidden)]
603impl Reg32BitsDownCast<3> for Reg32Bits<3> {}
604#[doc(hidden)]
605impl Reg32BitsConcat<3, 6> for Reg32Bits<3> {}
606#[doc(hidden)]
607impl Reg32BitsConcat<4, 7> for Reg32Bits<3> {}
608#[doc(hidden)]
609impl Reg32BitsConcat<5, 8> for Reg32Bits<3> {}
610#[doc(hidden)]
611impl Reg32BitsConcat<6, 9> for Reg32Bits<3> {}
612#[doc(hidden)]
613impl Reg32BitsConcat<7, 10> for Reg32Bits<3> {}
614#[doc(hidden)]
615impl Reg32BitsConcat<8, 11> for Reg32Bits<3> {}
616#[doc(hidden)]
617impl Reg32BitsConcat<9, 12> for Reg32Bits<3> {}
618#[doc(hidden)]
619impl Reg32BitsConcat<10, 13> for Reg32Bits<3> {}
620#[doc(hidden)]
621impl Reg32BitsConcat<11, 14> for Reg32Bits<3> {}
622#[doc(hidden)]
623impl Reg32BitsConcat<12, 15> for Reg32Bits<3> {}
624#[doc(hidden)]
625impl Reg32BitsConcat<13, 16> for Reg32Bits<3> {}
626#[doc(hidden)]
627impl Reg32BitsConcat<14, 17> for Reg32Bits<3> {}
628#[doc(hidden)]
629impl Reg32BitsConcat<15, 18> for Reg32Bits<3> {}
630#[doc(hidden)]
631impl Reg32BitsConcat<16, 19> for Reg32Bits<3> {}
632#[doc(hidden)]
633impl Reg32BitsConcat<17, 20> for Reg32Bits<3> {}
634#[doc(hidden)]
635impl Reg32BitsConcat<18, 21> for Reg32Bits<3> {}
636#[doc(hidden)]
637impl Reg32BitsConcat<19, 22> for Reg32Bits<3> {}
638#[doc(hidden)]
639impl Reg32BitsConcat<20, 23> for Reg32Bits<3> {}
640#[doc(hidden)]
641impl Reg32BitsConcat<21, 24> for Reg32Bits<3> {}
642#[doc(hidden)]
643impl Reg32BitsConcat<22, 25> for Reg32Bits<3> {}
644#[doc(hidden)]
645impl Reg32BitsConcat<23, 26> for Reg32Bits<3> {}
646#[doc(hidden)]
647impl Reg32BitsConcat<24, 27> for Reg32Bits<3> {}
648#[doc(hidden)]
649impl Reg32BitsConcat<25, 28> for Reg32Bits<3> {}
650#[doc(hidden)]
651impl Reg32BitsConcat<26, 29> for Reg32Bits<3> {}
652#[doc(hidden)]
653impl Reg32BitsConcat<27, 30> for Reg32Bits<3> {}
654#[doc(hidden)]
655impl Reg32BitsConcat<28, 31> for Reg32Bits<3> {}
656#[doc(hidden)]
657impl Reg32BitsConcat<29, 32> for Reg32Bits<3> {}
658#[doc(hidden)]
659impl Reg32BitsDownCast<1> for Reg32Bits<4> {}
660#[doc(hidden)]
661impl Reg32BitsConcat<1, 5> for Reg32Bits<4> {}
662#[doc(hidden)]
663impl Reg32BitsDownCast<2> for Reg32Bits<4> {}
664#[doc(hidden)]
665impl Reg32BitsConcat<2, 6> for Reg32Bits<4> {}
666#[doc(hidden)]
667impl Reg32BitsDownCast<3> for Reg32Bits<4> {}
668#[doc(hidden)]
669impl Reg32BitsConcat<3, 7> for Reg32Bits<4> {}
670#[doc(hidden)]
671impl Reg32BitsDownCast<4> for Reg32Bits<4> {}
672#[doc(hidden)]
673impl Reg32BitsConcat<4, 8> for Reg32Bits<4> {}
674#[doc(hidden)]
675impl Reg32BitsConcat<5, 9> for Reg32Bits<4> {}
676#[doc(hidden)]
677impl Reg32BitsConcat<6, 10> for Reg32Bits<4> {}
678#[doc(hidden)]
679impl Reg32BitsConcat<7, 11> for Reg32Bits<4> {}
680#[doc(hidden)]
681impl Reg32BitsConcat<8, 12> for Reg32Bits<4> {}
682#[doc(hidden)]
683impl Reg32BitsConcat<9, 13> for Reg32Bits<4> {}
684#[doc(hidden)]
685impl Reg32BitsConcat<10, 14> for Reg32Bits<4> {}
686#[doc(hidden)]
687impl Reg32BitsConcat<11, 15> for Reg32Bits<4> {}
688#[doc(hidden)]
689impl Reg32BitsConcat<12, 16> for Reg32Bits<4> {}
690#[doc(hidden)]
691impl Reg32BitsConcat<13, 17> for Reg32Bits<4> {}
692#[doc(hidden)]
693impl Reg32BitsConcat<14, 18> for Reg32Bits<4> {}
694#[doc(hidden)]
695impl Reg32BitsConcat<15, 19> for Reg32Bits<4> {}
696#[doc(hidden)]
697impl Reg32BitsConcat<16, 20> for Reg32Bits<4> {}
698#[doc(hidden)]
699impl Reg32BitsConcat<17, 21> for Reg32Bits<4> {}
700#[doc(hidden)]
701impl Reg32BitsConcat<18, 22> for Reg32Bits<4> {}
702#[doc(hidden)]
703impl Reg32BitsConcat<19, 23> for Reg32Bits<4> {}
704#[doc(hidden)]
705impl Reg32BitsConcat<20, 24> for Reg32Bits<4> {}
706#[doc(hidden)]
707impl Reg32BitsConcat<21, 25> for Reg32Bits<4> {}
708#[doc(hidden)]
709impl Reg32BitsConcat<22, 26> for Reg32Bits<4> {}
710#[doc(hidden)]
711impl Reg32BitsConcat<23, 27> for Reg32Bits<4> {}
712#[doc(hidden)]
713impl Reg32BitsConcat<24, 28> for Reg32Bits<4> {}
714#[doc(hidden)]
715impl Reg32BitsConcat<25, 29> for Reg32Bits<4> {}
716#[doc(hidden)]
717impl Reg32BitsConcat<26, 30> for Reg32Bits<4> {}
718#[doc(hidden)]
719impl Reg32BitsConcat<27, 31> for Reg32Bits<4> {}
720#[doc(hidden)]
721impl Reg32BitsConcat<28, 32> for Reg32Bits<4> {}
722#[doc(hidden)]
723impl Reg32BitsDownCast<1> for Reg32Bits<5> {}
724#[doc(hidden)]
725impl Reg32BitsConcat<1, 6> for Reg32Bits<5> {}
726#[doc(hidden)]
727impl Reg32BitsDownCast<2> for Reg32Bits<5> {}
728#[doc(hidden)]
729impl Reg32BitsConcat<2, 7> for Reg32Bits<5> {}
730#[doc(hidden)]
731impl Reg32BitsDownCast<3> for Reg32Bits<5> {}
732#[doc(hidden)]
733impl Reg32BitsConcat<3, 8> for Reg32Bits<5> {}
734#[doc(hidden)]
735impl Reg32BitsDownCast<4> for Reg32Bits<5> {}
736#[doc(hidden)]
737impl Reg32BitsConcat<4, 9> for Reg32Bits<5> {}
738#[doc(hidden)]
739impl Reg32BitsDownCast<5> for Reg32Bits<5> {}
740#[doc(hidden)]
741impl Reg32BitsConcat<5, 10> for Reg32Bits<5> {}
742#[doc(hidden)]
743impl Reg32BitsConcat<6, 11> for Reg32Bits<5> {}
744#[doc(hidden)]
745impl Reg32BitsConcat<7, 12> for Reg32Bits<5> {}
746#[doc(hidden)]
747impl Reg32BitsConcat<8, 13> for Reg32Bits<5> {}
748#[doc(hidden)]
749impl Reg32BitsConcat<9, 14> for Reg32Bits<5> {}
750#[doc(hidden)]
751impl Reg32BitsConcat<10, 15> for Reg32Bits<5> {}
752#[doc(hidden)]
753impl Reg32BitsConcat<11, 16> for Reg32Bits<5> {}
754#[doc(hidden)]
755impl Reg32BitsConcat<12, 17> for Reg32Bits<5> {}
756#[doc(hidden)]
757impl Reg32BitsConcat<13, 18> for Reg32Bits<5> {}
758#[doc(hidden)]
759impl Reg32BitsConcat<14, 19> for Reg32Bits<5> {}
760#[doc(hidden)]
761impl Reg32BitsConcat<15, 20> for Reg32Bits<5> {}
762#[doc(hidden)]
763impl Reg32BitsConcat<16, 21> for Reg32Bits<5> {}
764#[doc(hidden)]
765impl Reg32BitsConcat<17, 22> for Reg32Bits<5> {}
766#[doc(hidden)]
767impl Reg32BitsConcat<18, 23> for Reg32Bits<5> {}
768#[doc(hidden)]
769impl Reg32BitsConcat<19, 24> for Reg32Bits<5> {}
770#[doc(hidden)]
771impl Reg32BitsConcat<20, 25> for Reg32Bits<5> {}
772#[doc(hidden)]
773impl Reg32BitsConcat<21, 26> for Reg32Bits<5> {}
774#[doc(hidden)]
775impl Reg32BitsConcat<22, 27> for Reg32Bits<5> {}
776#[doc(hidden)]
777impl Reg32BitsConcat<23, 28> for Reg32Bits<5> {}
778#[doc(hidden)]
779impl Reg32BitsConcat<24, 29> for Reg32Bits<5> {}
780#[doc(hidden)]
781impl Reg32BitsConcat<25, 30> for Reg32Bits<5> {}
782#[doc(hidden)]
783impl Reg32BitsConcat<26, 31> for Reg32Bits<5> {}
784#[doc(hidden)]
785impl Reg32BitsConcat<27, 32> for Reg32Bits<5> {}
786#[doc(hidden)]
787impl Reg32BitsDownCast<1> for Reg32Bits<6> {}
788#[doc(hidden)]
789impl Reg32BitsConcat<1, 7> for Reg32Bits<6> {}
790#[doc(hidden)]
791impl Reg32BitsDownCast<2> for Reg32Bits<6> {}
792#[doc(hidden)]
793impl Reg32BitsConcat<2, 8> for Reg32Bits<6> {}
794#[doc(hidden)]
795impl Reg32BitsDownCast<3> for Reg32Bits<6> {}
796#[doc(hidden)]
797impl Reg32BitsConcat<3, 9> for Reg32Bits<6> {}
798#[doc(hidden)]
799impl Reg32BitsDownCast<4> for Reg32Bits<6> {}
800#[doc(hidden)]
801impl Reg32BitsConcat<4, 10> for Reg32Bits<6> {}
802#[doc(hidden)]
803impl Reg32BitsDownCast<5> for Reg32Bits<6> {}
804#[doc(hidden)]
805impl Reg32BitsConcat<5, 11> for Reg32Bits<6> {}
806#[doc(hidden)]
807impl Reg32BitsDownCast<6> for Reg32Bits<6> {}
808#[doc(hidden)]
809impl Reg32BitsConcat<6, 12> for Reg32Bits<6> {}
810#[doc(hidden)]
811impl Reg32BitsConcat<7, 13> for Reg32Bits<6> {}
812#[doc(hidden)]
813impl Reg32BitsConcat<8, 14> for Reg32Bits<6> {}
814#[doc(hidden)]
815impl Reg32BitsConcat<9, 15> for Reg32Bits<6> {}
816#[doc(hidden)]
817impl Reg32BitsConcat<10, 16> for Reg32Bits<6> {}
818#[doc(hidden)]
819impl Reg32BitsConcat<11, 17> for Reg32Bits<6> {}
820#[doc(hidden)]
821impl Reg32BitsConcat<12, 18> for Reg32Bits<6> {}
822#[doc(hidden)]
823impl Reg32BitsConcat<13, 19> for Reg32Bits<6> {}
824#[doc(hidden)]
825impl Reg32BitsConcat<14, 20> for Reg32Bits<6> {}
826#[doc(hidden)]
827impl Reg32BitsConcat<15, 21> for Reg32Bits<6> {}
828#[doc(hidden)]
829impl Reg32BitsConcat<16, 22> for Reg32Bits<6> {}
830#[doc(hidden)]
831impl Reg32BitsConcat<17, 23> for Reg32Bits<6> {}
832#[doc(hidden)]
833impl Reg32BitsConcat<18, 24> for Reg32Bits<6> {}
834#[doc(hidden)]
835impl Reg32BitsConcat<19, 25> for Reg32Bits<6> {}
836#[doc(hidden)]
837impl Reg32BitsConcat<20, 26> for Reg32Bits<6> {}
838#[doc(hidden)]
839impl Reg32BitsConcat<21, 27> for Reg32Bits<6> {}
840#[doc(hidden)]
841impl Reg32BitsConcat<22, 28> for Reg32Bits<6> {}
842#[doc(hidden)]
843impl Reg32BitsConcat<23, 29> for Reg32Bits<6> {}
844#[doc(hidden)]
845impl Reg32BitsConcat<24, 30> for Reg32Bits<6> {}
846#[doc(hidden)]
847impl Reg32BitsConcat<25, 31> for Reg32Bits<6> {}
848#[doc(hidden)]
849impl Reg32BitsConcat<26, 32> for Reg32Bits<6> {}
850#[doc(hidden)]
851impl Reg32BitsDownCast<1> for Reg32Bits<7> {}
852#[doc(hidden)]
853impl Reg32BitsConcat<1, 8> for Reg32Bits<7> {}
854#[doc(hidden)]
855impl Reg32BitsDownCast<2> for Reg32Bits<7> {}
856#[doc(hidden)]
857impl Reg32BitsConcat<2, 9> for Reg32Bits<7> {}
858#[doc(hidden)]
859impl Reg32BitsDownCast<3> for Reg32Bits<7> {}
860#[doc(hidden)]
861impl Reg32BitsConcat<3, 10> for Reg32Bits<7> {}
862#[doc(hidden)]
863impl Reg32BitsDownCast<4> for Reg32Bits<7> {}
864#[doc(hidden)]
865impl Reg32BitsConcat<4, 11> for Reg32Bits<7> {}
866#[doc(hidden)]
867impl Reg32BitsDownCast<5> for Reg32Bits<7> {}
868#[doc(hidden)]
869impl Reg32BitsConcat<5, 12> for Reg32Bits<7> {}
870#[doc(hidden)]
871impl Reg32BitsDownCast<6> for Reg32Bits<7> {}
872#[doc(hidden)]
873impl Reg32BitsConcat<6, 13> for Reg32Bits<7> {}
874#[doc(hidden)]
875impl Reg32BitsDownCast<7> for Reg32Bits<7> {}
876#[doc(hidden)]
877impl Reg32BitsConcat<7, 14> for Reg32Bits<7> {}
878#[doc(hidden)]
879impl Reg32BitsConcat<8, 15> for Reg32Bits<7> {}
880#[doc(hidden)]
881impl Reg32BitsConcat<9, 16> for Reg32Bits<7> {}
882#[doc(hidden)]
883impl Reg32BitsConcat<10, 17> for Reg32Bits<7> {}
884#[doc(hidden)]
885impl Reg32BitsConcat<11, 18> for Reg32Bits<7> {}
886#[doc(hidden)]
887impl Reg32BitsConcat<12, 19> for Reg32Bits<7> {}
888#[doc(hidden)]
889impl Reg32BitsConcat<13, 20> for Reg32Bits<7> {}
890#[doc(hidden)]
891impl Reg32BitsConcat<14, 21> for Reg32Bits<7> {}
892#[doc(hidden)]
893impl Reg32BitsConcat<15, 22> for Reg32Bits<7> {}
894#[doc(hidden)]
895impl Reg32BitsConcat<16, 23> for Reg32Bits<7> {}
896#[doc(hidden)]
897impl Reg32BitsConcat<17, 24> for Reg32Bits<7> {}
898#[doc(hidden)]
899impl Reg32BitsConcat<18, 25> for Reg32Bits<7> {}
900#[doc(hidden)]
901impl Reg32BitsConcat<19, 26> for Reg32Bits<7> {}
902#[doc(hidden)]
903impl Reg32BitsConcat<20, 27> for Reg32Bits<7> {}
904#[doc(hidden)]
905impl Reg32BitsConcat<21, 28> for Reg32Bits<7> {}
906#[doc(hidden)]
907impl Reg32BitsConcat<22, 29> for Reg32Bits<7> {}
908#[doc(hidden)]
909impl Reg32BitsConcat<23, 30> for Reg32Bits<7> {}
910#[doc(hidden)]
911impl Reg32BitsConcat<24, 31> for Reg32Bits<7> {}
912#[doc(hidden)]
913impl Reg32BitsConcat<25, 32> for Reg32Bits<7> {}
914#[doc(hidden)]
915impl Reg32BitsDownCast<1> for Reg32Bits<8> {}
916#[doc(hidden)]
917impl Reg32BitsConcat<1, 9> for Reg32Bits<8> {}
918#[doc(hidden)]
919impl Reg32BitsDownCast<2> for Reg32Bits<8> {}
920#[doc(hidden)]
921impl Reg32BitsConcat<2, 10> for Reg32Bits<8> {}
922#[doc(hidden)]
923impl Reg32BitsDownCast<3> for Reg32Bits<8> {}
924#[doc(hidden)]
925impl Reg32BitsConcat<3, 11> for Reg32Bits<8> {}
926#[doc(hidden)]
927impl Reg32BitsDownCast<4> for Reg32Bits<8> {}
928#[doc(hidden)]
929impl Reg32BitsConcat<4, 12> for Reg32Bits<8> {}
930#[doc(hidden)]
931impl Reg32BitsDownCast<5> for Reg32Bits<8> {}
932#[doc(hidden)]
933impl Reg32BitsConcat<5, 13> for Reg32Bits<8> {}
934#[doc(hidden)]
935impl Reg32BitsDownCast<6> for Reg32Bits<8> {}
936#[doc(hidden)]
937impl Reg32BitsConcat<6, 14> for Reg32Bits<8> {}
938#[doc(hidden)]
939impl Reg32BitsDownCast<7> for Reg32Bits<8> {}
940#[doc(hidden)]
941impl Reg32BitsConcat<7, 15> for Reg32Bits<8> {}
942#[doc(hidden)]
943impl Reg32BitsDownCast<8> for Reg32Bits<8> {}
944#[doc(hidden)]
945impl Reg32BitsConcat<8, 16> for Reg32Bits<8> {}
946#[doc(hidden)]
947impl Reg32BitsConcat<9, 17> for Reg32Bits<8> {}
948#[doc(hidden)]
949impl Reg32BitsConcat<10, 18> for Reg32Bits<8> {}
950#[doc(hidden)]
951impl Reg32BitsConcat<11, 19> for Reg32Bits<8> {}
952#[doc(hidden)]
953impl Reg32BitsConcat<12, 20> for Reg32Bits<8> {}
954#[doc(hidden)]
955impl Reg32BitsConcat<13, 21> for Reg32Bits<8> {}
956#[doc(hidden)]
957impl Reg32BitsConcat<14, 22> for Reg32Bits<8> {}
958#[doc(hidden)]
959impl Reg32BitsConcat<15, 23> for Reg32Bits<8> {}
960#[doc(hidden)]
961impl Reg32BitsConcat<16, 24> for Reg32Bits<8> {}
962#[doc(hidden)]
963impl Reg32BitsConcat<17, 25> for Reg32Bits<8> {}
964#[doc(hidden)]
965impl Reg32BitsConcat<18, 26> for Reg32Bits<8> {}
966#[doc(hidden)]
967impl Reg32BitsConcat<19, 27> for Reg32Bits<8> {}
968#[doc(hidden)]
969impl Reg32BitsConcat<20, 28> for Reg32Bits<8> {}
970#[doc(hidden)]
971impl Reg32BitsConcat<21, 29> for Reg32Bits<8> {}
972#[doc(hidden)]
973impl Reg32BitsConcat<22, 30> for Reg32Bits<8> {}
974#[doc(hidden)]
975impl Reg32BitsConcat<23, 31> for Reg32Bits<8> {}
976#[doc(hidden)]
977impl Reg32BitsConcat<24, 32> for Reg32Bits<8> {}
978#[doc(hidden)]
979impl Reg32BitsDownCast<1> for Reg32Bits<9> {}
980#[doc(hidden)]
981impl Reg32BitsConcat<1, 10> for Reg32Bits<9> {}
982#[doc(hidden)]
983impl Reg32BitsDownCast<2> for Reg32Bits<9> {}
984#[doc(hidden)]
985impl Reg32BitsConcat<2, 11> for Reg32Bits<9> {}
986#[doc(hidden)]
987impl Reg32BitsDownCast<3> for Reg32Bits<9> {}
988#[doc(hidden)]
989impl Reg32BitsConcat<3, 12> for Reg32Bits<9> {}
990#[doc(hidden)]
991impl Reg32BitsDownCast<4> for Reg32Bits<9> {}
992#[doc(hidden)]
993impl Reg32BitsConcat<4, 13> for Reg32Bits<9> {}
994#[doc(hidden)]
995impl Reg32BitsDownCast<5> for Reg32Bits<9> {}
996#[doc(hidden)]
997impl Reg32BitsConcat<5, 14> for Reg32Bits<9> {}
998#[doc(hidden)]
999impl Reg32BitsDownCast<6> for Reg32Bits<9> {}
1000#[doc(hidden)]
1001impl Reg32BitsConcat<6, 15> for Reg32Bits<9> {}
1002#[doc(hidden)]
1003impl Reg32BitsDownCast<7> for Reg32Bits<9> {}
1004#[doc(hidden)]
1005impl Reg32BitsConcat<7, 16> for Reg32Bits<9> {}
1006#[doc(hidden)]
1007impl Reg32BitsDownCast<8> for Reg32Bits<9> {}
1008#[doc(hidden)]
1009impl Reg32BitsConcat<8, 17> for Reg32Bits<9> {}
1010#[doc(hidden)]
1011impl Reg32BitsDownCast<9> for Reg32Bits<9> {}
1012#[doc(hidden)]
1013impl Reg32BitsConcat<9, 18> for Reg32Bits<9> {}
1014#[doc(hidden)]
1015impl Reg32BitsConcat<10, 19> for Reg32Bits<9> {}
1016#[doc(hidden)]
1017impl Reg32BitsConcat<11, 20> for Reg32Bits<9> {}
1018#[doc(hidden)]
1019impl Reg32BitsConcat<12, 21> for Reg32Bits<9> {}
1020#[doc(hidden)]
1021impl Reg32BitsConcat<13, 22> for Reg32Bits<9> {}
1022#[doc(hidden)]
1023impl Reg32BitsConcat<14, 23> for Reg32Bits<9> {}
1024#[doc(hidden)]
1025impl Reg32BitsConcat<15, 24> for Reg32Bits<9> {}
1026#[doc(hidden)]
1027impl Reg32BitsConcat<16, 25> for Reg32Bits<9> {}
1028#[doc(hidden)]
1029impl Reg32BitsConcat<17, 26> for Reg32Bits<9> {}
1030#[doc(hidden)]
1031impl Reg32BitsConcat<18, 27> for Reg32Bits<9> {}
1032#[doc(hidden)]
1033impl Reg32BitsConcat<19, 28> for Reg32Bits<9> {}
1034#[doc(hidden)]
1035impl Reg32BitsConcat<20, 29> for Reg32Bits<9> {}
1036#[doc(hidden)]
1037impl Reg32BitsConcat<21, 30> for Reg32Bits<9> {}
1038#[doc(hidden)]
1039impl Reg32BitsConcat<22, 31> for Reg32Bits<9> {}
1040#[doc(hidden)]
1041impl Reg32BitsConcat<23, 32> for Reg32Bits<9> {}
1042#[doc(hidden)]
1043impl Reg32BitsDownCast<1> for Reg32Bits<10> {}
1044#[doc(hidden)]
1045impl Reg32BitsConcat<1, 11> for Reg32Bits<10> {}
1046#[doc(hidden)]
1047impl Reg32BitsDownCast<2> for Reg32Bits<10> {}
1048#[doc(hidden)]
1049impl Reg32BitsConcat<2, 12> for Reg32Bits<10> {}
1050#[doc(hidden)]
1051impl Reg32BitsDownCast<3> for Reg32Bits<10> {}
1052#[doc(hidden)]
1053impl Reg32BitsConcat<3, 13> for Reg32Bits<10> {}
1054#[doc(hidden)]
1055impl Reg32BitsDownCast<4> for Reg32Bits<10> {}
1056#[doc(hidden)]
1057impl Reg32BitsConcat<4, 14> for Reg32Bits<10> {}
1058#[doc(hidden)]
1059impl Reg32BitsDownCast<5> for Reg32Bits<10> {}
1060#[doc(hidden)]
1061impl Reg32BitsConcat<5, 15> for Reg32Bits<10> {}
1062#[doc(hidden)]
1063impl Reg32BitsDownCast<6> for Reg32Bits<10> {}
1064#[doc(hidden)]
1065impl Reg32BitsConcat<6, 16> for Reg32Bits<10> {}
1066#[doc(hidden)]
1067impl Reg32BitsDownCast<7> for Reg32Bits<10> {}
1068#[doc(hidden)]
1069impl Reg32BitsConcat<7, 17> for Reg32Bits<10> {}
1070#[doc(hidden)]
1071impl Reg32BitsDownCast<8> for Reg32Bits<10> {}
1072#[doc(hidden)]
1073impl Reg32BitsConcat<8, 18> for Reg32Bits<10> {}
1074#[doc(hidden)]
1075impl Reg32BitsDownCast<9> for Reg32Bits<10> {}
1076#[doc(hidden)]
1077impl Reg32BitsConcat<9, 19> for Reg32Bits<10> {}
1078#[doc(hidden)]
1079impl Reg32BitsDownCast<10> for Reg32Bits<10> {}
1080#[doc(hidden)]
1081impl Reg32BitsConcat<10, 20> for Reg32Bits<10> {}
1082#[doc(hidden)]
1083impl Reg32BitsConcat<11, 21> for Reg32Bits<10> {}
1084#[doc(hidden)]
1085impl Reg32BitsConcat<12, 22> for Reg32Bits<10> {}
1086#[doc(hidden)]
1087impl Reg32BitsConcat<13, 23> for Reg32Bits<10> {}
1088#[doc(hidden)]
1089impl Reg32BitsConcat<14, 24> for Reg32Bits<10> {}
1090#[doc(hidden)]
1091impl Reg32BitsConcat<15, 25> for Reg32Bits<10> {}
1092#[doc(hidden)]
1093impl Reg32BitsConcat<16, 26> for Reg32Bits<10> {}
1094#[doc(hidden)]
1095impl Reg32BitsConcat<17, 27> for Reg32Bits<10> {}
1096#[doc(hidden)]
1097impl Reg32BitsConcat<18, 28> for Reg32Bits<10> {}
1098#[doc(hidden)]
1099impl Reg32BitsConcat<19, 29> for Reg32Bits<10> {}
1100#[doc(hidden)]
1101impl Reg32BitsConcat<20, 30> for Reg32Bits<10> {}
1102#[doc(hidden)]
1103impl Reg32BitsConcat<21, 31> for Reg32Bits<10> {}
1104#[doc(hidden)]
1105impl Reg32BitsConcat<22, 32> for Reg32Bits<10> {}
1106#[doc(hidden)]
1107impl Reg32BitsDownCast<1> for Reg32Bits<11> {}
1108#[doc(hidden)]
1109impl Reg32BitsConcat<1, 12> for Reg32Bits<11> {}
1110#[doc(hidden)]
1111impl Reg32BitsDownCast<2> for Reg32Bits<11> {}
1112#[doc(hidden)]
1113impl Reg32BitsConcat<2, 13> for Reg32Bits<11> {}
1114#[doc(hidden)]
1115impl Reg32BitsDownCast<3> for Reg32Bits<11> {}
1116#[doc(hidden)]
1117impl Reg32BitsConcat<3, 14> for Reg32Bits<11> {}
1118#[doc(hidden)]
1119impl Reg32BitsDownCast<4> for Reg32Bits<11> {}
1120#[doc(hidden)]
1121impl Reg32BitsConcat<4, 15> for Reg32Bits<11> {}
1122#[doc(hidden)]
1123impl Reg32BitsDownCast<5> for Reg32Bits<11> {}
1124#[doc(hidden)]
1125impl Reg32BitsConcat<5, 16> for Reg32Bits<11> {}
1126#[doc(hidden)]
1127impl Reg32BitsDownCast<6> for Reg32Bits<11> {}
1128#[doc(hidden)]
1129impl Reg32BitsConcat<6, 17> for Reg32Bits<11> {}
1130#[doc(hidden)]
1131impl Reg32BitsDownCast<7> for Reg32Bits<11> {}
1132#[doc(hidden)]
1133impl Reg32BitsConcat<7, 18> for Reg32Bits<11> {}
1134#[doc(hidden)]
1135impl Reg32BitsDownCast<8> for Reg32Bits<11> {}
1136#[doc(hidden)]
1137impl Reg32BitsConcat<8, 19> for Reg32Bits<11> {}
1138#[doc(hidden)]
1139impl Reg32BitsDownCast<9> for Reg32Bits<11> {}
1140#[doc(hidden)]
1141impl Reg32BitsConcat<9, 20> for Reg32Bits<11> {}
1142#[doc(hidden)]
1143impl Reg32BitsDownCast<10> for Reg32Bits<11> {}
1144#[doc(hidden)]
1145impl Reg32BitsConcat<10, 21> for Reg32Bits<11> {}
1146#[doc(hidden)]
1147impl Reg32BitsDownCast<11> for Reg32Bits<11> {}
1148#[doc(hidden)]
1149impl Reg32BitsConcat<11, 22> for Reg32Bits<11> {}
1150#[doc(hidden)]
1151impl Reg32BitsConcat<12, 23> for Reg32Bits<11> {}
1152#[doc(hidden)]
1153impl Reg32BitsConcat<13, 24> for Reg32Bits<11> {}
1154#[doc(hidden)]
1155impl Reg32BitsConcat<14, 25> for Reg32Bits<11> {}
1156#[doc(hidden)]
1157impl Reg32BitsConcat<15, 26> for Reg32Bits<11> {}
1158#[doc(hidden)]
1159impl Reg32BitsConcat<16, 27> for Reg32Bits<11> {}
1160#[doc(hidden)]
1161impl Reg32BitsConcat<17, 28> for Reg32Bits<11> {}
1162#[doc(hidden)]
1163impl Reg32BitsConcat<18, 29> for Reg32Bits<11> {}
1164#[doc(hidden)]
1165impl Reg32BitsConcat<19, 30> for Reg32Bits<11> {}
1166#[doc(hidden)]
1167impl Reg32BitsConcat<20, 31> for Reg32Bits<11> {}
1168#[doc(hidden)]
1169impl Reg32BitsConcat<21, 32> for Reg32Bits<11> {}
1170#[doc(hidden)]
1171impl Reg32BitsDownCast<1> for Reg32Bits<12> {}
1172#[doc(hidden)]
1173impl Reg32BitsConcat<1, 13> for Reg32Bits<12> {}
1174#[doc(hidden)]
1175impl Reg32BitsDownCast<2> for Reg32Bits<12> {}
1176#[doc(hidden)]
1177impl Reg32BitsConcat<2, 14> for Reg32Bits<12> {}
1178#[doc(hidden)]
1179impl Reg32BitsDownCast<3> for Reg32Bits<12> {}
1180#[doc(hidden)]
1181impl Reg32BitsConcat<3, 15> for Reg32Bits<12> {}
1182#[doc(hidden)]
1183impl Reg32BitsDownCast<4> for Reg32Bits<12> {}
1184#[doc(hidden)]
1185impl Reg32BitsConcat<4, 16> for Reg32Bits<12> {}
1186#[doc(hidden)]
1187impl Reg32BitsDownCast<5> for Reg32Bits<12> {}
1188#[doc(hidden)]
1189impl Reg32BitsConcat<5, 17> for Reg32Bits<12> {}
1190#[doc(hidden)]
1191impl Reg32BitsDownCast<6> for Reg32Bits<12> {}
1192#[doc(hidden)]
1193impl Reg32BitsConcat<6, 18> for Reg32Bits<12> {}
1194#[doc(hidden)]
1195impl Reg32BitsDownCast<7> for Reg32Bits<12> {}
1196#[doc(hidden)]
1197impl Reg32BitsConcat<7, 19> for Reg32Bits<12> {}
1198#[doc(hidden)]
1199impl Reg32BitsDownCast<8> for Reg32Bits<12> {}
1200#[doc(hidden)]
1201impl Reg32BitsConcat<8, 20> for Reg32Bits<12> {}
1202#[doc(hidden)]
1203impl Reg32BitsDownCast<9> for Reg32Bits<12> {}
1204#[doc(hidden)]
1205impl Reg32BitsConcat<9, 21> for Reg32Bits<12> {}
1206#[doc(hidden)]
1207impl Reg32BitsDownCast<10> for Reg32Bits<12> {}
1208#[doc(hidden)]
1209impl Reg32BitsConcat<10, 22> for Reg32Bits<12> {}
1210#[doc(hidden)]
1211impl Reg32BitsDownCast<11> for Reg32Bits<12> {}
1212#[doc(hidden)]
1213impl Reg32BitsConcat<11, 23> for Reg32Bits<12> {}
1214#[doc(hidden)]
1215impl Reg32BitsDownCast<12> for Reg32Bits<12> {}
1216#[doc(hidden)]
1217impl Reg32BitsConcat<12, 24> for Reg32Bits<12> {}
1218#[doc(hidden)]
1219impl Reg32BitsConcat<13, 25> for Reg32Bits<12> {}
1220#[doc(hidden)]
1221impl Reg32BitsConcat<14, 26> for Reg32Bits<12> {}
1222#[doc(hidden)]
1223impl Reg32BitsConcat<15, 27> for Reg32Bits<12> {}
1224#[doc(hidden)]
1225impl Reg32BitsConcat<16, 28> for Reg32Bits<12> {}
1226#[doc(hidden)]
1227impl Reg32BitsConcat<17, 29> for Reg32Bits<12> {}
1228#[doc(hidden)]
1229impl Reg32BitsConcat<18, 30> for Reg32Bits<12> {}
1230#[doc(hidden)]
1231impl Reg32BitsConcat<19, 31> for Reg32Bits<12> {}
1232#[doc(hidden)]
1233impl Reg32BitsConcat<20, 32> for Reg32Bits<12> {}
1234#[doc(hidden)]
1235impl Reg32BitsDownCast<1> for Reg32Bits<13> {}
1236#[doc(hidden)]
1237impl Reg32BitsConcat<1, 14> for Reg32Bits<13> {}
1238#[doc(hidden)]
1239impl Reg32BitsDownCast<2> for Reg32Bits<13> {}
1240#[doc(hidden)]
1241impl Reg32BitsConcat<2, 15> for Reg32Bits<13> {}
1242#[doc(hidden)]
1243impl Reg32BitsDownCast<3> for Reg32Bits<13> {}
1244#[doc(hidden)]
1245impl Reg32BitsConcat<3, 16> for Reg32Bits<13> {}
1246#[doc(hidden)]
1247impl Reg32BitsDownCast<4> for Reg32Bits<13> {}
1248#[doc(hidden)]
1249impl Reg32BitsConcat<4, 17> for Reg32Bits<13> {}
1250#[doc(hidden)]
1251impl Reg32BitsDownCast<5> for Reg32Bits<13> {}
1252#[doc(hidden)]
1253impl Reg32BitsConcat<5, 18> for Reg32Bits<13> {}
1254#[doc(hidden)]
1255impl Reg32BitsDownCast<6> for Reg32Bits<13> {}
1256#[doc(hidden)]
1257impl Reg32BitsConcat<6, 19> for Reg32Bits<13> {}
1258#[doc(hidden)]
1259impl Reg32BitsDownCast<7> for Reg32Bits<13> {}
1260#[doc(hidden)]
1261impl Reg32BitsConcat<7, 20> for Reg32Bits<13> {}
1262#[doc(hidden)]
1263impl Reg32BitsDownCast<8> for Reg32Bits<13> {}
1264#[doc(hidden)]
1265impl Reg32BitsConcat<8, 21> for Reg32Bits<13> {}
1266#[doc(hidden)]
1267impl Reg32BitsDownCast<9> for Reg32Bits<13> {}
1268#[doc(hidden)]
1269impl Reg32BitsConcat<9, 22> for Reg32Bits<13> {}
1270#[doc(hidden)]
1271impl Reg32BitsDownCast<10> for Reg32Bits<13> {}
1272#[doc(hidden)]
1273impl Reg32BitsConcat<10, 23> for Reg32Bits<13> {}
1274#[doc(hidden)]
1275impl Reg32BitsDownCast<11> for Reg32Bits<13> {}
1276#[doc(hidden)]
1277impl Reg32BitsConcat<11, 24> for Reg32Bits<13> {}
1278#[doc(hidden)]
1279impl Reg32BitsDownCast<12> for Reg32Bits<13> {}
1280#[doc(hidden)]
1281impl Reg32BitsConcat<12, 25> for Reg32Bits<13> {}
1282#[doc(hidden)]
1283impl Reg32BitsDownCast<13> for Reg32Bits<13> {}
1284#[doc(hidden)]
1285impl Reg32BitsConcat<13, 26> for Reg32Bits<13> {}
1286#[doc(hidden)]
1287impl Reg32BitsConcat<14, 27> for Reg32Bits<13> {}
1288#[doc(hidden)]
1289impl Reg32BitsConcat<15, 28> for Reg32Bits<13> {}
1290#[doc(hidden)]
1291impl Reg32BitsConcat<16, 29> for Reg32Bits<13> {}
1292#[doc(hidden)]
1293impl Reg32BitsConcat<17, 30> for Reg32Bits<13> {}
1294#[doc(hidden)]
1295impl Reg32BitsConcat<18, 31> for Reg32Bits<13> {}
1296#[doc(hidden)]
1297impl Reg32BitsConcat<19, 32> for Reg32Bits<13> {}
1298#[doc(hidden)]
1299impl Reg32BitsDownCast<1> for Reg32Bits<14> {}
1300#[doc(hidden)]
1301impl Reg32BitsConcat<1, 15> for Reg32Bits<14> {}
1302#[doc(hidden)]
1303impl Reg32BitsDownCast<2> for Reg32Bits<14> {}
1304#[doc(hidden)]
1305impl Reg32BitsConcat<2, 16> for Reg32Bits<14> {}
1306#[doc(hidden)]
1307impl Reg32BitsDownCast<3> for Reg32Bits<14> {}
1308#[doc(hidden)]
1309impl Reg32BitsConcat<3, 17> for Reg32Bits<14> {}
1310#[doc(hidden)]
1311impl Reg32BitsDownCast<4> for Reg32Bits<14> {}
1312#[doc(hidden)]
1313impl Reg32BitsConcat<4, 18> for Reg32Bits<14> {}
1314#[doc(hidden)]
1315impl Reg32BitsDownCast<5> for Reg32Bits<14> {}
1316#[doc(hidden)]
1317impl Reg32BitsConcat<5, 19> for Reg32Bits<14> {}
1318#[doc(hidden)]
1319impl Reg32BitsDownCast<6> for Reg32Bits<14> {}
1320#[doc(hidden)]
1321impl Reg32BitsConcat<6, 20> for Reg32Bits<14> {}
1322#[doc(hidden)]
1323impl Reg32BitsDownCast<7> for Reg32Bits<14> {}
1324#[doc(hidden)]
1325impl Reg32BitsConcat<7, 21> for Reg32Bits<14> {}
1326#[doc(hidden)]
1327impl Reg32BitsDownCast<8> for Reg32Bits<14> {}
1328#[doc(hidden)]
1329impl Reg32BitsConcat<8, 22> for Reg32Bits<14> {}
1330#[doc(hidden)]
1331impl Reg32BitsDownCast<9> for Reg32Bits<14> {}
1332#[doc(hidden)]
1333impl Reg32BitsConcat<9, 23> for Reg32Bits<14> {}
1334#[doc(hidden)]
1335impl Reg32BitsDownCast<10> for Reg32Bits<14> {}
1336#[doc(hidden)]
1337impl Reg32BitsConcat<10, 24> for Reg32Bits<14> {}
1338#[doc(hidden)]
1339impl Reg32BitsDownCast<11> for Reg32Bits<14> {}
1340#[doc(hidden)]
1341impl Reg32BitsConcat<11, 25> for Reg32Bits<14> {}
1342#[doc(hidden)]
1343impl Reg32BitsDownCast<12> for Reg32Bits<14> {}
1344#[doc(hidden)]
1345impl Reg32BitsConcat<12, 26> for Reg32Bits<14> {}
1346#[doc(hidden)]
1347impl Reg32BitsDownCast<13> for Reg32Bits<14> {}
1348#[doc(hidden)]
1349impl Reg32BitsConcat<13, 27> for Reg32Bits<14> {}
1350#[doc(hidden)]
1351impl Reg32BitsDownCast<14> for Reg32Bits<14> {}
1352#[doc(hidden)]
1353impl Reg32BitsConcat<14, 28> for Reg32Bits<14> {}
1354#[doc(hidden)]
1355impl Reg32BitsConcat<15, 29> for Reg32Bits<14> {}
1356#[doc(hidden)]
1357impl Reg32BitsConcat<16, 30> for Reg32Bits<14> {}
1358#[doc(hidden)]
1359impl Reg32BitsConcat<17, 31> for Reg32Bits<14> {}
1360#[doc(hidden)]
1361impl Reg32BitsConcat<18, 32> for Reg32Bits<14> {}
1362#[doc(hidden)]
1363impl Reg32BitsDownCast<1> for Reg32Bits<15> {}
1364#[doc(hidden)]
1365impl Reg32BitsConcat<1, 16> for Reg32Bits<15> {}
1366#[doc(hidden)]
1367impl Reg32BitsDownCast<2> for Reg32Bits<15> {}
1368#[doc(hidden)]
1369impl Reg32BitsConcat<2, 17> for Reg32Bits<15> {}
1370#[doc(hidden)]
1371impl Reg32BitsDownCast<3> for Reg32Bits<15> {}
1372#[doc(hidden)]
1373impl Reg32BitsConcat<3, 18> for Reg32Bits<15> {}
1374#[doc(hidden)]
1375impl Reg32BitsDownCast<4> for Reg32Bits<15> {}
1376#[doc(hidden)]
1377impl Reg32BitsConcat<4, 19> for Reg32Bits<15> {}
1378#[doc(hidden)]
1379impl Reg32BitsDownCast<5> for Reg32Bits<15> {}
1380#[doc(hidden)]
1381impl Reg32BitsConcat<5, 20> for Reg32Bits<15> {}
1382#[doc(hidden)]
1383impl Reg32BitsDownCast<6> for Reg32Bits<15> {}
1384#[doc(hidden)]
1385impl Reg32BitsConcat<6, 21> for Reg32Bits<15> {}
1386#[doc(hidden)]
1387impl Reg32BitsDownCast<7> for Reg32Bits<15> {}
1388#[doc(hidden)]
1389impl Reg32BitsConcat<7, 22> for Reg32Bits<15> {}
1390#[doc(hidden)]
1391impl Reg32BitsDownCast<8> for Reg32Bits<15> {}
1392#[doc(hidden)]
1393impl Reg32BitsConcat<8, 23> for Reg32Bits<15> {}
1394#[doc(hidden)]
1395impl Reg32BitsDownCast<9> for Reg32Bits<15> {}
1396#[doc(hidden)]
1397impl Reg32BitsConcat<9, 24> for Reg32Bits<15> {}
1398#[doc(hidden)]
1399impl Reg32BitsDownCast<10> for Reg32Bits<15> {}
1400#[doc(hidden)]
1401impl Reg32BitsConcat<10, 25> for Reg32Bits<15> {}
1402#[doc(hidden)]
1403impl Reg32BitsDownCast<11> for Reg32Bits<15> {}
1404#[doc(hidden)]
1405impl Reg32BitsConcat<11, 26> for Reg32Bits<15> {}
1406#[doc(hidden)]
1407impl Reg32BitsDownCast<12> for Reg32Bits<15> {}
1408#[doc(hidden)]
1409impl Reg32BitsConcat<12, 27> for Reg32Bits<15> {}
1410#[doc(hidden)]
1411impl Reg32BitsDownCast<13> for Reg32Bits<15> {}
1412#[doc(hidden)]
1413impl Reg32BitsConcat<13, 28> for Reg32Bits<15> {}
1414#[doc(hidden)]
1415impl Reg32BitsDownCast<14> for Reg32Bits<15> {}
1416#[doc(hidden)]
1417impl Reg32BitsConcat<14, 29> for Reg32Bits<15> {}
1418#[doc(hidden)]
1419impl Reg32BitsDownCast<15> for Reg32Bits<15> {}
1420#[doc(hidden)]
1421impl Reg32BitsConcat<15, 30> for Reg32Bits<15> {}
1422#[doc(hidden)]
1423impl Reg32BitsConcat<16, 31> for Reg32Bits<15> {}
1424#[doc(hidden)]
1425impl Reg32BitsConcat<17, 32> for Reg32Bits<15> {}
1426#[doc(hidden)]
1427impl Reg32BitsDownCast<1> for Reg32Bits<16> {}
1428#[doc(hidden)]
1429impl Reg32BitsConcat<1, 17> for Reg32Bits<16> {}
1430#[doc(hidden)]
1431impl Reg32BitsDownCast<2> for Reg32Bits<16> {}
1432#[doc(hidden)]
1433impl Reg32BitsConcat<2, 18> for Reg32Bits<16> {}
1434#[doc(hidden)]
1435impl Reg32BitsDownCast<3> for Reg32Bits<16> {}
1436#[doc(hidden)]
1437impl Reg32BitsConcat<3, 19> for Reg32Bits<16> {}
1438#[doc(hidden)]
1439impl Reg32BitsDownCast<4> for Reg32Bits<16> {}
1440#[doc(hidden)]
1441impl Reg32BitsConcat<4, 20> for Reg32Bits<16> {}
1442#[doc(hidden)]
1443impl Reg32BitsDownCast<5> for Reg32Bits<16> {}
1444#[doc(hidden)]
1445impl Reg32BitsConcat<5, 21> for Reg32Bits<16> {}
1446#[doc(hidden)]
1447impl Reg32BitsDownCast<6> for Reg32Bits<16> {}
1448#[doc(hidden)]
1449impl Reg32BitsConcat<6, 22> for Reg32Bits<16> {}
1450#[doc(hidden)]
1451impl Reg32BitsDownCast<7> for Reg32Bits<16> {}
1452#[doc(hidden)]
1453impl Reg32BitsConcat<7, 23> for Reg32Bits<16> {}
1454#[doc(hidden)]
1455impl Reg32BitsDownCast<8> for Reg32Bits<16> {}
1456#[doc(hidden)]
1457impl Reg32BitsConcat<8, 24> for Reg32Bits<16> {}
1458#[doc(hidden)]
1459impl Reg32BitsDownCast<9> for Reg32Bits<16> {}
1460#[doc(hidden)]
1461impl Reg32BitsConcat<9, 25> for Reg32Bits<16> {}
1462#[doc(hidden)]
1463impl Reg32BitsDownCast<10> for Reg32Bits<16> {}
1464#[doc(hidden)]
1465impl Reg32BitsConcat<10, 26> for Reg32Bits<16> {}
1466#[doc(hidden)]
1467impl Reg32BitsDownCast<11> for Reg32Bits<16> {}
1468#[doc(hidden)]
1469impl Reg32BitsConcat<11, 27> for Reg32Bits<16> {}
1470#[doc(hidden)]
1471impl Reg32BitsDownCast<12> for Reg32Bits<16> {}
1472#[doc(hidden)]
1473impl Reg32BitsConcat<12, 28> for Reg32Bits<16> {}
1474#[doc(hidden)]
1475impl Reg32BitsDownCast<13> for Reg32Bits<16> {}
1476#[doc(hidden)]
1477impl Reg32BitsConcat<13, 29> for Reg32Bits<16> {}
1478#[doc(hidden)]
1479impl Reg32BitsDownCast<14> for Reg32Bits<16> {}
1480#[doc(hidden)]
1481impl Reg32BitsConcat<14, 30> for Reg32Bits<16> {}
1482#[doc(hidden)]
1483impl Reg32BitsDownCast<15> for Reg32Bits<16> {}
1484#[doc(hidden)]
1485impl Reg32BitsConcat<15, 31> for Reg32Bits<16> {}
1486#[doc(hidden)]
1487impl Reg32BitsDownCast<16> for Reg32Bits<16> {}
1488#[doc(hidden)]
1489impl Reg32BitsConcat<16, 32> for Reg32Bits<16> {}
1490#[doc(hidden)]
1491impl Reg32BitsDownCast<1> for Reg32Bits<17> {}
1492#[doc(hidden)]
1493impl Reg32BitsConcat<1, 18> for Reg32Bits<17> {}
1494#[doc(hidden)]
1495impl Reg32BitsDownCast<2> for Reg32Bits<17> {}
1496#[doc(hidden)]
1497impl Reg32BitsConcat<2, 19> for Reg32Bits<17> {}
1498#[doc(hidden)]
1499impl Reg32BitsDownCast<3> for Reg32Bits<17> {}
1500#[doc(hidden)]
1501impl Reg32BitsConcat<3, 20> for Reg32Bits<17> {}
1502#[doc(hidden)]
1503impl Reg32BitsDownCast<4> for Reg32Bits<17> {}
1504#[doc(hidden)]
1505impl Reg32BitsConcat<4, 21> for Reg32Bits<17> {}
1506#[doc(hidden)]
1507impl Reg32BitsDownCast<5> for Reg32Bits<17> {}
1508#[doc(hidden)]
1509impl Reg32BitsConcat<5, 22> for Reg32Bits<17> {}
1510#[doc(hidden)]
1511impl Reg32BitsDownCast<6> for Reg32Bits<17> {}
1512#[doc(hidden)]
1513impl Reg32BitsConcat<6, 23> for Reg32Bits<17> {}
1514#[doc(hidden)]
1515impl Reg32BitsDownCast<7> for Reg32Bits<17> {}
1516#[doc(hidden)]
1517impl Reg32BitsConcat<7, 24> for Reg32Bits<17> {}
1518#[doc(hidden)]
1519impl Reg32BitsDownCast<8> for Reg32Bits<17> {}
1520#[doc(hidden)]
1521impl Reg32BitsConcat<8, 25> for Reg32Bits<17> {}
1522#[doc(hidden)]
1523impl Reg32BitsDownCast<9> for Reg32Bits<17> {}
1524#[doc(hidden)]
1525impl Reg32BitsConcat<9, 26> for Reg32Bits<17> {}
1526#[doc(hidden)]
1527impl Reg32BitsDownCast<10> for Reg32Bits<17> {}
1528#[doc(hidden)]
1529impl Reg32BitsConcat<10, 27> for Reg32Bits<17> {}
1530#[doc(hidden)]
1531impl Reg32BitsDownCast<11> for Reg32Bits<17> {}
1532#[doc(hidden)]
1533impl Reg32BitsConcat<11, 28> for Reg32Bits<17> {}
1534#[doc(hidden)]
1535impl Reg32BitsDownCast<12> for Reg32Bits<17> {}
1536#[doc(hidden)]
1537impl Reg32BitsConcat<12, 29> for Reg32Bits<17> {}
1538#[doc(hidden)]
1539impl Reg32BitsDownCast<13> for Reg32Bits<17> {}
1540#[doc(hidden)]
1541impl Reg32BitsConcat<13, 30> for Reg32Bits<17> {}
1542#[doc(hidden)]
1543impl Reg32BitsDownCast<14> for Reg32Bits<17> {}
1544#[doc(hidden)]
1545impl Reg32BitsConcat<14, 31> for Reg32Bits<17> {}
1546#[doc(hidden)]
1547impl Reg32BitsDownCast<15> for Reg32Bits<17> {}
1548#[doc(hidden)]
1549impl Reg32BitsConcat<15, 32> for Reg32Bits<17> {}
1550#[doc(hidden)]
1551impl Reg32BitsDownCast<16> for Reg32Bits<17> {}
1552#[doc(hidden)]
1553impl Reg32BitsDownCast<17> for Reg32Bits<17> {}
1554#[doc(hidden)]
1555impl Reg32BitsDownCast<1> for Reg32Bits<18> {}
1556#[doc(hidden)]
1557impl Reg32BitsConcat<1, 19> for Reg32Bits<18> {}
1558#[doc(hidden)]
1559impl Reg32BitsDownCast<2> for Reg32Bits<18> {}
1560#[doc(hidden)]
1561impl Reg32BitsConcat<2, 20> for Reg32Bits<18> {}
1562#[doc(hidden)]
1563impl Reg32BitsDownCast<3> for Reg32Bits<18> {}
1564#[doc(hidden)]
1565impl Reg32BitsConcat<3, 21> for Reg32Bits<18> {}
1566#[doc(hidden)]
1567impl Reg32BitsDownCast<4> for Reg32Bits<18> {}
1568#[doc(hidden)]
1569impl Reg32BitsConcat<4, 22> for Reg32Bits<18> {}
1570#[doc(hidden)]
1571impl Reg32BitsDownCast<5> for Reg32Bits<18> {}
1572#[doc(hidden)]
1573impl Reg32BitsConcat<5, 23> for Reg32Bits<18> {}
1574#[doc(hidden)]
1575impl Reg32BitsDownCast<6> for Reg32Bits<18> {}
1576#[doc(hidden)]
1577impl Reg32BitsConcat<6, 24> for Reg32Bits<18> {}
1578#[doc(hidden)]
1579impl Reg32BitsDownCast<7> for Reg32Bits<18> {}
1580#[doc(hidden)]
1581impl Reg32BitsConcat<7, 25> for Reg32Bits<18> {}
1582#[doc(hidden)]
1583impl Reg32BitsDownCast<8> for Reg32Bits<18> {}
1584#[doc(hidden)]
1585impl Reg32BitsConcat<8, 26> for Reg32Bits<18> {}
1586#[doc(hidden)]
1587impl Reg32BitsDownCast<9> for Reg32Bits<18> {}
1588#[doc(hidden)]
1589impl Reg32BitsConcat<9, 27> for Reg32Bits<18> {}
1590#[doc(hidden)]
1591impl Reg32BitsDownCast<10> for Reg32Bits<18> {}
1592#[doc(hidden)]
1593impl Reg32BitsConcat<10, 28> for Reg32Bits<18> {}
1594#[doc(hidden)]
1595impl Reg32BitsDownCast<11> for Reg32Bits<18> {}
1596#[doc(hidden)]
1597impl Reg32BitsConcat<11, 29> for Reg32Bits<18> {}
1598#[doc(hidden)]
1599impl Reg32BitsDownCast<12> for Reg32Bits<18> {}
1600#[doc(hidden)]
1601impl Reg32BitsConcat<12, 30> for Reg32Bits<18> {}
1602#[doc(hidden)]
1603impl Reg32BitsDownCast<13> for Reg32Bits<18> {}
1604#[doc(hidden)]
1605impl Reg32BitsConcat<13, 31> for Reg32Bits<18> {}
1606#[doc(hidden)]
1607impl Reg32BitsDownCast<14> for Reg32Bits<18> {}
1608#[doc(hidden)]
1609impl Reg32BitsConcat<14, 32> for Reg32Bits<18> {}
1610#[doc(hidden)]
1611impl Reg32BitsDownCast<15> for Reg32Bits<18> {}
1612#[doc(hidden)]
1613impl Reg32BitsDownCast<16> for Reg32Bits<18> {}
1614#[doc(hidden)]
1615impl Reg32BitsDownCast<17> for Reg32Bits<18> {}
1616#[doc(hidden)]
1617impl Reg32BitsDownCast<18> for Reg32Bits<18> {}
1618#[doc(hidden)]
1619impl Reg32BitsDownCast<1> for Reg32Bits<19> {}
1620#[doc(hidden)]
1621impl Reg32BitsConcat<1, 20> for Reg32Bits<19> {}
1622#[doc(hidden)]
1623impl Reg32BitsDownCast<2> for Reg32Bits<19> {}
1624#[doc(hidden)]
1625impl Reg32BitsConcat<2, 21> for Reg32Bits<19> {}
1626#[doc(hidden)]
1627impl Reg32BitsDownCast<3> for Reg32Bits<19> {}
1628#[doc(hidden)]
1629impl Reg32BitsConcat<3, 22> for Reg32Bits<19> {}
1630#[doc(hidden)]
1631impl Reg32BitsDownCast<4> for Reg32Bits<19> {}
1632#[doc(hidden)]
1633impl Reg32BitsConcat<4, 23> for Reg32Bits<19> {}
1634#[doc(hidden)]
1635impl Reg32BitsDownCast<5> for Reg32Bits<19> {}
1636#[doc(hidden)]
1637impl Reg32BitsConcat<5, 24> for Reg32Bits<19> {}
1638#[doc(hidden)]
1639impl Reg32BitsDownCast<6> for Reg32Bits<19> {}
1640#[doc(hidden)]
1641impl Reg32BitsConcat<6, 25> for Reg32Bits<19> {}
1642#[doc(hidden)]
1643impl Reg32BitsDownCast<7> for Reg32Bits<19> {}
1644#[doc(hidden)]
1645impl Reg32BitsConcat<7, 26> for Reg32Bits<19> {}
1646#[doc(hidden)]
1647impl Reg32BitsDownCast<8> for Reg32Bits<19> {}
1648#[doc(hidden)]
1649impl Reg32BitsConcat<8, 27> for Reg32Bits<19> {}
1650#[doc(hidden)]
1651impl Reg32BitsDownCast<9> for Reg32Bits<19> {}
1652#[doc(hidden)]
1653impl Reg32BitsConcat<9, 28> for Reg32Bits<19> {}
1654#[doc(hidden)]
1655impl Reg32BitsDownCast<10> for Reg32Bits<19> {}
1656#[doc(hidden)]
1657impl Reg32BitsConcat<10, 29> for Reg32Bits<19> {}
1658#[doc(hidden)]
1659impl Reg32BitsDownCast<11> for Reg32Bits<19> {}
1660#[doc(hidden)]
1661impl Reg32BitsConcat<11, 30> for Reg32Bits<19> {}
1662#[doc(hidden)]
1663impl Reg32BitsDownCast<12> for Reg32Bits<19> {}
1664#[doc(hidden)]
1665impl Reg32BitsConcat<12, 31> for Reg32Bits<19> {}
1666#[doc(hidden)]
1667impl Reg32BitsDownCast<13> for Reg32Bits<19> {}
1668#[doc(hidden)]
1669impl Reg32BitsConcat<13, 32> for Reg32Bits<19> {}
1670#[doc(hidden)]
1671impl Reg32BitsDownCast<14> for Reg32Bits<19> {}
1672#[doc(hidden)]
1673impl Reg32BitsDownCast<15> for Reg32Bits<19> {}
1674#[doc(hidden)]
1675impl Reg32BitsDownCast<16> for Reg32Bits<19> {}
1676#[doc(hidden)]
1677impl Reg32BitsDownCast<17> for Reg32Bits<19> {}
1678#[doc(hidden)]
1679impl Reg32BitsDownCast<18> for Reg32Bits<19> {}
1680#[doc(hidden)]
1681impl Reg32BitsDownCast<19> for Reg32Bits<19> {}
1682#[doc(hidden)]
1683impl Reg32BitsDownCast<1> for Reg32Bits<20> {}
1684#[doc(hidden)]
1685impl Reg32BitsConcat<1, 21> for Reg32Bits<20> {}
1686#[doc(hidden)]
1687impl Reg32BitsDownCast<2> for Reg32Bits<20> {}
1688#[doc(hidden)]
1689impl Reg32BitsConcat<2, 22> for Reg32Bits<20> {}
1690#[doc(hidden)]
1691impl Reg32BitsDownCast<3> for Reg32Bits<20> {}
1692#[doc(hidden)]
1693impl Reg32BitsConcat<3, 23> for Reg32Bits<20> {}
1694#[doc(hidden)]
1695impl Reg32BitsDownCast<4> for Reg32Bits<20> {}
1696#[doc(hidden)]
1697impl Reg32BitsConcat<4, 24> for Reg32Bits<20> {}
1698#[doc(hidden)]
1699impl Reg32BitsDownCast<5> for Reg32Bits<20> {}
1700#[doc(hidden)]
1701impl Reg32BitsConcat<5, 25> for Reg32Bits<20> {}
1702#[doc(hidden)]
1703impl Reg32BitsDownCast<6> for Reg32Bits<20> {}
1704#[doc(hidden)]
1705impl Reg32BitsConcat<6, 26> for Reg32Bits<20> {}
1706#[doc(hidden)]
1707impl Reg32BitsDownCast<7> for Reg32Bits<20> {}
1708#[doc(hidden)]
1709impl Reg32BitsConcat<7, 27> for Reg32Bits<20> {}
1710#[doc(hidden)]
1711impl Reg32BitsDownCast<8> for Reg32Bits<20> {}
1712#[doc(hidden)]
1713impl Reg32BitsConcat<8, 28> for Reg32Bits<20> {}
1714#[doc(hidden)]
1715impl Reg32BitsDownCast<9> for Reg32Bits<20> {}
1716#[doc(hidden)]
1717impl Reg32BitsConcat<9, 29> for Reg32Bits<20> {}
1718#[doc(hidden)]
1719impl Reg32BitsDownCast<10> for Reg32Bits<20> {}
1720#[doc(hidden)]
1721impl Reg32BitsConcat<10, 30> for Reg32Bits<20> {}
1722#[doc(hidden)]
1723impl Reg32BitsDownCast<11> for Reg32Bits<20> {}
1724#[doc(hidden)]
1725impl Reg32BitsConcat<11, 31> for Reg32Bits<20> {}
1726#[doc(hidden)]
1727impl Reg32BitsDownCast<12> for Reg32Bits<20> {}
1728#[doc(hidden)]
1729impl Reg32BitsConcat<12, 32> for Reg32Bits<20> {}
1730#[doc(hidden)]
1731impl Reg32BitsDownCast<13> for Reg32Bits<20> {}
1732#[doc(hidden)]
1733impl Reg32BitsDownCast<14> for Reg32Bits<20> {}
1734#[doc(hidden)]
1735impl Reg32BitsDownCast<15> for Reg32Bits<20> {}
1736#[doc(hidden)]
1737impl Reg32BitsDownCast<16> for Reg32Bits<20> {}
1738#[doc(hidden)]
1739impl Reg32BitsDownCast<17> for Reg32Bits<20> {}
1740#[doc(hidden)]
1741impl Reg32BitsDownCast<18> for Reg32Bits<20> {}
1742#[doc(hidden)]
1743impl Reg32BitsDownCast<19> for Reg32Bits<20> {}
1744#[doc(hidden)]
1745impl Reg32BitsDownCast<20> for Reg32Bits<20> {}
1746#[doc(hidden)]
1747impl Reg32BitsDownCast<1> for Reg32Bits<21> {}
1748#[doc(hidden)]
1749impl Reg32BitsConcat<1, 22> for Reg32Bits<21> {}
1750#[doc(hidden)]
1751impl Reg32BitsDownCast<2> for Reg32Bits<21> {}
1752#[doc(hidden)]
1753impl Reg32BitsConcat<2, 23> for Reg32Bits<21> {}
1754#[doc(hidden)]
1755impl Reg32BitsDownCast<3> for Reg32Bits<21> {}
1756#[doc(hidden)]
1757impl Reg32BitsConcat<3, 24> for Reg32Bits<21> {}
1758#[doc(hidden)]
1759impl Reg32BitsDownCast<4> for Reg32Bits<21> {}
1760#[doc(hidden)]
1761impl Reg32BitsConcat<4, 25> for Reg32Bits<21> {}
1762#[doc(hidden)]
1763impl Reg32BitsDownCast<5> for Reg32Bits<21> {}
1764#[doc(hidden)]
1765impl Reg32BitsConcat<5, 26> for Reg32Bits<21> {}
1766#[doc(hidden)]
1767impl Reg32BitsDownCast<6> for Reg32Bits<21> {}
1768#[doc(hidden)]
1769impl Reg32BitsConcat<6, 27> for Reg32Bits<21> {}
1770#[doc(hidden)]
1771impl Reg32BitsDownCast<7> for Reg32Bits<21> {}
1772#[doc(hidden)]
1773impl Reg32BitsConcat<7, 28> for Reg32Bits<21> {}
1774#[doc(hidden)]
1775impl Reg32BitsDownCast<8> for Reg32Bits<21> {}
1776#[doc(hidden)]
1777impl Reg32BitsConcat<8, 29> for Reg32Bits<21> {}
1778#[doc(hidden)]
1779impl Reg32BitsDownCast<9> for Reg32Bits<21> {}
1780#[doc(hidden)]
1781impl Reg32BitsConcat<9, 30> for Reg32Bits<21> {}
1782#[doc(hidden)]
1783impl Reg32BitsDownCast<10> for Reg32Bits<21> {}
1784#[doc(hidden)]
1785impl Reg32BitsConcat<10, 31> for Reg32Bits<21> {}
1786#[doc(hidden)]
1787impl Reg32BitsDownCast<11> for Reg32Bits<21> {}
1788#[doc(hidden)]
1789impl Reg32BitsConcat<11, 32> for Reg32Bits<21> {}
1790#[doc(hidden)]
1791impl Reg32BitsDownCast<12> for Reg32Bits<21> {}
1792#[doc(hidden)]
1793impl Reg32BitsDownCast<13> for Reg32Bits<21> {}
1794#[doc(hidden)]
1795impl Reg32BitsDownCast<14> for Reg32Bits<21> {}
1796#[doc(hidden)]
1797impl Reg32BitsDownCast<15> for Reg32Bits<21> {}
1798#[doc(hidden)]
1799impl Reg32BitsDownCast<16> for Reg32Bits<21> {}
1800#[doc(hidden)]
1801impl Reg32BitsDownCast<17> for Reg32Bits<21> {}
1802#[doc(hidden)]
1803impl Reg32BitsDownCast<18> for Reg32Bits<21> {}
1804#[doc(hidden)]
1805impl Reg32BitsDownCast<19> for Reg32Bits<21> {}
1806#[doc(hidden)]
1807impl Reg32BitsDownCast<20> for Reg32Bits<21> {}
1808#[doc(hidden)]
1809impl Reg32BitsDownCast<21> for Reg32Bits<21> {}
1810#[doc(hidden)]
1811impl Reg32BitsDownCast<1> for Reg32Bits<22> {}
1812#[doc(hidden)]
1813impl Reg32BitsConcat<1, 23> for Reg32Bits<22> {}
1814#[doc(hidden)]
1815impl Reg32BitsDownCast<2> for Reg32Bits<22> {}
1816#[doc(hidden)]
1817impl Reg32BitsConcat<2, 24> for Reg32Bits<22> {}
1818#[doc(hidden)]
1819impl Reg32BitsDownCast<3> for Reg32Bits<22> {}
1820#[doc(hidden)]
1821impl Reg32BitsConcat<3, 25> for Reg32Bits<22> {}
1822#[doc(hidden)]
1823impl Reg32BitsDownCast<4> for Reg32Bits<22> {}
1824#[doc(hidden)]
1825impl Reg32BitsConcat<4, 26> for Reg32Bits<22> {}
1826#[doc(hidden)]
1827impl Reg32BitsDownCast<5> for Reg32Bits<22> {}
1828#[doc(hidden)]
1829impl Reg32BitsConcat<5, 27> for Reg32Bits<22> {}
1830#[doc(hidden)]
1831impl Reg32BitsDownCast<6> for Reg32Bits<22> {}
1832#[doc(hidden)]
1833impl Reg32BitsConcat<6, 28> for Reg32Bits<22> {}
1834#[doc(hidden)]
1835impl Reg32BitsDownCast<7> for Reg32Bits<22> {}
1836#[doc(hidden)]
1837impl Reg32BitsConcat<7, 29> for Reg32Bits<22> {}
1838#[doc(hidden)]
1839impl Reg32BitsDownCast<8> for Reg32Bits<22> {}
1840#[doc(hidden)]
1841impl Reg32BitsConcat<8, 30> for Reg32Bits<22> {}
1842#[doc(hidden)]
1843impl Reg32BitsDownCast<9> for Reg32Bits<22> {}
1844#[doc(hidden)]
1845impl Reg32BitsConcat<9, 31> for Reg32Bits<22> {}
1846#[doc(hidden)]
1847impl Reg32BitsDownCast<10> for Reg32Bits<22> {}
1848#[doc(hidden)]
1849impl Reg32BitsConcat<10, 32> for Reg32Bits<22> {}
1850#[doc(hidden)]
1851impl Reg32BitsDownCast<11> for Reg32Bits<22> {}
1852#[doc(hidden)]
1853impl Reg32BitsDownCast<12> for Reg32Bits<22> {}
1854#[doc(hidden)]
1855impl Reg32BitsDownCast<13> for Reg32Bits<22> {}
1856#[doc(hidden)]
1857impl Reg32BitsDownCast<14> for Reg32Bits<22> {}
1858#[doc(hidden)]
1859impl Reg32BitsDownCast<15> for Reg32Bits<22> {}
1860#[doc(hidden)]
1861impl Reg32BitsDownCast<16> for Reg32Bits<22> {}
1862#[doc(hidden)]
1863impl Reg32BitsDownCast<17> for Reg32Bits<22> {}
1864#[doc(hidden)]
1865impl Reg32BitsDownCast<18> for Reg32Bits<22> {}
1866#[doc(hidden)]
1867impl Reg32BitsDownCast<19> for Reg32Bits<22> {}
1868#[doc(hidden)]
1869impl Reg32BitsDownCast<20> for Reg32Bits<22> {}
1870#[doc(hidden)]
1871impl Reg32BitsDownCast<21> for Reg32Bits<22> {}
1872#[doc(hidden)]
1873impl Reg32BitsDownCast<22> for Reg32Bits<22> {}
1874#[doc(hidden)]
1875impl Reg32BitsDownCast<1> for Reg32Bits<23> {}
1876#[doc(hidden)]
1877impl Reg32BitsConcat<1, 24> for Reg32Bits<23> {}
1878#[doc(hidden)]
1879impl Reg32BitsDownCast<2> for Reg32Bits<23> {}
1880#[doc(hidden)]
1881impl Reg32BitsConcat<2, 25> for Reg32Bits<23> {}
1882#[doc(hidden)]
1883impl Reg32BitsDownCast<3> for Reg32Bits<23> {}
1884#[doc(hidden)]
1885impl Reg32BitsConcat<3, 26> for Reg32Bits<23> {}
1886#[doc(hidden)]
1887impl Reg32BitsDownCast<4> for Reg32Bits<23> {}
1888#[doc(hidden)]
1889impl Reg32BitsConcat<4, 27> for Reg32Bits<23> {}
1890#[doc(hidden)]
1891impl Reg32BitsDownCast<5> for Reg32Bits<23> {}
1892#[doc(hidden)]
1893impl Reg32BitsConcat<5, 28> for Reg32Bits<23> {}
1894#[doc(hidden)]
1895impl Reg32BitsDownCast<6> for Reg32Bits<23> {}
1896#[doc(hidden)]
1897impl Reg32BitsConcat<6, 29> for Reg32Bits<23> {}
1898#[doc(hidden)]
1899impl Reg32BitsDownCast<7> for Reg32Bits<23> {}
1900#[doc(hidden)]
1901impl Reg32BitsConcat<7, 30> for Reg32Bits<23> {}
1902#[doc(hidden)]
1903impl Reg32BitsDownCast<8> for Reg32Bits<23> {}
1904#[doc(hidden)]
1905impl Reg32BitsConcat<8, 31> for Reg32Bits<23> {}
1906#[doc(hidden)]
1907impl Reg32BitsDownCast<9> for Reg32Bits<23> {}
1908#[doc(hidden)]
1909impl Reg32BitsConcat<9, 32> for Reg32Bits<23> {}
1910#[doc(hidden)]
1911impl Reg32BitsDownCast<10> for Reg32Bits<23> {}
1912#[doc(hidden)]
1913impl Reg32BitsDownCast<11> for Reg32Bits<23> {}
1914#[doc(hidden)]
1915impl Reg32BitsDownCast<12> for Reg32Bits<23> {}
1916#[doc(hidden)]
1917impl Reg32BitsDownCast<13> for Reg32Bits<23> {}
1918#[doc(hidden)]
1919impl Reg32BitsDownCast<14> for Reg32Bits<23> {}
1920#[doc(hidden)]
1921impl Reg32BitsDownCast<15> for Reg32Bits<23> {}
1922#[doc(hidden)]
1923impl Reg32BitsDownCast<16> for Reg32Bits<23> {}
1924#[doc(hidden)]
1925impl Reg32BitsDownCast<17> for Reg32Bits<23> {}
1926#[doc(hidden)]
1927impl Reg32BitsDownCast<18> for Reg32Bits<23> {}
1928#[doc(hidden)]
1929impl Reg32BitsDownCast<19> for Reg32Bits<23> {}
1930#[doc(hidden)]
1931impl Reg32BitsDownCast<20> for Reg32Bits<23> {}
1932#[doc(hidden)]
1933impl Reg32BitsDownCast<21> for Reg32Bits<23> {}
1934#[doc(hidden)]
1935impl Reg32BitsDownCast<22> for Reg32Bits<23> {}
1936#[doc(hidden)]
1937impl Reg32BitsDownCast<23> for Reg32Bits<23> {}
1938#[doc(hidden)]
1939impl Reg32BitsDownCast<1> for Reg32Bits<24> {}
1940#[doc(hidden)]
1941impl Reg32BitsConcat<1, 25> for Reg32Bits<24> {}
1942#[doc(hidden)]
1943impl Reg32BitsDownCast<2> for Reg32Bits<24> {}
1944#[doc(hidden)]
1945impl Reg32BitsConcat<2, 26> for Reg32Bits<24> {}
1946#[doc(hidden)]
1947impl Reg32BitsDownCast<3> for Reg32Bits<24> {}
1948#[doc(hidden)]
1949impl Reg32BitsConcat<3, 27> for Reg32Bits<24> {}
1950#[doc(hidden)]
1951impl Reg32BitsDownCast<4> for Reg32Bits<24> {}
1952#[doc(hidden)]
1953impl Reg32BitsConcat<4, 28> for Reg32Bits<24> {}
1954#[doc(hidden)]
1955impl Reg32BitsDownCast<5> for Reg32Bits<24> {}
1956#[doc(hidden)]
1957impl Reg32BitsConcat<5, 29> for Reg32Bits<24> {}
1958#[doc(hidden)]
1959impl Reg32BitsDownCast<6> for Reg32Bits<24> {}
1960#[doc(hidden)]
1961impl Reg32BitsConcat<6, 30> for Reg32Bits<24> {}
1962#[doc(hidden)]
1963impl Reg32BitsDownCast<7> for Reg32Bits<24> {}
1964#[doc(hidden)]
1965impl Reg32BitsConcat<7, 31> for Reg32Bits<24> {}
1966#[doc(hidden)]
1967impl Reg32BitsDownCast<8> for Reg32Bits<24> {}
1968#[doc(hidden)]
1969impl Reg32BitsConcat<8, 32> for Reg32Bits<24> {}
1970#[doc(hidden)]
1971impl Reg32BitsDownCast<9> for Reg32Bits<24> {}
1972#[doc(hidden)]
1973impl Reg32BitsDownCast<10> for Reg32Bits<24> {}
1974#[doc(hidden)]
1975impl Reg32BitsDownCast<11> for Reg32Bits<24> {}
1976#[doc(hidden)]
1977impl Reg32BitsDownCast<12> for Reg32Bits<24> {}
1978#[doc(hidden)]
1979impl Reg32BitsDownCast<13> for Reg32Bits<24> {}
1980#[doc(hidden)]
1981impl Reg32BitsDownCast<14> for Reg32Bits<24> {}
1982#[doc(hidden)]
1983impl Reg32BitsDownCast<15> for Reg32Bits<24> {}
1984#[doc(hidden)]
1985impl Reg32BitsDownCast<16> for Reg32Bits<24> {}
1986#[doc(hidden)]
1987impl Reg32BitsDownCast<17> for Reg32Bits<24> {}
1988#[doc(hidden)]
1989impl Reg32BitsDownCast<18> for Reg32Bits<24> {}
1990#[doc(hidden)]
1991impl Reg32BitsDownCast<19> for Reg32Bits<24> {}
1992#[doc(hidden)]
1993impl Reg32BitsDownCast<20> for Reg32Bits<24> {}
1994#[doc(hidden)]
1995impl Reg32BitsDownCast<21> for Reg32Bits<24> {}
1996#[doc(hidden)]
1997impl Reg32BitsDownCast<22> for Reg32Bits<24> {}
1998#[doc(hidden)]
1999impl Reg32BitsDownCast<23> for Reg32Bits<24> {}
2000#[doc(hidden)]
2001impl Reg32BitsDownCast<24> for Reg32Bits<24> {}
2002#[doc(hidden)]
2003impl Reg32BitsDownCast<1> for Reg32Bits<25> {}
2004#[doc(hidden)]
2005impl Reg32BitsConcat<1, 26> for Reg32Bits<25> {}
2006#[doc(hidden)]
2007impl Reg32BitsDownCast<2> for Reg32Bits<25> {}
2008#[doc(hidden)]
2009impl Reg32BitsConcat<2, 27> for Reg32Bits<25> {}
2010#[doc(hidden)]
2011impl Reg32BitsDownCast<3> for Reg32Bits<25> {}
2012#[doc(hidden)]
2013impl Reg32BitsConcat<3, 28> for Reg32Bits<25> {}
2014#[doc(hidden)]
2015impl Reg32BitsDownCast<4> for Reg32Bits<25> {}
2016#[doc(hidden)]
2017impl Reg32BitsConcat<4, 29> for Reg32Bits<25> {}
2018#[doc(hidden)]
2019impl Reg32BitsDownCast<5> for Reg32Bits<25> {}
2020#[doc(hidden)]
2021impl Reg32BitsConcat<5, 30> for Reg32Bits<25> {}
2022#[doc(hidden)]
2023impl Reg32BitsDownCast<6> for Reg32Bits<25> {}
2024#[doc(hidden)]
2025impl Reg32BitsConcat<6, 31> for Reg32Bits<25> {}
2026#[doc(hidden)]
2027impl Reg32BitsDownCast<7> for Reg32Bits<25> {}
2028#[doc(hidden)]
2029impl Reg32BitsConcat<7, 32> for Reg32Bits<25> {}
2030#[doc(hidden)]
2031impl Reg32BitsDownCast<8> for Reg32Bits<25> {}
2032#[doc(hidden)]
2033impl Reg32BitsDownCast<9> for Reg32Bits<25> {}
2034#[doc(hidden)]
2035impl Reg32BitsDownCast<10> for Reg32Bits<25> {}
2036#[doc(hidden)]
2037impl Reg32BitsDownCast<11> for Reg32Bits<25> {}
2038#[doc(hidden)]
2039impl Reg32BitsDownCast<12> for Reg32Bits<25> {}
2040#[doc(hidden)]
2041impl Reg32BitsDownCast<13> for Reg32Bits<25> {}
2042#[doc(hidden)]
2043impl Reg32BitsDownCast<14> for Reg32Bits<25> {}
2044#[doc(hidden)]
2045impl Reg32BitsDownCast<15> for Reg32Bits<25> {}
2046#[doc(hidden)]
2047impl Reg32BitsDownCast<16> for Reg32Bits<25> {}
2048#[doc(hidden)]
2049impl Reg32BitsDownCast<17> for Reg32Bits<25> {}
2050#[doc(hidden)]
2051impl Reg32BitsDownCast<18> for Reg32Bits<25> {}
2052#[doc(hidden)]
2053impl Reg32BitsDownCast<19> for Reg32Bits<25> {}
2054#[doc(hidden)]
2055impl Reg32BitsDownCast<20> for Reg32Bits<25> {}
2056#[doc(hidden)]
2057impl Reg32BitsDownCast<21> for Reg32Bits<25> {}
2058#[doc(hidden)]
2059impl Reg32BitsDownCast<22> for Reg32Bits<25> {}
2060#[doc(hidden)]
2061impl Reg32BitsDownCast<23> for Reg32Bits<25> {}
2062#[doc(hidden)]
2063impl Reg32BitsDownCast<24> for Reg32Bits<25> {}
2064#[doc(hidden)]
2065impl Reg32BitsDownCast<25> for Reg32Bits<25> {}
2066#[doc(hidden)]
2067impl Reg32BitsDownCast<1> for Reg32Bits<26> {}
2068#[doc(hidden)]
2069impl Reg32BitsConcat<1, 27> for Reg32Bits<26> {}
2070#[doc(hidden)]
2071impl Reg32BitsDownCast<2> for Reg32Bits<26> {}
2072#[doc(hidden)]
2073impl Reg32BitsConcat<2, 28> for Reg32Bits<26> {}
2074#[doc(hidden)]
2075impl Reg32BitsDownCast<3> for Reg32Bits<26> {}
2076#[doc(hidden)]
2077impl Reg32BitsConcat<3, 29> for Reg32Bits<26> {}
2078#[doc(hidden)]
2079impl Reg32BitsDownCast<4> for Reg32Bits<26> {}
2080#[doc(hidden)]
2081impl Reg32BitsConcat<4, 30> for Reg32Bits<26> {}
2082#[doc(hidden)]
2083impl Reg32BitsDownCast<5> for Reg32Bits<26> {}
2084#[doc(hidden)]
2085impl Reg32BitsConcat<5, 31> for Reg32Bits<26> {}
2086#[doc(hidden)]
2087impl Reg32BitsDownCast<6> for Reg32Bits<26> {}
2088#[doc(hidden)]
2089impl Reg32BitsConcat<6, 32> for Reg32Bits<26> {}
2090#[doc(hidden)]
2091impl Reg32BitsDownCast<7> for Reg32Bits<26> {}
2092#[doc(hidden)]
2093impl Reg32BitsDownCast<8> for Reg32Bits<26> {}
2094#[doc(hidden)]
2095impl Reg32BitsDownCast<9> for Reg32Bits<26> {}
2096#[doc(hidden)]
2097impl Reg32BitsDownCast<10> for Reg32Bits<26> {}
2098#[doc(hidden)]
2099impl Reg32BitsDownCast<11> for Reg32Bits<26> {}
2100#[doc(hidden)]
2101impl Reg32BitsDownCast<12> for Reg32Bits<26> {}
2102#[doc(hidden)]
2103impl Reg32BitsDownCast<13> for Reg32Bits<26> {}
2104#[doc(hidden)]
2105impl Reg32BitsDownCast<14> for Reg32Bits<26> {}
2106#[doc(hidden)]
2107impl Reg32BitsDownCast<15> for Reg32Bits<26> {}
2108#[doc(hidden)]
2109impl Reg32BitsDownCast<16> for Reg32Bits<26> {}
2110#[doc(hidden)]
2111impl Reg32BitsDownCast<17> for Reg32Bits<26> {}
2112#[doc(hidden)]
2113impl Reg32BitsDownCast<18> for Reg32Bits<26> {}
2114#[doc(hidden)]
2115impl Reg32BitsDownCast<19> for Reg32Bits<26> {}
2116#[doc(hidden)]
2117impl Reg32BitsDownCast<20> for Reg32Bits<26> {}
2118#[doc(hidden)]
2119impl Reg32BitsDownCast<21> for Reg32Bits<26> {}
2120#[doc(hidden)]
2121impl Reg32BitsDownCast<22> for Reg32Bits<26> {}
2122#[doc(hidden)]
2123impl Reg32BitsDownCast<23> for Reg32Bits<26> {}
2124#[doc(hidden)]
2125impl Reg32BitsDownCast<24> for Reg32Bits<26> {}
2126#[doc(hidden)]
2127impl Reg32BitsDownCast<25> for Reg32Bits<26> {}
2128#[doc(hidden)]
2129impl Reg32BitsDownCast<26> for Reg32Bits<26> {}
2130#[doc(hidden)]
2131impl Reg32BitsDownCast<1> for Reg32Bits<27> {}
2132#[doc(hidden)]
2133impl Reg32BitsConcat<1, 28> for Reg32Bits<27> {}
2134#[doc(hidden)]
2135impl Reg32BitsDownCast<2> for Reg32Bits<27> {}
2136#[doc(hidden)]
2137impl Reg32BitsConcat<2, 29> for Reg32Bits<27> {}
2138#[doc(hidden)]
2139impl Reg32BitsDownCast<3> for Reg32Bits<27> {}
2140#[doc(hidden)]
2141impl Reg32BitsConcat<3, 30> for Reg32Bits<27> {}
2142#[doc(hidden)]
2143impl Reg32BitsDownCast<4> for Reg32Bits<27> {}
2144#[doc(hidden)]
2145impl Reg32BitsConcat<4, 31> for Reg32Bits<27> {}
2146#[doc(hidden)]
2147impl Reg32BitsDownCast<5> for Reg32Bits<27> {}
2148#[doc(hidden)]
2149impl Reg32BitsConcat<5, 32> for Reg32Bits<27> {}
2150#[doc(hidden)]
2151impl Reg32BitsDownCast<6> for Reg32Bits<27> {}
2152#[doc(hidden)]
2153impl Reg32BitsDownCast<7> for Reg32Bits<27> {}
2154#[doc(hidden)]
2155impl Reg32BitsDownCast<8> for Reg32Bits<27> {}
2156#[doc(hidden)]
2157impl Reg32BitsDownCast<9> for Reg32Bits<27> {}
2158#[doc(hidden)]
2159impl Reg32BitsDownCast<10> for Reg32Bits<27> {}
2160#[doc(hidden)]
2161impl Reg32BitsDownCast<11> for Reg32Bits<27> {}
2162#[doc(hidden)]
2163impl Reg32BitsDownCast<12> for Reg32Bits<27> {}
2164#[doc(hidden)]
2165impl Reg32BitsDownCast<13> for Reg32Bits<27> {}
2166#[doc(hidden)]
2167impl Reg32BitsDownCast<14> for Reg32Bits<27> {}
2168#[doc(hidden)]
2169impl Reg32BitsDownCast<15> for Reg32Bits<27> {}
2170#[doc(hidden)]
2171impl Reg32BitsDownCast<16> for Reg32Bits<27> {}
2172#[doc(hidden)]
2173impl Reg32BitsDownCast<17> for Reg32Bits<27> {}
2174#[doc(hidden)]
2175impl Reg32BitsDownCast<18> for Reg32Bits<27> {}
2176#[doc(hidden)]
2177impl Reg32BitsDownCast<19> for Reg32Bits<27> {}
2178#[doc(hidden)]
2179impl Reg32BitsDownCast<20> for Reg32Bits<27> {}
2180#[doc(hidden)]
2181impl Reg32BitsDownCast<21> for Reg32Bits<27> {}
2182#[doc(hidden)]
2183impl Reg32BitsDownCast<22> for Reg32Bits<27> {}
2184#[doc(hidden)]
2185impl Reg32BitsDownCast<23> for Reg32Bits<27> {}
2186#[doc(hidden)]
2187impl Reg32BitsDownCast<24> for Reg32Bits<27> {}
2188#[doc(hidden)]
2189impl Reg32BitsDownCast<25> for Reg32Bits<27> {}
2190#[doc(hidden)]
2191impl Reg32BitsDownCast<26> for Reg32Bits<27> {}
2192#[doc(hidden)]
2193impl Reg32BitsDownCast<27> for Reg32Bits<27> {}
2194#[doc(hidden)]
2195impl Reg32BitsDownCast<1> for Reg32Bits<28> {}
2196#[doc(hidden)]
2197impl Reg32BitsConcat<1, 29> for Reg32Bits<28> {}
2198#[doc(hidden)]
2199impl Reg32BitsDownCast<2> for Reg32Bits<28> {}
2200#[doc(hidden)]
2201impl Reg32BitsConcat<2, 30> for Reg32Bits<28> {}
2202#[doc(hidden)]
2203impl Reg32BitsDownCast<3> for Reg32Bits<28> {}
2204#[doc(hidden)]
2205impl Reg32BitsConcat<3, 31> for Reg32Bits<28> {}
2206#[doc(hidden)]
2207impl Reg32BitsDownCast<4> for Reg32Bits<28> {}
2208#[doc(hidden)]
2209impl Reg32BitsConcat<4, 32> for Reg32Bits<28> {}
2210#[doc(hidden)]
2211impl Reg32BitsDownCast<5> for Reg32Bits<28> {}
2212#[doc(hidden)]
2213impl Reg32BitsDownCast<6> for Reg32Bits<28> {}
2214#[doc(hidden)]
2215impl Reg32BitsDownCast<7> for Reg32Bits<28> {}
2216#[doc(hidden)]
2217impl Reg32BitsDownCast<8> for Reg32Bits<28> {}
2218#[doc(hidden)]
2219impl Reg32BitsDownCast<9> for Reg32Bits<28> {}
2220#[doc(hidden)]
2221impl Reg32BitsDownCast<10> for Reg32Bits<28> {}
2222#[doc(hidden)]
2223impl Reg32BitsDownCast<11> for Reg32Bits<28> {}
2224#[doc(hidden)]
2225impl Reg32BitsDownCast<12> for Reg32Bits<28> {}
2226#[doc(hidden)]
2227impl Reg32BitsDownCast<13> for Reg32Bits<28> {}
2228#[doc(hidden)]
2229impl Reg32BitsDownCast<14> for Reg32Bits<28> {}
2230#[doc(hidden)]
2231impl Reg32BitsDownCast<15> for Reg32Bits<28> {}
2232#[doc(hidden)]
2233impl Reg32BitsDownCast<16> for Reg32Bits<28> {}
2234#[doc(hidden)]
2235impl Reg32BitsDownCast<17> for Reg32Bits<28> {}
2236#[doc(hidden)]
2237impl Reg32BitsDownCast<18> for Reg32Bits<28> {}
2238#[doc(hidden)]
2239impl Reg32BitsDownCast<19> for Reg32Bits<28> {}
2240#[doc(hidden)]
2241impl Reg32BitsDownCast<20> for Reg32Bits<28> {}
2242#[doc(hidden)]
2243impl Reg32BitsDownCast<21> for Reg32Bits<28> {}
2244#[doc(hidden)]
2245impl Reg32BitsDownCast<22> for Reg32Bits<28> {}
2246#[doc(hidden)]
2247impl Reg32BitsDownCast<23> for Reg32Bits<28> {}
2248#[doc(hidden)]
2249impl Reg32BitsDownCast<24> for Reg32Bits<28> {}
2250#[doc(hidden)]
2251impl Reg32BitsDownCast<25> for Reg32Bits<28> {}
2252#[doc(hidden)]
2253impl Reg32BitsDownCast<26> for Reg32Bits<28> {}
2254#[doc(hidden)]
2255impl Reg32BitsDownCast<27> for Reg32Bits<28> {}
2256#[doc(hidden)]
2257impl Reg32BitsDownCast<28> for Reg32Bits<28> {}
2258#[doc(hidden)]
2259impl Reg32BitsDownCast<1> for Reg32Bits<29> {}
2260#[doc(hidden)]
2261impl Reg32BitsConcat<1, 30> for Reg32Bits<29> {}
2262#[doc(hidden)]
2263impl Reg32BitsDownCast<2> for Reg32Bits<29> {}
2264#[doc(hidden)]
2265impl Reg32BitsConcat<2, 31> for Reg32Bits<29> {}
2266#[doc(hidden)]
2267impl Reg32BitsDownCast<3> for Reg32Bits<29> {}
2268#[doc(hidden)]
2269impl Reg32BitsConcat<3, 32> for Reg32Bits<29> {}
2270#[doc(hidden)]
2271impl Reg32BitsDownCast<4> for Reg32Bits<29> {}
2272#[doc(hidden)]
2273impl Reg32BitsDownCast<5> for Reg32Bits<29> {}
2274#[doc(hidden)]
2275impl Reg32BitsDownCast<6> for Reg32Bits<29> {}
2276#[doc(hidden)]
2277impl Reg32BitsDownCast<7> for Reg32Bits<29> {}
2278#[doc(hidden)]
2279impl Reg32BitsDownCast<8> for Reg32Bits<29> {}
2280#[doc(hidden)]
2281impl Reg32BitsDownCast<9> for Reg32Bits<29> {}
2282#[doc(hidden)]
2283impl Reg32BitsDownCast<10> for Reg32Bits<29> {}
2284#[doc(hidden)]
2285impl Reg32BitsDownCast<11> for Reg32Bits<29> {}
2286#[doc(hidden)]
2287impl Reg32BitsDownCast<12> for Reg32Bits<29> {}
2288#[doc(hidden)]
2289impl Reg32BitsDownCast<13> for Reg32Bits<29> {}
2290#[doc(hidden)]
2291impl Reg32BitsDownCast<14> for Reg32Bits<29> {}
2292#[doc(hidden)]
2293impl Reg32BitsDownCast<15> for Reg32Bits<29> {}
2294#[doc(hidden)]
2295impl Reg32BitsDownCast<16> for Reg32Bits<29> {}
2296#[doc(hidden)]
2297impl Reg32BitsDownCast<17> for Reg32Bits<29> {}
2298#[doc(hidden)]
2299impl Reg32BitsDownCast<18> for Reg32Bits<29> {}
2300#[doc(hidden)]
2301impl Reg32BitsDownCast<19> for Reg32Bits<29> {}
2302#[doc(hidden)]
2303impl Reg32BitsDownCast<20> for Reg32Bits<29> {}
2304#[doc(hidden)]
2305impl Reg32BitsDownCast<21> for Reg32Bits<29> {}
2306#[doc(hidden)]
2307impl Reg32BitsDownCast<22> for Reg32Bits<29> {}
2308#[doc(hidden)]
2309impl Reg32BitsDownCast<23> for Reg32Bits<29> {}
2310#[doc(hidden)]
2311impl Reg32BitsDownCast<24> for Reg32Bits<29> {}
2312#[doc(hidden)]
2313impl Reg32BitsDownCast<25> for Reg32Bits<29> {}
2314#[doc(hidden)]
2315impl Reg32BitsDownCast<26> for Reg32Bits<29> {}
2316#[doc(hidden)]
2317impl Reg32BitsDownCast<27> for Reg32Bits<29> {}
2318#[doc(hidden)]
2319impl Reg32BitsDownCast<28> for Reg32Bits<29> {}
2320#[doc(hidden)]
2321impl Reg32BitsDownCast<29> for Reg32Bits<29> {}
2322#[doc(hidden)]
2323impl Reg32BitsDownCast<1> for Reg32Bits<30> {}
2324#[doc(hidden)]
2325impl Reg32BitsConcat<1, 31> for Reg32Bits<30> {}
2326#[doc(hidden)]
2327impl Reg32BitsDownCast<2> for Reg32Bits<30> {}
2328#[doc(hidden)]
2329impl Reg32BitsConcat<2, 32> for Reg32Bits<30> {}
2330#[doc(hidden)]
2331impl Reg32BitsDownCast<3> for Reg32Bits<30> {}
2332#[doc(hidden)]
2333impl Reg32BitsDownCast<4> for Reg32Bits<30> {}
2334#[doc(hidden)]
2335impl Reg32BitsDownCast<5> for Reg32Bits<30> {}
2336#[doc(hidden)]
2337impl Reg32BitsDownCast<6> for Reg32Bits<30> {}
2338#[doc(hidden)]
2339impl Reg32BitsDownCast<7> for Reg32Bits<30> {}
2340#[doc(hidden)]
2341impl Reg32BitsDownCast<8> for Reg32Bits<30> {}
2342#[doc(hidden)]
2343impl Reg32BitsDownCast<9> for Reg32Bits<30> {}
2344#[doc(hidden)]
2345impl Reg32BitsDownCast<10> for Reg32Bits<30> {}
2346#[doc(hidden)]
2347impl Reg32BitsDownCast<11> for Reg32Bits<30> {}
2348#[doc(hidden)]
2349impl Reg32BitsDownCast<12> for Reg32Bits<30> {}
2350#[doc(hidden)]
2351impl Reg32BitsDownCast<13> for Reg32Bits<30> {}
2352#[doc(hidden)]
2353impl Reg32BitsDownCast<14> for Reg32Bits<30> {}
2354#[doc(hidden)]
2355impl Reg32BitsDownCast<15> for Reg32Bits<30> {}
2356#[doc(hidden)]
2357impl Reg32BitsDownCast<16> for Reg32Bits<30> {}
2358#[doc(hidden)]
2359impl Reg32BitsDownCast<17> for Reg32Bits<30> {}
2360#[doc(hidden)]
2361impl Reg32BitsDownCast<18> for Reg32Bits<30> {}
2362#[doc(hidden)]
2363impl Reg32BitsDownCast<19> for Reg32Bits<30> {}
2364#[doc(hidden)]
2365impl Reg32BitsDownCast<20> for Reg32Bits<30> {}
2366#[doc(hidden)]
2367impl Reg32BitsDownCast<21> for Reg32Bits<30> {}
2368#[doc(hidden)]
2369impl Reg32BitsDownCast<22> for Reg32Bits<30> {}
2370#[doc(hidden)]
2371impl Reg32BitsDownCast<23> for Reg32Bits<30> {}
2372#[doc(hidden)]
2373impl Reg32BitsDownCast<24> for Reg32Bits<30> {}
2374#[doc(hidden)]
2375impl Reg32BitsDownCast<25> for Reg32Bits<30> {}
2376#[doc(hidden)]
2377impl Reg32BitsDownCast<26> for Reg32Bits<30> {}
2378#[doc(hidden)]
2379impl Reg32BitsDownCast<27> for Reg32Bits<30> {}
2380#[doc(hidden)]
2381impl Reg32BitsDownCast<28> for Reg32Bits<30> {}
2382#[doc(hidden)]
2383impl Reg32BitsDownCast<29> for Reg32Bits<30> {}
2384#[doc(hidden)]
2385impl Reg32BitsDownCast<30> for Reg32Bits<30> {}
2386#[doc(hidden)]
2387impl Reg32BitsDownCast<1> for Reg32Bits<31> {}
2388#[doc(hidden)]
2389impl Reg32BitsConcat<1, 32> for Reg32Bits<31> {}
2390#[doc(hidden)]
2391impl Reg32BitsDownCast<2> for Reg32Bits<31> {}
2392#[doc(hidden)]
2393impl Reg32BitsDownCast<3> for Reg32Bits<31> {}
2394#[doc(hidden)]
2395impl Reg32BitsDownCast<4> for Reg32Bits<31> {}
2396#[doc(hidden)]
2397impl Reg32BitsDownCast<5> for Reg32Bits<31> {}
2398#[doc(hidden)]
2399impl Reg32BitsDownCast<6> for Reg32Bits<31> {}
2400#[doc(hidden)]
2401impl Reg32BitsDownCast<7> for Reg32Bits<31> {}
2402#[doc(hidden)]
2403impl Reg32BitsDownCast<8> for Reg32Bits<31> {}
2404#[doc(hidden)]
2405impl Reg32BitsDownCast<9> for Reg32Bits<31> {}
2406#[doc(hidden)]
2407impl Reg32BitsDownCast<10> for Reg32Bits<31> {}
2408#[doc(hidden)]
2409impl Reg32BitsDownCast<11> for Reg32Bits<31> {}
2410#[doc(hidden)]
2411impl Reg32BitsDownCast<12> for Reg32Bits<31> {}
2412#[doc(hidden)]
2413impl Reg32BitsDownCast<13> for Reg32Bits<31> {}
2414#[doc(hidden)]
2415impl Reg32BitsDownCast<14> for Reg32Bits<31> {}
2416#[doc(hidden)]
2417impl Reg32BitsDownCast<15> for Reg32Bits<31> {}
2418#[doc(hidden)]
2419impl Reg32BitsDownCast<16> for Reg32Bits<31> {}
2420#[doc(hidden)]
2421impl Reg32BitsDownCast<17> for Reg32Bits<31> {}
2422#[doc(hidden)]
2423impl Reg32BitsDownCast<18> for Reg32Bits<31> {}
2424#[doc(hidden)]
2425impl Reg32BitsDownCast<19> for Reg32Bits<31> {}
2426#[doc(hidden)]
2427impl Reg32BitsDownCast<20> for Reg32Bits<31> {}
2428#[doc(hidden)]
2429impl Reg32BitsDownCast<21> for Reg32Bits<31> {}
2430#[doc(hidden)]
2431impl Reg32BitsDownCast<22> for Reg32Bits<31> {}
2432#[doc(hidden)]
2433impl Reg32BitsDownCast<23> for Reg32Bits<31> {}
2434#[doc(hidden)]
2435impl Reg32BitsDownCast<24> for Reg32Bits<31> {}
2436#[doc(hidden)]
2437impl Reg32BitsDownCast<25> for Reg32Bits<31> {}
2438#[doc(hidden)]
2439impl Reg32BitsDownCast<26> for Reg32Bits<31> {}
2440#[doc(hidden)]
2441impl Reg32BitsDownCast<27> for Reg32Bits<31> {}
2442#[doc(hidden)]
2443impl Reg32BitsDownCast<28> for Reg32Bits<31> {}
2444#[doc(hidden)]
2445impl Reg32BitsDownCast<29> for Reg32Bits<31> {}
2446#[doc(hidden)]
2447impl Reg32BitsDownCast<30> for Reg32Bits<31> {}
2448#[doc(hidden)]
2449impl Reg32BitsDownCast<31> for Reg32Bits<31> {}
2450#[doc(hidden)]
2451impl Reg32BitsDownCast<1> for Reg32Bits<32> {}
2452#[doc(hidden)]
2453impl Reg32BitsDownCast<2> for Reg32Bits<32> {}
2454#[doc(hidden)]
2455impl Reg32BitsDownCast<3> for Reg32Bits<32> {}
2456#[doc(hidden)]
2457impl Reg32BitsDownCast<4> for Reg32Bits<32> {}
2458#[doc(hidden)]
2459impl Reg32BitsDownCast<5> for Reg32Bits<32> {}
2460#[doc(hidden)]
2461impl Reg32BitsDownCast<6> for Reg32Bits<32> {}
2462#[doc(hidden)]
2463impl Reg32BitsDownCast<7> for Reg32Bits<32> {}
2464#[doc(hidden)]
2465impl Reg32BitsDownCast<8> for Reg32Bits<32> {}
2466#[doc(hidden)]
2467impl Reg32BitsDownCast<9> for Reg32Bits<32> {}
2468#[doc(hidden)]
2469impl Reg32BitsDownCast<10> for Reg32Bits<32> {}
2470#[doc(hidden)]
2471impl Reg32BitsDownCast<11> for Reg32Bits<32> {}
2472#[doc(hidden)]
2473impl Reg32BitsDownCast<12> for Reg32Bits<32> {}
2474#[doc(hidden)]
2475impl Reg32BitsDownCast<13> for Reg32Bits<32> {}
2476#[doc(hidden)]
2477impl Reg32BitsDownCast<14> for Reg32Bits<32> {}
2478#[doc(hidden)]
2479impl Reg32BitsDownCast<15> for Reg32Bits<32> {}
2480#[doc(hidden)]
2481impl Reg32BitsDownCast<16> for Reg32Bits<32> {}
2482#[doc(hidden)]
2483impl Reg32BitsDownCast<17> for Reg32Bits<32> {}
2484#[doc(hidden)]
2485impl Reg32BitsDownCast<18> for Reg32Bits<32> {}
2486#[doc(hidden)]
2487impl Reg32BitsDownCast<19> for Reg32Bits<32> {}
2488#[doc(hidden)]
2489impl Reg32BitsDownCast<20> for Reg32Bits<32> {}
2490#[doc(hidden)]
2491impl Reg32BitsDownCast<21> for Reg32Bits<32> {}
2492#[doc(hidden)]
2493impl Reg32BitsDownCast<22> for Reg32Bits<32> {}
2494#[doc(hidden)]
2495impl Reg32BitsDownCast<23> for Reg32Bits<32> {}
2496#[doc(hidden)]
2497impl Reg32BitsDownCast<24> for Reg32Bits<32> {}
2498#[doc(hidden)]
2499impl Reg32BitsDownCast<25> for Reg32Bits<32> {}
2500#[doc(hidden)]
2501impl Reg32BitsDownCast<26> for Reg32Bits<32> {}
2502#[doc(hidden)]
2503impl Reg32BitsDownCast<27> for Reg32Bits<32> {}
2504#[doc(hidden)]
2505impl Reg32BitsDownCast<28> for Reg32Bits<32> {}
2506#[doc(hidden)]
2507impl Reg32BitsDownCast<29> for Reg32Bits<32> {}
2508#[doc(hidden)]
2509impl Reg32BitsDownCast<30> for Reg32Bits<32> {}
2510#[doc(hidden)]
2511impl Reg32BitsDownCast<31> for Reg32Bits<32> {}
2512#[doc(hidden)]
2513impl Reg32BitsDownCast<32> for Reg32Bits<32> {}
2514#[doc(hidden)]
2515impl PartialEq<BaseType> for Reg32Bits<2> {
2516    fn eq(&self, other: &BaseType) -> bool {
2517        self.0 == *other
2518    }
2519}
2520#[doc(hidden)]
2521impl PartialEq<BaseType> for Reg32Bits<3> {
2522    fn eq(&self, other: &BaseType) -> bool {
2523        self.0 == *other
2524    }
2525}
2526#[doc(hidden)]
2527impl PartialEq<BaseType> for Reg32Bits<4> {
2528    fn eq(&self, other: &BaseType) -> bool {
2529        self.0 == *other
2530    }
2531}
2532#[doc(hidden)]
2533impl PartialEq<BaseType> for Reg32Bits<5> {
2534    fn eq(&self, other: &BaseType) -> bool {
2535        self.0 == *other
2536    }
2537}
2538#[doc(hidden)]
2539impl PartialEq<BaseType> for Reg32Bits<6> {
2540    fn eq(&self, other: &BaseType) -> bool {
2541        self.0 == *other
2542    }
2543}
2544#[doc(hidden)]
2545impl PartialEq<BaseType> for Reg32Bits<7> {
2546    fn eq(&self, other: &BaseType) -> bool {
2547        self.0 == *other
2548    }
2549}
2550#[doc(hidden)]
2551impl PartialEq<BaseType> for Reg32Bits<8> {
2552    fn eq(&self, other: &BaseType) -> bool {
2553        self.0 == *other
2554    }
2555}
2556#[doc(hidden)]
2557impl PartialEq<BaseType> for Reg32Bits<9> {
2558    fn eq(&self, other: &BaseType) -> bool {
2559        self.0 == *other
2560    }
2561}
2562#[doc(hidden)]
2563impl PartialEq<BaseType> for Reg32Bits<10> {
2564    fn eq(&self, other: &BaseType) -> bool {
2565        self.0 == *other
2566    }
2567}
2568#[doc(hidden)]
2569impl PartialEq<BaseType> for Reg32Bits<11> {
2570    fn eq(&self, other: &BaseType) -> bool {
2571        self.0 == *other
2572    }
2573}
2574#[doc(hidden)]
2575impl PartialEq<BaseType> for Reg32Bits<12> {
2576    fn eq(&self, other: &BaseType) -> bool {
2577        self.0 == *other
2578    }
2579}
2580#[doc(hidden)]
2581impl PartialEq<BaseType> for Reg32Bits<13> {
2582    fn eq(&self, other: &BaseType) -> bool {
2583        self.0 == *other
2584    }
2585}
2586#[doc(hidden)]
2587impl PartialEq<BaseType> for Reg32Bits<14> {
2588    fn eq(&self, other: &BaseType) -> bool {
2589        self.0 == *other
2590    }
2591}
2592#[doc(hidden)]
2593impl PartialEq<BaseType> for Reg32Bits<15> {
2594    fn eq(&self, other: &BaseType) -> bool {
2595        self.0 == *other
2596    }
2597}
2598#[doc(hidden)]
2599impl PartialEq<BaseType> for Reg32Bits<16> {
2600    fn eq(&self, other: &BaseType) -> bool {
2601        self.0 == *other
2602    }
2603}
2604#[doc(hidden)]
2605impl PartialEq<BaseType> for Reg32Bits<17> {
2606    fn eq(&self, other: &BaseType) -> bool {
2607        self.0 == *other
2608    }
2609}
2610#[doc(hidden)]
2611impl PartialEq<BaseType> for Reg32Bits<18> {
2612    fn eq(&self, other: &BaseType) -> bool {
2613        self.0 == *other
2614    }
2615}
2616#[doc(hidden)]
2617impl PartialEq<BaseType> for Reg32Bits<19> {
2618    fn eq(&self, other: &BaseType) -> bool {
2619        self.0 == *other
2620    }
2621}
2622#[doc(hidden)]
2623impl PartialEq<BaseType> for Reg32Bits<20> {
2624    fn eq(&self, other: &BaseType) -> bool {
2625        self.0 == *other
2626    }
2627}
2628#[doc(hidden)]
2629impl PartialEq<BaseType> for Reg32Bits<21> {
2630    fn eq(&self, other: &BaseType) -> bool {
2631        self.0 == *other
2632    }
2633}
2634#[doc(hidden)]
2635impl PartialEq<BaseType> for Reg32Bits<22> {
2636    fn eq(&self, other: &BaseType) -> bool {
2637        self.0 == *other
2638    }
2639}
2640#[doc(hidden)]
2641impl PartialEq<BaseType> for Reg32Bits<23> {
2642    fn eq(&self, other: &BaseType) -> bool {
2643        self.0 == *other
2644    }
2645}
2646#[doc(hidden)]
2647impl PartialEq<BaseType> for Reg32Bits<24> {
2648    fn eq(&self, other: &BaseType) -> bool {
2649        self.0 == *other
2650    }
2651}
2652#[doc(hidden)]
2653impl PartialEq<BaseType> for Reg32Bits<25> {
2654    fn eq(&self, other: &BaseType) -> bool {
2655        self.0 == *other
2656    }
2657}
2658#[doc(hidden)]
2659impl PartialEq<BaseType> for Reg32Bits<26> {
2660    fn eq(&self, other: &BaseType) -> bool {
2661        self.0 == *other
2662    }
2663}
2664#[doc(hidden)]
2665impl PartialEq<BaseType> for Reg32Bits<27> {
2666    fn eq(&self, other: &BaseType) -> bool {
2667        self.0 == *other
2668    }
2669}
2670#[doc(hidden)]
2671impl PartialEq<BaseType> for Reg32Bits<28> {
2672    fn eq(&self, other: &BaseType) -> bool {
2673        self.0 == *other
2674    }
2675}
2676#[doc(hidden)]
2677impl PartialEq<BaseType> for Reg32Bits<29> {
2678    fn eq(&self, other: &BaseType) -> bool {
2679        self.0 == *other
2680    }
2681}
2682#[doc(hidden)]
2683impl PartialEq<BaseType> for Reg32Bits<30> {
2684    fn eq(&self, other: &BaseType) -> bool {
2685        self.0 == *other
2686    }
2687}
2688#[doc(hidden)]
2689impl PartialEq<BaseType> for Reg32Bits<31> {
2690    fn eq(&self, other: &BaseType) -> bool {
2691        self.0 == *other
2692    }
2693}
2694#[doc(hidden)]
2695impl PartialEq<BaseType> for Reg32Bits<32> {
2696    fn eq(&self, other: &BaseType) -> bool {
2697        self.0 == *other
2698    }
2699}
2700#[doc(hidden)]
2701#[cfg(feature = "8bit")]
2702impl From<crate::reg8::Reg8Bits<1>> for crate::reg32::Reg32Bits<1> {
2703    fn from(item: crate::reg8::Reg8Bits<1>) -> Self {
2704        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<1>>::
2705            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
2706    }
2707}
2708#[doc(hidden)]
2709impl From<crate::reg32::Reg32Bits<1>> for u8 {
2710    fn from(item: crate::reg32::Reg32Bits<1>) -> Self {
2711        item.0 as u8
2712    }
2713}
2714#[doc(hidden)]
2715#[cfg(feature = "16bit")]
2716impl From<crate::reg16::Reg16Bits<1>> for crate::reg32::Reg32Bits<1> {
2717    fn from(item: crate::reg16::Reg16Bits<1>) -> Self {
2718        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<1>>::
2719            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
2720    }
2721}
2722#[doc(hidden)]
2723impl From<crate::reg32::Reg32Bits<1>> for u16 {
2724    fn from(item: crate::reg32::Reg32Bits<1>) -> Self {
2725        item.0 as u16
2726    }
2727}
2728#[doc(hidden)]
2729#[cfg(feature = "64bit")]
2730impl From<crate::reg64::Reg64Bits<1>> for crate::reg32::Reg32Bits<1> {
2731    fn from(item: crate::reg64::Reg64Bits<1>) -> Self {
2732        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<1>>::
2733            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
2734    }
2735}
2736#[doc(hidden)]
2737impl From<crate::reg32::Reg32Bits<1>> for u64 {
2738    fn from(item: crate::reg32::Reg32Bits<1>) -> Self {
2739        item.0 as u64
2740    }
2741}
2742#[doc(hidden)]
2743#[cfg(feature = "8bit")]
2744impl From<crate::reg8::Reg8Bits<2>> for crate::reg32::Reg32Bits<2> {
2745    fn from(item: crate::reg8::Reg8Bits<2>) -> Self {
2746        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<2>>::
2747            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
2748    }
2749}
2750#[doc(hidden)]
2751impl From<crate::reg32::Reg32Bits<2>> for u8 {
2752    fn from(item: crate::reg32::Reg32Bits<2>) -> Self {
2753        item.0 as u8
2754    }
2755}
2756#[doc(hidden)]
2757#[cfg(feature = "16bit")]
2758impl From<crate::reg16::Reg16Bits<2>> for crate::reg32::Reg32Bits<2> {
2759    fn from(item: crate::reg16::Reg16Bits<2>) -> Self {
2760        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<2>>::
2761            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
2762    }
2763}
2764#[doc(hidden)]
2765impl From<crate::reg32::Reg32Bits<2>> for u16 {
2766    fn from(item: crate::reg32::Reg32Bits<2>) -> Self {
2767        item.0 as u16
2768    }
2769}
2770#[doc(hidden)]
2771#[cfg(feature = "64bit")]
2772impl From<crate::reg64::Reg64Bits<2>> for crate::reg32::Reg32Bits<2> {
2773    fn from(item: crate::reg64::Reg64Bits<2>) -> Self {
2774        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<2>>::
2775            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
2776    }
2777}
2778#[doc(hidden)]
2779impl From<crate::reg32::Reg32Bits<2>> for u64 {
2780    fn from(item: crate::reg32::Reg32Bits<2>) -> Self {
2781        item.0 as u64
2782    }
2783}
2784#[doc(hidden)]
2785#[cfg(feature = "8bit")]
2786impl From<crate::reg8::Reg8Bits<3>> for crate::reg32::Reg32Bits<3> {
2787    fn from(item: crate::reg8::Reg8Bits<3>) -> Self {
2788        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<3>>::
2789            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
2790    }
2791}
2792#[doc(hidden)]
2793impl From<crate::reg32::Reg32Bits<3>> for u8 {
2794    fn from(item: crate::reg32::Reg32Bits<3>) -> Self {
2795        item.0 as u8
2796    }
2797}
2798#[doc(hidden)]
2799#[cfg(feature = "16bit")]
2800impl From<crate::reg16::Reg16Bits<3>> for crate::reg32::Reg32Bits<3> {
2801    fn from(item: crate::reg16::Reg16Bits<3>) -> Self {
2802        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<3>>::
2803            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
2804    }
2805}
2806#[doc(hidden)]
2807impl From<crate::reg32::Reg32Bits<3>> for u16 {
2808    fn from(item: crate::reg32::Reg32Bits<3>) -> Self {
2809        item.0 as u16
2810    }
2811}
2812#[doc(hidden)]
2813#[cfg(feature = "64bit")]
2814impl From<crate::reg64::Reg64Bits<3>> for crate::reg32::Reg32Bits<3> {
2815    fn from(item: crate::reg64::Reg64Bits<3>) -> Self {
2816        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<3>>::
2817            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
2818    }
2819}
2820#[doc(hidden)]
2821impl From<crate::reg32::Reg32Bits<3>> for u64 {
2822    fn from(item: crate::reg32::Reg32Bits<3>) -> Self {
2823        item.0 as u64
2824    }
2825}
2826#[doc(hidden)]
2827#[cfg(feature = "8bit")]
2828impl From<crate::reg8::Reg8Bits<4>> for crate::reg32::Reg32Bits<4> {
2829    fn from(item: crate::reg8::Reg8Bits<4>) -> Self {
2830        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<4>>::
2831            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
2832    }
2833}
2834#[doc(hidden)]
2835impl From<crate::reg32::Reg32Bits<4>> for u8 {
2836    fn from(item: crate::reg32::Reg32Bits<4>) -> Self {
2837        item.0 as u8
2838    }
2839}
2840#[doc(hidden)]
2841#[cfg(feature = "16bit")]
2842impl From<crate::reg16::Reg16Bits<4>> for crate::reg32::Reg32Bits<4> {
2843    fn from(item: crate::reg16::Reg16Bits<4>) -> Self {
2844        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<4>>::
2845            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
2846    }
2847}
2848#[doc(hidden)]
2849impl From<crate::reg32::Reg32Bits<4>> for u16 {
2850    fn from(item: crate::reg32::Reg32Bits<4>) -> Self {
2851        item.0 as u16
2852    }
2853}
2854#[doc(hidden)]
2855#[cfg(feature = "64bit")]
2856impl From<crate::reg64::Reg64Bits<4>> for crate::reg32::Reg32Bits<4> {
2857    fn from(item: crate::reg64::Reg64Bits<4>) -> Self {
2858        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<4>>::
2859            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
2860    }
2861}
2862#[doc(hidden)]
2863impl From<crate::reg32::Reg32Bits<4>> for u64 {
2864    fn from(item: crate::reg32::Reg32Bits<4>) -> Self {
2865        item.0 as u64
2866    }
2867}
2868#[doc(hidden)]
2869#[cfg(feature = "8bit")]
2870impl From<crate::reg8::Reg8Bits<5>> for crate::reg32::Reg32Bits<5> {
2871    fn from(item: crate::reg8::Reg8Bits<5>) -> Self {
2872        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<5>>::
2873            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
2874    }
2875}
2876#[doc(hidden)]
2877impl From<crate::reg32::Reg32Bits<5>> for u8 {
2878    fn from(item: crate::reg32::Reg32Bits<5>) -> Self {
2879        item.0 as u8
2880    }
2881}
2882#[doc(hidden)]
2883#[cfg(feature = "16bit")]
2884impl From<crate::reg16::Reg16Bits<5>> for crate::reg32::Reg32Bits<5> {
2885    fn from(item: crate::reg16::Reg16Bits<5>) -> Self {
2886        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<5>>::
2887            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
2888    }
2889}
2890#[doc(hidden)]
2891impl From<crate::reg32::Reg32Bits<5>> for u16 {
2892    fn from(item: crate::reg32::Reg32Bits<5>) -> Self {
2893        item.0 as u16
2894    }
2895}
2896#[doc(hidden)]
2897#[cfg(feature = "64bit")]
2898impl From<crate::reg64::Reg64Bits<5>> for crate::reg32::Reg32Bits<5> {
2899    fn from(item: crate::reg64::Reg64Bits<5>) -> Self {
2900        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<5>>::
2901            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
2902    }
2903}
2904#[doc(hidden)]
2905impl From<crate::reg32::Reg32Bits<5>> for u64 {
2906    fn from(item: crate::reg32::Reg32Bits<5>) -> Self {
2907        item.0 as u64
2908    }
2909}
2910#[doc(hidden)]
2911#[cfg(feature = "8bit")]
2912impl From<crate::reg8::Reg8Bits<6>> for crate::reg32::Reg32Bits<6> {
2913    fn from(item: crate::reg8::Reg8Bits<6>) -> Self {
2914        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<6>>::
2915            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
2916    }
2917}
2918#[doc(hidden)]
2919impl From<crate::reg32::Reg32Bits<6>> for u8 {
2920    fn from(item: crate::reg32::Reg32Bits<6>) -> Self {
2921        item.0 as u8
2922    }
2923}
2924#[doc(hidden)]
2925#[cfg(feature = "16bit")]
2926impl From<crate::reg16::Reg16Bits<6>> for crate::reg32::Reg32Bits<6> {
2927    fn from(item: crate::reg16::Reg16Bits<6>) -> Self {
2928        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<6>>::
2929            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
2930    }
2931}
2932#[doc(hidden)]
2933impl From<crate::reg32::Reg32Bits<6>> for u16 {
2934    fn from(item: crate::reg32::Reg32Bits<6>) -> Self {
2935        item.0 as u16
2936    }
2937}
2938#[doc(hidden)]
2939#[cfg(feature = "64bit")]
2940impl From<crate::reg64::Reg64Bits<6>> for crate::reg32::Reg32Bits<6> {
2941    fn from(item: crate::reg64::Reg64Bits<6>) -> Self {
2942        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<6>>::
2943            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
2944    }
2945}
2946#[doc(hidden)]
2947impl From<crate::reg32::Reg32Bits<6>> for u64 {
2948    fn from(item: crate::reg32::Reg32Bits<6>) -> Self {
2949        item.0 as u64
2950    }
2951}
2952#[doc(hidden)]
2953#[cfg(feature = "8bit")]
2954impl From<crate::reg8::Reg8Bits<7>> for crate::reg32::Reg32Bits<7> {
2955    fn from(item: crate::reg8::Reg8Bits<7>) -> Self {
2956        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<7>>::
2957            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
2958    }
2959}
2960#[doc(hidden)]
2961impl From<crate::reg32::Reg32Bits<7>> for u8 {
2962    fn from(item: crate::reg32::Reg32Bits<7>) -> Self {
2963        item.0 as u8
2964    }
2965}
2966#[doc(hidden)]
2967#[cfg(feature = "16bit")]
2968impl From<crate::reg16::Reg16Bits<7>> for crate::reg32::Reg32Bits<7> {
2969    fn from(item: crate::reg16::Reg16Bits<7>) -> Self {
2970        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<7>>::
2971            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
2972    }
2973}
2974#[doc(hidden)]
2975impl From<crate::reg32::Reg32Bits<7>> for u16 {
2976    fn from(item: crate::reg32::Reg32Bits<7>) -> Self {
2977        item.0 as u16
2978    }
2979}
2980#[doc(hidden)]
2981#[cfg(feature = "64bit")]
2982impl From<crate::reg64::Reg64Bits<7>> for crate::reg32::Reg32Bits<7> {
2983    fn from(item: crate::reg64::Reg64Bits<7>) -> Self {
2984        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<7>>::
2985            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
2986    }
2987}
2988#[doc(hidden)]
2989impl From<crate::reg32::Reg32Bits<7>> for u64 {
2990    fn from(item: crate::reg32::Reg32Bits<7>) -> Self {
2991        item.0 as u64
2992    }
2993}
2994#[doc(hidden)]
2995#[cfg(feature = "8bit")]
2996impl From<crate::reg8::Reg8Bits<8>> for crate::reg32::Reg32Bits<8> {
2997    fn from(item: crate::reg8::Reg8Bits<8>) -> Self {
2998        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<8>>::
2999            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3000    }
3001}
3002#[doc(hidden)]
3003impl From<crate::reg32::Reg32Bits<8>> for u8 {
3004    fn from(item: crate::reg32::Reg32Bits<8>) -> Self {
3005        item.0 as u8
3006    }
3007}
3008#[doc(hidden)]
3009#[cfg(feature = "16bit")]
3010impl From<crate::reg16::Reg16Bits<8>> for crate::reg32::Reg32Bits<8> {
3011    fn from(item: crate::reg16::Reg16Bits<8>) -> Self {
3012        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<8>>::
3013            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3014    }
3015}
3016#[doc(hidden)]
3017impl From<crate::reg32::Reg32Bits<8>> for u16 {
3018    fn from(item: crate::reg32::Reg32Bits<8>) -> Self {
3019        item.0 as u16
3020    }
3021}
3022#[doc(hidden)]
3023#[cfg(feature = "64bit")]
3024impl From<crate::reg64::Reg64Bits<8>> for crate::reg32::Reg32Bits<8> {
3025    fn from(item: crate::reg64::Reg64Bits<8>) -> Self {
3026        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<8>>::
3027            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3028    }
3029}
3030#[doc(hidden)]
3031impl From<crate::reg32::Reg32Bits<8>> for u64 {
3032    fn from(item: crate::reg32::Reg32Bits<8>) -> Self {
3033        item.0 as u64
3034    }
3035}
3036#[doc(hidden)]
3037#[cfg(feature = "8bit")]
3038impl From<crate::reg8::Reg8Bits<9>> for crate::reg32::Reg32Bits<9> {
3039    fn from(item: crate::reg8::Reg8Bits<9>) -> Self {
3040        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<9>>::
3041            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3042    }
3043}
3044#[doc(hidden)]
3045impl From<crate::reg32::Reg32Bits<9>> for u8 {
3046    fn from(item: crate::reg32::Reg32Bits<9>) -> Self {
3047        item.0 as u8
3048    }
3049}
3050#[doc(hidden)]
3051#[cfg(feature = "16bit")]
3052impl From<crate::reg16::Reg16Bits<9>> for crate::reg32::Reg32Bits<9> {
3053    fn from(item: crate::reg16::Reg16Bits<9>) -> Self {
3054        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<9>>::
3055            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3056    }
3057}
3058#[doc(hidden)]
3059impl From<crate::reg32::Reg32Bits<9>> for u16 {
3060    fn from(item: crate::reg32::Reg32Bits<9>) -> Self {
3061        item.0 as u16
3062    }
3063}
3064#[doc(hidden)]
3065#[cfg(feature = "64bit")]
3066impl From<crate::reg64::Reg64Bits<9>> for crate::reg32::Reg32Bits<9> {
3067    fn from(item: crate::reg64::Reg64Bits<9>) -> Self {
3068        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<9>>::
3069            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3070    }
3071}
3072#[doc(hidden)]
3073impl From<crate::reg32::Reg32Bits<9>> for u64 {
3074    fn from(item: crate::reg32::Reg32Bits<9>) -> Self {
3075        item.0 as u64
3076    }
3077}
3078#[doc(hidden)]
3079#[cfg(feature = "8bit")]
3080impl From<crate::reg8::Reg8Bits<10>> for crate::reg32::Reg32Bits<10> {
3081    fn from(item: crate::reg8::Reg8Bits<10>) -> Self {
3082        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<10>>::
3083            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3084    }
3085}
3086#[doc(hidden)]
3087impl From<crate::reg32::Reg32Bits<10>> for u8 {
3088    fn from(item: crate::reg32::Reg32Bits<10>) -> Self {
3089        item.0 as u8
3090    }
3091}
3092#[doc(hidden)]
3093#[cfg(feature = "16bit")]
3094impl From<crate::reg16::Reg16Bits<10>> for crate::reg32::Reg32Bits<10> {
3095    fn from(item: crate::reg16::Reg16Bits<10>) -> Self {
3096        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<10>>::
3097            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3098    }
3099}
3100#[doc(hidden)]
3101impl From<crate::reg32::Reg32Bits<10>> for u16 {
3102    fn from(item: crate::reg32::Reg32Bits<10>) -> Self {
3103        item.0 as u16
3104    }
3105}
3106#[doc(hidden)]
3107#[cfg(feature = "64bit")]
3108impl From<crate::reg64::Reg64Bits<10>> for crate::reg32::Reg32Bits<10> {
3109    fn from(item: crate::reg64::Reg64Bits<10>) -> Self {
3110        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<10>>::
3111            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3112    }
3113}
3114#[doc(hidden)]
3115impl From<crate::reg32::Reg32Bits<10>> for u64 {
3116    fn from(item: crate::reg32::Reg32Bits<10>) -> Self {
3117        item.0 as u64
3118    }
3119}
3120#[doc(hidden)]
3121#[cfg(feature = "8bit")]
3122impl From<crate::reg8::Reg8Bits<11>> for crate::reg32::Reg32Bits<11> {
3123    fn from(item: crate::reg8::Reg8Bits<11>) -> Self {
3124        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<11>>::
3125            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3126    }
3127}
3128#[doc(hidden)]
3129impl From<crate::reg32::Reg32Bits<11>> for u8 {
3130    fn from(item: crate::reg32::Reg32Bits<11>) -> Self {
3131        item.0 as u8
3132    }
3133}
3134#[doc(hidden)]
3135#[cfg(feature = "16bit")]
3136impl From<crate::reg16::Reg16Bits<11>> for crate::reg32::Reg32Bits<11> {
3137    fn from(item: crate::reg16::Reg16Bits<11>) -> Self {
3138        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<11>>::
3139            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3140    }
3141}
3142#[doc(hidden)]
3143impl From<crate::reg32::Reg32Bits<11>> for u16 {
3144    fn from(item: crate::reg32::Reg32Bits<11>) -> Self {
3145        item.0 as u16
3146    }
3147}
3148#[doc(hidden)]
3149#[cfg(feature = "64bit")]
3150impl From<crate::reg64::Reg64Bits<11>> for crate::reg32::Reg32Bits<11> {
3151    fn from(item: crate::reg64::Reg64Bits<11>) -> Self {
3152        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<11>>::
3153            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3154    }
3155}
3156#[doc(hidden)]
3157impl From<crate::reg32::Reg32Bits<11>> for u64 {
3158    fn from(item: crate::reg32::Reg32Bits<11>) -> Self {
3159        item.0 as u64
3160    }
3161}
3162#[doc(hidden)]
3163#[cfg(feature = "8bit")]
3164impl From<crate::reg8::Reg8Bits<12>> for crate::reg32::Reg32Bits<12> {
3165    fn from(item: crate::reg8::Reg8Bits<12>) -> Self {
3166        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<12>>::
3167            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3168    }
3169}
3170#[doc(hidden)]
3171impl From<crate::reg32::Reg32Bits<12>> for u8 {
3172    fn from(item: crate::reg32::Reg32Bits<12>) -> Self {
3173        item.0 as u8
3174    }
3175}
3176#[doc(hidden)]
3177#[cfg(feature = "16bit")]
3178impl From<crate::reg16::Reg16Bits<12>> for crate::reg32::Reg32Bits<12> {
3179    fn from(item: crate::reg16::Reg16Bits<12>) -> Self {
3180        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<12>>::
3181            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3182    }
3183}
3184#[doc(hidden)]
3185impl From<crate::reg32::Reg32Bits<12>> for u16 {
3186    fn from(item: crate::reg32::Reg32Bits<12>) -> Self {
3187        item.0 as u16
3188    }
3189}
3190#[doc(hidden)]
3191#[cfg(feature = "64bit")]
3192impl From<crate::reg64::Reg64Bits<12>> for crate::reg32::Reg32Bits<12> {
3193    fn from(item: crate::reg64::Reg64Bits<12>) -> Self {
3194        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<12>>::
3195            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3196    }
3197}
3198#[doc(hidden)]
3199impl From<crate::reg32::Reg32Bits<12>> for u64 {
3200    fn from(item: crate::reg32::Reg32Bits<12>) -> Self {
3201        item.0 as u64
3202    }
3203}
3204#[doc(hidden)]
3205#[cfg(feature = "8bit")]
3206impl From<crate::reg8::Reg8Bits<13>> for crate::reg32::Reg32Bits<13> {
3207    fn from(item: crate::reg8::Reg8Bits<13>) -> Self {
3208        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<13>>::
3209            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3210    }
3211}
3212#[doc(hidden)]
3213impl From<crate::reg32::Reg32Bits<13>> for u8 {
3214    fn from(item: crate::reg32::Reg32Bits<13>) -> Self {
3215        item.0 as u8
3216    }
3217}
3218#[doc(hidden)]
3219#[cfg(feature = "16bit")]
3220impl From<crate::reg16::Reg16Bits<13>> for crate::reg32::Reg32Bits<13> {
3221    fn from(item: crate::reg16::Reg16Bits<13>) -> Self {
3222        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<13>>::
3223            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3224    }
3225}
3226#[doc(hidden)]
3227impl From<crate::reg32::Reg32Bits<13>> for u16 {
3228    fn from(item: crate::reg32::Reg32Bits<13>) -> Self {
3229        item.0 as u16
3230    }
3231}
3232#[doc(hidden)]
3233#[cfg(feature = "64bit")]
3234impl From<crate::reg64::Reg64Bits<13>> for crate::reg32::Reg32Bits<13> {
3235    fn from(item: crate::reg64::Reg64Bits<13>) -> Self {
3236        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<13>>::
3237            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3238    }
3239}
3240#[doc(hidden)]
3241impl From<crate::reg32::Reg32Bits<13>> for u64 {
3242    fn from(item: crate::reg32::Reg32Bits<13>) -> Self {
3243        item.0 as u64
3244    }
3245}
3246#[doc(hidden)]
3247#[cfg(feature = "8bit")]
3248impl From<crate::reg8::Reg8Bits<14>> for crate::reg32::Reg32Bits<14> {
3249    fn from(item: crate::reg8::Reg8Bits<14>) -> Self {
3250        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<14>>::
3251            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3252    }
3253}
3254#[doc(hidden)]
3255impl From<crate::reg32::Reg32Bits<14>> for u8 {
3256    fn from(item: crate::reg32::Reg32Bits<14>) -> Self {
3257        item.0 as u8
3258    }
3259}
3260#[doc(hidden)]
3261#[cfg(feature = "16bit")]
3262impl From<crate::reg16::Reg16Bits<14>> for crate::reg32::Reg32Bits<14> {
3263    fn from(item: crate::reg16::Reg16Bits<14>) -> Self {
3264        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<14>>::
3265            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3266    }
3267}
3268#[doc(hidden)]
3269impl From<crate::reg32::Reg32Bits<14>> for u16 {
3270    fn from(item: crate::reg32::Reg32Bits<14>) -> Self {
3271        item.0 as u16
3272    }
3273}
3274#[doc(hidden)]
3275#[cfg(feature = "64bit")]
3276impl From<crate::reg64::Reg64Bits<14>> for crate::reg32::Reg32Bits<14> {
3277    fn from(item: crate::reg64::Reg64Bits<14>) -> Self {
3278        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<14>>::
3279            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3280    }
3281}
3282#[doc(hidden)]
3283impl From<crate::reg32::Reg32Bits<14>> for u64 {
3284    fn from(item: crate::reg32::Reg32Bits<14>) -> Self {
3285        item.0 as u64
3286    }
3287}
3288#[doc(hidden)]
3289#[cfg(feature = "8bit")]
3290impl From<crate::reg8::Reg8Bits<15>> for crate::reg32::Reg32Bits<15> {
3291    fn from(item: crate::reg8::Reg8Bits<15>) -> Self {
3292        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<15>>::
3293            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3294    }
3295}
3296#[doc(hidden)]
3297impl From<crate::reg32::Reg32Bits<15>> for u8 {
3298    fn from(item: crate::reg32::Reg32Bits<15>) -> Self {
3299        item.0 as u8
3300    }
3301}
3302#[doc(hidden)]
3303#[cfg(feature = "16bit")]
3304impl From<crate::reg16::Reg16Bits<15>> for crate::reg32::Reg32Bits<15> {
3305    fn from(item: crate::reg16::Reg16Bits<15>) -> Self {
3306        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<15>>::
3307            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3308    }
3309}
3310#[doc(hidden)]
3311impl From<crate::reg32::Reg32Bits<15>> for u16 {
3312    fn from(item: crate::reg32::Reg32Bits<15>) -> Self {
3313        item.0 as u16
3314    }
3315}
3316#[doc(hidden)]
3317#[cfg(feature = "64bit")]
3318impl From<crate::reg64::Reg64Bits<15>> for crate::reg32::Reg32Bits<15> {
3319    fn from(item: crate::reg64::Reg64Bits<15>) -> Self {
3320        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<15>>::
3321            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3322    }
3323}
3324#[doc(hidden)]
3325impl From<crate::reg32::Reg32Bits<15>> for u64 {
3326    fn from(item: crate::reg32::Reg32Bits<15>) -> Self {
3327        item.0 as u64
3328    }
3329}
3330#[doc(hidden)]
3331#[cfg(feature = "8bit")]
3332impl From<crate::reg8::Reg8Bits<16>> for crate::reg32::Reg32Bits<16> {
3333    fn from(item: crate::reg8::Reg8Bits<16>) -> Self {
3334        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<16>>::
3335            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3336    }
3337}
3338#[doc(hidden)]
3339impl From<crate::reg32::Reg32Bits<16>> for u8 {
3340    fn from(item: crate::reg32::Reg32Bits<16>) -> Self {
3341        item.0 as u8
3342    }
3343}
3344#[doc(hidden)]
3345#[cfg(feature = "16bit")]
3346impl From<crate::reg16::Reg16Bits<16>> for crate::reg32::Reg32Bits<16> {
3347    fn from(item: crate::reg16::Reg16Bits<16>) -> Self {
3348        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<16>>::
3349            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3350    }
3351}
3352#[doc(hidden)]
3353impl From<crate::reg32::Reg32Bits<16>> for u16 {
3354    fn from(item: crate::reg32::Reg32Bits<16>) -> Self {
3355        item.0 as u16
3356    }
3357}
3358#[doc(hidden)]
3359#[cfg(feature = "64bit")]
3360impl From<crate::reg64::Reg64Bits<16>> for crate::reg32::Reg32Bits<16> {
3361    fn from(item: crate::reg64::Reg64Bits<16>) -> Self {
3362        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<16>>::
3363            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3364    }
3365}
3366#[doc(hidden)]
3367impl From<crate::reg32::Reg32Bits<16>> for u64 {
3368    fn from(item: crate::reg32::Reg32Bits<16>) -> Self {
3369        item.0 as u64
3370    }
3371}
3372#[doc(hidden)]
3373#[cfg(feature = "8bit")]
3374impl From<crate::reg8::Reg8Bits<17>> for crate::reg32::Reg32Bits<17> {
3375    fn from(item: crate::reg8::Reg8Bits<17>) -> Self {
3376        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<17>>::
3377            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3378    }
3379}
3380#[doc(hidden)]
3381impl From<crate::reg32::Reg32Bits<17>> for u8 {
3382    fn from(item: crate::reg32::Reg32Bits<17>) -> Self {
3383        item.0 as u8
3384    }
3385}
3386#[doc(hidden)]
3387#[cfg(feature = "16bit")]
3388impl From<crate::reg16::Reg16Bits<17>> for crate::reg32::Reg32Bits<17> {
3389    fn from(item: crate::reg16::Reg16Bits<17>) -> Self {
3390        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<17>>::
3391            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3392    }
3393}
3394#[doc(hidden)]
3395impl From<crate::reg32::Reg32Bits<17>> for u16 {
3396    fn from(item: crate::reg32::Reg32Bits<17>) -> Self {
3397        item.0 as u16
3398    }
3399}
3400#[doc(hidden)]
3401#[cfg(feature = "64bit")]
3402impl From<crate::reg64::Reg64Bits<17>> for crate::reg32::Reg32Bits<17> {
3403    fn from(item: crate::reg64::Reg64Bits<17>) -> Self {
3404        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<17>>::
3405            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3406    }
3407}
3408#[doc(hidden)]
3409impl From<crate::reg32::Reg32Bits<17>> for u64 {
3410    fn from(item: crate::reg32::Reg32Bits<17>) -> Self {
3411        item.0 as u64
3412    }
3413}
3414#[doc(hidden)]
3415#[cfg(feature = "8bit")]
3416impl From<crate::reg8::Reg8Bits<18>> for crate::reg32::Reg32Bits<18> {
3417    fn from(item: crate::reg8::Reg8Bits<18>) -> Self {
3418        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<18>>::
3419            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3420    }
3421}
3422#[doc(hidden)]
3423impl From<crate::reg32::Reg32Bits<18>> for u8 {
3424    fn from(item: crate::reg32::Reg32Bits<18>) -> Self {
3425        item.0 as u8
3426    }
3427}
3428#[doc(hidden)]
3429#[cfg(feature = "16bit")]
3430impl From<crate::reg16::Reg16Bits<18>> for crate::reg32::Reg32Bits<18> {
3431    fn from(item: crate::reg16::Reg16Bits<18>) -> Self {
3432        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<18>>::
3433            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3434    }
3435}
3436#[doc(hidden)]
3437impl From<crate::reg32::Reg32Bits<18>> for u16 {
3438    fn from(item: crate::reg32::Reg32Bits<18>) -> Self {
3439        item.0 as u16
3440    }
3441}
3442#[doc(hidden)]
3443#[cfg(feature = "64bit")]
3444impl From<crate::reg64::Reg64Bits<18>> for crate::reg32::Reg32Bits<18> {
3445    fn from(item: crate::reg64::Reg64Bits<18>) -> Self {
3446        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<18>>::
3447            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3448    }
3449}
3450#[doc(hidden)]
3451impl From<crate::reg32::Reg32Bits<18>> for u64 {
3452    fn from(item: crate::reg32::Reg32Bits<18>) -> Self {
3453        item.0 as u64
3454    }
3455}
3456#[doc(hidden)]
3457#[cfg(feature = "8bit")]
3458impl From<crate::reg8::Reg8Bits<19>> for crate::reg32::Reg32Bits<19> {
3459    fn from(item: crate::reg8::Reg8Bits<19>) -> Self {
3460        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<19>>::
3461            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3462    }
3463}
3464#[doc(hidden)]
3465impl From<crate::reg32::Reg32Bits<19>> for u8 {
3466    fn from(item: crate::reg32::Reg32Bits<19>) -> Self {
3467        item.0 as u8
3468    }
3469}
3470#[doc(hidden)]
3471#[cfg(feature = "16bit")]
3472impl From<crate::reg16::Reg16Bits<19>> for crate::reg32::Reg32Bits<19> {
3473    fn from(item: crate::reg16::Reg16Bits<19>) -> Self {
3474        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<19>>::
3475            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3476    }
3477}
3478#[doc(hidden)]
3479impl From<crate::reg32::Reg32Bits<19>> for u16 {
3480    fn from(item: crate::reg32::Reg32Bits<19>) -> Self {
3481        item.0 as u16
3482    }
3483}
3484#[doc(hidden)]
3485#[cfg(feature = "64bit")]
3486impl From<crate::reg64::Reg64Bits<19>> for crate::reg32::Reg32Bits<19> {
3487    fn from(item: crate::reg64::Reg64Bits<19>) -> Self {
3488        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<19>>::
3489            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3490    }
3491}
3492#[doc(hidden)]
3493impl From<crate::reg32::Reg32Bits<19>> for u64 {
3494    fn from(item: crate::reg32::Reg32Bits<19>) -> Self {
3495        item.0 as u64
3496    }
3497}
3498#[doc(hidden)]
3499#[cfg(feature = "8bit")]
3500impl From<crate::reg8::Reg8Bits<20>> for crate::reg32::Reg32Bits<20> {
3501    fn from(item: crate::reg8::Reg8Bits<20>) -> Self {
3502        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<20>>::
3503            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3504    }
3505}
3506#[doc(hidden)]
3507impl From<crate::reg32::Reg32Bits<20>> for u8 {
3508    fn from(item: crate::reg32::Reg32Bits<20>) -> Self {
3509        item.0 as u8
3510    }
3511}
3512#[doc(hidden)]
3513#[cfg(feature = "16bit")]
3514impl From<crate::reg16::Reg16Bits<20>> for crate::reg32::Reg32Bits<20> {
3515    fn from(item: crate::reg16::Reg16Bits<20>) -> Self {
3516        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<20>>::
3517            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3518    }
3519}
3520#[doc(hidden)]
3521impl From<crate::reg32::Reg32Bits<20>> for u16 {
3522    fn from(item: crate::reg32::Reg32Bits<20>) -> Self {
3523        item.0 as u16
3524    }
3525}
3526#[doc(hidden)]
3527#[cfg(feature = "64bit")]
3528impl From<crate::reg64::Reg64Bits<20>> for crate::reg32::Reg32Bits<20> {
3529    fn from(item: crate::reg64::Reg64Bits<20>) -> Self {
3530        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<20>>::
3531            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3532    }
3533}
3534#[doc(hidden)]
3535impl From<crate::reg32::Reg32Bits<20>> for u64 {
3536    fn from(item: crate::reg32::Reg32Bits<20>) -> Self {
3537        item.0 as u64
3538    }
3539}
3540#[doc(hidden)]
3541#[cfg(feature = "8bit")]
3542impl From<crate::reg8::Reg8Bits<21>> for crate::reg32::Reg32Bits<21> {
3543    fn from(item: crate::reg8::Reg8Bits<21>) -> Self {
3544        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<21>>::
3545            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3546    }
3547}
3548#[doc(hidden)]
3549impl From<crate::reg32::Reg32Bits<21>> for u8 {
3550    fn from(item: crate::reg32::Reg32Bits<21>) -> Self {
3551        item.0 as u8
3552    }
3553}
3554#[doc(hidden)]
3555#[cfg(feature = "16bit")]
3556impl From<crate::reg16::Reg16Bits<21>> for crate::reg32::Reg32Bits<21> {
3557    fn from(item: crate::reg16::Reg16Bits<21>) -> Self {
3558        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<21>>::
3559            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3560    }
3561}
3562#[doc(hidden)]
3563impl From<crate::reg32::Reg32Bits<21>> for u16 {
3564    fn from(item: crate::reg32::Reg32Bits<21>) -> Self {
3565        item.0 as u16
3566    }
3567}
3568#[doc(hidden)]
3569#[cfg(feature = "64bit")]
3570impl From<crate::reg64::Reg64Bits<21>> for crate::reg32::Reg32Bits<21> {
3571    fn from(item: crate::reg64::Reg64Bits<21>) -> Self {
3572        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<21>>::
3573            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3574    }
3575}
3576#[doc(hidden)]
3577impl From<crate::reg32::Reg32Bits<21>> for u64 {
3578    fn from(item: crate::reg32::Reg32Bits<21>) -> Self {
3579        item.0 as u64
3580    }
3581}
3582#[doc(hidden)]
3583#[cfg(feature = "8bit")]
3584impl From<crate::reg8::Reg8Bits<22>> for crate::reg32::Reg32Bits<22> {
3585    fn from(item: crate::reg8::Reg8Bits<22>) -> Self {
3586        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<22>>::
3587            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3588    }
3589}
3590#[doc(hidden)]
3591impl From<crate::reg32::Reg32Bits<22>> for u8 {
3592    fn from(item: crate::reg32::Reg32Bits<22>) -> Self {
3593        item.0 as u8
3594    }
3595}
3596#[doc(hidden)]
3597#[cfg(feature = "16bit")]
3598impl From<crate::reg16::Reg16Bits<22>> for crate::reg32::Reg32Bits<22> {
3599    fn from(item: crate::reg16::Reg16Bits<22>) -> Self {
3600        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<22>>::
3601            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3602    }
3603}
3604#[doc(hidden)]
3605impl From<crate::reg32::Reg32Bits<22>> for u16 {
3606    fn from(item: crate::reg32::Reg32Bits<22>) -> Self {
3607        item.0 as u16
3608    }
3609}
3610#[doc(hidden)]
3611#[cfg(feature = "64bit")]
3612impl From<crate::reg64::Reg64Bits<22>> for crate::reg32::Reg32Bits<22> {
3613    fn from(item: crate::reg64::Reg64Bits<22>) -> Self {
3614        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<22>>::
3615            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3616    }
3617}
3618#[doc(hidden)]
3619impl From<crate::reg32::Reg32Bits<22>> for u64 {
3620    fn from(item: crate::reg32::Reg32Bits<22>) -> Self {
3621        item.0 as u64
3622    }
3623}
3624#[doc(hidden)]
3625#[cfg(feature = "8bit")]
3626impl From<crate::reg8::Reg8Bits<23>> for crate::reg32::Reg32Bits<23> {
3627    fn from(item: crate::reg8::Reg8Bits<23>) -> Self {
3628        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<23>>::
3629            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3630    }
3631}
3632#[doc(hidden)]
3633impl From<crate::reg32::Reg32Bits<23>> for u8 {
3634    fn from(item: crate::reg32::Reg32Bits<23>) -> Self {
3635        item.0 as u8
3636    }
3637}
3638#[doc(hidden)]
3639#[cfg(feature = "16bit")]
3640impl From<crate::reg16::Reg16Bits<23>> for crate::reg32::Reg32Bits<23> {
3641    fn from(item: crate::reg16::Reg16Bits<23>) -> Self {
3642        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<23>>::
3643            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3644    }
3645}
3646#[doc(hidden)]
3647impl From<crate::reg32::Reg32Bits<23>> for u16 {
3648    fn from(item: crate::reg32::Reg32Bits<23>) -> Self {
3649        item.0 as u16
3650    }
3651}
3652#[doc(hidden)]
3653#[cfg(feature = "64bit")]
3654impl From<crate::reg64::Reg64Bits<23>> for crate::reg32::Reg32Bits<23> {
3655    fn from(item: crate::reg64::Reg64Bits<23>) -> Self {
3656        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<23>>::
3657            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3658    }
3659}
3660#[doc(hidden)]
3661impl From<crate::reg32::Reg32Bits<23>> for u64 {
3662    fn from(item: crate::reg32::Reg32Bits<23>) -> Self {
3663        item.0 as u64
3664    }
3665}
3666#[doc(hidden)]
3667#[cfg(feature = "8bit")]
3668impl From<crate::reg8::Reg8Bits<24>> for crate::reg32::Reg32Bits<24> {
3669    fn from(item: crate::reg8::Reg8Bits<24>) -> Self {
3670        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<24>>::
3671            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3672    }
3673}
3674#[doc(hidden)]
3675impl From<crate::reg32::Reg32Bits<24>> for u8 {
3676    fn from(item: crate::reg32::Reg32Bits<24>) -> Self {
3677        item.0 as u8
3678    }
3679}
3680#[doc(hidden)]
3681#[cfg(feature = "16bit")]
3682impl From<crate::reg16::Reg16Bits<24>> for crate::reg32::Reg32Bits<24> {
3683    fn from(item: crate::reg16::Reg16Bits<24>) -> Self {
3684        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<24>>::
3685            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3686    }
3687}
3688#[doc(hidden)]
3689impl From<crate::reg32::Reg32Bits<24>> for u16 {
3690    fn from(item: crate::reg32::Reg32Bits<24>) -> Self {
3691        item.0 as u16
3692    }
3693}
3694#[doc(hidden)]
3695#[cfg(feature = "64bit")]
3696impl From<crate::reg64::Reg64Bits<24>> for crate::reg32::Reg32Bits<24> {
3697    fn from(item: crate::reg64::Reg64Bits<24>) -> Self {
3698        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<24>>::
3699            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3700    }
3701}
3702#[doc(hidden)]
3703impl From<crate::reg32::Reg32Bits<24>> for u64 {
3704    fn from(item: crate::reg32::Reg32Bits<24>) -> Self {
3705        item.0 as u64
3706    }
3707}
3708#[doc(hidden)]
3709#[cfg(feature = "8bit")]
3710impl From<crate::reg8::Reg8Bits<25>> for crate::reg32::Reg32Bits<25> {
3711    fn from(item: crate::reg8::Reg8Bits<25>) -> Self {
3712        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<25>>::
3713            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3714    }
3715}
3716#[doc(hidden)]
3717impl From<crate::reg32::Reg32Bits<25>> for u8 {
3718    fn from(item: crate::reg32::Reg32Bits<25>) -> Self {
3719        item.0 as u8
3720    }
3721}
3722#[doc(hidden)]
3723#[cfg(feature = "16bit")]
3724impl From<crate::reg16::Reg16Bits<25>> for crate::reg32::Reg32Bits<25> {
3725    fn from(item: crate::reg16::Reg16Bits<25>) -> Self {
3726        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<25>>::
3727            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3728    }
3729}
3730#[doc(hidden)]
3731impl From<crate::reg32::Reg32Bits<25>> for u16 {
3732    fn from(item: crate::reg32::Reg32Bits<25>) -> Self {
3733        item.0 as u16
3734    }
3735}
3736#[doc(hidden)]
3737#[cfg(feature = "64bit")]
3738impl From<crate::reg64::Reg64Bits<25>> for crate::reg32::Reg32Bits<25> {
3739    fn from(item: crate::reg64::Reg64Bits<25>) -> Self {
3740        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<25>>::
3741            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3742    }
3743}
3744#[doc(hidden)]
3745impl From<crate::reg32::Reg32Bits<25>> for u64 {
3746    fn from(item: crate::reg32::Reg32Bits<25>) -> Self {
3747        item.0 as u64
3748    }
3749}
3750#[doc(hidden)]
3751#[cfg(feature = "8bit")]
3752impl From<crate::reg8::Reg8Bits<26>> for crate::reg32::Reg32Bits<26> {
3753    fn from(item: crate::reg8::Reg8Bits<26>) -> Self {
3754        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<26>>::
3755            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3756    }
3757}
3758#[doc(hidden)]
3759impl From<crate::reg32::Reg32Bits<26>> for u8 {
3760    fn from(item: crate::reg32::Reg32Bits<26>) -> Self {
3761        item.0 as u8
3762    }
3763}
3764#[doc(hidden)]
3765#[cfg(feature = "16bit")]
3766impl From<crate::reg16::Reg16Bits<26>> for crate::reg32::Reg32Bits<26> {
3767    fn from(item: crate::reg16::Reg16Bits<26>) -> Self {
3768        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<26>>::
3769            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3770    }
3771}
3772#[doc(hidden)]
3773impl From<crate::reg32::Reg32Bits<26>> for u16 {
3774    fn from(item: crate::reg32::Reg32Bits<26>) -> Self {
3775        item.0 as u16
3776    }
3777}
3778#[doc(hidden)]
3779#[cfg(feature = "64bit")]
3780impl From<crate::reg64::Reg64Bits<26>> for crate::reg32::Reg32Bits<26> {
3781    fn from(item: crate::reg64::Reg64Bits<26>) -> Self {
3782        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<26>>::
3783            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3784    }
3785}
3786#[doc(hidden)]
3787impl From<crate::reg32::Reg32Bits<26>> for u64 {
3788    fn from(item: crate::reg32::Reg32Bits<26>) -> Self {
3789        item.0 as u64
3790    }
3791}
3792#[doc(hidden)]
3793#[cfg(feature = "8bit")]
3794impl From<crate::reg8::Reg8Bits<27>> for crate::reg32::Reg32Bits<27> {
3795    fn from(item: crate::reg8::Reg8Bits<27>) -> Self {
3796        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<27>>::
3797            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3798    }
3799}
3800#[doc(hidden)]
3801impl From<crate::reg32::Reg32Bits<27>> for u8 {
3802    fn from(item: crate::reg32::Reg32Bits<27>) -> Self {
3803        item.0 as u8
3804    }
3805}
3806#[doc(hidden)]
3807#[cfg(feature = "16bit")]
3808impl From<crate::reg16::Reg16Bits<27>> for crate::reg32::Reg32Bits<27> {
3809    fn from(item: crate::reg16::Reg16Bits<27>) -> Self {
3810        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<27>>::
3811            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3812    }
3813}
3814#[doc(hidden)]
3815impl From<crate::reg32::Reg32Bits<27>> for u16 {
3816    fn from(item: crate::reg32::Reg32Bits<27>) -> Self {
3817        item.0 as u16
3818    }
3819}
3820#[doc(hidden)]
3821#[cfg(feature = "64bit")]
3822impl From<crate::reg64::Reg64Bits<27>> for crate::reg32::Reg32Bits<27> {
3823    fn from(item: crate::reg64::Reg64Bits<27>) -> Self {
3824        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<27>>::
3825            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3826    }
3827}
3828#[doc(hidden)]
3829impl From<crate::reg32::Reg32Bits<27>> for u64 {
3830    fn from(item: crate::reg32::Reg32Bits<27>) -> Self {
3831        item.0 as u64
3832    }
3833}
3834#[doc(hidden)]
3835#[cfg(feature = "8bit")]
3836impl From<crate::reg8::Reg8Bits<28>> for crate::reg32::Reg32Bits<28> {
3837    fn from(item: crate::reg8::Reg8Bits<28>) -> Self {
3838        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<28>>::
3839            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3840    }
3841}
3842#[doc(hidden)]
3843impl From<crate::reg32::Reg32Bits<28>> for u8 {
3844    fn from(item: crate::reg32::Reg32Bits<28>) -> Self {
3845        item.0 as u8
3846    }
3847}
3848#[doc(hidden)]
3849#[cfg(feature = "16bit")]
3850impl From<crate::reg16::Reg16Bits<28>> for crate::reg32::Reg32Bits<28> {
3851    fn from(item: crate::reg16::Reg16Bits<28>) -> Self {
3852        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<28>>::
3853            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3854    }
3855}
3856#[doc(hidden)]
3857impl From<crate::reg32::Reg32Bits<28>> for u16 {
3858    fn from(item: crate::reg32::Reg32Bits<28>) -> Self {
3859        item.0 as u16
3860    }
3861}
3862#[doc(hidden)]
3863#[cfg(feature = "64bit")]
3864impl From<crate::reg64::Reg64Bits<28>> for crate::reg32::Reg32Bits<28> {
3865    fn from(item: crate::reg64::Reg64Bits<28>) -> Self {
3866        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<28>>::
3867            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3868    }
3869}
3870#[doc(hidden)]
3871impl From<crate::reg32::Reg32Bits<28>> for u64 {
3872    fn from(item: crate::reg32::Reg32Bits<28>) -> Self {
3873        item.0 as u64
3874    }
3875}
3876#[doc(hidden)]
3877#[cfg(feature = "8bit")]
3878impl From<crate::reg8::Reg8Bits<29>> for crate::reg32::Reg32Bits<29> {
3879    fn from(item: crate::reg8::Reg8Bits<29>) -> Self {
3880        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<29>>::
3881            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3882    }
3883}
3884#[doc(hidden)]
3885impl From<crate::reg32::Reg32Bits<29>> for u8 {
3886    fn from(item: crate::reg32::Reg32Bits<29>) -> Self {
3887        item.0 as u8
3888    }
3889}
3890#[doc(hidden)]
3891#[cfg(feature = "16bit")]
3892impl From<crate::reg16::Reg16Bits<29>> for crate::reg32::Reg32Bits<29> {
3893    fn from(item: crate::reg16::Reg16Bits<29>) -> Self {
3894        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<29>>::
3895            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3896    }
3897}
3898#[doc(hidden)]
3899impl From<crate::reg32::Reg32Bits<29>> for u16 {
3900    fn from(item: crate::reg32::Reg32Bits<29>) -> Self {
3901        item.0 as u16
3902    }
3903}
3904#[doc(hidden)]
3905#[cfg(feature = "64bit")]
3906impl From<crate::reg64::Reg64Bits<29>> for crate::reg32::Reg32Bits<29> {
3907    fn from(item: crate::reg64::Reg64Bits<29>) -> Self {
3908        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<29>>::
3909            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3910    }
3911}
3912#[doc(hidden)]
3913impl From<crate::reg32::Reg32Bits<29>> for u64 {
3914    fn from(item: crate::reg32::Reg32Bits<29>) -> Self {
3915        item.0 as u64
3916    }
3917}
3918#[doc(hidden)]
3919#[cfg(feature = "8bit")]
3920impl From<crate::reg8::Reg8Bits<30>> for crate::reg32::Reg32Bits<30> {
3921    fn from(item: crate::reg8::Reg8Bits<30>) -> Self {
3922        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<30>>::
3923            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3924    }
3925}
3926#[doc(hidden)]
3927impl From<crate::reg32::Reg32Bits<30>> for u8 {
3928    fn from(item: crate::reg32::Reg32Bits<30>) -> Self {
3929        item.0 as u8
3930    }
3931}
3932#[doc(hidden)]
3933#[cfg(feature = "16bit")]
3934impl From<crate::reg16::Reg16Bits<30>> for crate::reg32::Reg32Bits<30> {
3935    fn from(item: crate::reg16::Reg16Bits<30>) -> Self {
3936        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<30>>::
3937            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3938    }
3939}
3940#[doc(hidden)]
3941impl From<crate::reg32::Reg32Bits<30>> for u16 {
3942    fn from(item: crate::reg32::Reg32Bits<30>) -> Self {
3943        item.0 as u16
3944    }
3945}
3946#[doc(hidden)]
3947#[cfg(feature = "64bit")]
3948impl From<crate::reg64::Reg64Bits<30>> for crate::reg32::Reg32Bits<30> {
3949    fn from(item: crate::reg64::Reg64Bits<30>) -> Self {
3950        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<30>>::
3951            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3952    }
3953}
3954#[doc(hidden)]
3955impl From<crate::reg32::Reg32Bits<30>> for u64 {
3956    fn from(item: crate::reg32::Reg32Bits<30>) -> Self {
3957        item.0 as u64
3958    }
3959}
3960#[doc(hidden)]
3961#[cfg(feature = "8bit")]
3962impl From<crate::reg8::Reg8Bits<31>> for crate::reg32::Reg32Bits<31> {
3963    fn from(item: crate::reg8::Reg8Bits<31>) -> Self {
3964        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<31>>::
3965            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
3966    }
3967}
3968#[doc(hidden)]
3969impl From<crate::reg32::Reg32Bits<31>> for u8 {
3970    fn from(item: crate::reg32::Reg32Bits<31>) -> Self {
3971        item.0 as u8
3972    }
3973}
3974#[doc(hidden)]
3975#[cfg(feature = "16bit")]
3976impl From<crate::reg16::Reg16Bits<31>> for crate::reg32::Reg32Bits<31> {
3977    fn from(item: crate::reg16::Reg16Bits<31>) -> Self {
3978        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<31>>::
3979            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
3980    }
3981}
3982#[doc(hidden)]
3983impl From<crate::reg32::Reg32Bits<31>> for u16 {
3984    fn from(item: crate::reg32::Reg32Bits<31>) -> Self {
3985        item.0 as u16
3986    }
3987}
3988#[doc(hidden)]
3989#[cfg(feature = "64bit")]
3990impl From<crate::reg64::Reg64Bits<31>> for crate::reg32::Reg32Bits<31> {
3991    fn from(item: crate::reg64::Reg64Bits<31>) -> Self {
3992        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<31>>::
3993            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
3994    }
3995}
3996#[doc(hidden)]
3997impl From<crate::reg32::Reg32Bits<31>> for u64 {
3998    fn from(item: crate::reg32::Reg32Bits<31>) -> Self {
3999        item.0 as u64
4000    }
4001}
4002#[doc(hidden)]
4003#[cfg(feature = "8bit")]
4004impl From<crate::reg8::Reg8Bits<32>> for crate::reg32::Reg32Bits<32> {
4005    fn from(item: crate::reg8::Reg8Bits<32>) -> Self {
4006        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<32>>::
4007            take_low(crate::reg32::Reg32Bits::new(u8::from(item) as u32))
4008    }
4009}
4010#[doc(hidden)]
4011impl From<crate::reg32::Reg32Bits<32>> for u8 {
4012    fn from(item: crate::reg32::Reg32Bits<32>) -> Self {
4013        item.0 as u8
4014    }
4015}
4016#[doc(hidden)]
4017#[cfg(feature = "16bit")]
4018impl From<crate::reg16::Reg16Bits<32>> for crate::reg32::Reg32Bits<32> {
4019    fn from(item: crate::reg16::Reg16Bits<32>) -> Self {
4020        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<32>>::
4021            take_low(crate::reg32::Reg32Bits::new(u16::from(item) as u32))
4022    }
4023}
4024#[doc(hidden)]
4025impl From<crate::reg32::Reg32Bits<32>> for u16 {
4026    fn from(item: crate::reg32::Reg32Bits<32>) -> Self {
4027        item.0 as u16
4028    }
4029}
4030#[doc(hidden)]
4031#[cfg(feature = "64bit")]
4032impl From<crate::reg64::Reg64Bits<32>> for crate::reg32::Reg32Bits<32> {
4033    fn from(item: crate::reg64::Reg64Bits<32>) -> Self {
4034        <crate::reg32::Reg32Bits<32> as crate::reg32::Reg32BitsDownCast<32>>::
4035            take_low(crate::reg32::Reg32Bits::new(u64::from(item) as u32))
4036    }
4037}
4038#[doc(hidden)]
4039impl From<crate::reg32::Reg32Bits<32>> for u64 {
4040    fn from(item: crate::reg32::Reg32Bits<32>) -> Self {
4041        item.0 as u64
4042    }
4043}
4044#[doc(hidden)]
4045impl From<u8> for crate::reg32::Reg32Bits<8> {
4046    fn from(item: u8) -> Self {
4047        Self(item.into())
4048    }
4049}
4050#[doc(hidden)]
4051impl From<u16> for crate::reg32::Reg32Bits<16> {
4052    fn from(item: u16) -> Self {
4053        Self(item.into())
4054    }
4055}
4056#[doc(hidden)]
4057impl Default for crate::reg32::Reg32Bits<1> {
4058    fn default() -> Self {
4059        Self(0)
4060    }
4061}
4062#[doc(hidden)]
4063impl Default for crate::reg32::Reg32Bits<2> {
4064    fn default() -> Self {
4065        Self(0)
4066    }
4067}
4068#[doc(hidden)]
4069impl Default for crate::reg32::Reg32Bits<3> {
4070    fn default() -> Self {
4071        Self(0)
4072    }
4073}
4074#[doc(hidden)]
4075impl Default for crate::reg32::Reg32Bits<4> {
4076    fn default() -> Self {
4077        Self(0)
4078    }
4079}
4080#[doc(hidden)]
4081impl Default for crate::reg32::Reg32Bits<5> {
4082    fn default() -> Self {
4083        Self(0)
4084    }
4085}
4086#[doc(hidden)]
4087impl Default for crate::reg32::Reg32Bits<6> {
4088    fn default() -> Self {
4089        Self(0)
4090    }
4091}
4092#[doc(hidden)]
4093impl Default for crate::reg32::Reg32Bits<7> {
4094    fn default() -> Self {
4095        Self(0)
4096    }
4097}
4098#[doc(hidden)]
4099impl Default for crate::reg32::Reg32Bits<8> {
4100    fn default() -> Self {
4101        Self(0)
4102    }
4103}
4104#[doc(hidden)]
4105impl Default for crate::reg32::Reg32Bits<9> {
4106    fn default() -> Self {
4107        Self(0)
4108    }
4109}
4110#[doc(hidden)]
4111impl Default for crate::reg32::Reg32Bits<10> {
4112    fn default() -> Self {
4113        Self(0)
4114    }
4115}
4116#[doc(hidden)]
4117impl Default for crate::reg32::Reg32Bits<11> {
4118    fn default() -> Self {
4119        Self(0)
4120    }
4121}
4122#[doc(hidden)]
4123impl Default for crate::reg32::Reg32Bits<12> {
4124    fn default() -> Self {
4125        Self(0)
4126    }
4127}
4128#[doc(hidden)]
4129impl Default for crate::reg32::Reg32Bits<13> {
4130    fn default() -> Self {
4131        Self(0)
4132    }
4133}
4134#[doc(hidden)]
4135impl Default for crate::reg32::Reg32Bits<14> {
4136    fn default() -> Self {
4137        Self(0)
4138    }
4139}
4140#[doc(hidden)]
4141impl Default for crate::reg32::Reg32Bits<15> {
4142    fn default() -> Self {
4143        Self(0)
4144    }
4145}
4146#[doc(hidden)]
4147impl Default for crate::reg32::Reg32Bits<16> {
4148    fn default() -> Self {
4149        Self(0)
4150    }
4151}
4152#[doc(hidden)]
4153impl Default for crate::reg32::Reg32Bits<17> {
4154    fn default() -> Self {
4155        Self(0)
4156    }
4157}
4158#[doc(hidden)]
4159impl Default for crate::reg32::Reg32Bits<18> {
4160    fn default() -> Self {
4161        Self(0)
4162    }
4163}
4164#[doc(hidden)]
4165impl Default for crate::reg32::Reg32Bits<19> {
4166    fn default() -> Self {
4167        Self(0)
4168    }
4169}
4170#[doc(hidden)]
4171impl Default for crate::reg32::Reg32Bits<20> {
4172    fn default() -> Self {
4173        Self(0)
4174    }
4175}
4176#[doc(hidden)]
4177impl Default for crate::reg32::Reg32Bits<21> {
4178    fn default() -> Self {
4179        Self(0)
4180    }
4181}
4182#[doc(hidden)]
4183impl Default for crate::reg32::Reg32Bits<22> {
4184    fn default() -> Self {
4185        Self(0)
4186    }
4187}
4188#[doc(hidden)]
4189impl Default for crate::reg32::Reg32Bits<23> {
4190    fn default() -> Self {
4191        Self(0)
4192    }
4193}
4194#[doc(hidden)]
4195impl Default for crate::reg32::Reg32Bits<24> {
4196    fn default() -> Self {
4197        Self(0)
4198    }
4199}
4200#[doc(hidden)]
4201impl Default for crate::reg32::Reg32Bits<25> {
4202    fn default() -> Self {
4203        Self(0)
4204    }
4205}
4206#[doc(hidden)]
4207impl Default for crate::reg32::Reg32Bits<26> {
4208    fn default() -> Self {
4209        Self(0)
4210    }
4211}
4212#[doc(hidden)]
4213impl Default for crate::reg32::Reg32Bits<27> {
4214    fn default() -> Self {
4215        Self(0)
4216    }
4217}
4218#[doc(hidden)]
4219impl Default for crate::reg32::Reg32Bits<28> {
4220    fn default() -> Self {
4221        Self(0)
4222    }
4223}
4224#[doc(hidden)]
4225impl Default for crate::reg32::Reg32Bits<29> {
4226    fn default() -> Self {
4227        Self(0)
4228    }
4229}
4230#[doc(hidden)]
4231impl Default for crate::reg32::Reg32Bits<30> {
4232    fn default() -> Self {
4233        Self(0)
4234    }
4235}
4236#[doc(hidden)]
4237impl Default for crate::reg32::Reg32Bits<31> {
4238    fn default() -> Self {
4239        Self(0)
4240    }
4241}
4242#[doc(hidden)]
4243impl Default for crate::reg32::Reg32Bits<32> {
4244    fn default() -> Self {
4245        Self(0)
4246    }
4247}