aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target
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 /lib/Target
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
Diffstat (limited to 'lib/Target')
-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: