DMD and 64-bit

Steven Schveighoffer schveiguy at yahoo.com
Sat Feb 19 18:14:10 PST 2011


On Sat, 19 Feb 2011 19:21:05 -0500, Nick Sabalausky <a at a.a> wrote:

> "Jonathan M Davis" <jmdavisProg at gmx.com> wrote in message
> news:mailman.1787.1298108224.4748.digitalmars-d at puremagic.com...
>> On Saturday 19 February 2011 01:12:25 Russel Winder wrote:
>> > Am I correct in assuming that DMD generates 32-bit by default and that
>> > for 64-bit you have to give the -m64 option?
>> >
>> > Is the eventual plan to use the natural word length of the platform as
>> > the default, i.e. 32-bit on 32-bit and 64-bit on 64-bit, with the  
>> option
>> > to force something different using the -m option à la GCC?
>>
>> 32 bit is the default for now. I don't know what Walter intends to do in
>> the
>> long run. If it were like gcc, then the default platform would be the
>> platform
>> which the compiler is built for (which is exactly what it's doing right
>> now),
>> but as far as I know, Walter has no plans to port dmd to x86_64.
>>
>> So, for now 32 bit is the default. It may or may not change later to be
>> the
>> platform that you're building on. Ideally though, it would be like gcc  
>> and
>> we'd
>> actually get a 64 bit version of dmd at some point.
>
> I don't mean this as "anti-64bit" trolling, just a genuine question, but
> what would be the point of a 64-bit build of DMD? (Note: I'm talking  
> about
> host, not target). Just to compile projects that have (on the order of)
> gigabytes of source?

This just sparked a thought of curiosity -- CTFE runs in the compiler, and  
if the compiler is 32-bit, does this mean that 64-bit builds execute CTFE  
functions in 32-bits during compilation?  If so, are there any  
reprecussions?  Thinking about it, everything is really dictated by the  
type system (which should be properly 64-bit), and for CTFE, the code used  
to execute isn't important, it's really just the result, right?

Just curious...

-Steve


More information about the Digitalmars-d mailing list