[kaffe] printing to a file in kaffe
Dalibor Topic
robilad at kaffe.org
Tue Aug 24 03:27:45 PDT 2004
sita wrote:
> Hi,
>
> I'm actually trying to profile kaffe. In this process, I'm printing some arguments to a file.
> Say for example If I have a function called gcmalloc in kaffe, I put a hook as follows:
>
> extern FILE *outfp; //outfp points to my trace file
> fprintf(outfp,"%p %d\n",mem,sz);
>
> I expect the trace file to be in a fixed format something like this:
>
> 0x1234 22
> 0x2345 34
> .....
>
> But I see something like
>
> 0x1234 220x2345 34
>
> I used fflush(outfp) but I really cannot print something to a file in the format that I want.
> The format is really important for my analysis. Can anyone please help me with this and let me know how to print to a file in the format that I want in kaffe.
Hi sita,
your problem may be caused by different threads calling your function at
the same time. Try using dprintf, like other debugging output does.
Looking at kaffe/kaffevm/kaffe-gc/gcmem.c, it seems like that sort of
output (size and location of allocated blocks in the gc) is already
printed by -vmdebug GCALLOC. You have to enable debugging in configure,
though. And you'd have to deal with a slightly different output format.
best of luck for your work,
dalibor topic
More information about the kaffe
mailing list