aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2009-07-01 23:36:02 +0000
committerDale Johannesen <dalej@apple.com>2009-07-01 23:36:02 +0000
commit3960163e9cb9e5685f8ae321ed57eb0aec5f4c8b (patch)
treee62c429164deaf3808781ed48784e4a536753ac3
parent08050533ad98fd6eb0c9cbc7af20a2f5ff51ab2e (diff)
downloadexternal_llvm-3960163e9cb9e5685f8ae321ed57eb0aec5f4c8b.zip
external_llvm-3960163e9cb9e5685f8ae321ed57eb0aec5f4c8b.tar.gz
external_llvm-3960163e9cb9e5685f8ae321ed57eb0aec5f4c8b.tar.bz2
Add darwin stub removal to wishlist.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74667 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/PowerPC/README.txt11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/README.txt b/lib/Target/PowerPC/README.txt
index 688fb30..1341c66 100644
--- a/lib/Target/PowerPC/README.txt
+++ b/lib/Target/PowerPC/README.txt
@@ -180,6 +180,15 @@ 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.
+
+===-------------------------------------------------------------------------===
+
Darwin Stub LICM optimization:
Loops like this:
@@ -196,6 +205,8 @@ 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: