Thread View: comp.sys.nsc.32k
1 messages
1 total messages
Started by randy hyde
Tue, 12 Jan 1993 17:09
tcsh
Author: randy hyde
Date: Tue, 12 Jan 1993 17:09
Date: Tue, 12 Jan 1993 17:09
36 lines
2193 bytes
2193 bytes
Has anyone managed to get tcsh running under MINIX/532? Before I waste
a lot of time on this, I thought I'd check.
Also, what is the latest version of gcc on MINIX/532? Is G++ or Objective-C
running yet? How about the libraries?
Finally, while perusing the gcc sources I noticed a couple of interesting
things that I thought I'd ask some questions about-
1) To pop 4 or 8 bytes of the stack, gcc emits "cmpqd 0, tos" and "cmpd tos,tos"
instructions. I wrote a rudimentary benchmark in assembly to compare the
performance against "adjspd -4" and "adjspd -8". The "ADJSPD" instructions
were faster (though longer). Is this true in general for the 32532? Did
they pick these sequences to save space, or do they actually run faster on
pre-532 chips, or were they concerned about cache space?
2) For values larger than 4 or 8 bytes, they use ADJSPB (<64 bytes), ADJSPW
(<8192 bytes), or ADJSPD (all others). I seem to recall reading that there
is a bug in the 32000 family such that adjspb and adjspw only affect the
L.O. byte or word of the SP register. Does this problem still exist on the
32532? In any case, the ADJSPD instruction is faster than ADJSPB or
ADJSPW, even if it is longer. Shouldn't these instructions get switched
to ADJSPD?
BTW, the 32532 timing chart claims CMP tos,tos requires t(eu)+t(au) =
2+(2+2) = 6 cycles to execute while ADJSPD requires only 4. This is
consistent with my measured timings. CMPQD 0,tos, OTOH, should run at the
same speed (approximately) which I did not find to be the case with my
simple benchmark.
3) I presume (by looking at object code) that gcc trashes R0-R2 and preserves
the other registers?
*** Randy Hyde O-)
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads