ptx_parser/unparser/instruction/
mad24.rs1#![allow(unused)]
9
10use crate::lexer::PtxToken;
11use crate::unparser::{PtxUnparser, common::*};
12
13pub mod section_0 {
14 use super::*;
15 use crate::r#type::instruction::mad24::section_0::*;
16
17 impl PtxUnparser for Mad24ModeType {
18 fn unparse_tokens(&self, tokens: &mut ::std::vec::Vec<PtxToken>) {
19 push_opcode(tokens, "mad24");
20 match &self.mode {
21 Mode::Hi => {
22 push_directive(tokens, "hi");
23 }
24 Mode::Lo => {
25 push_directive(tokens, "lo");
26 }
27 }
28 match &self.type_ {
29 Type::U32 => {
30 push_directive(tokens, "u32");
31 }
32 Type::S32 => {
33 push_directive(tokens, "s32");
34 }
35 }
36 self.d.unparse_tokens(tokens);
37 tokens.push(PtxToken::Comma);
38 self.a.unparse_tokens(tokens);
39 tokens.push(PtxToken::Comma);
40 self.b.unparse_tokens(tokens);
41 tokens.push(PtxToken::Comma);
42 self.c.unparse_tokens(tokens);
43 tokens.push(PtxToken::Semicolon);
44 }
45 }
46
47 impl PtxUnparser for Mad24HiSatS32 {
48 fn unparse_tokens(&self, tokens: &mut ::std::vec::Vec<PtxToken>) {
49 push_opcode(tokens, "mad24");
50 push_directive(tokens, "hi");
51 push_directive(tokens, "sat");
52 push_directive(tokens, "s32");
53 self.d.unparse_tokens(tokens);
54 tokens.push(PtxToken::Comma);
55 self.a.unparse_tokens(tokens);
56 tokens.push(PtxToken::Comma);
57 self.b.unparse_tokens(tokens);
58 tokens.push(PtxToken::Comma);
59 self.c.unparse_tokens(tokens);
60 tokens.push(PtxToken::Semicolon);
61 }
62 }
63}