SCM Repository
[smlnj] Diff of /MLRISC/trunk/amd64/staged-allocation/amd64-svid-fn.sml
Diff of /MLRISC/trunk/amd64/staged-allocation/amd64-svid-fn.sml
Parent Directory
|
Revision Log
|
Patch
81 |
val cCallGpr = SA.freshCounter () |
val cCallGpr = SA.freshCounter () |
82 |
val cCallFpr = SA.freshCounter () |
val cCallFpr = SA.freshCounter () |
83 |
(* initial store *) |
(* initial store *) |
84 |
|
|
85 |
val str0 = SA.init [cCallStk, cCallGpr, cCallFpr, cRetFpr, cRetGpr] |
val str0 = SA.init [cCallStk, cCallGpr, cCallFpr, cRetFpr, cRetGpr] |
86 |
|
|
87 |
val callStages = [ |
val callStages = [ |
105 |
|
|
106 |
end (* CCs *) |
end (* CCs *) |
107 |
|
|
108 |
|
fun offSp 0 = CCs.spReg |
109 |
|
| offSp offset = T.ADD (wordTy, CCs.spReg, T.LI offset) |
110 |
|
|
111 |
structure CCall = CCallFn ( |
structure CCall = CCallFn ( |
112 |
structure T = T |
structure T = T |
113 |
structure C = C |
structure C = C |
114 |
val wordTy = wordTy |
val wordTy = wordTy |
115 |
fun offSp 0 = CCs.spReg |
val offSp = offSp) |
|
| offSp offset = T.ADD (wordTy, CCs.spReg, T.LI offset)) |
|
116 |
|
|
117 |
datatype c_arg = datatype CCall.c_arg |
datatype c_arg = datatype CCall.c_arg |
118 |
|
|
|
Legend:
Removed from v.3041 |
|
changed lines |
|
Added in v.3042 |
|
|