public string ToIntelASM(SSA ssa) { string reg1 = "e" + ssa.Name + "x"; string op1 = ssa.Operand1.Value; if ((ssa.Operand1 as Operand).Version > 0) op1 = "e" + (ssa.Operand1 as Operand).Code + "x"; if (ssa.Operator == Amy.Operator.Assign) return "MOV " + reg1 + ", " + op1; if (ssa.Operator == Amy.Operator.Add) return "ADD " + reg1 + ", " + op1; if (ssa.Operator == Amy.Operator.Sub) return "SUB " + reg1 + ", " + op1; if (ssa.Operator == Amy.Operator.Mul) return "MUL " + reg1 + ", " + op1; if (ssa.Operator == Amy.Operator.Div) return "DIV " + reg1 + ", " + op1; return "!?"; }