www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - d compiler, Windows 7, and the new iX intel chips.

reply dcoder <dcoder devnull.com> writes:
Hello.

Probably a stupid question, but does the dmd v2 compiler work with Windows 7,
and the new intel chips like the i7?

Since the download page on digitalmars references i386 and Win32, I'm assuming
it doesn't?

I'm thinking about getting a new computer, but would like D to work on it.

thanks.
Jul 11 2010
next sibling parent "Simen kjaeraas" <simen.kjaras gmail.com> writes:
On Sun, 11 Jul 2010 10:49:34 +0200, dcoder <dcoder devnull.com> wrote:

 Hello.

 Probably a stupid question, but does the dmd v2 compiler work with  
 Windows 7,
 and the new intel chips like the i7?

 Since the download page on digitalmars references i386 and Win32, I'm  
 assuming
 it doesn't?

 I'm thinking about getting a new computer, but would like D to work on  
 it.

It does work. It does not, however, support all the new, fancy features of processor. (actually, that's not completely true, you can use them through assembly) -- Simen
Jul 11 2010
prev sibling parent Jonathan M Davis <jmdavisprog gmail.com> writes:
On Sunday 11 July 2010 01:49:34 dcoder wrote:
 Hello.
 
 Probably a stupid question, but does the dmd v2 compiler work with Windows
 7, and the new intel chips like the i7?
 
 Since the download page on digitalmars references i386 and Win32, I'm
 assuming it doesn't?
 
 I'm thinking about getting a new computer, but would like D to work on it.
 
 thanks.

All x86-64 chips (the Core i7 included) work with i386 and Win32 because they're backwards compatible. It just means that it's restricted to the i386 instruction set and cannot address memory beyond what i386 chips can do. So, you don't get as much out of the chip as you would were the programs compiled with the full instruction set that they support. But most programs these days aren't compiled that way because they would have too many instruction sets to target - what with athlon64, Phenom, Core i7, etc. They pick something that will work on pretty much any 32-bit system if they're compiling for 32-bit (so generally probably i386, i586, or i686), and if they're compiling for 64-bit, they'll pick a nice generic x86-64 instruction set that any 64-bit chip you buy will understand. gcc and Visual Studio do exactly the same thing. With gcc (and I assume Visual Studio, but I don't know), you can tell it to build for a more specific architecture and take advantage of it all that that architecture has to offer, but you don't generally do that with software that you release because then you'd have to worry about exactly which chip someone is using, and that complicates things considerably. In any case, i386 programs will run just fine on a 64-bit processor such as the Core i7. Maybe someone else is actually aware of some good documentation or article(s) on the whole 32-bit vs 64-bit thing, what that means for accessing memory, what that means for compiling and running programs, etc. can point you to them, but I'm not aware of any off the top of my head. You should be able to google for that sort of thing if you're interested though. - Jonathan M Davis
Jul 11 2010