[Driver] Fix architecture triplets and search paths for Linux x32Currently, support for the x32 ABI is handled as a multilib to thex86_64 target only. However, full self-hosting x32 systems treati
[Driver] Fix architecture triplets and search paths for Linux x32Currently, support for the x32 ABI is handled as a multilib to thex86_64 target only. However, full self-hosting x32 systems treating itas a separate architecture with its own architecture triplets as well assearch paths exist as well, in Debian's x32 port and elsewhere.This adds the missing architecture triplets and search paths so thatclang can work as a native compiler on x32, and updates the tests sothat they pass when using an x32 libdir suffix.Additionally, we would previously also assume that objects from anyx86_64-linux-gnu GCC installation could be used to target x32. Thischanges the logic so that only GCC installations that include x32support are used when targetting x32, meaning x86_64-linux-gnux32 GCCinstallations, and x86_64-linux-gnu and i686-linux-gnu GCC installationsthat include x32 multilib support.Reviewed By: MaskRayDifferential Revision: https://reviews.llvm.org/D52050
show more ...
Update a comment to clarify that searching the target triple bindirectory for programs used by the driver is actually the standardbehavior we want to be compatible with GCC cross compilers -- it is
Update a comment to clarify that searching the target triple bindirectory for programs used by the driver is actually the standardbehavior we want to be compatible with GCC cross compilers -- it isn'tspecific to SUSE or any other distro.Also start fleshing out testing of the different cross compilationpatterns, both with a new very bare-bones tree of cross compilers and byextending the multilib trees. Currently, we don't correctly model doinga cross compile using the non-triple target of a bi-arch GCC install,but I'll add support for that (and tests) next.llvm-svn: 184499