From 56aabbe35d9a726e09b2a6b113a22d4743a665f6 Mon Sep 17 00:00:00 2001 From: Chunmyong Park Date: Tue, 23 Jun 2020 04:26:05 +0000 Subject: [PATCH] Update skeleton --- src/asm/mod.rs | 6 ++++++ src/asm/write_asm.rs | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/asm/mod.rs b/src/asm/mod.rs index f069c33..97c214c 100644 --- a/src/asm/mod.rs +++ b/src/asm/mod.rs @@ -531,6 +531,12 @@ pub enum Pseudo { }, /// mv rd, rs Mv { rd: Register, rs: Register }, + /// fmv.s rd, rs or fmv.d rd, rs + Fmv { + data_size: DataSize, + rd: Register, + rs: Register, + }, /// neg(w) rd, rs Neg { data_size: Option, diff --git a/src/asm/write_asm.rs b/src/asm/write_asm.rs index d66e4cd..3f54159 100644 --- a/src/asm/write_asm.rs +++ b/src/asm/write_asm.rs @@ -386,6 +386,12 @@ impl WriteString for Pseudo { match self { Self::Li { rd, imm } => format!("li\t{},{}", rd.write_string(), *imm as i64), Self::Mv { rd, rs } => format!("mv\t{},{}", rd.write_string(), rs.write_string()), + Self::Fmv { data_size, rd, rs } => format!( + "fmv.{}\t{},{}", + data_size.write_string(), + rd.write_string(), + rs.write_string() + ), Self::Neg { data_size, rd, rs } => format!( "neg{}\t{},{}", data_size.write_string(),