r193577 - Cleanup comments and braces. No functionality changed, just trying to
Chandler Carruth
chandlerc at gmail.com
Mon Oct 28 19:27:56 PDT 2013
Author: chandlerc
Date: Mon Oct 28 21:27:56 2013
New Revision: 193577
URL: http://llvm.org/viewvc/llvm-project?rev=193577&view=rev
Log:
Cleanup comments and braces. No functionality changed, just trying to
record what is *actually* going on here as the comments existing in the
code are confusing at best, and in places outright misleading.
The API is even more misleading. Yay.
Modified:
cfe/trunk/lib/Driver/ToolChains.cpp
Modified: cfe/trunk/lib/Driver/ToolChains.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains.cpp?rev=193577&r1=193576&r2=193577&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/ToolChains.cpp (original)
+++ cfe/trunk/lib/Driver/ToolChains.cpp Mon Oct 28 21:27:56 2013
@@ -2356,18 +2356,26 @@ Linux::Linux(const Driver &D, const llvm
const std::string &LibPath = GCCInstallation.getParentLibPath();
// Sourcery CodeBench MIPS toolchain holds some libraries under
- // the parent prefix of the GCC installation.
- // FIXME: It would be cleaner to model this as a variant of multilib. IE,
- // instead of 'lib64' it would be 'lib/el'.
+ // a biarch-like suffix of the GCC installation.
+ //
+ // FIXME: It would be cleaner to model this as a variant of bi-arch. IE,
+ // instead of a '64' biarch suffix it would be 'el' or something.
+ //
+ // FIXME: it is also deeply confusing that the suffix is called
+ // 'MultiLibSuffix' on the GCCInstallation class. It has nothing to do with
+ // multilib setups, and much more in common with a combined biarch and
+ // multiarch suffix set. (biarch for the GCC installation, multiarch for
+ // the lib directories.)
if (IsAndroid && IsMips && isMips32r2(Args)) {
assert(GCCInstallation.getBiarchSuffix().empty() &&
"Unexpected bi-arch suffix");
addPathIfExists(GCCInstallation.getInstallPath() + "/mips-r2", Paths);
- } else
+ } else {
addPathIfExists((GCCInstallation.getInstallPath() +
GCCInstallation.getMultiLibSuffix() +
GCCInstallation.getBiarchSuffix()),
Paths);
+ }
// GCC cross compiling toolchains will install target libraries which ship
// as part of the toolchain under <prefix>/<triple>/<libdir> rather than as
@@ -2387,6 +2395,9 @@ Linux::Linux(const Driver &D, const llvm
//
// Note that this matches the GCC behavior. See the below comment for where
// Clang diverges from GCC's behavior.
+ //
+ // FIXME: The GCCInstallation MultiLibSuffix is totally orthogonal from the
+ // Multilib directory component. It is misnamed and needs clarification.
addPathIfExists(LibPath + "/../" + GCCTriple.str() + "/lib/../" + Multilib +
GCCInstallation.getMultiLibSuffix(),
Paths);
More information about the cfe-commits
mailing list