X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fgmqcc.git;a=blobdiff_plain;f=gmqcc.h;h=448c0c371faeede86bdf92be61e43e274518394a;hp=97f0e4d1774be599c661fe409e18cf1e7522f853;hb=2b7b2ea45594f40012bb92958efb9e7aed527534;hpb=2ddb5ad50ddf958ad5639f79e15ad91c37bdb720 diff --git a/gmqcc.h b/gmqcc.h index 97f0e4d..448c0c3 100644 --- a/gmqcc.h +++ b/gmqcc.h @@ -265,7 +265,7 @@ void _util_vec_grow(void **a, size_t i, size_t s); ) /* exposed interface */ -#define vec_meta(A) (((vector_t*)((void*)A)) - 1) +#define vec_meta(A) (((vector_t*)((void*)(A))) - 1) #define vec_free(A) ((void)((A) ? (mem_d((void*)vec_meta(A)), (A) = NULL) : 0)) #define vec_push(A,V) (GMQCC_VEC_WILLGROW((A),1), (A)[vec_meta(A)->used++] = (V)) #define vec_size(A) ((A) ? vec_meta(A)->used : 0) @@ -627,6 +627,11 @@ enum { /* TODO: elide */ extern const char *util_instr_str[VINSTR_END]; +void util_swap_header (prog_header_t *code_header); +void util_swap_statements (prog_section_statement_t *statements); +void util_swap_defs_fields(prog_section_both_t *section); +void util_swap_functions (prog_section_function_t *functions); +void util_swap_globals (int32_t *globals); typedef float qcfloat_t; typedef int32_t qcint_t;