Subversion Repositories Kolibri OS

Rev

Rev 8978 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 8978 Rev 8979
Line 66... Line 66...
66
;        parameter list using `uses` word like this:\n
66
;        parameter list using `uses` word like this:\n
67
;        `proc name uses eax ebx ecx, param0, param1`\n
67
;        `proc name uses eax ebx ecx, param0, param1`\n
68
;        If you need to specify both calling convention and used registers
68
;        If you need to specify both calling convention and used registers
69
;        put calling convention first and then `uses` statement like this:\n
69
;        put calling convention first and then `uses` statement like this:\n
70
;        `proc name stdcall uses ebx ecx edx, param0, param1`
70
;        `proc name stdcall uses ebx ecx edx, param0, param1`\n
71
; @param args Name of the procedure and a comma-separated argument list.
71
;        The defined procedure should be ended using `endp` macro.
-
 
72
; @param args Name of the procedure and a comma-separated argument list.
72
;             Type of any parameter may be specified by semicolon after its
73
;             Type of any parameter may be specified by semicolon after its
73
;             name like this:\n
74
;             name like this:\n
74
;             `proc name param0:dword, param1:qword`.
75
;             `proc name param0:dword, param1:qword`.
75
macro proc [args]
76
macro proc [args]
76
 { common
77
 { common
Line 253... Line 254...
253
    end if
254
    end if
254
    position@initlocal = position@initlocal + current@initlocal
255
    position@initlocal = position@initlocal + current@initlocal
255
   end while }
256
   end while }
256
 
257
 
Line -... Line 258...
-
 
258
; @brief Mark the end of a procedure created by `proc` macro
257
macro endp
259
macro endp
258
 { purge ret,locals,endl
260
 { purge ret,locals,endl
259
   finish@proc
261
   finish@proc
260
   purge finish@proc
262
   purge finish@proc
261
   restore regs@proc
263
   restore regs@proc