[kaffe] cray int size problem
emoatgdub at hotmail.com
Mon Jul 21 14:29:01 PDT 2003
i'm another person working on the GW effort to port kaffe to a Cray SV-1,
and have a question about some JIT details.
on cray, all datatypes except chars are 8 bytes. for instance, ints and
longs are 8 bytes. however, in gtypes.h, it seems that kaffe requires
either int or long to be 4 bytes (as evidenced by this line:)
#error "sizeof(int) or sizeof(long) must be 4"
My question is whether this is a serious requirement: if we change this
line, will we be breaking other things?
also, on an relatively unrelated note, there are quite a few instruction
formats on the cray that take up 48-bits. However, most existing 64-bit
ports we're looking at only use 32-bit (LOUT). There is no macro for 48-bit
this is the existing line in kaffe/kaffevm/jit3/funcs.c :
#define LOUT (*(uint32*)&codeblock[(CODEPC += 4) - 4])
is there any inherent problem with simply defining our own macro like this:
#define LQOUT (*(uint64*)&codeblock[(CODEPC += 6) - 6])
we would have to make sure our shifting details are correct, but i think
that the extra space will simply be overwritten by the next statement that
at any rate, this message is already too long and vague. If there is anyone
out there with insights on the above, let me know.
Add photos to your e-mail with MSN 8. Get 2 months FREE*.
More information about the kaffe