This is an archive of the discontinued LLVM Phabricator instance.

Add Support for the cygwin64 target
ClosedPublic

Authored by martell on Jul 20 2015, 2:53 AM.

Details

Reviewers
yaron.keren
rnk
Summary

Add a basic to use for when building for cygwin on x86_64

Diff Detail

Event Timeline

martell updated this revision to Diff 30139.Jul 20 2015, 2:53 AM
martell retitled this revision from to Add Support for the cygwin64 target.
martell updated this object.
martell added reviewers: yaron.keren, rnk.
martell set the repository for this revision to rL LLVM.
martell added a subscriber: cfe-commits.

Hi Yaron,

I'm not quite sure how you dealt with the blank namespace the last time.
I assume this is okay as it is between one?

yaron.keren edited edge metadata.Jul 20 2015, 3:10 AM

All these classes are already inside a bug anonymous namespace and so is the new one you add, this is OK.

What target cygwin x64 uses on current SVN? or we have 32 bits only?

What target cygwin x64 uses on current SVN? or we have 32 bits only?

Currently it seems you only have 32bits

I assume it used a generic x86_64 target but now that you set MSVC at the default it probably uses that which isn't good for cygwin64

Yes I see this commit https://github.com/chapuni/llvm-project/commit/9a1fcf7d0a897ce82b7b1a81431e04304f116d51
Is quite similar to what I have submitted. :)
I'm just 2 years behind

Yaron
There are other considerations such as the include dirs having i686 hard coded.
I plan to add a driver to Cygwin very similar to the MINGW Driver to deal with these kinds of issues.
Actually having the target is a good start though :)

LGTM after fixing the comment.

tools/clang/lib/Basic/Targets.cpp
4005

This should be X86_64TargetInfo::getTargetDefines(Opts, Builder);

martell updated this revision to Diff 30314.Jul 21 2015, 8:15 PM
martell edited edge metadata.
martell removed rL LLVM as the repository for this revision.

And this is why we have reviews :)
fixed

yaron.keren accepted this revision.Jul 22 2015, 11:09 AM
yaron.keren edited edge metadata.

r242914

This revision is now accepted and ready to land.Jul 22 2015, 11:09 AM
yaron.keren closed this revision.Jul 22 2015, 11:09 AM