ptx_parser/type/instruction/
max.rs1#![allow(unused)]
19use crate::r#type::common::*;
20
21pub mod section_0 {
22 use crate::Spanned;
23 use crate::parser::Span;
24 use crate::r#type::common::*;
25
26 use serde::Serialize;
27
28 #[derive(Debug, Clone, PartialEq, Serialize)]
29 pub enum Atype {
30 U16x2, U16, U32, U64, S16, S64, }
37
38 #[derive(Debug, Clone, PartialEq, Serialize)]
39 pub enum Btype {
40 S16x2, S32, }
43
44 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
45 pub struct MaxAtype {
46 pub atype: Atype, pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
51 }
52
53 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
54 pub struct MaxReluBtype {
55 pub relu: bool, pub btype: Btype, pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
61 }
62
63 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
64 pub struct MaxFtzNanXorsignAbsF32 {
65 pub ftz: bool, pub nan: bool, pub xorsign_abs: bool, pub f32: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
73 }
74
75 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
76 pub struct MaxFtzNanAbsF32 {
77 pub ftz: bool, pub nan: bool, pub abs: bool, pub f32: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub c: GeneralOperand, pub span: Span,
86 }
87
88 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
89 pub struct MaxF64 {
90 pub f64: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
95 }
96
97 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
98 pub struct MaxFtzNanXorsignAbsF16 {
99 pub ftz: bool, pub nan: bool, pub xorsign_abs: bool, pub f16: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
107 }
108
109 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
110 pub struct MaxFtzNanXorsignAbsF16x2 {
111 pub ftz: bool, pub nan: bool, pub xorsign_abs: bool, pub f16x2: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
119 }
120
121 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
122 pub struct MaxNanXorsignAbsBf16 {
123 pub nan: bool, pub xorsign_abs: bool, pub bf16: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
130 }
131
132 #[derive(Debug, Clone, PartialEq, Spanned, Serialize)]
133 pub struct MaxNanXorsignAbsBf16x2 {
134 pub nan: bool, pub xorsign_abs: bool, pub bf16x2: (), pub d: GeneralOperand, pub a: GeneralOperand, pub b: GeneralOperand, pub span: Span,
141 }
142}
143
144pub use section_0::Atype as Atype0;
147pub use section_0::Btype as Btype0;
148pub use section_0::MaxAtype;
149pub use section_0::MaxF64;
150pub use section_0::MaxFtzNanAbsF32;
151pub use section_0::MaxFtzNanXorsignAbsF16;
152pub use section_0::MaxFtzNanXorsignAbsF16x2;
153pub use section_0::MaxFtzNanXorsignAbsF32;
154pub use section_0::MaxNanXorsignAbsBf16;
155pub use section_0::MaxNanXorsignAbsBf16x2;
156pub use section_0::MaxReluBtype;