Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Recommended version of Visual C++?

Author: Christophe Theron

Date: 00:13:35 02/04/00

Go up one level in this thread


On February 02, 2000 at 15:41:40, Jon Dart wrote:

>On February 02, 2000 at 11:47:02, Vincent Diepeveen wrote:
>
>
>>>I have had a significant amount of trouble with the VC++
>>>optimizer. Even with all the service packs installed, I have
>>>still seen cases where it generates bad code. It's not that
>>
>>First of all, the servicepacks didn't seem to change the compiler
>>at all here, only the IDE.
>>
>>Secondly, the better a compiler optimizes, the more assumptions it
>>has to take, the more assumptions it makes, the bigger the chance
>>that if there is something broken in your code that it crashes you.
>
>The service packs definitely do change the compiler. See
>http://msdn.microsoft.com/vstudio/sp/vs6sp3/vcfixes.asp#visualc_compiler
>
>And I don't agree about the optimizer problems being due to bugs in
>the input code. I've looked at the assembly and seen
>it trashing registers that had "live" variables in them. I've also
>worked on x86 code generators and know how hard it is to get this
>stuff right (it is a lot like a chess program: instead of hashtables
>and extensions and null move all nastily interacting together, you
>have multiple optimizations, register allocations, etc. all interacting).
>
>All that said, I'd still recommend the compiler .. not everyone gets
>bit by the bugs and it is a well-documented and put together package.
>
>--Jon


I have witnessed the VC++ produce incorrect code when I compiled Chess Tiger
with it for our commercial release. It indeed trashed registers.

With the Service Pack 3, everything is OK, at least it looks OK. I have very
accurate ways of checking if the engine is OK (by generating complete search
trees with different versions compiled with different compilers and then
comparing the listings), and Chess Tiger is rather good in stressing the
compilers.

I would recommend not using VC++ when you can. A clean text mode IDE like the
one provided by DJGPP (DOS/Win port of the Gnu C) is far superior when
productivity in writting/debugging algorithms is the point.

It is free, so download it and try it. And it will not trash your hard disk with
megabytes of stuffs you don't need.



    Christophe



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.