fn internal_fp_binop_def_r_mem(&mut self, inst: &str, dest: Reg, src: Mem) {
        trace!("emit: {} {}, {} -> {}", inst, src, dest, dest);

        let (mem, mut uses) = self.prepare_mem(src, inst.len() + 1);
        let (reg, id, loc) = self.prepare_fpreg(dest, inst.len() + 1 + mem.len() + 1);

        // uses are GPRs, it won't include FPRs - we can simply insert into the map
        uses.insert(id, vec![loc.clone()]);

        let asm = format!("{} {},{}", inst, mem, reg);

        self.add_asm_inst(
            asm,
            linked_hashmap!{
                id => vec![loc]
            },
            uses,
            true
        )
    }
/// emits an instruction (use 1 fpreg 1 memory operand, define the fpreg)
emits an instruction (use 1 fpreg 1 memory operand, define the fpreg)
emits an instruction ( use 1 fpreg 1 memory operand define the fpreg )
fn internal_fp_binop_def_r_mem(&mut self, inst: &str, dest: Reg, src: Mem) {
        trace!("emit: {} {}, {} -> {}", inst, src, dest, dest);
        let (mem, mut uses) = self.prepare_mem(src, inst.len() + 1);
        let (reg, id, loc) = self.prepare_fpreg(dest, inst.len() + 1 + mem.len() + 1);
        // uses are GPRs, it won't include FPRs - we can simply insert into the map
        uses.insert(id, vec![loc.clone()]);
        let asm = format!("{} {},{}", inst, mem, reg);
        self.add_asm_inst(
            asm,
            linked_hashmap!{
                id => vec![loc]
            },
            uses,
            true
        )
    }
fn internal_fp_binop_def_r_mem ( & mut self , inst : & str , dest : Reg , src : Mem ) { trace ! ( " " inst src dest dest ) ; let ( mem , mut uses ) = self . prepare_mem ( src , inst . len ( ) + 1 ) ; let ( reg , id , loc ) = self . prepare_fpreg ( dest , inst . len ( ) + 1 + mem . len ( ) + 1 ) ; // uses are GPRs, it won't include FPRs - we can simply insert into the map uses . insert ( id , vec ! [ loc clone ( ) ] ) ; let asm = format ! ( " " inst mem reg ) ; self . add_asm_inst ( asm , linked_hashmap ! { id vec [ loc ] } , uses , true ) }
emits an instruction (use 1 fpreg 1 memory operand, define the fpreg)
emits an instruction ( use 1 fpreg 1 memory operand define the fpreg )
&mut self
inst
&str
dest
Reg
src
Mem
&mut self
inst
&str
dest
Reg
src
Mem