mrm@datagen.UUCP (02/20/84)
At the ANSI X3J11 (ANSI C standards), the PRIME rep. said that for the C compiler produced by PRIME, they do indeed have two different sizes for pointers (ie, a word pointer which occupies 32 bits, and a byte/bit pointer which occupies 48 bits, which is longer than their long variables are). Michael Meissner Data General Corporation ...{ allegra, inhp4, rocky2, decvax!ittvax }!datagen!mrm
wan@gatech.UUCP (Peter N. Wan) (02/24/84)
Aha.... I knew there was an article that I wanted to respond to, but couldn't find it in my stack of printouts. There are two C language compilers available for Prime machines that I am aware of. The first one is the one put out by Prime Computer (it was originally from Primarily Software, Inc., I believe). This compiler does indeed use different-sized pointers (48-bit pointers consist of a segment number, word offset within that segment, and then a bit specification in the field address registers). Their 32-bit pointers are just the segment number and word offset. The other compiler is the one licensed by the School of ICS at Georgia Tech with their Software Tools implementation for Primes. This compiler generates 32-bit pointers (character arrays are stored one character per word). Since I have not worked much with the Prime C compilers, I had to ask one of our Prime gurus about the preceding; a rather short disassembly session yielded the above information. I don't know if other code might be generated for cases such as struct pointers, etc. -- Peter N Wan WHAT : GaTech System Administrator, CSNET Technical Liaison MAIL : School of ICS, Georgia Tech, Atlanta, Georgia 30332 BELL : (404) 894-3658 [office] / (404) 894-3152 [messages] UUCP : ...!{akgua,allegra,emory,rlgvax,sb1,ut-ngp,ut-sally}!gatech!wan ARPA : wan.gatech@CSNet-Relay CSNET : wan@gatech