Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/src/MLRISC/sparc/c-calls/sparc-c-calls.sml
ViewVC logotype

Diff of /sml/trunk/src/MLRISC/sparc/c-calls/sparc-c-calls.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1520, Mon Jun 21 02:29:23 2004 UTC revision 1521, Wed Jun 30 21:44:58 2004 UTC
# Line 78  Line 78 
78    
79      fun greg r = GP r      fun greg r = GP r
80      fun oreg r = GP (r + 8)      fun oreg r = GP (r + 8)
81        fun ireg r = GP (r + 24)
82      fun freg r = FP r      fun freg r = FP r
83    
84      fun reg32 r = T.REG (32, r)      fun reg32 r = T.REG (32, r)
# Line 137  Line 138 
138              pack (0, 1, l)              pack (0, 1, l)
139          end          end
140    
141    (**** START NEW CODE ****)
142    
143      (* the location of arguments/parameters; offsets are given with respect to the
144       * low end of the parameter area (see paramAreaOffset above).
145       *)
146        datatype arg_location
147          = Reg of T.ty * T.reg             (* integer/pointer argument in register *)
148          | FReg of T.fty * T.reg           (* floating-point argument in register *)
149          | Stk of T.ty * T.I.machine_int   (* integer/pointer argument in parameter area *)
150          | FStk of T.fty * T.I.machine_int (* floating-point argument in parameter area *)
151          | Args of arg_location list
152    
153        fun layout {conv, retTy, paramTys} = let
154              in
155                raise Fail "layout not implemented yet"
156              end
157    
158      (* C callee-save registers *)
159        val calleeSaveRegs = (* %l0-%l7 and %i0-%i7 *)
160              List.tabulate (16, fn r => GP(r+16))
161        val calleeSaveFRegs = []
162    
163    (**** END NEW CODE ****)
164    
165      fun genCall { name, proto, paramAlloc, structRet, saveRestoreDedicated,      fun genCall { name, proto, paramAlloc, structRet, saveRestoreDedicated,
166                    callComment, args } = let                    callComment, args } = let
167          val { conv, retTy, paramTys } = proto          val { conv, retTy, paramTys } = proto

Legend:
Removed from v.1520  
changed lines
  Added in v.1521

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0