Add macros for defining signatures built from ASCII characters
All checks were successful
ci/woodpecker/push/build Pipeline was successful

This commit is contained in:
Rafal Kupiec 2022-08-30 21:56:55 +02:00
parent 94273292c5
commit 6ef36cbd26
Signed by: belliash
GPG Key ID: 4E829243E0CFE6B4

View File

@ -57,6 +57,11 @@
/* Macro for rounding up */ /* Macro for rounding up */
#define ROUND_UP(X, Alignment) ROUND_DOWN((X) + (Alignment - 1), Alignment) #define ROUND_UP(X, Alignment) ROUND_DOWN((X) + (Alignment - 1), Alignment)
/* Macros for defining signatures built from ASCII characters */
#define SIGNATURE16(A, B) ((A) | (B << 8))
#define SIGNATURE32(A, B, C, D) (SIGNATURE16(A, B) | (SIGNATURE16(C, D) << 16))
#define SIGNATURE64(A, B, C, D, E, F, G, H) (SIGNATURE32(A, B, C, D) | ((UINT64)(SIGNATURE32(E, F, G, H)) << 32))
/* Variadic ABI functions */ /* Variadic ABI functions */
typedef __builtin_va_list VA_LIST; typedef __builtin_va_list VA_LIST;
#define VA_ARG(Marker, Type) ((sizeof (Type) < sizeof(UINT_PTR)) ? \ #define VA_ARG(Marker, Type) ((sizeof (Type) < sizeof(UINT_PTR)) ? \