diff options
| author | Mirek Kratochvil <exa.exa@gmail.com> | 2023-08-12 15:12:03 +0200 |
|---|---|---|
| committer | Mirek Kratochvil <exa.exa@gmail.com> | 2023-08-12 15:12:03 +0200 |
| commit | 6be5a28bb90b391a5842a8ce3dfc7c154100ab68 (patch) | |
| tree | 22e04a263e68d983c6bf5d1fdebd662e66915e96 /include/macros.s | |
| parent | 5184299c7dfddeba4d2d2ba95d390040368f9736 (diff) | |
| download | uskel-6be5a28bb90b391a5842a8ce3dfc7c154100ab68.tar.gz uskel-6be5a28bb90b391a5842a8ce3dfc7c154100ab68.tar.bz2 | |
make a macro for pushing out thunks
Diffstat (limited to 'include/macros.s')
| -rw-r--r-- | include/macros.s | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/macros.s b/include/macros.s index c857995..c52f6b0 100644 --- a/include/macros.s +++ b/include/macros.s @@ -39,4 +39,22 @@ _macros_s_file: \name: .endm +.macro thunkargs arg,args:vararg + .ifnb \arg + thunkargs \args + pushq \arg + .endif +.endm + +.macro thunk code:req,n:req,args:vararg + thunkargs \args + pushq \n + pushq \code +.endm + +.macro thunkto reg:req,code:req,n:req,args:vararg + thunk \code,\n,\args + mov %rsp, \reg +.endm + .endif # _macros_s_file |
