ptx_parser/type/instruction/
mov.rs1#![allow(unused)]
21use crate::r#type::common::*;
22
23pub mod section_0 {
24 use crate::Spanned;
25 use crate::parser::Span;
26 use crate::r#type::common::*;
27
28 use serde::Serialize;
29
30 #[derive(Debug, Clone, PartialEq, Serialize)]
31 pub enum Type {
32 Pred, B16, B32, B64, U16, U32, U64, S16, S32, S64, F32, F64, }
45
46 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
47 pub struct MovType {
48 pub type_: Type, pub d: GeneralOperand, pub a: GeneralOperand, pub span: Span,
52 }
53
54 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
55 pub struct MovU32 {
56 pub u32: (), pub d: GeneralOperand, pub fname: GeneralOperand, pub span: Span,
60 }
61
62 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
63 pub struct MovU64 {
64 pub u64: (), pub d: GeneralOperand, pub fname: GeneralOperand, pub span: Span,
68 }
69
70 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
71 pub struct MovU321 {
72 pub u32: (), pub d: GeneralOperand, pub kernel: GeneralOperand, pub span: Span,
76 }
77
78 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
79 pub struct MovU641 {
80 pub u64: (), pub d: GeneralOperand, pub kernel: GeneralOperand, pub span: Span,
84 }
85}
86
87pub mod section_1 {
88 use crate::Spanned;
89 use crate::parser::Span;
90 use crate::r#type::common::*;
91
92 use serde::Serialize;
93
94 #[derive(Debug, Clone, PartialEq, Serialize)]
95 pub enum Type {
96 B128, B16, B32, B64, }
101
102 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
103 pub struct MovType1 {
104 pub type_: Type, pub d: GeneralOperand, pub a: GeneralOperand, pub span: Span,
108 }
109}
110
111pub use section_0::MovType;
114pub use section_0::MovU32;
115pub use section_0::MovU64;
116pub use section_0::MovU321;
117pub use section_0::MovU641;
118pub use section_0::Type as Type0;
119pub use section_1::MovType1;
120pub use section_1::Type as Type1;