X-Git-Url: http://git.joshuawise.com/snipe.git/blobdiff_plain/c2b45b3681553192a462bcdd376ee7a9bf83eef3..fe2f67179a5ea776444fdc8b30a27245867220ca:/codegen/solidify.sml diff --git a/codegen/solidify.sml b/codegen/solidify.sml index a2622e1..ba3fa89 100644 --- a/codegen/solidify.sml +++ b/codegen/solidify.sml @@ -54,7 +54,8 @@ struct X.OperSet.addList (X.OperSet.empty, opsused), X.OperSet.addList ( X.OperSet.empty, - [X.REG X.R7, + [X.REG X.R6, + X.REG X.R7, X.REG X.R8, X.REG X.R9, X.REG X.R10, @@ -183,6 +184,11 @@ struct (if isspilled op1 then spill (op1, spillreg1) else []) + | transform (X.INSN (pred, X.MOVSTR (op1, w))) = + [ X.INSN (pred, X.MOVSTR (real_op1 op1, w)) ] @ + (if isspilled op1 + then spill (op1, spillreg1) + else []) | transform (X.INSN (pred, X.MOVLBL (op1, w))) = [ X.INSN (pred, X.MOVLBL (real_op1 op1, w)) ] @ (if isspilled op1