Skip to main content

ptx_parser/type/instruction/
bmsk.rs

1//! Original PTX specification:
2//!
3//! bmsk.mode.b32  d, a, b;
4//! .mode = { .clamp, .wrap };
5
6#![allow(unused)]
7use crate::r#type::common::*;
8
9pub mod section_0 {
10    use crate::Spanned;
11    use crate::parser::Span;
12    use crate::r#type::common::*;
13
14    use serde::Serialize;
15
16    #[derive(Debug, Clone, PartialEq, Serialize)]
17    pub enum Mode {
18        Clamp, // .clamp
19        Wrap,  // .wrap
20    }
21
22    #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
23    pub struct BmskModeB32 {
24        pub mode: Mode,        // .mode
25        pub b32: (),           // .b32
26        pub d: GeneralOperand, // d
27        pub a: GeneralOperand, // a
28        pub b: GeneralOperand, // b
29        pub span: Span,
30    }
31}
32
33// Re-export types with section suffixes to avoid naming conflicts
34// e.g., Type0 for section_0::Type, Type1 for section_1::Type
35pub use section_0::BmskModeB32;
36pub use section_0::Mode as Mode0;