ptx_parser/type/instruction/
div.rs1#![allow(unused)]
14use crate::r#type::common::*;
15
16pub mod section_0 {
17 use crate::Spanned;
18 use crate::parser::Span;
19 use crate::r#type::common::*;
20
21 use serde::Serialize;
22
23 #[derive(Debug, Clone, PartialEq, Serialize)]
24 pub enum Type {
25 U16, U32, U64, S16, S32, S64, }
32
33 #[derive(Debug, Clone, PartialEq, Serialize)]
34 pub enum Rnd {
35 Rn, Rz, Rm, Rp, }
40
41 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
42 pub struct DivType {
43 pub type_: Type, pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
48 }
49
50 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
51 pub struct DivApproxFtzF32 {
52 pub approx: (), pub ftz: bool, pub f32: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
59 }
60
61 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
62 pub struct DivFullFtzF32 {
63 pub full: (), pub ftz: bool, pub f32: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
70 }
71
72 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
73 pub struct DivRndFtzF32 {
74 pub rnd: Rnd, pub ftz: bool, pub f32: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
81 }
82
83 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
84 pub struct DivRndF64 {
85 pub rnd: Rnd, pub f64: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
91 }
92}
93
94pub use section_0::DivApproxFtzF32;
97pub use section_0::DivFullFtzF32;
98pub use section_0::DivRndF64;
99pub use section_0::DivRndFtzF32;
100pub use section_0::DivType;
101pub use section_0::Rnd as Rnd0;
102pub use section_0::Type as Type0;