[LLVMdev] LLVM under MS VC++ 2005

Aaron Gray angray at beeb.net
Thu Feb 17 12:19:34 PST 2005


I have got the latest CVS release of LLVM. And built the Win32 MS VC++ 2003 port with modifications for MS VC++ 2005.

Do bear in mind the Visual Studio ports are by no means complete, and are on going.

Microsoft Visual Studio 2005 Beta (codename Whidbey) can be got from Microsoft Beta program nearly for free; the cost of postage from :-

        http://lab.msdn.microsoft.com/vs2005/get/order/default.aspx

Custom Build Steps
-----------------------------

At present custom build step tools are all prefixed with '..\tools\' would it be possible to require the tool path(s) be on the system path to avoid dependancy on a particular directory layout ?

Errors
=====

\llvm\lib\codegen\selectiondag\selectiondagisel.cpp
--------------------------------------------------------------------------

c:\languages\llvm\lib\codegen\selectiondag\selectiondagisel.cpp(723) : error C4716: 'llvm::TargetLowering::LowerVAStart' : must return a value
c:\languages\llvm\lib\codegen\selectiondag\selectiondagisel.cpp(744) : error C4716: 'llvm::TargetLowering::LowerVAArgNext' : must return a value
c:\languages\llvm\lib\codegen\selectiondag\selectiondagisel.cpp(792) : error C4716: 'llvm::TargetLowering::LowerOperation' : must return a value

\llvm\lib\target\targetframeinfo.cpp
-------------------------------------------------

c:\languages\llvm\lib\target\targetframeinfo.cpp(27) : error C4716: 'llvm::TargetFrameInfo::adjustAlignment' : must return a value
c:\languages\llvm\lib\target\targetframeinfo.cpp(36) : error C4716: 'llvm::TargetFrameInfo::getIncomingArgOffset' : must return a value
c:\languages\llvm\lib\target\targetframeinfo.cpp(40) : error C4716: 'llvm::TargetFrameInfo::getOutgoingArgOffset' : must return a value
c:\languages\llvm\lib\target\targetframeinfo.cpp(44) : error C4716: 'llvm::TargetFrameInfo::getFirstAutomaticVarOffset' : must return a value
c:\languages\llvm\lib\target\targetframeinfo.cpp(48) : error C4716: 'llvm::TargetFrameInfo::getRegSpillAreaOffset' : must return a value
c:\languages\llvm\lib\target\targetframeinfo.cpp(52) : error C4716: 'llvm::TargetFrameInfo::getTmpAreaOffset' : must return a value
c:\languages\llvm\lib\target\targetframeinfo.cpp(56) : error C4716: 'llvm::TargetFrameInfo::getDynamicAreaOffset' : must return a value

Presumably 2003 did not pick up these errors, although I would have thought it would have ??? :(

These should really be fixed, for consistancies sake, presumably they produce warnings on 2003 and GCC.
I have added dummy constructors in return statements to allow these to be compiled.

Relative tool paths
--------------------------

Relative tool paths like '..\TableGen\$(IntDir)\TableGen.exe' do not work on 2005, I have replaced them with '..\$(IntDir)\TableGen.exe', this puts all results in 'Win32/Release' for now.

Misc Define
-----------------

bugpoint/OptimizerDriver.cpp needs PLATFORMINDEPENDENT define to compile without 'sys/wait.h' missing error.
Presumably this mod is correct and what was intentioned.

Configuration project mod
-------------------------------------

Set the configuration projects>Properties>Project Settings>Configuration Type to 'Utility' to avoid link time error message.

VS2005 Directory
--------------------------

I created a 'llvm/VS2005' directory so as not to disturb the Win32 directory,

Maybe the 'Win32' directory should really be called 'VS2003' to remove possible confusion as the name Win32 is common to Cygwin and MinGW as well as Visual Studio.

Regarding GNU, I'll try updating to GCC 3.4.3 and try both Cygwin and MinGW as well as I would like to get all Win32 environments working.

Aaron
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20050217/9ad1bf6b/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm-vs2005.tar.gz
Type: application/x-gzip
Size: 23546 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20050217/9ad1bf6b/attachment.bin>


More information about the llvm-dev mailing list