Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Aug 1999 12:03:54 -0400
From:      Sergey Babkin <babkin@bellatlantic.net>
To:        Mark Ovens <mark@dogma.freebsd-uk.eu.org>
Cc:        Thomas David Rivers <rivers@dignus.com>, freebsd-hackers@freebsd.org, freebsd-questions@freebsd.org, kdrobnac@mission.mvnc.edu
Subject:   Re: Intel Merced FreeBSD???
Message-ID:  <37C8086A.2B9412FB@bellatlantic.net>
References:  <199908271229.IAA35280@lakes.dignus.com> <37C7312B.EE446A5C@bellatlantic.net> <19990828020123.C291@marder-1>

next in thread | previous in thread | raw e-mail | index | archive | help
Mark Ovens wrote:
> 
> On Fri, Aug 27, 1999 at 08:45:31PM -0400, Sergey Babkin wrote:

> >
> > A funny thing is that Microsoft is porting essentially a
> > 32-bit version of Windows to Merced. All the programs for
> > Windows that want to use 64-bit support will have to be
> > modified because the MS compiler defines both int and long
> > as 32-bit. On the other hand the Unix compilers (at least
> > UnixWare and as far as I understood that's the common Unix
> > convention) provide a mode with 64-bit longs that gives
> > certain degree of 64-bit awareness just by recompiling.
> >
> 
> marder-1:/usr/marko{57}% cat > size.c
> #include <stdio.h>
> 
> int main (void)
>         {
>         printf("short == %d\n", sizeof(short));
>         printf("int == %d\n", sizeof(int));
>         printf("long == %d\n", sizeof(long));
>         printf("long long == %d\n", sizeof(long long));
> 
>         return(0);
>         }
> ^D
> marder-1:/usr/marko{57}% cc !$
> marder-1:/usr/marko{57}% ./a.out
> short == 2
> int == 4
> long == 4
> long long == 8
> marder-1:/usr/marko{57}%
> 
> And the same is true on SunOS 4.1.x as well (although not 100% sure
> about "long long").

I was talking about compilers for the 64-bit machines. As far
as I understood to make porting easier the major Unix vendors
have agreed on 2 64-bit modes in addition to the compatibility
32-bit mode:

- 32-bit int, 32-bit long, 64-bit long long, 64-bit pointers
- 32-bit int, 64-bit long, 64-bit long long, 64-bit pointers

While the 64-bit Windows NT has 32-bit int, 32-bit long,
64-bit long long, 32-bit pointers, 64-bit some special
kind of pointers.

Although I may be confusing something.

-SB


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?37C8086A.2B9412FB>