Skip to content

Commit 1733050

Browse files
committed
Re-generate attribute docs
llvm-svn: 354967
1 parent 992552e commit 1733050

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

clang/docs/AttributeReference.rst

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1317,6 +1317,46 @@ The ``ifunc`` attribute may only be used on a function declaration. A function
13171317
Not all targets support this attribute. ELF target support depends on both the linker and runtime linker, and is available in at least lld 4.0 and later, binutils 2.20.1 and later, glibc v2.11.1 and later, and FreeBSD 9.1 and later. Non-ELF targets currently do not support this attribute.
13181318

13191319

1320+
import_module
1321+
-------------
1322+
.. csv-table:: Supported Syntaxes
1323+
:header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``"
1324+
1325+
"``import_module``","``clang::import_module``","``clang::import_module``","","","","Yes"
1326+
1327+
Clang supports the ``__attribute__((import_module(<module_name>)))``
1328+
attribute for the WebAssembly target. This attribute may be attached to a
1329+
function declaration, where it modifies how the symbol is to be imported
1330+
within the WebAssembly linking environment.
1331+
1332+
WebAssembly imports use a two-level namespace scheme, consisting of a module
1333+
name, which typically identifies a module from which to import, and a field
1334+
name, which typically identifies a field from that module to import. By
1335+
default, module names for C/C++ symbols are assigned automatically by the
1336+
linker. This attribute can be used to override the default behavior, and
1337+
reuqest a specific module name be used instead.
1338+
1339+
1340+
import_name
1341+
-----------
1342+
.. csv-table:: Supported Syntaxes
1343+
:header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``"
1344+
1345+
"``import_name``","``clang::import_name``","``clang::import_name``","","","","Yes"
1346+
1347+
Clang supports the ``__attribute__((import_name(<name>)))``
1348+
attribute for the WebAssembly target. This attribute may be attached to a
1349+
function declaration, where it modifies how the symbol is to be imported
1350+
within the WebAssembly linking environment.
1351+
1352+
WebAssembly imports use a two-level namespace scheme, consisting of a module
1353+
name, which typically identifies a module from which to import, and a field
1354+
name, which typically identifies a field from that module to import. By
1355+
default, field names for C/C++ symbols are the same as their C/C++ symbol
1356+
names. This attribute can be used to override the default behavior, and
1357+
reuqest a specific field name be used instead.
1358+
1359+
13201360
internal_linkage
13211361
----------------
13221362
.. csv-table:: Supported Syntaxes

0 commit comments

Comments
 (0)