comparison dyncall/dyncall_signature.h @ 358:30aae7371373

- extended signature with calling convention mode switches for fastcall (gnu), default, cdecl, stdcall, arm (arm), arm (thumb), syscall - made formatted call (dcV?{Call,Arg}F) interface use those calling convention mode signature specifications to begin with - extended callf testcode with one standard and one vararg call to test those cc mode switches
author Tassilo Philipp
date Mon, 13 Apr 2020 15:12:01 +0200
parents f5577f6bf97a
children 78dfa2f9783a
comparison
equal deleted inserted replaced
357:d982a00c2177 358:30aae7371373
57 #define DC_SIGCHAR_POINTER 'p' 57 #define DC_SIGCHAR_POINTER 'p'
58 #define DC_SIGCHAR_STRING 'Z' 58 #define DC_SIGCHAR_STRING 'Z'
59 #define DC_SIGCHAR_STRUCT 'T' 59 #define DC_SIGCHAR_STRUCT 'T'
60 #define DC_SIGCHAR_ENDARG ')' /* also works for end struct */ 60 #define DC_SIGCHAR_ENDARG ')' /* also works for end struct */
61 61
62 /* callback signatures */ 62 /* calling convention / mode signatures */
63 63
64 #define DC_SIGCHAR_CC_PREFIX '_' 64 #define DC_SIGCHAR_CC_PREFIX '_'
65 #define DC_SIGCHAR_CC_ELLIPSIS 'e' 65 #define DC_SIGCHAR_CC_DEFAULT ':'
66 #define DC_SIGCHAR_CC_STDCALL 's' 66 #define DC_SIGCHAR_CC_ELLIPSIS 'e'
67 #define DC_SIGCHAR_CC_FASTCALL_GNU 'f' 67 #define DC_SIGCHAR_CC_ELLIPSIS_VARARGS '.'
68 #define DC_SIGCHAR_CC_FASTCALL_MS 'F' 68 #define DC_SIGCHAR_CC_CDECL 'c'
69 #define DC_SIGCHAR_CC_THISCALL_MS '+' 69 #define DC_SIGCHAR_CC_STDCALL 's'
70 #define DC_SIGCHAR_CC_FASTCALL_MS 'F'
71 #define DC_SIGCHAR_CC_FASTCALL_GNU 'f'
72 #define DC_SIGCHAR_CC_THISCALL_MS '+'
73 #define DC_SIGCHAR_CC_THISCALL_GNU '#'
74 #define DC_SIGCHAR_CC_ARM_ARM 'A'
75 #define DC_SIGCHAR_CC_ARM_THUMB 'a'
76 #define DC_SIGCHAR_CC_SYSCALL '$'
70 77
71 #endif /* DYNCALL_SIGNATURE_H */ 78 #endif /* DYNCALL_SIGNATURE_H */
72 79