|
muteki
|
ABI compatibility helpers. More...
Go to the source code of this file.
Macros | |
| #define | NO_EXPECTED_WARNINGS_BEGIN |
| #define | NO_EXPECTED_WARNINGS_END |
| #define | __APCS_WRAPPER_BASE(NAME, VA_LIST_NAME, STATIC, RETTYPE, ...) |
| #define | APCS_WRAPPER(NAME, VA_LIST_NAME, RETTYPE, ...) __APCS_WRAPPER_BASE(NAME, VA_LIST_NAME, , RETTYPE, __VA_ARGS__) |
| Create thunk for an APCS caller. | |
| #define | APCS_WRAPPER_STATIC(NAME, VA_LIST_NAME, RETTYPE, ...) __APCS_WRAPPER_BASE(NAME, VA_LIST_NAME, static, RETTYPE, __VA_ARGS__) |
Same as APCS_WRAPPER(), but marks the outer thunk as static. | |
ABI compatibility helpers.
| #define APCS_WRAPPER | ( | NAME, | |
| VA_LIST_NAME, | |||
| RETTYPE, | |||
| ... | |||
| ) | __APCS_WRAPPER_BASE(NAME, VA_LIST_NAME, , RETTYPE, __VA_ARGS__) |
Create thunk for an APCS caller.
This macro generates a set of thunks that adapts a function using AAPCS calling convention for use with an APCS caller. The syntax is as follows:
| NAME | Name of the thunk that will be called from APCS functions. |
| VA_LIST_NAME | The name of the variadic list object. |
| RETTYPE | Return type of the thunk. Used to match the signature of the outer thunk to those of a kernel callback pointer. |
| ... | Parameter signature of the outer thunk. Used to match the signature of the outer thunk to those of a kernel callback pointer. |
| #define APCS_WRAPPER_STATIC | ( | NAME, | |
| VA_LIST_NAME, | |||
| RETTYPE, | |||
| ... | |||
| ) | __APCS_WRAPPER_BASE(NAME, VA_LIST_NAME, static, RETTYPE, __VA_ARGS__) |
Same as APCS_WRAPPER(), but marks the outer thunk as static.
| NAME | Name of the thunk that will be called from APCS functions. |
| VA_LIST_NAME | The name of the variadic list object. |
| RETTYPE | Return type of the thunk. Used to match the signature of the outer thunk to those of a kernel callback pointer. |
| ... | Parameter signature of the outer thunk. Used to match the signature of the outer thunk to those of a kernel callback pointer. |