mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-05-31 08:41:11 +00:00
[qfcc] Dump local defs for qfo functions
This commit is contained in:
parent
e31f03fd36
commit
734f10d43e
1 changed files with 25 additions and 2 deletions
|
@ -446,8 +446,9 @@ qfo_functions (qfo_t *qfo)
|
||||||
{
|
{
|
||||||
qfo_def_t *def;
|
qfo_def_t *def;
|
||||||
qfo_func_t *func;
|
qfo_func_t *func;
|
||||||
unsigned i, d;
|
unsigned i, j, d;
|
||||||
unsigned space;
|
unsigned space;
|
||||||
|
qfo_mspace_t *locals;
|
||||||
|
|
||||||
for (i = 0; i < qfo->num_funcs; i++) {
|
for (i = 0; i < qfo->num_funcs; i++) {
|
||||||
func = &qfo->funcs[i];
|
func = &qfo->funcs[i];
|
||||||
|
@ -471,7 +472,29 @@ qfo_functions (qfo_t *qfo)
|
||||||
printf (" @ %x", func->code);
|
printf (" @ %x", func->code);
|
||||||
else
|
else
|
||||||
printf (" = #%d", -func->code);
|
printf (" = #%d", -func->code);
|
||||||
puts ("");
|
printf (" loc: %d\n", func->locals_space);
|
||||||
|
if (func->locals_space) {
|
||||||
|
locals = &qfo->spaces[func->locals_space];
|
||||||
|
printf ("%*s%d %p %d %p %d %d\n", 16, "", locals->type,
|
||||||
|
locals->defs, locals->num_defs,
|
||||||
|
locals->d.data, locals->data_size, locals->id);
|
||||||
|
for (j = 0; j < locals->num_defs; j++) {
|
||||||
|
qfo_def_t *def = locals->defs + j;
|
||||||
|
int offset;
|
||||||
|
const char *typestr;
|
||||||
|
const char *name;
|
||||||
|
qfot_type_t *type;
|
||||||
|
|
||||||
|
name = QFO_GETSTR (qfo, def->name);
|
||||||
|
//FIXME check type
|
||||||
|
type = QFO_POINTER (qfo, qfo_type_space, qfot_type_t,
|
||||||
|
def->type);
|
||||||
|
typestr = QFO_GETSTR (qfo, type->encoding);
|
||||||
|
offset = def->offset;
|
||||||
|
|
||||||
|
printf ("%*s%d %s %s\n", 20, "", offset, name, typestr);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue