clarify: stub emission depends on the version of the linker you use, it has nothing
authorChris Lattner <sabre@nondot.org>
Thu, 2 Jul 2009 01:24:34 +0000 (01:24 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 2 Jul 2009 01:24:34 +0000 (01:24 +0000)
to do with the target.  Also, the stub elimination optimization *requires* making the
stub explicit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74682 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/README.txt

index 1341c66f2668a8bcb3df16fe014db8b1d2b3c45a..6e9e6c74e8f3fd577355fb2149e6492e3abb76ee 100644 (file)
@@ -183,9 +183,10 @@ void bar() { struct foo R = { 1.0, 2.0 }; xxx(R); }
 Darwin Stub removal:
 
 We still generate calls to foo$stub, and stubs, on Darwin.  This is not
-necessary on Leopard (10.5) or later, as stubs are generated by ld when
-necessary.  The choice should depend on the value of -mmacosx-version-min.
-x86-32 does this right, see its logic.
+necessary when building with the Leopard (10.5) or later linker, as stubs are
+generated by ld when necessary.  Parameterizing this based on the deployment
+target (-mmacosx-version-min) is probably enough.  x86-32 does this right, see
+its logic.
 
 ===-------------------------------------------------------------------------===
 
@@ -205,8 +206,6 @@ which only computes the address of bar once (instead of each time through the
 stub).  This is Darwin specific and would have to be done in the code generator.
 Probably not a win on x86.
 
-Note that removing stubs altogether, as in the previous item, is better yet.
-
 ===-------------------------------------------------------------------------===
 
 Simple IPO for argument passing, change: