mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-11-05 20:35:44 +00:00
added number of arguments
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@52 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
e1d4294a45
commit
0ea00c9a3c
2 changed files with 642 additions and 538 deletions
9
dyngen.c
9
dyngen.c
|
@ -282,7 +282,9 @@ void gen_code(const char *name, unsigned long offset, unsigned long size,
|
|||
error("inconsistent argument numbering in %s", name);
|
||||
}
|
||||
|
||||
if (gen_switch) {
|
||||
if (gen_switch == 2) {
|
||||
fprintf(outfile, "DEF(%s, %d)\n", name + 3, nb_args);
|
||||
} else if (gen_switch == 1) {
|
||||
|
||||
/* output C code */
|
||||
fprintf(outfile, "case INDEX_%s: {\n", name);
|
||||
|
@ -559,12 +561,13 @@ int load_elf(const char *filename, FILE *outfile, int do_print_enum)
|
|||
}
|
||||
|
||||
if (do_print_enum) {
|
||||
fprintf(outfile, "DEF(end)\n");
|
||||
fprintf(outfile, "DEF(end, 0)\n");
|
||||
for(i = 0, sym = symtab; i < nb_syms; i++, sym++) {
|
||||
const char *name, *p;
|
||||
name = strtab + sym->st_name;
|
||||
if (strstart(name, OP_PREFIX, &p)) {
|
||||
fprintf(outfile, "DEF(%s)\n", p);
|
||||
gen_code(name, sym->st_value, sym->st_size, outfile,
|
||||
text, relocs, nb_relocs, reloc_sh_type, symtab, strtab, 2);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
1171
opc-i386.h
1171
opc-i386.h
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue