1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-21 03:00:19 +02:00

Add filename and line number annotation abstraction.

* lib/jit_note.c: New file implementing a simple string+integer
	annotation, that should be used to map filename and line number
	to offsets in the generated jit.

	* include/lightning.h, lib/lightning.c: Update for the new
	note code.
	  Add an extra mandatory argument to init_jit, that is used
	as argument to bfd_openr.
	  Change from generic void* to char* the argument to jit_note
	and add an extra integer argument, to map to filename and
	line number.

	* check/ccall.c, check/lightning.c, include/lightning/jit_private.h,
	lib/jit_arm.c, lib/jit_disasm.c, lib/jit_mips.c, lib/jit_ppc.c,
	lib/jit_print.c, lib/jit_x86.c: lib/Makefile.am: Update for the
	new annotation code.

	* configure.ac, check/Makefile.am: Update to work with latest
	automake.
This commit is contained in:
pcpa 2013-01-11 15:29:35 -02:00
parent 4fe47942eb
commit a34410eee2
17 changed files with 464 additions and 46 deletions

View file

@ -375,13 +375,15 @@ _jit_print(jit_state_t *_jit)
else
print_flt(node->w.d);
continue;
case jit_code_note:
/* FIXME should be name:line information */
print_chr(' ');
print_ptr(node->v.p);
if (node->v.p)
print_str(node->v.n->u.p);
if (node->v.p && node->w.w)
print_chr(':');
if (node->w.w)
print_dec(node->w.w);
break;
case jit_code_data:
case jit_code_label:
case jit_code_prolog: case jit_code_epilog: