diff options
author | Bill Wendling <isanbard@gmail.com> | 2009-07-20 01:03:30 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2009-07-20 01:03:30 +0000 |
commit | 41a0785fdd228e1563e606f650cef9b3617ab29e (patch) | |
tree | d2af2edf3eb2da3f5490936f7843f1594e3e95e6 /docs | |
parent | 3f17ea91e33b4f2566e58307930fd34c4f55c8b4 (diff) | |
download | external_llvm-41a0785fdd228e1563e606f650cef9b3617ab29e.zip external_llvm-41a0785fdd228e1563e606f650cef9b3617ab29e.tar.gz external_llvm-41a0785fdd228e1563e606f650cef9b3617ab29e.tar.bz2 |
Add plumbing for the `linker_private' linkage type. This type is meant for
"private" symbols which the assember shouldn't strip, but which the linker may
remove after evaluation. This is mostly useful for Objective-C metadata.
This is plumbing, so we don't have a use of it yet. More to come, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76385 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r-- | docs/LangRef.html | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html index 44e6fa1..4fb712e 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -20,7 +20,24 @@ <li><a href="#highlevel">High Level Structure</a> <ol> <li><a href="#modulestructure">Module Structure</a></li> - <li><a href="#linkage">Linkage Types</a></li> + <li><a href="#linkage">Linkage Types</a> + <ol> + <li><a href="#linkage_private">private</a></li> + <li><a href="#linkage_linker_private">linker_private</a></li> + <li><a href="#linkage_internal">internal</a></li> + <li><a href="#linkage_available_externally">available_externally</a></li> + <li><a href="#linkage_linkonce">linkonce</a></li> + <li><a href="#linkage_common">common</a></li> + <li><a href="#linkage_weak">weak</a></li> + <li><a href="#linkage_appending">appending</a></li> + <li><a href="#linkage_externweak">extern_weak</a></li> + <li><a href="#linkage_linkonce">linkonce_odr</a></li> + <li><a href="#linkage_weak">weak_odr</a></li> + <li><a href="#linkage_external">externally visible</a></li> + <li><a href="#linkage_dllimport">dllimport</a></li> + <li><a href="#linkage_dllexport">dllexport</a></li> + </ol> + </li> <li><a href="#callingconv">Calling Conventions</a></li> <li><a href="#namedtypes">Named Types</a></li> <li><a href="#globalvars">Global Variables</a></li> @@ -502,6 +519,11 @@ All Global Variables and Functions have one of the following types of linkage: object file. </dd> + <dt><tt><b><a name="linkage_linker_private">linker_private</a></b></tt>: </dt> + + <dd>Similar to private, but the symbol is passed through the assembler and + removed by the linker after evaluation.</dd> + <dt><tt><b><a name="linkage_internal">internal</a></b></tt>: </dt> <dd> Similar to private, but the value shows as a local symbol (STB_LOCAL in @@ -509,7 +531,7 @@ All Global Variables and Functions have one of the following types of linkage: '<tt>static</tt>' keyword in C. </dd> - <dt><tt><b><a name="available_externally">available_externally</a></b></tt>: + <dt><tt><b><a name="linkage_available_externally">available_externally</a></b></tt>: </dt> <dd>Globals with "<tt>available_externally</tt>" linkage are never emitted |