[cfe-dev] GSoC Proposal: Improve Windows Support

João Matos ripzonetriton at gmail.com
Sun Apr 21 05:09:50 PDT 2013


On Sat, Apr 20, 2013 at 5:16 AM, endlessroad1991 at gmail.com <
endlessroad1991 at gmail.com> wrote:

> I want to propose "improving windows support" as a GSoC project. By
> "windows support", I mean using msvc headers & linker, not the mingw
> version.
> Last time I checked(clang 3.2 release), clang can't produce executable
> files on Windows because of some linker error. So what's the current status
> and what's the major problem here?
>

Awesome.

When was the last time you tested that? Clang should be able to produce
executable files, it has support for MS's linker (link.exe) in the driver.


> - Win32/64 ABI, including name mangling, calling convention, etc?
> http://llvm.org/bugs/show_bug.cgi?id=12477
>

A lot of work has been done on this area lately and it's much better than
it was on 3.2.
64-bit name mangling (http://llvm.org/bugs/show_bug.cgi?id=13792) still
needs some work. There are also some bugs to fix related to lambdas, but
they seem relatively easy to fix.


> - PE/COFF object file generation?
>

What kind of improvements do you have in mind? AFAIK 64-bit EH is big gap
in support here right now.

- Frontend compatibility with MSVC C++ headers?
> http://llvm.org/bugs/show_bug.cgi?id=13707
> I see quite some issues about windows, but it seems that their priority is
> not very high. So I think may jump in and try to sweep them.
>

Yeah, intrinsics are the main blocker at the moment to get most of the
broken headers going through. Also, 2012 library needs some relies on some
quirks in preprocessor behavior that needs to be better supported.


> So what do you think?
>

I think you've already proven you can work on Clang and MS frontend stuff
with your patches so I'd really love to see you work on improving support
even more.

[CC'ing people working on MS/Windows stuff, they might have more ideas]

-- 
João Matos
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20130421/c572772d/attachment.html>


More information about the cfe-dev mailing list