SCM Repository
[smlnj] Diff of /sml/trunk/src/MLRISC/alpha/ra/alphaSpillInstr.sml
Diff of /sml/trunk/src/MLRISC/alpha/ra/alphaSpillInstr.sml
Parent Directory
|
Revision Log
|
Patch
44 |
|
|
45 |
fun spillF (instr, reg, spillLoc) = let |
fun spillF (instr, reg, spillLoc) = let |
46 |
val newR = C.newFreg() |
val newR = C.newFreg() |
47 |
val instr' = Rewrite.rewriteDef(instr, reg, newR) |
val instr' = Rewrite.frewriteDef(instr, reg, newR) |
48 |
in |
in |
49 |
{code=[instr', storeAtEA CB.FP (newR, spillLoc)], |
{code=[instr', storeAtEA CB.FP (newR, spillLoc)], |
50 |
proh=[newR], |
proh=[newR], |
63 |
|
|
64 |
fun reloadF(instr, reg, spillLoc) = let |
fun reloadF(instr, reg, spillLoc) = let |
65 |
val newR = C.newFreg() |
val newR = C.newFreg() |
66 |
val instr' = Rewrite.rewriteUse(instr, reg, newR) |
val instr' = Rewrite.frewriteUse(instr, reg, newR) |
67 |
in |
in |
68 |
{code=[loadFromEA CB.FP (newR, spillLoc), instr'], |
{code=[loadFromEA CB.FP (newR, spillLoc), instr'], |
69 |
proh=[newR], |
proh=[newR], |
|
Legend:
Removed from v.1293 |
|
changed lines |
|
Added in v.1294 |
|
|